Compare commits

...

29 Commits

Author SHA1 Message Date
Florian Müllner
8c496fd1a6 Bump version to 3.15.3
To go along GNOME Shell 3.15.3
2014-12-19 15:17:35 +01:00
Florian Müllner
8b59c031d5 window-list: Do not hardcode overrides schema
Classic mode uses a different overrides schema, so make sure we use the
correct setting instead of hardcoding the usual org.gnome.shell.overrides
schema.

https://bugzilla.gnome.org/show_bug.cgi?id=737486
2014-12-19 15:15:44 +01:00
Sylvain Pasche
a3f352d0c3 window-list: Option to show the window list on all monitors
A new setting "show-on-all-monitors" (false by default) is available to
show window lists on all connected monitors.
The Extension object monitors conditions that require the list of
windows to be rebuilt. The WindowList and Button classes have a new
"perMonitor" property that indicates they should handle windows on
their own monitor only.

https://bugzilla.gnome.org/show_bug.cgi?id=737486
2014-12-19 15:15:44 +01:00
Sylvain Pasche
e80b790b78 window-list: Refactor {Window,App}Button shared code into BaseButton
BaseButton is a new class that shares the common logic of WindowButton
and AppButton. AppButton is passed to AppContextMenu so that it can reuse
code from the now public getWindowList() method.

https://bugzilla.gnome.org/show_bug.cgi?id=737486
2014-12-19 15:15:44 +01:00
Piotr Drąg
0dfc4e9fbc Updated POTFILES.in 2014-12-17 18:36:03 +01:00
Matthias Clasen
43c4e7fa2e Clean up classic session definition
The gnome-shell-classic desktop file just launches gnome-shell
without options these days, so we don't need a separate desktop file.

https://bugzilla.gnome.org/show_bug.cgi?id=741660
2014-12-17 10:59:51 -05:00
Inaki Larranaga Murgoitio
5688cea552 Updated Basque language 2014-12-17 16:35:08 +01:00
Baurzhan Muftakhidinov
6d2b588740 Updated Kazakh translation 2014-12-14 14:10:25 +00:00
Muhammet Kara
72dc3234a7 Updated Turkish translation 2014-12-04 09:07:20 +00:00
Balázs Úr
c8f9b23636 Updated Hungarian translation 2014-12-03 15:55:58 +00:00
Maxime Henrion
768bad6e1e Skip over XDG directories that cannot be found.
This fixes loading the places menu gnome-shell extension when the XDG
directories have not been configured.

https://bugzilla.gnome.org/show_bug.cgi?id=741033
2014-12-02 18:59:30 +01:00
Daniel Șerbănescu
bfe60bd2d9 Added Romanian Translation 2014-11-30 12:19:47 +01:00
Florian Müllner
5ba4e68f17 classic: Install high-contrast theme variant
The classic style is decidedly lower contrast than the default
style, so the high-contrast variant could prove really useful
here. However for now, just override the default icon style as
in the default session.

https://bugzilla.gnome.org/show_bug.cgi?id=740447
2014-11-29 18:13:58 +01:00
Florian Müllner
8c6644f1be Revert "user-theme: Temporarily work around a gnome-shell regression"
The issue has been fixed in gnome-shell master, so we can revert the
workaround.
2014-11-27 14:49:43 +00:00
Florian Müllner
71fa03c4ea Bump version to 3.15.2
To go along GNOME Shell 3.15.2
2014-11-27 14:47:10 +00:00
Florian Müllner
dd3c7ca199 user-theme: Temporarily work around a gnome-shell regression
setThemeStylesheet() stopped accepting %null to revert to the default
stylesheet. The issue is fixed in gnome-shell master, but work around
it for 3.15.2 to not ship broken (again).
2014-11-27 14:42:01 +00:00
Sylvain Pasche
5c2d13ec51 window-list: Move messageTray patching to the WindowList class
Move messageTray patching form the Extension object to the WindowList
class. Moreover, only do the patching if the window list is on the bottom
monitor. This refactoring will make it easier to have several instances
of WindowList (one on each monitor).

https://bugzilla.gnome.org/show_bug.cgi?id=737486
2014-11-26 20:00:50 +01:00
Sylvain Pasche
5fc66444b6 window-list: Refactoring to use an Extension object
Move the global state into a new Extension object. This is in
preparation for adding more logic to the Extension object.

https://bugzilla.gnome.org/show_bug.cgi?id=737486
2014-11-26 20:00:50 +01:00
Sylvain Pasche
57bfb9400e window-list: _pointerInTray was renamed to _pointerInNotification in bug 695800
https://bugzilla.gnome.org/show_bug.cgi?id=737486
2014-11-26 20:00:50 +01:00
Sylvain Pasche
4a1f49586d window-list: Disconnect drag and drop handlers
https://bugzilla.gnome.org/show_bug.cgi?id=737486
2014-11-26 20:00:49 +01:00
Florian Müllner
92012f6626 apps-menu: Center app labels
Currently labels are not vertically centered, unlike icons.
Fix this.

https://bugzilla.gnome.org/show_bug.cgi?id=740724
2014-11-26 19:06:41 +01:00
Florian Müllner
92b7c44e6d apps-menu: Update menu arrow to use an icon
gnome-shell no longer uses labels with UTF8 arrows, so the currently
used arrow is no longer consistent with other menus; fix that.

https://bugzilla.gnome.org/show_bug.cgi?id=740725
2014-11-26 18:54:18 +01:00
Marek Černocký
3a023a3cba Updated Czech translation 2014-11-26 09:11:41 +01:00
Florian Müllner
0a0d273d32 style: Inherit default stylesheet from resource
The default stylesheet has moved into a GResource, so we can no
longer address it with a relative path.

https://bugzilla.gnome.org/show_bug.cgi?id=740318
2014-11-18 16:08:07 +01:00
Trần Ngọc Quân
1f300838e8 Update Vietnamese translation
Signed-off-by: Trần Ngọc Quân <vnwildman@gmail.com>
2014-11-15 14:46:47 +07:00
Florian Müllner
4da36684ad drive-menu: Adjust for renamed .desktop file name
Nautilus now uses reverse domain notation for its .desktop file,
adjust for that.

https://bugzilla.gnome.org/show_bug.cgi?id=739931
2014-11-12 19:53:13 +01:00
Florian Müllner
109bdd1cd0 drive-menu: Update for gnome-shell changes
Since shell commit 3227d4f3edad, Shell.Global.create_app_launch_context()
expects additional parameters.
2014-11-12 19:51:33 +01:00
Jorge Perez Perez
a351dd8c5c Update Aragonese translation 2014-11-06 21:10:19 +01:00
Yosef Or Boczko
1b7a3e8f36 Updated Hebrew translation 2014-11-04 18:46:05 +02:00
24 changed files with 1038 additions and 471 deletions

14
NEWS
View File

@@ -1,3 +1,17 @@
3.15.3
======
* classic-mode: Add high-contrast theme variant, drop .desktop file
* places-menu: Fix error when XDG user directories are not set up
* window-list: Add option to show on all monitors
* updated translations (eu, hu, kk, ro, tr)
3.15.2
======
* removable-drive, user-theme, window-list: Update for gnome-shell changes
* apps-menu: Fix some visual glitches
* Fix classic mode style
* updated translations (an, cs, he, vi)
3.15.1
======
* updated translations (es, nb)

View File

