1
// Sample extension code, makes clicking on the panel show a message
2
const GLib = imports.gi.GLib;
3
const St = imports.gi.St;
4
const Mainloop = imports.mainloop;
6
const Gettext = imports.gettext.domain('gnome-shell-extensions');
7
const _ = Gettext.gettext;
9
const Main = imports.ui.main;
11
function _showHello() {
12
let text = new St.Label({ style_class: 'helloworld-label', text: _("Hello, world!") });
13
let monitor = Main.layoutManager.primaryMonitor;
14
global.stage.add_actor(text);
15
text.set_position(Math.floor (monitor.width / 2 - text.width / 2), Math.floor(monitor.height / 2 - text.height / 2));
16
Mainloop.timeout_add(3000, function () { text.destroy(); });
19
// Put your extension initialization code here
20
function init(metadata) {
21
log ('Example extension initalized');
23
imports.gettext.bindtextdomain('gnome-shell-extensions', GLib.build_filenamev([metadata.path, 'locale']));
29
log ('Example extension enabled');
31
Main.panel.actor.reactive = true;
32
signalId = Main.panel.actor.connect('button-release-event', _showHello);
36
log ('Example extension disabled');
39
Main.panel.actor.disconnect(signalId);