Compare commits
33 Commits
wip/is-swi
...
3.8.1
Author | SHA1 | Date | |
---|---|---|---|
2cda0472bd | |||
4710753700 | |||
2b439ef209 | |||
2fc76e6d9e | |||
ff544450a5 | |||
b4590da686 | |||
6c4be0311a | |||
4a2cdc20f0 | |||
6ce79c62eb | |||
96994721ef | |||
f358bb1a96 | |||
1bce210c51 | |||
8a3c8d1b1c | |||
08b224de1f | |||
86c92c37d2 | |||
07053c3df7 | |||
4fb33c9b09 | |||
5e6a25c3c2 | |||
e14ef4a294 | |||
8b659f0f4c | |||
a6395c95d4 | |||
98e74dfd38 | |||
1d728186db | |||
2499f2ed80 | |||
963905adcd | |||
7c21ab0985 | |||
77d3712261 | |||
0376f22d41 | |||
007820b7c1 | |||
dc98711477 | |||
e98c6ff31b | |||
9eae74357a | |||
1ee88a2878 |
28
NEWS
28
NEWS
@ -1,3 +1,31 @@
|
|||||||
|
3.8.1
|
||||||
|
=====
|
||||||
|
* Clip window group during startup animation [Jasper; #696323]
|
||||||
|
* Check for logind rather than systemd [Martin; #696252]
|
||||||
|
* Don't special-case last remote search provider position [Giovanni; #694974]
|
||||||
|
* Fix memory leaks [Ray, Jasper; ##697119, #697295, #697300, #697395]
|
||||||
|
* AppSwitcherPopup: Activate only the selected window if any [Rui; #697480]
|
||||||
|
* Enable screen recorder keybinding in all modes [Florian; #696200]
|
||||||
|
* Remove box-shadow from screen shield for performance reasons [Adel; #697274]
|
||||||
|
* Add support for -st-natural-width/height CSS properties [Giovanni; #664411]
|
||||||
|
* Remove excessive padding from notification buttons [Allan; #664411]
|
||||||
|
* Fix thumbnail dragging in overview [Jasper; #697504]
|
||||||
|
* theme-node: Add get_url()/lookup_url() methods [Florian; #693688]
|
||||||
|
* Misc bug fixes and cleanups [Jasper, Rui, Colin, David, Ray, Matthias:
|
||||||
|
#695859, #696259, #696585, #696436, #697432, #697435, #697560, #697722,
|
||||||
|
#697709]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Giovanni Campagna, Matthias Clasen, Allan Day, Adel Gadllah, David Gumberg,
|
||||||
|
Rui Matos, Florian Müllner, Martin Pitt, Jasper St. Pierre, Ray Strode,
|
||||||
|
Colin Walters
|
||||||
|
|
||||||
|
Translations:
|
||||||
|
Daniel Martinez [an], Bruce Cowan [en_GB], Khaled Hosny [ar],
|
||||||
|
Ihar Hrachyshka [be], Aron Xu [zh_CN], Wojciech Szczęsny [pl],
|
||||||
|
Inaki Larranaga Murgoitio [eu], Kjartan Maraas [nb],
|
||||||
|
Милош Поповић [sr, sr@latin], Trần Ngọc Quân [vi]
|
||||||
|
|
||||||
3.8.0.1
|
3.8.0.1
|
||||||
=======
|
=======
|
||||||
* Background bug fixes [Ray; #696712]
|
* Background bug fixes [Ray; #696712]
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
AC_PREREQ(2.63)
|
AC_PREREQ(2.63)
|
||||||
AC_INIT([gnome-shell],[3.8.0.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
AC_INIT([gnome-shell],[3.8.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||||
|
|
||||||
AC_CONFIG_HEADERS([config.h])
|
AC_CONFIG_HEADERS([config.h])
|
||||||
AC_CONFIG_SRCDIR([src/shell-global.c])
|
AC_CONFIG_SRCDIR([src/shell-global.c])
|
||||||
@ -63,7 +63,7 @@ AM_CONDITIONAL(BUILD_RECORDER, $build_recorder)
|
|||||||
CLUTTER_MIN_VERSION=1.13.4
|
CLUTTER_MIN_VERSION=1.13.4
|
||||||
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
|
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
|
||||||
GJS_MIN_VERSION=1.35.4
|
GJS_MIN_VERSION=1.35.4
|
||||||
MUTTER_MIN_VERSION=3.8.0
|
MUTTER_MIN_VERSION=3.8.1
|
||||||
GTK_MIN_VERSION=3.7.9
|
GTK_MIN_VERSION=3.7.9
|
||||||
GIO_MIN_VERSION=2.35.0
|
GIO_MIN_VERSION=2.35.0
|
||||||
LIBECAL_MIN_VERSION=3.5.3
|
LIBECAL_MIN_VERSION=3.5.3
|
||||||
|
@ -512,6 +512,7 @@ StScrollBar StButton#vhandle:active {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#appMenu {
|
#appMenu {
|
||||||
|
spinner-image: url("process-working.svg");
|
||||||
spacing: 4px;
|
spacing: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1453,11 +1454,13 @@ StScrollBar StButton#vhandle:active {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.notification-button {
|
.notification-button {
|
||||||
padding: 4px 42px 5px;
|
-st-natural-width: 140px;
|
||||||
|
padding: 4px 4px 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification-button:focus {
|
.notification-button:focus {
|
||||||
padding: 3px 41px 4px;
|
-st-natural-width: 138px;
|
||||||
|
padding: 3px 4px 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification-icon-button {
|
.notification-icon-button {
|
||||||
@ -2445,7 +2448,6 @@ StScrollBar StButton#vhandle:active {
|
|||||||
|
|
||||||
.screen-shield-background {
|
.screen-shield-background {
|
||||||
background: black;
|
background: black;
|
||||||
box-shadow: 0px 4px 8px rgba(0,0,0,0.9);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#lockDialogGroup {
|
#lockDialogGroup {
|
||||||
|
@ -774,7 +774,8 @@ const LoginDialog = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_prepareDialog: function(forSecret, hold) {
|
_prepareDialog: function(forSecret, hold) {
|
||||||
this._workSpinner = new Panel.AnimatedIcon('process-working.svg', WORK_SPINNER_ICON_SIZE);
|
let spinnerIcon = global.datadir + '/theme/process-working.svg';
|
||||||
|
this._workSpinner = new Panel.AnimatedIcon(spinnerIcon, WORK_SPINNER_ICON_SIZE);
|
||||||
this._workSpinner.actor.opacity = 0;
|
this._workSpinner.actor.opacity = 0;
|
||||||
this._workSpinner.actor.show();
|
this._workSpinner.actor.show();
|
||||||
|
|
||||||
|
@ -233,8 +233,10 @@ const AppSwitcherPopup = new Lang.Class({
|
|||||||
|
|
||||||
_finish : function(timestamp) {
|
_finish : function(timestamp) {
|
||||||
let appIcon = this._items[this._selectedIndex];
|
let appIcon = this._items[this._selectedIndex];
|
||||||
let window = this._currentWindow > 0 ? this._currentWindow : 0;
|
if (this._currentWindow < 0)
|
||||||
appIcon.app.activate_window(appIcon.cachedWindows[window], timestamp);
|
appIcon.app.activate_full(-1, timestamp);
|
||||||
|
else
|
||||||
|
Main.activateWindow(appIcon.cachedWindows[this._currentWindow], timestamp);
|
||||||
|
|
||||||
this.parent();
|
this.parent();
|
||||||
},
|
},
|
||||||
|
@ -126,6 +126,11 @@ const BackgroundCache = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
removeImageContent: function(content) {
|
removeImageContent: function(content) {
|
||||||
|
let filename = content.get_filename();
|
||||||
|
|
||||||
|
if (filename && this._fileMonitors[filename])
|
||||||
|
delete this._fileMonitors[filename];
|
||||||
|
|
||||||
this._removeContent(this._images, content);
|
this._removeContent(this._images, content);
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -426,7 +431,7 @@ const Background = new Lang.Class({
|
|||||||
content.brightness = this._brightness;
|
content.brightness = this._brightness;
|
||||||
content.vignette_sharpness = this._vignetteSharpness;
|
content.vignette_sharpness = this._vignetteSharpness;
|
||||||
|
|
||||||
this._cache.removeImageContent(content);
|
this._cache.removeImageContent(this._images[index].content);
|
||||||
this._images[index].content = content;
|
this._images[index].content = content;
|
||||||
this._watchCacheFile(filename);
|
this._watchCacheFile(filename);
|
||||||
},
|
},
|
||||||
@ -742,11 +747,15 @@ const BackgroundManager = new Lang.Class({
|
|||||||
time: FADE_ANIMATION_TIME,
|
time: FADE_ANIMATION_TIME,
|
||||||
transition: 'easeOutQuad',
|
transition: 'easeOutQuad',
|
||||||
onComplete: Lang.bind(this, function() {
|
onComplete: Lang.bind(this, function() {
|
||||||
if (this.background == background) {
|
if (this._newBackground == newBackground) {
|
||||||
this.background = newBackground;
|
this.background = newBackground;
|
||||||
this._newBackground = null;
|
this._newBackground = null;
|
||||||
background.actor.destroy();
|
} else {
|
||||||
|
newBackground.actor.destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
background.actor.destroy();
|
||||||
|
|
||||||
this.emit('changed');
|
this.emit('changed');
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
@ -60,5 +60,7 @@ function addBackgroundMenu(actor) {
|
|||||||
actor._backgroundMenu.destroy();
|
actor._backgroundMenu.destroy();
|
||||||
actor._backgroundMenu = null;
|
actor._backgroundMenu = null;
|
||||||
actor._backgroundManager = null;
|
actor._backgroundManager = null;
|
||||||
|
|
||||||
|
cursor.destroy();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -20,8 +20,7 @@ const Recorder = new Lang.Class({
|
|||||||
Main.wm.addKeybinding('toggle-recording',
|
Main.wm.addKeybinding('toggle-recording',
|
||||||
this._bindingSettings,
|
this._bindingSettings,
|
||||||
Meta.KeyBindingFlags.NONE,
|
Meta.KeyBindingFlags.NONE,
|
||||||
Shell.KeyBindingMode.NORMAL |
|
Shell.KeyBindingMode.ALL,
|
||||||
Shell.KeyBindingMode.OVERVIEW,
|
|
||||||
Lang.bind(this, this._toggleRecorder));
|
Lang.bind(this, this._toggleRecorder));
|
||||||
},
|
},
|
||||||
|
|
||||||
|
16
js/ui/dnd.js
16
js/ui/dnd.js
@ -291,19 +291,19 @@ const _Draggable = new Lang.Class({
|
|||||||
this._dragOrigY = this._dragActor.y;
|
this._dragOrigY = this._dragActor.y;
|
||||||
this._dragOrigScale = this._dragActor.scale_x;
|
this._dragOrigScale = this._dragActor.scale_x;
|
||||||
|
|
||||||
this._dragActor.reparent(Main.uiGroup);
|
// Set the actor's scale such that it will keep the same
|
||||||
this._dragActor.raise_top();
|
// transformed size when it's reparented to the uiGroup
|
||||||
Shell.util_set_hidden_from_pick(this._dragActor, true);
|
let [scaledWidth, scaledHeight] = this.actor.get_transformed_size();
|
||||||
|
this._dragActor.set_scale(scaledWidth / this.actor.width,
|
||||||
|
scaledHeight / this.actor.height);
|
||||||
|
|
||||||
let [actorStageX, actorStageY] = this.actor.get_transformed_position();
|
let [actorStageX, actorStageY] = this.actor.get_transformed_position();
|
||||||
this._dragOffsetX = actorStageX - this._dragStartX;
|
this._dragOffsetX = actorStageX - this._dragStartX;
|
||||||
this._dragOffsetY = actorStageY - this._dragStartY;
|
this._dragOffsetY = actorStageY - this._dragStartY;
|
||||||
|
|
||||||
// Set the actor's scale such that it will keep the same
|
this._dragActor.reparent(Main.uiGroup);
|
||||||
// transformed size when it's reparented to the uiGroup
|
this._dragActor.raise_top();
|
||||||
let [scaledWidth, scaledHeight] = this.actor.get_transformed_size();
|
Shell.util_set_hidden_from_pick(this._dragActor, true);
|
||||||
this.actor.set_scale(scaledWidth / this.actor.width,
|
|
||||||
scaledHeight / this.actor.height);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this._dragOrigOpacity = this._dragActor.opacity;
|
this._dragOrigOpacity = this._dragActor.opacity;
|
||||||
|
@ -1721,6 +1721,9 @@ const MessageTray = new Lang.Class({
|
|||||||
this.actor.add_action(clickAction);
|
this.actor.add_action(clickAction);
|
||||||
|
|
||||||
clickAction.connect('clicked', Lang.bind(this, function(action) {
|
clickAction.connect('clicked', Lang.bind(this, function(action) {
|
||||||
|
if (this._trayState != State.SHOWN)
|
||||||
|
return;
|
||||||
|
|
||||||
let button = action.get_button();
|
let button = action.get_button();
|
||||||
if (button == 3)
|
if (button == 3)
|
||||||
this._openContextMenu();
|
this._openContextMenu();
|
||||||
@ -1731,7 +1734,7 @@ const MessageTray = new Lang.Class({
|
|||||||
clickAction.connect('long-press', Lang.bind(this, function(action, actor, state) {
|
clickAction.connect('long-press', Lang.bind(this, function(action, actor, state) {
|
||||||
switch (state) {
|
switch (state) {
|
||||||
case Clutter.LongPressState.QUERY:
|
case Clutter.LongPressState.QUERY:
|
||||||
return true;
|
return this._trayState == State.SHOWN;
|
||||||
case Clutter.LongPressState.ACTIVATE:
|
case Clutter.LongPressState.ACTIVATE:
|
||||||
this._openContextMenu();
|
this._openContextMenu();
|
||||||
}
|
}
|
||||||
|
@ -144,8 +144,8 @@ const AnimatedIcon = new Lang.Class({
|
|||||||
Name: 'AnimatedIcon',
|
Name: 'AnimatedIcon',
|
||||||
Extends: Animation,
|
Extends: Animation,
|
||||||
|
|
||||||
_init: function(name, size) {
|
_init: function(filename, size) {
|
||||||
this.parent(global.datadir + '/theme/' + name, size, size, ANIMATED_ICON_UPDATE_TIMEOUT);
|
this.parent(filename, size, size, ANIMATED_ICON_UPDATE_TIMEOUT);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -258,6 +258,7 @@ const AppMenuButton = new Lang.Class({
|
|||||||
this._actionGroupNotifyId = 0;
|
this._actionGroupNotifyId = 0;
|
||||||
|
|
||||||
let bin = new St.Bin({ name: 'appMenu' });
|
let bin = new St.Bin({ name: 'appMenu' });
|
||||||
|
bin.connect('style-changed', Lang.bind(this, this._onStyleChanged));
|
||||||
this.actor.add_actor(bin);
|
this.actor.add_actor(bin);
|
||||||
|
|
||||||
this.actor.bind_property("reactive", this.actor, "can-focus", 0);
|
this.actor.bind_property("reactive", this.actor, "can-focus", 0);
|
||||||
@ -297,11 +298,7 @@ const AppMenuButton = new Lang.Class({
|
|||||||
|
|
||||||
this._stop = true;
|
this._stop = true;
|
||||||
|
|
||||||
this._spinner = new AnimatedIcon('process-working.svg',
|
this._spinner = null;
|
||||||
PANEL_ICON_SIZE);
|
|
||||||
this._container.add_actor(this._spinner.actor);
|
|
||||||
this._spinner.actor.hide();
|
|
||||||
this._spinner.actor.lower_bottom();
|
|
||||||
|
|
||||||
let tracker = Shell.WindowTracker.get_default();
|
let tracker = Shell.WindowTracker.get_default();
|
||||||
let appSys = Shell.AppSystem.get_default();
|
let appSys = Shell.AppSystem.get_default();
|
||||||
@ -354,6 +351,18 @@ const AppMenuButton = new Lang.Class({
|
|||||||
onCompleteScope: this });
|
onCompleteScope: this });
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_onStyleChanged: function(actor) {
|
||||||
|
let node = actor.get_theme_node();
|
||||||
|
let [success, icon] = node.lookup_url('spinner-image', false);
|
||||||
|
if (!success || this._spinnerIcon == icon)
|
||||||
|
return;
|
||||||
|
this._spinnerIcon = icon;
|
||||||
|
this._spinner = new AnimatedIcon(this._spinnerIcon, PANEL_ICON_SIZE);
|
||||||
|
this._container.add_actor(this._spinner.actor);
|
||||||
|
this._spinner.actor.hide();
|
||||||
|
this._spinner.actor.lower_bottom();
|
||||||
|
},
|
||||||
|
|
||||||
_onIconBoxStyleChanged: function() {
|
_onIconBoxStyleChanged: function() {
|
||||||
let node = this._iconBox.get_theme_node();
|
let node = this._iconBox.get_theme_node();
|
||||||
this._iconBottomClip = node.get_length('app-icon-bottom-clip');
|
this._iconBottomClip = node.get_length('app-icon-bottom-clip');
|
||||||
@ -385,6 +394,10 @@ const AppMenuButton = new Lang.Class({
|
|||||||
|
|
||||||
this._stop = true;
|
this._stop = true;
|
||||||
this.actor.reactive = true;
|
this.actor.reactive = true;
|
||||||
|
|
||||||
|
if (this._spinner == null)
|
||||||
|
return;
|
||||||
|
|
||||||
Tweener.addTween(this._spinner.actor,
|
Tweener.addTween(this._spinner.actor,
|
||||||
{ opacity: 0,
|
{ opacity: 0,
|
||||||
time: SPINNER_ANIMATION_TIME,
|
time: SPINNER_ANIMATION_TIME,
|
||||||
@ -401,6 +414,10 @@ const AppMenuButton = new Lang.Class({
|
|||||||
startAnimation: function() {
|
startAnimation: function() {
|
||||||
this._stop = false;
|
this._stop = false;
|
||||||
this.actor.reactive = false;
|
this.actor.reactive = false;
|
||||||
|
|
||||||
|
if (this._spinner == null)
|
||||||
|
return;
|
||||||
|
|
||||||
this._spinner.play();
|
this._spinner.play();
|
||||||
this._spinner.actor.show();
|
this._spinner.actor.show();
|
||||||
},
|
},
|
||||||
@ -463,6 +480,9 @@ const AppMenuButton = new Lang.Class({
|
|||||||
}
|
}
|
||||||
this._label.actor.allocate(childBox, flags);
|
this._label.actor.allocate(childBox, flags);
|
||||||
|
|
||||||
|
if (this._spinner == null)
|
||||||
|
return;
|
||||||
|
|
||||||
if (direction == Clutter.TextDirection.LTR) {
|
if (direction == Clutter.TextDirection.LTR) {
|
||||||
childBox.x1 = Math.floor(iconWidth / 2) + this._label.actor.width;
|
childBox.x1 = Math.floor(iconWidth / 2) + this._label.actor.width;
|
||||||
childBox.x2 = childBox.x1 + this._spinner.actor.width;
|
childBox.x2 = childBox.x1 + this._spinner.actor.width;
|
||||||
@ -553,6 +573,7 @@ const AppMenuButton = new Lang.Class({
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (this._spinner)
|
||||||
this._spinner.actor.hide();
|
this._spinner.actor.hide();
|
||||||
if (this._iconBox.child != null)
|
if (this._iconBox.child != null)
|
||||||
this._iconBox.child.destroy();
|
this._iconBox.child.destroy();
|
||||||
|
@ -1157,6 +1157,7 @@ const PopupMenuBase = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
destroy: function() {
|
destroy: function() {
|
||||||
|
this.close();
|
||||||
this.removeAll();
|
this.removeAll();
|
||||||
this.actor.destroy();
|
this.actor.destroy();
|
||||||
|
|
||||||
|
@ -35,7 +35,8 @@ const RunDialog = new Lang.Class({
|
|||||||
Extends: ModalDialog.ModalDialog,
|
Extends: ModalDialog.ModalDialog,
|
||||||
|
|
||||||
_init : function() {
|
_init : function() {
|
||||||
this.parent({ styleClass: 'run-dialog' });
|
this.parent({ styleClass: 'run-dialog',
|
||||||
|
destroyOnClose: false });
|
||||||
|
|
||||||
this._lockdownSettings = new Gio.Settings({ schema: LOCKDOWN_SCHEMA });
|
this._lockdownSettings = new Gio.Settings({ schema: LOCKDOWN_SCHEMA });
|
||||||
this._terminalSettings = new Gio.Settings({ schema: TERMINAL_SCHEMA });
|
this._terminalSettings = new Gio.Settings({ schema: TERMINAL_SCHEMA });
|
||||||
|
@ -562,6 +562,7 @@ const ScreenShield = new Lang.Class({
|
|||||||
this._bgManagers[i].destroy();
|
this._bgManagers[i].destroy();
|
||||||
|
|
||||||
this._bgManagers = [];
|
this._bgManagers = [];
|
||||||
|
this._backgroundGroup.destroy_all_children();
|
||||||
|
|
||||||
for (let i = 0; i < Main.layoutManager.monitors.length; i++)
|
for (let i = 0; i < Main.layoutManager.monitors.length; i++)
|
||||||
this._createBackground(i);
|
this._createBackground(i);
|
||||||
|
@ -81,7 +81,7 @@ const _modes = {
|
|||||||
'initial-setup': {
|
'initial-setup': {
|
||||||
hasWindows: true,
|
hasWindows: true,
|
||||||
isPrimary: true,
|
isPrimary: true,
|
||||||
components: ['keyring'],
|
components: ['networkAgent', 'keyring'],
|
||||||
panel: {
|
panel: {
|
||||||
left: [],
|
left: [],
|
||||||
center: ['dateMenu'],
|
center: ['dateMenu'],
|
||||||
|
@ -82,11 +82,6 @@ const EntryMenu = new Lang.Class({
|
|||||||
this.actor.grab_key_focus();
|
this.actor.grab_key_focus();
|
||||||
},
|
},
|
||||||
|
|
||||||
close: function(animate) {
|
|
||||||
this._entry.grab_key_focus();
|
|
||||||
this.parent(animate);
|
|
||||||
},
|
|
||||||
|
|
||||||
_updateCopyItem: function() {
|
_updateCopyItem: function() {
|
||||||
let selection = this._entry.clutter_text.get_selection();
|
let selection = this._entry.clutter_text.get_selection();
|
||||||
this._copyItem.setSensitive(!this._entry.clutter_text.password_char &&
|
this._copyItem.setSensitive(!this._entry.clutter_text.password_char &&
|
||||||
|
@ -91,7 +91,8 @@ const UnlockDialog = new Lang.Class({
|
|||||||
this._promptLoginHint.hide();
|
this._promptLoginHint.hide();
|
||||||
this.contentLayout.add_actor(this._promptLoginHint);
|
this.contentLayout.add_actor(this._promptLoginHint);
|
||||||
|
|
||||||
this._workSpinner = new Panel.AnimatedIcon('process-working.svg', LoginDialog.WORK_SPINNER_ICON_SIZE);
|
let spinnerIcon = global.datadir + '/theme/process-working.svg';
|
||||||
|
this._workSpinner = new Panel.AnimatedIcon(spinnerIcon, LoginDialog.WORK_SPINNER_ICON_SIZE);
|
||||||
this._workSpinner.actor.opacity = 0;
|
this._workSpinner.actor.opacity = 0;
|
||||||
|
|
||||||
this.allowCancel = false;
|
this.allowCancel = false;
|
||||||
|
@ -55,6 +55,7 @@ js/ui/viewSelector.js
|
|||||||
js/ui/wanda.js
|
js/ui/wanda.js
|
||||||
js/ui/windowAttentionHandler.js
|
js/ui/windowAttentionHandler.js
|
||||||
src/calendar-server/evolution-calendar.desktop.in.in
|
src/calendar-server/evolution-calendar.desktop.in.in
|
||||||
|
# Please do not remove this file from POTFILES.in. Run "git submodule init && git submodule update" to get it.
|
||||||
src/gvc/gvc-mixer-control.c
|
src/gvc/gvc-mixer-control.c
|
||||||
src/main.c
|
src/main.c
|
||||||
src/shell-app.c
|
src/shell-app.c
|
||||||
|
163
po/sr.po
163
po/sr.po
@ -8,7 +8,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: gnome-shell master\n"
|
"Project-Id-Version: gnome-shell master\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-03-04 08:38+0000\n"
|
"POT-Creation-Date: 2013-03-31 01:48+0000\n"
|
||||||
"PO-Revision-Date: 2013-03-08 20:26+0200\n"
|
"PO-Revision-Date: 2013-03-08 20:26+0200\n"
|
||||||
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
|
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
|
||||||
"Language-Team: Serbian <gnom@prevod.org>\n"
|
"Language-Team: Serbian <gnom@prevod.org>\n"
|
||||||
@ -16,8 +16,8 @@ msgstr ""
|
|||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
|
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
||||||
"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||||
"X-Project-Style: gnome\n"
|
"X-Project-Style: gnome\n"
|
||||||
|
|
||||||
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
|
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
|
||||||
@ -365,53 +365,52 @@ msgid "Select an extension to configure using the combobox above."
|
|||||||
msgstr "Изаберите проширење за подешавање користећи прозорче за избор."
|
msgstr "Изаберите проширење за подешавање користећи прозорче за избор."
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:405
|
#: ../js/gdm/loginDialog.js:405
|
||||||
#| msgid "Session..."
|
|
||||||
msgid "Session…"
|
msgid "Session…"
|
||||||
msgstr "Сесија…"
|
msgstr "Сесија…"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: ../js/gdm/loginDialog.js:629
|
#: ../js/gdm/loginDialog.js:630
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Није на списку?"
|
msgstr "Није на списку?"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:783 ../js/ui/components/networkAgent.js:137
|
#: ../js/gdm/loginDialog.js:786 ../js/ui/components/networkAgent.js:137
|
||||||
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:375
|
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:375
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:415 ../js/ui/unlockDialog.js:126
|
#: ../js/ui/status/bluetooth.js:415 ../js/ui/unlockDialog.js:99
|
||||||
#: ../js/ui/userMenu.js:934
|
#: ../js/ui/userMenu.js:938
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Откажи"
|
msgstr "Откажи"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:799
|
#: ../js/gdm/loginDialog.js:802
|
||||||
msgctxt "button"
|
msgctxt "button"
|
||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Пријави ме"
|
msgstr "Пријави ме"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:799
|
#: ../js/gdm/loginDialog.js:802
|
||||||
msgid "Next"
|
msgid "Next"
|
||||||
msgstr "Даље"
|
msgstr "Даље"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
#. TTLS and PEAP are actually much more complicated, but this complication
|
||||||
#. is not visible here since we only care about phase2 authentication
|
#. is not visible here since we only care about phase2 authentication
|
||||||
#. (and don't even care of which one)
|
#. (and don't even care of which one)
|
||||||
#: ../js/gdm/loginDialog.js:904 ../js/ui/components/networkAgent.js:260
|
#: ../js/gdm/loginDialog.js:917 ../js/ui/components/networkAgent.js:260
|
||||||
#: ../js/ui/components/networkAgent.js:278
|
#: ../js/ui/components/networkAgent.js:278
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Корисничко име: "
|
msgstr "Корисничко име: "
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:1157
|
#: ../js/gdm/loginDialog.js:1173
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Прозор за пријављивање"
|
msgstr "Прозор за пријављивање"
|
||||||
|
|
||||||
#. Translators: accessible name of the power menu in the login screen
|
#. Translators: accessible name of the power menu in the login screen
|
||||||
#: ../js/gdm/powerMenu.js:36
|
#: ../js/gdm/powerMenu.js:36
|
||||||
msgid "Power"
|
msgid "Power"
|
||||||
msgstr "Угаси"
|
msgstr "Напајање"
|
||||||
|
|
||||||
#: ../js/gdm/powerMenu.js:93 ../js/ui/userMenu.js:695 ../js/ui/userMenu.js:699
|
#: ../js/gdm/powerMenu.js:93 ../js/ui/userMenu.js:696 ../js/ui/userMenu.js:700
|
||||||
#: ../js/ui/userMenu.js:815
|
#: ../js/ui/userMenu.js:816
|
||||||
msgid "Suspend"
|
msgid "Suspend"
|
||||||
msgstr "Обустави"
|
msgstr "Обустави"
|
||||||
|
|
||||||
@ -419,58 +418,58 @@ msgstr "Обустави"
|
|||||||
msgid "Restart"
|
msgid "Restart"
|
||||||
msgstr "Поново покрени"
|
msgstr "Поново покрени"
|
||||||
|
|
||||||
#: ../js/gdm/powerMenu.js:103 ../js/ui/userMenu.js:697
|
#: ../js/gdm/powerMenu.js:103 ../js/ui/userMenu.js:698
|
||||||
#: ../js/ui/userMenu.js:699 ../js/ui/userMenu.js:814 ../js/ui/userMenu.js:938
|
#: ../js/ui/userMenu.js:700 ../js/ui/userMenu.js:815 ../js/ui/userMenu.js:942
|
||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Угаси"
|
msgstr "Искључи"
|
||||||
|
|
||||||
#: ../js/gdm/util.js:182
|
#: ../js/gdm/util.js:249
|
||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Грешка потврђивања идентитета"
|
msgstr "Грешка потврђивања идентитета"
|
||||||
|
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: ../js/gdm/util.js:299
|
#: ../js/gdm/util.js:366
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(или лупите прст)"
|
msgstr "(или лупите прст)"
|
||||||
|
|
||||||
#: ../js/gdm/util.js:324
|
#: ../js/gdm/util.js:391
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(нпр., корисник или %s)"
|
msgstr "(нпр., корисник или %s)"
|
||||||
|
|
||||||
#: ../js/misc/util.js:94
|
#: ../js/misc/util.js:97
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Наредба није нађена"
|
msgstr "Наредба није нађена"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
||||||
#. something nicer
|
#. something nicer
|
||||||
#: ../js/misc/util.js:127
|
#: ../js/misc/util.js:130
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Не могу да обрадим наредбу:"
|
msgstr "Не могу да обрадим наредбу:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:135
|
#: ../js/misc/util.js:138
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Није успело покретање „%s“:"
|
msgstr "Није успело покретање „%s“:"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:348
|
#: ../js/ui/appDisplay.js:349
|
||||||
msgid "Frequent"
|
msgid "Frequent"
|
||||||
msgstr "Често"
|
msgstr "Често"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:355
|
#: ../js/ui/appDisplay.js:356
|
||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Све"
|
msgstr "Све"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:913
|
#: ../js/ui/appDisplay.js:914
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Нови прозор"
|
msgstr "Нови прозор"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:916 ../js/ui/dash.js:284
|
#: ../js/ui/appDisplay.js:917 ../js/ui/dash.js:284
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Уклони из омиљених"
|
msgstr "Уклони из омиљених"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:917
|
#: ../js/ui/appDisplay.js:918
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Додај у омиљене"
|
msgstr "Додај у омиљене"
|
||||||
|
|
||||||
@ -484,7 +483,7 @@ msgstr "„%s“ је додат међу омиљене."
|
|||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "„%s“ је уклоњен из омиљених."
|
msgstr "„%s“ је уклоњен из омиљених."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/userMenu.js:788
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/userMenu.js:789
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Подешавања"
|
msgstr "Подешавања"
|
||||||
|
|
||||||
@ -507,7 +506,7 @@ msgctxt "event list time"
|
|||||||
msgid "%H\\u2236%M"
|
msgid "%H\\u2236%M"
|
||||||
msgstr "%H\\u2236%M"
|
msgstr "%H\\u2236%M"
|
||||||
|
|
||||||
#. Transators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space
|
||||||
#: ../js/ui/calendar.js:77
|
#: ../js/ui/calendar.js:77
|
||||||
@ -609,35 +608,35 @@ msgid "S"
|
|||||||
msgstr "Суб"
|
msgstr "Суб"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events
|
||||||
#: ../js/ui/calendar.js:692
|
#: ../js/ui/calendar.js:720
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "Ништа планирано"
|
msgstr "Ништа планирано"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year
|
||||||
#: ../js/ui/calendar.js:708
|
#: ../js/ui/calendar.js:736
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %B %d"
|
msgstr "%A, %B %d"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year
|
||||||
#: ../js/ui/calendar.js:711
|
#: ../js/ui/calendar.js:739
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A, %B %d, %Y"
|
msgstr "%A, %B %d, %Y"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:721
|
#: ../js/ui/calendar.js:749
|
||||||
msgid "Today"
|
msgid "Today"
|
||||||
msgstr "Данас"
|
msgstr "Данас"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:725
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Tomorrow"
|
msgid "Tomorrow"
|
||||||
msgstr "Сутра"
|
msgstr "Сутра"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:736
|
#: ../js/ui/calendar.js:764
|
||||||
msgid "This week"
|
msgid "This week"
|
||||||
msgstr "Ове недеље"
|
msgstr "Ове недеље"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:744
|
#: ../js/ui/calendar.js:772
|
||||||
msgid "Next week"
|
msgid "Next week"
|
||||||
msgstr "Следеће недеље"
|
msgstr "Следеће недеље"
|
||||||
|
|
||||||
@ -653,12 +652,12 @@ msgstr "Спољни уређај је искључен"
|
|||||||
msgid "Removable Devices"
|
msgid "Removable Devices"
|
||||||
msgstr "Уклоњиви уређаји"
|
msgstr "Уклоњиви уређаји"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:593
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Отвори програмом %s"
|
msgstr "Отвори програмом %s"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:619
|
#: ../js/ui/components/autorunManager.js:620
|
||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Избаци"
|
msgstr "Избаци"
|
||||||
|
|
||||||
@ -1038,7 +1037,7 @@ msgstr "Подешавања датума и времена"
|
|||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. Translators: This is the date format to use when the calendar popup is
|
||||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#.
|
||||||
#: ../js/ui/dateMenu.js:205
|
#: ../js/ui/dateMenu.js:215
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A, %e. %b., %R"
|
msgstr "%A, %e. %b., %R"
|
||||||
|
|
||||||
@ -1213,7 +1212,6 @@ msgid "Remove"
|
|||||||
msgstr "Уклони"
|
msgstr "Уклони"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1501
|
#: ../js/ui/messageTray.js:1501
|
||||||
#| msgid "No Messages"
|
|
||||||
msgid "Clear Messages"
|
msgid "Clear Messages"
|
||||||
msgstr "Очисти поруке"
|
msgstr "Очисти поруке"
|
||||||
|
|
||||||
@ -1221,15 +1219,15 @@ msgstr "Очисти поруке"
|
|||||||
msgid "Notification Settings"
|
msgid "Notification Settings"
|
||||||
msgstr "Поставке обавештења"
|
msgstr "Поставке обавештења"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1707
|
#: ../js/ui/messageTray.js:1709
|
||||||
msgid "No Messages"
|
msgid "No Messages"
|
||||||
msgstr "Нема порука"
|
msgstr "Нема порука"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1787
|
#: ../js/ui/messageTray.js:1782
|
||||||
msgid "Message Tray"
|
msgid "Message Tray"
|
||||||
msgstr "Фиока порука"
|
msgstr "Фиока порука"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:2864
|
#: ../js/ui/messageTray.js:2810
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Подаци о систему"
|
msgstr "Подаци о систему"
|
||||||
|
|
||||||
@ -1238,7 +1236,7 @@ msgctxt "program"
|
|||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Непознат"
|
msgstr "Непознат"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:460 ../js/ui/screenShield.js:153
|
#: ../js/ui/overviewControls.js:463 ../js/ui/screenShield.js:149
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
@ -1247,7 +1245,7 @@ msgstr[1] "%d нове поруке"
|
|||||||
msgstr[2] "%d нових порука"
|
msgstr[2] "%d нових порука"
|
||||||
msgstr[3] "Једна нова порука"
|
msgstr[3] "Једна нова порука"
|
||||||
|
|
||||||
#: ../js/ui/overview.js:82
|
#: ../js/ui/overview.js:84
|
||||||
msgid "Undo"
|
msgid "Undo"
|
||||||
msgstr "Опозови"
|
msgstr "Опозови"
|
||||||
|
|
||||||
@ -1259,22 +1257,21 @@ msgstr "Преглед"
|
|||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters.
|
||||||
#: ../js/ui/overview.js:284
|
#: ../js/ui/overview.js:271
|
||||||
#| msgid "Type to search..."
|
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Упишите текст за претрагу…"
|
msgstr "Упишите текст за претрагу…"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:613
|
#: ../js/ui/panel.js:612
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Изађи"
|
msgstr "Изађи"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview".
|
||||||
#: ../js/ui/panel.js:642
|
#: ../js/ui/panel.js:636
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Активности"
|
msgstr "Активности"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:983
|
#: ../js/ui/panel.js:933
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Горња трака"
|
msgstr "Горња трака"
|
||||||
|
|
||||||
@ -1287,21 +1284,21 @@ msgstr "Горња трака"
|
|||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
#: ../js/ui/runDialog.js:205
|
#: ../js/ui/runDialog.js:73
|
||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Унесите наредбу"
|
msgstr "Унесите наредбу"
|
||||||
|
|
||||||
#: ../js/ui/runDialog.js:241
|
#: ../js/ui/runDialog.js:109
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "Затвори"
|
msgstr "Затвори"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format
|
||||||
#: ../js/ui/screenShield.js:90
|
#: ../js/ui/screenShield.js:86
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d. %B"
|
msgstr "%A, %d. %B"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:155
|
#: ../js/ui/screenShield.js:151
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
@ -1310,11 +1307,11 @@ msgstr[1] "%d нова обавештења"
|
|||||||
msgstr[2] "%d нових обавештења"
|
msgstr[2] "%d нових обавештења"
|
||||||
msgstr[3] "Једно ново обавештење"
|
msgstr[3] "Једно ново обавештење"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:442 ../js/ui/userMenu.js:806
|
#: ../js/ui/screenShield.js:438 ../js/ui/userMenu.js:807
|
||||||
msgid "Lock"
|
msgid "Lock"
|
||||||
msgstr "Закључај"
|
msgstr "Закључај"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:639
|
#: ../js/ui/screenShield.js:640
|
||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "Гном мора да закључа екран"
|
msgstr "Гном мора да закључа екран"
|
||||||
|
|
||||||
@ -1325,21 +1322,19 @@ msgstr "Гном мора да закључа екран"
|
|||||||
#.
|
#.
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
#. XXX: another option is to kick the user into the gdm login
|
||||||
#. screen, where we're not affected by grabs
|
#. screen, where we're not affected by grabs
|
||||||
#: ../js/ui/screenShield.js:758 ../js/ui/screenShield.js:1169
|
#: ../js/ui/screenShield.js:761 ../js/ui/screenShield.js:1197
|
||||||
#| msgid "Unable to connect to %s"
|
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "Не могу да закључам"
|
msgstr "Не могу да закључам"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:759 ../js/ui/screenShield.js:1170
|
#: ../js/ui/screenShield.js:762 ../js/ui/screenShield.js:1198
|
||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Неки програм је блокирао закључавање"
|
msgstr "Неки програм је блокирао закључавање"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:431
|
#: ../js/ui/searchDisplay.js:453
|
||||||
#| msgid "Searching..."
|
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Тражим…"
|
msgstr "Тражим…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:475
|
#: ../js/ui/searchDisplay.js:497
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Нема одговарајућих резултата."
|
msgstr "Нема одговарајућих резултата."
|
||||||
|
|
||||||
@ -1351,11 +1346,11 @@ msgstr "Умножи"
|
|||||||
msgid "Paste"
|
msgid "Paste"
|
||||||
msgstr "Убаци"
|
msgstr "Убаци"
|
||||||
|
|
||||||
#: ../js/ui/shellEntry.js:105
|
#: ../js/ui/shellEntry.js:106
|
||||||
msgid "Show Text"
|
msgid "Show Text"
|
||||||
msgstr "Прикажи текст"
|
msgstr "Прикажи текст"
|
||||||
|
|
||||||
#: ../js/ui/shellEntry.js:107
|
#: ../js/ui/shellEntry.js:108
|
||||||
msgid "Hide Text"
|
msgid "Hide Text"
|
||||||
msgstr "Сакриј текст"
|
msgstr "Сакриј текст"
|
||||||
|
|
||||||
@ -1367,7 +1362,7 @@ msgstr "Лозинка"
|
|||||||
msgid "Remember Password"
|
msgid "Remember Password"
|
||||||
msgstr "Запамти лозинку"
|
msgstr "Запамти лозинку"
|
||||||
|
|
||||||
#: ../js/ui/shellMountOperation.js:403 ../js/ui/unlockDialog.js:140
|
#: ../js/ui/shellMountOperation.js:403 ../js/ui/unlockDialog.js:113
|
||||||
msgid "Unlock"
|
msgid "Unlock"
|
||||||
msgstr "Откључај"
|
msgstr "Откључај"
|
||||||
|
|
||||||
@ -1431,12 +1426,10 @@ msgid "Visibility"
|
|||||||
msgstr "Видљивост"
|
msgstr "Видљивост"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:59
|
#: ../js/ui/status/bluetooth.js:59
|
||||||
#| msgid "Send Files to Device..."
|
|
||||||
msgid "Send Files to Device…"
|
msgid "Send Files to Device…"
|
||||||
msgstr "Пошаљи датотеке на уређај…"
|
msgstr "Пошаљи датотеке на уређај…"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:60
|
#: ../js/ui/status/bluetooth.js:60
|
||||||
#| msgid "Set Up a New Device..."
|
|
||||||
msgid "Set Up a New Device…"
|
msgid "Set Up a New Device…"
|
||||||
msgstr "Подеси нови уређај…"
|
msgstr "Подеси нови уређај…"
|
||||||
|
|
||||||
@ -1463,7 +1456,6 @@ msgid "connecting..."
|
|||||||
msgstr "повезујем се..."
|
msgstr "повезујем се..."
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:239
|
#: ../js/ui/status/bluetooth.js:239
|
||||||
#| msgid "Send Files..."
|
|
||||||
msgid "Send Files…"
|
msgid "Send Files…"
|
||||||
msgstr "Пошаљи датотеке…"
|
msgstr "Пошаљи датотеке…"
|
||||||
|
|
||||||
@ -1676,7 +1668,6 @@ msgstr "Подешавања напајања"
|
|||||||
#. 0 is reported when UPower does not have enough data
|
#. 0 is reported when UPower does not have enough data
|
||||||
#. to estimate battery life
|
#. to estimate battery life
|
||||||
#: ../js/ui/status/power.js:99
|
#: ../js/ui/status/power.js:99
|
||||||
#| msgid "Estimating..."
|
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "Приближно…"
|
msgstr "Приближно…"
|
||||||
|
|
||||||
@ -1784,11 +1775,11 @@ msgstr "Јачина звука"
|
|||||||
msgid "Microphone"
|
msgid "Microphone"
|
||||||
msgstr "Микрофон"
|
msgstr "Микрофон"
|
||||||
|
|
||||||
#: ../js/ui/unlockDialog.js:151
|
#: ../js/ui/unlockDialog.js:124
|
||||||
msgid "Log in as another user"
|
msgid "Log in as another user"
|
||||||
msgstr "Пријавите се као други корсник"
|
msgstr "Пријавите се као други корсник"
|
||||||
|
|
||||||
#: ../js/ui/unlockDialog.js:177
|
#: ../js/ui/unlockDialog.js:145
|
||||||
msgid "Unlock Window"
|
msgid "Unlock Window"
|
||||||
msgstr "Откључај прозор"
|
msgstr "Откључај прозор"
|
||||||
|
|
||||||
@ -1816,27 +1807,27 @@ msgstr "Мирује"
|
|||||||
msgid "Offline"
|
msgid "Offline"
|
||||||
msgstr "Ван мреже"
|
msgstr "Ван мреже"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:780
|
#: ../js/ui/userMenu.js:781
|
||||||
msgid "Notifications"
|
msgid "Notifications"
|
||||||
msgstr "Обавештења"
|
msgstr "Обавештења"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:796
|
#: ../js/ui/userMenu.js:797
|
||||||
msgid "Switch User"
|
msgid "Switch User"
|
||||||
msgstr "Промени корисника"
|
msgstr "Промени корисника"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:801
|
#: ../js/ui/userMenu.js:802
|
||||||
msgid "Log Out"
|
msgid "Log Out"
|
||||||
msgstr "Одјави ме"
|
msgstr "Одјави ме"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:821
|
#: ../js/ui/userMenu.js:822
|
||||||
msgid "Install Updates & Restart"
|
msgid "Install Updates & Restart"
|
||||||
msgstr "Инсталирај ажурирања и поново покрени"
|
msgstr "Инсталирај ажурирања и поново покрени"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:839
|
#: ../js/ui/userMenu.js:840
|
||||||
msgid "Your chat status will be set to busy"
|
msgid "Your chat status will be set to busy"
|
||||||
msgstr "Ваше стање ћаскања ће бити постављено на заузето"
|
msgstr "Ваше стање ћаскања ће бити постављено на заузето"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:840
|
#: ../js/ui/userMenu.js:841
|
||||||
msgid ""
|
msgid ""
|
||||||
"Notifications are now disabled, including chat messages. Your online status "
|
"Notifications are now disabled, including chat messages. Your online status "
|
||||||
"has been adjusted to let others know that you might not see their messages."
|
"has been adjusted to let others know that you might not see their messages."
|
||||||
@ -1845,20 +1836,22 @@ msgstr ""
|
|||||||
"мрежи је подешено тако да ће остали знати да ви не можете видети њихове "
|
"мрежи је подешено тако да ће остали знати да ви не можете видети њихове "
|
||||||
"поруке."
|
"поруке."
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:886
|
#: ../js/ui/userMenu.js:888
|
||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Други корисници су пријављени."
|
msgstr "Други корисници су пријављени."
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:891
|
#: ../js/ui/userMenu.js:893
|
||||||
msgid "Shutting down might cause them to lose unsaved work."
|
msgid "Shutting down might cause them to lose unsaved work."
|
||||||
msgstr "Искључивање може да доведе до тога да изгубе несачувани рад."
|
msgstr "Искључивање може да доведе до тога да изгубе несачувани рад."
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:918
|
#. Translators: Remote here refers to a remote session, like a ssh login
|
||||||
|
#: ../js/ui/userMenu.js:921
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (удаљено)"
|
msgstr "%s (удаљено)"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:920
|
#. Translators: Console here refers to a tty like a VT console
|
||||||
|
#: ../js/ui/userMenu.js:924
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (љуска)"
|
msgstr "%s (љуска)"
|
||||||
@ -1871,7 +1864,7 @@ msgstr "Програми"
|
|||||||
msgid "Search"
|
msgid "Search"
|
||||||
msgstr "Тражи"
|
msgstr "Тражи"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:92
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
@ -1880,7 +1873,7 @@ msgstr ""
|
|||||||
"Извините, данас за вас нема мудрости:\n"
|
"Извините, данас за вас нема мудрости:\n"
|
||||||
"%s"
|
"%s"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:96
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "Пророк је рекао %s"
|
msgstr "Пророк је рекао %s"
|
||||||
|
163
po/sr@latin.po
163
po/sr@latin.po
@ -8,7 +8,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: gnome-shell master\n"
|
"Project-Id-Version: gnome-shell master\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-03-04 08:38+0000\n"
|
"POT-Creation-Date: 2013-03-31 01:48+0000\n"
|
||||||
"PO-Revision-Date: 2013-03-08 20:26+0200\n"
|
"PO-Revision-Date: 2013-03-08 20:26+0200\n"
|
||||||
"Last-Translator: Miroslav Nikolić <miroslavnikolic@rocketmail.com>\n"
|
"Last-Translator: Miroslav Nikolić <miroslavnikolic@rocketmail.com>\n"
|
||||||
"Language-Team: Serbian <gnom@prevod.org>\n"
|
"Language-Team: Serbian <gnom@prevod.org>\n"
|
||||||
@ -16,8 +16,8 @@ msgstr ""
|
|||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
|
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
||||||
"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||||
"X-Project-Style: gnome\n"
|
"X-Project-Style: gnome\n"
|
||||||
|
|
||||||
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
|
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
|
||||||
@ -365,53 +365,52 @@ msgid "Select an extension to configure using the combobox above."
|
|||||||
msgstr "Izaberite proširenje za podešavanje koristeći prozorče za izbor."
|
msgstr "Izaberite proširenje za podešavanje koristeći prozorče za izbor."
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:405
|
#: ../js/gdm/loginDialog.js:405
|
||||||
#| msgid "Session..."
|
|
||||||
msgid "Session…"
|
msgid "Session…"
|
||||||
msgstr "Sesija…"
|
msgstr "Sesija…"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: ../js/gdm/loginDialog.js:629
|
#: ../js/gdm/loginDialog.js:630
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Nije na spisku?"
|
msgstr "Nije na spisku?"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:783 ../js/ui/components/networkAgent.js:137
|
#: ../js/gdm/loginDialog.js:786 ../js/ui/components/networkAgent.js:137
|
||||||
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:375
|
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:375
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:415 ../js/ui/unlockDialog.js:126
|
#: ../js/ui/status/bluetooth.js:415 ../js/ui/unlockDialog.js:99
|
||||||
#: ../js/ui/userMenu.js:934
|
#: ../js/ui/userMenu.js:938
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Otkaži"
|
msgstr "Otkaži"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:799
|
#: ../js/gdm/loginDialog.js:802
|
||||||
msgctxt "button"
|
msgctxt "button"
|
||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Prijavi me"
|
msgstr "Prijavi me"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:799
|
#: ../js/gdm/loginDialog.js:802
|
||||||
msgid "Next"
|
msgid "Next"
|
||||||
msgstr "Dalje"
|
msgstr "Dalje"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
#. TTLS and PEAP are actually much more complicated, but this complication
|
||||||
#. is not visible here since we only care about phase2 authentication
|
#. is not visible here since we only care about phase2 authentication
|
||||||
#. (and don't even care of which one)
|
#. (and don't even care of which one)
|
||||||
#: ../js/gdm/loginDialog.js:904 ../js/ui/components/networkAgent.js:260
|
#: ../js/gdm/loginDialog.js:917 ../js/ui/components/networkAgent.js:260
|
||||||
#: ../js/ui/components/networkAgent.js:278
|
#: ../js/ui/components/networkAgent.js:278
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Korisničko ime: "
|
msgstr "Korisničko ime: "
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:1157
|
#: ../js/gdm/loginDialog.js:1173
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Prozor za prijavljivanje"
|
msgstr "Prozor za prijavljivanje"
|
||||||
|
|
||||||
#. Translators: accessible name of the power menu in the login screen
|
#. Translators: accessible name of the power menu in the login screen
|
||||||
#: ../js/gdm/powerMenu.js:36
|
#: ../js/gdm/powerMenu.js:36
|
||||||
msgid "Power"
|
msgid "Power"
|
||||||
msgstr "Ugasi"
|
msgstr "Napajanje"
|
||||||
|
|
||||||
#: ../js/gdm/powerMenu.js:93 ../js/ui/userMenu.js:695 ../js/ui/userMenu.js:699
|
#: ../js/gdm/powerMenu.js:93 ../js/ui/userMenu.js:696 ../js/ui/userMenu.js:700
|
||||||
#: ../js/ui/userMenu.js:815
|
#: ../js/ui/userMenu.js:816
|
||||||
msgid "Suspend"
|
msgid "Suspend"
|
||||||
msgstr "Obustavi"
|
msgstr "Obustavi"
|
||||||
|
|
||||||
@ -419,58 +418,58 @@ msgstr "Obustavi"
|
|||||||
msgid "Restart"
|
msgid "Restart"
|
||||||
msgstr "Ponovo pokreni"
|
msgstr "Ponovo pokreni"
|
||||||
|
|
||||||
#: ../js/gdm/powerMenu.js:103 ../js/ui/userMenu.js:697
|
#: ../js/gdm/powerMenu.js:103 ../js/ui/userMenu.js:698
|
||||||
#: ../js/ui/userMenu.js:699 ../js/ui/userMenu.js:814 ../js/ui/userMenu.js:938
|
#: ../js/ui/userMenu.js:700 ../js/ui/userMenu.js:815 ../js/ui/userMenu.js:942
|
||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Ugasi"
|
msgstr "Isključi"
|
||||||
|
|
||||||
#: ../js/gdm/util.js:182
|
#: ../js/gdm/util.js:249
|
||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Greška potvrđivanja identiteta"
|
msgstr "Greška potvrđivanja identiteta"
|
||||||
|
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: ../js/gdm/util.js:299
|
#: ../js/gdm/util.js:366
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(ili lupite prst)"
|
msgstr "(ili lupite prst)"
|
||||||
|
|
||||||
#: ../js/gdm/util.js:324
|
#: ../js/gdm/util.js:391
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(npr., korisnik ili %s)"
|
msgstr "(npr., korisnik ili %s)"
|
||||||
|
|
||||||
#: ../js/misc/util.js:94
|
#: ../js/misc/util.js:97
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Naredba nije nađena"
|
msgstr "Naredba nije nađena"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
||||||
#. something nicer
|
#. something nicer
|
||||||
#: ../js/misc/util.js:127
|
#: ../js/misc/util.js:130
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Ne mogu da obradim naredbu:"
|
msgstr "Ne mogu da obradim naredbu:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:135
|
#: ../js/misc/util.js:138
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Nije uspelo pokretanje „%s“:"
|
msgstr "Nije uspelo pokretanje „%s“:"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:348
|
#: ../js/ui/appDisplay.js:349
|
||||||
msgid "Frequent"
|
msgid "Frequent"
|
||||||
msgstr "Često"
|
msgstr "Često"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:355
|
#: ../js/ui/appDisplay.js:356
|
||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Sve"
|
msgstr "Sve"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:913
|
#: ../js/ui/appDisplay.js:914
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Novi prozor"
|
msgstr "Novi prozor"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:916 ../js/ui/dash.js:284
|
#: ../js/ui/appDisplay.js:917 ../js/ui/dash.js:284
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Ukloni iz omiljenih"
|
msgstr "Ukloni iz omiljenih"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:917
|
#: ../js/ui/appDisplay.js:918
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Dodaj u omiljene"
|
msgstr "Dodaj u omiljene"
|
||||||
|
|
||||||
@ -484,7 +483,7 @@ msgstr "„%s“ je dodat među omiljene."
|
|||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "„%s“ je uklonjen iz omiljenih."
|
msgstr "„%s“ je uklonjen iz omiljenih."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/userMenu.js:788
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/userMenu.js:789
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Podešavanja"
|
msgstr "Podešavanja"
|
||||||
|
|
||||||
@ -507,7 +506,7 @@ msgctxt "event list time"
|
|||||||
msgid "%H\\u2236%M"
|
msgid "%H\\u2236%M"
|
||||||
msgstr "%H\\u2236%M"
|
msgstr "%H\\u2236%M"
|
||||||
|
|
||||||
#. Transators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space
|
||||||
#: ../js/ui/calendar.js:77
|
#: ../js/ui/calendar.js:77
|
||||||
@ -609,35 +608,35 @@ msgid "S"
|
|||||||
msgstr "Sub"
|
msgstr "Sub"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events
|
||||||
#: ../js/ui/calendar.js:692
|
#: ../js/ui/calendar.js:720
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "Ništa planirano"
|
msgstr "Ništa planirano"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year
|
||||||
#: ../js/ui/calendar.js:708
|
#: ../js/ui/calendar.js:736
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %B %d"
|
msgstr "%A, %B %d"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year
|
||||||
#: ../js/ui/calendar.js:711
|
#: ../js/ui/calendar.js:739
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A, %B %d, %Y"
|
msgstr "%A, %B %d, %Y"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:721
|
#: ../js/ui/calendar.js:749
|
||||||
msgid "Today"
|
msgid "Today"
|
||||||
msgstr "Danas"
|
msgstr "Danas"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:725
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Tomorrow"
|
msgid "Tomorrow"
|
||||||
msgstr "Sutra"
|
msgstr "Sutra"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:736
|
#: ../js/ui/calendar.js:764
|
||||||
msgid "This week"
|
msgid "This week"
|
||||||
msgstr "Ove nedelje"
|
msgstr "Ove nedelje"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:744
|
#: ../js/ui/calendar.js:772
|
||||||
msgid "Next week"
|
msgid "Next week"
|
||||||
msgstr "Sledeće nedelje"
|
msgstr "Sledeće nedelje"
|
||||||
|
|
||||||
@ -653,12 +652,12 @@ msgstr "Spoljni uređaj je isključen"
|
|||||||
msgid "Removable Devices"
|
msgid "Removable Devices"
|
||||||
msgstr "Uklonjivi uređaji"
|
msgstr "Uklonjivi uređaji"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:593
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Otvori programom %s"
|
msgstr "Otvori programom %s"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:619
|
#: ../js/ui/components/autorunManager.js:620
|
||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Izbaci"
|
msgstr "Izbaci"
|
||||||
|
|
||||||
@ -1038,7 +1037,7 @@ msgstr "Podešavanja datuma i vremena"
|
|||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. Translators: This is the date format to use when the calendar popup is
|
||||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#.
|
||||||
#: ../js/ui/dateMenu.js:205
|
#: ../js/ui/dateMenu.js:215
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A, %e. %b., %R"
|
msgstr "%A, %e. %b., %R"
|
||||||
|
|
||||||
@ -1213,7 +1212,6 @@ msgid "Remove"
|
|||||||
msgstr "Ukloni"
|
msgstr "Ukloni"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1501
|
#: ../js/ui/messageTray.js:1501
|
||||||
#| msgid "No Messages"
|
|
||||||
msgid "Clear Messages"
|
msgid "Clear Messages"
|
||||||
msgstr "Očisti poruke"
|
msgstr "Očisti poruke"
|
||||||
|
|
||||||
@ -1221,15 +1219,15 @@ msgstr "Očisti poruke"
|
|||||||
msgid "Notification Settings"
|
msgid "Notification Settings"
|
||||||
msgstr "Postavke obaveštenja"
|
msgstr "Postavke obaveštenja"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1707
|
#: ../js/ui/messageTray.js:1709
|
||||||
msgid "No Messages"
|
msgid "No Messages"
|
||||||
msgstr "Nema poruka"
|
msgstr "Nema poruka"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1787
|
#: ../js/ui/messageTray.js:1782
|
||||||
msgid "Message Tray"
|
msgid "Message Tray"
|
||||||
msgstr "Fioka poruka"
|
msgstr "Fioka poruka"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:2864
|
#: ../js/ui/messageTray.js:2810
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Podaci o sistemu"
|
msgstr "Podaci o sistemu"
|
||||||
|
|
||||||
@ -1238,7 +1236,7 @@ msgctxt "program"
|
|||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Nepoznat"
|
msgstr "Nepoznat"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:460 ../js/ui/screenShield.js:153
|
#: ../js/ui/overviewControls.js:463 ../js/ui/screenShield.js:149
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
@ -1247,7 +1245,7 @@ msgstr[1] "%d nove poruke"
|
|||||||
msgstr[2] "%d novih poruka"
|
msgstr[2] "%d novih poruka"
|
||||||
msgstr[3] "Jedna nova poruka"
|
msgstr[3] "Jedna nova poruka"
|
||||||
|
|
||||||
#: ../js/ui/overview.js:82
|
#: ../js/ui/overview.js:84
|
||||||
msgid "Undo"
|
msgid "Undo"
|
||||||
msgstr "Opozovi"
|
msgstr "Opozovi"
|
||||||
|
|
||||||
@ -1259,22 +1257,21 @@ msgstr "Pregled"
|
|||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters.
|
||||||
#: ../js/ui/overview.js:284
|
#: ../js/ui/overview.js:271
|
||||||
#| msgid "Type to search..."
|
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Upišite tekst za pretragu…"
|
msgstr "Upišite tekst za pretragu…"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:613
|
#: ../js/ui/panel.js:612
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Izađi"
|
msgstr "Izađi"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview".
|
||||||
#: ../js/ui/panel.js:642
|
#: ../js/ui/panel.js:636
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Aktivnosti"
|
msgstr "Aktivnosti"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:983
|
#: ../js/ui/panel.js:933
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Gornja traka"
|
msgstr "Gornja traka"
|
||||||
|
|
||||||
@ -1287,21 +1284,21 @@ msgstr "Gornja traka"
|
|||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
#: ../js/ui/runDialog.js:205
|
#: ../js/ui/runDialog.js:73
|
||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Unesite naredbu"
|
msgstr "Unesite naredbu"
|
||||||
|
|
||||||
#: ../js/ui/runDialog.js:241
|
#: ../js/ui/runDialog.js:109
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "Zatvori"
|
msgstr "Zatvori"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format
|
||||||
#: ../js/ui/screenShield.js:90
|
#: ../js/ui/screenShield.js:86
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d. %B"
|
msgstr "%A, %d. %B"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:155
|
#: ../js/ui/screenShield.js:151
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
@ -1310,11 +1307,11 @@ msgstr[1] "%d nova obaveštenja"
|
|||||||
msgstr[2] "%d novih obaveštenja"
|
msgstr[2] "%d novih obaveštenja"
|
||||||
msgstr[3] "Jedno novo obaveštenje"
|
msgstr[3] "Jedno novo obaveštenje"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:442 ../js/ui/userMenu.js:806
|
#: ../js/ui/screenShield.js:438 ../js/ui/userMenu.js:807
|
||||||
msgid "Lock"
|
msgid "Lock"
|
||||||
msgstr "Zaključaj"
|
msgstr "Zaključaj"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:639
|
#: ../js/ui/screenShield.js:640
|
||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "Gnom mora da zaključa ekran"
|
msgstr "Gnom mora da zaključa ekran"
|
||||||
|
|
||||||
@ -1325,21 +1322,19 @@ msgstr "Gnom mora da zaključa ekran"
|
|||||||
#.
|
#.
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
#. XXX: another option is to kick the user into the gdm login
|
||||||
#. screen, where we're not affected by grabs
|
#. screen, where we're not affected by grabs
|
||||||
#: ../js/ui/screenShield.js:758 ../js/ui/screenShield.js:1169
|
#: ../js/ui/screenShield.js:761 ../js/ui/screenShield.js:1197
|
||||||
#| msgid "Unable to connect to %s"
|
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "Ne mogu da zaključam"
|
msgstr "Ne mogu da zaključam"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:759 ../js/ui/screenShield.js:1170
|
#: ../js/ui/screenShield.js:762 ../js/ui/screenShield.js:1198
|
||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Neki program je blokirao zaključavanje"
|
msgstr "Neki program je blokirao zaključavanje"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:431
|
#: ../js/ui/searchDisplay.js:453
|
||||||
#| msgid "Searching..."
|
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Tražim…"
|
msgstr "Tražim…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:475
|
#: ../js/ui/searchDisplay.js:497
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Nema odgovarajućih rezultata."
|
msgstr "Nema odgovarajućih rezultata."
|
||||||
|
|
||||||
@ -1351,11 +1346,11 @@ msgstr "Umnoži"
|
|||||||
msgid "Paste"
|
msgid "Paste"
|
||||||
msgstr "Ubaci"
|
msgstr "Ubaci"
|
||||||
|
|
||||||
#: ../js/ui/shellEntry.js:105
|
#: ../js/ui/shellEntry.js:106
|
||||||
msgid "Show Text"
|
msgid "Show Text"
|
||||||
msgstr "Prikaži tekst"
|
msgstr "Prikaži tekst"
|
||||||
|
|
||||||
#: ../js/ui/shellEntry.js:107
|
#: ../js/ui/shellEntry.js:108
|
||||||
msgid "Hide Text"
|
msgid "Hide Text"
|
||||||
msgstr "Sakrij tekst"
|
msgstr "Sakrij tekst"
|
||||||
|
|
||||||
@ -1367,7 +1362,7 @@ msgstr "Lozinka"
|
|||||||
msgid "Remember Password"
|
msgid "Remember Password"
|
||||||
msgstr "Zapamti lozinku"
|
msgstr "Zapamti lozinku"
|
||||||
|
|
||||||
#: ../js/ui/shellMountOperation.js:403 ../js/ui/unlockDialog.js:140
|
#: ../js/ui/shellMountOperation.js:403 ../js/ui/unlockDialog.js:113
|
||||||
msgid "Unlock"
|
msgid "Unlock"
|
||||||
msgstr "Otključaj"
|
msgstr "Otključaj"
|
||||||
|
|
||||||
@ -1431,12 +1426,10 @@ msgid "Visibility"
|
|||||||
msgstr "Vidljivost"
|
msgstr "Vidljivost"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:59
|
#: ../js/ui/status/bluetooth.js:59
|
||||||
#| msgid "Send Files to Device..."
|
|
||||||
msgid "Send Files to Device…"
|
msgid "Send Files to Device…"
|
||||||
msgstr "Pošalji datoteke na uređaj…"
|
msgstr "Pošalji datoteke na uređaj…"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:60
|
#: ../js/ui/status/bluetooth.js:60
|
||||||
#| msgid "Set Up a New Device..."
|
|
||||||
msgid "Set Up a New Device…"
|
msgid "Set Up a New Device…"
|
||||||
msgstr "Podesi novi uređaj…"
|
msgstr "Podesi novi uređaj…"
|
||||||
|
|
||||||
@ -1463,7 +1456,6 @@ msgid "connecting..."
|
|||||||
msgstr "povezujem se..."
|
msgstr "povezujem se..."
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:239
|
#: ../js/ui/status/bluetooth.js:239
|
||||||
#| msgid "Send Files..."
|
|
||||||
msgid "Send Files…"
|
msgid "Send Files…"
|
||||||
msgstr "Pošalji datoteke…"
|
msgstr "Pošalji datoteke…"
|
||||||
|
|
||||||
@ -1676,7 +1668,6 @@ msgstr "Podešavanja napajanja"
|
|||||||
#. 0 is reported when UPower does not have enough data
|
#. 0 is reported when UPower does not have enough data
|
||||||
#. to estimate battery life
|
#. to estimate battery life
|
||||||
#: ../js/ui/status/power.js:99
|
#: ../js/ui/status/power.js:99
|
||||||
#| msgid "Estimating..."
|
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "Približno…"
|
msgstr "Približno…"
|
||||||
|
|
||||||
@ -1784,11 +1775,11 @@ msgstr "Jačina zvuka"
|
|||||||
msgid "Microphone"
|
msgid "Microphone"
|
||||||
msgstr "Mikrofon"
|
msgstr "Mikrofon"
|
||||||
|
|
||||||
#: ../js/ui/unlockDialog.js:151
|
#: ../js/ui/unlockDialog.js:124
|
||||||
msgid "Log in as another user"
|
msgid "Log in as another user"
|
||||||
msgstr "Prijavite se kao drugi korsnik"
|
msgstr "Prijavite se kao drugi korsnik"
|
||||||
|
|
||||||
#: ../js/ui/unlockDialog.js:177
|
#: ../js/ui/unlockDialog.js:145
|
||||||
msgid "Unlock Window"
|
msgid "Unlock Window"
|
||||||
msgstr "Otključaj prozor"
|
msgstr "Otključaj prozor"
|
||||||
|
|
||||||
@ -1816,27 +1807,27 @@ msgstr "Miruje"
|
|||||||
msgid "Offline"
|
msgid "Offline"
|
||||||
msgstr "Van mreže"
|
msgstr "Van mreže"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:780
|
#: ../js/ui/userMenu.js:781
|
||||||
msgid "Notifications"
|
msgid "Notifications"
|
||||||
msgstr "Obaveštenja"
|
msgstr "Obaveštenja"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:796
|
#: ../js/ui/userMenu.js:797
|
||||||
msgid "Switch User"
|
msgid "Switch User"
|
||||||
msgstr "Promeni korisnika"
|
msgstr "Promeni korisnika"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:801
|
#: ../js/ui/userMenu.js:802
|
||||||
msgid "Log Out"
|
msgid "Log Out"
|
||||||
msgstr "Odjavi me"
|
msgstr "Odjavi me"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:821
|
#: ../js/ui/userMenu.js:822
|
||||||
msgid "Install Updates & Restart"
|
msgid "Install Updates & Restart"
|
||||||
msgstr "Instaliraj ažuriranja i ponovo pokreni"
|
msgstr "Instaliraj ažuriranja i ponovo pokreni"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:839
|
#: ../js/ui/userMenu.js:840
|
||||||
msgid "Your chat status will be set to busy"
|
msgid "Your chat status will be set to busy"
|
||||||
msgstr "Vaše stanje ćaskanja će biti postavljeno na zauzeto"
|
msgstr "Vaše stanje ćaskanja će biti postavljeno na zauzeto"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:840
|
#: ../js/ui/userMenu.js:841
|
||||||
msgid ""
|
msgid ""
|
||||||
"Notifications are now disabled, including chat messages. Your online status "
|
"Notifications are now disabled, including chat messages. Your online status "
|
||||||
"has been adjusted to let others know that you might not see their messages."
|
"has been adjusted to let others know that you might not see their messages."
|
||||||
@ -1845,20 +1836,22 @@ msgstr ""
|
|||||||
"mreži je podešeno tako da će ostali znati da vi ne možete videti njihove "
|
"mreži je podešeno tako da će ostali znati da vi ne možete videti njihove "
|
||||||
"poruke."
|
"poruke."
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:886
|
#: ../js/ui/userMenu.js:888
|
||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Drugi korisnici su prijavljeni."
|
msgstr "Drugi korisnici su prijavljeni."
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:891
|
#: ../js/ui/userMenu.js:893
|
||||||
msgid "Shutting down might cause them to lose unsaved work."
|
msgid "Shutting down might cause them to lose unsaved work."
|
||||||
msgstr "Isključivanje može da dovede do toga da izgube nesačuvani rad."
|
msgstr "Isključivanje može da dovede do toga da izgube nesačuvani rad."
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:918
|
#. Translators: Remote here refers to a remote session, like a ssh login
|
||||||
|
#: ../js/ui/userMenu.js:921
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (udaljeno)"
|
msgstr "%s (udaljeno)"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:920
|
#. Translators: Console here refers to a tty like a VT console
|
||||||
|
#: ../js/ui/userMenu.js:924
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (ljuska)"
|
msgstr "%s (ljuska)"
|
||||||
@ -1871,7 +1864,7 @@ msgstr "Programi"
|
|||||||
msgid "Search"
|
msgid "Search"
|
||||||
msgstr "Traži"
|
msgstr "Traži"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:92
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
@ -1880,7 +1873,7 @@ msgstr ""
|
|||||||
"Izvinite, danas za vas nema mudrosti:\n"
|
"Izvinite, danas za vas nema mudrosti:\n"
|
||||||
"%s"
|
"%s"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:96
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "Prorok je rekao %s"
|
msgstr "Prorok je rekao %s"
|
||||||
|
442
po/vi.po
442
po/vi.po
@ -1,18 +1,19 @@
|
|||||||
# Vietnamese translation for gnome-shell.
|
# Vietnamese translation for gnome-shell.
|
||||||
# Copyright (C) 2010 GNOME i18n Project for Vietnamese.
|
# Copyright (C) 2013 GNOME i18n Project for Vietnamese.
|
||||||
# This file is distributed under the same license as the gnome-shell package.
|
# This file is distributed under the same license as the gnome-shell package.
|
||||||
# Nguyễn Thái Ngọc Duy <pclouds@gmail.com>, 2010-2013.
|
# Nguyễn Thái Ngọc Duy <pclouds@gmail.com>, 2010-2013.
|
||||||
# Ngô Chin <ndtrung4419@gmail.com>, 2011.
|
# Ngô Chin <ndtrung4419@gmail.com>, 2011.
|
||||||
|
# Trần Ngọc Quân <vnwildman@gmail.com>, 2013.
|
||||||
#
|
#
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell\n"
|
"Project-Id-Version: gnome-shell\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-03-02 23:02+0000\n"
|
"POT-Creation-Date: 2013-03-23 11:49+0000\n"
|
||||||
"PO-Revision-Date: 2013-03-03 11:13+0700\n"
|
"PO-Revision-Date: 2013-04-13 17:51+1000\n"
|
||||||
"Last-Translator: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>\n"
|
"Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
|
||||||
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
|
"Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
|
||||||
"Language: vi\n"
|
"Language: vi\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@ -49,7 +50,7 @@ msgstr "Mở trình đơn ứng dụng"
|
|||||||
|
|
||||||
#: ../data/gnome-shell.desktop.in.in.h:1
|
#: ../data/gnome-shell.desktop.in.in.h:1
|
||||||
msgid "GNOME Shell"
|
msgid "GNOME Shell"
|
||||||
msgstr "GNOME Shell"
|
msgstr "Hệ vỏ GNOME"
|
||||||
|
|
||||||
#: ../data/gnome-shell.desktop.in.in.h:2
|
#: ../data/gnome-shell.desktop.in.in.h:2
|
||||||
msgid "Window management and application launching"
|
msgid "Window management and application launching"
|
||||||
@ -58,11 +59,11 @@ msgstr "Quản lý cửa sổ và chạy ứng dụng"
|
|||||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||||
#: ../js/extensionPrefs/main.js:153
|
#: ../js/extensionPrefs/main.js:153
|
||||||
msgid "GNOME Shell Extension Preferences"
|
msgid "GNOME Shell Extension Preferences"
|
||||||
msgstr "Tuỳ thích phần mở rộng GNOME Shell"
|
msgstr "Cá nhân hóa phần mở rộng hệ vỏ GNOME"
|
||||||
|
|
||||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:2
|
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:2
|
||||||
msgid "Configure GNOME Shell Extensions"
|
msgid "Configure GNOME Shell Extensions"
|
||||||
msgstr "Cấu hình phần mở rộng GNOME Shell"
|
msgstr "Cấu hình phần mở rộng Hệ vỏ GNOME"
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
|
||||||
msgid "Enable internal tools useful for developers and testers from Alt-F2"
|
msgid "Enable internal tools useful for developers and testers from Alt-F2"
|
||||||
@ -87,7 +88,7 @@ msgid ""
|
|||||||
"list. You can also manipulate this list with the EnableExtension and "
|
"list. You can also manipulate this list with the EnableExtension and "
|
||||||
"DisableExtension DBus methods on org.gnome.Shell."
|
"DisableExtension DBus methods on org.gnome.Shell."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Phần mở rộng GNOME Shell có thuộc tính uuid. Khoá này liệt kê danh sách phần "
|
"Phần mở rộng Hệ vỏ GNOME có thuộc tính uuid; khóa này liệt kê danh sách phần "
|
||||||
"mở rộng nên nạp. Bất kỳ phần mở rộng nào muốn nạp phải nằm trong danh sách "
|
"mở rộng nên nạp. Bất kỳ phần mở rộng nào muốn nạp phải nằm trong danh sách "
|
||||||
"này. Bạn có thể thao tác trên danh sách này với phương thức DBus "
|
"này. Bạn có thể thao tác trên danh sách này với phương thức DBus "
|
||||||
"EnableExtension và DisableExtension trên org.gnome.Shell."
|
"EnableExtension và DisableExtension trên org.gnome.Shell."
|
||||||
@ -120,13 +121,15 @@ msgstr ""
|
|||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
|
||||||
msgid "List of categories that should be displayed as folders"
|
msgid "List of categories that should be displayed as folders"
|
||||||
msgstr ""
|
msgstr "Liệt kê các các-ta-lốc mà nó có thể hiển thị như một thư mục"
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:10
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:10
|
||||||
msgid ""
|
msgid ""
|
||||||
"Each category name in this list will be represented as folder in the "
|
"Each category name in this list will be represented as folder in the "
|
||||||
"application view, rather than being displayed inline in the main view."
|
"application view, rather than being displayed inline in the main view."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Mỗi tên các-ta-lốc trong danh sách này sẽ được xuất hiện như là một thư mục "
|
||||||
|
"trong trình bày ứng dụng, thay vì hiển thị cùng dòng trong trình bày chính. "
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
|
||||||
msgid "History for command (Alt-F2) dialog"
|
msgid "History for command (Alt-F2) dialog"
|
||||||
@ -154,18 +157,22 @@ msgstr ""
|
|||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
|
||||||
msgid "Always show the 'Log out' menuitem in the user menu."
|
msgid "Always show the 'Log out' menuitem in the user menu."
|
||||||
msgstr "Luôn hiện mục \"Đăng xuất\" trên trình đơn người dùng."
|
msgstr "Luôn hiện mục “Đăng xuất” trên trình đơn người dùng."
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
|
||||||
msgid ""
|
msgid ""
|
||||||
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
|
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
|
||||||
"user, single-session situations."
|
"user, single-session situations."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Khóa này sẽ đè lên việc tự động ẩn trình đơn 'Đăng xuất' ở chế độ đơn-người-"
|
||||||
|
"dùng, đơn-phiên-làm-việc. "
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
|
||||||
msgid ""
|
msgid ""
|
||||||
"Whether to remember password for mounting encrypted or remote filesystems"
|
"Whether to remember password for mounting encrypted or remote filesystems"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Hoặc là ghi nhớ mật khẩu dành cho việc gắn hệ thống tập tin đã mã hóa hoặc "
|
||||||
|
"hệ thống tập tin trên máy chủ"
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -174,6 +181,10 @@ msgid ""
|
|||||||
"'Remember Password' checkbox will be present. This key sets the default "
|
"'Remember Password' checkbox will be present. This key sets the default "
|
||||||
"state of the checkbox."
|
"state of the checkbox."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Hệ vỏ sẽ yêu cầu mật khẩu khi có thư mục được mã hóa hay hệ thống tập tin "
|
||||||
|
"máy mạng được gắn. Nếu mật khẩu có thể ghi lại để dùng trong lần sau, hộp "
|
||||||
|
"dấu kiểm “Nhớ mật khẩu” sẽ xuất hiện. Khóa này đặt trạng thái mặc định cho "
|
||||||
|
"hộp dấu kiểm."
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
|
||||||
msgid "Show the week date in the calendar"
|
msgid "Show the week date in the calendar"
|
||||||
@ -226,27 +237,27 @@ msgstr "Phím chạy hoặc ngừng trình thu màn hình."
|
|||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
|
||||||
msgid "Which keyboard to use"
|
msgid "Which keyboard to use"
|
||||||
msgstr "Loại bàn phím cần dùng"
|
msgstr "Bàn phím cần dùng"
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
|
||||||
msgid "The type of keyboard to use."
|
msgid "The type of keyboard to use."
|
||||||
msgstr "Loại bàn phím cần dùng."
|
msgstr "Kiểu bàn phím cần dùng."
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
|
||||||
msgid "Framerate used for recording screencasts."
|
msgid "Framerate used for recording screencasts."
|
||||||
msgstr "Tốc độ khung dùng lưu screencast."
|
msgstr "Tốc độ khung hình sẽ dùng khi ghi screencast."
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
|
||||||
msgid ""
|
msgid ""
|
||||||
"The framerate of the resulting screencast recordered by GNOME Shell's "
|
"The framerate of the resulting screencast recordered by GNOME Shell's "
|
||||||
"screencast recorder in frames-per-second."
|
"screencast recorder in frames-per-second."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Tốc độ khung của screencast lưu bởi bộ thu GNOME Shell theo số khung mỗi "
|
"Tốc độ khung hình của screencast được ghi bởi bộ thu Hệ vỏ GNOME tính theo "
|
||||||
"giây."
|
"số khung mỗi giây."
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
|
||||||
msgid "The gstreamer pipeline used to encode the screencast"
|
msgid "The gstreamer pipeline used to encode the screencast"
|
||||||
msgstr "Ống dẫn gstreamer để thu screencast"
|
msgstr "Ống dẫn gstreamer dùng để thu screencast"
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
|
||||||
#, no-c-format
|
#, no-c-format
|
||||||
@ -267,9 +278,9 @@ msgstr ""
|
|||||||
"source pad không kết nối; đầu ra từ pad sẽ được ghi vào tập tin kết quả. Tuy "
|
"source pad không kết nối; đầu ra từ pad sẽ được ghi vào tập tin kết quả. Tuy "
|
||||||
"nhiên ống dẫn có thể tự lưu đầu ra riêng - có thể hữu dụng để gửi kết quả "
|
"nhiên ống dẫn có thể tự lưu đầu ra riêng - có thể hữu dụng để gửi kết quả "
|
||||||
"đến máy chủ icecast thông qua shout2send hoặc tương tự. Nếu bỏ chọn hoặc đặt "
|
"đến máy chủ icecast thông qua shout2send hoặc tương tự. Nếu bỏ chọn hoặc đặt "
|
||||||
"giá trị rỗng, ống dẫn mặc định sẽ được dùng, hiện thời là 'vp8enc "
|
"giá trị rỗng, ống dẫn mặc định sẽ được dùng, hiện thời là “vp8enc "
|
||||||
"min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! "
|
"min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! "
|
||||||
"queue ! webmmux' và lưu ở dạng WEBM dùng VP8 codec. %T được dùng để thế chỗ "
|
"queue ! webmmux” và lưu ở dạng WEBM dùng VP8 codec. %T được dùng để thế chỗ "
|
||||||
"cho số thread dự đoán tối ưu cho hệ thống."
|
"cho số thread dự đoán tối ưu cho hệ thống."
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
|
||||||
@ -296,25 +307,31 @@ msgid ""
|
|||||||
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
|
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
|
||||||
"only' (shows only the application icon) or 'both'."
|
"only' (shows only the application icon) or 'both'."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Cấu hình về cách hiển thị các cửa sổ ở bảng chuyển đổi. Các kiểu có thể là "
|
||||||
|
"'thumbnail-only' (hiển thị ảnh thu nhỏ của cửa sổ), 'app-icon-only' (chỉ "
|
||||||
|
"hiển thị biểu tượng của ứng dụng) hoặc 'both' (cả hai)."
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
|
||||||
msgid "Attach modal dialog to the parent window"
|
msgid "Attach modal dialog to the parent window"
|
||||||
msgstr ""
|
msgstr "Gắn hộp thoại dạng modal vào cửa sổ mẹ"
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
|
||||||
msgid ""
|
msgid ""
|
||||||
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
||||||
msgstr ""
|
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.gschema.xml.in.in.h:44
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
|
||||||
msgid "Arrangement of buttons on the titlebar"
|
msgid "Arrangement of buttons on the titlebar"
|
||||||
msgstr ""
|
msgstr "Sắp đặt các nút trên thanh tiêu đề"
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
|
||||||
msgid ""
|
msgid ""
|
||||||
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
|
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
|
||||||
"GNOME Shell."
|
"GNOME Shell."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Khóa này đè lên khóa có trong org.gnome.desktop.wm.preferences khi chạy hệ "
|
||||||
|
"vỏ GNOME."
|
||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:46
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:46
|
||||||
msgid "Enable edge tiling when dropping windows on screen edges"
|
msgid "Enable edge tiling when dropping windows on screen edges"
|
||||||
@ -348,46 +365,46 @@ msgstr "Phiên làm việc…"
|
|||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: ../js/gdm/loginDialog.js:629
|
#: ../js/gdm/loginDialog.js:630
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Không có trong danh sách?"
|
msgstr "Không có trong danh sách?"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:783 ../js/ui/components/networkAgent.js:137
|
#: ../js/gdm/loginDialog.js:786 ../js/ui/components/networkAgent.js:137
|
||||||
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:375
|
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:375
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:415 ../js/ui/unlockDialog.js:126
|
#: ../js/ui/status/bluetooth.js:415 ../js/ui/unlockDialog.js:99
|
||||||
#: ../js/ui/userMenu.js:932
|
#: ../js/ui/userMenu.js:938
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Thôi"
|
msgstr "Thôi"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:799
|
#: ../js/gdm/loginDialog.js:802
|
||||||
msgctxt "button"
|
msgctxt "button"
|
||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Đăng nhập"
|
msgstr "Đăng nhập"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:799
|
#: ../js/gdm/loginDialog.js:802
|
||||||
msgid "Next"
|
msgid "Next"
|
||||||
msgstr "Tới"
|
msgstr "Kế tiếp"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
#. TTLS and PEAP are actually much more complicated, but this complication
|
||||||
#. is not visible here since we only care about phase2 authentication
|
#. is not visible here since we only care about phase2 authentication
|
||||||
#. (and don't even care of which one)
|
#. (and don't even care of which one)
|
||||||
#: ../js/gdm/loginDialog.js:904 ../js/ui/components/networkAgent.js:260
|
#: ../js/gdm/loginDialog.js:917 ../js/ui/components/networkAgent.js:260
|
||||||
#: ../js/ui/components/networkAgent.js:278
|
#: ../js/ui/components/networkAgent.js:278
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Tên người dùng: "
|
msgstr "Tài khoản: "
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:1157
|
#: ../js/gdm/loginDialog.js:1173
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Cửa sổ đặt nhập"
|
msgstr "Cửa sổ đăng nhập"
|
||||||
|
|
||||||
#. Translators: accessible name of the power menu in the login screen
|
#. Translators: accessible name of the power menu in the login screen
|
||||||
#: ../js/gdm/powerMenu.js:36
|
#: ../js/gdm/powerMenu.js:36
|
||||||
msgid "Power"
|
msgid "Power"
|
||||||
msgstr "Nguồn"
|
msgstr "Nguồn"
|
||||||
|
|
||||||
#: ../js/gdm/powerMenu.js:93 ../js/ui/userMenu.js:694 ../js/ui/userMenu.js:698
|
#: ../js/gdm/powerMenu.js:93 ../js/ui/userMenu.js:696 ../js/ui/userMenu.js:700
|
||||||
#: ../js/ui/userMenu.js:814
|
#: ../js/ui/userMenu.js:816
|
||||||
msgid "Suspend"
|
msgid "Suspend"
|
||||||
msgstr "Ngưng"
|
msgstr "Ngưng"
|
||||||
|
|
||||||
@ -395,58 +412,58 @@ msgstr "Ngưng"
|
|||||||
msgid "Restart"
|
msgid "Restart"
|
||||||
msgstr "Khởi động lại"
|
msgstr "Khởi động lại"
|
||||||
|
|
||||||
#: ../js/gdm/powerMenu.js:103 ../js/ui/userMenu.js:696
|
#: ../js/gdm/powerMenu.js:103 ../js/ui/userMenu.js:698
|
||||||
#: ../js/ui/userMenu.js:698 ../js/ui/userMenu.js:813 ../js/ui/userMenu.js:936
|
#: ../js/ui/userMenu.js:700 ../js/ui/userMenu.js:815 ../js/ui/userMenu.js:942
|
||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Tắt máy"
|
msgstr "Tắt máy"
|
||||||
|
|
||||||
#: ../js/gdm/util.js:182
|
#: ../js/gdm/util.js:249
|
||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Lỗi xác thực"
|
msgstr "Lỗi xác thực"
|
||||||
|
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: ../js/gdm/util.js:299
|
#: ../js/gdm/util.js:366
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(hoặc quẹt ngón tay)"
|
msgstr "(hoặc quẹt ngón tay)"
|
||||||
|
|
||||||
#: ../js/gdm/util.js:324
|
#: ../js/gdm/util.js:391
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(ví dụ người dùng hoặc %s)"
|
msgstr "(ví dụ: tài khoản hoặc %s)"
|
||||||
|
|
||||||
#: ../js/misc/util.js:94
|
#: ../js/misc/util.js:97
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Không tìm thấy lệnh"
|
msgstr "Không tìm thấy lệnh"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
||||||
#. something nicer
|
#. something nicer
|
||||||
#: ../js/misc/util.js:127
|
#: ../js/misc/util.js:130
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Không thể phân tích lệnh:"
|
msgstr "Không thể phân tích lệnh:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:135
|
#: ../js/misc/util.js:138
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Lỗi thực hiện '%s':"
|
msgstr "Lỗi thực hiện “%s”:"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:348
|
#: ../js/ui/appDisplay.js:349
|
||||||
msgid "Frequent"
|
msgid "Frequent"
|
||||||
msgstr "Thường dùng"
|
msgstr "Thường dùng"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:355
|
#: ../js/ui/appDisplay.js:356
|
||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Tất cả"
|
msgstr "Tất cả"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:913
|
#: ../js/ui/appDisplay.js:914
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Cửa sổ mới"
|
msgstr "Cửa sổ mới"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:916 ../js/ui/dash.js:284
|
#: ../js/ui/appDisplay.js:917 ../js/ui/dash.js:284
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Bỏ đánh dấu ưa thích"
|
msgstr "Bỏ đánh dấu ưa thích"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:917
|
#: ../js/ui/appDisplay.js:918
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Đánh dấu ưa thích"
|
msgstr "Đánh dấu ưa thích"
|
||||||
|
|
||||||
@ -460,13 +477,13 @@ msgstr "Đã được đánh dấu ưa thích cho %s."
|
|||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "Đã bỏ đánh dấu ưa thích cho %s"
|
msgstr "Đã bỏ đánh dấu ưa thích cho %s"
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/userMenu.js:787
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/userMenu.js:789
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Thiết lập"
|
msgstr "Cài đặt"
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:21
|
#: ../js/ui/backgroundMenu.js:21
|
||||||
msgid "Change Background…"
|
msgid "Change Background…"
|
||||||
msgstr "Thay đổi nền…"
|
msgstr "Đổi ảnh nền…"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
@ -585,35 +602,35 @@ msgid "S"
|
|||||||
msgstr "T7"
|
msgstr "T7"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events
|
||||||
#: ../js/ui/calendar.js:692
|
#: ../js/ui/calendar.js:720
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "Không có lịch hẹn"
|
msgstr "Không có lịch hẹn"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year
|
||||||
#: ../js/ui/calendar.js:708
|
#: ../js/ui/calendar.js:736
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year
|
||||||
#: ../js/ui/calendar.js:711
|
#: ../js/ui/calendar.js:739
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A, %d %B %Y"
|
msgstr "%A, %d %B %Y"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:721
|
#: ../js/ui/calendar.js:749
|
||||||
msgid "Today"
|
msgid "Today"
|
||||||
msgstr "Hôm nay"
|
msgstr "Hôm nay"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:725
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Tomorrow"
|
msgid "Tomorrow"
|
||||||
msgstr "Ngày mai"
|
msgstr "Ngày mai"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:736
|
#: ../js/ui/calendar.js:764
|
||||||
msgid "This week"
|
msgid "This week"
|
||||||
msgstr "Tuần này"
|
msgstr "Tuần này"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:744
|
#: ../js/ui/calendar.js:772
|
||||||
msgid "Next week"
|
msgid "Next week"
|
||||||
msgstr "Tuần tới"
|
msgstr "Tuần tới"
|
||||||
|
|
||||||
@ -629,12 +646,12 @@ msgstr "Ổ ngoài đã ngắt kết nối"
|
|||||||
msgid "Removable Devices"
|
msgid "Removable Devices"
|
||||||
msgstr "Thiết bị di động"
|
msgstr "Thiết bị di động"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:593
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Mở bằng %s"
|
msgstr "Mở bằng %s"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:619
|
#: ../js/ui/components/autorunManager.js:620
|
||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Đẩy ra"
|
msgstr "Đẩy ra"
|
||||||
|
|
||||||
@ -685,7 +702,7 @@ msgstr "Mạng không dây cần xác thực"
|
|||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
"'%s'."
|
"'%s'."
|
||||||
msgstr "Cần mật mã hoặc khoá mã để truy cập mạng không dây '%s'"
|
msgstr "Cần mật mã hoặc khoá mã để truy cập mạng không dây “%s”"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:314
|
#: ../js/ui/components/networkAgent.js:314
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
@ -718,7 +735,7 @@ msgstr "Mật khẩu mạng băng thông rộng"
|
|||||||
#: ../js/ui/components/networkAgent.js:337
|
#: ../js/ui/components/networkAgent.js:337
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "Cần mật khẩu để kết nối đến '%s'."
|
msgstr "Cần mật khẩu để kết nối đến “%s”."
|
||||||
|
|
||||||
#: ../js/ui/components/polkitAgent.js:55
|
#: ../js/ui/components/polkitAgent.js:55
|
||||||
msgid "Authentication Required"
|
msgid "Authentication Required"
|
||||||
@ -772,7 +789,7 @@ msgstr "Ngừng im lặng"
|
|||||||
|
|
||||||
#: ../js/ui/components/telepathyClient.js:480
|
#: ../js/ui/components/telepathyClient.js:480
|
||||||
msgid "Mute"
|
msgid "Mute"
|
||||||
msgstr "Im lặng"
|
msgstr "Câm"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
||||||
#: ../js/ui/components/telepathyClient.js:942
|
#: ../js/ui/components/telepathyClient.js:942
|
||||||
@ -983,7 +1000,7 @@ msgstr "Xem tài khoản"
|
|||||||
msgid "Unknown reason"
|
msgid "Unknown reason"
|
||||||
msgstr "Lý do không biết"
|
msgstr "Lý do không biết"
|
||||||
|
|
||||||
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:97
|
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:96
|
||||||
msgid "Windows"
|
msgid "Windows"
|
||||||
msgstr "Cửa sổ"
|
msgstr "Cửa sổ"
|
||||||
|
|
||||||
@ -1012,7 +1029,7 @@ msgstr "Thiết lập ngày giờ"
|
|||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. Translators: This is the date format to use when the calendar popup is
|
||||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#.
|
||||||
#: ../js/ui/dateMenu.js:205
|
#: ../js/ui/dateMenu.js:215
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A %e %B, %Y"
|
msgstr "%A %e %B, %Y"
|
||||||
|
|
||||||
@ -1108,7 +1125,7 @@ msgstr "Cài đặt"
|
|||||||
#: ../js/ui/extensionDownloader.js:204
|
#: ../js/ui/extensionDownloader.js:204
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||||
msgstr "Tải và cài đặt '%s' từ extensions.gnome.org chứ?"
|
msgstr "Tải và cài đặt “%s” từ extensions.gnome.org chứ?"
|
||||||
|
|
||||||
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:314
|
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:314
|
||||||
#: ../js/ui/status/power.js:211
|
#: ../js/ui/status/power.js:211
|
||||||
@ -1137,9 +1154,7 @@ msgstr "Hiện lỗi"
|
|||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr "Bật"
|
msgstr "Bật"
|
||||||
|
|
||||||
#. translators:
|
#: ../js/ui/lookingGlass.js:769
|
||||||
#. * The device has been disabled
|
|
||||||
#: ../js/ui/lookingGlass.js:769 ../src/gvc/gvc-mixer-control.c:1830
|
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Tắt"
|
msgstr "Tắt"
|
||||||
|
|
||||||
@ -1179,15 +1194,15 @@ msgstr "Xoá thông báo"
|
|||||||
msgid "Notification Settings"
|
msgid "Notification Settings"
|
||||||
msgstr "Thiết lập thông báo"
|
msgstr "Thiết lập thông báo"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1707
|
#: ../js/ui/messageTray.js:1709
|
||||||
msgid "No Messages"
|
msgid "No Messages"
|
||||||
msgstr "Không có thông báo"
|
msgstr "Không có thông báo"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1787
|
#: ../js/ui/messageTray.js:1782
|
||||||
msgid "Message Tray"
|
msgid "Message Tray"
|
||||||
msgstr "Khay thông báo"
|
msgstr "Khay thông báo"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:2864
|
#: ../js/ui/messageTray.js:2810
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Thông tin hệ thống"
|
msgstr "Thông tin hệ thống"
|
||||||
|
|
||||||
@ -1196,13 +1211,13 @@ msgctxt "program"
|
|||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Không biết"
|
msgstr "Không biết"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:460 ../js/ui/screenShield.js:153
|
#: ../js/ui/overviewControls.js:463 ../js/ui/screenShield.js:149
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
msgstr[0] "%d tin nhắn mới"
|
msgstr[0] "%d tin nhắn mới"
|
||||||
|
|
||||||
#: ../js/ui/overview.js:82
|
#: ../js/ui/overview.js:84
|
||||||
msgid "Undo"
|
msgid "Undo"
|
||||||
msgstr "Hoàn lại"
|
msgstr "Hoàn lại"
|
||||||
|
|
||||||
@ -1214,21 +1229,21 @@ msgstr "Tổng quan"
|
|||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters.
|
||||||
#: ../js/ui/overview.js:284
|
#: ../js/ui/overview.js:271
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Nhập để tìm…"
|
msgstr "Nhập để tìm…"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:613
|
#: ../js/ui/panel.js:612
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Thoát"
|
msgstr "Thoát"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview".
|
||||||
#: ../js/ui/panel.js:642
|
#: ../js/ui/panel.js:636
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Hoạt động"
|
msgstr "Hoạt động"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:983
|
#: ../js/ui/panel.js:933
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Thanh đỉnh"
|
msgstr "Thanh đỉnh"
|
||||||
|
|
||||||
@ -1241,31 +1256,31 @@ msgstr "Thanh đỉnh"
|
|||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
#: ../js/ui/runDialog.js:205
|
#: ../js/ui/runDialog.js:73
|
||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Nhập lệnh"
|
msgstr "Nhập lệnh"
|
||||||
|
|
||||||
#: ../js/ui/runDialog.js:241
|
#: ../js/ui/runDialog.js:109
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "Đóng"
|
msgstr "Đóng"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format
|
||||||
#: ../js/ui/screenShield.js:90
|
#: ../js/ui/screenShield.js:86
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:155
|
#: ../js/ui/screenShield.js:151
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "%d thông báo mới"
|
msgstr[0] "%d thông báo mới"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:442 ../js/ui/userMenu.js:805
|
#: ../js/ui/screenShield.js:438 ../js/ui/userMenu.js:807
|
||||||
msgid "Lock"
|
msgid "Lock"
|
||||||
msgstr "Khoá"
|
msgstr "Khoá"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:639
|
#: ../js/ui/screenShield.js:637
|
||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME cần khoá màn hình"
|
msgstr "GNOME cần khoá màn hình"
|
||||||
|
|
||||||
@ -1276,19 +1291,19 @@ msgstr "GNOME cần khoá màn hình"
|
|||||||
#.
|
#.
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
#. XXX: another option is to kick the user into the gdm login
|
||||||
#. screen, where we're not affected by grabs
|
#. screen, where we're not affected by grabs
|
||||||
#: ../js/ui/screenShield.js:758 ../js/ui/screenShield.js:1169
|
#: ../js/ui/screenShield.js:758 ../js/ui/screenShield.js:1194
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "Không thể khoá"
|
msgstr "Không thể khoá"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:759 ../js/ui/screenShield.js:1170
|
#: ../js/ui/screenShield.js:759 ../js/ui/screenShield.js:1195
|
||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Một ứng dụng đã ngăn cản khoá"
|
msgstr "Một ứng dụng đã ngăn cản khoá"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:431
|
#: ../js/ui/searchDisplay.js:453
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Đang tìm…"
|
msgstr "Đang tìm…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:475
|
#: ../js/ui/searchDisplay.js:497
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Không có kết quả."
|
msgstr "Không có kết quả."
|
||||||
|
|
||||||
@ -1300,11 +1315,11 @@ msgstr "Chép"
|
|||||||
msgid "Paste"
|
msgid "Paste"
|
||||||
msgstr "Dán"
|
msgstr "Dán"
|
||||||
|
|
||||||
#: ../js/ui/shellEntry.js:105
|
#: ../js/ui/shellEntry.js:106
|
||||||
msgid "Show Text"
|
msgid "Show Text"
|
||||||
msgstr "Hiện chữ"
|
msgstr "Hiện chữ"
|
||||||
|
|
||||||
#: ../js/ui/shellEntry.js:107
|
#: ../js/ui/shellEntry.js:108
|
||||||
msgid "Hide Text"
|
msgid "Hide Text"
|
||||||
msgstr "Ẩn chữ"
|
msgstr "Ẩn chữ"
|
||||||
|
|
||||||
@ -1316,7 +1331,7 @@ msgstr "Mật khẩu"
|
|||||||
msgid "Remember Password"
|
msgid "Remember Password"
|
||||||
msgstr "Nhớ mật khẩu"
|
msgstr "Nhớ mật khẩu"
|
||||||
|
|
||||||
#: ../js/ui/shellMountOperation.js:403 ../js/ui/unlockDialog.js:140
|
#: ../js/ui/shellMountOperation.js:403 ../js/ui/unlockDialog.js:113
|
||||||
msgid "Unlock"
|
msgid "Unlock"
|
||||||
msgstr "Bỏ khoá"
|
msgstr "Bỏ khoá"
|
||||||
|
|
||||||
@ -1433,7 +1448,7 @@ msgstr "Yêu cầu cấp quyền từ %s"
|
|||||||
#: ../js/ui/status/bluetooth.js:328
|
#: ../js/ui/status/bluetooth.js:328
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "Thiết bị %s muốn truy cập dịch vụ '%s'"
|
msgstr "Thiết bị %s muốn truy cập dịch vụ “%s”"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:330
|
#: ../js/ui/status/bluetooth.js:330
|
||||||
msgid "Always grant access"
|
msgid "Always grant access"
|
||||||
@ -1461,7 +1476,7 @@ msgstr "Thiết bị %s muốn kết nối với máy tính này"
|
|||||||
#: ../js/ui/status/bluetooth.js:366
|
#: ../js/ui/status/bluetooth.js:366
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Please confirm whether the PIN '%06d' matches the one on the device."
|
msgid "Please confirm whether the PIN '%06d' matches the one on the device."
|
||||||
msgstr "Vui lòng xác nhận PIN '%06d' khớp với số trên thiết bị."
|
msgstr "Vui lòng xác nhận PIN “%06d” khớp với số trên thiết bị."
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun
|
||||||
#: ../js/ui/status/bluetooth.js:369
|
#: ../js/ui/status/bluetooth.js:369
|
||||||
@ -1717,59 +1732,59 @@ msgstr "Âm lượng"
|
|||||||
msgid "Microphone"
|
msgid "Microphone"
|
||||||
msgstr "Micrô"
|
msgstr "Micrô"
|
||||||
|
|
||||||
#: ../js/ui/unlockDialog.js:151
|
#: ../js/ui/unlockDialog.js:124
|
||||||
msgid "Log in as another user"
|
msgid "Log in as another user"
|
||||||
msgstr "Đăng nhập người dùng khác"
|
msgstr "Đăng nhập người dùng khác"
|
||||||
|
|
||||||
#: ../js/ui/unlockDialog.js:177
|
#: ../js/ui/unlockDialog.js:145
|
||||||
msgid "Unlock Window"
|
msgid "Unlock Window"
|
||||||
msgstr "Bỏ khoá cửa sổ"
|
msgstr "Bỏ khoá cửa sổ"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:192
|
#: ../js/ui/userMenu.js:193
|
||||||
msgid "Available"
|
msgid "Available"
|
||||||
msgstr "Có mặt"
|
msgstr "Có mặt"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:195
|
#: ../js/ui/userMenu.js:196
|
||||||
msgid "Busy"
|
msgid "Busy"
|
||||||
msgstr "Bận"
|
msgstr "Bận"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:198
|
#: ../js/ui/userMenu.js:199
|
||||||
msgid "Invisible"
|
msgid "Invisible"
|
||||||
msgstr "Giấu mặt"
|
msgstr "Giấu mặt"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:201
|
#: ../js/ui/userMenu.js:202
|
||||||
msgid "Away"
|
msgid "Away"
|
||||||
msgstr "Vắng mặt"
|
msgstr "Vắng mặt"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:204
|
#: ../js/ui/userMenu.js:205
|
||||||
msgid "Idle"
|
msgid "Idle"
|
||||||
msgstr "Nhàn rỗi"
|
msgstr "Nhàn rỗi"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:207
|
#: ../js/ui/userMenu.js:208
|
||||||
msgid "Offline"
|
msgid "Offline"
|
||||||
msgstr "Ngoại tuyến"
|
msgstr "Ngoại tuyến"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:779
|
#: ../js/ui/userMenu.js:781
|
||||||
msgid "Notifications"
|
msgid "Notifications"
|
||||||
msgstr "Thông báo"
|
msgstr "Thông báo"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:795
|
#: ../js/ui/userMenu.js:797
|
||||||
msgid "Switch User"
|
msgid "Switch User"
|
||||||
msgstr "Chuyển người dùng"
|
msgstr "Chuyển người dùng"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:800
|
#: ../js/ui/userMenu.js:802
|
||||||
msgid "Log Out"
|
msgid "Log Out"
|
||||||
msgstr "Đăng xuất"
|
msgstr "Đăng xuất"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:820
|
#: ../js/ui/userMenu.js:822
|
||||||
msgid "Install Updates & Restart"
|
msgid "Install Updates & Restart"
|
||||||
msgstr "Cài đặt bản cập nhật và khởi động lại"
|
msgstr "Cài đặt bản cập nhật và khởi động lại"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:838
|
#: ../js/ui/userMenu.js:840
|
||||||
msgid "Your chat status will be set to busy"
|
msgid "Your chat status will be set to busy"
|
||||||
msgstr "Trạng thái nhắn tin của bạn sẽ được đặt là bận"
|
msgstr "Trạng thái nhắn tin của bạn sẽ được đặt là bận"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:839
|
#: ../js/ui/userMenu.js:841
|
||||||
msgid ""
|
msgid ""
|
||||||
"Notifications are now disabled, including chat messages. Your online status "
|
"Notifications are now disabled, including chat messages. Your online status "
|
||||||
"has been adjusted to let others know that you might not see their messages."
|
"has been adjusted to let others know that you might not see their messages."
|
||||||
@ -1777,33 +1792,35 @@ msgstr ""
|
|||||||
"Thông báo đã bị tắt, bao gồm tin nhắn. Trạng thái trực tuyến của bạn đã được "
|
"Thông báo đã bị tắt, bao gồm tin nhắn. Trạng thái trực tuyến của bạn đã được "
|
||||||
"điều chỉnh để mọi người biết bạn sẽ không xem tin nhắn họ gửi đến."
|
"điều chỉnh để mọi người biết bạn sẽ không xem tin nhắn họ gửi đến."
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:885
|
#: ../js/ui/userMenu.js:888
|
||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Người dùng khác đang đăng nhập."
|
msgstr "Người dùng khác đang đăng nhập."
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:890
|
#: ../js/ui/userMenu.js:893
|
||||||
msgid "Shutting down might cause them to lose unsaved work."
|
msgid "Shutting down might cause them to lose unsaved work."
|
||||||
msgstr "Tắt sẽ làm mất những kết quả chưa được lưu."
|
msgstr "Tắt sẽ làm mất những kết quả chưa được lưu."
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:916
|
#. Translators: Remote here refers to a remote session, like a ssh login
|
||||||
|
#: ../js/ui/userMenu.js:921
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (ở xa)"
|
msgstr "%s (ở xa)"
|
||||||
|
|
||||||
#: ../js/ui/userMenu.js:918
|
#. Translators: Console here refers to a tty like a VT console
|
||||||
|
#: ../js/ui/userMenu.js:924
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (console)"
|
msgstr "%s (console)"
|
||||||
|
|
||||||
#: ../js/ui/viewSelector.js:101
|
#: ../js/ui/viewSelector.js:100
|
||||||
msgid "Applications"
|
msgid "Applications"
|
||||||
msgstr "Ứng dụng"
|
msgstr "Ứng dụng"
|
||||||
|
|
||||||
#: ../js/ui/viewSelector.js:105
|
#: ../js/ui/viewSelector.js:104
|
||||||
msgid "Search"
|
msgid "Search"
|
||||||
msgstr "Tìm"
|
msgstr "Tìm"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:92
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
@ -1812,7 +1829,7 @@ msgstr ""
|
|||||||
"Rất tiếc, không có lời thông thái nào hôm nay:\n"
|
"Rất tiếc, không có lời thông thái nào hôm nay:\n"
|
||||||
"%s"
|
"%s"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:96
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "Nhà tiên tri %s nói"
|
msgstr "Nhà tiên tri %s nói"
|
||||||
@ -1820,32 +1837,12 @@ msgstr "Nhà tiên tri %s nói"
|
|||||||
#: ../js/ui/windowAttentionHandler.js:19
|
#: ../js/ui/windowAttentionHandler.js:19
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "'%s' is ready"
|
msgid "'%s' is ready"
|
||||||
msgstr "'%s' đã sẵn sàng"
|
msgstr "“%s” đã sẵn sàng"
|
||||||
|
|
||||||
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
|
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
|
||||||
msgid "Evolution Calendar"
|
msgid "Evolution Calendar"
|
||||||
msgstr "Lịch Evolution"
|
msgstr "Lịch Evolution"
|
||||||
|
|
||||||
#. translators:
|
|
||||||
#. * The number of sound outputs on a particular device
|
|
||||||
#: ../src/gvc/gvc-mixer-control.c:1837
|
|
||||||
#, c-format
|
|
||||||
msgid "%u Output"
|
|
||||||
msgid_plural "%u Outputs"
|
|
||||||
msgstr[0] "%u đầu ra"
|
|
||||||
|
|
||||||
#. translators:
|
|
||||||
#. * The number of sound inputs on a particular device
|
|
||||||
#: ../src/gvc/gvc-mixer-control.c:1847
|
|
||||||
#, c-format
|
|
||||||
msgid "%u Input"
|
|
||||||
msgid_plural "%u Inputs"
|
|
||||||
msgstr[0] "%u đầu vào"
|
|
||||||
|
|
||||||
#: ../src/gvc/gvc-mixer-control.c:2371
|
|
||||||
msgid "System Sounds"
|
|
||||||
msgstr "Âm thanh hệ thống"
|
|
||||||
|
|
||||||
#: ../src/main.c:347
|
#: ../src/main.c:347
|
||||||
msgid "Print version"
|
msgid "Print version"
|
||||||
msgstr "In phiên bản"
|
msgstr "In phiên bản"
|
||||||
@ -1856,7 +1853,7 @@ msgstr "Chể độ dùng bởi GDM cho màn hình đăng nhập"
|
|||||||
|
|
||||||
#: ../src/main.c:359
|
#: ../src/main.c:359
|
||||||
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
|
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
|
||||||
msgstr "Dùng chế độ đặc biệt, ví dụ \"gdm\" cho màn hình đăng nhập"
|
msgstr "Dùng chế độ đặc biệt, ví dụ “gdm” cho màn hình đăng nhập"
|
||||||
|
|
||||||
#: ../src/main.c:365
|
#: ../src/main.c:365
|
||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
@ -1865,7 +1862,7 @@ msgstr "Danh sách chế độ"
|
|||||||
#: ../src/shell-app.c:622
|
#: ../src/shell-app.c:622
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch '%s'"
|
msgid "Failed to launch '%s'"
|
||||||
msgstr "Lỗi chạy '%s'"
|
msgstr "Lỗi chạy “%s”"
|
||||||
|
|
||||||
#: ../src/shell-keyring-prompt.c:708
|
#: ../src/shell-keyring-prompt.c:708
|
||||||
msgid "Passwords do not match."
|
msgid "Passwords do not match."
|
||||||
@ -1879,6 +1876,17 @@ msgstr "Mật khẩu không thể không có"
|
|||||||
msgid "Authentication dialog was dismissed by the user"
|
msgid "Authentication dialog was dismissed by the user"
|
||||||
msgstr "Hộp thoại xác thực bị người dùng bỏ qua"
|
msgstr "Hộp thoại xác thực bị người dùng bỏ qua"
|
||||||
|
|
||||||
|
#~ msgid "%u Output"
|
||||||
|
#~ msgid_plural "%u Outputs"
|
||||||
|
#~ msgstr[0] "%u đầu ra"
|
||||||
|
|
||||||
|
#~ msgid "%u Input"
|
||||||
|
#~ msgid_plural "%u Inputs"
|
||||||
|
#~ msgstr[0] "%u đầu vào"
|
||||||
|
|
||||||
|
#~ msgid "System Sounds"
|
||||||
|
#~ msgstr "Âm thanh hệ thống"
|
||||||
|
|
||||||
#~ msgctxt "title"
|
#~ msgctxt "title"
|
||||||
#~ msgid "Sign In"
|
#~ msgid "Sign In"
|
||||||
#~ msgstr "Đăng nhập"
|
#~ msgstr "Đăng nhập"
|
||||||
@ -1910,7 +1918,7 @@ msgstr "Hộp thoại xác thực bị người dùng bỏ qua"
|
|||||||
#~ msgstr "%l:%M %p"
|
#~ msgstr "%l:%M %p"
|
||||||
|
|
||||||
#~ msgid "Failed to unmount '%s'"
|
#~ msgid "Failed to unmount '%s'"
|
||||||
#~ msgstr "Lỗi bỏ gắn kết '%s'"
|
#~ msgstr "Lỗi bỏ gắn kết “%s”"
|
||||||
|
|
||||||
#~ msgid "Retry"
|
#~ msgid "Retry"
|
||||||
#~ msgstr "Thử lại"
|
#~ msgstr "Thử lại"
|
||||||
@ -1925,7 +1933,7 @@ msgstr "Hộp thoại xác thực bị người dùng bỏ qua"
|
|||||||
#~ msgstr "Lỗi duyệt tập tin"
|
#~ msgstr "Lỗi duyệt tập tin"
|
||||||
|
|
||||||
#~ msgid "The requested device cannot be browsed, error is '%s'"
|
#~ msgid "The requested device cannot be browsed, error is '%s'"
|
||||||
#~ msgstr "Không thể duyệt thiết bị yêu cầu , lỗi là '%s'"
|
#~ msgstr "Không thể duyệt thiết bị yêu cầu , lỗi là “%s”"
|
||||||
|
|
||||||
#~ msgid "Wireless"
|
#~ msgid "Wireless"
|
||||||
#~ msgstr "Mạng không dây"
|
#~ msgstr "Mạng không dây"
|
||||||
@ -2070,155 +2078,3 @@ msgstr "Hộp thoại xác thực bị người dùng bỏ qua"
|
|||||||
|
|
||||||
#~ msgid "Show password"
|
#~ msgid "Show password"
|
||||||
#~ msgstr "Hiện mật khẩu"
|
#~ msgstr "Hiện mật khẩu"
|
||||||
|
|
||||||
#~| msgid "If true, display seconds in time."
|
|
||||||
#~ msgid "If true, display onscreen keyboard."
|
|
||||||
#~ msgstr "Nếu đúng (true), hiện bàn phím màn hình."
|
|
||||||
|
|
||||||
#~| msgid "Screen Keyboard"
|
|
||||||
#~ msgid "Show the onscreen keyboard"
|
|
||||||
#~ msgstr "Hiện bàn phím màn hình"
|
|
||||||
|
|
||||||
#~ msgid "%s has finished starting"
|
|
||||||
#~ msgstr "%s đã hoàn tất khởi chạy"
|
|
||||||
|
|
||||||
#~ msgid "Uuids of extensions to disable"
|
|
||||||
#~ msgstr "UUID của phần mở rộng cần tắt"
|
|
||||||
|
|
||||||
#~ msgid "You're now connected to mobile broadband connection '%s'"
|
|
||||||
#~ msgstr "Đã nối mạng '%s' (băng thông rộng)"
|
|
||||||
|
|
||||||
#~ msgid "You're now connected to wireless network '%s'"
|
|
||||||
#~ msgstr "Đã nối mạng '%s' (không dây)"
|
|
||||||
|
|
||||||
#~ msgid "You're now connected to wired network '%s'"
|
|
||||||
#~ msgstr "Đã nối mạng '%s' (dây)"
|
|
||||||
|
|
||||||
#~ msgid "You're now connected to VPN network '%s'"
|
|
||||||
#~ msgstr "Đã nối mạng VPN '%s'"
|
|
||||||
|
|
||||||
#~ msgid "Localization Settings"
|
|
||||||
#~ msgstr "Thiết lập bản địa hoá"
|
|
||||||
|
|
||||||
#~ msgid "Less than a minute ago"
|
|
||||||
#~ msgstr "Chưa đến một phút"
|
|
||||||
|
|
||||||
#~ msgid "%d minute ago"
|
|
||||||
#~ msgid_plural "%d minutes ago"
|
|
||||||
#~ msgstr[0] "%d phút trước"
|
|
||||||
|
|
||||||
#~ msgid "%d hour ago"
|
|
||||||
#~ msgid_plural "%d hours ago"
|
|
||||||
#~ msgstr[0] "%d giờ trước"
|
|
||||||
|
|
||||||
#~ msgid "%d day ago"
|
|
||||||
#~ msgid_plural "%d days ago"
|
|
||||||
#~ msgstr[0] "%d ngày trước"
|
|
||||||
|
|
||||||
#~ msgid "%d week ago"
|
|
||||||
#~ msgid_plural "%d weeks ago"
|
|
||||||
#~ msgstr[0] "%d tuần trước"
|
|
||||||
|
|
||||||
#~ msgid "Shut Down"
|
|
||||||
#~ msgstr "Tắt máy"
|
|
||||||
|
|
||||||
#~ msgid "Click Shut Down to quit these applications and shut down the system."
|
|
||||||
#~ msgstr "Nhấn Tắt máy để thoát những ứng dụng này và tắt hệ thống."
|
|
||||||
|
|
||||||
#~ msgid "The system will shut down automatically in %d seconds."
|
|
||||||
#~ msgstr "Hệ thống sẽ tự động tắt sau %d giây."
|
|
||||||
|
|
||||||
#~ msgid "Shutting down the system."
|
|
||||||
#~ msgstr "Tắt hệ thống."
|
|
||||||
|
|
||||||
#~ msgid "Confirm"
|
|
||||||
#~ msgstr "Xác nhận"
|
|
||||||
|
|
||||||
#~ msgid "Clip the crosshairs at the center"
|
|
||||||
#~ msgstr "Cắt lưới chéo ở giữa"
|
|
||||||
|
|
||||||
#~ msgid "Color of the crosshairs"
|
|
||||||
#~ msgstr "Màu lưới chéo"
|
|
||||||
|
|
||||||
#~ msgid ""
|
|
||||||
#~ "Determines the length of the vertical and horizontal lines that make up "
|
|
||||||
#~ "the crosshairs."
|
|
||||||
#~ msgstr "Xác định độ dài và rộng của những dòng tạo nên lưới chéo."
|
|
||||||
|
|
||||||
#~ msgid ""
|
|
||||||
#~ "Determines the transparency of the crosshairs, from fully opaque to fully "
|
|
||||||
#~ "transparent."
|
|
||||||
#~ msgstr "Xác định độ trong suốt của lưới chéo, từ đặc đến trong suốt."
|
|
||||||
|
|
||||||
#~ msgid "Enable lens mode"
|
|
||||||
#~ msgstr "Bật chế độ gương"
|
|
||||||
|
|
||||||
#~ msgid "Show or hide crosshairs"
|
|
||||||
#~ msgstr "Hiện hoặc ẩn lưới chéo"
|
|
||||||
|
|
||||||
#~ msgid "Show or hide the magnifier"
|
|
||||||
#~ msgstr "Hiện hoặc ẩn kính lúp"
|
|
||||||
|
|
||||||
#~ msgid "Thickness of the crosshairs"
|
|
||||||
#~ msgstr "Độ dày lưới chéo"
|
|
||||||
|
|
||||||
#~ msgid ""
|
|
||||||
#~ "Width of the vertical and horizontal lines that make up the crosshairs."
|
|
||||||
#~ msgstr "Độ rộng của đường dọc/ngang hình thành dấu gạch chéo."
|
|
||||||
|
|
||||||
#~ msgid "PREFERENCES"
|
|
||||||
#~ msgstr "TUỲ THÍCH"
|
|
||||||
|
|
||||||
#~ msgid "Shut Down..."
|
|
||||||
#~ msgstr "Tắt máy..."
|
|
||||||
|
|
||||||
#~ msgid "Search your computer"
|
|
||||||
#~ msgstr "Tìm trong máy"
|
|
||||||
|
|
||||||
#~ msgid "Customize the panel clock"
|
|
||||||
#~ msgstr "Tuỳ biến đồng hồ"
|
|
||||||
|
|
||||||
#~ msgid "Clock Format"
|
|
||||||
#~ msgstr "Dạng đồng hồ"
|
|
||||||
|
|
||||||
#~| msgid "System Preferences..."
|
|
||||||
#~ msgid "Clock Preferences"
|
|
||||||
#~ msgstr "Thiết lập đồng hồ"
|
|
||||||
|
|
||||||
#~ msgid "Panel Display"
|
|
||||||
#~ msgstr "Khung hiển thị"
|
|
||||||
|
|
||||||
#~ msgid "Show seco_nds"
|
|
||||||
#~ msgstr "Hiện _giây"
|
|
||||||
|
|
||||||
#~ msgid "_12 hour format"
|
|
||||||
#~ msgstr "Dạng _12 giờ"
|
|
||||||
|
|
||||||
#~ msgid "_24 hour format"
|
|
||||||
#~ msgstr "Dạng _24 giờ"
|
|
||||||
|
|
||||||
#~| msgid "System Preferences..."
|
|
||||||
#~ msgid "Preferences"
|
|
||||||
#~ msgstr "Thiết lập"
|
|
||||||
|
|
||||||
#~ msgid ""
|
|
||||||
#~ "Can't add a new workspace because maximum workspaces limit has been "
|
|
||||||
#~ "reached."
|
|
||||||
#~ msgstr ""
|
|
||||||
#~ "Không thể thêm vùng làm việc mới vì đã đạt giới hạn số vùng làm việc tối "
|
|
||||||
#~ "đa."
|
|
||||||
|
|
||||||
#~ msgid "Can't remove the first workspace."
|
|
||||||
#~ msgstr "Không thể bỏ vùng làm việc đầu tiên."
|
|
||||||
|
|
||||||
#~ msgid "Drag here to add favorites"
|
|
||||||
#~ msgstr "Kéo vào đây để thêm vào danh mục ưa thích"
|
|
||||||
|
|
||||||
#~ msgid "Find..."
|
|
||||||
#~ msgstr "Tìm"
|
|
||||||
|
|
||||||
#~ msgid "Sidebar"
|
|
||||||
#~ msgstr "Thanh bên"
|
|
||||||
|
|
||||||
#~ msgid "Recent Documents"
|
|
||||||
#~ msgstr "Tài liệu gần đây"
|
|
||||||
|
@ -74,27 +74,24 @@ st_im_text_dispose (GObject *object)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
update_im_cursor_location (StIMText *self)
|
st_im_text_cursor_event (ClutterText *self,
|
||||||
|
const ClutterGeometry *geometry)
|
||||||
{
|
{
|
||||||
StIMTextPrivate *priv = self->priv;
|
StIMTextPrivate *priv = ST_IM_TEXT (self)->priv;
|
||||||
ClutterText *clutter_text = CLUTTER_TEXT (self);
|
|
||||||
gint position;
|
|
||||||
gfloat cursor_x, cursor_y, cursor_height;
|
|
||||||
gfloat actor_x, actor_y;
|
gfloat actor_x, actor_y;
|
||||||
GdkRectangle area;
|
GdkRectangle area;
|
||||||
|
|
||||||
position = clutter_text_get_cursor_position (clutter_text);
|
|
||||||
clutter_text_position_to_coords (clutter_text, position,
|
|
||||||
&cursor_x, &cursor_y, &cursor_height);
|
|
||||||
|
|
||||||
clutter_actor_get_transformed_position (CLUTTER_ACTOR (self), &actor_x, &actor_y);
|
clutter_actor_get_transformed_position (CLUTTER_ACTOR (self), &actor_x, &actor_y);
|
||||||
|
|
||||||
area.x = (int)(0.5 + cursor_x + actor_x);
|
area.x = (int)(0.5 + geometry->x + actor_x);
|
||||||
area.y = (int)(0.5 + cursor_y + actor_y);
|
area.y = (int)(0.5 + geometry->y + actor_y);
|
||||||
area.width = 0;
|
area.width = geometry->width;
|
||||||
area.height = (int)(0.5 + cursor_height);
|
area.height = geometry->height;
|
||||||
|
|
||||||
gtk_im_context_set_cursor_location (priv->im_context, &area);
|
gtk_im_context_set_cursor_location (priv->im_context, &area);
|
||||||
|
|
||||||
|
if (CLUTTER_TEXT_CLASS (st_im_text_parent_class)->cursor_event)
|
||||||
|
CLUTTER_TEXT_CLASS (st_im_text_parent_class)->cursor_event (self, geometry);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -190,20 +187,6 @@ reset_im_context (StIMText *self)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
st_im_text_paint (ClutterActor *actor)
|
|
||||||
{
|
|
||||||
StIMText *self = ST_IM_TEXT (actor);
|
|
||||||
ClutterText *clutter_text = CLUTTER_TEXT (actor);
|
|
||||||
|
|
||||||
/* This updates the cursor position as a side-effect */
|
|
||||||
if (CLUTTER_ACTOR_CLASS (st_im_text_parent_class)->paint)
|
|
||||||
CLUTTER_ACTOR_CLASS (st_im_text_parent_class)->paint (actor);
|
|
||||||
|
|
||||||
if (clutter_text_get_editable (clutter_text))
|
|
||||||
update_im_cursor_location (self);
|
|
||||||
}
|
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
st_im_text_get_paint_volume (ClutterActor *self,
|
st_im_text_get_paint_volume (ClutterActor *self,
|
||||||
ClutterPaintVolume *volume)
|
ClutterPaintVolume *volume)
|
||||||
@ -426,12 +409,12 @@ st_im_text_class_init (StIMTextClass *klass)
|
|||||||
{
|
{
|
||||||
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
||||||
ClutterActorClass *actor_class = CLUTTER_ACTOR_CLASS (klass);
|
ClutterActorClass *actor_class = CLUTTER_ACTOR_CLASS (klass);
|
||||||
|
ClutterTextClass *text_class = CLUTTER_TEXT_CLASS (klass);
|
||||||
|
|
||||||
g_type_class_add_private (klass, sizeof (StIMTextPrivate));
|
g_type_class_add_private (klass, sizeof (StIMTextPrivate));
|
||||||
|
|
||||||
object_class->dispose = st_im_text_dispose;
|
object_class->dispose = st_im_text_dispose;
|
||||||
|
|
||||||
actor_class->paint = st_im_text_paint;
|
|
||||||
actor_class->get_paint_volume = st_im_text_get_paint_volume;
|
actor_class->get_paint_volume = st_im_text_get_paint_volume;
|
||||||
actor_class->realize = st_im_text_realize;
|
actor_class->realize = st_im_text_realize;
|
||||||
actor_class->unrealize = st_im_text_unrealize;
|
actor_class->unrealize = st_im_text_unrealize;
|
||||||
@ -440,6 +423,8 @@ st_im_text_class_init (StIMTextClass *klass)
|
|||||||
actor_class->captured_event = st_im_text_captured_event;
|
actor_class->captured_event = st_im_text_captured_event;
|
||||||
actor_class->key_focus_in = st_im_text_key_focus_in;
|
actor_class->key_focus_in = st_im_text_key_focus_in;
|
||||||
actor_class->key_focus_out = st_im_text_key_focus_out;
|
actor_class->key_focus_out = st_im_text_key_focus_out;
|
||||||
|
|
||||||
|
text_class->cursor_event = st_im_text_cursor_event;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -879,6 +879,101 @@ st_theme_node_get_double (StThemeNode *node,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* st_theme_node_lookup_url:
|
||||||
|
* @node: a #StThemeNode
|
||||||
|
* @property_name: The name of the string property
|
||||||
|
* @inherit: if %TRUE, if a value is not found for the property on the
|
||||||
|
* node, then it will be looked up on the parent node, and then on the
|
||||||
|
* parent's parent, and so forth. Note that if the property has a
|
||||||
|
* value of 'inherit' it will be inherited even if %FALSE is passed
|
||||||
|
* in for @inherit; this only affects the default behavior for inheritance.
|
||||||
|
* @value: (out): location to store the newly allocated value that was
|
||||||
|
* determined. If the property is not found, the value in this location
|
||||||
|
* will not be changed.
|
||||||
|
*
|
||||||
|
* Looks up a property containing a single URL value.
|
||||||
|
*
|
||||||
|
* See also st_theme_node_get_url(), which provides a simpler API.
|
||||||
|
*
|
||||||
|
* Return value: %TRUE if the property was found in the properties for this
|
||||||
|
* theme node (or in the properties of parent nodes when inheriting.)
|
||||||
|
*/
|
||||||
|
gboolean
|
||||||
|
st_theme_node_lookup_url (StThemeNode *node,
|
||||||
|
const char *property_name,
|
||||||
|
gboolean inherit,
|
||||||
|
char **value)
|
||||||
|
{
|
||||||
|
gboolean result = FALSE;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
ensure_properties (node);
|
||||||
|
|
||||||
|
for (i = node->n_properties - 1; i >= 0; i--)
|
||||||
|
{
|
||||||
|
CRDeclaration *decl = node->properties[i];
|
||||||
|
|
||||||
|
if (strcmp (decl->property->stryng->str, property_name) == 0)
|
||||||
|
{
|
||||||
|
CRTerm *term = decl->value;
|
||||||
|
CRStyleSheet *base_stylesheet;
|
||||||
|
GFile *file;
|
||||||
|
|
||||||
|
if (term->type != TERM_URI && term->type != TERM_STRING)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (decl->parent_statement != NULL)
|
||||||
|
base_stylesheet = decl->parent_statement->parent_sheet;
|
||||||
|
else
|
||||||
|
base_stylesheet = NULL;
|
||||||
|
|
||||||
|
file = _st_theme_resolve_url (node->theme,
|
||||||
|
base_stylesheet,
|
||||||
|
decl->value->content.str->stryng->str);
|
||||||
|
*value = g_file_get_path (file);
|
||||||
|
g_object_unref (file);
|
||||||
|
result = TRUE;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!result && inherit && node->parent_node)
|
||||||
|
result = st_theme_node_lookup_url (node->parent_node, property_name, inherit, value);
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* st_theme_node_get_url:
|
||||||
|
* @node: a #StThemeNode
|
||||||
|
* @property_name: The name of the string property
|
||||||
|
*
|
||||||
|
* Looks up a property containing a single URL value.
|
||||||
|
*
|
||||||
|
* See also st_theme_node_lookup_url(), which provides more options,
|
||||||
|
* and lets you handle the case where the theme does not specify the
|
||||||
|
* indicated value.
|
||||||
|
*
|
||||||
|
* Return value: the newly allocated value if found.
|
||||||
|
* If @property_name is not found, a warning will be logged and %NULL
|
||||||
|
* will be returned.
|
||||||
|
*/
|
||||||
|
char *
|
||||||
|
st_theme_node_get_url (StThemeNode *node,
|
||||||
|
const char *property_name)
|
||||||
|
{
|
||||||
|
char *value;
|
||||||
|
|
||||||
|
if (st_theme_node_lookup_url (node, property_name, FALSE, &value))
|
||||||
|
return value;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
g_warning ("Did not find string property '%s'", property_name);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static const PangoFontDescription *
|
static const PangoFontDescription *
|
||||||
get_parent_font (StThemeNode *node)
|
get_parent_font (StThemeNode *node)
|
||||||
{
|
{
|
||||||
@ -1554,6 +1649,7 @@ void
|
|||||||
_st_theme_node_ensure_geometry (StThemeNode *node)
|
_st_theme_node_ensure_geometry (StThemeNode *node)
|
||||||
{
|
{
|
||||||
int i, j;
|
int i, j;
|
||||||
|
int width, height;
|
||||||
|
|
||||||
if (node->geometry_computed)
|
if (node->geometry_computed)
|
||||||
return;
|
return;
|
||||||
@ -1571,6 +1667,8 @@ _st_theme_node_ensure_geometry (StThemeNode *node)
|
|||||||
node->outline_width = 0;
|
node->outline_width = 0;
|
||||||
node->outline_color = TRANSPARENT_COLOR;
|
node->outline_color = TRANSPARENT_COLOR;
|
||||||
|
|
||||||
|
width = -1;
|
||||||
|
height = -1;
|
||||||
node->width = -1;
|
node->width = -1;
|
||||||
node->height = -1;
|
node->height = -1;
|
||||||
node->min_width = -1;
|
node->min_width = -1;
|
||||||
@ -1590,8 +1688,12 @@ _st_theme_node_ensure_geometry (StThemeNode *node)
|
|||||||
else if (g_str_has_prefix (property_name, "padding"))
|
else if (g_str_has_prefix (property_name, "padding"))
|
||||||
do_padding_property (node, decl);
|
do_padding_property (node, decl);
|
||||||
else if (strcmp (property_name, "width") == 0)
|
else if (strcmp (property_name, "width") == 0)
|
||||||
do_size_property (node, decl, &node->width);
|
do_size_property (node, decl, &width);
|
||||||
else if (strcmp (property_name, "height") == 0)
|
else if (strcmp (property_name, "height") == 0)
|
||||||
|
do_size_property (node, decl, &height);
|
||||||
|
else if (strcmp (property_name, "-st-natural-width") == 0)
|
||||||
|
do_size_property (node, decl, &node->width);
|
||||||
|
else if (strcmp (property_name, "-st-natural-height") == 0)
|
||||||
do_size_property (node, decl, &node->height);
|
do_size_property (node, decl, &node->height);
|
||||||
else if (strcmp (property_name, "min-width") == 0)
|
else if (strcmp (property_name, "min-width") == 0)
|
||||||
do_size_property (node, decl, &node->min_width);
|
do_size_property (node, decl, &node->min_width);
|
||||||
@ -1603,29 +1705,43 @@ _st_theme_node_ensure_geometry (StThemeNode *node)
|
|||||||
do_size_property (node, decl, &node->max_height);
|
do_size_property (node, decl, &node->max_height);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (node->width != -1)
|
/*
|
||||||
|
* Setting width sets max-width, min-width and -st-natural-width,
|
||||||
|
* unless one of them is set individually.
|
||||||
|
* Setting min-width sets natural width too, so that the minimum
|
||||||
|
* width reported by get_preferred_width() is always not greater
|
||||||
|
* than the natural width.
|
||||||
|
* The natural width in node->width is actually a lower bound, the
|
||||||
|
* actor is allowed to request something greater than that, but
|
||||||
|
* not greater than max-width.
|
||||||
|
* We don't need to clamp node->width to be less than max_width,
|
||||||
|
* that's done by adjust_preferred_width.
|
||||||
|
*/
|
||||||
|
if (width != -1)
|
||||||
{
|
{
|
||||||
|
if (node->width == -1)
|
||||||
|
node->width = width;
|
||||||
if (node->min_width == -1)
|
if (node->min_width == -1)
|
||||||
node->min_width = node->width;
|
node->min_width = width;
|
||||||
else if (node->width < node->min_width)
|
|
||||||
node->width = node->min_width;
|
|
||||||
if (node->max_width == -1)
|
if (node->max_width == -1)
|
||||||
node->max_width = node->width;
|
node->max_width = width;
|
||||||
else if (node->width > node->max_width)
|
|
||||||
node->width = node->max_width;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (node->height != -1)
|
if (node->width < node->min_width)
|
||||||
|
node->width = node->min_width;
|
||||||
|
|
||||||
|
if (height != -1)
|
||||||
{
|
{
|
||||||
|
if (node->height == -1)
|
||||||
|
node->height = height;
|
||||||
if (node->min_height == -1)
|
if (node->min_height == -1)
|
||||||
node->min_height = node->height;
|
node->min_height = height;
|
||||||
else if (node->height < node->min_height)
|
|
||||||
node->height = node->min_height;
|
|
||||||
if (node->max_height == -1)
|
if (node->max_height == -1)
|
||||||
node->max_height = node->height;
|
node->max_height = height;
|
||||||
else if (node->height > node->max_height)
|
|
||||||
node->height = node->max_height;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (node->height < node->min_height)
|
||||||
|
node->height = node->min_height;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
@ -3425,7 +3541,7 @@ st_theme_node_adjust_preferred_width (StThemeNode *node,
|
|||||||
if (natural_width_p)
|
if (natural_width_p)
|
||||||
{
|
{
|
||||||
if (node->width != -1)
|
if (node->width != -1)
|
||||||
*natural_width_p = node->width;
|
*natural_width_p = MAX (*natural_width_p, node->width);
|
||||||
if (node->max_width != -1)
|
if (node->max_width != -1)
|
||||||
*natural_width_p = MIN (*natural_width_p, node->max_width);
|
*natural_width_p = MIN (*natural_width_p, node->max_width);
|
||||||
*natural_width_p += width_inc;
|
*natural_width_p += width_inc;
|
||||||
@ -3491,7 +3607,7 @@ st_theme_node_adjust_preferred_height (StThemeNode *node,
|
|||||||
if (natural_height_p)
|
if (natural_height_p)
|
||||||
{
|
{
|
||||||
if (node->height != -1)
|
if (node->height != -1)
|
||||||
*natural_height_p = node->height;
|
*natural_height_p = MAX (*natural_height_p, node->height);
|
||||||
if (node->max_height != -1)
|
if (node->max_height != -1)
|
||||||
*natural_height_p = MIN (*natural_height_p, node->max_height);
|
*natural_height_p = MIN (*natural_height_p, node->max_height);
|
||||||
*natural_height_p += height_inc;
|
*natural_height_p += height_inc;
|
||||||
|
@ -142,6 +142,10 @@ gboolean st_theme_node_lookup_shadow (StThemeNode *node,
|
|||||||
const char *property_name,
|
const char *property_name,
|
||||||
gboolean inherit,
|
gboolean inherit,
|
||||||
StShadow **shadow);
|
StShadow **shadow);
|
||||||
|
gboolean st_theme_node_lookup_url (StThemeNode *node,
|
||||||
|
const char *property_name,
|
||||||
|
gboolean inherit,
|
||||||
|
char **value);
|
||||||
|
|
||||||
/* Easier-to-use variants of the above, for application-level use */
|
/* Easier-to-use variants of the above, for application-level use */
|
||||||
void st_theme_node_get_color (StThemeNode *node,
|
void st_theme_node_get_color (StThemeNode *node,
|
||||||
@ -153,6 +157,8 @@ gdouble st_theme_node_get_length (StThemeNode *node,
|
|||||||
const char *property_name);
|
const char *property_name);
|
||||||
StShadow *st_theme_node_get_shadow (StThemeNode *node,
|
StShadow *st_theme_node_get_shadow (StThemeNode *node,
|
||||||
const char *property_name);
|
const char *property_name);
|
||||||
|
char *st_theme_node_get_url (StThemeNode *node,
|
||||||
|
const char *property_name);
|
||||||
|
|
||||||
/* Specific getters for particular properties: cached
|
/* Specific getters for particular properties: cached
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user