@@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell-extensions],[3.15.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&component=extensions])
AC_INIT([gnome-shell-extensions],[3.15.3],[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,10 +1,5 @@
include $(top_srcdir)/include.mk
desktopdir = $(datadir)/applications
desktop_in_in_files = gnome-shell-classic.desktop.in.in
desktop_in_files = $(desktop_in_in_files:.desktop.in.in=.desktop.in)
desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
sessiondir = $(datadir)/gnome-session/sessions
session_in_in_files = gnome-classic.session.desktop.in.in
session_in_files = $(session_in_in_files:.session.desktop.in.in=.session.desktop.in)
@@ -20,12 +15,13 @@ mode_DATA = $(mode_in_files:.json.in=.json)
themedir = $(datadir)/gnome-shell/theme
theme_DATA = \
$(srcdir)/classic-process-working.svg \
$(srcdir)/classic-toggle-off-intl.svg \
$(srcdir)/classic-toggle-off-us.svg \
$(srcdir)/classic-toggle-on-intl.svg \
$(srcdir)/classic-toggle-on-us.svg \
$(srcdir)/gnome-classic.css \
$(srcdir)/classic-process-working.svg \
$(srcdir)/classic-toggle-off-intl.svg \
$(srcdir)/classic-toggle-off-us.svg \
$(srcdir)/classic-toggle-on-intl.svg \
$(srcdir)/classic-toggle-on-us.svg \
$(srcdir)/gnome-classic.css \
$(srcdir)/gnome-classic-high-contrast.css \
$(NULL)
gsettings_in_files = org.gnome.shell.extensions.classic-overrides.gschema.xml.in
@@ -55,7 +51,6 @@ extension_list:=$(subst $(space),$(comma),$(extensions))
@INTLTOOL_DESKTOP_RULE@
EXTRA_DIST = \
$(desktop_in_in_files) \
$(session_in_in_files) \
$(xsession_in_files) \
$(mode_in_files) \
@@ -64,7 +59,6 @@ EXTRA_DIST = \
$(NULL)
CLEANFILES = \
$(desktop_DATA) \
$(session_DATA) \
$(xsession_DATA) \
$(mode_DATA) \

View File

@@ -0,0 +1,5 @@
@import url("gnome-classic.css");
stage {
-st-icon-style: symbolic;
}

View File

@@ -1,4 +1,4 @@
@import url("gnome-shell.css");
@import url("resource:///org/gnome/shell/theme/gnome-shell.css");
/* FIXME:
- white edge highlight with text-shadow and icon-shadow for panel-button

View File

@@ -1,3 +1,3 @@
[GNOME Session]
_Name=GNOME Classic
RequiredComponents=gnome-shell-classic;gnome-settings-daemon;nautilus-classic;
RequiredComponents=gnome-shell;gnome-settings-daemon;nautilus-classic;

View File

@@ -1,17 +0,0 @@
[Desktop Entry]
Type=Application
_Name=GNOME Shell Classic
_Comment=Window management and application launching
Exec=@bindir@/gnome-shell
TryExec=@bindir@/gnome-shell
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-shell
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-Version=@VERSION@
Categories=GNOME;GTK;Core;
OnlyShowIn=GNOME;
NoDisplay=true
X-GNOME-Autostart-Phase=WindowManager
X-GNOME-Provides=panel;windowmanager;
X-GNOME-Autostart-Notify=true
X-GNOME-AutoRestart=false

View File

@@ -58,7 +58,8 @@ const ApplicationMenuItem = new Lang.Class({
this._iconBin = new St.Bin();
this.actor.add_child(this._iconBin);
let appLabel = new St.Label({ text: app.get_name() });
let appLabel = new St.Label({ text: app.get_name(), y_expand: true,
y_align: Clutter.ActorAlign.CENTER });
this.actor.add_child(appLabel, { expand: true });
this.actor.label_actor = appLabel;
@@ -283,9 +284,7 @@ const ApplicationsButton = new Lang.Class({
y_expand: true,
y_align: Clutter.ActorAlign.CENTER });
hbox.add_child(this._label);
hbox.add_child(new St.Label({ text: '\u25BE',
y_expand: true,
y_align: Clutter.ActorAlign.CENTER }));
hbox.add_child(PopupMenu.arrowIcon(St.Side.BOTTOM));
this.actor.add_actor(hbox);
this.actor.name = 'panelApplications';

View File

@@ -108,8 +108,9 @@ const MountMenuItem = new Lang.Class({
},
activate: function(event) {
let context = global.create_app_launch_context(event.get_time(), -1);
Gio.AppInfo.launch_default_for_uri(this.mount.get_root().get_uri(),
global.create_app_launch_context());
context);
this.parent(event);
}
@@ -149,7 +150,7 @@ const DriveMenu = new Lang.Class({
this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
this.menu.addAction(_("Open File"), function(event) {
let appSystem = Shell.AppSystem.get_default();
let app = appSystem.lookup_app('nautilus.desktop');
let app = appSystem.lookup_app('org.gnome.Nautilus.desktop');
app.activate_full(-1, event.get_time());
});

View File

@@ -202,7 +202,7 @@ const PlacesManager = new Lang.Class({
let specials = [];
for (let i = 0; i < DEFAULT_DIRECTORIES.length; i++) {
let specialPath = GLib.get_user_special_dir(DEFAULT_DIRECTORIES[i]);
if (specialPath == homePath)
if (specialPath == null || specialPath == homePath)
continue;
let file = Gio.File.new_for_path(specialPath), info;

View File

@@ -53,7 +53,7 @@ function _onMenuStateChanged(menu, isOpen) {
let [x, y,] = global.get_pointer();
let actor = global.stage.get_actor_at_pos(Clutter.PickMode.REACTIVE, x, y);
if (windowList.actor.contains(actor))
if (Me.stateObj.someWindowListContains(actor))
actor.sync_hover();
}
@@ -186,46 +186,41 @@ const WindowTitle = new Lang.Class({
});
const WindowButton = new Lang.Class({
Name: 'WindowButton',
const BaseButton = new Lang.Class({
Name: 'BaseButton',
Abstract: true,
_init: function(metaWindow) {
this.metaWindow = metaWindow;
_init: function(perMonitor, monitorIndex) {
this._perMonitor = perMonitor;
this._monitorIndex = monitorIndex;
this._windowTitle = new WindowTitle(this.metaWindow);
this.actor = new St.Button({ style_class: 'window-button',
x_fill: true,
can_focus: true,
button_mask: St.ButtonMask.ONE |
St.ButtonMask.THREE,
child: this._windowTitle.actor });
St.ButtonMask.THREE });
this.actor._delegate = this;
this._menuManager = new PopupMenu.PopupMenuManager(this);
this._contextMenu = new WindowContextMenu(this.actor, this.metaWindow);
this._contextMenu.connect('open-state-changed', _onMenuStateChanged);
this._contextMenu.actor.hide();
this._menuManager.addMenu(this._contextMenu);
Main.uiGroup.add_actor(this._contextMenu.actor);
this.actor.connect('allocation-changed',
Lang.bind(this, this._updateIconGeometry));
this.actor.connect('clicked', Lang.bind(this, this._onClicked));
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
this.actor.connect('popup-menu', Lang.bind(this, this._onPopupMenu));
this._contextMenuManager = new PopupMenu.PopupMenuManager(this);
this._switchWorkspaceId =
global.window_manager.connect('switch-workspace',
Lang.bind(this, this._updateVisibility));
this._workspaceChangedId =
this.metaWindow.connect('workspace-changed',
Lang.bind(this, this._updateVisibility));
this._updateVisibility();
this._notifyFocusId =
global.display.connect('notify::focus-window',
Lang.bind(this, this._updateStyle));
this._updateStyle();
if (this._perMonitor) {
this._windowEnteredMonitorId =
global.screen.connect('window-entered-monitor',
Lang.bind(this, this._windowEnteredOrLeftMonitor));
this._windowLeftMonitorId =
global.screen.connect('window-left-monitor',
Lang.bind(this, this._windowEnteredOrLeftMonitor));
}
},
get active() {
@@ -239,6 +234,103 @@ const WindowButton = new Lang.Class({
this._onClicked(this.actor, 1);
},
_onClicked: function(actor, button) {
throw new Error('Not implemented');
},
_canOpenPopupMenu: function() {
return true;
},
_onPopupMenu: function(actor) {
if (!this._canOpenPopupMenu() || this._contextMenu.isOpen)
return;
_openMenu(this._contextMenu);
},
_isFocused: function() {
throw new Error('Not implemented');
},
_updateStyle: function() {
if (this._isFocused())
this.actor.add_style_class_name('focused');
else
this.actor.remove_style_class_name('focused');
},
_windowEnteredOrLeftMonitor: function(metaScreen, monitorIndex, metaWindow) {
throw new Error('Not implemented');
},
_isWindowVisible: function(window) {
let workspace = global.screen.get_active_workspace();
return !window.skip_taskbar &&
window.located_on_workspace(workspace) &&
(!this._perMonitor || window.get_monitor() == this._monitorIndex);
},
_updateVisibility: function() {
throw new Error('Not implemented');
},
_getIconGeometry: function() {
let rect = new Meta.Rectangle();
[rect.x, rect.y] = this.actor.get_transformed_position();
[rect.width, rect.height] = this.actor.get_transformed_size();
return rect;
},
_updateIconGeometry: function() {
throw new Error('Not implemented');
},
_onDestroy: function() {
global.window_manager.disconnect(this._switchWorkspaceId);
if (this._windowEnteredMonitorId)
global.screen.disconnect(this._windowEnteredMonitorId);
this._windowEnteredMonitorId = 0;
if (this._windowLeftMonitorId)
global.screen.disconnect(this._windowLeftMonitorId);
this._windowLeftMonitorId = 0;
}
});
const WindowButton = new Lang.Class({
Name: 'WindowButton',
Extends: BaseButton,
_init: function(metaWindow, perMonitor, monitorIndex) {
this.parent(perMonitor, monitorIndex);
this.metaWindow = metaWindow;
this._updateVisibility();
this._windowTitle = new WindowTitle(this.metaWindow);
this.actor.set_child(this._windowTitle.actor);
this._contextMenu = new WindowContextMenu(this.actor, this.metaWindow);
this._contextMenu.connect('open-state-changed', _onMenuStateChanged);
this._contextMenu.actor.hide();
this._contextMenuManager.addMenu(this._contextMenu);
Main.uiGroup.add_actor(this._contextMenu.actor);
this._workspaceChangedId =
this.metaWindow.connect('workspace-changed',
Lang.bind(this, this._updateVisibility));
this._notifyFocusId =
global.display.connect('notify::focus-window',
Lang.bind(this, this._updateStyle));
this._updateStyle();
},
_onClicked: function(actor, button) {
if (this._contextMenu.isOpen) {
this._contextMenu.close();
@@ -251,41 +343,35 @@ const WindowButton = new Lang.Class({
_openMenu(this._contextMenu);
},
_onPopupMenu: function(actor) {
if (this._contextMenu.isOpen)
return;
_openMenu(this._contextMenu);
_isFocused: function() {
return global.display.focus_window == this.metaWindow;
},
_updateStyle: function() {
this.parent();
if (this.metaWindow.minimized)
this.actor.add_style_class_name('minimized');
else
this.actor.remove_style_class_name('minimized');
},
if (global.display.focus_window == this.metaWindow)
this.actor.add_style_class_name('focused');
else
this.actor.remove_style_class_name('focused');
_windowEnteredOrLeftMonitor: function(metaScreen, monitorIndex, metaWindow) {
if (monitorIndex == this._monitorIndex && metaWindow == this.metaWindow)
this._updateVisibility();
},
_updateVisibility: function() {
let workspace = global.screen.get_active_workspace();
this.actor.visible = this.metaWindow.located_on_workspace(workspace);
this.actor.visible = this._isWindowVisible(this.metaWindow);
},
_updateIconGeometry: function() {
let rect = new Meta.Rectangle();
[rect.x, rect.y] = this.actor.get_transformed_position();
[rect.width, rect.height] = this.actor.get_transformed_size();
this.metaWindow.set_icon_geometry(rect);
this.metaWindow.set_icon_geometry(this._getIconGeometry());
},
_onDestroy: function() {
this.parent();
this.metaWindow.disconnect(this._workspaceChangedId);
global.window_manager.disconnect(this._switchWorkspaceId);
global.display.disconnect(this._notifyFocusId);
this._contextMenu.destroy();
}
@@ -296,14 +382,14 @@ const AppContextMenu = new Lang.Class({
Name: 'AppContextMenu',
Extends: PopupMenu.PopupMenu,
_init: function(source, app) {
_init: function(source, appButton) {
this.parent(source, 0.5, St.Side.BOTTOM);
this._app = app;
this._appButton = appButton;
this._minimizeItem = new PopupMenu.PopupMenuItem(_("Minimize all"));
this._minimizeItem.connect('activate', Lang.bind(this, function() {
this._getWindowList().forEach(function(w) {
this._appButton.getWindowList().forEach(function(w) {
w.minimize();
});
}));
@@ -311,7 +397,7 @@ const AppContextMenu = new Lang.Class({
this._unminimizeItem = new PopupMenu.PopupMenuItem(_("Unminimize all"));
this._unminimizeItem.connect('activate', Lang.bind(this, function() {
this._getWindowList().forEach(function(w) {
this._appButton.getWindowList().forEach(function(w) {
w.unminimize();
});
}));
@@ -319,7 +405,7 @@ const AppContextMenu = new Lang.Class({
this._maximizeItem = new PopupMenu.PopupMenuItem(_("Maximize all"));
this._maximizeItem.connect('activate', Lang.bind(this, function() {
this._getWindowList().forEach(function(w) {
this._appButton.getWindowList().forEach(function(w) {
w.maximize(Meta.MaximizeFlags.HORIZONTAL |
Meta.MaximizeFlags.VERTICAL);
});
@@ -328,7 +414,7 @@ const AppContextMenu = new Lang.Class({
this._unmaximizeItem = new PopupMenu.PopupMenuItem(_("Unmaximize all"));
this._unmaximizeItem.connect('activate', Lang.bind(this, function() {
this._getWindowList().forEach(function(w) {
this._appButton.getWindowList().forEach(function(w) {
w.unmaximize(Meta.MaximizeFlags.HORIZONTAL |
Meta.MaximizeFlags.VERTICAL);
});
@@ -337,22 +423,15 @@ const AppContextMenu = new Lang.Class({
let item = new PopupMenu.PopupMenuItem(_("Close all"));
item.connect('activate', Lang.bind(this, function() {
this._getWindowList().forEach(function(w) {
this._appButton.getWindowList().forEach(function(w) {
w.delete(global.get_current_time());
});
}));
this.addMenuItem(item);
},
_getWindowList: function() {
let workspace = global.screen.get_active_workspace();
return this._app.get_windows().filter(function(win) {
return !win.skip_taskbar && win.located_on_workspace(workspace);
});
},
open: function(animate) {
let windows = this._getWindowList();
let windows = this._appButton.getWindowList();
this._minimizeItem.actor.visible = windows.some(function(w) {
return !w.minimized;
});
@@ -372,21 +451,16 @@ const AppContextMenu = new Lang.Class({
const AppButton = new Lang.Class({
Name: 'AppButton',
Extends: BaseButton,
_init: function(app, perMonitor, monitorIndex) {
this.parent(perMonitor, monitorIndex);
_init: function(app) {
this.app = app;
this._updateVisibility();
let stack = new St.Widget({ layout_manager: new Clutter.BinLayout() });
this.actor = new St.Button({ style_class: 'window-button',
x_fill: true,
can_focus: true,
button_mask: St.ButtonMask.ONE |
St.ButtonMask.THREE,
child: stack });
this.actor._delegate = this;
this.actor.connect('allocation-changed',
Lang.bind(this, this._updateIconGeometry));
this.actor.set_child(stack);
this._singleWindowTitle = new St.Bin({ x_expand: true,
x_align: St.Align.START });
@@ -409,8 +483,7 @@ const AppButton = new Lang.Class({
this._menuManager.addMenu(this._menu);
Main.uiGroup.add_actor(this._menu.actor);
this._contextMenuManager = new PopupMenu.PopupMenuManager(this);
this._appContextMenu = new AppContextMenu(this.actor, this.app);
this._appContextMenu = new AppContextMenu(this.actor, this);
this._appContextMenu.connect('open-state-changed', _onMenuStateChanged);
this._appContextMenu.actor.hide();
Main.uiGroup.add_actor(this._appContextMenu.actor);
@@ -421,14 +494,6 @@ const AppButton = new Lang.Class({
function() {
this._icon.child = app.create_icon_texture(ICON_TEXTURE_SIZE);
}));
this.actor.connect('clicked', Lang.bind(this, this._onClicked));
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
this.actor.connect('popup-menu', Lang.bind(this, this._onPopupMenu));
this._switchWorkspaceId =
global.window_manager.connect('switch-workspace',
Lang.bind(this, this._updateVisibility));
this._updateVisibility();
this._windowsChangedId =
this.app.connect('windows-changed',
@@ -442,23 +507,30 @@ const AppButton = new Lang.Class({
this._updateStyle();
},
_updateVisibility: function() {
let workspace = global.screen.get_active_workspace();
this.actor.visible = this.app.is_on_workspace(workspace);
_windowEnteredOrLeftMonitor: function(metaScreen, monitorIndex, metaWindow) {
if (this._windowTracker.get_window_app(metaWindow) == this.app &&
monitorIndex == this._monitorIndex) {
this._updateVisibility();
this._windowsChanged();
}
},
_updateStyle: function() {
if (this._windowTracker.focus_app == this.app)
this.actor.add_style_class_name('focused');
else
this.actor.remove_style_class_name('focused');
_updateVisibility: function() {
if (!this._perMonitor) {
// fast path: use ShellApp API to avoid iterating over all windows.
let workspace = global.screen.get_active_workspace();
this.actor.visible = this.app.is_on_workspace(workspace);
} else {
this.actor.visible = this.getWindowList().length >= 1;
}
},
_isFocused: function() {
return this._windowTracker.focus_app == this.app;
},
_updateIconGeometry: function() {
let rect = new Meta.Rectangle();
[rect.x, rect.y] = this.actor.get_transformed_position();
[rect.width, rect.height] = this.actor.get_transformed_size();
let rect = this._getIconGeometry();
let windows = this.app.get_windows();
windows.forEach(function(w) {
@@ -467,15 +539,14 @@ const AppButton = new Lang.Class({
},
_getWindowList: function() {
let workspace = global.screen.get_active_workspace();
return this.app.get_windows().filter(function(win) {
return !win.skip_taskbar && win.located_on_workspace(workspace);
});
getWindowList: function() {
return this.app.get_windows().filter(Lang.bind(this, function(win) {
return this._isWindowVisible(win);
}));
},
_windowsChanged: function() {
let windows = this._getWindowList();
let windows = this.getWindowList();
this._singleWindowTitle.visible = windows.length == 1;
this._multiWindowTitle.visible = !this._singleWindowTitle.visible;
@@ -507,17 +578,6 @@ const AppButton = new Lang.Class({
},
get active() {
return this.actor.has_style_class_name('focused');
},
activate: function() {
if (this.active)
return;
this._onClicked(this.actor, 1);
},
_onClicked: function(actor, button) {
let menuWasOpen = this._menu.isOpen;
if (menuWasOpen)
@@ -531,7 +591,7 @@ const AppButton = new Lang.Class({
if (menuWasOpen)
return;
let windows = this._getWindowList();
let windows = this.getWindowList();
if (windows.length == 1) {
if (contextMenuWasOpen)
return;
@@ -555,20 +615,17 @@ const AppButton = new Lang.Class({
}
},
_onPopupMenu: function(actor) {
if (this._menu.isOpen || this._contextMenu.isOpen)
return;
_openMenu(this._contextMenu);
_canOpenPopupMenu: function() {
return !this._menu.isOpen;
},
_onMenuActivate: function(menu, child) {
child._window.activate(global.get_current_time());
},
_onDestroy: function() {
this.parent();
this._textureCache.disconnect(this._iconThemeChangedId);
global.window_manager.disconnect(this._switchWorkspaceId);
this._windowTracker.disconnect(this._notifyFocusId);
this.app.disconnect(this._windowsChangedId);
this._menu.destroy();
@@ -754,7 +811,10 @@ const WorkspaceIndicator = new Lang.Class({
const WindowList = new Lang.Class({
Name: 'WindowList',
_init: function() {
_init: function(perMonitor, monitor) {
this._perMonitor = perMonitor;
this._monitor = monitor;
this.actor = new St.Widget({ name: 'panel',
style_class: 'bottom-panel',
reactive: true,
@@ -782,37 +842,46 @@ const WindowList = new Lang.Class({
}));
this._windowList.connect('scroll-event', Lang.bind(this, this._onScrollEvent));
let indicatorsBox = new St.BoxLayout({ x_align: Clutter.ActorAlign.END });
box.add(indicatorsBox);
let indicatorsBox = new St.BoxLayout({ x_align: Clutter.ActorAlign.END });
box.add(indicatorsBox);
this._workspaceIndicator = new WorkspaceIndicator();
indicatorsBox.add(this._workspaceIndicator.container, { expand: false, y_fill: true });
this._workspaceSettings = this._getWorkspaceSettings();
this._workspacesOnlyOnPrimaryChangedId =
this._workspaceSettings.connect('changed::workspaces-only-on-primary',
Lang.bind(this, this._updateWorkspaceIndicatorVisibility));
this._updateWorkspaceIndicatorVisibility();
this._menuManager = new PopupMenu.PopupMenuManager(this);
this._menuManager.addMenu(this._workspaceIndicator.menu);
this._trayButton = new TrayButton();
indicatorsBox.add(this._trayButton.actor, { expand: false });
this._isOnBottomMonitor = this._monitor == Main.layoutManager.bottomMonitor;
if (this._isOnBottomMonitor) {
this._trayButton = new TrayButton();
indicatorsBox.add(this._trayButton.actor, { expand: false });
}
Main.layoutManager.addChrome(this.actor, { affectsStruts: true,
trackFullscreen: true });
Main.ctrlAltTabManager.addGroup(this.actor, _("Window List"), 'start-here-symbolic');
this.actor.width = this._monitor.width;
this.actor.set_position(this._monitor.x,
this._monitor.y + this._monitor.height - this.actor.height);
this._appSystem = Shell.AppSystem.get_default();
this._appStateChangedId =
this._appSystem.connect('app-state-changed',
Lang.bind(this, this._onAppStateChanged));
this._monitorsChangedId =
Main.layoutManager.connect('monitors-changed',
Lang.bind(this, this._updatePosition));
this._updatePosition();
this._keyboardVisiblechangedId =
Main.layoutManager.connect('keyboard-visible-changed',
Lang.bind(this, function(o, state) {
Main.layoutManager.keyboardBox.visible = state;
Main.uiGroup.set_child_above_sibling(windowList.actor,
Main.uiGroup.set_child_above_sibling(this.actor,
Main.layoutManager.keyboardBox);
this._updateKeyboardAnchor();
}));
@@ -840,6 +909,22 @@ const WindowList = new Lang.Class({
this._updateKeyboardAnchor();
this._updateMessageTrayAnchor();
}));
if (this._isOnBottomMonitor) {
let actor = this.actor;
this._bottomHoverChangedId =
actor.connect('notify::hover', Lang.bind(Main.messageTray,
function() {
this._pointerInNotification = actor.hover;
this._updateState();
}));
this._notificationParent = Main.messageTray._notificationWidget.get_parent();
Main.messageTray._notificationWidget.hide();
Main.messageTray._notificationWidget.reparent(this.actor);
Main.messageTray._notificationWidget.show();
}
this._updateMessageTrayAnchor();
this._fullscreenChangedId =
@@ -869,6 +954,13 @@ const WindowList = new Lang.Class({
this._groupingModeChanged();
},
_getWorkspaceSettings: function() {
let settings = global.get_overrides_settings();
if (settings.list_keys().indexOf('workspaces-only-on-primary') > -1)
return settings;
return new Gio.Settings({ schema_id: 'org.gnome.mutter' });
},
_onScrollEvent: function(actor, event) {
let direction = event.get_scroll_direction();
let diff = 0;
@@ -894,6 +986,12 @@ const WindowList = new Lang.Class({
children[active].activate();
},
_updateWorkspaceIndicatorVisibility: function() {
this._workspaceIndicator.actor.visible =
this._monitor == Main.layoutManager.primaryMonitor ||
!this._workspaceSettings.get_boolean('workspaces-only-on-primary');
},
_getPreferredUngroupedWindowListWidth: function() {
if (this._windowList.get_n_children() == 0)
return this._windowList.get_preferred_width(-1)[1];
@@ -903,13 +1001,21 @@ const WindowList = new Lang.Class({
let spacing = this._windowList.layout_manager.spacing;
let workspace = global.screen.get_active_workspace();
let nWindows = global.display.get_tab_list(Meta.TabList.NORMAL, workspace).length;
let windows = global.display.get_tab_list(Meta.TabList.NORMAL, workspace);
if (this._perMonitor) {
windows = windows.filter(Lang.bind(this, function(window) {
return window.get_monitor() == this._monitor.index;
}));
}
let nWindows = windows.length;
if (nWindows == 0)
return this._windowList.get_preferred_width(-1)[1];
return nWindows * childWidth + (nWindows - 1) * spacing;
},
_getMaxWindowListWidth: function() {
let indicatorsBox = this._trayButton.actor.get_parent();
let indicatorsBox = this._workspaceIndicator.actor.get_parent();
return this.actor.width - indicatorsBox.get_preferred_width(-1)[1];
},
@@ -960,12 +1066,6 @@ const WindowList = new Lang.Class({
}
},
_updatePosition: function() {
let monitor = Main.layoutManager.primaryMonitor;
this.actor.width = monitor.width;
this.actor.set_position(monitor.x, monitor.y + monitor.height - this.actor.height);
},
_updateKeyboardAnchor: function() {
if (!Main.keyboard.actor)
return;
@@ -975,8 +1075,10 @@ const WindowList = new Lang.Class({
},
_updateMessageTrayAnchor: function() {
let sameMonitor = Main.layoutManager.primaryIndex == Main.layoutManager.bottomIndex;
let anchorY = this.actor.visible && sameMonitor ? this.actor.height : 0;
if (!this._isOnBottomMonitor)
return;
let anchorY = this.actor.visible ? this.actor.height : 0;
Main.messageTray.actor.anchor_y = anchorY;
Main.messageTray._notificationWidget.anchor_y = -anchorY;
@@ -993,7 +1095,7 @@ const WindowList = new Lang.Class({
},
_addApp: function(app) {
let button = new AppButton(app);
let button = new AppButton(app, this._perMonitor, this._monitor.index);
this._windowList.layout_manager.pack(button.actor,
true, true, true,
Clutter.BoxAlignment.START,
@@ -1026,7 +1128,7 @@ const WindowList = new Lang.Class({
return;
}
let button = new WindowButton(win);
let button = new WindowButton(win, this._perMonitor, this._monitor.index);
this._windowList.layout_manager.pack(button.actor,
true, true, true,
Clutter.BoxAlignment.START,
@@ -1135,6 +1237,8 @@ const WindowList = new Lang.Class({
},
_onDestroy: function() {
this._workspaceSettings.disconnect(this._workspacesOnlyOnPrimaryChangedId);
this._workspaceIndicator.destroy();
Main.ctrlAltTabManager.removeGroup(this.actor);
@@ -1142,9 +1246,6 @@ const WindowList = new Lang.Class({
this._appSystem.disconnect(this._appStateChangedId);
this._appStateChangedId = 0;
Main.layoutManager.disconnect(this._monitorsChangedId);
this._monitorsChangedId = 0;
Main.layoutManager.disconnect(this._keyboardVisiblechangedId);
this._keyboardVisiblechangedId = 0;
@@ -1157,14 +1258,28 @@ const WindowList = new Lang.Class({
global.window_manager.disconnect(this._switchWorkspaceId);
this._switchWorkspaceId = 0;
Main.messageTray.actor.anchor_y = 0;
Main.messageTray._notificationWidget.anchor_y = 0;
if (this._bottomHoverChangedId)
this.actor.disconnect(this._bottomHoverChangedId);
this._bottomHoverChangedId = 0;
if (this._notificationParent) {
Main.messageTray._notificationWidget.reparent(this._notificationParent);
this._notificationParent = null;
}
if (this._isOnBottomMonitor) {
Main.messageTray.actor.anchor_y = 0;
Main.messageTray._notificationWidget.anchor_y = 0;
}
Main.overview.disconnect(this._overviewShowingId);
Main.overview.disconnect(this._overviewHidingId);
global.screen.disconnect(this._fullscreenChangedId);
Main.xdndHandler.disconnect(this._dragBeginId);
Main.xdndHandler.disconnect(this._dragEndId);
this._settings.disconnect(this._groupingModeChangedId);
let windows = global.get_window_actors();
@@ -1173,49 +1288,76 @@ const WindowList = new Lang.Class({
}
});
let windowList;
let injections = {};
let notificationParent;
const Extension = new Lang.Class({
Name: 'Extension',
_init: function() {
this._windowLists = null;
this._injections = {};
},
enable: function() {
this._windowLists = [];
this._injections['_trayDwellTimeout'] =
MessageTray.MessageTray.prototype._trayDwellTimeout;
MessageTray.MessageTray.prototype._trayDwellTimeout = function() {
return false;
};
this._settings = Convenience.getSettings();
this._showOnAllMonitorsChangedId =
this._settings.connect('changed::show-on-all-monitors',
Lang.bind(this, this._buildWindowLists));
this._monitorsChangedId =
Main.layoutManager.connect('monitors-changed',
Lang.bind(this, this._buildWindowLists));
this._buildWindowLists();
},
_buildWindowLists: function() {
this._windowLists.forEach(function(windowList) {
windowList.actor.destroy();
});
this._windowLists = [];
let showOnAllMonitors = this._settings.get_boolean('show-on-all-monitors');
Main.layoutManager.monitors.forEach(Lang.bind(this, function(monitor) {
if (showOnAllMonitors || monitor == Main.layoutManager.primaryMonitor)
this._windowLists.push(new WindowList(showOnAllMonitors, monitor));
}));
},
disable: function() {
if (!this._windowLists)
return;
this._settings.disconnect(this._showOnAllMonitorsChangedId);
this._showOnAllMonitorsChangedId = 0;
Main.layoutManager.disconnect(this._monitorsChangedId);
this._monitorsChangedId = 0;
this._windowLists.forEach(function(windowList) {
windowList.actor.hide();
windowList.actor.destroy();
});
this._windowLists = null;
for (let prop in this._injections)
MessageTray.MessageTray.prototype[prop] = this._injections[prop];
},
someWindowListContains: function(actor) {
return this._windowLists.some(function(windowList) {
return windowList.actor.contains(actor);
});
}
});
function init() {
}
function enable() {
windowList = new WindowList();
windowList.actor.connect('notify::hover', Lang.bind(Main.messageTray,
function() {
this._pointerInTray = windowList.actor.hover;
this._updateState();
}));
injections['_trayDwellTimeout'] = MessageTray.MessageTray.prototype._trayDwellTimeout;
MessageTray.MessageTray.prototype._trayDwellTimeout = function() {
return false;
};
notificationParent = Main.messageTray._notificationWidget.get_parent();
Main.messageTray._notificationWidget.hide();
Main.messageTray._notificationWidget.reparent(windowList.actor);
Main.messageTray._notificationWidget.show();
}
function disable() {
var prop;
if (!windowList)
return;
windowList.actor.hide();
if (notificationParent) {
Main.messageTray._notificationWidget.reparent(notificationParent);
notificationParent = null;
}
windowList.actor.destroy();
windowList = null;
for (prop in injections)
MessageTray.MessageTray.prototype[prop] = injections[prop];
return new Extension();
}

View File

@@ -15,5 +15,13 @@
window list. Possible values are "never", "auto" and "always".
</_description>
</key>
<key name="show-on-all-monitors" type="b">
<default>false</default>
<_summary>Show the window list on all monitors</_summary>
<_description>
Whether to show the window list on all connected monitors or
only on the primary one.
</_description>
</key>
</schema>
</schemalist>

View File

@@ -1,5 +1,6 @@
// -*- mode: js2; indent-tabs-mode: nil; js2-basic-offset: 4 -*-
const Gio = imports.gi.Gio;
const GObject = imports.gi.GObject;
const Gtk = imports.gi.Gtk;
const Lang = imports.lang;
@@ -19,25 +20,25 @@ function init() {
const WindowListPrefsWidget = new GObject.Class({
Name: 'WindowList.Prefs.Widget',
GTypeName: 'WindowListPrefsWidget',
Extends: Gtk.Frame,
Extends: Gtk.Grid,
_init: function(params) {
this.parent(params);
this.shadow_type = Gtk.ShadowType.NONE;
this.margin = 24;
this.row_spacing = 6;
this.orientation = Gtk.Orientation.VERTICAL;
let title = '<b>' + _("Window Grouping") + '</b>';
let titleLabel = new Gtk.Label({ use_markup: true, label: title });
this.set_label_widget(titleLabel);
let groupingLabel = '<b>' + _("Window Grouping") + '</b>';
this.add(new Gtk.Label({ label: groupingLabel, use_markup: true,
halign: Gtk.Align.START }));
let align = new Gtk.Alignment({ left_padding: 12 });
this.add(align);
let grid = new Gtk.Grid({ orientation: Gtk.Orientation.VERTICAL,
row_spacing: 6,
column_spacing: 6,
margin_top: 6 });
column_spacing: 6 });
align.add(grid);
this._settings = Convenience.getSettings();
@@ -70,6 +71,11 @@ const WindowListPrefsWidget = new GObject.Class({
this._settings.set_string('grouping-mode', mode);
}));
}
let check = new Gtk.CheckButton({ label: _("Show on all monitors"),
margin_top: 6 });
this._settings.bind('show-on-all-monitors', check, 'active', Gio.SettingsBindFlags.DEFAULT);
this.add(check);
}
});

View File

@@ -44,6 +44,7 @@ pa
pl
pt
pt_BR
ro
ru
sk
sl

View File

@@ -1,6 +1,5 @@
data/gnome-classic.desktop.in
data/gnome-classic.session.desktop.in.in
data/gnome-shell-classic.desktop.in.in
data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in
extensions/alternate-tab/prefs.js
extensions/apps-menu/extension.js

108
po/an.po
View File

@@ -8,15 +8,15 @@ 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: 2013-12-20 18:44+0000\n"
"PO-Revision-Date: 2013-12-21 16:24+0100\n"
"POT-Creation-Date: 2014-11-04 16:46+0000\n"
"PO-Revision-Date: 2014-11-04 20:13+0100\n"
"Last-Translator: Jorge Pérez Pérez <jorgtum@gmail.com>\n"
"Language-Team: Aragonese <softaragones@googlegroups.com>\n"
"Language: an\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.6.3\n"
"X-Generator: Poedit 1.6.10\n"
#: ../data/gnome-classic.desktop.in.h:1
#: ../data/gnome-classic.session.desktop.in.in.h:1
@@ -46,16 +46,28 @@ msgstr ""
"Ista clau sobrescribe a clau en org.gnome.mutter en executar o GNOME Shell."
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:3
msgid "Arrangement of buttons on the titlebar"
msgstr "Disposición d'os botons d'a barra de titol"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:4
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"Ista clau sobrescribe a clau en org.gnome.desktop.wm.preferences en executar "
"o GNOME Shell."
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:5
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Activar o mosaico en os cantos en arrocegar as finestras a los cantos d'a "
"finestra"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:4
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:6
msgid "Workspaces only on primary monitor"
msgstr "Arias de treballo nomás en a pantalla prencipal"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:5
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:7
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Retardar o cambeo d'o foco d'o churi dica que o puntero deixe de mover-se"
@@ -72,11 +84,11 @@ msgstr "Nomás l'icono de l'aplicación"
msgid "Thumbnail and application icon"
msgstr "Miniatura y icono de l'aplicación"
#: ../extensions/alternate-tab/prefs.js:37
#: ../extensions/alternate-tab/prefs.js:38
msgid "Present windows as"
msgstr "Presentar as finestras como"
#: ../extensions/alternate-tab/prefs.js:62
#: ../extensions/alternate-tab/prefs.js:69
msgid "Show only windows in the current workspace"
msgstr "Amostrar as finestras solament en l'aria de treballo actual"
@@ -105,37 +117,37 @@ msgstr ""
"(o nombre d'o fichero d'escritorio), seguiu por dos puntos y o numero de "
"l'aria de treballo"
#: ../extensions/auto-move-windows/prefs.js:55
#: ../extensions/auto-move-windows/prefs.js:60
msgid "Application"
msgstr "Aplicación"
#: ../extensions/auto-move-windows/prefs.js:64
#: ../extensions/auto-move-windows/prefs.js:106
#: ../extensions/auto-move-windows/prefs.js:69
#: ../extensions/auto-move-windows/prefs.js:127
msgid "Workspace"
msgstr "Aria de treballo"
#: ../extensions/auto-move-windows/prefs.js:80
msgid "Add rule"
#: ../extensions/auto-move-windows/prefs.js:85
msgid "Add Rule"
msgstr "Adhibir un regle"
#: ../extensions/auto-move-windows/prefs.js:94
#: ../extensions/auto-move-windows/prefs.js:106
msgid "Create new matching rule"
msgstr "Creyar un regle nuevo de coincidencia"
#: ../extensions/auto-move-windows/prefs.js:98
#: ../extensions/auto-move-windows/prefs.js:111
msgid "Add"
msgstr "Adhibir"
#: ../extensions/drive-menu/extension.js:73
#, c-format
#: ../extensions/drive-menu/extension.js:106
#, javascript-format
msgid "Ejecting drive '%s' failed:"
msgstr "Ha fallau en fer fuera o dispositivo «%s»"
#: ../extensions/drive-menu/extension.js:90
#: ../extensions/drive-menu/extension.js:123
msgid "Removable devices"
msgstr "Dispositivos extraíbles"
#: ../extensions/drive-menu/extension.js:117
#: ../extensions/drive-menu/extension.js:150
msgid "Open File"
msgstr "Ubrir o fichero"
@@ -155,9 +167,11 @@ msgstr ""
"Si no ye vuedo, contién o texto que s'amostrará quan se faiga clic en o "
"panel."
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:30
msgid "Message"
msgstr "Mensache"
#: ../extensions/example/prefs.js:43
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"
@@ -168,10 +182,6 @@ msgstr ""
"solenco.\n"
"Manimenos, ye posible presonalizar o mensache de bienvenida."
#: ../extensions/example/prefs.js:36
msgid "Message:"
msgstr "Mensache:"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:1
msgid "Use more screen for windows"
msgstr "Fer servir mas pantalla ta las finestras"
@@ -206,24 +216,28 @@ msgstr ""
msgid "Places"
msgstr "Puestos"
#: ../extensions/places-menu/placeDisplay.js:58
#, c-format
#: ../extensions/places-menu/placeDisplay.js:57
#, javascript-format
msgid "Failed to launch \"%s\""
msgstr "Ha fallau en lanzar «%s»"
#: ../extensions/places-menu/placeDisplay.js:100
#: ../extensions/places-menu/placeDisplay.js:123
#: ../extensions/places-menu/placeDisplay.js:99
#: ../extensions/places-menu/placeDisplay.js:122
msgid "Computer"
msgstr "Equipo"
#: ../extensions/places-menu/placeDisplay.js:201
#: ../extensions/places-menu/placeDisplay.js:200
msgid "Home"
msgstr "Carpeta presonal"
#: ../extensions/places-menu/placeDisplay.js:288
#: ../extensions/places-menu/placeDisplay.js:287
msgid "Browse Network"
msgstr "Examinar o ret"
#: ../extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml.in.h:1
msgid "Cycle Screenshot Sizes"
msgstr "Mida d'os ciclos decaptura de pantalla"
#: ../extensions/systemMonitor/extension.js:214
msgid "CPU"
msgstr "CPU"
@@ -240,52 +254,52 @@ msgstr "Nombre d'o tema"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "O nombre d'o tema, que se carga dende /.themes/nombre/gnome-shell"
#: ../extensions/window-list/extension.js:92
#: ../extensions/window-list/extension.js:110
msgid "Close"
msgstr "Zarrar"
#: ../extensions/window-list/extension.js:102
#: ../extensions/window-list/extension.js:120
msgid "Unminimize"
msgstr "Restaurar"
#: ../extensions/window-list/extension.js:103
#: ../extensions/window-list/extension.js:121
msgid "Minimize"
msgstr "Minimizar"
#: ../extensions/window-list/extension.js:109
#: ../extensions/window-list/extension.js:127
msgid "Unmaximize"
msgstr "Restaurar"
#: ../extensions/window-list/extension.js:110
#: ../extensions/window-list/extension.js:128
msgid "Maximize"
msgstr "Maximizar"
#: ../extensions/window-list/extension.js:270
#: ../extensions/window-list/extension.js:304
msgid "Minimize all"
msgstr "Minimizar-lo tot"
#: ../extensions/window-list/extension.js:278
#: ../extensions/window-list/extension.js:312
msgid "Unminimize all"
msgstr "Restaurar-lo tot"
#: ../extensions/window-list/extension.js:286
#: ../extensions/window-list/extension.js:320
msgid "Maximize all"
msgstr "Maximizar-lo tot"
#: ../extensions/window-list/extension.js:295
#: ../extensions/window-list/extension.js:329
msgid "Unmaximize all"
msgstr "Restaurar-lo tot"
#: ../extensions/window-list/extension.js:304
#: ../extensions/window-list/extension.js:338
msgid "Close all"
msgstr "Zarrar-lo tot"
#: ../extensions/window-list/extension.js:591
#: ../extensions/window-list/extension.js:649
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Indicador d'aria de treballo"
#: ../extensions/window-list/extension.js:743
#: ../extensions/window-list/extension.js:799
msgid "Window List"
msgstr "Lista de finestras"
@@ -318,15 +332,15 @@ msgid "Always group windows"
msgstr "Agrupar siempre as finestras"
#: ../extensions/workspace-indicator/prefs.js:141
msgid "Workspace names:"
msgstr "Nombres d'as arias de treballo:"
msgid "Workspace Names"
msgstr "Nombres d'as arias de treballo"
#: ../extensions/workspace-indicator/prefs.js:152
#: ../extensions/workspace-indicator/prefs.js:157
msgid "Name"
msgstr "Nombre"
#: ../extensions/workspace-indicator/prefs.js:186
#, c-format
#: ../extensions/workspace-indicator/prefs.js:198
#, javascript-format
msgid "Workspace %d"
msgstr "Aria de treballo %d"

View File

@@ -9,8 +9,8 @@ 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: 2014-08-22 07:35+0000\n"
"PO-Revision-Date: 2014-08-22 11:54+0200\n"
"POT-Creation-Date: 2014-11-25 20:31+0000\n"
"PO-Revision-Date: 2014-11-26 09:11+0100\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <gnome-cs-list@gnome.org>\n"
"Language: cs\n"
@@ -55,8 +55,8 @@ msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"Když běží GNOME Shell, tento klíč přepíše klíč v "
"org.gnome.desktop.wm.preferences"
"Když běží GNOME Shell, tento klíč přepíše klíč v org.gnome.desktop.wm."
"preferences"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:5
msgid "Enable edge tiling when dropping windows on screen edges"
@@ -140,11 +140,11 @@ msgstr "Přidat"
msgid "Ejecting drive '%s' failed:"
msgstr "Vysunutí disku „%s“ selhalo:"
#: ../extensions/drive-menu/extension.js:123
#: ../extensions/drive-menu/extension.js:124
msgid "Removable devices"
msgstr "Výměnná zařízení"
#: ../extensions/drive-menu/extension.js:150
#: ../extensions/drive-menu/extension.js:151
msgid "Open File"
msgstr "Otevřít soubor"
@@ -228,6 +228,10 @@ msgstr "Domů"
msgid "Browse Network"
msgstr "Procházet síť"
#: ../extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml.in.h:1
msgid "Cycle Screenshot Sizes"
msgstr "Mění velikost pro snímky obrazovky"
#: ../extensions/systemMonitor/extension.js:214
msgid "CPU"
msgstr "Procesor"
@@ -264,32 +268,32 @@ msgstr "Zrušit maximalizaci"
msgid "Maximize"
msgstr "Maximalizovat"
#: ../extensions/window-list/extension.js:300
#: ../extensions/window-list/extension.js:304
msgid "Minimize all"
msgstr "Minimalizovat všechna"
#: ../extensions/window-list/extension.js:308
#: ../extensions/window-list/extension.js:312
msgid "Unminimize all"
msgstr "Zrušit minimalizaci všech"
#: ../extensions/window-list/extension.js:316
#: ../extensions/window-list/extension.js:320
msgid "Maximize all"
msgstr "Maximalizovat všechna"
#: ../extensions/window-list/extension.js:325
#: ../extensions/window-list/extension.js:329
msgid "Unmaximize all"
msgstr "Zrušit maximalizaci všech"
#: ../extensions/window-list/extension.js:334
#: ../extensions/window-list/extension.js:338
msgid "Close all"
msgstr "Zavřít všechna"
#: ../extensions/window-list/extension.js:644
#: ../extensions/window-list/extension.js:649
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Ukazatel pracovní plochy"
#: ../extensions/window-list/extension.js:798
#: ../extensions/window-list/extension.js:799
msgid "Window List"
msgstr "Seznam oken"

View File

@@ -7,10 +7,9 @@
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: 2014-08-07 12:27+0200\n"
"PO-Revision-Date: 2014-07-29 19:37+0200\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-12-17 16:32+0100\n"
"PO-Revision-Date: 2014-12-05 23:43+0100\n"
"Last-Translator: Iñaki Larrañaga Murgoitio <dooteo@zundan.com>\n"
"Language-Team: Basque <librezale@librezale.org>\n"
"Language: eu\n"
@@ -18,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Lokalize 1.4\n"
"X-Generator: Lokalize 1.5\n"
"X-Project-Style: gnome\n"
#: ../data/gnome-classic.desktop.in.h:1
@@ -100,11 +99,11 @@ msgstr "Erakutsi leihoak bakarrik uneko laneko arean"
msgid "Activities Overview"
msgstr "Jardueren ikuspegi orokorra"
#: ../extensions/apps-menu/extension.js:113
#: ../extensions/apps-menu/extension.js:114
msgid "Favorites"
msgstr "Gogokoak"
#: ../extensions/apps-menu/extension.js:282
#: ../extensions/apps-menu/extension.js:283
msgid "Applications"
msgstr "Aplikazioak"
@@ -146,11 +145,11 @@ msgstr "Gehitu"
msgid "Ejecting drive '%s' failed:"
msgstr "Huts egin du '%s' unitatea egoztean: "
#: ../extensions/drive-menu/extension.js:123
#: ../extensions/drive-menu/extension.js:124
msgid "Removable devices"
msgstr "Gailu aldagarriak"
#: ../extensions/drive-menu/extension.js:150
#: ../extensions/drive-menu/extension.js:151
msgid "Open File"
msgstr "Ireki fitxategia"
@@ -236,6 +235,10 @@ msgstr "Karpeta nagusia"
msgid "Browse Network"
msgstr "Arakatu sarea"
#: ../extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml.in.h:1
msgid "Cycle Screenshot Sizes"
msgstr "Pantaila-argazkien tamainak begiztan"
#: ../extensions/systemMonitor/extension.js:214
msgid "CPU"
msgstr "PUZ"
@@ -272,32 +275,32 @@ msgstr "Desmaximizatu"
msgid "Maximize"
msgstr "Maximizatu"
#: ../extensions/window-list/extension.js:300
#: ../extensions/window-list/extension.js:304
msgid "Minimize all"
msgstr "Minimizatu denak"
#: ../extensions/window-list/extension.js:308
#: ../extensions/window-list/extension.js:312
msgid "Unminimize all"
msgstr "Leheneratu denak"
#: ../extensions/window-list/extension.js:316
#: ../extensions/window-list/extension.js:320
msgid "Maximize all"
msgstr "Maximizatu denak"
#: ../extensions/window-list/extension.js:325
#: ../extensions/window-list/extension.js:329
msgid "Unmaximize all"
msgstr "Desmaximizatu denak"
#: ../extensions/window-list/extension.js:334
#: ../extensions/window-list/extension.js:338
msgid "Close all"
msgstr "Itxi denak"
#: ../extensions/window-list/extension.js:644
#: ../extensions/window-list/extension.js:649
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Lan arearen adierazlea"
#: ../extensions/window-list/extension.js:798
#: ../extensions/window-list/extension.js:799
msgid "Window List"
msgstr "Leihoen zerrenda"

View File

@@ -8,9 +8,9 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell-extensions\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-30 09:05+0300\n"
"PO-Revision-Date: 2014-05-30 09:06+0300\n"
"Last-Translator: Yosef Or Boczko <yoseforb@gnome.org>\n"
"POT-Creation-Date: 2014-11-04 18:45+0200\n"
"PO-Revision-Date: 2014-11-04 18:45+0200\n"
"Last-Translator: Yosef Or Boczko <yoseforb@gmail.com>\n"
"Language-Team: עברית <>\n"
"Language: he\n"
"MIME-Version: 1.0\n"
@@ -169,6 +169,8 @@ msgstr ""
msgid "Message"
msgstr "הודעה"
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:43
msgid ""
"Example aims to show how to build well behaved extensions for the Shell and "
@@ -230,6 +232,10 @@ msgstr "בית"
msgid "Browse Network"
msgstr "עיון ברשת"
#: ../extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml.in.h:1
msgid "Cycle Screenshot Sizes"
msgstr "Cycle Screenshot Sizes"
#: ../extensions/systemMonitor/extension.js:214
msgid "CPU"
msgstr "מעבד"
@@ -266,32 +272,32 @@ msgstr "ביטול ההגדלה"
msgid "Maximize"
msgstr "הגדלה"
#: ../extensions/window-list/extension.js:300
#: ../extensions/window-list/extension.js:304
msgid "Minimize all"
msgstr "מזעור הכל"
#: ../extensions/window-list/extension.js:308
#: ../extensions/window-list/extension.js:312
msgid "Unminimize all"
msgstr "ביטול מזעור הכל"
#: ../extensions/window-list/extension.js:316
#: ../extensions/window-list/extension.js:320
msgid "Maximize all"
msgstr "הגדלת הכל"
#: ../extensions/window-list/extension.js:325
#: ../extensions/window-list/extension.js:329
msgid "Unmaximize all"
msgstr "ביטול הגדלת הכל"
#: ../extensions/window-list/extension.js:334
#: ../extensions/window-list/extension.js:338
msgid "Close all"
msgstr "סגירת הכל"
#: ../extensions/window-list/extension.js:644
#: ../extensions/window-list/extension.js:649
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "מחוון מרחבי עבודה"
#: ../extensions/window-list/extension.js:798
#: ../extensions/window-list/extension.js:799
msgid "Window List"
msgstr "רשימת חלונות"

View File

@@ -4,15 +4,14 @@
#
# Biró Balázs <arch.scar at gmail dot com>, 2011.
# Gabor Kelemen <kelemeng at gnome dot hu>, 2011, 2012, 2013.
# Balázs Úr <urbalazs at gmail dot com>, 2013.
# Balázs Úr <urbalazs@gmail.com>, 2014.
# Balázs Úr <urbalazs at gmail dot com>, 2013, 2014.
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: 2014-06-16 19:32+0000\n"
"PO-Revision-Date: 2014-06-16 23:36+0200\n"
"POT-Creation-Date: 2014-11-30 11:20+0000\n"
"PO-Revision-Date: 2014-12-03 16:55+0100\n"
"Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
"Language-Team: Hungarian <openscope at googlegroups dot com>\n"
"Language: hu\n"
@@ -55,8 +54,6 @@ msgid "Arrangement of buttons on the titlebar"
msgstr "A gombok elrendezése az ablak címsorában"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:4
#| msgid ""
#| "This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
@@ -101,11 +98,11 @@ msgstr "Csak az aktuális munkaterület ablakainak megjelenítése"
msgid "Activities Overview"
msgstr "Tevékenységek áttekintés"
#: ../extensions/apps-menu/extension.js:113
#: ../extensions/apps-menu/extension.js:114
msgid "Favorites"
msgstr "Kedvencek"
#: ../extensions/apps-menu/extension.js:282
#: ../extensions/apps-menu/extension.js:283
msgid "Applications"
msgstr "Alkalmazások"
@@ -131,7 +128,6 @@ msgid "Workspace"
msgstr "Munkaterület"
#: ../extensions/auto-move-windows/prefs.js:85
#| msgid "Add rule"
msgid "Add Rule"
msgstr "Szabály hozzáadása"
@@ -148,11 +144,11 @@ msgstr "Hozzáadás"
msgid "Ejecting drive '%s' failed:"
msgstr "A(z) „%s” meghajtó kiadása nem sikerült:"
#: ../extensions/drive-menu/extension.js:123
#: ../extensions/drive-menu/extension.js:124
msgid "Removable devices"
msgstr "Cserélhető eszközök"
#: ../extensions/drive-menu/extension.js:150
#: ../extensions/drive-menu/extension.js:151
msgid "Open File"
msgstr "Fájl megnyitása"
@@ -172,7 +168,6 @@ msgstr ""
"Ha nem üres, akkor a panelre kattintáskor megjelenő szöveget tartalmazza."
#: ../extensions/example/prefs.js:30
#| msgid "Message:"
msgid "Message"
msgstr "Üzenet"
@@ -238,6 +233,10 @@ msgstr "Saját mappa"
msgid "Browse Network"
msgstr "Hálózat tallózása"
#: ../extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml.in.h:1
msgid "Cycle Screenshot Sizes"
msgstr "Képernyőképméretek végigléptetése"
#: ../extensions/systemMonitor/extension.js:214
msgid "CPU"
msgstr "CPU"
@@ -274,32 +273,32 @@ msgstr "Maximalizálás megszüntetése"
msgid "Maximize"
msgstr "Maximalizálás"
#: ../extensions/window-list/extension.js:300
#: ../extensions/window-list/extension.js:304
msgid "Minimize all"
msgstr "Minden minimalizálása"
#: ../extensions/window-list/extension.js:308
#: ../extensions/window-list/extension.js:312
msgid "Unminimize all"
msgstr "Minden minimalizálásának megszüntetése"
#: ../extensions/window-list/extension.js:316
#: ../extensions/window-list/extension.js:320
msgid "Maximize all"
msgstr "Minden maximalizálása"
#: ../extensions/window-list/extension.js:325
#: ../extensions/window-list/extension.js:329
msgid "Unmaximize all"
msgstr "Minden maximalizálásának megszüntetése"
#: ../extensions/window-list/extension.js:334
#: ../extensions/window-list/extension.js:338
msgid "Close all"
msgstr "Minden bezárása"
#: ../extensions/window-list/extension.js:644
#: ../extensions/window-list/extension.js:649
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Munkaterület indikátor"
#: ../extensions/window-list/extension.js:798
#: ../extensions/window-list/extension.js:799
msgid "Window List"
msgstr "Ablaklista"
@@ -333,7 +332,6 @@ msgid "Always group windows"
msgstr "Mindig csoportosítsa az ablakokat"
#: ../extensions/workspace-indicator/prefs.js:141
#| msgid "Workspace names:"
msgid "Workspace Names"
msgstr "Munkaterületnevek"

View File

@@ -8,8 +8,8 @@ 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: 2014-08-23 19:38+0000\n"
"PO-Revision-Date: 2014-08-24 10:22+0600\n"
"POT-Creation-Date: 2014-12-14 08:37+0000\n"
"PO-Revision-Date: 2014-12-14 20:07+0600\n"
"Last-Translator: Baurzhan Muftakhidinov <baurthefirst@gmail.com>\n"
"Language-Team: Kazakh <kk@li.org>\n"
"Language: kk\n"
@@ -50,8 +50,6 @@ msgid "Arrangement of buttons on the titlebar"
msgstr "Атау жолағындағы батырмалар орналасуы"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:4
#| msgid ""
#| "This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
@@ -97,11 +95,11 @@ msgstr "Тек ағымдағы жұмыс орнынан терезелерді
msgid "Activities Overview"
msgstr "Шолу көрінісі"
#: ../extensions/apps-menu/extension.js:113
#: ../extensions/apps-menu/extension.js:114
msgid "Favorites"
msgstr "Таңдамалылар"
#: ../extensions/apps-menu/extension.js:282
#: ../extensions/apps-menu/extension.js:283
msgid "Applications"
msgstr "Қолданбалар"
@@ -127,7 +125,6 @@ msgid "Workspace"
msgstr "Жұмыс орны"
#: ../extensions/auto-move-windows/prefs.js:85
#| msgid "Add rule"
msgid "Add Rule"
msgstr "Ережені қосу"
@@ -144,11 +141,11 @@ msgstr "Қосу"
msgid "Ejecting drive '%s' failed:"
msgstr "'%s' дискін шығару сәтсіз аяқталды:"
#: ../extensions/drive-menu/extension.js:123
#: ../extensions/drive-menu/extension.js:124
msgid "Removable devices"
msgstr "Алынатын құрылғылар"
#: ../extensions/drive-menu/extension.js:150
#: ../extensions/drive-menu/extension.js:151
msgid "Open File"
msgstr "Файлды ашу"
@@ -167,7 +164,6 @@ msgid ""
msgstr "Бос болмаса, панельге шерту кезінде көрсетілетін мәтінді сақтайды."
#: ../extensions/example/prefs.js:30
#| msgid "Message:"
msgid "Message"
msgstr "Хабарлама"
@@ -233,6 +229,10 @@ msgstr "Үй бумасы"
msgid "Browse Network"
msgstr "Желіні шолу"
#: ../extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml.in.h:1
msgid "Cycle Screenshot Sizes"
msgstr "Скриншоттар өлшемдерін ауыстырып көрсету"
#: ../extensions/systemMonitor/extension.js:214
msgid "CPU"
msgstr "Процессор"
@@ -269,32 +269,32 @@ msgstr "Жазық емес қылу"
msgid "Maximize"
msgstr "Жазық қылу"
#: ../extensions/window-list/extension.js:300
#: ../extensions/window-list/extension.js:304
msgid "Minimize all"
msgstr "Барлығын қайыру"
#: ../extensions/window-list/extension.js:308
#: ../extensions/window-list/extension.js:312
msgid "Unminimize all"
msgstr "Барлығын қайырылған емес қылу"
#: ../extensions/window-list/extension.js:316
#: ../extensions/window-list/extension.js:320
msgid "Maximize all"
msgstr "Барлығын жазық қылу"
#: ../extensions/window-list/extension.js:325
#: ../extensions/window-list/extension.js:329
msgid "Unmaximize all"
msgstr "Барлығын жазық емес қылу"
#: ../extensions/window-list/extension.js:334
#: ../extensions/window-list/extension.js:338
msgid "Close all"
msgstr "Барлығын жабу"
#: ../extensions/window-list/extension.js:644
#: ../extensions/window-list/extension.js:649
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Жұмыс орын индикаторы"
#: ../extensions/window-list/extension.js:798
#: ../extensions/window-list/extension.js:799
msgid "Window List"
msgstr "Терезелер тізімі"
@@ -327,7 +327,6 @@ msgid "Always group windows"
msgstr "Терезелерді әрқашан топтау"
#: ../extensions/workspace-indicator/prefs.js:141
#| msgid "Workspace names:"
msgid "Workspace Names"
msgstr "Жұмыс орын атаулары"

336
po/ro.po Normal file
View File

@@ -0,0 +1,336 @@
# Romanian translation for gnome-shell-extensions.
# Copyright (C) 2014 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package.
# Bogdan Mințoi <mintoi.bogdan@gmail.com>, 2014.
# Daniel Șerbănescu <daniel [at] serbanescu [dot] dk>, 2014.
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: 2014-11-26 18:07+0000\n"
"PO-Revision-Date: 2014-11-30 12:18+0200\n"
"Last-Translator: Daniel Șerbănescu <daniel [at] serbanescu [dot] dk>\n"
"Language-Team: Gnome Romanian Translation Team\n"
"Language: ro\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
"20)) ? 1 : 2);;\n"
"X-Generator: Virtaal 0.7.1\n"
"X-Project-Style: gnome\n"
#: ../data/gnome-classic.desktop.in.h:1
#: ../data/gnome-classic.session.desktop.in.in.h:1
msgid "GNOME Classic"
msgstr "GNOME Clasic"
#: ../data/gnome-classic.desktop.in.h:2
msgid "This session logs you into GNOME Classic"
msgstr "Această sesiune vă autentifică în GNOME Clasic"
#: ../data/gnome-shell-classic.desktop.in.in.h:1
msgid "GNOME Shell Classic"
msgstr "Interfața clasică GNOME"
#: ../data/gnome-shell-classic.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Gestionarea ferestrei și lansarea aplicației"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:1
msgid "Attach modal dialog to the parent window"
msgstr "Atașează dialogul modal la fereastra părinte"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:2
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Această cheie înlocuiește cheia corespondentă din org.gnome.mutter când "
"interfața GNOME rulează."
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:3
msgid "Arrangement of buttons on the titlebar"
msgstr "Aranjamentul butoanelor din bara de titlu"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:4
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"Această cheie înlocuiește cheia corespondentă din "
"org.gnome.desktop.wm.preferences când interfața GNOME rulează."
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:5
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Activează mozaic lateral la plasarea ferestrelor pe marginile ecranului"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:6
msgid "Workspaces only on primary monitor"
msgstr "Spații de lucru doar pe monitorul principal"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:7
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
#: ../extensions/alternate-tab/prefs.js:20
msgid "Thumbnail only"
msgstr "Doar miniatură"
#: ../extensions/alternate-tab/prefs.js:21
msgid "Application icon only"
msgstr "Doar pictograma aplicației"
#: ../extensions/alternate-tab/prefs.js:22
msgid "Thumbnail and application icon"
msgstr "Miniatură și pictograma aplicației"
#: ../extensions/alternate-tab/prefs.js:38
msgid "Present windows as"
msgstr "Prezintă ferestrele ca"
#: ../extensions/alternate-tab/prefs.js:69
msgid "Show only windows in the current workspace"
msgstr "Arată doar ferestrele aflate în spațiul de lucru actual"
#: ../extensions/apps-menu/extension.js:39
msgid "Activities Overview"
msgstr "Panoramă activități"
#: ../extensions/apps-menu/extension.js:114
msgid "Favorites"
msgstr "Favorite"
#: ../extensions/apps-menu/extension.js:283
msgid "Applications"
msgstr "Aplicații"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
msgid "Application and workspace list"
msgstr "Lista de aplicații și spații de lucru"
#: ../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 ""
"O listă de șiruri de caractere, fiecare conținând un id de aplicație (numele "
"fișierului de birou) urmat de simbolul „două puncte” și un număr al "
"spațiului de lucru"
#: ../extensions/auto-move-windows/prefs.js:60
msgid "Application"
msgstr "Aplicație"
#: ../extensions/auto-move-windows/prefs.js:69
#: ../extensions/auto-move-windows/prefs.js:127
msgid "Workspace"
msgstr "Spațiu de lucru"
#: ../extensions/auto-move-windows/prefs.js:85
msgid "Add Rule"
msgstr "Adaugă o regulă"
#: ../extensions/auto-move-windows/prefs.js:106
msgid "Create new matching rule"
msgstr "Creează o regulă nouă de potrivire"
#: ../extensions/auto-move-windows/prefs.js:111
msgid "Add"
msgstr "Adaugă"
#: ../extensions/drive-menu/extension.js:106
#, javascript-format
msgid "Ejecting drive '%s' failed:"
msgstr "Scoaterea unității „%s” a eșuat:"
#: ../extensions/drive-menu/extension.js:124
msgid "Removable devices"
msgstr "Dispozitive detașabile"
#: ../extensions/drive-menu/extension.js:151
msgid "Open File"
msgstr "Deschide fișier"
#: ../extensions/example/extension.js:17
msgid "Hello, world!"
msgstr "Bună ziua, lume!"
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:1
msgid "Alternative greeting text."
msgstr "Text alternativ de salut."
#: ../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 ""
#: ../extensions/example/prefs.js:30
msgid "Message"
msgstr "Mesaj"
#: ../extensions/example/prefs.js:43
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 ""
"Exemplul are ca scop să prezinte cum anume să construiți extensii pentru "
"Shell, ce se comportă corect, și are o funcționalitate proprie redusă.\n"
"Cu toate acestea, este posibil să personalizați mesajul de întâmpinare."
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:1
msgid "Use more screen for windows"
msgstr "Folosește mai mult din ecran pentru ferestre"
#: ../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 "Plasează titlul ferestrelor deasupra"
#: ../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:78
#: ../extensions/places-menu/extension.js:81
msgid "Places"
msgstr "Locații"
#: ../extensions/places-menu/placeDisplay.js:57
#, javascript-format
msgid "Failed to launch \"%s\""
msgstr "Nu s-a putut lansa „%s”"
#: ../extensions/places-menu/placeDisplay.js:99
#: ../extensions/places-menu/placeDisplay.js:122
msgid "Computer"
msgstr "Calculator"
#: ../extensions/places-menu/placeDisplay.js:200
msgid "Home"
msgstr "Acasă"
#: ../extensions/places-menu/placeDisplay.js:287
msgid "Browse Network"
msgstr "Navighează rețeaua"
#: ../extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml.in.h:1
msgid "Cycle Screenshot Sizes"
msgstr ""
#: ../extensions/systemMonitor/extension.js:214
msgid "CPU"
msgstr "CPU"
#: ../extensions/systemMonitor/extension.js:267
msgid "Memory"
msgstr "Memorie"
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:1
msgid "Theme name"
msgstr "Numele temei"
#: ../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 "Numele temei, ce va fi încărcată din ~/.themes/name/gnome-shell"
#: ../extensions/window-list/extension.js:110
msgid "Close"
msgstr "Închide"
#: ../extensions/window-list/extension.js:120
msgid "Unminimize"
msgstr "Deminimizează"
#: ../extensions/window-list/extension.js:121
msgid "Minimize"
msgstr "Minimizează"
#: ../extensions/window-list/extension.js:127
msgid "Unmaximize"
msgstr "Demaximizează"
#: ../extensions/window-list/extension.js:128
msgid "Maximize"
msgstr "Maximizează"
#: ../extensions/window-list/extension.js:304
msgid "Minimize all"
msgstr "Minimizează tot"
#: ../extensions/window-list/extension.js:312
msgid "Unminimize all"
msgstr "Deminimizează tot"
#: ../extensions/window-list/extension.js:320
msgid "Maximize all"
msgstr "Maximizează tot"
#: ../extensions/window-list/extension.js:329
msgid "Unmaximize all"
msgstr "Demaximizează tot"
#: ../extensions/window-list/extension.js:338
msgid "Close all"
msgstr "Închide tot"
#: ../extensions/window-list/extension.js:649
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Indicator al spațiului de lucru"
#: ../extensions/window-list/extension.js:799
msgid "Window List"
msgstr "Lista ferestrelor"
#: ../extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml.in.h:1
msgid "When to group windows"
msgstr "Când să fie grupate ferestrele"
#: ../extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml.in.h:2
msgid ""
"Decides when to group windows from the same application on the window list. "
"Possible values are \"never\", \"auto\" and \"always\"."
msgstr ""
"Decide când să fie grupate ferestrele aceleiași aplicații în lista "
"ferestrei. Valorile posibile sunt „niciodată”, „auto” și „întotdeauna”."
#: ../extensions/window-list/prefs.js:30
msgid "Window Grouping"
msgstr "Gruparea ferestrelor"
#: ../extensions/window-list/prefs.js:49
msgid "Never group windows"
msgstr "Nu grupa ferestrele niciodată"
#: ../extensions/window-list/prefs.js:50
msgid "Group windows when space is limited"
msgstr "Grupează ferestrele când spațiul e limitat"
#: ../extensions/window-list/prefs.js:51
msgid "Always group windows"
msgstr "Grupează ferestrele întotdeauna"
#: ../extensions/workspace-indicator/prefs.js:141
msgid "Workspace Names"
msgstr "Numele spațiilor de lucru"
#: ../extensions/workspace-indicator/prefs.js:157
msgid "Name"
msgstr "Nume"
#: ../extensions/workspace-indicator/prefs.js:198
#, javascript-format
msgid "Workspace %d"
msgstr "Spațiu de lucru %d"

View File

@@ -2,15 +2,16 @@
# Copyright (C) 2012 gnome-shell-extensions's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell-extensions package.
# Osman Karagöz <osmank3@gmail.com>, 2012.
# sabri ünal <yakushabb@gmail.com>, 2014
# sabri ünal <yakushabb@gmail.com>, 2014.
# Gökhan Gurbetoğlu <ggurbet@gmail.com>, 2014.
# Muhammet Kara <muhammetk@gmail.com>, 2013, 2014.
#
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: 2014-09-16 07:39+0000\n"
"PO-Revision-Date: 2014-09-16 11:34+0000\n"
"POT-Creation-Date: 2014-12-03 08:34+0000\n"
"PO-Revision-Date: 2014-12-04 09:02+0000\n"
"Last-Translator: Muhammet Kara <muhammetk@gmail.com>\n"
"Language-Team: Türkçe <gnome-turk@gnome.org>\n"
"MIME-Version: 1.0\n"
@@ -91,11 +92,11 @@ msgstr "Sadece geçerli çalışma alanındaki pencereleri göster"
msgid "Activities Overview"
msgstr "Etkinlikler Genel Görünümü"
#: ../extensions/apps-menu/extension.js:113
#: ../extensions/apps-menu/extension.js:114
msgid "Favorites"
msgstr "Gözdeler"
#: ../extensions/apps-menu/extension.js:282
#: ../extensions/apps-menu/extension.js:283
msgid "Applications"
msgstr "Uygulamalar"
@@ -135,11 +136,11 @@ msgstr "Ekle"
msgid "Ejecting drive '%s' failed:"
msgstr "'%s' sürücüsü çıkarılamadı:"
#: ../extensions/drive-menu/extension.js:123
#: ../extensions/drive-menu/extension.js:124
msgid "Removable devices"
msgstr "Çıkarılabilir cihazlar"
#: ../extensions/drive-menu/extension.js:150
#: ../extensions/drive-menu/extension.js:151
msgid "Open File"
msgstr "Dosya Aç"
@@ -212,6 +213,10 @@ msgstr "Başlangıç"
msgid "Browse Network"
msgstr "Ağa Gözat"
#: ../extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml.in.h:1
msgid "Cycle Screenshot Sizes"
msgstr "Ekran Görüntüsü Boyutları Arasında Geçiş Yap"
#: ../extensions/systemMonitor/extension.js:214
msgid "CPU"
msgstr "İşlemci"
@@ -248,32 +253,32 @@ msgstr "Önceki Boyut"
msgid "Maximize"
msgstr "En büyük duruma getir"
#: ../extensions/window-list/extension.js:300
#: ../extensions/window-list/extension.js:304
msgid "Minimize all"
msgstr "Tümünü simge durumuna küçült"
#: ../extensions/window-list/extension.js:308
#: ../extensions/window-list/extension.js:312
msgid "Unminimize all"
msgstr "Tümünü Önceki Boyutuna Getir"
#: ../extensions/window-list/extension.js:316
#: ../extensions/window-list/extension.js:320
msgid "Maximize all"
msgstr "Tümünü en büyük duruma getir"
#: ../extensions/window-list/extension.js:325
#: ../extensions/window-list/extension.js:329
msgid "Unmaximize all"
msgstr "Tümünü Önceki Boyutuna Getir"
#: ../extensions/window-list/extension.js:334
#: ../extensions/window-list/extension.js:338
msgid "Close all"
msgstr "Hepsini kapat"
#: ../extensions/window-list/extension.js:644
#: ../extensions/window-list/extension.js:649
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Çalışma Alanı Belirteci"
#: ../extensions/window-list/extension.js:808
#: ../extensions/window-list/extension.js:799
msgid "Window List"
msgstr "Pencere Listesi"

254
po/vi.po
View File

@@ -1,17 +1,18 @@
# Vietnamese translation for gnome-shell-extensions.
# Copyright (C) 2011 gnome-shell-extensions's COPYRIGHT HOLDER
# Copyright © 2014 GNOME i18n Project for Vietnamese.
# This file is distributed under the same license as the gnome-shell-extensions package.
# Nguyễn Thái Ngọc Duy <pclouds@gmail.com>, 2011.
# Trần Ngọc Quân <vnwildman@gmail.com>, 2014.
#
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: 2013-07-04 14:51+0000\n"
"PO-Revision-Date: 2013-07-06 18:23+0700\n"
"POT-Creation-Date: 2014-11-14 20:32+0000\n"
"PO-Revision-Date: 2014-11-15 14:43+0700\n"
"Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
"Language-Team: Vietnamese <gnomevi-list@lists.sourceforge.net>\n"
"Language-Team: Vietnamese <gnome-vi-list@gnome.org>\n"
"Language: vi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -22,7 +23,7 @@ msgstr ""
#: ../data/gnome-classic.desktop.in.h:1
#: ../data/gnome-classic.session.desktop.in.in.h:1
msgid "GNOME Classic"
msgstr "GNOME Cổ điển"
msgstr "GNOME cổ điển"
#: ../data/gnome-classic.desktop.in.h:2
msgid "This session logs you into GNOME Classic"
@@ -30,7 +31,7 @@ msgstr "Phiên làm việc này đăng nhập bạn vào GNOME Cổ điển"
#: ../data/gnome-shell-classic.desktop.in.in.h:1
msgid "GNOME Shell Classic"
msgstr "Hệ vỏ GNOME Cổ điển"
msgstr "Hệ vỏ GNOME cổ điển"
#: ../data/gnome-shell-classic.desktop.in.in.h:2
msgid "Window management and application launching"
@@ -38,7 +39,7 @@ msgstr "Quản lý cửa sổ và chạy ứng dụng"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:1
msgid "Attach modal dialog to the parent window"
msgstr "Gắn hộp thoại dạng modal (luôn trên) vào cửa sổ mẹ"
msgstr "Gắn hộp thoại dạng luôn nằm trên cửa sổ mẹ"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:2
msgid ""
@@ -47,13 +48,29 @@ msgstr ""
"Khóa này sẽ đè lên khóa có trong org.gnome.mutter khi chạy Hệ vỏ GNOME."
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:3
msgid "Arrangement of buttons on the titlebar"
msgstr "Sắp xếp các nút trên thanh tiêu đề"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:4
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"Khóa này sẽ đè lên khóa có trong org.gnome.desktop.wm.preferences khi đang "
"chạy Hệ vỏ GNOME."
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:5
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Bật xếp lớp ở cạnh khi thả cửa sổ vào cạnh màn hình"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:4
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:6
msgid "Workspaces only on primary monitor"
msgstr "Vùng làm việc chỉ ở trên màn hình chính"
#: ../data/org.gnome.shell.extensions.classic-overrides.gschema.xml.in.h:7
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Khoảng trễ chờ cho con chuột ngừng di chuyển"
#: ../extensions/alternate-tab/prefs.js:20
msgid "Thumbnail only"
msgstr "Chỉ ảnh nhỏ"
@@ -66,98 +83,69 @@ msgstr "Chỉ có ảnh nhỏ đại diện cho ứng dụng"
msgid "Thumbnail and application icon"
msgstr "Ảnh thu nhỏ và biểu tượng của ứng dụng"
#: ../extensions/alternate-tab/prefs.js:37
#: ../extensions/alternate-tab/prefs.js:38
msgid "Present windows as"
msgstr "Cửa sổ hiện tại như là"
#: ../extensions/alternate-tab/prefs.js:62
#: ../extensions/alternate-tab/prefs.js:69
msgid "Show only windows in the current workspace"
msgstr "Chỉ hiển thị các cửa sổ trong không gian làm việc hiện tại"
#. add the new entries
#: ../extensions/alternative-status-menu/extension.js:125
msgid "Suspend"
msgstr "Ngừng"
#: ../extensions/alternative-status-menu/extension.js:128
msgid "Hibernate"
msgstr "Ngủ đông"
#: ../extensions/alternative-status-menu/extension.js:131
msgid "Power Off"
msgstr "Tắt máy"
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:1
msgid "Enable suspending"
msgstr "Cho phép tạm dừng"
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:2
msgid "Control the visibility of the Suspend menu item"
msgstr "Cấu hình trình đơn con “Tạm dừng” hiện hay ẩn đi"
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:3
msgid "Enable hibernating"
msgstr "Cho phép ngủ đông"
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:4
msgid "Control the visibility of the Hibernate menu item"
msgstr "Cấu hình trình đơn con “Ngủ đông” hiện hay ẩn đi"
#: ../extensions/apps-menu/extension.js:39
msgid "Activities Overview"
msgstr "Tổng quan hoạt động"
#: ../extensions/apps-menu/extension.js:113
msgid "Favorites"
msgstr ""
msgstr "Ưa thích"
#: ../extensions/apps-menu/extension.js:276
#: ../extensions/apps-menu/extension.js:282
msgid "Applications"
msgstr "Ứng dụng"
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
msgid "Application and workspace list"
msgstr "Danh sách ứng dụng và vùng làm việc"
msgstr "Danh sách ứng dụng và không gian làm việc"
#: ../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 ""
"Một danh sách chuỗi, mỗi chuỗi là một id của ứng dụng (tên tập tin ."
"Một danh sách chuỗi, mỗi chuỗi là một mã số của ứng dụng (tên tập tin ."
"desktop), theo sau là dấu hai chấm và mã số vùng làm việc"
#: ../extensions/auto-move-windows/prefs.js:55
#: ../extensions/auto-move-windows/prefs.js:60
msgid "Application"
msgstr "Ứng dụng"
#: ../extensions/auto-move-windows/prefs.js:64
#: ../extensions/auto-move-windows/prefs.js:106
#: ../extensions/auto-move-windows/prefs.js:69
#: ../extensions/auto-move-windows/prefs.js:127
msgid "Workspace"
msgstr "Vùng làm việc"
msgstr "Không gian làm việc"
#: ../extensions/auto-move-windows/prefs.js:80
msgid "Add rule"
#: ../extensions/auto-move-windows/prefs.js:85
msgid "Add Rule"
msgstr "Thêm quy tắc"
#: ../extensions/auto-move-windows/prefs.js:94
#: ../extensions/auto-move-windows/prefs.js:106
msgid "Create new matching rule"
msgstr "Tạo một quy tắc khớp mới"
msgstr "Tạo mới một quy tắc khớp mẫu"
#: ../extensions/auto-move-windows/prefs.js:98
#: ../extensions/auto-move-windows/prefs.js:111
msgid "Add"
msgstr "Thêm"
#: ../extensions/drive-menu/extension.js:72
#, c-format
#: ../extensions/drive-menu/extension.js:106
#, javascript-format
msgid "Ejecting drive '%s' failed:"
msgstr "Đẩy đĩa “%s” ra gặp lỗi:"
msgstr "Gặp lỗi khi đẩy đĩa “%s” ra:"
#: ../extensions/drive-menu/extension.js:89
#: ../extensions/drive-menu/extension.js:124
msgid "Removable devices"
msgstr "Đĩa di động"
#: ../extensions/drive-menu/extension.js:106
#: ../extensions/drive-menu/extension.js:151
msgid "Open File"
msgstr "Mở tập tin"
@@ -177,22 +165,20 @@ msgstr ""
"Nếu không rỗng, nó sẽ chứa chữ mà chữ này sẽ được hiển thị khi bấm chuột "
"trên bảng điều khiển."
#. TRANSLATORS: Example is the name of the extension, should not be
#. translated
#: ../extensions/example/prefs.js:30
msgid "Message"
msgstr "Thông báo"
#: ../extensions/example/prefs.js:43
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 (Ví dụ) nhắm vào việc hướng dẫn làm cách nào để xây dựng các phần mở "
"rộng chạy tốt cho Hệ vỏ và do vậy nó chỉ có một ít chức năng.\n"
"Ví dụ nhắm vào việc hướng dẫn làm cách nào để xây dựng các phần mở rộng chạy "
"tốt cho Hệ vỏ và do vậy nó chỉ có một ít chức năng.\n"
"Tuy thế nó có khả năng cá nhân hóa lời chào."
#: ../extensions/example/prefs.js:36
msgid "Message:"
msgstr "Lời nhắn:"
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:1
msgid "Use more screen for windows"
msgstr "Dùng nhiều màn hình cho các cửa sổ"
@@ -221,31 +207,36 @@ msgstr ""
"đè lên cách ứng xử mặc định của hệ vỏ là ở dưới đáy.Những thay đổi này cần "
"khởi động lại hệ vỏ để có tác dụng."
#: ../extensions/places-menu/extension.js:77
#: ../extensions/places-menu/extension.js:78
#: ../extensions/places-menu/extension.js:81
msgid "Places"
msgstr "Mở nhanh"
#: ../extensions/places-menu/placeDisplay.js:56
#, c-format
#: ../extensions/places-menu/placeDisplay.js:57
#, javascript-format
msgid "Failed to launch \"%s\""
msgstr "Gặp lỗi khi chạy \"%s\""
msgstr "Gặp lỗi khi khởi chạy \"%s\""
#: ../extensions/places-menu/placeDisplay.js:98
#: ../extensions/places-menu/placeDisplay.js:121
#: ../extensions/places-menu/placeDisplay.js:99
#: ../extensions/places-menu/placeDisplay.js:122
msgid "Computer"
msgstr "Máy tính"
#: ../extensions/places-menu/placeDisplay.js:199
#: ../extensions/places-menu/placeDisplay.js:200
msgid "Home"
msgstr "Thư mục riêng"
#: ../extensions/places-menu/placeDisplay.js:286
#: ../extensions/places-menu/placeDisplay.js:287
msgid "Browse Network"
msgstr "Duyệt mạng"
#: ../extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml.in.h:1
msgid "Cycle Screenshot Sizes"
msgstr "Đổi kích thước cửa sổ để chụp màn hình"
#: ../extensions/systemMonitor/extension.js:214
msgid "CPU"
msgstr "CPU "
msgstr "CPU"
#: ../extensions/systemMonitor/extension.js:267
msgid "Memory"
@@ -259,10 +250,54 @@ msgstr "Tên chủ đề"
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
msgstr "Tên chủ đề, nạp từ ~/.themes/name/gnome-shell"
#: ../extensions/window-list/extension.js:382
#: ../extensions/window-list/extension.js:110
msgid "Close"
msgstr "Đóng"
#: ../extensions/window-list/extension.js:120
msgid "Unminimize"
msgstr "Hủy thu nhỏ"
#: ../extensions/window-list/extension.js:121
msgid "Minimize"
msgstr "Thu nhỏ"
#: ../extensions/window-list/extension.js:127
msgid "Unmaximize"
msgstr "Hủy phóng to"
#: ../extensions/window-list/extension.js:128
msgid "Maximize"
msgstr "Lớn nhất"
#: ../extensions/window-list/extension.js:304
msgid "Minimize all"
msgstr "Thu nhỏ tất cả"
#: ../extensions/window-list/extension.js:312
msgid "Unminimize all"
msgstr "Hủy thu nhỏ tất cả"
#: ../extensions/window-list/extension.js:320
msgid "Maximize all"
msgstr "Phóng to tất cả"
#: ../extensions/window-list/extension.js:329
msgid "Unmaximize all"
msgstr "Hủy phóng to tất cả"
#: ../extensions/window-list/extension.js:338
msgid "Close all"
msgstr "Đóng hết"
#: ../extensions/window-list/extension.js:649
#: ../extensions/workspace-indicator/extension.js:30
msgid "Workspace Indicator"
msgstr "Bộ chỉ thị vùng làm việc"
msgstr "Bộ chỉ thị không gian làm việc"
#: ../extensions/window-list/extension.js:799
msgid "Window List"
msgstr "Danh sách cửa sổ"
#: ../extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml.in.h:1
msgid "When to group windows"
@@ -273,8 +308,8 @@ msgid ""
"Decides when to group windows from the same application on the window list. "
"Possible values are \"never\", \"auto\" and \"always\"."
msgstr ""
"Decides when to group windows from the same application on the window list. "
"Các giá trị có thể là \"never\", \"auto\" và \"always\"."
"Quyết định khi nào thì nhóm các cửa sổ của cùng một ứng dụng trên danh sách "
"cửa số. Các giá trị có thể là \"never\", \"auto\" và \"always\"."
#: ../extensions/window-list/prefs.js:30
msgid "Window Grouping"
@@ -293,41 +328,56 @@ msgid "Always group windows"
msgstr "Luôn nhóm các cửa sổ lại với nhau"
#: ../extensions/workspace-indicator/prefs.js:141
msgid "Workspace names:"
msgstr "Tên vùng làm việc:"
msgid "Workspace Names"
msgstr "Tên vùng làm việc"
#: ../extensions/workspace-indicator/prefs.js:152
#: ../extensions/workspace-indicator/prefs.js:157
msgid "Name"
msgstr "Tên"
#: ../extensions/workspace-indicator/prefs.js:186
#, c-format
#: ../extensions/workspace-indicator/prefs.js:198
#, javascript-format
msgid "Workspace %d"
msgstr "Vùng làm việc %d"
msgstr "Không gian làm việc %d"
#: ../extensions/xrandr-indicator/extension.js:30
msgid "Normal"
msgstr "Bình thường"
#~ msgid "Suspend"
#~ msgstr "Ngừng"
#: ../extensions/xrandr-indicator/extension.js:31
msgid "Left"
msgstr "Trái"
#~ msgid "Hibernate"
#~ msgstr "Ngủ đông"
#: ../extensions/xrandr-indicator/extension.js:32
msgid "Right"
msgstr "Phải"
#~ msgid "Power Off"
#~ msgstr "Tắt máy"
#: ../extensions/xrandr-indicator/extension.js:33
msgid "Upside-down"
msgstr "Trên-xuống"
#~ msgid "Enable suspending"
#~ msgstr "Cho phép tạm dừng"
#: ../extensions/xrandr-indicator/extension.js:50
msgid "Display"
msgstr "Hiển thị"
#~ msgid "Control the visibility of the Suspend menu item"
#~ msgstr "Cấu hình trình đơn con “Tạm dừng” hiện hay ẩn đi"
#: ../extensions/xrandr-indicator/extension.js:87
msgid "Display Settings"
msgstr "Cài đặt hiển thị"
#~ msgid "Enable hibernating"
#~ msgstr "Cho phép ngủ đông"
#~ msgid "Control the visibility of the Hibernate menu item"
#~ msgstr "Cấu hình trình đơn con “Ngủ đông” hiện hay ẩn đi"
#~ msgid "Normal"
#~ msgstr "Bình thường"
#~ msgid "Left"
#~ msgstr "Trái"
#~ msgid "Right"
#~ msgstr "Phải"
#~ msgid "Upside-down"
#~ msgstr "Trên-xuống"
#~ msgid "Display"
#~ msgstr "Hiển thị"
#~ msgid "Display Settings"
#~ msgstr "Cài đặt hiển thị"
#~ msgid "Notifications"
#~ msgstr "Thông báo"