Compare commits

...

27 Commits

Author SHA1 Message Date
Giovanni Campagna
25ada42ed9 Bump version to 3.3.90
To go along GNOME Shell 3.3.90
2012-02-28 19:19:17 +01:00
Giovanni Campagna
ef95c7e4e7 apps-menu: update for Clutter/St API changes
Some StContainer API was removed to accomodate clutter deprecations.
Adapt apps-menu to that.
2012-02-28 19:18:22 +01:00
Милош Поповић
9e53a37c08 Updated Serbian translation 2012-02-27 00:17:27 +01:00
Fran Diéguez
b3e783e7a8 Updated Galician translations 2012-02-26 16:21:58 +01:00
Piotr Drąg
9e41c06cd7 Updated POTFILES.in 2012-02-24 19:22:41 +01:00
Giovanni Campagna
7b3650fb68 convenience: use recursive lookup for schemas
If the schema is not found in the extension directory, fall back
to the default source, allowing for systemwide installation of
extensions.
2012-02-24 11:23:59 +01:00
Giovanni Campagna
0bb2184efb workspace-indicator: add preferences dialog
Add a simple pref dialog to configure workspace name, similar to
the one available for GNOME 2.
2012-02-24 11:23:59 +01:00
Gabriel Speckhahn
e55101526c Updated Brazilian Portuguese translation 2012-02-16 12:57:51 -02:00
Matej Urbančič
50b89bb8b5 Updated Slovenian translation 2012-02-17 21:30:41 +01:00
Gonzalo Sanhueza
856ebbf7e6 Updated Spanish translation 2012-02-17 10:49:35 +01:00
Giovanni Campagna
0c5564fe55 workspace-indicator: fix focus after workspace change
meta_workspace_activate() expects the timestamp of the user action.
Not sure where that true came from.
2012-02-13 23:06:59 +01:00
Giovanni Campagna
53ee4c096e i18n: Updated Italian translation 2012-02-13 18:56:25 +01:00
Giovanni Campagna
5754e2db58 example: add settings and preference dialogs
This continues turning "example" in a real gnome-shell extension
tutorial, showing how to create GSettings using Convenience and
how to build a simple preference dialog by subclassing GtkGrid
and binding GObject properties to GSettings.
2012-02-13 18:55:15 +01:00
Giovanni Campagna
468ed6cfe6 auto-move-windows: introduce configuration dialog
Using the new configuration framework from gnome-shell, add
a simple tree view to configure the automatic moving rules.
2012-02-13 18:55:15 +01:00
Giovanni Campagna
a4fac964dc convenience: allow system-wide installation again
Check if necessary files are installed in the extension folder
(as done by "make zip-file"), and if not, fallback to the standard
paths.
2012-02-13 18:55:15 +01:00
Giovanni Campagna
245ab96a27 alternate-tab: move to the new configuration system
Since 3.3.5, gnome-shell offers an integrated configuration tool
for extensions, which can be used by adding a new "prefs" module.
Replace the old modal dialog with a new gtk dialog, which also allows
to configure the new highlight-selected setting.
2012-02-13 18:55:15 +01:00
Daniel Mustieles
6b373686d3 Updated Spanish translation 2012-02-12 13:54:09 +01:00
Piotr Drąg
c90f90a5c7 Updated POTFILES.in 2012-02-10 19:44:28 +01:00
Giovanni Campagna
1dca3fecaa alternate-tab: optionally highlight selected window in workspace&icons mode
Optionally, bring the selected window to front before dismissing
the popup, in a manner similar to cycle-windows keybinding (but
without the rendering artifacts, and without application grouping).

Based on a patch by Pallai Roland <dap@magex.hu>
2012-02-10 15:22:07 +01:00
Giovanni Campagna
b6f4ed7013 Bump version to 3.3.5
To go along GNOME Shell 3.3.5
2012-02-10 15:21:01 +01:00
Giovanni Campagna
9b6374881d all: port to the new class framework
A long due update, since this was merged in gjs and core shell.
We no longer need to mess with __proto__ and prototype, and can
use decent syntax for true object oriented programming.
(This affects all except xrandr-indicator, since I want to port
that to GDBus too, using the new bindings right from the start)
2012-02-10 15:16:46 +01:00
Giovanni Campagna
2388b8738f dock: refactor and clean up code
Modified to avoid global settings variables, that were updated
unpredictably. Removed the inital show effect and placing the dock
at primary.y at startup (causing a big and often unexpected jump).
Ported to the new class framework, which should mean cleaner code.
2012-02-10 15:16:16 +01:00
Giovanni Campagna
775bd5a86a alternate-tab: shuffle and update code around a bit
Mode selection was cleaned up, settings dialog was moved to a
separate file (in preparation for GTK replacement), all classes
were moved to Lang.Class. No big code changes though.
2012-02-09 18:43:29 +01:00
Giovanni Campagna
3630228cac all: port to the new convienence module
Retrieve Convenience from the extension helper object (Me), and
pass no arguments to initTranslations and getSettings (since the
metadata has all that is required)
2012-02-09 18:43:28 +01:00
Giovanni Campagna
7517d8ab6a convenience: update for the new extension API
Extension helper and metadata are now different objects, so the
first needs be retrieved from ExtensionUtils.
Also, reduce the number of required arguments (by using the new
metadata keys) and make generic enough for usage by other extensions.
Includes documentation.
2012-02-09 18:43:25 +01:00
Giovanni Campagna
9ebfd1f495 build system: factor out setting schema generation
Introduce a common settings.mk file, which is included in extensions
that need GSettings, to ensure that conventions are respected, and
necessary fixes can be applied from one place.
2012-02-08 18:01:00 +01:00
Giovanni Campagna
dfca68062c build system: add additional automatic metadata
Add "gettext-domain", "extension-id" (containing the base part of the
UUID) and "gschemabase" (which, combined with "extension-id", gives
the GSettings schema) to metadata.json, autogenerated by the build
system.
2012-02-08 18:00:56 +01:00
56 changed files with 3196 additions and 1578 deletions

20
NEWS
View File

@@ -1,3 +1,23 @@
3.3.90
======
* system wide installation via "make install" is possible
again
* alternate-tab can now pre-activate the selected window
* auto-move-windows, workspace-indicator and example gained
new preference dialogs
* workspace-indicator: fixed a bug wrt focus stealing prevention
* updated translations (es, pt_BR, it, sl, gl, sr)
3.3.5
=====
* improvements to the build system and convenience module,
making it easier for other extensions to use, and bringing
it up to date with gnome-shell changes
* all extensions were ported to the Lang.Class framework
(except xrandr-indicator, which is pending GDBus merge)
* alternate-tab and dock were slightly refactored to clean up
some old code
3.3.4
=====
* improved styling of windowsNavigator tooltips

View File

@@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell-extensions],[3.3.4],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&component=extensions])
AC_INIT([gnome-shell-extensions],[3.3.90],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&component=extensions])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_AUX_DIR([config])

View File

@@ -1,13 +1,18 @@
include $(top_srcdir)/include.mk
dist_extension_DATA = extension.js stylesheet.css
dist_extension_DATA = extension.js stylesheet.css $(EXTRA_MODULES)
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|[@]uuid@|$(uuid)|" \
$(AM_V_GEN) sed \
-e "s|[@]extension_id@|$(EXTENSION_ID)|" \
-e "s|[@]uuid@|$(uuid)|" \
-e "s|[@]gschemaname@|$(gschemaname)|" \
-e "s|[@]gettext_domain@|$(GETTEXT_PACKAGE)|" \
-e "s|[@]shell_current@|$(PACKAGE_VERSION)|" \
-e "s|[@]url@|$(extensionurl)|" $< > $@
-e "s|[@]url@|$(extensionurl)|" \
$< > $@
CLEANFILES = metadata.json

View File

@@ -1,14 +1,6 @@
EXTENSION_ID = alternate-tab
EXTRA_MODULES = prefs.js
include ../../extension.mk
gschemas_in = $(gschemabase).alternate-tab.gschema.xml.in
@INTLTOOL_XML_NOMERGE_RULE@
gsettings_SCHEMAS = $(gschemas_in:.xml.in=.xml)
@GSETTINGS_RULES@
CLEANFILES += $(gschemas_in:.xml.in=.valid) $(gsettings_SCHEMAS)
EXTRA_DIST += $(gschemas_in)
include ../../settings.mk

View File

