Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
10aec91ebb | ||
|
|
1d22e73a44 | ||
|
|
3981d066e5 | ||
|
|
fc47063c73 | ||
|
|
7a6777f703 | ||
|
|
c5d79240fd | ||
|
|
9e4156a706 | ||
|
|
f61af132e7 |
23
Makefile.am
23
Makefile.am
@@ -2,4 +2,27 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
|
||||
|
||||
SUBDIRS = extensions po
|
||||
|
||||
EXTRA_DIST = lib/convenience.js
|
||||
|
||||
DISTCHECK_CONFIGURE_FLAGS = --enable-extensions=all
|
||||
|
||||
include include.mk
|
||||
|
||||
zip-file: all
|
||||
-rm -fR $(builddir)/_build
|
||||
-rm -fR $(builddir)/zip-files
|
||||
mkdir $(builddir)/_build; \
|
||||
mkdir $(builddir)/zip-files; \
|
||||
$(MAKE) install DESTDIR="`pwd`/_build"; \
|
||||
for i in $(ENABLED_EXTENSIONS); do \
|
||||
mv "`pwd`/_build/$(topextensiondir)/$${i}$(extensionbase)" "`pwd`/_build/"; \
|
||||
cp -r "`pwd`/_build/$(datadir)/locale" "`pwd`/_build/$${i}$(extensionbase)"; \
|
||||
if [ -f "`pwd`/_build/$(datadir)/glib-2.0/schemas/$(gschemabase).$${i}.gschema.xml" ]; then \
|
||||
mkdir "`pwd`/_build/$${i}$(extensionbase)/schemas"; \
|
||||
mv "`pwd`/_build/$(datadir)/glib-2.0/schemas/$(gschemabase).$${i}.gschema.xml" "`pwd`/_build/$${i}$(extensionbase)/schemas"; \
|
||||
glib-compile-schemas "`pwd`/_build/$${i}$(extensionbase)/schemas"; \
|
||||
fi; \
|
||||
(cd "`pwd`/_build/$${i}$(extensionbase)"; \
|
||||
zip -qr "$(abs_builddir)/zip-files/$${i}$(extensionbase).shell-extension.zip" .; \
|
||||
); \
|
||||
done
|
||||
|
||||
8
NEWS
8
NEWS
@@ -1,3 +1,11 @@
|
||||
3.3.2
|
||||
=====
|
||||
* all extensions are now self-contained, including l10n and settings
|
||||
* introduce a convenience module that can be shared among all extensions
|
||||
* you can know build an installable zip file with make zip-file
|
||||
* apps-menu no longer shows NoDisplay apps
|
||||
* alternative-status-menu, alternate-tab: fix for master shell
|
||||
|
||||
3.2.1
|
||||
=====
|
||||
* dock: added "move" hide effect
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
AC_PREREQ(2.63)
|
||||
AC_INIT([gnome-shell-extensions],[3.2.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&component=extensions])
|
||||
AC_INIT([gnome-shell-extensions],[3.3.2],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&component=extensions])
|
||||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_AUX_DIR([config])
|
||||
|
||||
15
extension.mk
15
extension.mk
@@ -1,21 +1,12 @@
|
||||
extensionurl = http://git.gnome.org/gnome-shell-extensions
|
||||
|
||||
# Change these to modify how installation is performed
|
||||
topextensiondir = $(datadir)/gnome-shell/extensions
|
||||
extensionbase = @gnome-shell-extensions.gcampax.github.com
|
||||
|
||||
uuid = $(EXTENSION_ID)$(extensionbase)
|
||||
|
||||
extensiondir = $(topextensiondir)/$(uuid)
|
||||
include $(top_srcdir)/include.mk
|
||||
|
||||
dist_extension_DATA = extension.js stylesheet.css
|
||||
nodist_extension_DATA = metadata.json $(EXTRA_EXTENSION)
|
||||
nodist_extension_DATA = metadata.json $(top_srcdir)/lib/convenience.js $(EXTRA_EXTENSION)
|
||||
|
||||
EXTRA_DIST = metadata.json.in
|
||||
|
||||
metadata.json: metadata.json.in $(top_builddir)/config.status
|
||||
$(AM_V_GEN) sed -e "s|[@]LOCALEDIR@|$(datadir)/locale|" \
|
||||
-e "s|[@]uuid@|$(uuid)|" \
|
||||
$(AM_V_GEN) sed -e "s|[@]uuid@|$(uuid)|" \
|
||||
-e "s|[@]shell_current@|$(PACKAGE_VERSION)|" \
|
||||
-e "s|[@]url@|$(extensionurl)|" $< > $@
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = alternate-tab
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.alternate-tab.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).alternate-tab.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
@@ -5,17 +5,19 @@
|
||||
* of the gnome-shell source code
|
||||
*/
|
||||
|
||||
const AltTab = imports.ui.altTab;
|
||||
const Clutter = imports.gi.Clutter;
|
||||
const Gdk = imports.gi.Gdk;
|
||||
const Gio = imports.gi.Gio;
|
||||
const Gtk = imports.gi.Gtk;
|
||||
const Lang = imports.lang;
|
||||
const Main = imports.ui.main;
|
||||
const Mainloop = imports.mainloop;
|
||||
const ModalDialog = imports.ui.modalDialog;
|
||||
const Meta = imports.gi.Meta;
|
||||
const Shell = imports.gi.Shell;
|
||||
const St = imports.gi.St;
|
||||
|
||||
const AltTab = imports.ui.altTab;
|
||||
const Main = imports.ui.main;
|
||||
const ModalDialog = imports.ui.modalDialog;
|
||||
const Tweener = imports.ui.tweener;
|
||||
const WindowManager = imports.ui.windowManager;
|
||||
|
||||
@@ -23,6 +25,8 @@ const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
||||
const _ = Gettext.gettext;
|
||||
const N_ = function(e) { return e };
|
||||
|
||||
let settings;
|
||||
|
||||
const POPUP_DELAY_TIMEOUT = 150; // milliseconds
|
||||
|
||||
const SETTINGS_SCHEMA = 'org.gnome.shell.extensions.alternate-tab';
|
||||
@@ -30,16 +34,16 @@ const SETTINGS_BEHAVIOUR_KEY = 'behaviour';
|
||||
const SETTINGS_FIRST_TIME_KEY = 'first-time';
|
||||
|
||||
const MODES = {
|
||||
all_thumbnails: function(shellwm, binding, mask, window, backwards) {
|
||||
all_thumbnails: function(display, binding, mask, window, backwards) {
|
||||
let tabPopup = new AltTabPopup2();
|
||||
|
||||
if (!tabPopup.show(backwards, binding, mask))
|
||||
tabPopup.destroy();
|
||||
},
|
||||
|
||||
workspace_icons: function(shellwm, binding, mask, window, backwards) {
|
||||
if (shellwm._workspaceSwitcherPopup != null)
|
||||
shellwm._workspaceSwitcherPopup.actor.hide();
|
||||
workspace_icons: function(display, binding, mask, window, backwards) {
|
||||
if (Main.wm._workspaceSwitcherPopup)
|
||||
Main.wm._workspaceSwitcherPopup.actor.hide();
|
||||
|
||||
let tabPopup = new AltTabPopupW();
|
||||
if (!tabPopup.show(backwards, binding, mask))
|
||||
@@ -328,9 +332,8 @@ AltTabSettingsDialog.prototype = {
|
||||
},
|
||||
|
||||
setBehaviour: function(behaviour) {
|
||||
this._settings = new Gio.Settings({ schema: SETTINGS_SCHEMA });
|
||||
this._settings.set_string(SETTINGS_BEHAVIOUR_KEY, behaviour);
|
||||
this._settings.set_boolean(SETTINGS_FIRST_TIME_KEY, false);
|
||||
settings.set_string(SETTINGS_BEHAVIOUR_KEY, behaviour);
|
||||
settings.set_boolean(SETTINGS_FIRST_TIME_KEY, false);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -595,33 +598,34 @@ WindowList.prototype = {
|
||||
};
|
||||
|
||||
function init(metadata) {
|
||||
imports.gettext.bindtextdomain('gnome-shell-extensions', metadata.localedir);
|
||||
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
me.convenience.initTranslations(metadata);
|
||||
settings = me.convenience.getSettings(metadata, 'alternate-tab');
|
||||
}
|
||||
|
||||
function doAltTab(shellwm, binding, mask, window, backwards) {
|
||||
let settings = new Gio.Settings({ schema: SETTINGS_SCHEMA });
|
||||
|
||||
|
||||
function doAltTab(display, screen, window, binding) {
|
||||
if(settings.get_boolean(SETTINGS_FIRST_TIME_KEY)) {
|
||||
new AltTabSettingsDialog().open();
|
||||
} else {
|
||||
let behaviour = settings.get_string(SETTINGS_BEHAVIOUR_KEY);
|
||||
if(behaviour in MODES) {
|
||||
MODES[behaviour](shellwm, binding, mask, window, backwards);
|
||||
let modifiers = binding.get_modifiers()
|
||||
let backwards = modifiers & Meta.VirtualModifier.SHIFT_MASK;
|
||||
MODES[behaviour](display, binding.get_name(), binding.get_mask(), window, backwards);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function enable() {
|
||||
Main.wm.setKeybindingHandler('switch-windows', doAltTab);
|
||||
Main.wm.setKeybindingHandler('switch-group', doAltTab);
|
||||
Main.wm.setKeybindingHandler('switch-windows-backward', doAltTab);
|
||||
Main.wm.setKeybindingHandler('switch-group-backward', doAltTab);
|
||||
Meta.keybindings_set_custom_handler('switch-windows', doAltTab);
|
||||
Meta.keybindings_set_custom_handler('switch-group', doAltTab);
|
||||
Meta.keybindings_set_custom_handler('switch-windows-backward', doAltTab);
|
||||
Meta.keybindings_set_custom_handler('switch-group-backward', doAltTab);
|
||||
}
|
||||
|
||||
function disable() {
|
||||
Main.wm.setKeybindingHandler('switch-windows', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
|
||||
Main.wm.setKeybindingHandler('switch-group', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
|
||||
Main.wm.setKeybindingHandler('switch-windows-backward', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
|
||||
Main.wm.setKeybindingHandler('switch-group-backward', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-windows', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-group', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-windows-backward', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-group-backward', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
|
||||
}
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
"name": "AlternateTab",
|
||||
"description": "A replacement for Alt-Tab, allows to cycle between windows and does not group by application",
|
||||
"original-authors": [ "jw@bargsten.org", "thomas.bouffon@gmail.com" ],
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -99,7 +99,8 @@ function createSubMenu() {
|
||||
|
||||
// Put your extension initialization code here
|
||||
function init(metadata) {
|
||||
imports.gettext.bindtextdomain('gnome-shell-extensions', metadata.localedir);
|
||||
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
me.convenience.initTranslations(metadata);
|
||||
}
|
||||
|
||||
function reset(statusMenu) {
|
||||
@@ -107,10 +108,7 @@ function reset(statusMenu) {
|
||||
statusMenu._updateLogout();
|
||||
statusMenu._updateLockScreen();
|
||||
|
||||
statusMenu._presence.getStatus(Lang.bind(statusMenu, statusMenu._updateSwitch));
|
||||
|
||||
// HACK! Obtain the IMStatusChooserItem and force a _updateUser
|
||||
statusMenu.menu._getMenuItems()[0]._updateUser();
|
||||
statusMenu._updateSwitch(statusMenu._presence.status);
|
||||
}
|
||||
|
||||
function enable() {
|
||||
@@ -126,4 +124,4 @@ function disable() {
|
||||
statusMenu.menu.removeAll();
|
||||
statusMenu._createSubMenu();
|
||||
reset(statusMenu);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Alternative Status Menu",
|
||||
"description": "Replaces GNOME Shell Status Menu with one showing Suspend/Hibernate and Power Off as separate items",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -68,7 +68,8 @@ ApplicationsButton.prototype = {
|
||||
if (nextType == GMenu.TreeItemType.ENTRY) {
|
||||
var entry = iter.get_entry();
|
||||
var app = appsys.lookup_app_by_tree_entry(entry);
|
||||
menu.addMenuItem(new AppMenuItem(app));
|
||||
if (!entry.get_app_info().get_nodisplay())
|
||||
menu.addMenuItem(new AppMenuItem(app));
|
||||
} else if (nextType == GMenu.TreeItemType.DIRECTORY) {
|
||||
this._loadCategory(iter.get_directory(), menu);
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Applications Menu",
|
||||
"description": "Add a gnome 2.x style menu for applications",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = auto-move-windows
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.auto-move-windows.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).auto-move-windows.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
@@ -14,13 +14,15 @@ const Main = imports.ui.main;
|
||||
const SETTINGS_SCHEMA = 'org.gnome.shell.extensions.auto-move-windows';
|
||||
const SETTINGS_KEY = 'application-list';
|
||||
|
||||
let settings;
|
||||
|
||||
function WindowMover() {
|
||||
this._init();
|
||||
}
|
||||
|
||||
WindowMover.prototype = {
|
||||
_init: function() {
|
||||
this._settings = new Gio.Settings({ schema: SETTINGS_SCHEMA });
|
||||
this._settings = settings;
|
||||
this._windowTracker = Shell.WindowTracker.get_default();
|
||||
|
||||
let display = global.screen.get_display();
|
||||
@@ -79,8 +81,10 @@ WindowMover.prototype = {
|
||||
let prevCheckWorkspaces;
|
||||
let winMover;
|
||||
|
||||
function init(extensionMeta) {
|
||||
// do nothing here
|
||||
function init(metadata) {
|
||||
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
me.convenience.initTranslations(metadata);
|
||||
settings = me.convenience.getSettings(metadata, 'auto-move-windows');
|
||||
}
|
||||
|
||||
function enable() {
|
||||
@@ -159,4 +163,4 @@ function enable() {
|
||||
function disable() {
|
||||
Main._checkWorkspaces = prevCheckWorkspaces;
|
||||
winMover.destroy();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Auto Move Windows",
|
||||
"description": "Move applications to specific workspaces when they create windows",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"original-authors": [ "alessandro.crismani@gmail.com", "thomas.bouffon@gmail.com" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = dock
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.dock.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).dock.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@ const DOCK_HIDE_KEY = 'autohide';
|
||||
const DOCK_EFFECTHIDE_KEY = 'hide-effect';
|
||||
const DOCK_AUTOHIDE_ANIMATION_TIME_KEY = 'hide-effect-duration';
|
||||
|
||||
let _me, _metadata;
|
||||
|
||||
//hide
|
||||
//const autohide_animation_time = 0.3;
|
||||
@@ -340,7 +341,7 @@ Dock.prototype = {
|
||||
this._favorites = [];
|
||||
|
||||
// Load Settings
|
||||
this._settings = new Gio.Settings({ schema: DOCK_SETTINGS_SCHEMA });
|
||||
this._settings = _me.convenience.getSettings(_metadata, 'dock');
|
||||
position = this._settings.get_enum(DOCK_POSITION_KEY);
|
||||
dockicon_size = this._settings.get_int(DOCK_SIZE_KEY);
|
||||
hideDock = hideable = this._settings.get_boolean(DOCK_HIDE_KEY);
|
||||
@@ -934,8 +935,10 @@ DockIconMenu.prototype = {
|
||||
}
|
||||
}
|
||||
|
||||
function init(extensionMeta) {
|
||||
imports.gettext.bindtextdomain('gnome-shell-extensions', extensionMeta.localedir);
|
||||
function init(metadata) {
|
||||
_metadata = metadata;
|
||||
_me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
_me.convenience.initTranslations(metadata);
|
||||
}
|
||||
|
||||
let dock;
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
"name": "Dock",
|
||||
"description": "A dock for the GNOME Shell -- displays favorite and running applications",
|
||||
"original-author": "tclaesson@gmail.com",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -91,7 +91,8 @@ DriveMenu.prototype = {
|
||||
|
||||
// Put your extension initialization code here
|
||||
function init(metadata) {
|
||||
imports.gettext.bindtextdomain('gnome-shell-extensions', metadata.localedir);
|
||||
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
me.convenience.initTranslations(metadata);
|
||||
}
|
||||
|
||||
let _indicator;
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Removable Drive Menu",
|
||||
"description": "A status menu for accessing and unmounting removable devices",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -19,7 +19,8 @@ function _showHello() {
|
||||
function init(metadata) {
|
||||
log ('Example extension initalized');
|
||||
|
||||
imports.gettext.bindtextdomain('gnome-shell-extensions', metadata.localedir);
|
||||
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
me.convenience.initTranslations(metadata);
|
||||
}
|
||||
|
||||
let signalId;
|
||||
@@ -38,4 +39,4 @@ function disable() {
|
||||
Main.panel.actor.disconnect(signalId);
|
||||
signalId = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Hello, World!",
|
||||
"description": "An example extension to show how it works. Shows Hello, world when clicking on the top panel.",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Gajim IM integration",
|
||||
"description": "Display Gajim incoming chats as notifications in the Shell message tray.",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "http://base-art.net"
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = native-window-placement
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.native-window-placement.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).native-window-placement.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
@@ -25,6 +25,8 @@ const WindowPlacementStrategy = {
|
||||
GRID: 1,
|
||||
};
|
||||
|
||||
let _me, _metadata;
|
||||
|
||||
// testing settings for natural window placement strategy:
|
||||
const WINDOW_PLACEMENT_NATURAL_FILLGAPS = true; // enlarge windows at the end to fill gaps // not implemented yet
|
||||
const WINDOW_PLACEMENT_NATURAL_GRID_FALLBACK = true; // fallback to grid mode if all windows have the same size and positions. // not implemented yet
|
||||
@@ -117,7 +119,7 @@ function resetState() {
|
||||
function enable() {
|
||||
resetState();
|
||||
|
||||
let settings = new Gio.Settings({ schema: 'org.gnome.shell.extensions.native-window-placement' });
|
||||
let settings = _me.convenience.getSettings(_metadata, 'native-window-placement');
|
||||
let placementStrategy = settings.get_enum('strategy');
|
||||
let signalId = settings.connect('changed::strategy', function() {
|
||||
placementStrategy = settings.get_enum('strategy');
|
||||
@@ -527,6 +529,7 @@ function disable() {
|
||||
resetState();
|
||||
}
|
||||
|
||||
function init() {
|
||||
/* do nothing */
|
||||
}
|
||||
function init(metadata) {
|
||||
_metadata = metadata;
|
||||
_me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
}
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Native Window Placement",
|
||||
"description": "Arrange windows in overview in a more native way",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "@url@",
|
||||
"original-authors": [ "wepmaschda@gmx.de" ]
|
||||
}
|
||||
|
||||
@@ -114,7 +114,8 @@ PlacesMenu.prototype = {
|
||||
|
||||
|
||||
function init(metadata) {
|
||||
imports.gettext.bindtextdomain('gnome-shell-extensions', metadata.localedir);
|
||||
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
me.convenience.initTranslations(metadata);
|
||||
}
|
||||
|
||||
let _indicator;
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Places Status Indicator",
|
||||
"description": "Add a systems status menu for quickly navigating places in the system",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"shell-version": ["@shell_current@", "3.2" ],
|
||||
"shell-version": ["@shell_current@" ],
|
||||
"uuid": "@uuid@",
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"original-author": "zaspire@rambler.ru",
|
||||
"name": "SystemMonitor",
|
||||
"description": "System Monitor",
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = user-theme
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.user-theme.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).user-theme.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
@@ -10,15 +10,16 @@ const SETTINGS_SCHEMA = 'org.gnome.shell.extensions.user-theme';
|
||||
const SETTINGS_KEY = 'name';
|
||||
|
||||
function ThemeManager() {
|
||||
this._init();
|
||||
this._init.apply(this, arguments);
|
||||
}
|
||||
|
||||
ThemeManager.prototype = {
|
||||
_init: function() {
|
||||
_init: function(metadata) {
|
||||
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
this._settings = me.convenience.getSettings(metadata, 'user-theme');
|
||||
},
|
||||
|
||||
enable: function() {
|
||||
this._settings = new Gio.Settings({ schema: SETTINGS_SCHEMA });
|
||||
this._changedId = this._settings.connect('changed::'+SETTINGS_KEY, Lang.bind(this, this._changeTheme));
|
||||
this._changeTheme();
|
||||
},
|
||||
@@ -68,5 +69,5 @@ ThemeManager.prototype = {
|
||||
|
||||
|
||||
function init(metadata) {
|
||||
return new ThemeManager();
|
||||
return new ThemeManager(metadata);
|
||||
}
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "User Themes",
|
||||
"description": "Load shell themes from user directory",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"original-authors": [ "john.stowers@gmail.com" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"shell-version": ["@shell_current@", "3.2" ],
|
||||
"shell-version": ["@shell_current@" ],
|
||||
"uuid": "@uuid@",
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"original-author": "zaspire@rambler.ru",
|
||||
"name": "windowNavigator",
|
||||
"description": "Allow keyboard selection of windows and workspaces in overlay mode",
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Workspace Indicator",
|
||||
"description": "Put an indicator on the panel signaling in which workspace you are, and give you the possibility of switching to another one",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"original-authors": [ "erick.red@gmail.com" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
@@ -137,7 +137,8 @@ Indicator.prototype = {
|
||||
|
||||
|
||||
function init(metadata) {
|
||||
imports.gettext.bindtextdomain('gnome-shell-extensions', metadata.localedir);
|
||||
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
|
||||
me.convenience.initTranslations(metadata);
|
||||
}
|
||||
|
||||
let _indicator;
|
||||
@@ -149,4 +150,4 @@ function enable() {
|
||||
|
||||
function disable() {
|
||||
_indicator.destroy();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
"uuid": "@uuid@",
|
||||
"name": "Monitor Status Indicator",
|
||||
"description": "Add a systems status menu for rotating monitors (overrides what is currently provided by gnome-settings-daemon)",
|
||||
"shell-version": [ "@shell_current@", "3.2" ],
|
||||
"localedir": "@LOCALEDIR@",
|
||||
"shell-version": [ "@shell_current@" ],
|
||||
"url": "@url@"
|
||||
}
|
||||
|
||||
11
include.mk
Normal file
11
include.mk
Normal file
@@ -0,0 +1,11 @@
|
||||
extensionurl = http://git.gnome.org/gnome-shell-extensions
|
||||
|
||||
# Change these to modify how installation is performed
|
||||
topextensiondir = $(datadir)/gnome-shell/extensions
|
||||
extensionbase = @gnome-shell-extensions.gcampax.github.com
|
||||
|
||||
gschemabase = org.gnome.shell.extensions
|
||||
|
||||
uuid = $(EXTENSION_ID)$(extensionbase)
|
||||
|
||||
extensiondir = $(topextensiondir)/$(uuid)
|
||||
17
lib/convenience.js
Normal file
17
lib/convenience.js
Normal file
@@ -0,0 +1,17 @@
|
||||
const Gettext = imports.gettext;
|
||||
const Gio = imports.gi.Gio;
|
||||
|
||||
function initTranslations(metadata) {
|
||||
let localeDir = metadata.dir.get_child('locale').get_path();
|
||||
Gettext.bindtextdomain('gnome-shell-extensions', localeDir);
|
||||
}
|
||||
|
||||
function getSettings(metadata, extension_id) {
|
||||
let schemaDir = metadata.dir.get_child('schemas').get_path();
|
||||
let schemaSource = Gio.SettingsSchemaSource.new_from_directory(schemaDir,
|
||||
Gio.SettingsSchemaSource.get_default(),
|
||||
false);
|
||||
let schema = schemaSource.lookup('org.gnome.shell.extensions.' + extension_id, false);
|
||||
return new Gio.Settings({ settings_schema: schema });
|
||||
}
|
||||
|
||||
15
local-install.sh
Executable file
15
local-install.sh
Executable file
@@ -0,0 +1,15 @@
|
||||
#!/bin/bash
|
||||
|
||||
extensionbase=~/.local/share/gnome-shell/extensions
|
||||
|
||||
for i in zip-files/*; do
|
||||
zip_file=`pwd`/$i;
|
||||
uuid=`basename $i | sed -e "s/.shell-extension.zip//"`;
|
||||
if [ -d $extensionbase/$uuid ]; then
|
||||
rm -fR $extensionbase/$uuid;
|
||||
fi
|
||||
mkdir $extensionbase/$uuid;
|
||||
(cd $extensionbase/$uuid;
|
||||
unzip -q $zip_file;
|
||||
);
|
||||
done
|
||||
195
po/it.po
195
po/it.po
@@ -8,8 +8,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell-extensions 2.91.6\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-04-26 15:14+0200\n"
|
||||
"PO-Revision-Date: 2011-04-26 15:27+0200\n"
|
||||
"POT-Creation-Date: 2011-11-19 18:42+0100\n"
|
||||
"PO-Revision-Date: 2011-11-19 18:57+0100\n"
|
||||
"Last-Translator: Giovanni Campagna <scampa.giovanni@gmail.com>\n"
|
||||
"Language-Team: none <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
@@ -17,17 +17,13 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:39
|
||||
msgid "Available"
|
||||
msgstr "Disponibile"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:44
|
||||
msgid "Busy"
|
||||
msgstr "Non disponibile"
|
||||
msgid "Notifications"
|
||||
msgstr "Notifiche"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:52
|
||||
msgid "My Account"
|
||||
msgstr "Account personale"
|
||||
msgid "Online Accounts"
|
||||
msgstr "Account online"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:56
|
||||
msgid "System Settings"
|
||||
@@ -37,26 +33,105 @@ msgstr "Impostazioni di sistema"
|
||||
msgid "Lock Screen"
|
||||
msgstr "Blocca schermo"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:67
|
||||
#: ../extensions/alternative-status-menu/extension.js:68
|
||||
msgid "Switch User"
|
||||
msgstr "Cambia utente"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:72
|
||||
#: ../extensions/alternative-status-menu/extension.js:73
|
||||
msgid "Log Out..."
|
||||
msgstr "Termina sessione..."
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:79
|
||||
#: ../extensions/alternative-status-menu/extension.js:81
|
||||
msgid "Suspend"
|
||||
msgstr "Sospendi"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:85
|
||||
#: ../extensions/alternative-status-menu/extension.js:87
|
||||
msgid "Hibernate"
|
||||
msgstr "Iberna"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:91
|
||||
#: ../extensions/alternative-status-menu/extension.js:93
|
||||
msgid "Power Off..."
|
||||
msgstr "Spegni..."
|
||||
|
||||
#: ../extensions/alternate-tab/extension.js:52
|
||||
msgid ""
|
||||
"This is the first time you use the Alternate Tab extension. \n"
|
||||
"Please choose your preferred behaviour:\n"
|
||||
"\n"
|
||||
"All & Thumbnails:\n"
|
||||
" This mode presents all applications from all workspaces in one "
|
||||
"selection \n"
|
||||
" list. Instead of using the application icon of every window, it uses "
|
||||
"small \n"
|
||||
" thumbnails resembling the window itself. \n"
|
||||
"\n"
|
||||
"Workspace & Icons:\n"
|
||||
" This mode let's you switch between the applications of your current \n"
|
||||
" workspace and gives you additionally the option to switch to the last "
|
||||
"used \n"
|
||||
" application of your previous workspace. This is always the last symbol "
|
||||
"in \n"
|
||||
" the list and is segregated by a separator/vertical line if available. \n"
|
||||
" Every window is represented by its application icon. \n"
|
||||
"\n"
|
||||
"If you whish to revert to the default behavior for the Alt-Tab switcher, "
|
||||
"just\n"
|
||||
"disable the extension from extensions.gnome.org or the Advanced Settings "
|
||||
"application."
|
||||
msgstr ""
|
||||
"Questa è la prima volta che viene usata l'estensione Alternate Tab. \n"
|
||||
"Per favore scegli il comportamento preferito:\n"
|
||||
"\n"
|
||||
"Tutte & Miniature:\n"
|
||||
" Questa modalità presenta tutte le applicazioni, da tutti gli spazi di lavoro\n"
|
||||
" in un'unica lista. Invece di usare un'icona, usa delle piccole miniature\n"
|
||||
" che rappresentano la finestra stessa.\n"
|
||||
"\n"
|
||||
"Spazio di lavoro & Icone:\n"
|
||||
" Questa modalità ti consente di passare da un'applicazione all'altra del\n"
|
||||
" tuo spazio di lavoro corrente e ti da in aggiunta l'opzione di passare all'ultima\n"
|
||||
" applicazione dello spazio di lavoro precedente. Questa è sempre l'ultima della\n"
|
||||
"\n"
|
||||
" lista ed è separata da una linea verticale, se presente.\n"
|
||||
" Ogni finestra è rappresentata dall'icona dell'applicazione.\n"
|
||||
"\n"
|
||||
"Se volessi ritornare al comportamento di default dello scambia finestre Alt-Tab,\n"
|
||||
"disabilita l'estensione da extensions.gnome.org oppure dalle Impostazioni avanzate."
|
||||
|
||||
#: ../extensions/alternate-tab/extension.js:293
|
||||
msgid "Alt Tab Behaviour"
|
||||
msgstr "Comportamento di Alt-Tab"
|
||||
|
||||
#: ../extensions/alternate-tab/extension.js:309
|
||||
msgid "All & Thumbnails"
|
||||
msgstr "Tutte & Miniature"
|
||||
|
||||
#: ../extensions/alternate-tab/extension.js:316
|
||||
msgid "Workspace & Icons"
|
||||
msgstr "Spazio di lavoro & Icone"
|
||||
|
||||
#: ../extensions/alternate-tab/extension.js:323
|
||||
msgid "Cancel"
|
||||
msgstr "Annulla"
|
||||
|
||||
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:1
|
||||
msgid "Ask the user for a default behaviour if true."
|
||||
msgstr "Se vero, chiede all'utente il comportamento preferito."
|
||||
|
||||
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
|
||||
msgid "Indicates if Alternate Tab is newly installed"
|
||||
msgstr "Indica se Alternate Tab è stata appena installata."
|
||||
|
||||
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:3
|
||||
msgid ""
|
||||
"Sets the Alt-Tab behaviour. Possible values are: native, all_thumbnails and "
|
||||
"workspace_icons."
|
||||
msgstr "Imposta il comportamento di Alt-Tab. Valori possibili sono \"native\", \"all_thumbnails\" e \"workspace_icons\""
|
||||
|
||||
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:4
|
||||
msgid "The alt tab behaviour."
|
||||
msgstr "Comportamento di Alt-Tab"
|
||||
|
||||
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
|
||||
msgid ""
|
||||
"A list of strings, each containing an application id (desktop file name), "
|
||||
@@ -69,50 +144,122 @@ msgstr ""
|
||||
msgid "Application and workspace list"
|
||||
msgstr "Lista applicazioni e spazi di lavoro"
|
||||
|
||||
#: ../extensions/dock/extension.js:116
|
||||
#: ../extensions/dock/extension.js:570
|
||||
msgid "Drag here to add favorites"
|
||||
msgstr "Trascina qui per aggiungere ai preferiti"
|
||||
|
||||
#: ../extensions/dock/extension.js:417
|
||||
#: ../extensions/dock/extension.js:903
|
||||
msgid "New Window"
|
||||
msgstr "Nuova finestra"
|
||||
|
||||
#: ../extensions/dock/extension.js:419
|
||||
#: ../extensions/dock/extension.js:905
|
||||
msgid "Quit Application"
|
||||
msgstr "Chiudi applicazione"
|
||||
|
||||
#: ../extensions/dock/extension.js:424
|
||||
#: ../extensions/dock/extension.js:910
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Rimuovi dai preferiti"
|
||||
|
||||
#: ../extensions/dock/extension.js:425
|
||||
#: ../extensions/dock/extension.js:911
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Aggiungi ai preferiti"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:1
|
||||
msgid "Autohide duration"
|
||||
msgstr "Durata dell'effetto di scomparsa"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
|
||||
msgid "Autohide effect"
|
||||
msgstr "Effetto di scomparsa"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
|
||||
msgid "Enable/disable autohide"
|
||||
msgstr "Abilita/disabilita scomparsa automatica"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
|
||||
msgid "Icon size"
|
||||
msgstr "Dimensione delle icone"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
|
||||
msgid "Position of the dock"
|
||||
msgstr "Posizione del dock"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
|
||||
msgid "Sets icon size of the dock."
|
||||
msgstr "Imposta la dimensione delle icone del dock."
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:7
|
||||
msgid ""
|
||||
"Sets the effect of the hide dock. Allowed values are 'resize' or 'rescale'"
|
||||
msgstr "Imposta l'effetto di scomparsa automatica del dock. Valori consentiti sono \"resize\" e \"rescale\""
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:8
|
||||
msgid ""
|
||||
"Sets the position of the dock in the screen. Allowed values are 'right' or "
|
||||
"'left'"
|
||||
msgstr "Imposta la posizione del dock sullo schermo. Valori consentiti sono \"right\" (destra) e \"left\" (sinistra)"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:9
|
||||
msgid "Sets the time duration of the autohide effect."
|
||||
msgstr "Imposta la durata in secondi dell'effetto di scomparsa"
|
||||
|
||||
#: ../extensions/example/extension.js:11
|
||||
msgid "Hello, world!"
|
||||
msgstr "Ciao, mondo!"
|
||||
|
||||
#: ../extensions/gajim/extension.js:219
|
||||
#: ../extensions/gajim/extension.js:227
|
||||
#, c-format
|
||||
msgid "%s is away."
|
||||
msgstr "%s è assente"
|
||||
|
||||
#: ../extensions/gajim/extension.js:222
|
||||
#: ../extensions/gajim/extension.js:230
|
||||
#, c-format
|
||||
msgid "%s is offline."
|
||||
msgstr "%s è fuori rete"
|
||||
|
||||
#: ../extensions/gajim/extension.js:225
|
||||
#: ../extensions/gajim/extension.js:233
|
||||
#, c-format
|
||||
msgid "%s is online."
|
||||
msgstr "%s è disponibile"
|
||||
|
||||
#: ../extensions/gajim/extension.js:228
|
||||
#: ../extensions/gajim/extension.js:236
|
||||
#, c-format
|
||||
msgid "%s is busy."
|
||||
msgstr "%s non è disponibile"
|
||||
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:1
|
||||
msgid ""
|
||||
"If true, place window captions on top the respective thumbnail, overriding "
|
||||
"shell default of placing it at the bottom. Changing this setting requires "
|
||||
"restarting the shell to have any effect."
|
||||
msgstr "Se vero, posiziona i titoli delle finestre in cima alle rispettive miniature, aggirando il comportamento normale della shell, che li colloca in basso. Modificare questa impostazione richiede di riavviare la shell."
|
||||
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
|
||||
msgid "Place window captions on top"
|
||||
msgstr "Posiziona i titoli delle finestre in cima"
|
||||
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
|
||||
msgid ""
|
||||
"The algorithm used to layout thumbnails in the overview. 'grid' to use the "
|
||||
"default grid based algorithm, 'natural' to use another one that reflects "
|
||||
"more the position and size of the actual window"
|
||||
msgstr "L'algoritmo usato per posizionare le miniature nella panoramica attività. \"grid\" per usare l'algoritmo di default, basato su una griglia, 'natural' per usarne un altro che riflette di più la posizione e la dimensione effettive della finestra."
|
||||
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
|
||||
msgid ""
|
||||
"Try to use more screen for placing window thumbnails by adapting to screen "
|
||||
"aspect ratio, and consolidating them further to reduce the bounding box. "
|
||||
"This setting applies only with the natural placement strategy."
|
||||
msgstr "Cerca di usare più spazio per collocare le miniature delle finestre, adattandosi al rapporto d'aspetto dello schermo, e consolidandole ulteriormente per ridurre lo spazio complessivo. Questa impostazione si applica solo se l'algoritmo di posizionamento è \"natural\"."
|
||||
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:5
|
||||
msgid "Use more screen for windows"
|
||||
msgstr "Usa più spazio per le finestre"
|
||||
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:6
|
||||
msgid "Window placement strategy"
|
||||
msgstr "Algoritmo di posizionamento delle finestre"
|
||||
|
||||
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:1
|
||||
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
|
||||
msgstr "Il nome del tema, da caricare in ~/.themes/nome/gnome-shell"
|
||||
|
||||
Reference in New Issue
Block a user