@@ -25,57 +25,20 @@ const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const N_ = function(e) { return e };
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
let settings;
const POPUP_DELAY_TIMEOUT = 150; // milliseconds
const SETTINGS_SCHEMA = 'org.gnome.shell.extensions.alternate-tab';
const SETTINGS_BEHAVIOUR_KEY = 'behaviour';
const SETTINGS_FIRST_TIME_KEY = 'first-time';
const SETTINGS_HIGHLIGHT_SELECTED_KEY = 'highlight-selected';
const MODES = {
all_thumbnails: function(display, binding, mask, window, backwards) {
let tabPopup = new AltTabPopup2();
if (!tabPopup.show(backwards, binding, mask))
tabPopup.destroy();
},
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))
tabPopup.destroy();
}
};
const MESSAGE = N_("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.\
");
function AltTabPopupW() {
this._init();
}
AltTabPopupW.prototype = {
__proto__ : AltTab.AltTabPopup.prototype,
const AltTabPopupWorkspaceIcons = new Lang.Class({
Name: 'AlternateTab.AltTabPopupWorkspaceIcons',
Extends: AltTab.AltTabPopup,
_windowActivated : function(thumbnailList, n) { },
@@ -114,6 +77,8 @@ AltTabPopupW.prototype = {
this.actor.show();
this.actor.get_allocation_box();
this._highlight_selected = settings.get_boolean(SETTINGS_HIGHLIGHT_SELECTED_KEY);
// Make the initial selection
if (binding == 'switch_group') {
//see AltTab.AltTabPopup.show function
@@ -155,24 +120,69 @@ AltTabPopupW.prototype = {
return true;
},
_select : function(app, window, forceAppFocus) {
if (app != this._currentApp || window == null) {
if (this._thumbnails)
this._destroyThumbnails();
}
if (this._thumbnailTimeoutId != 0) {
Mainloop.source_remove(this._thumbnailTimeoutId);
this._thumbnailTimeoutId = 0;
}
this._thumbnailsFocused = (window != null) && !forceAppFocus;
this._currentApp = app;
this._currentWindow = window ? window : -1;
this._appSwitcher.highlight(app, this._thumbnailsFocused);
if (window != null) {
if (!this._thumbnails)
this._createThumbnails();
this._currentWindow = window;
this._thumbnails.highlight(window, forceAppFocus);
} else if (this._appIcons[this._currentApp].cachedWindows.length > 1 &&
!forceAppFocus) {
this._thumbnailTimeoutId = Mainloop.timeout_add (
THUMBNAIL_POPUP_TIME,
Lang.bind(this, this._timeoutPopupThumbnails));
}
if (this._highlight_selected) {
let current_app = this._appIcons[this._currentApp];
Main.activateWindow(current_app.cachedWindows[0]);
}
},
_finish : function() {
let app = this._appIcons[this._currentApp];
if (!app)
return;
/*
* We've to restore the original Z-depth and order of all windows.
*
* Gnome-shell doesn't give an option to change Z-depth without
* messing the window's user_time.
*
* Pointless if the popup wasn't showed.
*/
if (this._highlight_selected && this.actor.opacity == 255) {
for (let i = this._appIcons.length - 2; i >= 0; i--) {
let app_walker = this._appIcons[i];
Main.activateWindow(app_walker.cachedWindows[0], global.get_current_time() - i - 1);
}
}
Main.activateWindow(app.cachedWindows[0]);
this.destroy();
}
};
});
function AppIcon(app, window) {
this._init(app, window);
}
AppIcon.prototype = {
__proto__ : AltTab.AppIcon.prototype,
const AppIcon = new Lang.Class({
Name: 'AlternateTab.AppIcon',
Extends: AltTab.AppIcon,
_init: function(app, window) {
this.app = app;
@@ -199,16 +209,16 @@ AppIcon.prototype = {
this.actor.add(this.label, { x_fill: false });
}
}
};
});
function WindowSwitcher(apps, altTabPopup) {
this._init(apps, altTabPopup);
}
WindowSwitcher.prototype = {
__proto__ : AltTab.AppSwitcher.prototype,
const WindowSwitcher = new Lang.Class({
Name: 'AlternateTab.WindowSwitcher',
Extends: AltTab.AppSwitcher,
_init : function(apps, altTabPopup) {
// Horrible HACK!
// We inherit from AltTab.AppSwitcher, but only chain up to
// AltTab.SwitcherList._init, to bypass AltTab.AppSwitcher._init
AltTab.SwitcherList.prototype._init.call(this, true);
// Construct the AppIcons, sort by time, add to the popup
@@ -268,81 +278,11 @@ WindowSwitcher.prototype = {
if (t2 > t1) return 1;
else return -1;
}
};
});
function AltTabSettingsDialog() {
this._init();
}
AltTabSettingsDialog.prototype = {
__proto__: ModalDialog.ModalDialog.prototype,
_init : function() {
ModalDialog.ModalDialog.prototype._init.call(this, { styleClass: null });
let mainContentBox = new St.BoxLayout({ style_class: 'polkit-dialog-main-layout',
vertical: false });
this.contentLayout.add(mainContentBox,
{ x_fill: true,
y_fill: true });
let messageBox = new St.BoxLayout({ style_class: 'polkit-dialog-message-layout',
vertical: true });
mainContentBox.add(messageBox,
{ y_align: St.Align.START });
this._subjectLabel = new St.Label({ style_class: 'polkit-dialog-headline',
text: _("Alt Tab Behaviour") });
messageBox.add(this._subjectLabel,
{ y_fill: false,
y_align: St.Align.START });
this._descriptionLabel = new St.Label({ style_class: 'polkit-dialog-description',
text: Gettext.gettext(MESSAGE) });
messageBox.add(this._descriptionLabel,
{ y_fill: true,
y_align: St.Align.START });
this.setButtons([
{
label: _("All & Thumbnails"),
action: Lang.bind(this, function() {
this.setBehaviour('all_thumbnails');
this.close();
})
},
{
label: _("Workspace & Icons"),
action: Lang.bind(this, function() {
this.setBehaviour('workspace_icons');
this.close();
})
},
{
label: _("Cancel"),
action: Lang.bind(this, function() {
this.close();
}),
key: Clutter.Escape
}
]);
},
setBehaviour: function(behaviour) {
settings.set_string(SETTINGS_BEHAVIOUR_KEY, behaviour);
settings.set_boolean(SETTINGS_FIRST_TIME_KEY, false);
}
};
function AltTabPopup2() {
this._init();
}
AltTabPopup2.prototype = {
__proto__ : AltTab.AltTabPopup.prototype,
const AltTabPopupAllThumbnails = new Lang.Class({
Name: 'AlternateTab.AltTabPopup.AllThumbnails',
Extends: AltTab.AltTabPopup,
_init : function() {
this.actor = new Shell.GenericContainer({ name: 'altTabPopup',
@@ -465,54 +405,6 @@ AltTabPopup2.prototype = {
return true
},
/*
_keyPressEvent : function(actor, event) {
let keysym = event.get_key_symbol();
let shift = (Shell.get_event_state(event) & Clutter.ModifierType.SHIFT_MASK);
// X allows servers to represent Shift+Tab in two different ways
if (shift && keysym == Clutter.Tab)
keysym = Clutter.ISO_Left_Tab;
this._disableHover();
if (keysym == Clutter.grave)
this._select(this._currentApp, this._nextWindow());
else if (keysym == Clutter.asciitilde)
this._select(this._currentApp, this._previousWindow());
else if (keysym == Clutter.Escape)
this.destroy();
else if (this._thumbnailsFocused) {
if (keysym == Clutter.Tab) {
if (this._currentWindow == this._appIcons[this._currentApp].cachedWindows.length - 1)
this._select(this._nextApp());
else
this._select(this._currentApp, this._nextWindow());
} else if (keysym == Clutter.ISO_Left_Tab) {
if (this._currentWindow == 0 || this._currentWindow == -1)
this._select(this._previousApp());
else
this._select(this._currentApp, this._previousWindow());
} else if (keysym == Clutter.Left)
this._select(this._currentApp, this._previousWindow());
else if (keysym == Clutter.Right)
this._select(this._currentApp, this._nextWindow());
else if (keysym == Clutter.Up)
this._select(this._currentApp, null, true);
} else {
if (keysym == Clutter.Tab)
this._select(this._nextApp());
else if (keysym == Clutter.ISO_Left_Tab)
this._select(this._previousApp());
else if (keysym == Clutter.Left)
this._select(this._previousApp());
else if (keysym == Clutter.Right)
this._select(this._nextApp());
}
return true;
},
*/
_sortWindows : function(win1,win2) {
let t1 = win1.get_user_time();
let t2 = win2.get_user_time();
@@ -531,17 +423,14 @@ AltTabPopup2.prototype = {
Main.activateWindow(app.cachedWindows[0]);
this.destroy();
},
};
});
function WindowList(windows) {
this._init(windows);
}
WindowList.prototype = {
__proto__ : AltTab.SwitcherList.prototype,
const WindowList = new Lang.Class({
Name: 'AlternateTab.WindowList',
Extends: AltTab.SwitcherList,
_init : function(windows) {
AltTab.SwitcherList.prototype._init.call(this, true);
this.parent(true);
let activeWorkspace = global.screen.get_active_workspace();
this._labels = new Array();
@@ -595,25 +484,35 @@ WindowList.prototype = {
addSeparator: function () {
this._separator=null;
}
});
const MODES = {
all_thumbnails: AltTabPopupAllThumbnails,
workspace_icons: AltTabPopupWorkspaceIcons,
};
function init(metadata) {
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
me.convenience.initTranslations(metadata);
settings = me.convenience.getSettings(metadata, 'alternate-tab');
function doAltTab(display, screen, window, binding) {
let behaviour = settings.get_string(SETTINGS_BEHAVIOUR_KEY);
// alt-tab having no effect is unexpected, even with wrong settings
if (!(behaviour in MODES))
behaviour = 'all_thumbnails';
if (Main.wm._workspaceSwitcherPopup)
Main.wm._workspaceSwitcherPopup.actor.hide();
let modifiers = binding.get_modifiers()
let backwards = modifiers & Meta.VirtualModifier.SHIFT_MASK;
let constructor = MODES[behaviour];
let popup = new constructor();
if (!popup.show(backwards, binding.get_name(), binding.get_mask()))
popup.destroy();
}
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) {
let modifiers = binding.get_modifiers()
let backwards = modifiers & Meta.VirtualModifier.SHIFT_MASK;
MODES[behaviour](display, binding.get_name(), binding.get_mask(), window, backwards);
}
}
function init(metadata) {
Convenience.initTranslations();
settings = Convenience.getSettings();
}
function enable() {

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"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" ],

View File

@@ -7,12 +7,13 @@
<key name="behaviour" enum="org.gnome.shell.extensions.alternate-tab.BehaviourMode">
<default>'all_thumbnails'</default>
<_summary>The alt tab behaviour.</_summary>
<_description>Sets the Alt-Tab behaviour. Possible values are: native, all_thumbnails and workspace_icons.</_description>
<_description>Sets the Alt-Tab behaviour. Possible values are: all_thumbnails and workspace_icons.
See the configuration dialogs for details.</_description>
</key>
<key type="b" name="first-time">
<default>true</default>
<_summary>Indicates if Alternate Tab is newly installed</_summary>
<_description>Ask the user for a default behaviour if true.</_description>
<key type="b" name="highlight-selected">
<default>false</default>
<summary>Bring each selected window to the front.</summary>
<description>Bring each window to the front in turn as Alt+Tab is pressed.</description>
</key>
</schema>
</schemalist>

View File

@@ -0,0 +1,124 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
/* most of the code is borrowed from
* > js/ui/altTab.js <
* of the gnome-shell source code
*/
const Gdk = imports.gi.Gdk;
const Gio = imports.gi.Gio;
const Gtk = imports.gi.Gtk;
const GObject = imports.gi.GObject;
const Lang = imports.lang;
const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const N_ = function(e) { return e };
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
const SETTINGS_BEHAVIOUR_KEY = 'behaviour';
const SETTINGS_HIGHLIGHT_KEY = 'highlight-selected';
const MODES = {
all_thumbnails: {
name: N_("All & Thumbnails"),
description: N_("This mode presents all applications from all workspaces in one selection \
list. Instead of using the application icon of every window, it uses small \
thumbnails resembling the window itself."),
extra_widgets: [ ]
},
workspace_icons: {
name: N_("Workspace & Icons"),
description: N_("This mode let's you switch between the applications of your current \
workspace and gives you additionally the option to switch to the last used \
application of your previous workspace. This is always the last symbol in \
the list and is segregated by a separator/vertical line if available. \n\
Every window is represented by its application icon."),
extra_widgets: [
{ label: N_("Move current selection to front before closing the popup"), key: SETTINGS_HIGHLIGHT_KEY }
]
}
};
const AltTabSettingsWidget = new GObject.Class({
Name: 'AlternateTab.Prefs.AltTabSettingsWidget',
GTypeName: 'AltTabSettingsWidget',
Extends: Gtk.Grid,
_init : function(params) {
this.parent(params);
this.column_spacing = 10;
this.margin = 10;
this._settings = Convenience.getSettings();
let introLabel = _("The Alternate Tab can be used in different modes, that \
affect the way windows are chosen and presented.");
this.attach(new Gtk.Label({ label: introLabel, wrap: true, sensitive: true,
margin_bottom: 10, margin_top: 5 }),
0, 0, 2, 1);
let top = 1;
let radio = null;
let currentMode = this._settings.get_string(SETTINGS_BEHAVIOUR_KEY);
for (let mode in MODES) {
// copy the mode variable because it has function scope, not block scope
// so cannot be used in a closure
let modeCapture = mode;
let obj = MODES[mode];
let name = Gettext.gettext(obj.name);
let description = Gettext.gettext(obj.description);
let nextra = obj.extra_widgets.length;
radio = new Gtk.RadioButton({ group: radio, label: name, valign: Gtk.Align.START });
radio.connect('toggled', Lang.bind(this, function(widget) {
if (widget.active)
this._settings.set_string(SETTINGS_BEHAVIOUR_KEY, modeCapture);
this._updateSensitivity(widget, widget.active);
}));
this.attach(radio, 0, top, 1, nextra + 1);
let descriptionLabel = new Gtk.Label({ label: description, wrap: true, sensitive: true,
xalign: 0.0, justify: Gtk.Justification.FILL });
this.attach(descriptionLabel, 1, top, 1, 1);
radio._extra = [];
for (let i = 0; i < nextra; i++) {
let key = obj.extra_widgets[i].key;
let label = Gettext.gettext(obj.extra_widgets[i].label);
let extra = new Gtk.CheckButton({ label: label });
this._settings.bind(key, extra, 'active', Gio.SettingsBindFlags.DEFAULT);
radio._extra.push(extra);
this.attach(extra, 1, top + i + 1, 1, 1);
}
if (mode == currentMode)
radio.active = true;
this._updateSensitivity(radio, radio.active);
top += nextra + 1;
}
},
_updateSensitivity: function(widget, active) {
for (let i = 0; i < widget._extra.length; i++)
widget._extra[i].sensitive = active;
},
});
function init() {
Convenience.initTranslations();
}
function buildPrefsWidget() {
let widget = new AltTabSettingsWidget();
widget.show_all();
return widget;
}

View File

@@ -7,6 +7,10 @@ const PopupMenu = imports.ui.popupMenu;
const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
let suspend_item = null;
let hibernate_item = null;
let poweroff_item = null;
@@ -36,17 +40,9 @@ function onHibernateActivate(item) {
}));
}
function createSubMenu() {
}
// Put your extension initialization code here
function init(metadata) {
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
me.convenience.initTranslations(metadata);
}
function resetMenu() {
Convenience.initTranslations();
}
function enable() {

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"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@" ],

View File

@@ -10,17 +10,13 @@ const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const ICON_SIZE = 28;
let appsys = Shell.AppSystem.get_default();
function AppMenuItem() {
this._init.apply(this, arguments);
}
AppMenuItem.prototype = {
__proto__: PopupMenu.PopupBaseMenuItem.prototype,
const AppMenuItem = new Lang.Class({
Name: 'AppsMenu.AppMenuItem',
Extends: PopupMenu.PopupBaseMenuItem,
_init: function (app, params) {
PopupMenu.PopupBaseMenuItem.prototype._init.call(this, params);
this.parent(params);
this._app = app;
this.label = new St.Label({ text: app.get_name() });
@@ -32,30 +28,36 @@ AppMenuItem.prototype = {
activate: function (event) {
this._app.activate_full(-1, event.get_time());
PopupMenu.PopupBaseMenuItem.prototype.activate.call(this, event);
this.parent(event);
}
};
});
function ApplicationsButton() {
this._init();
}
ApplicationsButton.prototype = {
__proto__: PanelMenu.SystemStatusButton.prototype,
const ApplicationsButton = new Lang.Class({
Name: 'AppsMenu.ApplicationsButton',
Extends: PanelMenu.SystemStatusButton,
_init: function() {
PanelMenu.SystemStatusButton.prototype._init.call(this, 'start-here');
this.parent('start-here');
this._appSys = Shell.AppSystem.get_default();
this._installedChangedId = this._appSys.connect('installed-changed', Lang.bind(this, this._refresh));
this._display();
appsys.connect('installed-changed', Lang.bind(this, this.reDisplay));
},
reDisplay : function() {
destroy: function() {
this._appSys.disconnect(this._installedChangedId);
this.parent();
},
_refresh: function() {
this._clearAll();
this._display();
},
_clearAll : function() {
_clearAll: function() {
this.menu.removeAll();
},
@@ -67,7 +69,7 @@ ApplicationsButton.prototype = {
while ((nextType = iter.next()) != GMenu.TreeItemType.INVALID) {
if (nextType == GMenu.TreeItemType.ENTRY) {
var entry = iter.get_entry();
var app = appsys.lookup_app_by_tree_entry(entry);
var app = this._appSys.lookup_app_by_tree_entry(entry);
if (!entry.get_app_info().get_nodisplay())
menu.addMenuItem(new AppMenuItem(app));
} else if (nextType == GMenu.TreeItemType.DIRECTORY) {
@@ -77,7 +79,7 @@ ApplicationsButton.prototype = {
},
_display : function() {
let tree = appsys.get_tree();
let tree = this._appSys.get_tree();
let root = tree.get_root_directory();
let iter = root.iter();
@@ -91,13 +93,13 @@ ApplicationsButton.prototype = {
}
}
}
};
});
let appsMenuButton;
function enable() {
appsMenuButton = new ApplicationsButton();
Main.panel._leftBox.insert_actor(appsMenuButton.actor, 1);
Main.panel._leftBox.insert_child_at_index(appsMenuButton.actor, 1);
Main.panel._leftBox.child_set(appsMenuButton.actor, { y_fill : true } );
Main.panel._menus.addMenu(appsMenuButton.menu);
}

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"name": "Applications Menu",
"description": "Add a gnome 2.x style menu for applications",
"shell-version": [ "@shell_current@" ],

View File

@@ -1,14 +1,7 @@
EXTENSION_ID = auto-move-windows
EXTRA_MODULES = prefs.js
include ../../extension.mk
include ../../settings.mk
gschemas_in = $(gschemabase).auto-move-windows.gschema.xml.in
@INTLTOOL_XML_NOMERGE_RULE@
gsettings_SCHEMAS = $(gschemas_in:.xml.in=.xml)
@GSETTINGS_RULES@
CLEANFILES += $(gschemas_in:.xml.in=.valid) $(gsettings_SCHEMAS)
EXTRA_DIST += $(gschemas_in)

View File

@@ -11,16 +11,17 @@ const St = imports.gi.St;
const Main = imports.ui.main;
const SETTINGS_SCHEMA = 'org.gnome.shell.extensions.auto-move-windows';
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
const SETTINGS_KEY = 'application-list';
let settings;
function WindowMover() {
this._init();
}
const WindowMover = new Lang.Class({
Name: 'AutoMoveWindows.WindowMover',
WindowMover.prototype = {
_init: function() {
this._settings = settings;
this._windowTracker = Shell.WindowTracker.get_default();
@@ -76,15 +77,14 @@ WindowMover.prototype = {
}
}
}
}
});
let prevCheckWorkspaces;
let winMover;
function init(metadata) {
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
me.convenience.initTranslations(metadata);
settings = me.convenience.getSettings(metadata, 'auto-move-windows');
function init() {
Convenience.initTranslations();
settings = Convenience.getSettings();
}
function enable() {

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"name": "Auto Move Windows",
"description": "Move applications to specific workspaces when they create windows",
"shell-version": [ "@shell_current@" ],

View File

@@ -0,0 +1,253 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
// Start apps on custom workspaces
const GdkPixbuf = imports.gi.GdkPixbuf;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const GObject = imports.gi.GObject;
const GMenu = imports.gi.GMenu;
const Gtk = imports.gi.Gtk;
const Lang = imports.lang;
const Mainloop = imports.mainloop;
const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const N_ = function(e) { return e };
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
const SETTINGS_KEY = 'application-list';
const WORKSPACE_MAX = 36; // compiled in limit of mutter
const Columns = {
APPINFO: 0,
DISPLAY_NAME: 1,
ICON: 2,
WORKSPACE: 3,
ADJUSTMENT: 4
};
const Widget = new GObject.Class({
Name: 'AutoMoveWindows.Prefs.Widget',
GTypeName: 'AutoMoveWindowsPrefsWidget',
Extends: Gtk.Grid,
_init: function(params) {
this.parent(params);
this.set_orientation(Gtk.Orientation.VERTICAL);
this._settings = Convenience.getSettings();
this._settings.connect('changed', Lang.bind(this, this._refresh));
this._changedPermitted = false;
this._store = new Gtk.ListStore();
this._store.set_column_types([Gio.AppInfo, GObject.TYPE_STRING, Gio.Icon, GObject.TYPE_INT,
Gtk.Adjustment]);
this._treeView = new Gtk.TreeView({ model: this._store,
hexpand: true, vexpand: true });
this._treeView.get_selection().set_mode(Gtk.SelectionMode.SINGLE);
let appColumn = new Gtk.TreeViewColumn({ expand: true, sort_column_id: Columns.DISPLAY_NAME,
title: _("Application") });
let iconRenderer = new Gtk.CellRendererPixbuf;
appColumn.pack_start(iconRenderer, false);
appColumn.add_attribute(iconRenderer, "gicon", Columns.ICON);
let nameRenderer = new Gtk.CellRendererText;
appColumn.pack_start(nameRenderer, true);
appColumn.add_attribute(nameRenderer, "text", Columns.DISPLAY_NAME);
this._treeView.append_column(appColumn);
let workspaceColumn = new Gtk.TreeViewColumn({ title: _("Workspace"),
sort_column_id: Columns.WORKSPACE });
let workspaceRenderer = new Gtk.CellRendererSpin({ editable: true });
workspaceRenderer.connect('edited', Lang.bind(this, this._workspaceEdited));
workspaceColumn.pack_start(workspaceRenderer, true);
workspaceColumn.add_attribute(workspaceRenderer, "adjustment", Columns.ADJUSTMENT);
workspaceColumn.add_attribute(workspaceRenderer, "text", Columns.WORKSPACE);
this._treeView.append_column(workspaceColumn);
this.add(this._treeView);
let toolbar = new Gtk.Toolbar();
toolbar.get_style_context().add_class(Gtk.STYLE_CLASS_INLINE_TOOLBAR);
this.add(toolbar);
let newButton = new Gtk.ToolButton({ stock_id: Gtk.STOCK_NEW,
label: _("Add rule"),
is_important: true });
newButton.connect('clicked', Lang.bind(this, this._createNew));
toolbar.add(newButton);
let delButton = new Gtk.ToolButton({ stock_id: Gtk.STOCK_DELETE });
delButton.connect('clicked', Lang.bind(this, this._deleteSelected));
toolbar.add(delButton);
this._changedPermitted = true;
this._refresh();
},
_createNew: function() {
let dialog = new Gtk.Dialog({ title: _("Create new matching rule"),
transient_for: this.get_toplevel(),
modal: true });
dialog.add_button(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL);
dialog.add_button(_("Add"), Gtk.ResponseType.OK);
dialog.set_default_response(Gtk.ResponseType.OK);
let grid = new Gtk.Grid({ column_spacing: 10,
row_spacing: 15,
margin: 10 });
dialog._appChooser = new Gtk.AppChooserWidget({ show_all: true });
grid.attach(dialog._appChooser, 0, 0, 2, 1);
grid.attach(new Gtk.Label({ label: _("Workspace") }),
0, 1, 1, 1);
let adjustment = new Gtk.Adjustment({ lower: 1,
upper: WORKSPACE_MAX,
step_increment: 1
});
dialog._spin = new Gtk.SpinButton({ adjustment: adjustment,
snap_to_ticks: true });
dialog._spin.set_value(1);
grid.attach(dialog._spin, 1, 1, 1, 1);
dialog.get_content_area().add(grid);
dialog.connect('response', Lang.bind(this, function(dialog, id) {
if (id != Gtk.ResponseType.OK) {
dialog.destroy();
return;
}
let appInfo = dialog._appChooser.get_app_info();
if (!appInfo)
return;
let index = Math.floor(dialog._spin.value);
if (isNaN(index) || index < 0)
index = 1;
this._changedPermitted = false;
if (!this._appendItem(appInfo.get_id(), index)) {
this._changedPermitted = true;
return;
}
let iter = this._store.append();
let adj = new Gtk.Adjustment({ lower: 1,
upper: WORKSPACE_MAX,
step_increment: 1,
value: index });
this._store.set(iter,
[Columns.APPINFO, Columns.ICON, Columns.DISPLAY_NAME, Columns.WORKSPACE, Columns.ADJUSTMENT],
[appInfo, appInfo.get_icon(), appInfo.get_display_name(), index, adj]);
this._changedPermitted = true;
dialog.destroy();
}));
dialog.show_all();
},
_deleteSelected: function() {
let [any, model, iter] = this._treeView.get_selection().get_selected();
if (any) {
let appInfo = this._store.get_value(iter, Columns.APPINFO);
this._changedPermitted = false;
this._removeItem(appInfo.get_id());
this._store.remove(iter);
this._changedPermitted = true;
}
},
_workspaceEdited: function(renderer, pathString, text) {
let index = parseInt(text);
if (isNaN(index) || index < 0)
index = 1;
let path = Gtk.TreePath.new_from_string(pathString);
let [model, iter] = this._store.get_iter(path);
let appInfo = this._store.get_value(iter, Columns.APPINFO);
this._changedPermitted = false;
this._changeItem(appInfo.get_id(), index);
this._store.set_value(iter, Columns.WORKSPACE, index);
this._changedPermitted = true;
},
_refresh: function() {
if (!this._changedPermitted)
// Ignore this notification, model is being modified outside
return;
this._store.clear();
let currentItems = this._settings.get_strv(SETTINGS_KEY);
for (let i = 0; i < currentItems.length; i++) {
let [id, index] = currentItems[i].split(':');
let appInfo = Gio.DesktopAppInfo.new(id);
let iter = this._store.append();
let adj = new Gtk.Adjustment({ lower: 1,
upper: WORKSPACE_MAX,
step_increment: 1,
value: index });
this._store.set(iter,
[Columns.APPINFO, Columns.ICON, Columns.DISPLAY_NAME, Columns.WORKSPACE, Columns.ADJUSTMENT],
[appInfo, appInfo.get_icon(), appInfo.get_display_name(), parseInt(index), adj]);
}
},
_appendItem: function(id, workspace) {
let currentItems = this._settings.get_strv(SETTINGS_KEY);
let alreadyHave = currentItems.map(function(el) {
return el.split(':')[0];
}).indexOf(id) != -1;
if (alreadyHave) {
printerr("Already have an item for this id");
return false;
}
currentItems.push(id + ':' + workspace);
this._settings.set_strv(SETTINGS_KEY, currentItems);
return true;
},
_removeItem: function(id) {
let currentItems = this._settings.get_strv(SETTINGS_KEY);
let index = currentItems.map(function(el) {
return el.split(':')[0];
}).indexOf(id);
if (index < 0)
return;
currentItems.splice(index, 1);
this._settings.set_strv(SETTINGS_KEY, currentItems);
},
_changeItem: function(id, workspace) {
let currentItems = this._settings.get_strv(SETTINGS_KEY);
let index = currentItems.map(function(el) {
return el.split(':')[0];
}).indexOf(id);
if (index < 0)
currentItems.push(id + ':' + workspace);
else
currentItems[index] = id + ':' + workspace;
this._settings.set_strv(SETTINGS_KEY, currentItems);
}
});
function init() {
Convenience.initTranslations();
}
function buildPrefsWidget() {
let widget = new Widget();
widget.show_all();
return widget;
}

View File

@@ -1,14 +1,5 @@
EXTENSION_ID = dock
include ../../extension.mk
include ../../settings.mk
gschemas_in = $(gschemabase).dock.gschema.xml.in
@INTLTOOL_XML_NOMERGE_RULE@
gsettings_SCHEMAS = $(gschemas_in:.xml.in=.xml)
@GSETTINGS_RULES@
CLEANFILES += $(gschemas_in:.xml.in=.valid) $(gsettings_SCHEMAS)
EXTRA_DIST += $(gschemas_in)

View File

@@ -25,19 +25,17 @@ const AltTab = imports.ui.altTab;
const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
// Settings
const DOCK_SETTINGS_SCHEMA = 'org.gnome.shell.extensions.dock';
const DOCK_POSITION_KEY = 'position';
const DOCK_SIZE_KEY = 'size';
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;
// Keep enums in sync with GSettings schemas
const PositionMode = {
LEFT: 0,
@@ -50,268 +48,222 @@ const AutoHideEffect = {
MOVE: 2
};
let position = PositionMode.RIGHT;
let dockicon_size = 48;
let hideable = true;
let hideDock = true;
let hideEffect = AutoHideEffect.RESIZE;
let autohide_animation_time = 0.3;
const DND_RAISE_APP_TIMEOUT = 500;
/*************************************************************************************/
/**** start resize's Dock functions *****************/
/*************************************************************************************/
function hideDock_size () {
if (hideable){
let monitor = Main.layoutManager.primaryMonitor
let position_x = monitor.x;
let height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
if (!this._hideable)
return;
Tweener.addTween(this,{
_item_size: 1,
time: autohide_animation_time,
transition: 'easeOutQuad',
onUpdate: function () {
height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
width = this._item_size + 4*this._spacing;
switch (position) {
case PositionMode.LEFT:
position_x=monitor.x-2*this._spacing;
break;
case PositionMode.RIGHT:
default:
position_x = monitor.x + (monitor.width-1-this._item_size-2*this._spacing);
}
this.actor.set_position (position_x,monitor.y+(monitor.height-height)/2);
this.actor.set_size(width,height);
},
});
hideDock=true;
}
let monitor = Main.layoutManager.primaryMonitor
let position_x = monitor.x;
let height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
Tweener.addTween(this, {
_item_size: 1,
time: this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY),
transition: 'easeOutQuad',
onUpdate: function () {
height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
width = this._item_size + 4*this._spacing;
switch (this._settings.get_enum(DOCK_POSITION_KEY)) {
case PositionMode.LEFT:
position_x=monitor.x-2*this._spacing;
break;
case PositionMode.RIGHT:
default:
position_x = monitor.x + (monitor.width-1-this._item_size-2*this._spacing);
}
this.actor.set_position (position_x,monitor.y+(monitor.height-height)/2);
this.actor.set_size(width,height);
},
});
this._hidden = true;
}
function showDock_size () {
let monitor = Main.layoutManager.primaryMonitor;
let height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
let position_x = monitor.x;
let monitor = Main.layoutManager.primaryMonitor;
let height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
let position_x = monitor.x;
Tweener.addTween(this,{
_item_size: dockicon_size,
time: autohide_animation_time,
transition: 'easeOutQuad',
onUpdate: function () {
height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
width = this._item_size + 4*this._spacing;
switch (position) {
case PositionMode.LEFT:
position_x=monitor.x-2*this._spacing;
break;
case PositionMode.RIGHT:
default:
position_x=monitor.x + (monitor.width-this._item_size-2*this._spacing);
}
this.actor.set_position (position_x, monitor.y+(monitor.height-height)/2);
this.actor.set_size(width,height);
}
});
hideDock=false;
}
Tweener.addTween(this, {
_item_size: this._settings.get_int(DOCK_SIZE_KEY),
time: this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY),
transition: 'easeOutQuad',
onUpdate: function () {
height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
width = this._item_size + 4*this._spacing;
switch (this._settings.get_enum(DOCK_POSITION_KEY)) {
case PositionMode.LEFT:
position_x=monitor.x-2*this._spacing;
break;
case PositionMode.RIGHT:
default:
position_x=monitor.x + (monitor.width-this._item_size-2*this._spacing);
}
this.actor.set_position (position_x, monitor.y+(monitor.height-height)/2);
this.actor.set_size(width,height);
}
});
function initShowDock_size () {
this._item_size=1;
this._showDock();
this._hidden = false;
}
function showEffectAddItem_size () {
let primary = Main.layoutManager.primaryMonitor;
let height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
let primary = Main.layoutManager.primaryMonitor;
let height = (this._nicons)*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
Tweener.addTween(this.actor, {
y: primary.y + (primary.height-height)/2,
height: height,
width: width,
time: autohide_animation_time,
transition: 'easeOutQuad'
});
Tweener.addTween(this.actor, {
y: primary.y + (primary.height-height)/2,
height: height,
width: width,
time: this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY),
transition: 'easeOutQuad'
});
}
/**************************************************************************************/
/**** start rescale's Dock functions *****************/
/**************************************************************************************/
function hideDock_scale () {
this._item_size = dockicon_size;
let monitor = Main.layoutManager.primaryMonitor;
let cornerX = 0;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
if (!this._hideable)
return;
switch (position) {
case PositionMode.LEFT:
cornerX=monitor.x;
break;
case PositionMode.RIGHT:
default:
cornerX = monitor.x + monitor.width-1;
}
this._item_size = this._settings.get_int(DOCK_SIZE_KEY);
let monitor = Main.layoutManager.primaryMonitor;
let cornerX = 0;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
if (hideable) {
Tweener.addTween(this.actor,{
y: monitor.y + (monitor.height-height)/2,
x: cornerX,
height:height,
width: width,
scale_x: 0.025,
time: autohide_animation_time,
transition: 'easeOutQuad'
});
hideDock=true;
}
switch (this._settings.get_enum(DOCK_POSITION_KEY)) {
case PositionMode.LEFT:
cornerX=monitor.x;
break;
case PositionMode.RIGHT:
default:
cornerX = monitor.x + monitor.width-1;
}
Tweener.addTween(this.actor,{
y: monitor.y + (monitor.height-height)/2,
x: cornerX,
height:height,
width: width,
scale_x: 0.025,
time: this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY),
transition: 'easeOutQuad'
});
this._hidden = true;
}
function showDock_scale () {
this._item_size = dockicon_size;
let monitor = Main.layoutManager.primaryMonitor;
let position_x = monitor.x;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
this._item_size = this._settings.get_int(DOCK_SIZE_KEY);
let monitor = Main.layoutManager.primaryMonitor;
let position_x = monitor.x;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
switch (position) {
case PositionMode.LEFT:
position_x=monitor.x-2*this._spacing;
break;
case PositionMode.RIGHT:
default:
position_x=monitor.x + (monitor.width-this._item_size-2*this._spacing);
}
Tweener.addTween(this.actor, {
y: monitor.y + (monitor.height-height)/2,
x: monitor.x + position_x,
height: height,
width: width,
scale_x: 1,
time: autohide_animation_time,
transition: 'easeOutQuad'
});
hideDock=false;
}
switch (this._settings.get_enum(DOCK_POSITION_KEY)) {
case PositionMode.LEFT:
position_x=monitor.x-2*this._spacing;
break;
case PositionMode.RIGHT:
default:
position_x=monitor.x + (monitor.width-this._item_size-2*this._spacing);
}
Tweener.addTween(this.actor, {
y: monitor.y + (monitor.height-height)/2,
x: monitor.x + position_x,
height: height,
width: width,
scale_x: 1,
time: this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY),
transition: 'easeOutQuad'
});
function initShowDock_scale () {
let primary = Main.layoutManager.primaryMonitor;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
this.actor.set_scale (0,0);
this.actor.set_size (width,height);
// set the position of the dock
switch (position) {
case PositionMode.LEFT:
this.actor.x = 0;
// effect of creation of the dock
Tweener.addTween(this.actor, {
x: primary.x-2*this._spacing,
y: primary.y + (primary.height-height)/2,
time: autohide_animation_time * 3,
transition: 'easeOutQuad'
});
break;
case PositionMode.RIGHT:
default:
this.actor.x = primary.width-1;
// effect of creation of the dock
Tweener.addTween(this.actor, {
x: primary.x + primary.width-this._item_size- 2*this._spacing,
y: primary.y + (primary.height-height)/2,
time: autohide_animation_time * 3,
transition: 'easeOutQuad'
});
}
Tweener.addTween(this.actor,{
scale_x: 1,
scale_y: 1,
time: autohide_animation_time * 3,
transition: 'easeOutQuad'
});
hideDock=false;
this._hidden = false;
}
function showEffectAddItem_scale () {
let monitor = Main.layoutManager.primaryMonitor;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
let monitor = Main.layoutManager.primaryMonitor;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
Tweener.addTween(this.actor, {
y: monitor.y + (monitor.height-height)/2,
height: height,
width: width,
time: autohide_animation_time,
transition: 'easeOutQuad'
});
Tweener.addTween(this.actor, {
y: monitor.y + (monitor.height-height)/2,
height: height,
width: width,
time: this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY),
transition: 'easeOutQuad'
});
}
/**************************************************************************************/
/**** start move Dock functions *****************/
/**************************************************************************************/
function hideDock_move () {
this._item_size = dockicon_size;
let monitor = Main.layoutManager.primaryMonitor;
let cornerX = 0;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
if (!this._hideable)
return;
switch (position) {
case PositionMode.LEFT:
cornerX= monitor.x - width + this._spacing;
break;
case PositionMode.RIGHT:
default:
cornerX = monitor.x + monitor.width - this._spacing;
}
this._item_size = this._settings.get_int(DOCK_SIZE_KEY);
let monitor = Main.layoutManager.primaryMonitor;
let cornerX = 0;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
if (hideable) {
Tweener.addTween(this.actor,{
x: cornerX,
y: monitor.y + (monitor.height - height)/2,
width: width,
height: height,
time: autohide_animation_time,
transition: 'easeOutQuad'
});
hideDock=true;
}
switch (this._settings.get_enum(DOCK_POSITION_KEY)) {
case PositionMode.LEFT:
cornerX= monitor.x - width + this._spacing;
break;
case PositionMode.RIGHT:
default:
cornerX = monitor.x + monitor.width - this._spacing;
}
Tweener.addTween(this.actor,{
x: cornerX,
y: monitor.y + (monitor.height - height)/2,
width: width,
height: height,
time: this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY),
transition: 'easeOutQuad'
});
this._hidden = true;
}
function showDock_move () {
this._item_size = dockicon_size;
let monitor = Main.layoutManager.primaryMonitor;
let position_x = monitor.x;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
this._item_size = this._settings.get_int(DOCK_SIZE_KEY);
let monitor = Main.layoutManager.primaryMonitor;
let position_x = monitor.x;
let height = this._nicons*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
switch (position) {
case PositionMode.LEFT:
position_x=monitor.x - 2*this._spacing;
break;
case PositionMode.RIGHT:
default:
position_x=monitor.x + (monitor.width-this._item_size-2*this._spacing);
}
Tweener.addTween(this.actor, {
x: position_x,
y: monitor.y + (monitor.height - height)/2,
width: width,
height: height,
time: autohide_animation_time,
transition: 'easeOutQuad'
});
hideDock=false;
}
switch (this._settings.get_enum(DOCK_POSITION_KEY)) {
case PositionMode.LEFT:
position_x=monitor.x - 2*this._spacing;
break;
case PositionMode.RIGHT:
default:
position_x=monitor.x + (monitor.width-this._item_size-2*this._spacing);
}
Tweener.addTween(this.actor, {
x: position_x,
y: monitor.y + (monitor.height - height)/2,
width: width,
height: height,
time: this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY),
transition: 'easeOutQuad'
});
function initShowDock_move () {
this._showDock();
this._hidden = false;
}
function showEffectAddItem_move () {
@@ -323,16 +275,14 @@ function showEffectAddItem_move () {
y: monitor.y + (monitor.height-height)/2,
height: height,
width: width,
time: autohide_animation_time,
time: this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY),
transition: 'easeOutQuad'
});
}
function Dock() {
this._init();
}
const Dock = new Lang.Class({
Name: 'Dock.Dock',
Dock.prototype = {
_init : function() {
this._placeholderText = null;
this._menus = [];
@@ -341,20 +291,14 @@ Dock.prototype = {
this._favorites = [];
// Load Settings
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);
hideEffect = this._settings.get_enum(DOCK_EFFECTHIDE_KEY);
autohide_animation_time = this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY);
//global.log("POSITION: " + position);
//global.log("dockicon_size: " + dockicon_size);
this._settings = Convenience.getSettings();
this._hidden = false;
this._hideable = this._settings.get_boolean(DOCK_HIDE_KEY);
this._spacing = 4;
this._item_size = dockicon_size;
this._item_size = this._settings.get_int(DOCK_SIZE_KEY);
this._nicons = 0;
this._selectFunctionsHide ();
this._selectEffectFunctions(this._settings.get_enum(DOCK_EFFECTHIDE_KEY));
this.actor = new St.BoxLayout({ name: 'dock', vertical: true, reactive: true });
@@ -385,58 +329,45 @@ Dock.prototype = {
{ affectsStruts: !this._settings.get_boolean(DOCK_HIDE_KEY) });
//hidden
this._settings.connect('changed::'+DOCK_POSITION_KEY, Lang.bind(this, function (){
let primary = Main.layoutManager.primaryMonitor;
position = this._settings.get_enum(DOCK_POSITION_KEY);
this.actor.y=primary.y;
this._redisplay();
}));
this._settings.connect('changed::'+DOCK_SIZE_KEY, Lang.bind(this, function (){
dockicon_size = this._settings.get_int(DOCK_SIZE_KEY);
this._redisplay();
}));
this._settings.connect('changed::'+DOCK_POSITION_KEY, Lang.bind(this, this._redisplay));
this._settings.connect('changed::'+DOCK_SIZE_KEY, Lang.bind(this, this._redisplay));
this._settings.connect('changed::'+DOCK_HIDE_KEY, Lang.bind(this, function (){
Main.layoutManager.removeChrome(this.actor);
Main.layoutManager.addChrome(this.actor,
{ affectsStruts: !this._settings.get_boolean(DOCK_HIDE_KEY) });
hideable = this._settings.get_boolean(DOCK_HIDE_KEY);
if (hideable){
hideDock=false;
this._hideable = this._settings.get_boolean(DOCK_HIDE_KEY);
if (this._hideable)
this._hideDock();
} else {
hideDock=true;
else
this._showDock();
}
}));
this._settings.connect('changed::'+DOCK_EFFECTHIDE_KEY, Lang.bind(this, function () {
hideEffect = this._settings.get_enum(DOCK_EFFECTHIDE_KEY);
this._settings.connect('changed::' + DOCK_EFFECTHIDE_KEY, Lang.bind(this, function () {
let hideEffect = this._settings.get_enum(DOCK_EFFECTHIDE_KEY);
switch (hideEffect) {
case AutoHideEffect.RESCALE:
this._item_size=dockicon_size;
break;
case AutoHideEffect.RESIZE:
this.actor.set_scale (1,1);
break;
case AutoHideEffect.MOVE:
;
}
this.actor.disconnect(this._leave_event);
this.actor.disconnect(this._enter_event);
// restore the effects of the other functions
switch (hideEffect) {
case AutoHideEffect.RESCALE:
this._item_size = this._settings.get_int(DOCK_SIZE_KEY);
break;
case AutoHideEffect.RESIZE:
this.actor.set_scale(1, 1);
break;
case AutoHideEffect.MOVE:
this.actor.set_scale(1, 1);
this._item_size = this._settings.get_int(DOCK_SIZE_KEY);
}
this._selectFunctionsHide ();
this.actor.disconnect(this._leave_event);
this.actor.disconnect(this._enter_event);
this._leave_event = this.actor.connect('leave-event', Lang.bind(this, this._hideDock));
this._enter_event = this.actor.connect('enter-event', Lang.bind(this, this._showDock));
this._redisplay();
}));
this._selectEffectFunctions(hideEffect);
this._settings.connect('changed::'+DOCK_AUTOHIDE_ANIMATION_TIME_KEY, Lang.bind(this,function (){
autohide_animation_time = this._settings.get_double(DOCK_AUTOHIDE_ANIMATION_TIME_KEY);
this._leave_event = this.actor.connect('leave-event', Lang.bind(this, this._hideDock));
this._enter_event = this.actor.connect('enter-event', Lang.bind(this, this._showDock));
this._redisplay();
}));
this._leave_event = this.actor.connect('leave-event', Lang.bind(this, this._hideDock));
@@ -481,33 +412,30 @@ Dock.prototype = {
},
// fuctions hide
_restoreHideDock: function(){
hideable = this._settings.get_boolean(DOCK_HIDE_KEY);
_restoreHideDock: function() {
this._hideable = this._settings.get_boolean(DOCK_HIDE_KEY);
},
_disableHideDock: function (){
hideable = false;
_disableHideDock: function() {
this._hideable = false;
},
_selectFunctionsHide: function () {
_selectEffectFunctions: function(hideEffect) {
switch (hideEffect) {
case AutoHideEffect.RESCALE:
this._hideDock = hideDock_scale;
this._showDock = showDock_scale;
this._initShowDock = initShowDock_scale;
this._showEffectAddItem = showEffectAddItem_scale;
break;
case AutoHideEffect.MOVE:
this._hideDock = hideDock_move;
this._showDock = showDock_move;
this._initShowDock = initShowDock_move;
this._showEffectAddItem = showEffectAddItem_move;
break;
case AutoHideEffect.RESIZE:
default:
this._hideDock = hideDock_size;
this._showDock = showDock_size;
this._initShowDock = initShowDock_size;
this._showEffectAddItem = showEffectAddItem_size;
}
},
@@ -566,21 +494,16 @@ Dock.prototype = {
let height = (icons)*(this._item_size + this._spacing) + 2*this._spacing;
let width = this._item_size + 4*this._spacing;
if (this.actor.y != primary.y) {
if (hideable && hideDock) {
this._hideDock();
} else {
if (dockicon_size == this._item_size) {
// only add/delete icon
this._showEffectAddItem ();
} else {
// change size icon
this._showDock ();
}
}
if (this._hideable && this._hidden) {
this._hideDock();
} else {
// effect of creation
this._initShowDock ();
if (this._settings.get_int(DOCK_SIZE_KEY) == this._item_size) {
// only add/delete icon
this._showEffectAddItem ();
} else {
// change size icon
this._showDock ();
}
}
},
@@ -602,7 +525,7 @@ Dock.prototype = {
let children = this._grid.get_children();
let x = box.x1 + this._spacing;
if (position == PositionMode.LEFT)
if (this._settings.get_enum(DOCK_POSITION_KEY) == PositionMode.LEFT)
x = box.x1 + 2*this._spacing;
let y = box.y1 + this._spacing;
@@ -638,15 +561,17 @@ Dock.prototype = {
addItem: function(actor) {
this._grid.add_actor(actor);
}
};
});
Signals.addSignalMethods(Dock.prototype);
function DockIcon(app, dock) {
this._init(app, dock);
}
const DockIcon = new Lang.Class({
Name: 'Dock.DockIcon',
DockIcon.prototype = {
_init : function(app, dock) {
this._dock = dock;
this._settings = dock._settings;
this.app = app;
this.actor = new St.Button({ style_class: 'app-well-app',
button_mask: St.ButtonMask.ONE | St.ButtonMask.TWO,
@@ -654,12 +579,11 @@ DockIcon.prototype = {
x_fill: true,
y_fill: true });
this.actor._delegate = this;
//this.actor.set_size(dockicon_size, dockicon_size);
this._icon = new AppDisplay.AppIcon(app, { setSizeManually: true,
showLabel: false });
this.actor.set_child(this._icon.actor);
this._icon.setIconSize(dockicon_size);
this._icon.setIconSize(this._settings.get_int(DOCK_SIZE_KEY));
this.actor.connect('clicked', Lang.bind(this, this._onClicked));
@@ -679,7 +603,6 @@ DockIcon.prototype = {
this._stateChangedId = this.app.connect('notify::state',
Lang.bind(this, this._onStateChanged));
this._onStateChanged();
this._dock=dock;
},
_onDestroy: function() {
@@ -775,7 +698,8 @@ DockIcon.prototype = {
this._menuManager.addMenu(this._menu, true);
}
this._menu.popup();
this._menu.redisplay();
this._menu.open();
return false;
},
@@ -828,30 +752,25 @@ DockIcon.prototype = {
}
}
Main.overview.hide();
},
shellWorkspaceLaunch : function() {
this.app.open_new_window();
}
};
});
Signals.addSignalMethods(DockIcon.prototype);
function DockIconMenu(source) {
this._init(source);
}
DockIconMenu.prototype = {
__proto__: AppDisplay.AppIconMenu.prototype,
const DockIconMenu = new Lang.Class({
Name: 'Dock.DockIconMenu',
Extends: PopupMenu.PopupMenu,
_init: function(source) {
switch (position) {
case PositionMode.LEFT:
PopupMenu.PopupMenu.prototype._init.call(this, source.actor, St.Align.MIDDLE, St.Side.LEFT, 0);
break;
case PositionMode.RIGHT:
default:
PopupMenu.PopupMenu.prototype._init.call(this, source.actor, St.Align.MIDDLE, St.Side.RIGHT, 0);
let side;
switch (source._settings.get_enum(DOCK_POSITION_KEY)) {
case PositionMode.LEFT:
side = St.Side.LEFT;
break;
case PositionMode.RIGHT:
default:
side = St.Side.RIGHT;
}
this.parent(source.actor, 0.5, side);
this._source = source;
@@ -864,12 +783,12 @@ DockIconMenu.prototype = {
if (!source.actor.mapped)
this.close();
}));
source.actor.connect('destroy', Lang.bind(this, function () { this.actor.destroy(); }));
source.actor.connect('destroy', Lang.bind(this, function () { this.destroy(); }));
Main.layoutManager.addChrome(this.actor);
},
_redisplay: function() {
redisplay: function() {
this.removeAll();
let windows = this._source.app.get_windows();
@@ -906,6 +825,23 @@ DockIconMenu.prototype = {
this._highlightedItem = null;
},
_appendSeparator: function () {
let separator = new PopupMenu.PopupSeparatorMenuItem();
this.addMenuItem(separator);
},
_appendMenuItem: function(labelText) {
// FIXME: app-well-menu-item style
let item = new PopupMenu.PopupMenuItem(labelText);
this.addMenuItem(item);
return item;
},
popup: function(activatingButton) {
this._redisplay();
this.open();
},
_onActivate: function (actor, child) {
if (child._window) {
let metaWindow = child._window;
@@ -926,12 +862,10 @@ DockIconMenu.prototype = {
}
this.close();
}
}
});
function init(metadata) {
_metadata = metadata;
_me = imports.ui.extensionSystem.extensions[metadata.uuid];
_me.convenience.initTranslations(metadata);
function init() {
Convenience.initTranslations();
}
let dock;

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"name": "Dock",
"description": "A dock for the GNOME Shell -- displays favorite and running applications",
"original-author": "tclaesson@gmail.com",

View File

@@ -12,15 +12,16 @@ const Panel = imports.ui.panel;
const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
function DriveMenuItem(place) {
this._init(place);
}
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
DriveMenuItem.prototype = {
__proto__: PopupMenu.PopupBaseMenuItem.prototype,
const DriveMenuItem = new Lang.Class({
Name: 'DriveMenu.DriveMenuItem',
Extends: PopupMenu.PopupBaseMenuItem,
_init: function(place) {
PopupMenu.PopupBaseMenuItem.prototype._init.call(this);
this.parent();
this.place = place;
@@ -42,23 +43,19 @@ DriveMenuItem.prototype = {
activate: function(event) {
this.place.launch({ timestamp: event.get_time() });
PopupMenu.PopupBaseMenuItem.prototype.activate.call(this, event);
this.parent(event);
}
};
});
function DriveMenu() {
this._init();
}
DriveMenu.prototype = {
__proto__: PanelMenu.SystemStatusButton.prototype,
const DriveMenu = new Lang.Class({
Name: 'DriveMenu.DriveMenu',
Extends: PanelMenu.SystemStatusButton,
_init: function() {
// is 'media-eject' better?
PanelMenu.SystemStatusButton.prototype._init.call(this, 'media-eject');
this.parent('media-eject');
this._manager = Main.placesManager;
this._manager.connect('mounts-updated', Lang.bind(this, this._update));
this._updatedId = this._manager.connect('mounts-updated', Lang.bind(this, this._update));
this._contentSection = new PopupMenu.PopupMenuSection();
this.menu.addMenuItem(this._contentSection);
@@ -87,12 +84,16 @@ DriveMenu.prototype = {
this.actor.visible = any;
},
}
// Put your extension initialization code here
function init(metadata) {
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
me.convenience.initTranslations(metadata);
destroy: function() {
this._manager.disconnect(this._updatedId);
this.parent();
},
});
function init() {
Convenience.initTranslations();
}
let _indicator;

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"name": "Removable Drive Menu",
"description": "A status menu for accessing and unmounting removable devices",
"shell-version": [ "@shell_current@" ],

View File

@@ -1,3 +1,6 @@
EXTENSION_ID = example
EXTRA_MODULES = prefs.js
include ../../extension.mk
include ../../settings.mk

View File

@@ -1,3 +1,4 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
// Sample extension code, makes clicking on the panel show a message
const St = imports.gi.St;
const Mainloop = imports.mainloop;
@@ -7,20 +8,26 @@ const _ = Gettext.gettext;
const Main = imports.ui.main;
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
function _showHello() {
let text = new St.Label({ style_class: 'helloworld-label', text: _("Hello, world!") });
let settings = Convenience.getSettings();
let text = settings.get_string('hello-text') || _("Hello, world!");
let label = new St.Label({ style_class: 'helloworld-label', text: text });
let monitor = Main.layoutManager.primaryMonitor;
global.stage.add_actor(text);
text.set_position(Math.floor (monitor.width / 2 - text.width / 2), Math.floor(monitor.height / 2 - text.height / 2));
Mainloop.timeout_add(3000, function () { text.destroy(); });
global.stage.add_actor(label);
label.set_position(Math.floor (monitor.width / 2 - label.width / 2), Math.floor(monitor.height / 2 - label.height / 2));
Mainloop.timeout_add(3000, function () { label.destroy(); });
}
// Put your extension initialization code here
function init(metadata) {
log ('Example extension initalized');
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
me.convenience.initTranslations(metadata);
Convenience.initTranslations();
}
let signalId;

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"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@" ],

View File

@@ -0,0 +1,9 @@
<schemalist gettext-domain="gnome-shell-extensions">
<schema id="org.gnome.shell.extensions.example" path="/org/gnome/shell/extensions/example/">
<key name="hello-text" type="s">
<default>''</default>
<_summary>Alternative greeting text.</_summary>
<_description>If not empty, it contains the text that will be shown when clicking on the panel.</_description>
</key>
</schema>
</schemalist>

View File

@@ -0,0 +1,52 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
const GLib = imports.gi.GLib;
const GObject = imports.gi.GObject;
const Gio = imports.gi.Gio;
const Gtk = imports.gi.Gtk;
const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
function init() {
Convenience.initTranslations();
}
const ExamplePrefsWidget = new GObject.Class({
Name: 'Example.Prefs.Widget',
GTypeName: 'ExamplePrefsWidget',
Extends: Gtk.Grid,
_init: function(params) {
this.parent(params);
this.margin = this.row_spacing = this.column_spacing = 10;
// TRANSLATORS: Example is the name of the extension, should not be
// translated
let primaryText = _("Example aims to show how to build well behaved \
extensions for the Shell and as such it has little functionality on its own.\n\
Nevertheless it's possible to customize the greeting message.");
this.attach(new Gtk.Label({ label: primaryText, wrap: true }), 0, 0, 2, 1);
this.attach(new Gtk.Label({ label: '<b>' + _("Message:") + '</b>', use_markup: true }),
0, 1, 1, 1);
let entry = new Gtk.Entry({ hexpand: true });
this.attach(entry, 1, 1, 1, 1);
this._settings = Convenience.getSettings();
this._settings.bind('hello-text', entry, 'text', Gio.SettingsBindFlags.DEFAULT);
}
});
function buildPrefsWidget() {
let widget = new ExamplePrefsWidget();
widget.show_all();
return widget;
}

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"name": "Gajim IM integration",
"description": "Display Gajim incoming chats as notifications in the Shell message tray.",
"shell-version": [ "@shell_current@" ],

View File

@@ -1,14 +1,5 @@
EXTENSION_ID = native-window-placement
include ../../extension.mk
include ../../settings.mk
gschemas_in = $(gschemabase).native-window-placement.gschema.xml.in
@INTLTOOL_XML_NOMERGE_RULE@
gsettings_SCHEMAS = $(gschemas_in:.xml.in=.xml)
@GSETTINGS_RULES@
CLEANFILES += $(gschemas_in:.xml.in=.valid) $(gsettings_SCHEMAS)
EXTRA_DIST += $(gschemas_in)

View File

@@ -20,7 +20,9 @@ const Tweener = imports.ui.tweener;
const Workspace = imports.ui.workspace;
const WindowPositionFlags = Workspace.WindowPositionFlags;
let _me, _metadata;
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
// testing settings for natural window placement strategy:
const WINDOW_PLACEMENT_NATURAL_FILLGAPS = true; // enlarge windows at the end to fill gaps // not implemented yet
@@ -46,15 +48,16 @@ function injectToFunction(parent, name, func) {
}
const WORKSPACE_BORDER_GAP = 10; // gap between the workspace area and the workspace selector
function Rect(x, y, width, height) {
[this.x, this.y, this.width, this.height] = arguments;
}
const Rect = new Lang.Class({
Name: 'NativeWindowPlacement.Rect',
_init: function(x, y, width, height) {
[this.x, this.y, this.width, this.height] = [x, y, width, height];
},
Rect.prototype = {
/**
* used in _calculateWindowTransformationsNatural to replace Meta.Rectangle that is too slow.
*/
copy: function() {
return new Rect(this.x, this.y, this.width, this.height);
},
@@ -103,7 +106,7 @@ Rect.prototype = {
this.x += dx;
this.y += dy;
}
};
});
let winInjections, workspaceInjections, connectedSignals;
@@ -116,7 +119,7 @@ function resetState() {
function enable() {
resetState();
let settings = _me.convenience.getSettings(_metadata, 'native-window-placement');
let settings = Convenience.getSettings();
let useMoreScreen = settings.get_boolean('use-more-screen');
signalId = settings.connect('changed::use-more-screen', function() {
useMoreScreen = settings.get_boolean('use-more-screen');
@@ -501,7 +504,6 @@ function disable() {
resetState();
}
function init(metadata) {
_metadata = metadata;
_me = imports.ui.extensionSystem.extensions[metadata.uuid];
function init() {
/* do nothing */
}

View File

@@ -1,5 +1,8 @@
{
"uuid": "@uuid@",
"extension-id": "@extension_id@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"name": "Native Window Placement",
"description": "Arrange windows in overview in a more native way",
"shell-version": [ "@shell_current@" ],

View File

@@ -14,17 +14,18 @@ const Panel = imports.ui.panel;
const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
const PLACE_ICON_SIZE = 22;
function PlacesMenu() {
this._init.apply(this, arguments);
}
PlacesMenu.prototype = {
__proto__: PanelMenu.SystemStatusButton.prototype,
const PlacesMenu = new Lang.Class({
Name: 'PlacesMenu.PlacesMenu',
Extends: PanelMenu.SystemStatusButton,
_init: function() {
PanelMenu.SystemStatusButton.prototype._init.call(this, 'folder');
this.parent('folder');
this.defaultItems = [];
this.bookmarkItems = [];
@@ -36,8 +37,16 @@ PlacesMenu.prototype = {
this._devicesMenuItem = new PopupMenu.PopupSubMenuMenuItem(_("Removable Devices"));
this.menu.addMenuItem(this._devicesMenuItem);
this._createDevices();
Main.placesManager.connect('bookmarks-updated',Lang.bind(this,this._redisplayBookmarks));
Main.placesManager.connect('mounts-updated',Lang.bind(this,this._redisplayDevices));
this._bookmarksId = Main.placesManager.connect('bookmarks-updated',Lang.bind(this,this._redisplayBookmarks));
this._mountsId = Main.placesManager.connect('mounts-updated',Lang.bind(this,this._redisplayDevices));
},
destroy: function() {
Main.placesManager.disconnect(this._bookmarksId);
Main.placesManager.disconnect(this._mountsId);
this.parent();
},
_redisplayBookmarks: function(){
@@ -108,14 +117,12 @@ PlacesMenu.prototype = {
_clearDevices : function(){
this._devicesMenuItem.menu.removeAll();
this.DeviceItems = [];
this.deviceItems = [];
},
};
});
function init(metadata) {
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
me.convenience.initTranslations(metadata);
function init() {
Convenience.initTranslations();
}
let _indicator;

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"name": "Places Status Indicator",
"description": "Add a systems status menu for quickly navigating places in the system",
"shell-version": [ "@shell_current@" ],

View File

@@ -16,11 +16,9 @@ let _cpuIndicator;
let _memIndicator;
let _box;
function Indicator() {
this._init();
}
const Indicator = new Lang.Class({
Name: 'SystemMonitor.Indicator',
Indicator.prototype = {
_init: function() {
this._initValues();
this.drawing_area = new St.DrawingArea({ reactive: true });
@@ -44,6 +42,7 @@ Indicator.prototype = {
destroy: function() {
Mainloop.source_remove(this._timeout);
this.actor.destroy();
},
@@ -131,20 +130,16 @@ Indicator.prototype = {
cr.setDash([], 0);
cr.stroke();
}
}
});
};
function CpuIndicator() {
this._init();
}
CpuIndicator.prototype = {
__proto__: Indicator.prototype,
const CpuIndicator = new Lang.Class({
Name: 'SystemMonitor.CpuIndicator',
Extends: Indicator,
_init: function() {
Indicator.prototype._init.call(this);
this.parent();
this.gridColor = '-grid-color';
this.renderStats = [ 'cpu-user', 'cpu-sys', 'cpu-iowait' ];
@@ -187,17 +182,15 @@ CpuIndicator.prototype = {
this._prev = cpu;
}
};
});
function MemoryIndicator() {
this._init();
}
MemoryIndicator.prototype = {
__proto__: Indicator.prototype,
const MemoryIndicator = new Lang.Class({
Name: 'SystemMonitor.MemoryIndicator',
Extends: Indicator,
_init: function() {
Indicator.prototype._init.call(this);
this.parent();
this.gridColor = '-grid-color';
this.renderStats = [ 'mem-user', 'mem-other', 'mem-cached' ];
@@ -227,7 +220,7 @@ MemoryIndicator.prototype = {
t += this.mem.cached / this.mem.total;
this.stats['mem-cached'].values.push(t);
}
};
});
function init() {
// nothing to do here

View File

@@ -1,6 +1,9 @@
{
"shell-version": ["@shell_current@" ],
"uuid": "@uuid@",
"extension-id": "@extension_id@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"original-author": "zaspire@rambler.ru",
"name": "SystemMonitor",
"description": "System Monitor",

View File

@@ -1,14 +1,5 @@
EXTENSION_ID = user-theme
include ../../extension.mk
include ../../settings.mk
gschemas_in = $(gschemabase).user-theme.gschema.xml.in
@INTLTOOL_XML_NOMERGE_RULE@
gsettings_SCHEMAS = $(gschemas_in:.xml.in=.xml)
@GSETTINGS_RULES@
CLEANFILES += $(gschemas_in:.xml.in=.valid) $(gsettings_SCHEMAS)
EXTRA_DIST += $(gschemas_in)

View File

@@ -6,17 +6,17 @@ const Gio = imports.gi.Gio;
const Lang = imports.lang;
const Main = imports.ui.main;
const SETTINGS_SCHEMA = 'org.gnome.shell.extensions.user-theme';
const SETTINGS_KEY = 'name';
function ThemeManager() {
this._init.apply(this, arguments);
}
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
ThemeManager.prototype = {
_init: function(metadata) {
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
this._settings = me.convenience.getSettings(metadata, 'user-theme');
const ThemeManager = new Lang.Class({
Name: 'UserTheme.ThemeManager',
_init: function() {
this._settings = Convenience.getSettings();
},
enable: function() {
@@ -63,9 +63,8 @@ ThemeManager.prototype = {
Main.setThemeStylesheet(_stylesheet);
Main.loadTheme();
}
}
});
function init(metadata) {
return new ThemeManager(metadata);
function init() {
return new ThemeManager();
}

View File

@@ -1,5 +1,8 @@
{
"uuid": "@uuid@",
"extension-id": "@extension_id@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"name": "User Themes",
"description": "Load shell themes from user directory",
"shell-version": [ "@shell_current@" ],

View File

@@ -1,6 +1,9 @@
{
"shell-version": ["@shell_current@" ],
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"original-author": "zaspire@rambler.ru",
"name": "windowNavigator",
"description": "Allow keyboard selection of windows and workspaces in overlay mode",

View File

@@ -1,3 +1,5 @@
EXTENSION_ID = workspace-indicator
EXTRA_MODULES = prefs.js
include ../../extension.mk

View File

@@ -1,3 +1,6 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
const Gio = imports.gi.Gio;
const Meta = imports.gi.Meta;
const Clutter = imports.gi.Clutter;
const St = imports.gi.St;
@@ -7,103 +10,126 @@ const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const Panel = imports.ui.panel;
const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const Main = imports.ui.main;
function WorkspaceIndicator() {
this._init.apply(this, arguments);
}
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
WorkspaceIndicator.prototype = {
__proto__: PanelMenu.SystemStatusButton.prototype,
const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences';
const WORKSPACE_KEY = 'workspace-names';
_init: function(){
PanelMenu.SystemStatusButton.prototype._init.call(this, 'folder');
const WorkspaceIndicator = new Lang.Class({
Name: 'WorkspaceIndicator.WorkspaceIndicator',
Extends: PanelMenu.Button,
this._currentWorkspace = global.screen.get_active_workspace().index();
this.statusLabel = new St.Label({ text: this._labelText() });
_init: function(){
this.parent(0.0, _("Workspace Indicator"));
// destroy all previously created children, and add our statusLabel
this.actor.get_children().forEach(function(c) { c.destroy() });
this.actor.add_actor(this.statusLabel);
this._currentWorkspace = global.screen.get_active_workspace().index();
this.statusLabel = new St.Label({ text: this._labelText() });
this.workspacesItems = [];
this._workspaceSection = new PopupMenu.PopupMenuSection();
this.menu.addMenuItem(this._workspaceSection);
global.screen.connect_after('workspace-added', Lang.bind(this,this._createWorkspacesSection));
global.screen.connect_after('workspace-removed', Lang.bind(this,this._createWorkspacesSection));
global.screen.connect_after('workspace-switched', Lang.bind(this,this._updateIndicator));
this.actor.connect('scroll-event', Lang.bind(this, this._onScrollEvent));
this._createWorkspacesSection();
this.actor.add_actor(this.statusLabel);
//styling
this.menu.actor.add_style_class_name('workspace-indicator-shorter');
this.statusLabel.add_style_class_name('panel-workspace-indicator');
},
this.workspacesItems = [];
this._workspaceSection = new PopupMenu.PopupMenuSection();
this.menu.addMenuItem(this._workspaceSection);
_updateIndicator: function() {
this.workspacesItems[this._currentWorkspace].setShowDot(false);
this._currentWorkspace = global.screen.get_active_workspace().index();
this.workspacesItems[this._currentWorkspace].setShowDot(true);
this._screenSignals = [];
this._screenSignals.push(global.screen.connect_after('workspace-added', Lang.bind(this,this._createWorkspacesSection)));
this._screenSignals.push(global.screen.connect_after('workspace-removed', Lang.bind(this,this._createWorkspacesSection)));
this._screenSignals.push(global.screen.connect_after('workspace-switched', Lang.bind(this,this._updateIndicator)));
this.statusLabel.set_text(this._labelText());
},
this.actor.connect('scroll-event', Lang.bind(this, this._onScrollEvent));
this._createWorkspacesSection();
_labelText : function(workspaceIndex) {
if(workspaceIndex == undefined) {
workspaceIndex = this._currentWorkspace;
return (workspaceIndex + 1).toString();
}
return Meta.prefs_get_workspace_name(workspaceIndex);
},
//styling
this.menu.actor.add_style_class_name('workspace-indicator-shorter');
this.statusLabel.add_style_class_name('panel-workspace-indicator');
_createWorkspacesSection : function() {
this._workspaceSection.removeAll();
this.workspacesItems = [];
this._currentWorkspace = global.screen.get_active_workspace().index();
this._settings = new Gio.Settings({ schema: WORKSPACE_SCHEMA });
this._settingsChangedId = this._settings.connect('changed::' + WORKSPACE_KEY, Lang.bind(this, this._createWorkspacesSection));
},
let i = 0;
for(; i < global.screen.n_workspaces; i++) {
this.workspacesItems[i] = new PopupMenu.PopupMenuItem(this._labelText(i));
this._workspaceSection.addMenuItem(this.workspacesItems[i]);
this.workspacesItems[i].workspaceId = i;
this.workspacesItems[i].label_actor = this.statusLabel;
let self = this;
this.workspacesItems[i].connect('activate', Lang.bind(this, function(actor, event) {
this._activate(actor.workspaceId);
}));
destroy: function() {
for (let i = 0; i < this._screenSignals.length; i++)
global.screen.disconnect(this._screenSignals[i]);
if (i == this._currentWorkspace)
this.workspacesItems[i].setShowDot(true);
}
if (this._settingsChangedId) {
this._settings.disconnect(this._settingsChangedId);
this._settingsChangedId = 0;
}
this.statusLabel.set_text(this._labelText());
},
this.parent();
},
_activate : function (index) {
if(index >= 0 && index < global.screen.n_workspaces) {
let metaWorkspace = global.screen.get_workspace_by_index(index);
metaWorkspace.activate(true);
}
},
_updateIndicator: function() {
this.workspacesItems[this._currentWorkspace].setShowDot(false);
this._currentWorkspace = global.screen.get_active_workspace().index();
this.workspacesItems[this._currentWorkspace].setShowDot(true);
_onScrollEvent : function(actor, event) {
let direction = event.get_scroll_direction();
let diff = 0;
if (direction == Clutter.ScrollDirection.DOWN) {
diff = 1;
} else if (direction == Clutter.ScrollDirection.UP) {
diff = -1;
} else {
return;
}
this.statusLabel.set_text(this._labelText());
},
let newIndex = global.screen.get_active_workspace().index() + diff;
this._activate(newIndex);
},
}
_labelText : function(workspaceIndex) {
if(workspaceIndex == undefined) {
workspaceIndex = this._currentWorkspace;
return (workspaceIndex + 1).toString();
}
return Meta.prefs_get_workspace_name(workspaceIndex);
},
_createWorkspacesSection : function() {
this._workspaceSection.removeAll();
this.workspacesItems = [];
this._currentWorkspace = global.screen.get_active_workspace().index();
let i = 0;
for(; i < global.screen.n_workspaces; i++) {
this.workspacesItems[i] = new PopupMenu.PopupMenuItem(this._labelText(i));
this._workspaceSection.addMenuItem(this.workspacesItems[i]);
this.workspacesItems[i].workspaceId = i;
this.workspacesItems[i].label_actor = this.statusLabel;
let self = this;
this.workspacesItems[i].connect('activate', Lang.bind(this, function(actor, event) {
this._activate(actor.workspaceId);
}));
if (i == this._currentWorkspace)
this.workspacesItems[i].setShowDot(true);
}
this.statusLabel.set_text(this._labelText());
},
_activate : function (index) {
if(index >= 0 && index < global.screen.n_workspaces) {
let metaWorkspace = global.screen.get_workspace_by_index(index);
metaWorkspace.activate(global.get_current_time());
}
},
_onScrollEvent : function(actor, event) {
let direction = event.get_scroll_direction();
let diff = 0;
if (direction == Clutter.ScrollDirection.DOWN) {
diff = 1;
} else if (direction == Clutter.ScrollDirection.UP) {
diff = -1;
} else {
return;
}
let newIndex = global.screen.get_active_workspace().index() + diff;
this._activate(newIndex);
},
});
function init(meta) {
// empty
Convenience.initTranslations();
}
let _indicator;

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"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@" ],

View File

@@ -0,0 +1,217 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const GObject = imports.gi.GObject;
const Gtk = imports.gi.Gtk;
const Lang = imports.lang;
const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const N_ = function(e) { return e };
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences';
const WORKSPACE_KEY = 'workspace-names';
const WorkspaceNameModel = new GObject.Class({
Name: 'WorkspaceIndicator.WorkspaceNameModel',
GTypeName: 'WorkspaceNameModel',
Extends: Gtk.ListStore,
Columns: {
LABEL: 0,
},
_init: function(params) {
this.parent(params);
this.set_column_types([GObject.TYPE_STRING]);
this._settings = new Gio.Settings({ schema: WORKSPACE_SCHEMA });
//this._settings.connect('changed::workspace-names', Lang.bind(this, this._reloadFromSettings));
this._reloadFromSettings();
// overriding class closure doesn't work, because GtkTreeModel
// plays tricks with marshallers and class closures
this.connect('row-changed', Lang.bind(this, this._onRowChanged));
this.connect('row-inserted', Lang.bind(this, this._onRowInserted));
this.connect('row-deleted', Lang.bind(this, this._onRowDeleted));
},
_reloadFromSettings: function() {
if (this._preventChanges)
return;
this._preventChanges = true;
print('reloading from settings');
let newNames = this._settings.get_strv(WORKSPACE_KEY);
let i = 0;
let [ok, iter] = this.get_iter_first();
while (ok && i < newNames.length) {
this.set(iter, [this.Columns.LABEL], [newNames[i]]);
ok = this.iter_next(iter);
i++;
}
while (ok)
ok = this.remove(iter);
for ( ; i < newNames.length; i++) {
iter = this.append();
this.set(iter, [this.Columns.LABEL], [newNames[i]]);
}
printerr('three');
this._preventChanges = false;
},
_onRowChanged: function(self, path, iter) {
if (this._preventChanges)
return;
this._preventChanges = true;
print('on_row_changed: ' + path.to_string());
let index = path.get_indices()[0];
let names = this._settings.get_strv(WORKSPACE_KEY);
if (index >= names.length) {
// fill with blanks
for (let i = names.length; i <= index; i++)
names[i] = '';
}
names[index] = this.get_value(iter, this.Columns.LABEL);
this._settings.set_strv(WORKSPACE_KEY, names);
this._preventChanges = false;
},
_onRowInserted: function(self, path, iter) {
if (this._preventChanges)
return;
this._preventChanges = true;
print('on_row_inserted: ' + path.to_string());
let index = path.get_indices()[0];
let names = this._settings.get_strv(WORKSPACE_KEY);
let label = this.get_value(iter, this.Columns.LABEL) || '';
names.splice(index, 0, label);
this._settings.set_strv(WORKSPACE_KEY, names);
this._preventChanges = false;
},
_onRowDeleted: function(self, path) {
if (this._preventChanges)
return;
this._preventChanges = true;
print('on_row_deleted: ' + path.to_string());
let index = path.get_indices()[0];
let names = this._settings.get_strv(WORKSPACE_KEY);
if (index >= names.length)
return;
names.splice(index, 1);
// compact the array
for (let i = names.length -1; i >= 0 && !names[i]; i++)
names.pop();
this._settings.set_strv(WORKSPACE_KEY, names);
this._preventChanges = false;
},
});
const WorkspaceSettingsWidget = new GObject.Class({
Name: 'WorkspaceIndicator.WorkspaceSettingsWidget',
GTypeName: 'WorkspaceSettingsWidget',
Extends: Gtk.Grid,
_init: function(params) {
this.parent(params);
this.margin = 10;
this.orientation = Gtk.Orientation.VERTICAL;
this.add(new Gtk.Label({ label: _("Workspace names:"),
margin_bottom: 5 }));
this._store = new WorkspaceNameModel();
this._treeView = new Gtk.TreeView({ model: this._store,
headers_visible: false,
reorderable: true,
hexpand: true,
vexpand: true
});
let column = new Gtk.TreeViewColumn({ title: _("Name") });
let renderer = new Gtk.CellRendererText({ editable: true });
renderer.connect('edited', Lang.bind(this, this._cellEdited));
column.pack_start(renderer, true);
column.add_attribute(renderer, 'text', this._store.Columns.LABEL);
this._treeView.append_column(column);
this.add(this._treeView);
let toolbar = new Gtk.Toolbar();
toolbar.get_style_context().add_class(Gtk.STYLE_CLASS_INLINE_TOOLBAR);
let newButton = new Gtk.ToolButton({ stock_id: Gtk.STOCK_NEW });
newButton.connect('clicked', Lang.bind(this, this._newClicked));
toolbar.add(newButton);
let delButton = new Gtk.ToolButton({ stock_id: Gtk.STOCK_DELETE });
delButton.connect('clicked', Lang.bind(this, this._delClicked));
toolbar.add(delButton);
this.add(toolbar);
},
_cellEdited: function(renderer, path, new_text) {
let [ok, iter] = this._store.get_iter_from_string(path);
if (ok)
this._store.set(iter, [this._store.Columns.LABEL], [new_text]);
},
_newClicked: function() {
let iter = this._store.append();
let index = this._store.get_path(iter).get_indices()[0];
let label = _("Workspace %d").format(index);
this._store.set(iter, [this._store.Columns.LABEL], [label]);
},
_delClicked: function() {
let [any, model, iter] = this._treeView.get_selection().get_selected();
if (any)
this._store.remove(iter);
}
});
function init() {
Convenience.initTranslations();
}
function buildPrefsWidget() {
let widget = new WorkspaceSettingsWidget();
widget.show_all();
return widget;
}

View File

@@ -17,6 +17,10 @@ const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;
const N_ = function(e) { return e };
const ExtensionUtils = imports.misc.extensionUtils;
const Me = ExtensionUtils.getCurrentExtension();
const Convenience = Me.imports.convenience;
const possibleRotations = [ GnomeDesktop.RRRotation.ROTATION_0,
GnomeDesktop.RRRotation.ROTATION_90,
GnomeDesktop.RRRotation.ROTATION_180,
@@ -137,8 +141,7 @@ Indicator.prototype = {
function init(metadata) {
let me = imports.ui.extensionSystem.extensions[metadata.uuid];
me.convenience.initTranslations(metadata);
Convenience.initTranslations();
}
let _indicator;

View File

@@ -1,5 +1,8 @@
{
"extension-id": "@extension_id@",
"uuid": "@uuid@",
"settings-schema": "@gschemaname@",
"gettext-domain": "@gettext_domain@",
"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@" ],

View File

@@ -7,5 +7,6 @@ extensionbase = @gnome-shell-extensions.gcampax.github.com
gschemabase = org.gnome.shell.extensions
uuid = $(EXTENSION_ID)$(extensionbase)
gschemaname = $(gschemabase).$(EXTENSION_ID)
extensiondir = $(topextensiondir)/$(uuid)

View File

@@ -1,17 +1,68 @@
/* -*- mode: js; js-basic-offset: 4; indent-tabs-mode: nil -*- */
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);
const Config = imports.misc.config;
const ExtensionUtils = imports.misc.extensionUtils;
/**
* initTranslations:
* @domain: (optional): the gettext domain to use
*
* Initialize Gettext to load translations from extensionsdir/locale.
* If @domain is not provided, it will be taken from metadata['gettext-domain']
*/
function initTranslations(domain) {
let extension = ExtensionUtils.getCurrentExtension();
domain = domain || extension.metadata['gettext-domain'];
// check if this extension was built with "make zip-file", and thus
// has the locale files in a subfolder
// otherwise assume that extension has been installed in the
// same prefix as gnome-shell
let localeDir = extension.dir.get_child('locale');
if (localeDir.query_exists(null))
Gettext.bindtextdomain(domain, localeDir.get_path());
else
Gettext.bindtextdomain(domain, Config.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 });
/**
* getSettings:
* @schema: (optional): the GSettings schema id
*
* Builds and return a GSettings schema for @schema, using schema files
* in extensionsdir/schemas. If @schema is not provided, it is taken from
* metadata['settings-schema'].
*/
function getSettings(schema) {
let extension = ExtensionUtils.getCurrentExtension();
schema = schema || extension.metadata['settings-schema'];
const GioSSS = Gio.SettingsSchemaSource;
// check if this extension was built with "make zip-file", and thus
// has the schema files in a subfolder
// otherwise assume that extension has been installed in the
// same prefix as gnome-shell (and therefore schemas are available
// in the standard folders)
let schemaDir = extension.dir.get_child('schemas');
let schemaSource;
if (schemaDir.query_exists(null))
schemaSource = GioSSS.new_from_directory(schemaDir.get_path(),
GioSSS.get_default(),
false);
else
schemaSource = GioSSS.get_default();
let schemaObj = schemaSource.lookup(schema, true);
if (!schemaObj)
throw new Error('Schema ' + schema + ' could not be found for extension '
+ extension.metadata.uuid + '. Please check your installation.');
return new Gio.Settings({ settings_schema: schemaObj });
}

View File

@@ -25,6 +25,8 @@ pl
ru
sk
sl
sr
sr@latin
sv
te
vi

View File

@@ -1,15 +1,25 @@
extensions/alternative-status-menu/extension.js
extensions/alternate-tab/extension.js
extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in
extensions/alternate-tab/prefs.js
extensions/alternative-status-menu/extension.js
extensions/apps-menu/extension.js
extensions/auto-move-windows/extension.js
extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in
extensions/auto-move-windows/prefs.js
extensions/dock/extension.js
extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in
extensions/drive-menu/extension.js
extensions/example/extension.js
extensions/example/org.gnome.shell.extensions.example.gschema.xml.in
extensions/example/prefs.js
extensions/gajim/extension.js
extensions/native-window-placement/extension.js
extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in
extensions/places-menu/extension.js
extensions/systemMonitor/extension.js
extensions/user-theme/extension.js
extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in
extensions/windowsNavigator/extension.js
extensions/workspace-indicator/extension.js
extensions/workspace-indicator/prefs.js
extensions/xrandr-indicator/extension.js

434
po/es.po
View File

@@ -1,125 +1,105 @@
# Spanish translation for gnome-shell-extensions.
# Copyright (C) 2011 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package.
# Jorge González <jorgegonz@svn.gnome.org>, 2011.
# Daniel Mustieles <daniel.mustieles@gmail.com>, 2011.
# Nicolás Satragno <nsatragno@gmail.com>, 2011.
# Spanish translation for gnome-shell-extensions.
# Copyright (C) 2011 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package.
# Jorge González <jorgegonz@svn.gnome.org>, 2011.
# Nicolás Satragno <nsatragno@gmail.com>, 2011.
#
# Daniel Mustieles <daniel.mustieles@gmail.com>, 2011, 2012.
, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"POT-Creation-Date: 2011-12-27 14:30+0000\n"
"PO-Revision-Date: 2011-12-27 16:58-0300\n"
"Last-Translator: Nicolás Satragno <nsatragno@gmail.com>\n"
"Language-Team: Español; Castellano <gnome-es-list@gnome.org>\n"
"shell&keywords=I18N+L10N&component=extensions\n"
"POT-Creation-Date: 2012-02-13 22:07+0000\n"
"PO-Revision-Date: 2012-02-17 10:48+0100\n"
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
"Language-Team: Español <gnome-es-list@gnome.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:68
msgid "Suspend"
msgstr "Suspender"
#: ../extensions/alternative-status-menu/extension.js:73
msgid "Hibernate"
msgstr "Hibernar"
#: ../extensions/alternative-status-menu/extension.js:78
msgid "Power Off..."
msgstr "Apagar…"
#: ../extensions/alternate-tab/extension.js:54
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 ""
"Esta es la primera vez que usa la extensión Alt+Tab. \n"
"Seleccione el comportamiento preferido:\n"
"\n"
"Todo y miniaturas:\n"
" Este modo muestra todas la aplicaciones de todas las áreas de trabajo \n"
" en una única lista. En lugar de usar el icono de la aplicación de cada "
"ventana, usa \n"
" miniaturas similares a la ventana.\n"
"\n"
"Área de trabajo e iconos:\n"
" Este modo permite le alternar entre aplicaciones del área de trabajo "
"actual, \n"
" y ofrece la posibilidad de cambiar a la última aplicación usada en el \n"
" área de trabajo anterior. Éste último es siempre el último símbolo en "
"la \n"
" lista, y está diferenciado mediante un separador/línea vertical, si "
"está \n"
" disponible. \n"
" Cada ventana se representa con el icono de la aplicación. \n"
"\n"
"Si quiere volver al comportamiento predeterminado de Alt+Tab, simplemente\n"
"desactive la extensión desde extensions.gnome.org o en la aplicación "
"Configuración avanzada."
#: ../extensions/alternate-tab/extension.js:295
msgid "Alt Tab Behaviour"
msgstr "Comportamiento de Alt+Tab"
#: ../extensions/alternate-tab/extension.js:311
msgid "All & Thumbnails"
msgstr "Todo y miniaturas"
#: ../extensions/alternate-tab/extension.js:318
msgid "Workspace & Icons"
msgstr "Espacio de trabajo e iconos"
#: ../extensions/alternate-tab/extension.js:325
msgid "Cancel"
msgstr "Cancelar"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
msgid "Ask the user for a default behaviour if true."
msgstr "Si es cierto, preguntar al usuario el comportamiento predeterminado."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
msgid "Indicates if Alternate Tab is newly installed"
msgstr "Indica si se ha instalado Alt+Tab recientemente"
#: ../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 ""
"Establece el comportamiento de Alt+Tab. Los valores posibles son: "
"«native» (nativo), «all_thumbnails» (todo y miniaturas) y "
"«workspace_icons» (iconos de áreas de trabajo)."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:4
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:1
msgid "The alt tab behaviour."
msgstr "El comportamiento de Alt+Tab."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
#| msgid ""
#| "Sets the Alt-Tab behaviour. Possible values are: native, all_thumbnails "
#| "and workspace_icons."
msgid ""
"Sets the Alt-Tab behaviour. Possible values are: all_thumbnails and "
"workspace_icons. See the configuration dialogs for details."
msgstr ""
"Establece el comportamiento de Alt+Tab. Los valores posibles son: "
"«native» (nativo), «all_thumbnails» (todo y miniaturas) y "
"«workspace_icons» (iconos de áreas de trabajo). Para obtener información más "
"detallada, consulte la configuración de los diálogos "
#: ../extensions/alternate-tab/prefs.js:27
msgid "All & Thumbnails"
msgstr "Todo y miniaturas"
#: ../extensions/alternate-tab/prefs.js:28
msgid ""
"This mode presents all applications from all workspaces in one selection "
"list. Instead of using the application icon of every window, it uses small "
"thumbnails resembling the window itself."
msgstr ""
"Este modo presenta todas las aplicaciones de todas las áreas de trabajo en "
"una lista de selección. En lugar de usar el icono de aplicación de cada "
"ventana, usa pequeñas miniaturas que se asemejan a la propia ventana."
#: ../extensions/alternate-tab/prefs.js:34
msgid "Workspace & Icons"
msgstr "Espacio de trabajo e iconos"
#: ../extensions/alternate-tab/prefs.js:35
msgid ""
"This mode let's you switch between the applications of your current "
"workspace and gives you additionally the option to switch to the last used "
"application of your previous workspace. This is always the last symbol in "
"the list and is segregated by a separator/vertical line if available. \n"
"Every window is represented by its application icon."
msgstr ""
"Este modo le permite alternar entre las aplicaciones de su área de trabajo "
"actual y le da la opción de cambiar a la última aplicación utilizada de su "
"área de trabajo anterior. Este siempre es el último símbolo de la lista y "
"está separado por un separador/línea vertical si está disponible.\n"
"Cada ventana está representada por su icono de aplicación."
#: ../extensions/alternate-tab/prefs.js:41
msgid "Move current selection to front before closing the popup"
msgstr ""
"Mover la selección actual al frente antes de cerrar la ventana emergente"
#: ../extensions/alternate-tab/prefs.js:58
msgid ""
"The Alternate Tab can be used in different modes, that affect the way "
"windows are chosen and presented."
msgstr ""
"La combinación de teclas Alt+Tab se puede usar en diferentes modos, que "
"afectan la manera en que se eligen y presentan las ventanas."
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:64
msgid "Suspend"
msgstr "Suspender"
#: ../extensions/alternative-status-menu/extension.js:69
msgid "Hibernate"
msgstr "Hibernar"
#: ../extensions/alternative-status-menu/extension.js:74
msgid "Power Off..."
msgstr "Apagar…"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
msgid "Application and workspace list"
msgstr "Lista de aplicaciones y espacios de trabajo"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
msgid ""
"A list of strings, each containing an application id (desktop file name), "
@@ -128,54 +108,77 @@ msgstr ""
"Una lista de cadenas, conteniendo cada una un ID de aplicación (nombre de "
"archivo de escritorio), seguido de dos puntos y el número del espacio de "
"trabajo"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
msgid "Application and workspace list"
msgstr "Lista de aplicaciones y espacios de trabajo"
#: ../extensions/auto-move-windows/prefs.js:55
#| msgid "Quit Application"
msgid "Application"
msgstr "Aplicación"
#: ../extensions/dock/extension.js:561
#: ../extensions/auto-move-windows/prefs.js:64
#: ../extensions/auto-move-windows/prefs.js:106
#| msgid "Workspace & Icons"
msgid "Workspace"
msgstr "Área de trabajo"
#: ../extensions/auto-move-windows/prefs.js:80
msgid "Add rule"
msgstr "Añadir regla"
#: ../extensions/auto-move-windows/prefs.js:94
msgid "Create new matching rule"
msgstr "Crear regla de coincidencia nueva"
#: ../extensions/auto-move-windows/prefs.js:98
msgid "Add"
msgstr "Añadir"
#: ../extensions/dock/extension.js:489
msgid "Drag here to add favorites"
msgstr "Arrastrar aquí para añadir a favoritos"
#: ../extensions/dock/extension.js:896
#: ../extensions/dock/extension.js:815
msgid "New Window"
msgstr "Ventana nueva"
#: ../extensions/dock/extension.js:898
#: ../extensions/dock/extension.js:817
msgid "Quit Application"
msgstr "Salir de la aplicación"
#: ../extensions/dock/extension.js:903
#: ../extensions/dock/extension.js:822
msgid "Remove from Favorites"
msgstr "Quitar de favoritos"
#: ../extensions/dock/extension.js:904
#: ../extensions/dock/extension.js:823
msgid "Add to Favorites"
msgstr "Añadir a favoritos"
msgid "Autohide duration"
msgstr "Duración de la ocultación automática"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid "Autohide effect"
msgstr "Efecto de ocultación automática"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Enable/disable autohide"
msgstr "Activar/desactivar ocultación automática"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Icon size"
msgstr "Tamaño del icono"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:1
msgid "Position of the dock"
msgstr "Posición del tablero"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid ""
"Sets the position of the dock in the screen. Allowed values are 'right' or "
"'left'"
msgstr ""
"Configura la posición del tablero en la pantalla. Los valores permitidos son "
"«right» (derecha) o «left» (izquierda)"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Icon size"
msgstr "Tamaño del icono"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Sets icon size of the dock."
msgstr "Configura el tamaño de los íconos del tablero."
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
msgid "Enable/disable autohide"
msgstr "Activar/desactivar ocultación automática"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
msgid "Autohide effect"
msgstr "Efecto de ocultación automática"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:7
msgid ""
@@ -185,25 +188,50 @@ msgstr ""
"Establece el efecto de ocultación del tablero. Los valores permitidos son "
"«resize» (redimensionar) y «rescale» (re-escalar) y «move» (mover)"
msgid ""
"Sets the position of the dock in the screen. Allowed values are 'right' or "
"'left'"
msgstr ""
"Configura la posición del tablero en la pantalla. Los valores permitidos son "
"«right» (derecha) o «left» (izquierda)"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:8
msgid "Autohide duration"
msgstr "Duración de la ocultación automática"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:9
msgid "Sets the time duration of the autohide effect."
msgstr "Configura la duración del efecto de ocultación automática."
#: ../extensions/drive-menu/extension.js:69
#: ../extensions/drive-menu/extension.js:66
msgid "Open file manager"
msgstr "Abrir el gestor de archivos"
#: ../extensions/example/extension.js:11
#: ../extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "¡Hola, mundo!"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:1
msgid "Alternative greeting text."
msgstr "Texto de bienvenida alternativo"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:2
msgid ""
"If not empty, it contains the text that will be shown when clicking on the "
"panel."
msgstr ""
"Si no está vacío, contiene el texto que se desplegará al pulsar sobre el "
"panel."
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:30
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and "
"as such it has little functionality on its own.\n"
"Nevertheless it's possible to customize the greeting message."
msgstr ""
"«Example» tiene por objeto mostrar cómo construir extensiones de buen "
"comportamiento para la Shell y por eso tiene poca funcionalidad por sí "
"solo.\n"
"Sin embargo, es posible personalizar el mensaje de bienvenida."
#: ../extensions/example/prefs.js:36
msgid "Message:"
msgstr "Mensaje:"
#: ../extensions/gajim/extension.js:227
#, c-format
@@ -225,6 +253,24 @@ msgid "%s is busy."
msgid "%s is busy."
msgstr "%s está ocupado."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:1
msgid "Use more screen for windows"
msgstr "Usar más pantalla para las ventanas"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
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 ""
"Intente utilizar más espacio para situar las miniaturas, adaptándolas a la "
"forma de la pantalla, y consolidarlas aún más para reducir el área ocupada. "
"Esta opción sólo se aplica a la estrategia de posicionamiento «natural»."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
msgid "Place window captions on top"
msgstr "Situar los títulos de ventanas arriba"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
msgid ""
"If true, place window captions on top the respective thumbnail, overriding "
@@ -235,56 +281,108 @@ msgstr ""
"correspondientes, cambiando el comportamiento predeterminado de shell, que "
"los sitúa por debajo. Cambiar esta configuración requiere reiniciar la shell "
"para que tenga efecto."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
msgid "Place window captions on top"
msgstr "Situar los títulos de ventanas arriba"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
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 ""
"Intente utilizar más espacio para situar las miniaturas, adaptándolas a la "
"forma de la pantalla, y consolidarlas aún más para reducir el área ocupada. "
"Esta opción sólo se aplica a la estrategia de posicionamiento «natural»."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
msgid "Use more screen for windows"
msgstr "Usar más pantalla para las ventanas"
#: ../extensions/places-menu/extension.js:36
#: ../extensions/places-menu/extension.js:37
msgid "Removable Devices"
msgstr "Dispositivos extraíbles"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "El nombre del tema, que se carga desde ~/.themes/nombre/gnome-shell"
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:1
msgid "Theme name"
msgstr "Nombre del tema"
#: ../extensions/xrandr-indicator/extension.js:26
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "El nombre del tema, que se carga desde ~/.themes/nombre/gnome-shell"
#: ../extensions/workspace-indicator/extension.js:24
msgid "Workspace Indicator"
msgstr "Indicador de espacio de trabajo"
#: ../extensions/xrandr-indicator/extension.js:30
msgid "Normal"
msgstr "Normal"
#: ../extensions/xrandr-indicator/extension.js:27
#: ../extensions/xrandr-indicator/extension.js:31
msgid "Left"
msgstr "Izquierda"
#: ../extensions/xrandr-indicator/extension.js:28
#: ../extensions/xrandr-indicator/extension.js:32
msgid "Right"
msgstr "Derecha"
#: ../extensions/xrandr-indicator/extension.js:29
#: ../extensions/xrandr-indicator/extension.js:33
msgid "Upside-down"
msgstr "Hacia abajo"
#: ../extensions/xrandr-indicator/extension.js:78
#: ../extensions/xrandr-indicator/extension.js:82
msgid "Configure display settings..."
msgstr "Configurar las opciones de pantalla…"
#~ msgid "Indicates if Alternate Tab is newly installed"
#~ msgstr "Indica si se ha instalado Alt+Tab recientemente"
#~ msgid "Ask the user for a default behaviour if true."
#~ msgstr ""
#~ "Si es cierto, preguntar al usuario el comportamiento predeterminado."
#~ 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 ""
#~ "Esta es la primera vez que usa la extensión Alt+Tab. \n"
#~ "Seleccione el comportamiento preferido:\n"
#~ "\n"
#~ "Todo y miniaturas:\n"
#~ " Este modo muestra todas la aplicaciones de todas las áreas de "
#~ "trabajo \n"
#~ " en una única lista. En lugar de usar el icono de la aplicación de "
#~ "cada ventana, usa \n"
#~ " miniaturas similares a la ventana.\n"
#~ "\n"
#~ "Área de trabajo e iconos:\n"
#~ " Este modo permite le alternar entre aplicaciones del área de trabajo "
#~ "actual, \n"
#~ " y ofrece la posibilidad de cambiar a la última aplicación usada en "
#~ "el \n"
#~ " área de trabajo anterior. Éste último es siempre el último símbolo en "
#~ "la \n"
#~ " lista, y está diferenciado mediante un separador/línea vertical, si "
#~ "está \n"
#~ " disponible. \n"
#~ " Cada ventana se representa con el icono de la aplicación. \n"
#~ "\n"
#~ "Si quiere volver al comportamiento predeterminado de Alt+Tab, "
#~ "simplemente\n"
#~ "desactive la extensión desde extensions.gnome.org o en la aplicación "
#~ "Configuración avanzada."
#~ msgid "Alt Tab Behaviour"
#~ msgstr "Comportamiento de Alt+Tab"
#~ msgid "Cancel"
#~ msgstr "Cancelar"
#~ msgid "Notifications"
#~ msgstr "Notificaciones"

478
po/gl.po
View File

@@ -3,14 +3,14 @@
# This file is distributed under the same license as the gnome-shell-extensions package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# Fran Diéguez <frandieguez@gnome.org>, 2011.
# Fran Dieguez <frandieguez@gnome.org>, 2011.
# Fran Dieguez <frandieguez@gnome.org>, 2011, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-09-25 13:23+0200\n"
"PO-Revision-Date: 2011-09-25 13:24+0200\n"
"POT-Creation-Date: 2012-02-26 16:15+0100\n"
"PO-Revision-Date: 2012-02-26 16:21+0100\n"
"Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n"
"Language-Team: Galician <gnome-l10n-gl@gnome.org>\n"
"Language: gl\n"
@@ -19,131 +19,82 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
#: ../extensions/alternative-status-menu/extension.js:44
msgid "Notifications"
msgstr "Notificacións"
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:1
msgid "The alt tab behaviour."
msgstr "O comportamento de Alt+Tab"
#: ../extensions/alternative-status-menu/extension.js:52
msgid "Online Accounts"
msgstr "Contas en liña"
#: ../extensions/alternative-status-menu/extension.js:56
msgid "System Settings"
msgstr "Configuracións do sistema"
#: ../extensions/alternative-status-menu/extension.js:63
msgid "Lock Screen"
msgstr "Bloquear Pantaia"
#: ../extensions/alternative-status-menu/extension.js:68
msgid "Switch User"
msgstr "Trocar de Usario"
#: ../extensions/alternative-status-menu/extension.js:73
msgid "Log Out..."
msgstr "Sair da sesión"
#: ../extensions/alternative-status-menu/extension.js:81
msgid "Suspend"
msgstr "Suspender"
#: ../extensions/alternative-status-menu/extension.js:87
msgid "Hibernate"
msgstr "Hibernar"
#: ../extensions/alternative-status-menu/extension.js:93
msgid "Power Off..."
msgstr "Apagar…"
#: ../extensions/alternate-tab/extension.js:44
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
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"
"Native:\n"
" This mode is the native GNOME 3 behaviour or in other words: Clicking \n"
" native switches the Alternate Tab extension off. \n"
"Sets the Alt-Tab behaviour. Possible values are: all_thumbnails and "
"workspace_icons. See the configuration dialogs for details."
msgstr ""
"É a primeira vez que usa a extensión de Tab alternativo.\n"
"Seleccione o comportamento prefirido:\n"
"\n"
"Todo e miniaturas:\n"
" Este modo mostra tódolos aplicativos de tódolos espazos de traballa "
"nunha\n"
" lista de selección. No lugar de usar as iconas de aplicativos para cada\n"
" xanela, usa miniaturas pequenas que representan as xanelas.\n"
"\n"
"Espazos de traballo e iconas:\n"
" Este modo permítelle cambiar entre os aplicativos do seu espazo de "
"traballo \n"
" actual e permítelle engadir a opción de cambiar entre o último "
"aplicativo\n"
" usado do seu espazo de traballo anterior. Sempre é o último símbolo na\n"
" lista e está separado por unha liña separador/vertical se está "
"dispoñíbel.\n"
" Cada xanela está representada pola icona do aplicativo.\n"
"\n"
"Nativo:\n"
" Este modo é o comportamento nativo de GNOME 3 ou noutras palabras: ao \n"
" seleccionar nativo desactiva a extensión Tab alternativo.\n"
"Estabelece o comportamento do Alt+Tab. Os valores posíbeis son: "
"«native» (nativo), «all_thumbnails» (todo e miniaturas) e "
"«worspace_icons» (iconas de áreas de traballo). Para obter información máis "
"detallada, consulte a configuración dos diálogos."
#: ../extensions/alternate-tab/extension.js:269
msgid "Alt Tab Behaviour"
msgstr "Comportamento do Alt Tab"
#: ../extensions/alternate-tab/extension.js:285
#: ../extensions/alternate-tab/prefs.js:27
msgid "All & Thumbnails"
msgstr "Todo e miniaturas"
#: ../extensions/alternate-tab/extension.js:292
#: ../extensions/alternate-tab/prefs.js:28
msgid ""
"This mode presents all applications from all workspaces in one selection "
"list. Instead of using the application icon of every window, it uses small "
"thumbnails resembling the window itself."
msgstr ""
"Este modo presenta todos os aplicativos de todas as áreas de traballo nunha "
"lista de selección. No lugar de usar a icona de aplicativo de cada xanela, "
"usa pequenas miniaturas que se asemellan á propia xanela."
#: ../extensions/alternate-tab/prefs.js:34
msgid "Workspace & Icons"
msgstr "Espazos de traballo e iconas"
#: ../extensions/alternate-tab/extension.js:299
msgid "Native"
msgstr "Nativa"
#: ../extensions/alternate-tab/extension.js:306
msgid "Cancel"
msgstr "Cancelar"
#: ../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 "Preguntarlle o comportamento predeterminado ao usuario se é certo."
#: ../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 o Tab alternativo está instalado recentemente"
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:3
#: ../extensions/alternate-tab/prefs.js:35
msgid ""
"Sets the Alt-Tab behaviour. Possible values are: native, all_thumbnails and "
"workspace_icons."
"This mode let's you switch between the applications of your current "
"workspace and gives you additionally the option to switch to the last used "
"application of your previous workspace. This is always the last symbol in "
"the list and is segregated by a separator/vertical line if available. \n"
"Every window is represented by its application icon."
msgstr ""
"Estabelece o comportamento do Alt-Tab. Os valores posíbeis son: nativa, "
"all_thumbnaisl e worspace_icons."
"Este modo permítelle alternar entre os aplicativos da súa área de traballo "
"actual e dalle a opción de cambiar ao último aplicativo empregada da súa "
"área de traballo anterior. Este sempre é o último símbolo da lista e está "
"separado por un separador/liña vertical se está dispoñíbel.\n"
"Cada xanela está representada pola súa icona de aplicativo."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:4
msgid "The alt tab behaviour."
msgstr "O comportamento de Alt Tab"
#: ../extensions/alternate-tab/prefs.js:41
msgid "Move current selection to front before closing the popup"
msgstr "Mover a selección actual ao frente antes de pechar a xanela emerxente"
#: ../extensions/alternate-tab/prefs.js:58
msgid ""
"The Alternate Tab can be used in different modes, that affect the way "
"windows are chosen and presented."
msgstr ""
"A combinación de teclas Alt+TAb pódese usar en diferentes modos, que afectan "
"á maneira na que se elixen e presentan as xanelas."
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:64
msgid "Suspend"
msgstr "Suspender"
#: ../extensions/alternative-status-menu/extension.js:69
msgid "Hibernate"
msgstr "Hibernar"
#: ../extensions/alternative-status-menu/extension.js:74
msgid "Power Off..."
msgstr "Apagar…"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
msgid "Application and workspace list"
msgstr "Lista de aplicativos e espazos de traballo"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
msgid ""
"A list of strings, each containing an application id (desktop file name), "
"followed by a colon and the workspace number"
@@ -151,62 +102,52 @@ msgstr ""
"Unha lista de cadeas, cada unha das cales contén un id de aplicativo (nome "
"de ficheiro desktop), seguido por unha coma e o número do espazo de traballo"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
msgid "Application and workspace list"
msgstr "Lista de aplicativos e espazos de traballo"
#: ../extensions/auto-move-windows/prefs.js:55
msgid "Application"
msgstr "Aplicativo"
#: ../extensions/dock/extension.js:486
#: ../extensions/auto-move-windows/prefs.js:64
#: ../extensions/auto-move-windows/prefs.js:106
msgid "Workspace"
msgstr "Área de traballo"
#: ../extensions/auto-move-windows/prefs.js:80
msgid "Add rule"
msgstr "Engadir regra"
#: ../extensions/auto-move-windows/prefs.js:94
msgid "Create new matching rule"
msgstr "Crear regra de coincidencia nova"
#: ../extensions/auto-move-windows/prefs.js:98
msgid "Add"
msgstr "Engadir"
#: ../extensions/dock/extension.js:489
msgid "Drag here to add favorites"
msgstr "Arrastre aquí para engadir aos favoritos"
#: ../extensions/dock/extension.js:820
#: ../extensions/dock/extension.js:815
msgid "New Window"
msgstr "Nova xanela"
#: ../extensions/dock/extension.js:822
#: ../extensions/dock/extension.js:817
msgid "Quit Application"
msgstr "Saír do aplicativo"
#: ../extensions/dock/extension.js:827
#: ../extensions/dock/extension.js:822
msgid "Remove from Favorites"
msgstr "Eliminar dos favoritos"
#: ../extensions/dock/extension.js:828
#: ../extensions/dock/extension.js:823
msgid "Add to Favorites"
msgstr "Engadir aos favoritos"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:1
msgid "Autohide duration"
msgstr "Duración do autoagochado"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid "Autohide effect"
msgstr "Efecto de autoagochado"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Enable/disable autohide"
msgstr "Activar/desactivar autoagochado"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Icon size"
msgstr "Tamaño da icona"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
msgid "Position of the dock"
msgstr "Posición da doca"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
msgid "Sets icon size of the dock."
msgstr "Estabelece o tamaño das iconas na doca."
#: ../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 ""
"Estabelece o efecto de agochado da doca. Os valores permitidos son «resize» "
"e «rescale»"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:8
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid ""
"Sets the position of the dock in the screen. Allowed values are 'right' or "
"'left'"
@@ -214,14 +155,73 @@ msgstr ""
"Estabelece a posición da doca na pantalla. Os valores permitidos son «right» "
"e «left»"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Icon size"
msgstr "Tamaño da icona"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Sets icon size of the dock."
msgstr "Estabelece o tamaño das iconas na doca."
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
msgid "Enable/disable autohide"
msgstr "Activar/desactivar autoagochado"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
msgid "Autohide effect"
msgstr "Efecto de autoagochado"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:7
msgid ""
"Sets the effect of the hide dock. Allowed values are 'resize', 'rescale' and "
"'move'"
msgstr ""
"Estabelece o efecto de agochado da doca. Os valores permitidos son "
"«resize» (redimensionar( e «rescale» (re-escalar) e «move» (mover)"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:8
msgid "Autohide duration"
msgstr "Duración do autoagochado"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:9
msgid "Sets the time duration of the autohide effect."
msgstr "Estabelece a duración do efecto de autoagochado."
#: ../extensions/example/extension.js:11
#: ../extensions/drive-menu/extension.js:66
msgid "Open file manager"
msgstr "Abrir o xestor de ficheiros"
#: ../extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "Hola, mundo!"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:1
msgid "Alternative greeting text."
msgstr "Texto de benvida alternativo"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:2
msgid ""
"If not empty, it contains the text that will be shown when clicking on the "
"panel."
msgstr ""
"Se non está baleiro, contén o texto que se despregará ao premer sobre o panel"
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:30
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and "
"as such it has little functionality on its own.\n"
"Nevertheless it's possible to customize the greeting message."
msgstr ""
"«Example» ten por exemplo mostrar como construir extensións de bo "
"comportamento para a Shell e por iso ten pouca funcionalidade por si só.\n"
"Porén, é posíbel personalizar a mensaxe de benvida."
#: ../extensions/example/prefs.js:36
msgid "Message:"
msgstr "Mensaxe:"
#: ../extensions/gajim/extension.js:227
#, c-format
msgid "%s is away."
@@ -243,30 +243,10 @@ msgid "%s is busy."
msgstr "%s está ocupado."
#: ../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 é verdadeiro, dispor os títulos das xanelas enriba da miniatura "
"respectiva, omitindo a disposición inferior por omisión do shell. Se cambia "
"esta configuración deberá reiniciar o shell para que se apliquen os cambios."
msgid "Use more screen for windows"
msgstr "Usar máis pantalla para as xanelas"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
msgid "Place window captions on top"
msgstr "Pór a xanela sempre na parte superior"
#: ../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 ""
"O algoritmo usado pola disposición de miniaturas na vista previa. «grid» "
"para usar o algoritmo predeterminado baseado na grella, «natural» para usar "
"outro que reflexa máis a posición e tamaño da xanela actual"
#: ../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. "
@@ -276,42 +256,166 @@ msgstr ""
"taxa de aspecto da pantalla e consolidalas para reducir a caixa saltante. "
"Esta configuración aplícase só para a estratexia de disposición natural."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:5
msgid "Use more screen for windows"
msgstr "Usar máis pantalla para as xanelas"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
msgid "Place window captions on top"
msgstr "Pór a xanela sempre na parte superior"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:6
msgid "Window placement strategy"
msgstr "Estratexia de disposición de xanelas"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
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 é verdadeiro, dispor os títulos das xanelas enriba da miniatura "
"respectiva, omitindo a disposición inferior por omisión do shell. Se cambia "
"esta configuración deberá reiniciar o shell para que se apliquen os cambios."
#: ../extensions/places-menu/extension.js:37
msgid "Removable Devices"
msgstr "Dispositivos extraíbeis"
#: ../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 "O nome do tema, a cargar desde ~/.themes/name/gnome-shell"
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
msgid "Theme name"
msgstr "Nome do tema"
#: ../extensions/xrandr-indicator/extension.js:26
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "O nome do tema, a cargar desde ~/.themes/name/gnome-shell"
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Indicador de espazo de traballo"
#: ../extensions/workspace-indicator/prefs.js:151
msgid "Workspace names:"
msgstr "Nomes dos espazos de traballo:"
#: ../extensions/workspace-indicator/prefs.js:162
msgid "Name"
msgstr "Nome"
#: ../extensions/workspace-indicator/prefs.js:196
#, c-format
msgid "Workspace %d"
msgstr "Espazos de traballo %d"
#: ../extensions/xrandr-indicator/extension.js:30
msgid "Normal"
msgstr "Normal"
#: ../extensions/xrandr-indicator/extension.js:27
#: ../extensions/xrandr-indicator/extension.js:31
msgid "Left"
msgstr "Esquerda"
#: ../extensions/xrandr-indicator/extension.js:28
#: ../extensions/xrandr-indicator/extension.js:32
msgid "Right"
msgstr "Dereita"
#: ../extensions/xrandr-indicator/extension.js:29
#: ../extensions/xrandr-indicator/extension.js:33
msgid "Upside-down"
msgstr "Co de arriba cara abaixo"
#: ../extensions/xrandr-indicator/extension.js:78
#: ../extensions/xrandr-indicator/extension.js:82
msgid "Configure display settings..."
msgstr "Configurar as configuracións de pantalla…"
#~ msgid "Notifications"
#~ msgstr "Notificacións"
#~ msgid "Online Accounts"
#~ msgstr "Contas en liña"
#~ msgid "System Settings"
#~ msgstr "Configuracións do sistema"
#~ msgid "Lock Screen"
#~ msgstr "Bloquear Pantaia"
#~ msgid "Switch User"
#~ msgstr "Trocar de Usario"
#~ msgid "Log Out..."
#~ msgstr "Sair da sesión"
#~ 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"
#~ "Native:\n"
#~ " This mode is the native GNOME 3 behaviour or in other words: "
#~ "Clicking \n"
#~ " native switches the Alternate Tab extension off. \n"
#~ msgstr ""
#~ "É a primeira vez que usa a extensión de Tab alternativo.\n"
#~ "Seleccione o comportamento prefirido:\n"
#~ "\n"
#~ "Todo e miniaturas:\n"
#~ " Este modo mostra tódolos aplicativos de tódolos espazos de traballa "
#~ "nunha\n"
#~ " lista de selección. No lugar de usar as iconas de aplicativos para "
#~ "cada\n"
#~ " xanela, usa miniaturas pequenas que representan as xanelas.\n"
#~ "\n"
#~ "Espazos de traballo e iconas:\n"
#~ " Este modo permítelle cambiar entre os aplicativos do seu espazo de "
#~ "traballo \n"
#~ " actual e permítelle engadir a opción de cambiar entre o último "
#~ "aplicativo\n"
#~ " usado do seu espazo de traballo anterior. Sempre é o último símbolo "
#~ "na\n"
#~ " lista e está separado por unha liña separador/vertical se está "
#~ "dispoñíbel.\n"
#~ " Cada xanela está representada pola icona do aplicativo.\n"
#~ "\n"
#~ "Nativo:\n"
#~ " Este modo é o comportamento nativo de GNOME 3 ou noutras palabras: "
#~ "ao \n"
#~ " seleccionar nativo desactiva a extensión Tab alternativo.\n"
#~ msgid "Alt Tab Behaviour"
#~ msgstr "Comportamento do Alt Tab"
#~ msgid "Native"
#~ msgstr "Nativa"
#~ msgid "Cancel"
#~ msgstr "Cancelar"
#~ msgid "Ask the user for a default behaviour if true."
#~ msgstr "Preguntarlle o comportamento predeterminado ao usuario se é certo."
#~ msgid "Indicates if Alternate Tab is newly installed"
#~ msgstr "Indica se o Tab alternativo está instalado recentemente"
#~ 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 ""
#~ "O algoritmo usado pola disposición de miniaturas na vista previa. «grid» "
#~ "para usar o algoritmo predeterminado baseado na grella, «natural» para "
#~ "usar outro que reflexa máis a posición e tamaño da xanela actual"
#~ msgid "Window placement strategy"
#~ msgstr "Estratexia de disposición de xanelas"
#~ msgid "Available"
#~ msgstr "Dispoñible"

222
po/it.po
View File

@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-12-27 15:25+0100\n"
"PO-Revision-Date: 2011-12-25 18:26+0100\n"
"POT-Creation-Date: 2012-02-13 18:54+0100\n"
"PO-Revision-Date: 2012-02-13 18:54+0100\n"
"Last-Translator: Giovanni Campagna <scampa.giovanni@gmail.com>\n"
"Language-Team: none <LL@li.org>\n"
"Language: it\n"
@@ -17,105 +17,74 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:68
#: ../extensions/alternative-status-menu/extension.js:64
msgid "Suspend"
msgstr "Sospendi"
#: ../extensions/alternative-status-menu/extension.js:73
#: ../extensions/alternative-status-menu/extension.js:69
msgid "Hibernate"
msgstr "Iberna"
#: ../extensions/alternative-status-menu/extension.js:78
#: ../extensions/alternative-status-menu/extension.js:74
msgid "Power Off..."
msgstr "Spegni..."
#: ../extensions/alternate-tab/extension.js:54
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:1
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."
"Sets the Alt-Tab behaviour. Possible values are: all_thumbnails and "
"workspace_icons. See the configuration dialogs for details."
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."
"Imposta il comportamento di Alt-Tab. Valori possibili sono \"all_thumbnails"
"\" e \"workspace_icons\". Per maggiori dettagli, si rimanda alla finestra di "
"configurazione."
#: ../extensions/alternate-tab/extension.js:295
msgid "Alt Tab Behaviour"
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
msgid "The alt tab behaviour."
msgstr "Comportamento di Alt-Tab"
#: ../extensions/alternate-tab/extension.js:311
#: ../extensions/alternate-tab/prefs.js:27
msgid "All & Thumbnails"
msgstr "Tutte & Miniature"
#: ../extensions/alternate-tab/extension.js:318
#: ../extensions/alternate-tab/prefs.js:28
msgid ""
"This mode presents all applications from all workspaces in one selection "
"list. Instead of using the application icon of every window, it uses small "
"thumbnails resembling the window itself."
msgstr ""
"Questa modalità presenta tutte le applicazioni, da tutti gli spazi di lavoro "
"in un'unica lista. Invece di usare un'icona, usa delle piccole miniature che "
"rappresentano la finestra stessa."
#: ../extensions/alternate-tab/prefs.js:34
msgid "Workspace & Icons"
msgstr "Spazio di lavoro & Icone"
#: ../extensions/alternate-tab/extension.js:325
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
#: ../extensions/alternate-tab/prefs.js:35
msgid ""
"Sets the Alt-Tab behaviour. Possible values are: native, all_thumbnails and "
"workspace_icons."
"This mode let's you switch between the applications of your current "
"workspace and gives you additionally the option to switch to the last used "
"application of your previous workspace. This is always the last symbol in "
"the list and is segregated by a separator/vertical line if available. \n"
"Every window is represented by its application icon."
msgstr ""
"Imposta il comportamento di Alt-Tab. Valori possibili sono \"native\", "
"\"all_thumbnails\" e \"workspace_icons\""
"Questa modalità ti consente di passare da un'applicazione all'altra del tuo "
"spazio di lavoro corrente e ti da in aggiunta l'opzione di passare "
"all'ultima applicazione dello spazio di lavoro precedente. Questa è sempre "
"l'ultima della lista ed è separata da una linea verticale, se presente.\n"
"Ogni finestra è rappresentata dall'icona dell'applicazione."
#: ../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/alternate-tab/prefs.js:41
msgid "Move current selection to front before closing the popup"
msgstr "Muovi la selezione corrente in avanti prima di chiudere il popup"
#: ../extensions/alternate-tab/prefs.js:58
msgid ""
"The Alternate Tab can be used in different modes, that affect the way "
"windows are chosen and presented."
msgstr ""
"Alternate Tab può essere usato in varie modalità, che influenzano il modo "
"con cui le finestre sono scelte e successivamente mostrate."
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
msgid ""
@@ -129,23 +98,44 @@ msgstr ""
msgid "Application and workspace list"
msgstr "Lista applicazioni e spazi di lavoro"
#: ../extensions/dock/extension.js:561
#: ../extensions/auto-move-windows/prefs.js:55
msgid "Application"
msgstr "Applicazione"
#: ../extensions/auto-move-windows/prefs.js:64
#: ../extensions/auto-move-windows/prefs.js:106
msgid "Workspace"
msgstr "Spazio di lavoro"
#: ../extensions/auto-move-windows/prefs.js:80
msgid "Add rule"
msgstr "Aggiungi regola"
#: ../extensions/auto-move-windows/prefs.js:94
msgid "Create new matching rule"
msgstr "Crea una nuova regola di corrispondenza"
#: ../extensions/auto-move-windows/prefs.js:98
msgid "Add"
msgstr "Aggiungi"
#: ../extensions/dock/extension.js:489
msgid "Drag here to add favorites"
msgstr "Trascina qui per aggiungere ai preferiti"
#: ../extensions/dock/extension.js:896
#: ../extensions/dock/extension.js:815
msgid "New Window"
msgstr "Nuova finestra"
#: ../extensions/dock/extension.js:898
#: ../extensions/dock/extension.js:817
msgid "Quit Application"
msgstr "Chiudi applicazione"
#: ../extensions/dock/extension.js:903
#: ../extensions/dock/extension.js:822
msgid "Remove from Favorites"
msgstr "Rimuovi dai preferiti"
#: ../extensions/dock/extension.js:904
#: ../extensions/dock/extension.js:823
msgid "Add to Favorites"
msgstr "Aggiungi ai preferiti"
@@ -194,14 +184,42 @@ msgstr ""
msgid "Sets the time duration of the autohide effect."
msgstr "Imposta la durata in secondi dell'effetto di scomparsa"
#: ../extensions/drive-menu/extension.js:69
#: ../extensions/drive-menu/extension.js:66
msgid "Open file manager"
msgstr "Apri il gestore dei file"
#: ../extensions/example/extension.js:11
#: ../extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "Ciao, mondo!"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:1
msgid "Alternative greeting text."
msgstr "Testo di benvenuto alternativo"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:2
msgid ""
"If not empty, it contains the text that will be shown when clicking on the "
"panel."
msgstr ""
"Se non vuoto, contiene il testo che verrà mostrato cliccando sulla barra "
"superiore."
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:30
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and "
"as such it has little functionality on its own.\n"
"Nevertheless it's possible to customize the greeting message."
msgstr ""
"Example mira a mostrare come costruire un'estensione della Shell che si "
"comporti bene e come tale non ha molte funzioni vere e proprie.\n"
"In ogni caso è possibile personalizzare il messaggio di benvenuto."
#: ../extensions/example/prefs.js:36
msgid "Message:"
msgstr "Messaggio:"
#: ../extensions/gajim/extension.js:227
#, c-format
msgid "%s is away."
@@ -251,7 +269,7 @@ msgstr ""
msgid "Use more screen for windows"
msgstr "Usa più spazio per le finestre"
#: ../extensions/places-menu/extension.js:36
#: ../extensions/places-menu/extension.js:37
msgid "Removable Devices"
msgstr "Dispositivi rimovibili"
@@ -263,35 +281,38 @@ msgstr "Il nome del tema, da caricare in ~/.themes/nome/gnome-shell"
msgid "Theme name"
msgstr "Nome del tema"
#: ../extensions/xrandr-indicator/extension.js:26
#: ../extensions/xrandr-indicator/extension.js:30
msgid "Normal"
msgstr "Normale"
#: ../extensions/xrandr-indicator/extension.js:27
#: ../extensions/xrandr-indicator/extension.js:31
msgid "Left"
msgstr "Sinistra"
#: ../extensions/xrandr-indicator/extension.js:28
#: ../extensions/xrandr-indicator/extension.js:32
msgid "Right"
msgstr "Destra"
#: ../extensions/xrandr-indicator/extension.js:29
#: ../extensions/xrandr-indicator/extension.js:33
msgid "Upside-down"
msgstr "Rovesciato"
#: ../extensions/xrandr-indicator/extension.js:78
#: ../extensions/xrandr-indicator/extension.js:82
msgid "Configure display settings..."
msgstr "Configura impostazioni display..."
#~ msgid "Display Settings"
#~ msgstr "Impostazioni monitor"
#~ msgid "Cancel"
#~ msgstr "Annulla"
#~ msgid "Notifications"
#~ msgstr "Notifiche"
#~ msgid "Online Accounts"
#~ msgstr "Account online"
#~ msgid "System Settings"
#~ msgstr "Impostazioni di sistema"
#~ msgid "Lock Screen"
#~ msgstr "Blocca schermo"
@@ -300,16 +321,3 @@ msgstr "Configura impostazioni display..."
#~ msgid "Log Out..."
#~ msgstr "Termina sessione..."
#~ 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."
#~ msgid "Window placement strategy"
#~ msgstr "Algoritmo di posizionamento delle finestre"

View File

@@ -5,177 +5,175 @@
# Rodrigo Padula <contato@rodrigopadula.com>, 2011.
# Rodolfo Ribeiro Gomes <rodolforg@gmail.com>, 2011.
# Djavan Fagundes <djavan@comum.org>, 2012.
# Gabriel Speckhahn <gabspeck@gmail.com>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=extensions\n"
"POT-Creation-Date: 2011-12-27 14:30+0000\n"
"PO-Revision-Date: 2012-01-30 19:55-0200\n"
"Last-Translator: Djavan Fagundes <djavan@comum.org>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
"POT-Creation-Date: 2012-02-17 20:30+0000\n"
"PO-Revision-Date: 2012-02-20 16:52-0200\n"
"Last-Translator: Gabriel Speckhahn <gabspeck@gmail.com>\n"
"Language-Team: GNOME pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Virtaal 0.6.1\n"
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:68
msgid "Suspend"
msgstr "Suspend"
#: ../extensions/alternative-status-menu/extension.js:73
msgid "Hibernate"
msgstr "Hibernar"
#: ../extensions/alternative-status-menu/extension.js:78
msgid "Power Off..."
msgstr "Desligar..."
#: ../extensions/alternate-tab/extension.js:54
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 ""
"Esta é a primeira vez que você usa a extensão Alternate Tab. \n"
"Por favor, escolha seu comportamento preferido:\n"
"\n"
"All & miniaturas:\n"
" Este modo apresenta todos os aplicativos de todos os espaços de trabalho "
"em\n"
" uma lista. Ao invés de usar o ícone do aplicativo de cada janela, ele "
"usa\n"
" pequenas miniaturas assemelhando-se a janela própria. \n"
"\n"
"Espaço de trabalho & ícones:\n"
" Este modo permite que você alterne entre os aplicativos do seu espaço de "
"trabalho\n"
" atual e dá a você além da opção para mudar para o último aplicativo "
"usado em seu\n"
" espaço de trabalho anterior. Este é sempre o último símbolo na lista e "
"separado\n"
" por uma linha separadora/vertical se disponível. \n"
" Cada janela é representada por seu ícone de aplicativo. \n"
"\n"
"Se você deseja reverter para o comportamento padrão a partir do alternador "
"de Alt-Tab, apenas desative a extensão de extensions.gnome.org ou nas "
"configurações avançadas do aplicativo."
#: ../extensions/alternate-tab/extension.js:295
msgid "Alt Tab Behaviour"
msgstr "Comportamento do Alt Tab"
#: ../extensions/alternate-tab/extension.js:311
msgid "All & Thumbnails"
msgstr "Todas & miniaturas"
#: ../extensions/alternate-tab/extension.js:318
msgid "Workspace & Icons"
msgstr "Espaço de trabalho & ícones"
#: ../extensions/alternate-tab/extension.js:325
msgid "Cancel"
msgstr "Cancelar"
"Language: pt_BR\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Virtaal 0.7.1\n"
"X-Project-Style: gnome\n"
#: ../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 "Pergunte ao usuário por um comportamento padrão se marcado."
#: ../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 o alternar com Tab for recém-instalado"
#: ../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 ""
"Define o comportamento do Alt-Tab. Valores possíveis são: nativo, "
"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 "O comportamento do alt tab."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
msgid ""
"Sets the Alt-Tab behaviour. Possible values are: all_thumbnails and "
"workspace_icons. See the configuration dialogs for details."
msgstr ""
"Define o comportamento do Alt-Tab. Valores possíveis são: all_thumbnails e "
"workspace_icons. Veja os diálogos de configuração para mais detalhes."
#: ../extensions/alternate-tab/prefs.js:27
msgid "All & Thumbnails"
msgstr "Todas & miniaturas"
#: ../extensions/alternate-tab/prefs.js:28
msgid ""
"This mode presents all applications from all workspaces in one selection "
"list. Instead of using the application icon of every window, it uses small "
"thumbnails resembling the window itself."
msgstr ""
"Esse modo apresenta todos os aplicativos de todos os espaços de trabalho em "
"uma lista de seleção. Em vez de usar o ícone de aplicativo de cada janela, "
"usa pequenas miniaturas com a aparência da própria janela."
#: ../extensions/alternate-tab/prefs.js:34
msgid "Workspace & Icons"
msgstr "Espaço de trabalho & ícones"
#: ../extensions/alternate-tab/prefs.js:35
msgid ""
"This mode let's you switch between the applications of your current "
"workspace and gives you additionally the option to switch to the last used "
"application of your previous workspace. This is always the last symbol in "
"the list and is segregated by a separator/vertical line if available. \n"
"Every window is represented by its application icon."
msgstr ""
"Esse modo permite que você alterne entre os aplicativos do seu espaço de "
"trabalho atual e além disso lhe dá a opção de alternar para a última "
"aplicação utilizada do seu espaço de trabalho anterior. Essa é sempre o "
"último símbolo na lista e é segregada através de um separador/linha vertical "
"quando disponível.\n"
"Cada janela é representada pelo seu ícone de aplicativo."
#: ../extensions/alternate-tab/prefs.js:41
msgid "Move current selection to front before closing the popup"
msgstr "Move a seleção atual para a frente antes de fechar a popup"
#: ../extensions/alternate-tab/prefs.js:58
msgid ""
"The Alternate Tab can be used in different modes, that affect the way "
"windows are chosen and presented."
msgstr ""
"O tab alternativo pode ser usado em modos diferentes que afetam a maneira "
"como as janelas são escolhidas e apresentadas."
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:64
msgid "Suspend"
msgstr "Suspender"
#: ../extensions/alternative-status-menu/extension.js:69
msgid "Hibernate"
msgstr "Hibernar"
#: ../extensions/alternative-status-menu/extension.js:74
msgid "Power Off..."
msgstr "Desligar..."
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
msgid "Application and workspace list"
msgstr "Lista de aplicativos e espaços de trabalho"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
msgid ""
"A list of strings, each containing an application id (desktop file name), "
"followed by a colon and the workspace number"
msgstr ""
"Uma lista de strings, cada uma contendo um id do aplicativo (nome de arquivo "
"Uma lista de strings, cada uma contendo um id de aplicativo (nome de arquivo "
"desktop), seguido por dois pontos e o número do espaço de trabalho"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
msgid "Application and workspace list"
msgstr "Lista de aplicativo e espaço de trabalho"
#: ../extensions/auto-move-windows/prefs.js:55
msgid "Application"
msgstr "Aplicativo"
#: ../extensions/dock/extension.js:561
#: ../extensions/auto-move-windows/prefs.js:64
#: ../extensions/auto-move-windows/prefs.js:106
msgid "Workspace"
msgstr "Espaço de trabalho"
#: ../extensions/auto-move-windows/prefs.js:80
msgid "Add rule"
msgstr "Adicionar regra"
#: ../extensions/auto-move-windows/prefs.js:94
msgid "Create new matching rule"
msgstr "Criar nova regra coincidinte"
#: ../extensions/auto-move-windows/prefs.js:98
msgid "Add"
msgstr "Adicionar"
#: ../extensions/dock/extension.js:489
msgid "Drag here to add favorites"
msgstr "Arraste aqui para adicionar aos favoritos"
#: ../extensions/dock/extension.js:896
#: ../extensions/dock/extension.js:815
msgid "New Window"
msgstr "Nova janela"
#: ../extensions/dock/extension.js:898
#: ../extensions/dock/extension.js:817
msgid "Quit Application"
msgstr "Fechar aplicativo"
#: ../extensions/dock/extension.js:903
#: ../extensions/dock/extension.js:822
msgid "Remove from Favorites"
msgstr "Remover dos favoritos"
#: ../extensions/dock/extension.js:904
#: ../extensions/dock/extension.js:823
msgid "Add to Favorites"
msgstr "Adicionar aos favoritos"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:1
msgid "Autohide duration"
msgstr "Duração do ocultar automaticamente"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid "Autohide effect"
msgstr "Efeito de ocultar automaticamente"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Enable/disable autohide"
msgstr "Habilitar/desabilitar o ocultar automaticamente"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Icon size"
msgstr "Tamanho do ícone"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
msgid "Position of the dock"
msgstr "Posição do dock"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid ""
"Sets the position of the dock in the screen. Allowed values are 'right' or "
"'left'"
msgstr ""
"Define a posição do dock na tela. Os valores permitidos são \"right\" ou "
"\"left\""
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Icon size"
msgstr "Tamanho do ícone"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Sets icon size of the dock."
msgstr "Define o tamanho do ícone do dock."
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
msgid "Enable/disable autohide"
msgstr "Habilitar/desabilitar o ocultar automaticamente"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
msgid "Autohide effect"
msgstr "Efeito de ocultar automaticamente"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:7
msgid ""
"Sets the effect of the hide dock. Allowed values are 'resize', 'rescale' and "
@@ -185,25 +183,48 @@ msgstr ""
"\"rescale\" e \"move\""
#: ../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 ""
"Define a posição do dock na tela. Os valores permitidos são \"right\" ou "
"\"left\""
msgid "Autohide duration"
msgstr "Duração do ocultar automaticamente"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:9
msgid "Sets the time duration of the autohide effect."
msgstr "Define o tempo de duração do efeito de ocultar automaticamente."
#: ../extensions/drive-menu/extension.js:69
#: ../extensions/drive-menu/extension.js:66
msgid "Open file manager"
msgstr "Abrir gerenciador de arquivos"
#: ../extensions/example/extension.js:11
#: ../extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "Olá, mundo!"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:1
msgid "Alternative greeting text."
msgstr "Texto de saudação alternativo."
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:2
msgid ""
"If not empty, it contains the text that will be shown when clicking on the "
"panel."
msgstr ""
"Quando não vazio, contém o texto que será exibido ao se clicar no painel."
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:30
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and "
"as such it has little functionality on its own.\n"
"Nevertheless it's possible to customize the greeting message."
msgstr ""
"Example procura mostrar como construir extensões bem comportadas para o "
"Shell e portanto ela possui poucas funcionalidades próprias.\n"
"De qualquer maneira, é possível personalizar a mensagem de saudação."
#: ../extensions/example/prefs.js:36
msgid "Message:"
msgstr "Mensagem:"
#: ../extensions/gajim/extension.js:227
#, c-format
msgid "%s is away."
@@ -225,21 +246,10 @@ msgid "%s is busy."
msgstr "%s está ocupado."
#: ../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 verdadeiro, coloca legendas de janela em cima da respectiva miniatura, "
"sobresscrevendo o padrão do shell de colocá-lo na parte inferior. A "
"alteração dessa configuração requer o reinicio do shell para ter qualquer "
"efeito."
msgid "Use more screen for windows"
msgstr "Usar mais tela para janelas"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
msgid "Place window captions on top"
msgstr "Colocar as legendas de janela em cima"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
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. "
@@ -250,42 +260,119 @@ msgstr ""
"delimitadora. Essa configuração aplica-se somente com a estratégia de "
"posicionamento natural."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
msgid "Use more screen for windows"
msgstr "Usar mais tela para janelas"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
msgid "Place window captions on top"
msgstr "Colocar as legendas de janela em cima"
#: ../extensions/places-menu/extension.js:36
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
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 verdadeiro, coloca legendas de janela em cima da respectiva miniatura, "
"sobresscrevendo o padrão do shell de colocá-lo na parte inferior. A "
"alteração dessa configuração requer o reinício do shell para ter algum "
"efeito."
#: ../extensions/places-menu/extension.js:37
msgid "Removable Devices"
msgstr "Dispositivos removíveis"
#: ../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 "O nome do tema, para ser carregado de ~/.themes/name/gnome-shell"
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
msgid "Theme name"
msgstr "Nome do tema"
#: ../extensions/xrandr-indicator/extension.js:26
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "O nome do tema, para ser carregado de ~/.themes/name/gnome-shell"
#: ../extensions/workspace-indicator/extension.js:24
msgid "Workspace Indicator"
msgstr "Indicador de espaços de trabalho"
#: ../extensions/xrandr-indicator/extension.js:30
msgid "Normal"
msgstr "Normal"
#: ../extensions/xrandr-indicator/extension.js:27
#: ../extensions/xrandr-indicator/extension.js:31
msgid "Left"
msgstr "Esquerda"
#: ../extensions/xrandr-indicator/extension.js:28
#: ../extensions/xrandr-indicator/extension.js:32
msgid "Right"
msgstr "Direita"
#: ../extensions/xrandr-indicator/extension.js:29
#: ../extensions/xrandr-indicator/extension.js:33
msgid "Upside-down"
msgstr "De cabeça pra baixo"
msgstr "De cabeça para baixo"
#: ../extensions/xrandr-indicator/extension.js:78
#: ../extensions/xrandr-indicator/extension.js:82
msgid "Configure display settings..."
msgstr "Alterar configurações de exibição..."
#~ 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 ""
#~ "Esta é a primeira vez que você usa a extensão Alternate Tab. \n"
#~ "Por favor, escolha seu comportamento preferido:\n"
#~ "\n"
#~ "All & miniaturas:\n"
#~ " Este modo apresenta todos os aplicativos de todos os espaços de "
#~ "trabalho em\n"
#~ " uma lista. Ao invés de usar o ícone do aplicativo de cada janela, ele "
#~ "usa\n"
#~ " pequenas miniaturas assemelhando-se a janela própria. \n"
#~ "\n"
#~ "Espaço de trabalho & ícones:\n"
#~ " Este modo permite que você alterne entre os aplicativos do seu espaço "
#~ "de trabalho\n"
#~ " atual e dá a você além da opção para mudar para o último aplicativo "
#~ "usado em seu\n"
#~ " espaço de trabalho anterior. Este é sempre o último símbolo na lista "
#~ "e separado\n"
#~ " por uma linha separadora/vertical se disponível. \n"
#~ " Cada janela é representada por seu ícone de aplicativo. \n"
#~ "\n"
#~ "Se você deseja reverter para o comportamento padrão a partir do "
#~ "alternador de Alt-Tab, apenas desative a extensão de extensions.gnome.org "
#~ "ou nas configurações avançadas do aplicativo."
#~ msgid "Alt Tab Behaviour"
#~ msgstr "Comportamento do Alt Tab"
#~ msgid "Cancel"
#~ msgstr "Cancelar"
#~ msgid "Ask the user for a default behaviour if true."
#~ msgstr "Pergunte ao usuário por um comportamento padrão se marcado."
#~ msgid "Indicates if Alternate Tab is newly installed"
#~ msgstr "Indica se o alternar com Tab for recém-instalado"
#~ msgid "Available"
#~ msgstr "Disponível"

345
po/sl.po
View File

@@ -1,4 +1,4 @@
# Slovenian translations for gnome-shell-extensions.
# Slovenian translation for gnome-shell-extensions.
# Copyright (C) 2011 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package.
#
@@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&keywords=I18N+L10N&component=extensions\n"
"POT-Creation-Date: 2012-01-07 10:46+0000\n"
"PO-Revision-Date: 2012-01-07 21:55+0100\n"
"POT-Creation-Date: 2012-02-17 09:49+0000\n"
"PO-Revision-Date: 2012-02-17 21:18+0100\n"
"Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
"Language: \n"
@@ -21,161 +21,170 @@ msgstr ""
"X-Poedit-Country: SLOVENIA\n"
"X-Poedit-SourceCharset: utf-8\n"
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:68
msgid "Suspend"
msgstr "V pripravljenost"
#: ../extensions/alternative-status-menu/extension.js:73
msgid "Hibernate"
msgstr "V mirovanje"
#: ../extensions/alternative-status-menu/extension.js:78
msgid "Power Off..."
msgstr "Izklopi ..."
#: ../extensions/alternate-tab/extension.js:54
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 ""
"To je prvi zagon razširitve Alternate Tab. \n"
"Izberite želen način delovanja:\n"
"\n"
"Vse in sličice:\n"
" Ta način prikazuje vse programe vseh delovnih površin ne enem izbirnem\n"
" seznamu. Namesto ikon programa vsakega okna, uporablja male sličice,\n"
" ki so enake samemu oknu. \n"
"\n"
"Delovne površine in ikone:\n"
" Ta način omogoča preklop med programi trenutne delovne površine in tudi \n"
" možnost za preklapljanje na zadnje uporabljen program predhodne delovne\n"
" površine. Ta je vedno zadnji simbol na seznamu in je ločen z ločilnikom ali pa \n"
" vodoravno črto. \n"
" Vsako okno je prikazano z ikono programa. \n"
"\n"
"V kolikor želite povrniti delovanje na privzeti način preklopnika Alt+Tab,\n"
"enostavno onemogočite to razširitev med naprednimi nastavitvami."
#: ../extensions/alternate-tab/extension.js:295
msgid "Alt Tab Behaviour"
msgstr "Obnašanje tipk Alt-Tab"
#: ../extensions/alternate-tab/extension.js:311
msgid "All & Thumbnails"
msgstr "Vse in sličice"
#: ../extensions/alternate-tab/extension.js:318
msgid "Workspace & Icons"
msgstr "Delovne površine in ikone"
#: ../extensions/alternate-tab/extension.js:325
msgid "Cancel"
msgstr "Prekliči"
#: ../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 "Izbrana možnost omogoči vprašanje uporabniku za izbiro privzetega obnašanja."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
msgid "Indicates if Alternate Tab is newly installed"
msgstr "Določa ali je vstavek Alternate Tab nameščen."
#: ../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 "Določi obnašanje tipk Alt-Tab. Mogoče vrednosti so: lastno, vse_sličice in ikone_delovne_površine."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:4
msgid "The alt tab behaviour."
msgstr "Obnašanje tipk 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), followed by a colon and the workspace number"
msgstr "Seznam nizov z določilom ID programa (namizno ime programa), ki mu sledi dvopičje in nato številka delovne površine."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
#, fuzzy
msgid "Sets the Alt-Tab behaviour. Possible values are: all_thumbnails and workspace_icons. See the configuration dialogs for details."
msgstr "Določi obnašanje tipk Alt-Tab. Mogoče vrednosti so: lastno, vse_sličice in ikone_delovne_površine."
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
#: ../extensions/alternate-tab/prefs.js:27
msgid "All & Thumbnails"
msgstr "Vse in sličice"
#: ../extensions/alternate-tab/prefs.js:28
msgid "This mode presents all applications from all workspaces in one selection list. Instead of using the application icon of every window, it uses small thumbnails resembling the window itself."
msgstr ""
#: ../extensions/alternate-tab/prefs.js:34
msgid "Workspace & Icons"
msgstr "Delovne površine in ikone"
#: ../extensions/alternate-tab/prefs.js:35
msgid ""
"This mode let's you switch between the applications of your current workspace and gives you additionally the option to switch to the last used application of your previous workspace. This is always the last symbol in the list and is segregated by a separator/vertical line if available. \n"
"Every window is represented by its application icon."
msgstr ""
#: ../extensions/alternate-tab/prefs.js:41
msgid "Move current selection to front before closing the popup"
msgstr "Premakni trenutni izbor v ospredje pred zapiranjem pojavnega okna"
#: ../extensions/alternate-tab/prefs.js:58
msgid "The Alternate Tab can be used in different modes, that affect the way windows are chosen and presented."
msgstr ""
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:64
msgid "Suspend"
msgstr "V pripravljenost"
#: ../extensions/alternative-status-menu/extension.js:69
msgid "Hibernate"
msgstr "V mirovanje"
#: ../extensions/alternative-status-menu/extension.js:74
msgid "Power Off..."
msgstr "Izklopi ..."
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
msgid "Application and workspace list"
msgstr "Seznam programov in delovnih površin"
#: ../extensions/dock/extension.js:561
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
msgid "A list of strings, each containing an application id (desktop file name), followed by a colon and the workspace number"
msgstr "Seznam nizov z določilom ID programa (namizno ime programa), ki mu sledi dvopičje in nato številka delovne površine."
#: ../extensions/auto-move-windows/prefs.js:55
#, fuzzy
msgid "Application"
msgstr "Program"
#: ../extensions/auto-move-windows/prefs.js:64
#: ../extensions/auto-move-windows/prefs.js:106
msgid "Workspace"
msgstr "Delovna površina"
#: ../extensions/auto-move-windows/prefs.js:80
msgid "Add rule"
msgstr "Dodaj pravilo"
#: ../extensions/auto-move-windows/prefs.js:94
#, fuzzy
msgid "Create new matching rule"
msgstr "Dodaj novo pravilo točkovanja"
#: ../extensions/auto-move-windows/prefs.js:98
msgid "Add"
msgstr "Dodaj"
#: ../extensions/dock/extension.js:489
msgid "Drag here to add favorites"
msgstr "Potegnite sem, za dodajanje med priljubljene"
#: ../extensions/dock/extension.js:896
#: ../extensions/dock/extension.js:815
msgid "New Window"
msgstr "Novo okno"
#: ../extensions/dock/extension.js:898
#: ../extensions/dock/extension.js:817
msgid "Quit Application"
msgstr "Končaj program"
#: ../extensions/dock/extension.js:903
#: ../extensions/dock/extension.js:822
msgid "Remove from Favorites"
msgstr "Odstrani iz priljubljenih"
#: ../extensions/dock/extension.js:904
#: ../extensions/dock/extension.js:823
msgid "Add to Favorites"
msgstr "Dodaj med priljubljene"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:1
msgid "Autohide duration"
msgstr "Trajanje samodejnega skrivanja"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid "Autohide effect"
msgstr "Učinek samodejnega skrivanja"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Enable/disable autohide"
msgstr "Omogoči/Onemogoči samodejno skrivanje"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Icon size"
msgstr "Velikost ikone"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
msgid "Position of the dock"
msgstr "Postavitev sidrišča"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid "Sets the position of the dock in the screen. Allowed values are 'right' or 'left'"
msgstr "Določi položaj sidrišča na zaslonu. Dovoljeni vrednosti sta 'desno' ali 'levo'."
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Icon size"
msgstr "Velikost ikone"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Sets icon size of the dock."
msgstr "Določi velikost ikon sidrišča."
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
msgid "Enable/disable autohide"
msgstr "Omogoči/Onemogoči samodejno skrivanje"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
msgid "Autohide effect"
msgstr "Učinek samodejnega skrivanja"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:7
msgid "Sets the effect of the hide dock. Allowed values are 'resize', 'rescale' and 'move'"
msgstr "Določi učinek skrivanja sidrišča. Dovoljeni vrednosti sta 'spremeni velikost', 'prilagodi velikost' ali 'premakni'."
#: ../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 "Določi položaj sidrišča na zaslonu. Dovoljeni vrednosti sta 'desno' ali 'levo'."
msgid "Autohide duration"
msgstr "Trajanje samodejnega skrivanja"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:9
msgid "Sets the time duration of the autohide effect."
msgstr "Določi trajanje učinka samodejnega skrivanja."
#: ../extensions/drive-menu/extension.js:69
#: ../extensions/drive-menu/extension.js:66
msgid "Open file manager"
msgstr "Odpri upravljalnik datotek"
#: ../extensions/example/extension.js:11
#: ../extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "Pozdravljen, svet!"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:1
#, fuzzy
msgid "Alternative greeting text."
msgstr "Naslov URL je %s, alternativno besedilo pa %s"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:2
msgid "If not empty, it contains the text that will be shown when clicking on the panel."
msgstr ""
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:30
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and as such it has little functionality on its own.\n"
"Nevertheless it's possible to customize the greeting message."
msgstr ""
#: ../extensions/example/prefs.js:36
msgid "Message:"
msgstr "Sporočilo:"
#: ../extensions/gajim/extension.js:227
#, c-format
msgid "%s is away."
@@ -197,53 +206,121 @@ msgid "%s is busy."
msgstr "%s je zaseden."
#: ../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 "Izbrana možnost določi postavitev nazivov oken na vrh posamezne sličice in s tem prepiše privzeti izpis pod sličico. Za uveljavitev sprememb je treba lupino ponovno zagnati."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
msgid "Place window captions on top"
msgstr "Postavi nazive oken na vrh"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
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 "Poskusi uporabiti več zaslona za postavitev sličic oken s prilagajanjem razmerja velikosti zaslona in prilagajanjem postavitve okvirja. Nastavitev je mogoče uporabiti le z naravnim načinom postavitve okna."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
msgid "Use more screen for windows"
msgstr "Uporabi več zaslona za okna"
#: ../extensions/places-menu/extension.js:36
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
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 "Poskusi uporabiti več zaslona za postavitev sličic oken s prilagajanjem razmerja velikosti zaslona in prilagajanjem postavitve okvirja. Nastavitev je mogoče uporabiti le z naravnim načinom postavitve okna."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
msgid "Place window captions on top"
msgstr "Postavi nazive oken na vrh"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
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 "Izbrana možnost določi postavitev nazivov oken na vrh posamezne sličice in s tem prepiše privzeti izpis pod sličico. Za uveljavitev sprememb je treba lupino ponovno zagnati."
#: ../extensions/places-menu/extension.js:37
msgid "Removable Devices"
msgstr "Odstranljive naprave"
#: ../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 "Ime teme, ki bo naložena iz ~/.themes/name/gnome-shell"
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
msgid "Theme name"
msgstr "Ime teme"
#: ../extensions/xrandr-indicator/extension.js:26
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Ime teme, ki bo naložena iz ~/.themes/name/gnome-shell"
#: ../extensions/workspace-indicator/extension.js:24
#, fuzzy
msgid "Workspace Indicator"
msgstr "Določilnik prosojnosti"
#: ../extensions/xrandr-indicator/extension.js:30
msgid "Normal"
msgstr "Običajno"
#: ../extensions/xrandr-indicator/extension.js:27
#: ../extensions/xrandr-indicator/extension.js:31
msgid "Left"
msgstr "Levo"
#: ../extensions/xrandr-indicator/extension.js:28
#: ../extensions/xrandr-indicator/extension.js:32
msgid "Right"
msgstr "Desno"
#: ../extensions/xrandr-indicator/extension.js:29
#: ../extensions/xrandr-indicator/extension.js:33
msgid "Upside-down"
msgstr "Zgoraj-navzdol"
#: ../extensions/xrandr-indicator/extension.js:78
#: ../extensions/xrandr-indicator/extension.js:82
msgid "Configure display settings..."
msgstr "Nastavitve zaslona ..."
#~ 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 ""
#~ "To je prvi zagon razširitve Alternate Tab. \n"
#~ "Izberite želen način delovanja:\n"
#~ "\n"
#~ "Vse in sličice:\n"
#~ " Ta način prikazuje vse programe vseh delovnih površin ne enem "
#~ "izbirnem\n"
#~ " seznamu. Namesto ikon programa vsakega okna, uporablja male sličice,\n"
#~ " ki so enake samemu oknu. \n"
#~ "\n"
#~ "Delovne površine in ikone:\n"
#~ " Ta način omogoča preklop med programi trenutne delovne površine in "
#~ "tudi \n"
#~ " možnost za preklapljanje na zadnje uporabljen program predhodne "
#~ "delovne\n"
#~ " površine. Ta je vedno zadnji simbol na seznamu in je ločen z "
#~ "ločilnikom ali pa \n"
#~ " vodoravno črto. \n"
#~ " Vsako okno je prikazano z ikono programa. \n"
#~ "\n"
#~ "V kolikor želite povrniti delovanje na privzeti način preklopnika Alt"
#~ "+Tab,\n"
#~ "enostavno onemogočite to razširitev med naprednimi nastavitvami."
#~ msgid "Alt Tab Behaviour"
#~ msgstr "Obnašanje tipk Alt-Tab"
#~ msgid "Cancel"
#~ msgstr "Prekliči"
#~ msgid "Ask the user for a default behaviour if true."
#~ msgstr ""
#~ "Izbrana možnost omogoči vprašanje uporabniku za izbiro privzetega "
#~ "obnašanja."
#~ msgid "Indicates if Alternate Tab is newly installed"
#~ msgstr "Določa ali je vstavek Alternate Tab nameščen."
#~ msgid "Notifications"
#~ msgstr "Obvestila"

306
po/sr.po Normal file
View File

@@ -0,0 +1,306 @@
# Serbian translation for gnome-shell-extensions.
# Copyright (C) 2012 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package.
# Милош Поповић <gpopac@gmail.com>, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=extensions\n"
"POT-Creation-Date: 2012-02-22 16:15+0000\n"
"PO-Revision-Date: 2012-02-27 00:12+0100\n"
"Last-Translator: Милош Поповић <gpopac@gmail.com>\n"
"Language-Team: Serbian <gnom@prevod.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n"
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:1
msgid "The alt tab behaviour."
msgstr "Понашање alt-tab тастера."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
msgid ""
"Sets the Alt-Tab behaviour. Possible values are: all_thumbnails and "
"workspace_icons. See the configuration dialogs for details."
msgstr ""
"Одређује како се понашају Alt-Tab тастери. Исправне вредности су "
"„all_thumbnails“ (сви умањени прикази) и „workspace_icons“ (иконице радних "
"површи). Погледајте прозорчиће за подешавање за више података."
#: ../extensions/alternate-tab/prefs.js:27
msgid "All & Thumbnails"
msgstr "Све и умањени прикази"
#: ../extensions/alternate-tab/prefs.js:28
msgid ""
"This mode presents all applications from all workspaces in one selection "
"list. Instead of using the application icon of every window, it uses small "
"thumbnails resembling the window itself."
msgstr ""
"Овај режим приказује све програме са свих радних простора унутар једног "
"списка. Уместо употребе иконица програма за сваки прозор користи се умањени "
"приказ програма."
#: ../extensions/alternate-tab/prefs.js:34
msgid "Workspace & Icons"
msgstr "Радни простори и иконице"
#: ../extensions/alternate-tab/prefs.js:35
msgid ""
"This mode let's you switch between the applications of your current "
"workspace and gives you additionally the option to switch to the last used "
"application of your previous workspace. This is always the last symbol in "
"the list and is segregated by a separator/vertical line if available. \n"
"Every window is represented by its application icon."
msgstr ""
"Овај режим вам омогућава да мењате програме са тренутног радног простора и "
"даје вам додатну могућност да се пребаците на последњи коришћен програм са "
"другог радног простора. Он је увек приказан као последњи у списку, раздвојен "
"од осталих.\n"
"Сваки прозор је представљен иконицом програма."
#: ../extensions/alternate-tab/prefs.js:41
msgid "Move current selection to front before closing the popup"
msgstr "Помери тренутни избор напред пре затварања искачућег"
#: ../extensions/alternate-tab/prefs.js:58
msgid ""
"The Alternate Tab can be used in different modes, that affect the way "
"windows are chosen and presented."
msgstr ""
"Измењивач Tab тастера се може користити у различитим режимима који одређују "
"како се прозори бирају и приказују."
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:64
msgid "Suspend"
msgstr "Обустави"
#: ../extensions/alternative-status-menu/extension.js:69
msgid "Hibernate"
msgstr "Замрзни"
#: ../extensions/alternative-status-menu/extension.js:74
msgid "Power Off..."
msgstr "Искључи..."
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
msgid "Application and workspace list"
msgstr "Програм и списак радних простора"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
msgid ""
"A list of strings, each containing an application id (desktop file name), "
"followed by a colon and the workspace number"
msgstr ""
"Списак ниски од којих свака садржи иб програма (име .desktop датотеке), "
"зарез и број радног простора."
#: ../extensions/auto-move-windows/prefs.js:55
msgid "Application"
msgstr "Програм"
#: ../extensions/auto-move-windows/prefs.js:64
#: ../extensions/auto-move-windows/prefs.js:106
msgid "Workspace"
msgstr "Радни простор"
#: ../extensions/auto-move-windows/prefs.js:80
msgid "Add rule"
msgstr "Додај правило"
#: ../extensions/auto-move-windows/prefs.js:94
msgid "Create new matching rule"
msgstr "Додаје ново правило за преклапање"
#: ../extensions/auto-move-windows/prefs.js:98
msgid "Add"
msgstr "Додај"
#: ../extensions/dock/extension.js:489
msgid "Drag here to add favorites"
msgstr "Превуците овде за додавање међу омиљене"
#: ../extensions/dock/extension.js:815
msgid "New Window"
msgstr "Нови прозор"
#: ../extensions/dock/extension.js:817
msgid "Quit Application"
msgstr "Напусти програм"
#: ../extensions/dock/extension.js:822
msgid "Remove from Favorites"
msgstr "Уклони из омиљених"
#: ../extensions/dock/extension.js:823
msgid "Add to Favorites"
msgstr "Додај омилјене"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:1
msgid "Position of the dock"
msgstr "Место површи са иконицама"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid ""
"Sets the position of the dock in the screen. Allowed values are 'right' or "
"'left'"
msgstr ""
"Подешава место где се налази површ са иконицама. Дозвољене су вредности "
"„right“ (десно) и „left“ (лево)"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Icon size"
msgstr "Величина иконице"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Sets icon size of the dock."
msgstr "Одређује величину површи за иконице."
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
msgid "Enable/disable autohide"
msgstr "Аутоматско скривање"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
msgid "Autohide effect"
msgstr "Ефекат аутоматског скривања"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:7
msgid ""
"Sets the effect of the hide dock. Allowed values are 'resize', 'rescale' and "
"'move'"
msgstr ""
"Одређује ефекат који се приказује приликом сакривања површи са иконицама. "
"Дозвољене вредности су: „resize“ (промени величину), „rescale“ (промени "
"величину уз задржавање размере) и „move“ (премести)"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:8
msgid "Autohide duration"
msgstr "Трајање сакривања"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:9
msgid "Sets the time duration of the autohide effect."
msgstr "Одређује дужину трајања ефекта сакривања."
#: ../extensions/drive-menu/extension.js:66
msgid "Open file manager"
msgstr "Отвори управника датотека"
#: ../extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "Поздравна порука!"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:1
msgid "Alternative greeting text."
msgstr "Промена поздравног текста."
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:2
msgid ""
"If not empty, it contains the text that will be shown when clicking on the "
"panel."
msgstr ""
"Уколико упишете текст овде, он ће бити приказан када кликнете на панел."
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:30
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and "
"as such it has little functionality on its own.\n"
"Nevertheless it's possible to customize the greeting message."
msgstr ""
"Овај пример само показује како се пише добро проширење за Гномову Шкољку, "
"тако да вам не значи пуно.\n"
"Ипак, можете изменити поздравну поруку помоћу овог проширења."
#: ../extensions/example/prefs.js:36
msgid "Message:"
msgstr "Порука:"
#: ../extensions/gajim/extension.js:227
#, c-format
msgid "%s is away."
msgstr "%s је одсутан."
#: ../extensions/gajim/extension.js:230
#, c-format
msgid "%s is offline."
msgstr "%s је недоступан."
#: ../extensions/gajim/extension.js:233
#, c-format
msgid "%s is online."
msgstr "%s је доступан."
#: ../extensions/gajim/extension.js:236
#, c-format
msgid "%s is busy."
msgstr "%s је заузет."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:1
msgid "Use more screen for windows"
msgstr "Користи више простора за прозор"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
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 ""
"Користи више простора за смештање умањених приказа прозора у зависности од "
"величине екрана,. Ово подешавање важи само уколико је стратегија размештања "
"постављена на природно."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
msgid "Place window captions on top"
msgstr "Испиши натписе прозора изнад приказа"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
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 ""
"Уколико је постављено, натписи прозора ће бити постављени на врх њихових "
"умањених приказа уместо испод приказа. Промена ових подешавања захтева да "
"поново покренете Гномову Шкољку."
#: ../extensions/places-menu/extension.js:37
msgid "Removable Devices"
msgstr "Уклоњиви уређаји"
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:1
msgid "Theme name"
msgstr "Назив теме"
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Назив теме који се учитава из датотеке ~/.themes/name/gnome-shell"
#: ../extensions/workspace-indicator/extension.js:24
msgid "Workspace Indicator"
msgstr "Показатељ прозора"
#: ../extensions/xrandr-indicator/extension.js:30
msgid "Normal"
msgstr "Уобичајено"
#: ../extensions/xrandr-indicator/extension.js:31
msgid "Left"
msgstr "Лево"
#: ../extensions/xrandr-indicator/extension.js:32
msgid "Right"
msgstr "Десно"
#: ../extensions/xrandr-indicator/extension.js:33
msgid "Upside-down"
msgstr "Наопачке"
#: ../extensions/xrandr-indicator/extension.js:82
msgid "Configure display settings..."
msgstr "Подешавања екрана..."

306
po/sr@latin.po Normal file
View File

@@ -0,0 +1,306 @@
# Serbian translation for gnome-shell-extensions.
# Copyright (C) 2012 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package.
# Miloš Popović <gpopac@gmail.com>, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell-extensions master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=extensions\n"
"POT-Creation-Date: 2012-02-22 16:15+0000\n"
"PO-Revision-Date: 2012-02-27 00:12+0100\n"
"Last-Translator: Miloš Popović <gpopac@gmail.com>\n"
"Language-Team: Serbian <gnom@prevod.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n"
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:1
msgid "The alt tab behaviour."
msgstr "Ponašanje alt-tab tastera."
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
msgid ""
"Sets the Alt-Tab behaviour. Possible values are: all_thumbnails and "
"workspace_icons. See the configuration dialogs for details."
msgstr ""
"Određuje kako se ponašaju Alt-Tab tasteri. Ispravne vrednosti su "
"„all_thumbnails“ (svi umanjeni prikazi) i „workspace_icons“ (ikonice radnih "
"površi). Pogledajte prozorčiće za podešavanje za više podataka."
#: ../extensions/alternate-tab/prefs.js:27
msgid "All & Thumbnails"
msgstr "Sve i umanjeni prikazi"
#: ../extensions/alternate-tab/prefs.js:28
msgid ""
"This mode presents all applications from all workspaces in one selection "
"list. Instead of using the application icon of every window, it uses small "
"thumbnails resembling the window itself."
msgstr ""
"Ovaj režim prikazuje sve programe sa svih radnih prostora unutar jednog "
"spiska. Umesto upotrebe ikonica programa za svaki prozor koristi se umanjeni "
"prikaz programa."
#: ../extensions/alternate-tab/prefs.js:34
msgid "Workspace & Icons"
msgstr "Radni prostori i ikonice"
#: ../extensions/alternate-tab/prefs.js:35
msgid ""
"This mode let's you switch between the applications of your current "
"workspace and gives you additionally the option to switch to the last used "
"application of your previous workspace. This is always the last symbol in "
"the list and is segregated by a separator/vertical line if available. \n"
"Every window is represented by its application icon."
msgstr ""
"Ovaj režim vam omogućava da menjate programe sa trenutnog radnog prostora i "
"daje vam dodatnu mogućnost da se prebacite na poslednji korišćen program sa "
"drugog radnog prostora. On je uvek prikazan kao poslednji u spisku, razdvojen "
"od ostalih.\n"
"Svaki prozor je predstavljen ikonicom programa."
#: ../extensions/alternate-tab/prefs.js:41
msgid "Move current selection to front before closing the popup"
msgstr "Pomeri trenutni izbor napred pre zatvaranja iskačućeg"
#: ../extensions/alternate-tab/prefs.js:58
msgid ""
"The Alternate Tab can be used in different modes, that affect the way "
"windows are chosen and presented."
msgstr ""
"Izmenjivač Tab tastera se može koristiti u različitim režimima koji određuju "
"kako se prozori biraju i prikazuju."
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:64
msgid "Suspend"
msgstr "Obustavi"
#: ../extensions/alternative-status-menu/extension.js:69
msgid "Hibernate"
msgstr "Zamrzni"
#: ../extensions/alternative-status-menu/extension.js:74
msgid "Power Off..."
msgstr "Isključi..."
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
msgid "Application and workspace list"
msgstr "Program i spisak radnih prostora"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:2
msgid ""
"A list of strings, each containing an application id (desktop file name), "
"followed by a colon and the workspace number"
msgstr ""
"Spisak niski od kojih svaka sadrži ib programa (ime .desktop datoteke), "
"zarez i broj radnog prostora."
#: ../extensions/auto-move-windows/prefs.js:55
msgid "Application"
msgstr "Program"
#: ../extensions/auto-move-windows/prefs.js:64
#: ../extensions/auto-move-windows/prefs.js:106
msgid "Workspace"
msgstr "Radni prostor"
#: ../extensions/auto-move-windows/prefs.js:80
msgid "Add rule"
msgstr "Dodaj pravilo"
#: ../extensions/auto-move-windows/prefs.js:94
msgid "Create new matching rule"
msgstr "Dodaje novo pravilo za preklapanje"
#: ../extensions/auto-move-windows/prefs.js:98
msgid "Add"
msgstr "Dodaj"
#: ../extensions/dock/extension.js:489
msgid "Drag here to add favorites"
msgstr "Prevucite ovde za dodavanje među omiljene"
#: ../extensions/dock/extension.js:815
msgid "New Window"
msgstr "Novi prozor"
#: ../extensions/dock/extension.js:817
msgid "Quit Application"
msgstr "Napusti program"
#: ../extensions/dock/extension.js:822
msgid "Remove from Favorites"
msgstr "Ukloni iz omiljenih"
#: ../extensions/dock/extension.js:823
msgid "Add to Favorites"
msgstr "Dodaj omiljene"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:1
msgid "Position of the dock"
msgstr "Mesto površi sa ikonicama"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
msgid ""
"Sets the position of the dock in the screen. Allowed values are 'right' or "
"'left'"
msgstr ""
"Podešava mesto gde se nalazi površ sa ikonicama. Dozvoljene su vrednosti "
"„right“ (desno) i „left“ (levo)"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
msgid "Icon size"
msgstr "Veličina ikonice"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
msgid "Sets icon size of the dock."
msgstr "Određuje veličinu površi za ikonice."
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
msgid "Enable/disable autohide"
msgstr "Automatsko skrivanje"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
msgid "Autohide effect"
msgstr "Efekat automatskog skrivanja"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:7
msgid ""
"Sets the effect of the hide dock. Allowed values are 'resize', 'rescale' and "
"'move'"
msgstr ""
"Određuje efekat koji se prikazuje prilikom sakrivanja površi sa ikonicama. "
"Dozvoljene vrednosti su: „resize“ (promeni veličinu), „rescale“ (promeni "
"veličinu uz zadržavanje razmere) i „move“ (premesti)"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:8
msgid "Autohide duration"
msgstr "Trajanje sakrivanja"
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:9
msgid "Sets the time duration of the autohide effect."
msgstr "Određuje dužinu trajanja efekta sakrivanja."
#: ../extensions/drive-menu/extension.js:66
msgid "Open file manager"
msgstr "Otvori upravnika datoteka"
#: ../extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "Pozdravna poruka!"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:1
msgid "Alternative greeting text."
msgstr "Promena pozdravnog teksta."
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:2
msgid ""
"If not empty, it contains the text that will be shown when clicking on the "
"panel."
msgstr ""
"Ukoliko upišete tekst ovde, on će biti prikazan kada kliknete na panel."
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:30
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and "
"as such it has little functionality on its own.\n"
"Nevertheless it's possible to customize the greeting message."
msgstr ""
"Ovaj primer samo pokazuje kako se piše dobro proširenje za Gnomovu Školjku, "
"tako da vam ne znači puno.\n"
"Ipak, možete izmeniti pozdravnu poruku pomoću ovog proširenja."
#: ../extensions/example/prefs.js:36
msgid "Message:"
msgstr "Poruka:"
#: ../extensions/gajim/extension.js:227
#, c-format
msgid "%s is away."
msgstr "%s je odsutan."
#: ../extensions/gajim/extension.js:230
#, c-format
msgid "%s is offline."
msgstr "%s je nedostupan."
#: ../extensions/gajim/extension.js:233
#, c-format
msgid "%s is online."
msgstr "%s je dostupan."
#: ../extensions/gajim/extension.js:236
#, c-format
msgid "%s is busy."
msgstr "%s je zauzet."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:1
msgid "Use more screen for windows"
msgstr "Koristi više prostora za prozor"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
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 ""
"Koristi više prostora za smeštanje umanjenih prikaza prozora u zavisnosti od "
"veličine ekrana,. Ovo podešavanje važi samo ukoliko je strategija razmeštanja "
"postavljena na prirodno."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
msgid "Place window captions on top"
msgstr "Ispiši natpise prozora iznad prikaza"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
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 ""
"Ukoliko je postavljeno, natpisi prozora će biti postavljeni na vrh njihovih "
"umanjenih prikaza umesto ispod prikaza. Promena ovih podešavanja zahteva da "
"ponovo pokrenete Gnomovu Školjku."
#: ../extensions/places-menu/extension.js:37
msgid "Removable Devices"
msgstr "Uklonjivi uređaji"
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:1
msgid "Theme name"
msgstr "Naziv teme"
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Naziv teme koji se učitava iz datoteke ~/.themes/name/gnome-shell"
#: ../extensions/workspace-indicator/extension.js:24
msgid "Workspace Indicator"
msgstr "Pokazatelj prozora"
#: ../extensions/xrandr-indicator/extension.js:30
msgid "Normal"
msgstr "Uobičajeno"
#: ../extensions/xrandr-indicator/extension.js:31
msgid "Left"
msgstr "Levo"
#: ../extensions/xrandr-indicator/extension.js:32
msgid "Right"
msgstr "Desno"
#: ../extensions/xrandr-indicator/extension.js:33
msgid "Upside-down"
msgstr "Naopačke"
#: ../extensions/xrandr-indicator/extension.js:82
msgid "Configure display settings..."
msgstr "Podešavanja ekrana..."

10
settings.mk Normal file
View File

@@ -0,0 +1,10 @@
gschemas_in = $(gschemaname).gschema.xml.in
@INTLTOOL_XML_NOMERGE_RULE@
gsettings_SCHEMAS = $(gschemas_in:.xml.in=.xml)
@GSETTINGS_RULES@
CLEANFILES += $(gschemas_in:.xml.in=.valid) $(gsettings_SCHEMAS)
EXTRA_DIST += $(gschemas_in)