Compare commits
51 Commits
Author | SHA1 | Date | |
---|---|---|---|
7a2d4959f2 | |||
6b3c9539f6 | |||
7e7e3ec016 | |||
83fb34608c | |||
a72f0604dc | |||
4dfad536a3 | |||
0dca5e513b | |||
7090592477 | |||
63f2fdd1a4 | |||
e94de67bd2 | |||
817ff52414 | |||
a55599a239 | |||
94114d82ff | |||
7cc88f96c4 | |||
447bf55e45 | |||
9d53a7700a | |||
51145a3d41 | |||
1297315cc2 | |||
b859a7f763 | |||
41baf0fc74 | |||
c324395ee6 | |||
aecd1c126a | |||
9b7304488e | |||
6362b3d057 | |||
0142fae742 | |||
73680e2433 | |||
e38c26894b | |||
28ca96064b | |||
be95a63a03 | |||
2a3a5dfc0b | |||
94a0ae1ec3 | |||
44fb014a0d | |||
8007f4dda3 | |||
ff425d1db7 | |||
9a65f20d91 | |||
0770383f78 | |||
06fdf2fdc8 | |||
7a20683728 | |||
8e443a2aff | |||
fcbb942e24 | |||
1508d76d32 | |||
ef9dee2a05 | |||
2714d8d0ce | |||
243dae14ea | |||
2cce1b9ea0 | |||
89f4e983d6 | |||
f680cf6050 | |||
4cd4678194 | |||
082bc20bb9 | |||
32ea7d763a | |||
44e80f4c46 |
48
NEWS
48
NEWS
@ -1,3 +1,51 @@
|
||||
3.25.2
|
||||
======
|
||||
* Fix StEntry::primary-icon-clicked emission [Florian; #782190]
|
||||
* Add an optional icon parameter to PopupMenu.addAction() [Mario; #782166]
|
||||
* Allow search providers to include clipboard text with results [Daiki; #775099]
|
||||
* Reduce dependency on Caribou [Carlos; #777342]
|
||||
* Add transparency to top bar when free floating [Alessandro; #747163]
|
||||
* Animate maximize/unmaximize operations [Alessandro; #766685]
|
||||
* Misc. bug fixes [Florian, Matthias, Jeremy, Michael, Carlos, Lan; #782000,
|
||||
#780215, #782802, #782637, #782930, #755164, #780215, #782982]
|
||||
|
||||
Contributors:
|
||||
Jeremy Bicha, Michael Biebl, Alessandro Bono, Carlos Garnacho, Ting-Wei Lan,
|
||||
Matthias Liertzer, Florian Müllner, Mario Sanchez Prada, Daiki Ueno
|
||||
|
||||
Translations:
|
||||
Jordi Mas [ca], Christian Stadelmann [de], Милош Поповић [sr],
|
||||
Милош Поповић [sr@latin], Furkan Ahmet Kara [tr]
|
||||
|
||||
3.25.1
|
||||
======
|
||||
* Close Wifi selection dialog on lock [Florian; #780054]
|
||||
* Fix DND over window previews in overview [Florian; #737166]
|
||||
* Do not lock the screen when disabled by lockdown settings [Florian; #780212]
|
||||
* Follow GNOME Weather's location permissions [Florian; #780252]
|
||||
* Fix portals that require a new window to be loaded [Catalin; #759044]
|
||||
* Fix restricting menus to screen height on HiDPI displays [Cosimo; #753305]
|
||||
* Misc. bug fixes and cleanups [Florian, Cosimo, Bastien, Catalin, Carlos G.,
|
||||
Jonas, Carlos S., Xiaoguang, Rares, Emilio; #780063, #780321, #780381,
|
||||
#780453, #758873, #780606, #642652, #777732, #780157, #781482, #780404,
|
||||
#781545, #781728]
|
||||
|
||||
Contributors:
|
||||
Jonas Ådahl, Cosimo Cecchi, Philip Chimento, Carlos Garnacho, Catalin Iacob,
|
||||
Florian Müllner, Bastien Nocera, Emilio Pozuelo Monfort, Carlos Soriano,
|
||||
Rares Visalom, Xiaoguang Wang
|
||||
|
||||
Translations:
|
||||
Marek Cernocky [cs], Piotr Drąg [pl], Anders Jonsson [sv], Stas Solovey [ru],
|
||||
Rafael Fontenelle [pt_BR], Baurzhan Muftakhidinov [kk], Daniel Korostil [uk],
|
||||
Kukuh Syafaat [id], Milo Casagrande [it], Jiri Grönroos [fi],
|
||||
Daniel Mustieles [es], Balázs Úr [hu], Guillaume Bernard [fr],
|
||||
Changwoo Ryu [ko], Mario Blättermann [de], Fran Dieguez [gl],
|
||||
Dušan Kazik [sk], Yuras Shumovich [be], Fabio Tomat [fur],
|
||||
Kjartan Maraas [nb], Aurimas Černius [lt], Trần Ngọc Quân [vi],
|
||||
Rūdolfs Mazurs [lv], Γιάννης Κουτσούκος [el], gogo [hr], Марко Костић [sr],
|
||||
Jordi Mas [ca], Khaled Hosny [ar]
|
||||
|
||||
3.24.0
|
||||
======
|
||||
|
||||
|
@ -4,7 +4,9 @@
|
||||
srcdir=`dirname $0`
|
||||
test -z "$srcdir" && srcdir=.
|
||||
|
||||
pushd $srcdir
|
||||
olddir="$(pwd)"
|
||||
|
||||
cd "${srcdir}"
|
||||
|
||||
(test -f configure.ac \
|
||||
&& test -d src) || {
|
||||
@ -26,8 +28,8 @@ gtkdocize --copy || exit 1
|
||||
intltoolize --force --copy --automake || exit 1
|
||||
autoreconf --verbose --force --install || exit 1
|
||||
|
||||
popd
|
||||
cd "${olddir}"
|
||||
|
||||
if [ "$NOCONFIGURE" = "" ]; then
|
||||
$srcdir/configure "$@" || exit 1
|
||||
"${srcdir}/configure" "$@" || exit 1
|
||||
fi
|
||||
|
@ -1,5 +1,5 @@
|
||||
AC_PREREQ(2.63)
|
||||
AC_INIT([gnome-shell],[3.24.0],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||
AC_INIT([gnome-shell],[3.25.2],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||
AX_IS_RELEASE([git-directory])
|
||||
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
@ -85,9 +85,9 @@ AC_MSG_RESULT($enable_systemd)
|
||||
|
||||
GOBJECT_INTROSPECTION_MIN_VERSION=1.49.1
|
||||
GJS_MIN_VERSION=1.47.0
|
||||
MUTTER_MIN_VERSION=3.24.0
|
||||
MUTTER_MIN_VERSION=3.25.2
|
||||
GTK_MIN_VERSION=3.15.0
|
||||
GIO_MIN_VERSION=2.45.3
|
||||
GIO_MIN_VERSION=2.53.0
|
||||
LIBECAL_MIN_VERSION=3.5.3
|
||||
LIBEDATASERVER_MIN_VERSION=3.17.2
|
||||
POLKIT_MIN_VERSION=0.100
|
||||
@ -190,7 +190,7 @@ if test "x$enable_networkmanager" != "xno"; then
|
||||
[libnm-glib
|
||||
libnm-util >= $NETWORKMANAGER_MIN_VERSION
|
||||
libnm-gtk >= $NETWORKMANAGER_MIN_VERSION
|
||||
libsecret-unstable],
|
||||
libsecret-1 >= 0.18],
|
||||
[have_networkmanager=yes],
|
||||
[have_networkmanager=no])
|
||||
|
||||
|
@ -300,7 +300,7 @@ StScrollBar {
|
||||
padding-bottom: 6px; }
|
||||
|
||||
.mount-question-dialog-subject {
|
||||
max-width: 500px; }
|
||||
max-width: 34em; }
|
||||
|
||||
.show-processes-dialog-subject:rtl,
|
||||
.mount-question-dialog-subject:rtl {
|
||||
@ -345,7 +345,7 @@ StScrollBar {
|
||||
|
||||
/* Password or Authentication Dialog */
|
||||
.prompt-dialog {
|
||||
width: 500px;
|
||||
width: 34em;
|
||||
border: 3px solid rgba(238, 238, 236, 0.2); }
|
||||
|
||||
.prompt-dialog-main-layout {
|
||||
@ -669,7 +669,9 @@ StScrollBar {
|
||||
|
||||
/* TOP BAR */
|
||||
#panel {
|
||||
background-color: black;
|
||||
background-color: rgba(0, 0, 0, 0.2);
|
||||
/* transition from solid to transparent */
|
||||
transition-duration: 500ms;
|
||||
font-weight: bold;
|
||||
height: 1.86em; }
|
||||
#panel.unlock-screen, #panel.login-screen, #panel.lock-screen {
|
||||
@ -678,7 +680,7 @@ StScrollBar {
|
||||
spacing: 4px; }
|
||||
#panel .panel-corner {
|
||||
-panel-corner-radius: 6px;
|
||||
-panel-corner-background-color: black;
|
||||
-panel-corner-background-color: rgba(0, 0, 0, 0.2);
|
||||
-panel-corner-border-width: 2px;
|
||||
-panel-corner-border-color: transparent; }
|
||||
#panel .panel-corner:active, #panel .panel-corner:overview, #panel .panel-corner:focus {
|
||||
@ -691,14 +693,24 @@ StScrollBar {
|
||||
-natural-hpadding: 12px;
|
||||
-minimum-hpadding: 6px;
|
||||
font-weight: bold;
|
||||
color: #ccc;
|
||||
color: #eee;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.9);
|
||||
transition-duration: 100ms; }
|
||||
#panel .panel-button .app-menu-icon {
|
||||
-st-icon-style: symbolic;
|
||||
margin-left: 4px;
|
||||
margin-right: 4px; }
|
||||
#panel .panel-button .system-status-icon,
|
||||
#panel .panel-button .app-menu-icon > StIcon,
|
||||
#panel .panel-button .popup-menu-arrow {
|
||||
icon-shadow: 0px 0px 2px rgba(0, 0, 0, 0.9); }
|
||||
#panel .panel-button:hover {
|
||||
color: white; }
|
||||
color: white;
|
||||
text-shadow: 0px 0px 8px black; }
|
||||
#panel .panel-button:hover .system-status-icon,
|
||||
#panel .panel-button:hover .app-menu-icon > StIcon,
|
||||
#panel .panel-button:hover .popup-menu-arrow {
|
||||
icon-shadow: 0px 0px 8px black; }
|
||||
#panel .panel-button:active, #panel .panel-button:overview, #panel .panel-button:focus, #panel .panel-button:checked {
|
||||
background-color: rgba(0, 0, 0, 0.01);
|
||||
box-shadow: inset 0 -2px 0px #256ab1;
|
||||
@ -719,6 +731,21 @@ StScrollBar {
|
||||
spacing: 0; }
|
||||
#panel .screencast-indicator {
|
||||
color: #f57900; }
|
||||
#panel.solid {
|
||||
background-color: black;
|
||||
/* transition from transparent to solid */
|
||||
transition-duration: 300ms; }
|
||||
#panel.solid .panel-corner {
|
||||
-panel-corner-background-color: black; }
|
||||
#panel.solid .panel-button {
|
||||
color: #ccc;
|
||||
text-shadow: none; }
|
||||
#panel.solid .panel-button:hover {
|
||||
color: white; }
|
||||
#panel.solid .system-status-icon,
|
||||
#panel.solid .app-menu-icon > StIcon,
|
||||
#panel.solid .popup-menu-arrow {
|
||||
icon-shadow: none; }
|
||||
|
||||
#calendarArea {
|
||||
padding: 0.75em 1.0em; }
|
||||
@ -1010,9 +1037,9 @@ StScrollBar {
|
||||
|
||||
/* NETWORK DIALOGS */
|
||||
.nm-dialog {
|
||||
max-height: 500px;
|
||||
min-height: 450px;
|
||||
min-width: 470px; }
|
||||
max-height: 34em;
|
||||
min-height: 31em;
|
||||
min-width: 32em; }
|
||||
|
||||
.nm-dialog-content {
|
||||
spacing: 20px;
|
||||
|
Submodule data/theme/gnome-shell-sass updated: e94bce1fcf...4c361179a1
@ -300,7 +300,7 @@ StScrollBar {
|
||||
padding-bottom: 6px; }
|
||||
|
||||
.mount-question-dialog-subject {
|
||||
max-width: 500px; }
|
||||
max-width: 34em; }
|
||||
|
||||
.show-processes-dialog-subject:rtl,
|
||||
.mount-question-dialog-subject:rtl {
|
||||
@ -345,7 +345,7 @@ StScrollBar {
|
||||
|
||||
/* Password or Authentication Dialog */
|
||||
.prompt-dialog {
|
||||
width: 500px;
|
||||
width: 34em;
|
||||
border: 3px solid rgba(238, 238, 236, 0.2); }
|
||||
|
||||
.prompt-dialog-main-layout {
|
||||
@ -669,7 +669,9 @@ StScrollBar {
|
||||
|
||||
/* TOP BAR */
|
||||
#panel {
|
||||
background-color: black;
|
||||
background-color: rgba(0, 0, 0, 0.2);
|
||||
/* transition from solid to transparent */
|
||||
transition-duration: 500ms;
|
||||
font-weight: bold;
|
||||
height: 1.86em; }
|
||||
#panel.unlock-screen, #panel.login-screen, #panel.lock-screen {
|
||||
@ -678,7 +680,7 @@ StScrollBar {
|
||||
spacing: 4px; }
|
||||
#panel .panel-corner {
|
||||
-panel-corner-radius: 6px;
|
||||
-panel-corner-background-color: black;
|
||||
-panel-corner-background-color: rgba(0, 0, 0, 0.2);
|
||||
-panel-corner-border-width: 2px;
|
||||
-panel-corner-border-color: transparent; }
|
||||
#panel .panel-corner:active, #panel .panel-corner:overview, #panel .panel-corner:focus {
|
||||
@ -691,14 +693,24 @@ StScrollBar {
|
||||
-natural-hpadding: 12px;
|
||||
-minimum-hpadding: 6px;
|
||||
font-weight: bold;
|
||||
color: #ccc;
|
||||
color: #eee;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.9);
|
||||
transition-duration: 100ms; }
|
||||
#panel .panel-button .app-menu-icon {
|
||||
-st-icon-style: symbolic;
|
||||
margin-left: 4px;
|
||||
margin-right: 4px; }
|
||||
#panel .panel-button .system-status-icon,
|
||||
#panel .panel-button .app-menu-icon > StIcon,
|
||||
#panel .panel-button .popup-menu-arrow {
|
||||
icon-shadow: 0px 0px 2px rgba(0, 0, 0, 0.9); }
|
||||
#panel .panel-button:hover {
|
||||
color: white; }
|
||||
color: white;
|
||||
text-shadow: 0px 0px 8px black; }
|
||||
#panel .panel-button:hover .system-status-icon,
|
||||
#panel .panel-button:hover .app-menu-icon > StIcon,
|
||||
#panel .panel-button:hover .popup-menu-arrow {
|
||||
icon-shadow: 0px 0px 8px black; }
|
||||
#panel .panel-button:active, #panel .panel-button:overview, #panel .panel-button:focus, #panel .panel-button:checked {
|
||||
background-color: rgba(0, 0, 0, 0.01);
|
||||
box-shadow: inset 0 -2px 0px #256ab1;
|
||||
@ -719,6 +731,21 @@ StScrollBar {
|
||||
spacing: 0; }
|
||||
#panel .screencast-indicator {
|
||||
color: #f57900; }
|
||||
#panel.solid {
|
||||
background-color: black;
|
||||
/* transition from transparent to solid */
|
||||
transition-duration: 300ms; }
|
||||
#panel.solid .panel-corner {
|
||||
-panel-corner-background-color: black; }
|
||||
#panel.solid .panel-button {
|
||||
color: #ccc;
|
||||
text-shadow: none; }
|
||||
#panel.solid .panel-button:hover {
|
||||
color: white; }
|
||||
#panel.solid .system-status-icon,
|
||||
#panel.solid .app-menu-icon > StIcon,
|
||||
#panel.solid .popup-menu-arrow {
|
||||
icon-shadow: none; }
|
||||
|
||||
#calendarArea {
|
||||
padding: 0.75em 1.0em; }
|
||||
@ -1010,9 +1037,9 @@ StScrollBar {
|
||||
|
||||
/* NETWORK DIALOGS */
|
||||
.nm-dialog {
|
||||
max-height: 500px;
|
||||
min-height: 450px;
|
||||
min-width: 470px; }
|
||||
max-height: 34em;
|
||||
min-height: 31em;
|
||||
min-width: 32em; }
|
||||
|
||||
.nm-dialog-content {
|
||||
spacing: 20px;
|
||||
|
@ -125,7 +125,7 @@ EXTRA_DIST +=
|
||||
# Files not to distribute
|
||||
# for --rebuild-types in $(SCAN_OPTIONS), e.g. $(DOC_MODULE).types
|
||||
# for --rebuild-sections in $(SCAN_OPTIONS) e.g. $(DOC_MODULE)-sections.txt
|
||||
DISTCLEANFILES = $(DOC_MODULES).types
|
||||
DISTCLEANFILES = $(DOC_MODULE).types
|
||||
|
||||
# Comment this out if you want 'make check' to test you doc status
|
||||
# and run some sanity checks
|
||||
|
@ -5,6 +5,7 @@ const GLib = imports.gi.GLib;
|
||||
const GObject = imports.gi.GObject;
|
||||
const Gio = imports.gi.Gio;
|
||||
const Gtk = imports.gi.Gtk;
|
||||
const Gdk = imports.gi.Gdk;
|
||||
const Pango = imports.gi.Pango;
|
||||
const Format = imports.format;
|
||||
|
||||
@ -92,9 +93,11 @@ const Application = new Lang.Class({
|
||||
widget = this._buildErrorUI(extension, e);
|
||||
}
|
||||
|
||||
let dialog = new Gtk.Dialog({ use_header_bar: true,
|
||||
modal: true,
|
||||
title: extension.metadata.name });
|
||||
let dialog = new Gtk.Window({ modal: !this._skipMainWindow,
|
||||
type_hint: Gdk.WindowTypeHint.DIALOG });
|
||||
dialog.set_titlebar(new Gtk.HeaderBar({ show_close_button: true,
|
||||
title: extension.metadata.name,
|
||||
visible: true }));
|
||||
|
||||
if (this._skipMainWindow) {
|
||||
this.application.add_window(dialog);
|
||||
@ -107,7 +110,7 @@ const Application = new Lang.Class({
|
||||
}
|
||||
|
||||
dialog.set_default_size(600, 400);
|
||||
dialog.get_content_area().add(widget);
|
||||
dialog.add(widget);
|
||||
dialog.show();
|
||||
},
|
||||
|
||||
@ -154,7 +157,7 @@ const Application = new Lang.Class({
|
||||
|
||||
this._settings = new Gio.Settings({ schema_id: 'org.gnome.shell' });
|
||||
this._settings.bind('disable-user-extensions', killSwitch, 'active',
|
||||
Gio.SettingsBindFlags.BIND_DEFAULT |
|
||||
Gio.SettingsBindFlags.DEFAULT |
|
||||
Gio.SettingsBindFlags.INVERT_BOOLEAN);
|
||||
|
||||
let scroll = new Gtk.ScrolledWindow({ hscrollbar_policy: Gtk.PolicyType.NEVER });
|
||||
|
@ -775,10 +775,12 @@ const LoginDialog = new Lang.Class({
|
||||
},
|
||||
|
||||
_onPrompted: function() {
|
||||
this._sessionMenuButton.updateSensitivity(true);
|
||||
|
||||
if (this._shouldShowSessionMenuButton())
|
||||
if (this._shouldShowSessionMenuButton()) {
|
||||
this._sessionMenuButton.updateSensitivity(true);
|
||||
this._authPrompt.setActorInDefaultButtonWell(this._sessionMenuButton.actor);
|
||||
} else {
|
||||
this._sessionMenuButton.updateSensitivity(false);
|
||||
}
|
||||
this._showPrompt();
|
||||
},
|
||||
|
||||
@ -881,6 +883,7 @@ const LoginDialog = new Lang.Class({
|
||||
}));
|
||||
this._updateCancelButton();
|
||||
|
||||
this._sessionMenuButton.updateSensitivity(false);
|
||||
this._authPrompt.updateSensitivity(true);
|
||||
this._showPrompt();
|
||||
},
|
||||
|
@ -218,11 +218,10 @@ function formatTime(time, params) {
|
||||
if (_desktopSettings == null)
|
||||
_desktopSettings = new Gio.Settings({ schema_id: 'org.gnome.desktop.interface' });
|
||||
let clockFormat = _desktopSettings.get_string('clock-format');
|
||||
let hasAmPm = date.format('%p') != '';
|
||||
|
||||
params = Params.parse(params, { timeOnly: false });
|
||||
|
||||
if (clockFormat == '24h' || !hasAmPm) {
|
||||
if (clockFormat == '24h') {
|
||||
// Show only the time if date is on today
|
||||
if (daysAgo < 1 || params.timeOnly)
|
||||
/* Translators: Time in 24h format */
|
||||
|
@ -54,10 +54,11 @@ const WeatherClient = new Lang.Class({
|
||||
|
||||
this._world = GWeather.Location.get_world();
|
||||
|
||||
let providers = GWeather.Provider.METAR |
|
||||
GWeather.Provider.YR_NO |
|
||||
GWeather.Provider.OWM;
|
||||
this._weatherInfo = new GWeather.Info({ enabled_providers: providers });
|
||||
this._providers = GWeather.Provider.METAR |
|
||||
GWeather.Provider.YR_NO |
|
||||
GWeather.Provider.OWM;
|
||||
|
||||
this._weatherInfo = new GWeather.Info({ enabled_providers: 0 });
|
||||
this._weatherInfo.connect_after('updated', () => {
|
||||
this._lastUpdate = GLib.DateTime.new_now_local();
|
||||
this.emit('changed');
|
||||
@ -141,6 +142,8 @@ const WeatherClient = new Lang.Class({
|
||||
this._weatherInfo.set_location(location);
|
||||
this._locationValid = (location != null);
|
||||
|
||||
this._weatherInfo.set_enabled_providers(location ? this._providers : 0);
|
||||
|
||||
if (location)
|
||||
this._loadInfo();
|
||||
else
|
||||
|
@ -6,6 +6,7 @@ const Signals = imports.signals;
|
||||
|
||||
const Main = imports.ui.main;
|
||||
|
||||
// In alphabetical order
|
||||
const RENAMED_DESKTOP_IDS = {
|
||||
'baobab.desktop': 'org.gnome.baobab.desktop',
|
||||
'cheese.desktop': 'org.gnome.Cheese.desktop',
|
||||
@ -27,6 +28,7 @@ const RENAMED_DESKTOP_IDS = {
|
||||
'gnome-documents.desktop': 'org.gnome.Documents.desktop',
|
||||
'gnome-font-viewer.desktop': 'org.gnome.font-viewer.desktop',
|
||||
'gnome-nibbles.desktop': 'org.gnome.Nibbles.desktop',
|
||||
'gnome-music.desktop': 'org.gnome.Music.desktop',
|
||||
'gnome-photos.desktop': 'org.gnome.Photos.desktop',
|
||||
'gnome-screenshot.desktop': 'org.gnome.Screenshot.desktop',
|
||||
'gnome-software.desktop': 'org.gnome.Software.desktop',
|
||||
|
@ -166,7 +166,8 @@ const BackgroundCache = new Lang.Class({
|
||||
settingsSchema: null,
|
||||
onLoaded: null });
|
||||
|
||||
if (this._animations[params.settingsSchema] && _fileEqual0(this._animationFile, params.file)) {
|
||||
let animation = this._animations[params.settingsSchema];
|
||||
if (animation && _fileEqual0(animation.file, params.file)) {
|
||||
if (params.onLoaded) {
|
||||
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
|
||||
params.onLoaded(this._animations[params.settingsSchema]);
|
||||
@ -177,7 +178,7 @@ const BackgroundCache = new Lang.Class({
|
||||
return;
|
||||
}
|
||||
|
||||
let animation = new Animation({ file: params.file });
|
||||
animation = new Animation({ file: params.file });
|
||||
|
||||
animation.load(Lang.bind(this, function() {
|
||||
this._animations[params.settingsSchema] = animation;
|
||||
|
@ -370,8 +370,7 @@ const IndicatorPad = new Lang.Class({
|
||||
|
||||
_init: function(actor) {
|
||||
this._source = actor;
|
||||
this._source.connect('notify::visible',
|
||||
Lang.bind(this, this.queue_relayout));
|
||||
this._source.connect('notify::visible', () => { this.queue_relayout(); });
|
||||
this.parent();
|
||||
},
|
||||
|
||||
|
@ -282,12 +282,20 @@ function _onVersionValidationChanged() {
|
||||
// temporarily disable them all
|
||||
enabledExtensions = [];
|
||||
for (let uuid in ExtensionUtils.extensions)
|
||||
reloadExtension(ExtensionUtils.extensions[uuid]);
|
||||
try {
|
||||
reloadExtension(ExtensionUtils.extensions[uuid]);
|
||||
} catch(e) {
|
||||
logExtensionError(uuid, e);
|
||||
}
|
||||
enabledExtensions = getEnabledExtensions();
|
||||
|
||||
if (Main.sessionMode.allowExtensions) {
|
||||
enabledExtensions.forEach(function(uuid) {
|
||||
enableExtension(uuid);
|
||||
try {
|
||||
enableExtension(uuid);
|
||||
} catch(e) {
|
||||
logExtensionError(uuid, e);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||
|
||||
const FocusCaretTracker = imports.ui.focusCaretTracker;
|
||||
const Atspi = imports.gi.Atspi;
|
||||
const Caribou = imports.gi.Caribou;
|
||||
const Clutter = imports.gi.Clutter;
|
||||
const Gdk = imports.gi.Gdk;
|
||||
@ -25,42 +27,6 @@ const KEYBOARD_TYPE = 'keyboard-type';
|
||||
const A11Y_APPLICATIONS_SCHEMA = 'org.gnome.desktop.a11y.applications';
|
||||
const SHOW_KEYBOARD = 'screen-keyboard-enabled';
|
||||
|
||||
const CARIBOU_BUS_NAME = 'org.gnome.Caribou.Daemon';
|
||||
const CARIBOU_OBJECT_PATH = '/org/gnome/Caribou/Daemon';
|
||||
|
||||
const CaribouKeyboardIface = '<node> \
|
||||
<interface name="org.gnome.Caribou.Keyboard"> \
|
||||
<method name="Show"> \
|
||||
<arg type="u" direction="in" /> \
|
||||
</method> \
|
||||
<method name="Hide"> \
|
||||
<arg type="u" direction="in" /> \
|
||||
</method> \
|
||||
<method name="SetCursorLocation"> \
|
||||
<arg type="i" direction="in" /> \
|
||||
<arg type="i" direction="in" /> \
|
||||
<arg type="i" direction="in" /> \
|
||||
<arg type="i" direction="in" /> \
|
||||
</method> \
|
||||
<method name="SetEntryLocation"> \
|
||||
<arg type="i" direction="in" /> \
|
||||
<arg type="i" direction="in" /> \
|
||||
<arg type="i" direction="in" /> \
|
||||
<arg type="i" direction="in" /> \
|
||||
</method> \
|
||||
<property name="Name" access="read" type="s" /> \
|
||||
</interface> \
|
||||
</node>';
|
||||
|
||||
const CaribouDaemonIface = '<node> \
|
||||
<interface name="org.gnome.Caribou.Daemon"> \
|
||||
<method name="Run" /> \
|
||||
<method name="Quit" /> \
|
||||
</interface> \
|
||||
</node>';
|
||||
|
||||
const CaribouDaemonProxy = Gio.DBusProxy.makeProxyWrapper(CaribouDaemonIface);
|
||||
|
||||
const Key = new Lang.Class({
|
||||
Name: 'Key',
|
||||
|
||||
@ -188,18 +154,19 @@ const Key = new Lang.Class({
|
||||
Signals.addSignalMethods(Key.prototype);
|
||||
|
||||
const Keyboard = new Lang.Class({
|
||||
// HACK: we can't set Name, because it collides with Name dbus property
|
||||
// Name: 'Keyboard',
|
||||
Name: 'Keyboard',
|
||||
|
||||
_init: function () {
|
||||
this._impl = Gio.DBusExportedObject.wrapJSObject(CaribouKeyboardIface, this);
|
||||
this._impl.export(Gio.DBus.session, '/org/gnome/Caribou/Keyboard');
|
||||
|
||||
this.actor = null;
|
||||
this._focusInTray = false;
|
||||
this._focusInExtendedKeys = false;
|
||||
|
||||
this._timestamp = global.display.get_current_time_roundtrip();
|
||||
this._focusCaretTracker = new FocusCaretTracker.FocusCaretTracker();
|
||||
this._focusCaretTracker.connect('focus-changed', Lang.bind(this, this._onFocusChanged));
|
||||
this._focusCaretTracker.connect('caret-moved', Lang.bind(this, this._onCaretMoved));
|
||||
this._currentAccessible = null;
|
||||
this._caretTrackingEnabled = false;
|
||||
this._updateCaretPositionId = 0;
|
||||
|
||||
this._keyboardSettings = new Gio.Settings({ schema_id: KEYBOARD_SCHEMA });
|
||||
this._keyboardSettings.connect('changed', Lang.bind(this, this._sync));
|
||||
@ -208,9 +175,7 @@ const Keyboard = new Lang.Class({
|
||||
this._daemonProxy = null;
|
||||
this._lastDeviceId = null;
|
||||
|
||||
if (Meta.is_wayland_compositor() &&
|
||||
Caribou.DisplayAdapter.set_default)
|
||||
Caribou.DisplayAdapter.set_default(new ShellWaylandAdapter());
|
||||
Caribou.DisplayAdapter.set_default(new LocalAdapter());
|
||||
|
||||
Meta.get_backend().connect('last-device-changed', Lang.bind(this,
|
||||
function (backend, deviceId) {
|
||||
@ -240,6 +205,93 @@ const Keyboard = new Lang.Class({
|
||||
this._redraw();
|
||||
},
|
||||
|
||||
_setCaretTrackerEnabled: function (enabled) {
|
||||
if (this._caretTrackingEnabled == enabled)
|
||||
return;
|
||||
|
||||
this._caretTrackingEnabled = enabled;
|
||||
|
||||
if (enabled) {
|
||||
this._focusCaretTracker.registerFocusListener();
|
||||
this._focusCaretTracker.registerCaretListener();
|
||||
} else {
|
||||
this._focusCaretTracker.deregisterFocusListener();
|
||||
this._focusCaretTracker.deregisterCaretListener();
|
||||
}
|
||||
},
|
||||
|
||||
_updateCaretPosition: function (accessible) {
|
||||
if (this._updateCaretPositionId)
|
||||
GLib.source_remove(this._updateCaretPositionId);
|
||||
this._updateCaretPositionId = GLib.idle_add(GLib.PRIORITY_DEFAULT_IDLE, Lang.bind(this, function() {
|
||||
this._updateCaretPositionId = 0;
|
||||
|
||||
let currentWindow = global.screen.get_display().focus_window;
|
||||
if (!currentWindow)
|
||||
return GLib.SOURCE_REMOVE;
|
||||
|
||||
let windowRect = currentWindow.get_frame_rect();
|
||||
let text = accessible.get_text_iface();
|
||||
let component = accessible.get_component_iface();
|
||||
|
||||
try {
|
||||
let caretOffset = text.get_caret_offset();
|
||||
let caretRect = text.get_character_extents(caretOffset, Atspi.CoordType.WINDOW);
|
||||
let focusRect = component.get_extents(Atspi.CoordType.WINDOW);
|
||||
|
||||
caretRect.x += windowRect.x;
|
||||
caretRect.y += windowRect.y;
|
||||
focusRect.x += windowRect.x;
|
||||
focusRect.y += windowRect.y;
|
||||
|
||||
if (caretRect.width == 0 && caretRect.height == 0)
|
||||
caretRect = focusRect;
|
||||
|
||||
this.setEntryLocation(focusRect.x, focusRect.y, focusRect.width, focusRect.height);
|
||||
this.setCursorLocation(caretRect.x, caretRect.y, caretRect.width, caretRect.height);
|
||||
} catch (e) {
|
||||
log('Error updating caret position for OSK: ' + e.message);
|
||||
}
|
||||
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
|
||||
GLib.Source.set_name_by_id(this._updateCaretPositionId, '[gnome-shell] this._updateCaretPosition');
|
||||
},
|
||||
|
||||
_focusIsTextEntry: function (accessible) {
|
||||
try {
|
||||
let role = accessible.get_role();
|
||||
let stateSet = accessible.get_state_set();
|
||||
return stateSet.contains(Atspi.StateType.EDITABLE) || role == Atspi.Role.TERMINAL;
|
||||
} catch (e) {
|
||||
log('Error determining accessible role: ' + e.message);
|
||||
return false;
|
||||
}
|
||||
},
|
||||
|
||||
_onFocusChanged: function (caretTracker, event) {
|
||||
let accessible = event.source;
|
||||
if (!this._focusIsTextEntry(accessible))
|
||||
return;
|
||||
|
||||
let focused = event.detail1 != 0;
|
||||
if (focused) {
|
||||
this._currentAccessible = accessible;
|
||||
this._updateCaretPosition(accessible);
|
||||
this.show(Main.layoutManager.focusIndex);
|
||||
} else if (this._currentAccessible == accessible) {
|
||||
this._currentAccessible = null;
|
||||
this.hide();
|
||||
}
|
||||
},
|
||||
|
||||
_onCaretMoved: function (caretTracker, event) {
|
||||
let accessible = event.source;
|
||||
if (this._currentAccessible == accessible)
|
||||
this._updateCaretPosition(accessible);
|
||||
},
|
||||
|
||||
_lastDeviceIsTouchscreen: function () {
|
||||
if (!this._lastDeviceId)
|
||||
return false;
|
||||
@ -262,6 +314,8 @@ const Keyboard = new Lang.Class({
|
||||
this._keyboard.keyboard_type == this._keyboardSettings.get_string(KEYBOARD_TYPE))
|
||||
return;
|
||||
|
||||
this._setCaretTrackerEnabled(this._enableKeyboard);
|
||||
|
||||
if (this._keyboard)
|
||||
this._destroyKeyboard();
|
||||
|
||||
@ -297,23 +351,6 @@ const Keyboard = new Lang.Class({
|
||||
},
|
||||
|
||||
_setupKeyboard: function() {
|
||||
if (!this._daemonProxy) {
|
||||
this._daemonProxy = new CaribouDaemonProxy(Gio.DBus.session, CARIBOU_BUS_NAME,
|
||||
CARIBOU_OBJECT_PATH,
|
||||
Lang.bind(this, function(proxy, error) {
|
||||
if (error) {
|
||||
log(error.message);
|
||||
return;
|
||||
}
|
||||
}));
|
||||
}
|
||||
this._daemonProxy.RunRemote(function (result, error) {
|
||||
if (error) {
|
||||
log(error.message);
|
||||
return;
|
||||
}
|
||||
});
|
||||
|
||||
this.actor = new St.BoxLayout({ name: 'keyboard', vertical: true, reactive: true });
|
||||
Main.layoutManager.keyboardBox.add_actor(this.actor);
|
||||
Main.layoutManager.trackChrome(this.actor);
|
||||
@ -359,17 +396,17 @@ const Keyboard = new Lang.Class({
|
||||
|
||||
let time = global.get_current_time();
|
||||
if (!(focus instanceof Clutter.Text)) {
|
||||
this.Hide(time);
|
||||
this.hide();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!this._showIdleId) {
|
||||
this._showIdleId = GLib.idle_add(GLib.PRIORITY_DEFAULT_IDLE,
|
||||
Lang.bind(this, function() {
|
||||
this.Show(time);
|
||||
this.show(Main.layoutManager.focusIndex);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._showIdleId, '[gnome-shell] this.Show');
|
||||
GLib.Source.set_name_by_id(this._showIdleId, '[gnome-shell] this.show');
|
||||
}
|
||||
},
|
||||
|
||||
@ -581,6 +618,10 @@ const Keyboard = new Lang.Class({
|
||||
},
|
||||
|
||||
show: function (monitor) {
|
||||
if (!this._enableKeyboard)
|
||||
return;
|
||||
|
||||
this._clearShowIdle();
|
||||
this._keyboardRequested = true;
|
||||
|
||||
if (this._keyboardVisible) {
|
||||
@ -613,6 +654,10 @@ const Keyboard = new Lang.Class({
|
||||
},
|
||||
|
||||
hide: function () {
|
||||
if (!this._enableKeyboard)
|
||||
return;
|
||||
|
||||
this._clearShowIdle();
|
||||
this._keyboardRequested = false;
|
||||
|
||||
if (!this._keyboardVisible)
|
||||
@ -664,20 +709,6 @@ const Keyboard = new Lang.Class({
|
||||
this._moveTemporarily();
|
||||
},
|
||||
|
||||
// _compareTimestamp:
|
||||
//
|
||||
// Compare two timestamps taking into account
|
||||
// CURRENT_TIME (0)
|
||||
_compareTimestamp: function(one, two) {
|
||||
if (one == two)
|
||||
return 0;
|
||||
if (one == Clutter.CURRENT_TIME)
|
||||
return 1;
|
||||
if (two == Clutter.CURRENT_TIME)
|
||||
return -1;
|
||||
return one - two;
|
||||
},
|
||||
|
||||
_clearShowIdle: function() {
|
||||
if (!this._showIdleId)
|
||||
return;
|
||||
@ -685,52 +716,19 @@ const Keyboard = new Lang.Class({
|
||||
this._showIdleId = 0;
|
||||
},
|
||||
|
||||
// D-Bus methods
|
||||
Show: function(timestamp) {
|
||||
if (!this._enableKeyboard)
|
||||
return;
|
||||
|
||||
if (this._compareTimestamp(timestamp, this._timestamp) < 0)
|
||||
return;
|
||||
|
||||
this._clearShowIdle();
|
||||
|
||||
if (timestamp != Clutter.CURRENT_TIME)
|
||||
this._timestamp = timestamp;
|
||||
this.show(Main.layoutManager.focusIndex);
|
||||
},
|
||||
|
||||
Hide: function(timestamp) {
|
||||
if (!this._enableKeyboard)
|
||||
return;
|
||||
|
||||
if (this._compareTimestamp(timestamp, this._timestamp) < 0)
|
||||
return;
|
||||
|
||||
this._clearShowIdle();
|
||||
|
||||
if (timestamp != Clutter.CURRENT_TIME)
|
||||
this._timestamp = timestamp;
|
||||
this.hide();
|
||||
},
|
||||
|
||||
SetCursorLocation: function(x, y, w, h) {
|
||||
setCursorLocation: function(x, y, w, h) {
|
||||
if (!this._enableKeyboard)
|
||||
return;
|
||||
|
||||
// this._setLocation(x, y);
|
||||
},
|
||||
|
||||
SetEntryLocation: function(x, y, w, h) {
|
||||
setEntryLocation: function(x, y, w, h) {
|
||||
if (!this._enableKeyboard)
|
||||
return;
|
||||
|
||||
// this._setLocation(x, y);
|
||||
},
|
||||
|
||||
get Name() {
|
||||
return 'gnome-shell';
|
||||
}
|
||||
});
|
||||
|
||||
const KeyboardSource = new Lang.Class({
|
||||
@ -754,8 +752,8 @@ const KeyboardSource = new Lang.Class({
|
||||
}
|
||||
});
|
||||
|
||||
const ShellWaylandAdapter = new Lang.Class({
|
||||
Name: 'ShellWaylandAdapter',
|
||||
const LocalAdapter = new Lang.Class({
|
||||
Name: 'LocalAdapter',
|
||||
Extends: Caribou.XAdapter,
|
||||
|
||||
_init: function () {
|
||||
|
@ -833,19 +833,19 @@ const LookingGlass = new Lang.Class({
|
||||
return Clutter.EVENT_STOP;
|
||||
}));
|
||||
|
||||
let gcIcon = new St.Icon({ icon_name: 'gnome-fs-trash-full',
|
||||
let gcIcon = new St.Icon({ icon_name: 'user-trash-full',
|
||||
icon_size: 24 });
|
||||
toolbar.add_actor(gcIcon);
|
||||
gcIcon.reactive = true;
|
||||
gcIcon.connect('button-press-event', Lang.bind(this, function () {
|
||||
gcIcon.icon_name = 'gnome-fs-trash-empty';
|
||||
gcIcon.icon_name = 'user-trash';
|
||||
System.gc();
|
||||
this._timeoutId = Mainloop.timeout_add(500, Lang.bind(this, function () {
|
||||
gcIcon.icon_name = 'gnome-fs-trash-full';
|
||||
gcIcon.icon_name = 'user-trash-full';
|
||||
this._timeoutId = 0;
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] gcIcon.icon_name = \'gnome-fs-trash-full\'');
|
||||
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] gcIcon.icon_name = \'user-trash-full\'');
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}));
|
||||
|
||||
|
@ -120,6 +120,25 @@ const OsdMonitorLabeler = new Lang.Class({
|
||||
}
|
||||
},
|
||||
|
||||
show2: function(client, params) {
|
||||
if (!this._trackClient(client))
|
||||
return;
|
||||
|
||||
this._reset();
|
||||
|
||||
for (let connector in params) {
|
||||
let monitor = this._monitorManager.get_monitor_for_connector(connector);
|
||||
if (monitor == -1)
|
||||
continue;
|
||||
this._monitorLabels.get(monitor).push(params[connector].deep_unpack());
|
||||
}
|
||||
|
||||
for (let [monitor, labels] of this._monitorLabels.entries()) {
|
||||
labels.sort();
|
||||
this._osdLabels.push(new OsdMonitorLabel(monitor, labels.join(' ')));
|
||||
}
|
||||
},
|
||||
|
||||
hide: function(client) {
|
||||
if (!this._untrackClient(client))
|
||||
return;
|
||||
|
@ -801,9 +801,11 @@ const Panel = new Lang.Class({
|
||||
|
||||
Main.overview.connect('showing', Lang.bind(this, function () {
|
||||
this.actor.add_style_pseudo_class('overview');
|
||||
this._updateSolidStyle();
|
||||
}));
|
||||
Main.overview.connect('hiding', Lang.bind(this, function () {
|
||||
this.actor.remove_style_pseudo_class('overview');
|
||||
this._updateSolidStyle();
|
||||
}));
|
||||
|
||||
Main.layoutManager.panelBox.add(this.actor);
|
||||
@ -811,9 +813,26 @@ const Panel = new Lang.Class({
|
||||
{ sortGroup: CtrlAltTab.SortGroup.TOP });
|
||||
|
||||
Main.sessionMode.connect('updated', Lang.bind(this, this._updatePanel));
|
||||
|
||||
this._trackedWindows = new Map();
|
||||
global.window_group.connect('actor-added', Lang.bind(this, this._onWindowActorAdded));
|
||||
global.window_group.connect('actor-removed', Lang.bind(this, this._onWindowActorRemoved));
|
||||
global.window_manager.connect('switch-workspace', Lang.bind(this, this._updateSolidStyle));
|
||||
|
||||
this._updatePanel();
|
||||
},
|
||||
|
||||
_onWindowActorAdded: function(container, metaWindowActor) {
|
||||
let signalId = metaWindowActor.connect('allocation-changed', Lang.bind(this, this._updateSolidStyle));
|
||||
this._trackedWindows.set(metaWindowActor, signalId);
|
||||
},
|
||||
|
||||
_onWindowActorRemoved: function(container, metaWindowActor) {
|
||||
metaWindowActor.disconnect(this._trackedWindows.get(metaWindowActor));
|
||||
this._trackedWindows.delete(metaWindowActor);
|
||||
this._updateSolidStyle();
|
||||
},
|
||||
|
||||
_getPreferredWidth: function(actor, forHeight, alloc) {
|
||||
alloc.min_size = -1;
|
||||
alloc.natural_size = Main.layoutManager.primaryMonitor.width;
|
||||
@ -1012,6 +1031,36 @@ const Panel = new Lang.Class({
|
||||
}
|
||||
},
|
||||
|
||||
_updateSolidStyle: function() {
|
||||
if (this.actor.has_style_pseudo_class('overview') || !Main.sessionMode.hasWindows) {
|
||||
this._removeStyleClassName('solid');
|
||||
return;
|
||||
}
|
||||
|
||||
/* Get all the windows in the active workspace that are in the primary monitor and visible */
|
||||
let activeWorkspace = global.screen.get_active_workspace();
|
||||
let windows = activeWorkspace.list_windows().filter(function(metaWindow) {
|
||||
return metaWindow.is_on_primary_monitor() &&
|
||||
metaWindow.showing_on_its_workspace() &&
|
||||
metaWindow.get_window_type() != Meta.WindowType.DESKTOP;
|
||||
});
|
||||
|
||||
/* Check if at least one window is near enough to the panel */
|
||||
let [, panelTop] = this.actor.get_transformed_position();
|
||||
let panelBottom = panelTop + this.actor.get_height();
|
||||
let scale = St.ThemeContext.get_for_stage(global.stage).scale_factor;
|
||||
let isNearEnough = windows.some(Lang.bind(this, function(metaWindow) {
|
||||
let verticalPosition = metaWindow.get_frame_rect().y;
|
||||
return verticalPosition < panelBottom + 5 * scale;
|
||||
}));
|
||||
|
||||
if (isNearEnough)
|
||||
this._addStyleClassName('solid');
|
||||
else
|
||||
this._removeStyleClassName('solid');
|
||||
|
||||
},
|
||||
|
||||
_hideIndicators: function() {
|
||||
for (let role in PANEL_ITEM_IMPLEMENTATIONS) {
|
||||
let indicator = this.statusArea[role];
|
||||
|
@ -2,6 +2,8 @@
|
||||
|
||||
const Clutter = imports.gi.Clutter;
|
||||
const Gtk = imports.gi.Gtk;
|
||||
const Gio = imports.gi.Gio;
|
||||
const GObject = imports.gi.GObject;
|
||||
const Lang = imports.lang;
|
||||
const Shell = imports.gi.Shell;
|
||||
const Signals = imports.signals;
|
||||
@ -389,20 +391,24 @@ const PopupImageMenuItem = new Lang.Class({
|
||||
Name: 'PopupImageMenuItem',
|
||||
Extends: PopupBaseMenuItem,
|
||||
|
||||
_init: function (text, iconName, params) {
|
||||
_init: function (text, icon, params) {
|
||||
this.parent(params);
|
||||
|
||||
this.label = new St.Label({ text: text });
|
||||
this.actor.add_child(this.label);
|
||||
this._icon = new St.Icon({ style_class: 'popup-menu-icon' });
|
||||
this.actor.add_child(this._icon, { align: St.Align.END });
|
||||
this.label = new St.Label({ text: text });
|
||||
this.actor.add_child(this.label);
|
||||
this.actor.label_actor = this.label;
|
||||
|
||||
this.setIcon(iconName);
|
||||
this.setIcon(icon);
|
||||
},
|
||||
|
||||
setIcon: function(name) {
|
||||
this._icon.icon_name = name;
|
||||
setIcon: function(icon) {
|
||||
// The 'icon' parameter can be either a Gio.Icon or a string.
|
||||
if (GObject.type_is_a(icon, Gio.Icon))
|
||||
this._icon.gicon = icon;
|
||||
else
|
||||
this._icon.icon_name = icon;
|
||||
}
|
||||
});
|
||||
|
||||
@ -461,8 +467,13 @@ const PopupMenuBase = new Lang.Class({
|
||||
this._setSettingsVisibility(Main.sessionMode.allowSettings);
|
||||
},
|
||||
|
||||
addAction: function(title, callback) {
|
||||
let menuItem = new PopupMenuItem(title);
|
||||
addAction: function(title, callback, icon) {
|
||||
let menuItem;
|
||||
if (icon != undefined)
|
||||
menuItem = new PopupImageMenuItem(title, icon);
|
||||
else
|
||||
menuItem = new PopupMenuItem(title);
|
||||
|
||||
this.addMenuItem(menuItem);
|
||||
menuItem.connect('activate', Lang.bind(this, function (menuItem, event) {
|
||||
callback(event);
|
||||
|
@ -278,7 +278,8 @@ const RemoteSearchProvider = new Lang.Class({
|
||||
name: metas[i]['name'],
|
||||
description: metas[i]['description'],
|
||||
createIcon: Lang.bind(this,
|
||||
this.createIcon, metas[i]) });
|
||||
this.createIcon, metas[i]),
|
||||
clipboardText: metas[i]['clipboardText'] });
|
||||
}
|
||||
callback(resultMetas);
|
||||
},
|
||||
|
@ -152,6 +152,8 @@ const SearchResultsBase = new Lang.Class({
|
||||
|
||||
this._resultDisplays = {};
|
||||
|
||||
this._clipboard = St.Clipboard.get_default();
|
||||
|
||||
this._cancellable = new Gio.Cancellable();
|
||||
},
|
||||
|
||||
@ -181,6 +183,8 @@ const SearchResultsBase = new Lang.Class({
|
||||
|
||||
_activateResult: function(result, id) {
|
||||
this.provider.activateResult(id, this._terms);
|
||||
if (result.metaInfo.clipboardText)
|
||||
this._clipboard.set_text(St.ClipboardType.CLIPBOARD, result.metaInfo.clipboardText);
|
||||
Main.overview.toggle();
|
||||
},
|
||||
|
||||
|
@ -28,6 +28,9 @@ const GnomeShellIface = '<node> \
|
||||
<method name="ShowMonitorLabels"> \
|
||||
<arg type="a{uv}" direction="in" name="params" /> \
|
||||
</method> \
|
||||
<method name="ShowMonitorLabels2"> \
|
||||
<arg type="a{sv}" direction="in" name="params" /> \
|
||||
</method> \
|
||||
<method name="HideMonitorLabels" /> \
|
||||
<method name="FocusApp"> \
|
||||
<arg type="s" direction="in" name="id"/> \
|
||||
@ -250,6 +253,12 @@ const GnomeShell = new Lang.Class({
|
||||
Main.osdMonitorLabeler.show(sender, dict);
|
||||
},
|
||||
|
||||
ShowMonitorLabels2Async: function(params, invocation) {
|
||||
let sender = invocation.get_sender();
|
||||
let [dict] = params;
|
||||
Main.osdMonitorLabeler.show2(sender, dict);
|
||||
},
|
||||
|
||||
HideMonitorLabelsAsync: function(params, invocation) {
|
||||
let sender = invocation.get_sender();
|
||||
Main.osdMonitorLabeler.hide(sender);
|
||||
|
@ -385,7 +385,7 @@ const SwitcherList = new Lang.Class({
|
||||
|
||||
let n = this._items.length;
|
||||
bbox.connect('clicked', Lang.bind(this, function() { this._onItemClicked(n); }));
|
||||
bbox.connect('enter-event', Lang.bind(this, function() { this._onItemEnter(n); }));
|
||||
bbox.connect('motion-event', Lang.bind(this, function() { return this._onItemEnter(n); }));
|
||||
|
||||
bbox.label_actor = label;
|
||||
|
||||
@ -399,7 +399,11 @@ const SwitcherList = new Lang.Class({
|
||||
},
|
||||
|
||||
_onItemEnter: function (index) {
|
||||
this._itemEntered(index);
|
||||
// Avoid reentrancy
|
||||
if (index != this._currentItemEntered) {
|
||||
this._currentItemEntered = index;
|
||||
this._itemEntered(index);
|
||||
}
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
},
|
||||
|
||||
|
@ -1313,15 +1313,13 @@ const WindowManager = new Lang.Class({
|
||||
return;
|
||||
}
|
||||
|
||||
if ((whichChange == Meta.SizeChange.FULLSCREEN ||
|
||||
whichChange == Meta.SizeChange.UNFULLSCREEN) &&
|
||||
oldFrameRect.width > 0 && oldFrameRect.height > 0)
|
||||
this._fullscreenAnimation(shellwm, actor, oldFrameRect, whichChange);
|
||||
if (oldFrameRect.width > 0 && oldFrameRect.height > 0)
|
||||
this._prepareAnimationInfo(shellwm, actor, oldFrameRect, whichChange);
|
||||
else
|
||||
shellwm.completed_size_change(actor);
|
||||
},
|
||||
|
||||
_fullscreenAnimation: function(shellwm, actor, oldFrameRect, change) {
|
||||
_prepareAnimationInfo: function(shellwm, actor, oldFrameRect, change) {
|
||||
// Position a clone of the window on top of the old position,
|
||||
// while actor updates are frozen.
|
||||
let actorContent = Shell.util_get_content_for_window_actor(actor, oldFrameRect);
|
||||
@ -1331,26 +1329,25 @@ const WindowManager = new Lang.Class({
|
||||
actorClone.set_size(oldFrameRect.width, oldFrameRect.height);
|
||||
Main.uiGroup.add_actor(actorClone);
|
||||
|
||||
let rect = change == Meta.SizeChange.FULLSCREEN ? oldFrameRect : null;
|
||||
|
||||
if (this._clearFullscreenInfo(actor))
|
||||
if (this._clearAnimationInfo(actor))
|
||||
this._shellwm.completed_size_change(actor);
|
||||
|
||||
actor.__fullscreenInfo = { clone: actorClone,
|
||||
oldRect: rect };
|
||||
actor.__animationInfo = { clone: actorClone,
|
||||
oldRect: oldFrameRect };
|
||||
},
|
||||
|
||||
_sizeChangedWindow: function(shellwm, actor) {
|
||||
if (!actor.__fullscreenInfo)
|
||||
if (!actor.__animationInfo)
|
||||
return;
|
||||
if (this._resizing.indexOf(actor) != -1)
|
||||
return;
|
||||
|
||||
let actorClone = actor.__fullscreenInfo.clone;
|
||||
let actorClone = actor.__animationInfo.clone;
|
||||
let targetRect = actor.meta_window.get_frame_rect();
|
||||
let sourceRect = actor.__animationInfo.oldRect;
|
||||
|
||||
let scaleX = targetRect.width / actorClone.width;
|
||||
let scaleY = targetRect.height / actorClone.height;
|
||||
let scaleX = targetRect.width / sourceRect.width;
|
||||
let scaleY = targetRect.height / sourceRect.height;
|
||||
|
||||
this._resizing.push(actor);
|
||||
|
||||
@ -1365,15 +1362,8 @@ const WindowManager = new Lang.Class({
|
||||
transition: 'easeOutQuad'
|
||||
});
|
||||
|
||||
let monitor = Main.layoutManager.monitors[actor.meta_window.get_monitor()];
|
||||
let oldRect = actor.__fullscreenInfo.oldRect;
|
||||
if (oldRect) {
|
||||
actor.translation_x = oldRect.x - monitor.x;
|
||||
actor.translation_y = oldRect.y - monitor.y;
|
||||
} else {
|
||||
actor.translation_x = -(targetRect.x - monitor.x);
|
||||
actor.translation_y = -(targetRect.y - monitor.y);
|
||||
}
|
||||
actor.translation_x = -targetRect.x + sourceRect.x;
|
||||
actor.translation_y = -targetRect.y + sourceRect.y;
|
||||
|
||||
// Now set scale the actor to size it as the clone.
|
||||
actor.scale_x = 1 / scaleX;
|
||||
@ -1401,10 +1391,10 @@ const WindowManager = new Lang.Class({
|
||||
shellwm.completed_size_change(actor);
|
||||
},
|
||||
|
||||
_clearFullscreenInfo: function(actor) {
|
||||
if (actor.__fullscreenInfo) {
|
||||
actor.__fullscreenInfo.clone.destroy();
|
||||
delete actor.__fullscreenInfo;
|
||||
_clearAnimationInfo: function(actor) {
|
||||
if (actor.__animationInfo) {
|
||||
actor.__animationInfo.clone.destroy();
|
||||
delete actor.__animationInfo;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@ -1417,13 +1407,13 @@ const WindowManager = new Lang.Class({
|
||||
actor.scale_y = 1.0;
|
||||
actor.translation_x = 0;
|
||||
actor.translation_y = 0;
|
||||
this._clearFullscreenInfo(actor);
|
||||
this._clearAnimationInfo(actor);
|
||||
}
|
||||
},
|
||||
|
||||
_sizeChangeWindowOverwritten: function(shellwm, actor) {
|
||||
if (this._removeEffect(this._resizing, actor))
|
||||
this._clearFullscreenInfo(actor);
|
||||
this._clearAnimationInfo(actor);
|
||||
},
|
||||
|
||||
_hasAttachedDialogs: function(window, ignoreWindow) {
|
||||
|
46
po/de.po
46
po/de.po
@ -22,7 +22,7 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell master\n"
|
||||
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2017-03-20 18:14+0000\n"
|
||||
"POT-Creation-Date: 2017-05-04 22:42+0000\n"
|
||||
"PO-Revision-Date: 2017-03-21 19:33+0100\n"
|
||||
"Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n"
|
||||
"Language-Team: Deutsch <gnome-de@gnome.org>\n"
|
||||
@ -58,7 +58,7 @@ msgid "Open the application menu"
|
||||
msgstr "Das Anwendungsmenü öffnen"
|
||||
|
||||
#: data/gnome-shell-extension-prefs.desktop.in.in:4
|
||||
#: js/extensionPrefs/main.js:149
|
||||
#: js/extensionPrefs/main.js:152
|
||||
msgid "Shell Extensions"
|
||||
msgstr "Shell-Erweiterungen"
|
||||
|
||||
@ -347,7 +347,7 @@ msgstr "Netzwerkanmeldung"
|
||||
msgid "network-workgroup"
|
||||
msgstr "network-workgroup"
|
||||
|
||||
#: js/extensionPrefs/main.js:117
|
||||
#: js/extensionPrefs/main.js:120
|
||||
#, javascript-format
|
||||
msgid "There was an error loading the preferences dialog for %s:"
|
||||
msgstr "Beim Laden des Einstellungsdialogs für %s ist ein Fehler aufgetreten:"
|
||||
@ -433,7 +433,7 @@ msgstr "Ausführung von »%s« ist gescheitert:"
|
||||
|
||||
#: js/misc/util.js:180
|
||||
msgid "Just now"
|
||||
msgstr "Genau jetzt"
|
||||
msgstr "Gerade eben"
|
||||
|
||||
#: js/misc/util.js:182
|
||||
#, javascript-format
|
||||
@ -553,11 +553,11 @@ msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%e. %B %Y, %H:%M"
|
||||
|
||||
#. TRANSLATORS: this is the title of the wifi captive portal login window
|
||||
#: js/portalHelper/main.js:67
|
||||
#: js/portalHelper/main.js:66
|
||||
msgid "Hotspot Login"
|
||||
msgstr "Hotspot-Anmeldung"
|
||||
|
||||
#: js/portalHelper/main.js:113
|
||||
#: js/portalHelper/main.js:112
|
||||
msgid ""
|
||||
"Your connection to this hotspot login is not secure. Passwords or other "
|
||||
"information you enter on this page can be viewed by people nearby."
|
||||
@ -847,7 +847,7 @@ msgstr "Passwort der mobilen Breitbandverbindung"
|
||||
msgid "A password is required to connect to “%s”."
|
||||
msgstr "Es wird ein Passwort benötigt, um sich mit »%s« zu verbinden."
|
||||
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1755
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1759
|
||||
msgid "Network Manager"
|
||||
msgstr "Netzwerk-Verwaltung"
|
||||
|
||||
@ -879,7 +879,7 @@ msgstr ""
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "%s heißt jetzt %s"
|
||||
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:178
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:179
|
||||
msgid "Windows"
|
||||
msgstr "Fenster"
|
||||
|
||||
@ -1459,7 +1459,7 @@ msgstr "Einschalten"
|
||||
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:181
|
||||
#: js/ui/status/network.js:367 js/ui/status/network.js:1310
|
||||
#: js/ui/status/network.js:1425 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/network.js:1429 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/rfkill.js:90 js/ui/status/rfkill.js:117
|
||||
msgid "Turn Off"
|
||||
msgstr "Ausschalten"
|
||||
@ -1662,62 +1662,62 @@ msgstr "Hotspot %s eingeschaltet"
|
||||
msgid "%s Not Connected"
|
||||
msgstr "%s nicht verbunden"
|
||||
|
||||
#: js/ui/status/network.js:1442
|
||||
#: js/ui/status/network.js:1446
|
||||
msgid "connecting…"
|
||||
msgstr "Verbindungsaufbau …"
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password
|
||||
#: js/ui/status/network.js:1445
|
||||
#: js/ui/status/network.js:1449
|
||||
msgid "authentication required"
|
||||
msgstr "Anmeldung erforderlich"
|
||||
|
||||
#: js/ui/status/network.js:1447
|
||||
#: js/ui/status/network.js:1451
|
||||
msgid "connection failed"
|
||||
msgstr "Verbindung gescheitert"
|
||||
|
||||
#: js/ui/status/network.js:1513 js/ui/status/network.js:1608
|
||||
#: js/ui/status/network.js:1517 js/ui/status/network.js:1612
|
||||
#: js/ui/status/rfkill.js:93
|
||||
msgid "Network Settings"
|
||||
msgstr "Netzwerkeinstellungen"
|
||||
|
||||
#: js/ui/status/network.js:1515
|
||||
#: js/ui/status/network.js:1519
|
||||
msgid "VPN Settings"
|
||||
msgstr "VPN-Einstellungen"
|
||||
|
||||
#: js/ui/status/network.js:1534
|
||||
#: js/ui/status/network.js:1538
|
||||
msgid "VPN"
|
||||
msgstr "VPN"
|
||||
|
||||
#: js/ui/status/network.js:1544
|
||||
#: js/ui/status/network.js:1548
|
||||
msgid "VPN Off"
|
||||
msgstr "VPN ausgeschaltet"
|
||||
|
||||
#: js/ui/status/network.js:1639
|
||||
#: js/ui/status/network.js:1643
|
||||
#, javascript-format
|
||||
msgid "%s Wired Connection"
|
||||
msgid_plural "%s Wired Connections"
|
||||
msgstr[0] "%s Kabelverbindung"
|
||||
msgstr[1] "%s Kabelverbindungen"
|
||||
|
||||
#: js/ui/status/network.js:1643
|
||||
#: js/ui/status/network.js:1647
|
||||
#, javascript-format
|
||||
msgid "%s Wi-Fi Connection"
|
||||
msgid_plural "%s Wi-Fi Connections"
|
||||
msgstr[0] "%s Funknetzwerkverbindung"
|
||||
msgstr[1] "%s Funknetzwerkverbindungen"
|
||||
|
||||
#: js/ui/status/network.js:1647
|
||||
#: js/ui/status/network.js:1651
|
||||
#, javascript-format
|
||||
msgid "%s Modem Connection"
|
||||
msgid_plural "%s Modem Connections"
|
||||
msgstr[0] "%s Modem-Verbindung"
|
||||
msgstr[1] "%s Modem-Verbindungen"
|
||||
|
||||
#: js/ui/status/network.js:1794
|
||||
#: js/ui/status/network.js:1798
|
||||
msgid "Connection failed"
|
||||
msgstr "Verbindung gescheitert"
|
||||
|
||||
#: js/ui/status/network.js:1795
|
||||
#: js/ui/status/network.js:1799
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Aktivierung der Netzwerkverbindung ist gescheitert"
|
||||
|
||||
@ -1815,11 +1815,11 @@ msgstr "Als anderer Benutzer anmelden"
|
||||
msgid "Unlock Window"
|
||||
msgstr "Fenster entsperren"
|
||||
|
||||
#: js/ui/viewSelector.js:182
|
||||
#: js/ui/viewSelector.js:183
|
||||
msgid "Applications"
|
||||
msgstr "Anwendungen"
|
||||
|
||||
#: js/ui/viewSelector.js:186
|
||||
#: js/ui/viewSelector.js:187
|
||||
msgid "Search"
|
||||
msgstr "Suchen"
|
||||
|
||||
|
73
po/it.po
73
po/it.po
@ -12,8 +12,8 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell\n"
|
||||
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2017-03-20 18:14+0000\n"
|
||||
"PO-Revision-Date: 2017-03-21 08:58+0100\n"
|
||||
"POT-Creation-Date: 2017-04-07 12:28+0000\n"
|
||||
"PO-Revision-Date: 2017-04-11 08:40+0200\n"
|
||||
"Last-Translator: Milo Casagrande <milo@milo.name>\n"
|
||||
"Language-Team: Italiano <gnome-it-list@gnome.org>\n"
|
||||
"Language: it\n"
|
||||
@ -63,12 +63,12 @@ msgstr "GNOME Shell"
|
||||
|
||||
#: data/org.gnome.Shell.desktop.in.in:5
|
||||
msgid "Window management and application launching"
|
||||
msgstr "Gestisce finestre e avvia applicazioni"
|
||||
msgstr "Gestione finestre e avvio applicazioni"
|
||||
|
||||
#: data/org.gnome.shell.gschema.xml.in:6
|
||||
msgid "Enable internal tools useful for developers and testers from Alt-F2"
|
||||
msgstr ""
|
||||
"Abilita gli strumenti interni utili a sviluppatori e beta-tester attraverso "
|
||||
"Abilita gli strumenti interni utili a sviluppatori e collaudatori attraverso "
|
||||
"Alt-F2"
|
||||
|
||||
#: data/org.gnome.shell.gschema.xml.in:9
|
||||
@ -110,7 +110,8 @@ msgstr ""
|
||||
|
||||
#: data/org.gnome.shell.gschema.xml.in:34
|
||||
msgid "Disables the validation of extension version compatibility"
|
||||
msgstr "Disabilità convalida compatibilità versione estesioni"
|
||||
msgstr ""
|
||||
"Disabilita la convalida della compatibilità con le versioni delle estensioni"
|
||||
|
||||
#: data/org.gnome.shell.gschema.xml.in:35
|
||||
msgid ""
|
||||
@ -550,11 +551,11 @@ msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%d %B %Y, %I∶%M %p"
|
||||
|
||||
#. TRANSLATORS: this is the title of the wifi captive portal login window
|
||||
#: js/portalHelper/main.js:67
|
||||
#: js/portalHelper/main.js:66
|
||||
msgid "Hotspot Login"
|
||||
msgstr "Accesso hotspot"
|
||||
|
||||
#: js/portalHelper/main.js:113
|
||||
#: js/portalHelper/main.js:112
|
||||
msgid ""
|
||||
"Your connection to this hotspot login is not secure. Passwords or other "
|
||||
"information you enter on this page can be viewed by people nearby."
|
||||
@ -845,7 +846,7 @@ msgstr "Password rete mobile"
|
||||
msgid "A password is required to connect to “%s”."
|
||||
msgstr "È richiesta una password per connettersi a «%s»."
|
||||
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1755
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1759
|
||||
msgid "Network Manager"
|
||||
msgstr "Gestore reti"
|
||||
|
||||
@ -876,7 +877,7 @@ msgstr "Errore nell'autenticazione. Provare di nuovo."
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "%s ha cambiato nome in %s"
|
||||
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:178
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:179
|
||||
msgid "Windows"
|
||||
msgstr "Finestre"
|
||||
|
||||
@ -1094,8 +1095,8 @@ msgstr ""
|
||||
#: js/ui/endSessionDialog.js:361
|
||||
msgid "Running on battery power: please plug in before installing updates."
|
||||
msgstr ""
|
||||
"In funzione con batteria: collegare l'alimentazione prima di installare gli "
|
||||
"aggiornamenti."
|
||||
"Alimentazione da batteria: collegare alla rete elettrica prima di installare "
|
||||
"gli aggiornamenti."
|
||||
|
||||
#: js/ui/endSessionDialog.js:378
|
||||
msgid "Some applications are busy or have unsaved work."
|
||||
@ -1453,11 +1454,11 @@ msgstr "On"
|
||||
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:1310
|
||||
msgid "Turn On"
|
||||
msgstr "Attiva"
|
||||
msgstr "Accendi"
|
||||
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:181
|
||||
#: js/ui/status/network.js:367 js/ui/status/network.js:1310
|
||||
#: js/ui/status/network.js:1425 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/network.js:1429 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/rfkill.js:90 js/ui/status/rfkill.js:117
|
||||
msgid "Turn Off"
|
||||
msgstr "Spegni"
|
||||
@ -1599,15 +1600,15 @@ msgstr "Connetti a Internet"
|
||||
|
||||
#: js/ui/status/network.js:844
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "La modalità aereo è attiva"
|
||||
msgstr "La modalità aereo è accesa"
|
||||
|
||||
#: js/ui/status/network.js:845
|
||||
msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr "Il Wi-Fi è disabilitato quando la modalità aereo è attiva"
|
||||
msgstr "Il Wi-Fi è disabilitato quando la modalità aereo è accesa."
|
||||
|
||||
#: js/ui/status/network.js:846
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "Disattiva modalità aereo"
|
||||
msgstr "Spegni modalità aereo"
|
||||
|
||||
#: js/ui/status/network.js:855
|
||||
msgid "Wi-Fi is Off"
|
||||
@ -1615,11 +1616,11 @@ msgstr "Il Wi-Fi è spento"
|
||||
|
||||
#: js/ui/status/network.js:856
|
||||
msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr "È necessario attivare il Wi-Fi per potersi connettere a una rete."
|
||||
msgstr "È necessario accendere il Wi-Fi per potersi connettere a una rete."
|
||||
|
||||
#: js/ui/status/network.js:857
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "Attiva Wi-Fi"
|
||||
msgstr "Accendi Wi-Fi"
|
||||
|
||||
#: js/ui/status/network.js:882
|
||||
msgid "Wi-Fi Networks"
|
||||
@ -1635,7 +1636,7 @@ msgstr "Nessuna rete"
|
||||
|
||||
#: js/ui/status/network.js:935 js/ui/status/rfkill.js:115
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr "Usare l'interruttore hardware per disattivare"
|
||||
msgstr "Usare l'interruttore hardware per spegnere"
|
||||
|
||||
#: js/ui/status/network.js:1202
|
||||
msgid "Select Network"
|
||||
@ -1657,62 +1658,62 @@ msgstr "Hotspot %s attivo"
|
||||
msgid "%s Not Connected"
|
||||
msgstr "%s non collegato"
|
||||
|
||||
#: js/ui/status/network.js:1442
|
||||
#: js/ui/status/network.js:1446
|
||||
msgid "connecting…"
|
||||
msgstr "connessione…"
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password
|
||||
#: js/ui/status/network.js:1445
|
||||
#: js/ui/status/network.js:1449
|
||||
msgid "authentication required"
|
||||
msgstr "richiesta autenticazione"
|
||||
|
||||
#: js/ui/status/network.js:1447
|
||||
#: js/ui/status/network.js:1451
|
||||
msgid "connection failed"
|
||||
msgstr "connessione non riuscita"
|
||||
|
||||
#: js/ui/status/network.js:1513 js/ui/status/network.js:1608
|
||||
#: js/ui/status/network.js:1517 js/ui/status/network.js:1612
|
||||
#: js/ui/status/rfkill.js:93
|
||||
msgid "Network Settings"
|
||||
msgstr "Impostazioni rete"
|
||||
|
||||
#: js/ui/status/network.js:1515
|
||||
#: js/ui/status/network.js:1519
|
||||
msgid "VPN Settings"
|
||||
msgstr "Impostazioni VPN"
|
||||
|
||||
#: js/ui/status/network.js:1534
|
||||
#: js/ui/status/network.js:1538
|
||||
msgid "VPN"
|
||||
msgstr "VPN"
|
||||
|
||||
#: js/ui/status/network.js:1544
|
||||
#: js/ui/status/network.js:1548
|
||||
msgid "VPN Off"
|
||||
msgstr "VPN spento"
|
||||
msgstr "VPN spenta"
|
||||
|
||||
#: js/ui/status/network.js:1639
|
||||
#: js/ui/status/network.js:1643
|
||||
#, javascript-format
|
||||
msgid "%s Wired Connection"
|
||||
msgid_plural "%s Wired Connections"
|
||||
msgstr[0] "%s connessione via cavo"
|
||||
msgstr[1] "%s connessioni via cavo"
|
||||
|
||||
#: js/ui/status/network.js:1643
|
||||
#: js/ui/status/network.js:1647
|
||||
#, javascript-format
|
||||
msgid "%s Wi-Fi Connection"
|
||||
msgid_plural "%s Wi-Fi Connections"
|
||||
msgstr[0] "%s connessione Wi-Fi"
|
||||
msgstr[1] "%s connessioni Wi-Fi"
|
||||
|
||||
#: js/ui/status/network.js:1647
|
||||
#: js/ui/status/network.js:1651
|
||||
#, javascript-format
|
||||
msgid "%s Modem Connection"
|
||||
msgid_plural "%s Modem Connections"
|
||||
msgstr[0] "%s connessione modem"
|
||||
msgstr[1] "%s connessioni modem"
|
||||
|
||||
#: js/ui/status/network.js:1794
|
||||
#: js/ui/status/network.js:1798
|
||||
msgid "Connection failed"
|
||||
msgstr "Connessione non riuscita"
|
||||
|
||||
#: js/ui/status/network.js:1795
|
||||
#: js/ui/status/network.js:1799
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Attivazione della connessione di rete non riuscita"
|
||||
|
||||
@ -1769,7 +1770,7 @@ msgstr "%d %%"
|
||||
#. changing the menu contents.
|
||||
#: js/ui/status/rfkill.js:88
|
||||
msgid "Airplane Mode On"
|
||||
msgstr "Modalità aereo attiva"
|
||||
msgstr "Modalità aereo accesa"
|
||||
|
||||
#: js/ui/status/system.js:378
|
||||
msgid "Switch User"
|
||||
@ -1811,11 +1812,11 @@ msgstr "Accedi come altro utente"
|
||||
msgid "Unlock Window"
|
||||
msgstr "Sblocca finestra"
|
||||
|
||||
#: js/ui/viewSelector.js:182
|
||||
#: js/ui/viewSelector.js:183
|
||||
msgid "Applications"
|
||||
msgstr "Applicazioni"
|
||||
|
||||
#: js/ui/viewSelector.js:186
|
||||
#: js/ui/viewSelector.js:187
|
||||
msgid "Search"
|
||||
msgstr "Cerca"
|
||||
|
||||
@ -1959,7 +1960,7 @@ msgstr "Modalità usata da GDM per la schermata d'accesso"
|
||||
|
||||
#: src/main.c:384
|
||||
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
||||
msgstr "Usa una modalità specifica, p.e. \"gdm\" per la schermata di accesso"
|
||||
msgstr "Usa una modalità specifica, p.e. «gdm» per la schermata di accesso"
|
||||
|
||||
#: src/main.c:390
|
||||
msgid "List possible modes"
|
||||
|
234
po/sr.po
234
po/sr.po
@ -11,17 +11,19 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell master\n"
|
||||
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2017-03-03 11:37+0000\n"
|
||||
"PO-Revision-Date: 2017-03-05 05:41+0200\n"
|
||||
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
|
||||
"POT-Creation-Date: 2017-05-18 18:56+0000\n"
|
||||
"PO-Revision-Date: 2017-05-18 22:42+0200\n"
|
||||
"Last-Translator: Марко М. Костић <marko.m.kostic@gmail.com>\n"
|
||||
"Language-Team: Serbian <gnom@prevod.org>\n"
|
||||
"Language: sr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
|
||||
"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
||||
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
"X-Project-Style: gnome\n"
|
||||
"X-Generator: Poedit 2.0.2\n"
|
||||
"X-Poedit-Bookmarks: -1,167,-1,-1,-1,-1,-1,-1,-1,-1\n"
|
||||
|
||||
#: data/50-gnome-shell-system.xml:6
|
||||
msgid "System"
|
||||
@ -48,7 +50,7 @@ msgid "Open the application menu"
|
||||
msgstr "Отворите изборник програма"
|
||||
|
||||
#: data/gnome-shell-extension-prefs.desktop.in.in:4
|
||||
#: js/extensionPrefs/main.js:149
|
||||
#: js/extensionPrefs/main.js:152
|
||||
msgid "Shell Extensions"
|
||||
msgstr "Проширења шкољке"
|
||||
|
||||
@ -326,7 +328,7 @@ msgstr "Мрежна пријава"
|
||||
msgid "network-workgroup"
|
||||
msgstr "network-workgroup"
|
||||
|
||||
#: js/extensionPrefs/main.js:117
|
||||
#: js/extensionPrefs/main.js:120
|
||||
#, javascript-format
|
||||
msgid "There was an error loading the preferences dialog for %s:"
|
||||
msgstr "Дошло је до грешке при учитавању прозорчета поставки за „%s“:"
|
||||
@ -334,7 +336,7 @@ msgstr "Дошло је до грешке при учитавању прозор
|
||||
#: js/gdm/authPrompt.js:149 js/ui/audioDeviceSelection.js:71
|
||||
#: js/ui/components/networkAgent.js:145 js/ui/components/polkitAgent.js:179
|
||||
#: js/ui/endSessionDialog.js:482 js/ui/extensionDownloader.js:195
|
||||
#: js/ui/shellMountOperation.js:399 js/ui/status/network.js:939
|
||||
#: js/ui/shellMountOperation.js:399 js/ui/status/network.js:947
|
||||
msgid "Cancel"
|
||||
msgstr "Откажи"
|
||||
|
||||
@ -382,7 +384,7 @@ msgstr "Корисник: "
|
||||
msgid "Login Window"
|
||||
msgstr "Прозор за пријављивање"
|
||||
|
||||
#: js/gdm/util.js:341
|
||||
#: js/gdm/util.js:342
|
||||
msgid "Authentication error"
|
||||
msgstr "Грешка потврђивања идентитета"
|
||||
|
||||
@ -391,7 +393,7 @@ msgstr "Грешка потврђивања идентитета"
|
||||
#. as a cue to display our own message.
|
||||
#. Translators: this message is shown below the password entry field
|
||||
#. to indicate the user can swipe their finger instead
|
||||
#: js/gdm/util.js:473
|
||||
#: js/gdm/util.js:474
|
||||
msgid "(or swipe finger)"
|
||||
msgstr "(или превуците прст)"
|
||||
|
||||
@ -433,7 +435,6 @@ msgstr[2] "Пре %d сати"
|
||||
msgstr[3] "Пре један сат"
|
||||
|
||||
#: js/misc/util.js:188
|
||||
#| msgid "Yesterday, %H∶%M"
|
||||
msgid "Yesterday"
|
||||
msgstr "Јуче"
|
||||
|
||||
@ -544,11 +545,11 @@ msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%d .%B %Y., %l∶%M %p"
|
||||
|
||||
#. TRANSLATORS: this is the title of the wifi captive portal login window
|
||||
#: js/portalHelper/main.js:67
|
||||
#: js/portalHelper/main.js:66
|
||||
msgid "Hotspot Login"
|
||||
msgstr "Пријава на врућу тачку"
|
||||
|
||||
#: js/portalHelper/main.js:113
|
||||
#: js/portalHelper/main.js:112
|
||||
msgid ""
|
||||
"Your connection to this hotspot login is not secure. Passwords or other "
|
||||
"information you enter on this page can be viewed by people nearby."
|
||||
@ -558,11 +559,11 @@ msgstr ""
|
||||
|
||||
#. No support for non-modal system dialogs, so ignore the option
|
||||
#. let modal = options['modal'] || true;
|
||||
#: js/ui/accessDialog.js:62 js/ui/status/location.js:427
|
||||
#: js/ui/accessDialog.js:62 js/ui/status/location.js:405
|
||||
msgid "Deny Access"
|
||||
msgstr "Забрани приступ"
|
||||
|
||||
#: js/ui/accessDialog.js:63 js/ui/status/location.js:430
|
||||
#: js/ui/accessDialog.js:63 js/ui/status/location.js:408
|
||||
msgid "Grant Access"
|
||||
msgstr "Дозволи приступ"
|
||||
|
||||
@ -762,7 +763,7 @@ msgid "Type again:"
|
||||
msgstr "Упишите поново:"
|
||||
|
||||
#: js/ui/components/networkAgent.js:140 js/ui/status/network.js:272
|
||||
#: js/ui/status/network.js:366 js/ui/status/network.js:942
|
||||
#: js/ui/status/network.js:366 js/ui/status/network.js:950
|
||||
msgid "Connect"
|
||||
msgstr "Повежи се"
|
||||
|
||||
@ -836,7 +837,7 @@ msgstr "Лозинка мобилне широкопојасне мреже"
|
||||
msgid "A password is required to connect to “%s”."
|
||||
msgstr "Потребна је лозинка за повезивање на „%s“."
|
||||
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1747
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1759
|
||||
msgid "Network Manager"
|
||||
msgstr "Управник мреже"
|
||||
|
||||
@ -862,12 +863,12 @@ msgstr "Погрешили сте! Покушајте поново."
|
||||
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name.
|
||||
#: js/ui/components/telepathyClient.js:767
|
||||
#: js/ui/components/telepathyClient.js:799
|
||||
#, javascript-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "„%s“ је сада познат као „%s“"
|
||||
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:178
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:179
|
||||
msgid "Windows"
|
||||
msgstr "Прозори"
|
||||
|
||||
@ -933,24 +934,27 @@ msgstr "%s, затим %s касније."
|
||||
#: js/ui/dateMenu.js:293
|
||||
#, javascript-format
|
||||
msgid "%s, then %s, followed by %s later."
|
||||
msgstr "%s, затим %s, касније праћено %s."
|
||||
msgstr "%s, затим %s, а касније %s."
|
||||
|
||||
#: js/ui/dateMenu.js:300
|
||||
#| msgid "Searching…"
|
||||
msgid "Select a location…"
|
||||
msgstr "Изаберите место…"
|
||||
|
||||
#: js/ui/dateMenu.js:303
|
||||
msgid "Loading…"
|
||||
msgstr "Учитавам…"
|
||||
|
||||
#. Translators: %s is a temperature with unit, e.g. "23℃"
|
||||
#: js/ui/dateMenu.js:306
|
||||
#: js/ui/dateMenu.js:309
|
||||
#, javascript-format
|
||||
msgid "Feels like %s."
|
||||
msgstr "Осећа се као %s."
|
||||
|
||||
#: js/ui/dateMenu.js:309
|
||||
#: js/ui/dateMenu.js:312
|
||||
msgid "Go online for weather information"
|
||||
msgstr "Идите на мрежу за податке о временској прогнози."
|
||||
|
||||
#: js/ui/dateMenu.js:311
|
||||
#: js/ui/dateMenu.js:314
|
||||
msgid "Weather information is currently unavailable"
|
||||
msgstr "Подаци о временској прогнози тренутно нису доступни."
|
||||
|
||||
@ -1135,51 +1139,51 @@ msgstr "Сакриј касету"
|
||||
msgid "Status Icons"
|
||||
msgstr "Иконице стања"
|
||||
|
||||
#: js/ui/lookingGlass.js:643
|
||||
#: js/ui/lookingGlass.js:642
|
||||
msgid "No extensions installed"
|
||||
msgstr "Нису инсталирана проширења"
|
||||
|
||||
#. Translators: argument is an extension UUID.
|
||||
#: js/ui/lookingGlass.js:697
|
||||
#: js/ui/lookingGlass.js:696
|
||||
#, javascript-format
|
||||
msgid "%s has not emitted any errors."
|
||||
msgstr "%s није објавио никакве грешке."
|
||||
|
||||
#: js/ui/lookingGlass.js:703
|
||||
#: js/ui/lookingGlass.js:702
|
||||
msgid "Hide Errors"
|
||||
msgstr "Сакриј грешке"
|
||||
|
||||
#: js/ui/lookingGlass.js:707 js/ui/lookingGlass.js:767
|
||||
#: js/ui/lookingGlass.js:706 js/ui/lookingGlass.js:766
|
||||
msgid "Show Errors"
|
||||
msgstr "Прикажите грешке"
|
||||
|
||||
#: js/ui/lookingGlass.js:716
|
||||
#: js/ui/lookingGlass.js:715
|
||||
msgid "Enabled"
|
||||
msgstr "Укључено"
|
||||
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: js/ui/lookingGlass.js:719 src/gvc/gvc-mixer-control.c:1866
|
||||
#: js/ui/lookingGlass.js:718 src/gvc/gvc-mixer-control.c:1866
|
||||
msgid "Disabled"
|
||||
msgstr "Искључено"
|
||||
|
||||
#: js/ui/lookingGlass.js:721
|
||||
#: js/ui/lookingGlass.js:720
|
||||
msgid "Error"
|
||||
msgstr "Грешка"
|
||||
|
||||
#: js/ui/lookingGlass.js:723
|
||||
#: js/ui/lookingGlass.js:722
|
||||
msgid "Out of date"
|
||||
msgstr "Изван датума"
|
||||
|
||||
#: js/ui/lookingGlass.js:725
|
||||
#: js/ui/lookingGlass.js:724
|
||||
msgid "Downloading"
|
||||
msgstr "Преузимам"
|
||||
|
||||
#: js/ui/lookingGlass.js:749
|
||||
#: js/ui/lookingGlass.js:748
|
||||
msgid "View Source"
|
||||
msgstr "Прикажи код"
|
||||
|
||||
#: js/ui/lookingGlass.js:758
|
||||
#: js/ui/lookingGlass.js:757
|
||||
msgid "Web Page"
|
||||
msgstr "Веб страница"
|
||||
|
||||
@ -1213,47 +1217,47 @@ msgstr "Преглед"
|
||||
msgid "Type to search…"
|
||||
msgstr "Упишите текст за претрагу…"
|
||||
|
||||
#: js/ui/padOsd.js:37
|
||||
#: js/ui/padOsd.js:103
|
||||
msgid "New shortcut…"
|
||||
msgstr "Нова пречица…"
|
||||
|
||||
#: js/ui/padOsd.js:86
|
||||
#: js/ui/padOsd.js:152
|
||||
msgid "Application defined"
|
||||
msgstr "Дефинисани програм"
|
||||
|
||||
#: js/ui/padOsd.js:87
|
||||
#: js/ui/padOsd.js:153
|
||||
msgid "Show on-screen help"
|
||||
msgstr "Прикажи помоћ на екрану"
|
||||
|
||||
#: js/ui/padOsd.js:88
|
||||
#: js/ui/padOsd.js:154
|
||||
msgid "Switch monitor"
|
||||
msgstr "Промени монитор"
|
||||
|
||||
#: js/ui/padOsd.js:89
|
||||
#: js/ui/padOsd.js:155
|
||||
msgid "Assign keystroke"
|
||||
msgstr "Додели тастер"
|
||||
|
||||
#: js/ui/padOsd.js:143
|
||||
#: js/ui/padOsd.js:209
|
||||
msgid "Done"
|
||||
msgstr "Готово"
|
||||
|
||||
#: js/ui/padOsd.js:597
|
||||
#: js/ui/padOsd.js:698
|
||||
msgid "Edit…"
|
||||
msgstr "Уреди…"
|
||||
|
||||
#: js/ui/padOsd.js:610 js/ui/padOsd.js:665
|
||||
#: js/ui/padOsd.js:738 js/ui/padOsd.js:800
|
||||
msgid "None"
|
||||
msgstr "Ништа"
|
||||
|
||||
#: js/ui/padOsd.js:648
|
||||
#: js/ui/padOsd.js:783
|
||||
msgid "Press a button to configure"
|
||||
msgstr "Притисните дугме да подесите"
|
||||
|
||||
#: js/ui/padOsd.js:649
|
||||
#: js/ui/padOsd.js:784
|
||||
msgid "Press Esc to exit"
|
||||
msgstr "Притисните „Есц“ да изађете"
|
||||
|
||||
#: js/ui/padOsd.js:652
|
||||
#: js/ui/padOsd.js:787
|
||||
msgid "Press any key to exit"
|
||||
msgstr "Притисните неки тастер да изађете"
|
||||
|
||||
@ -1289,7 +1293,7 @@ msgstr "toggle-switch-intl"
|
||||
msgid "Enter a Command"
|
||||
msgstr "Унесите наредбу"
|
||||
|
||||
#: js/ui/runDialog.js:111 js/ui/windowMenu.js:162
|
||||
#: js/ui/runDialog.js:111 js/ui/windowMenu.js:160
|
||||
msgid "Close"
|
||||
msgstr "Затвори"
|
||||
|
||||
@ -1303,11 +1307,11 @@ msgstr "Поновно покрећем…"
|
||||
|
||||
#. Translators: This is a time format for a date in
|
||||
#. long format
|
||||
#: js/ui/screenShield.js:85
|
||||
#: js/ui/screenShield.js:88
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A, %d. %B"
|
||||
|
||||
#: js/ui/screenShield.js:144
|
||||
#: js/ui/screenShield.js:147
|
||||
#, javascript-format
|
||||
msgid "%d new message"
|
||||
msgid_plural "%d new messages"
|
||||
@ -1316,7 +1320,7 @@ msgstr[1] "%d нове поруке"
|
||||
msgstr[2] "%d нових порука"
|
||||
msgstr[3] "%d нова порука"
|
||||
|
||||
#: js/ui/screenShield.js:146
|
||||
#: js/ui/screenShield.js:149
|
||||
#, javascript-format
|
||||
msgid "%d new notification"
|
||||
msgid_plural "%d new notifications"
|
||||
@ -1325,11 +1329,11 @@ msgstr[1] "%d нова обавештења"
|
||||
msgstr[2] "%d нових обавештења"
|
||||
msgstr[3] "%d ново обавештење"
|
||||
|
||||
#: js/ui/screenShield.js:449 js/ui/status/system.js:409
|
||||
#: js/ui/screenShield.js:452 js/ui/status/system.js:409
|
||||
msgid "Lock"
|
||||
msgstr "Закључај"
|
||||
|
||||
#: js/ui/screenShield.js:707
|
||||
#: js/ui/screenShield.js:715
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "Гном мора да закључа екран"
|
||||
|
||||
@ -1340,19 +1344,19 @@ msgstr "Гном мора да закључа екран"
|
||||
#.
|
||||
#. XXX: another option is to kick the user into the gdm login
|
||||
#. screen, where we're not affected by grabs
|
||||
#: js/ui/screenShield.js:828 js/ui/screenShield.js:1295
|
||||
#: js/ui/screenShield.js:836 js/ui/screenShield.js:1308
|
||||
msgid "Unable to lock"
|
||||
msgstr "Не могу да закључам"
|
||||
|
||||
#: js/ui/screenShield.js:829 js/ui/screenShield.js:1296
|
||||
#: js/ui/screenShield.js:837 js/ui/screenShield.js:1309
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "Неки програм је блокирао закључавање"
|
||||
|
||||
#: js/ui/search.js:617
|
||||
#: js/ui/search.js:621
|
||||
msgid "Searching…"
|
||||
msgstr "Тражим…"
|
||||
|
||||
#: js/ui/search.js:619
|
||||
#: js/ui/search.js:623
|
||||
msgid "No results."
|
||||
msgstr "Нема одговарајућих резултата."
|
||||
|
||||
@ -1450,13 +1454,13 @@ msgstr "Искљ."
|
||||
msgid "On"
|
||||
msgstr "Укљ."
|
||||
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:1302
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:1310
|
||||
msgid "Turn On"
|
||||
msgstr "Укључи"
|
||||
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:181
|
||||
#: js/ui/status/network.js:367 js/ui/status/network.js:1302
|
||||
#: js/ui/status/network.js:1417 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/network.js:367 js/ui/status/network.js:1310
|
||||
#: js/ui/status/network.js:1429 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/rfkill.js:90 js/ui/status/rfkill.js:117
|
||||
msgid "Turn Off"
|
||||
msgstr "Искључи"
|
||||
@ -1469,37 +1473,37 @@ msgstr "Осветљеност"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Покажи распоред тастатуре"
|
||||
|
||||
#: js/ui/status/location.js:107 js/ui/status/location.js:215
|
||||
#: js/ui/status/location.js:88 js/ui/status/location.js:196
|
||||
msgid "Location Enabled"
|
||||
msgstr "Одређивање места укључено"
|
||||
|
||||
#: js/ui/status/location.js:108 js/ui/status/location.js:216
|
||||
#: js/ui/status/location.js:89 js/ui/status/location.js:197
|
||||
msgid "Disable"
|
||||
msgstr "Искључи"
|
||||
|
||||
#: js/ui/status/location.js:109
|
||||
#: js/ui/status/location.js:90
|
||||
msgid "Privacy Settings"
|
||||
msgstr "Подешавања приватности"
|
||||
|
||||
#: js/ui/status/location.js:214
|
||||
#: js/ui/status/location.js:195
|
||||
msgid "Location In Use"
|
||||
msgstr "Одређивање места се користи"
|
||||
|
||||
#: js/ui/status/location.js:218
|
||||
#: js/ui/status/location.js:199
|
||||
msgid "Location Disabled"
|
||||
msgstr "Одређивање места искључено"
|
||||
|
||||
#: js/ui/status/location.js:219
|
||||
#: js/ui/status/location.js:200
|
||||
msgid "Enable"
|
||||
msgstr "Укључи"
|
||||
|
||||
#. Translators: %s is an application name
|
||||
#: js/ui/status/location.js:436
|
||||
#: js/ui/status/location.js:414
|
||||
#, javascript-format
|
||||
msgid "Give %s access to your location?"
|
||||
msgstr "Да ли да „%s“ дам приступ вашем месту?"
|
||||
|
||||
#: js/ui/status/location.js:438
|
||||
#: js/ui/status/location.js:416
|
||||
msgid "Location access can be changed at any time from the privacy settings."
|
||||
msgstr ""
|
||||
"Приступ месту можете да измените у било које време у подешавањима "
|
||||
@ -1510,7 +1514,7 @@ msgid "<unknown>"
|
||||
msgstr "<непознато>"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:465 js/ui/status/network.js:1331
|
||||
#: js/ui/status/network.js:465 js/ui/status/network.js:1339
|
||||
#, javascript-format
|
||||
msgid "%s Off"
|
||||
msgstr "%s искључено"
|
||||
@ -1536,7 +1540,7 @@ msgid "%s Disconnecting"
|
||||
msgstr "%s прекидање везе у току"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:483 js/ui/status/network.js:1323
|
||||
#: js/ui/status/network.js:483 js/ui/status/network.js:1331
|
||||
#, javascript-format
|
||||
msgid "%s Connecting"
|
||||
msgstr "%s повезивање у току"
|
||||
@ -1576,7 +1580,7 @@ msgid "Mobile Broadband Settings"
|
||||
msgstr "Подешавања мобилне широкопојасне везе"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:602 js/ui/status/network.js:1328
|
||||
#: js/ui/status/network.js:602 js/ui/status/network.js:1336
|
||||
#, javascript-format
|
||||
msgid "%s Hardware Disabled"
|
||||
msgstr "%s уређај искључен"
|
||||
@ -1592,97 +1596,97 @@ msgstr "%s искључено"
|
||||
msgid "Connect to Internet"
|
||||
msgstr "Повежи се на Интернет"
|
||||
|
||||
#: js/ui/status/network.js:836
|
||||
#: js/ui/status/network.js:844
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "Авионски режим рада је укључен"
|
||||
|
||||
#: js/ui/status/network.js:837
|
||||
#: js/ui/status/network.js:845
|
||||
msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr "Бежична веза је искључена када је укључен авионски режим рада."
|
||||
|
||||
#: js/ui/status/network.js:838
|
||||
#: js/ui/status/network.js:846
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "Искључи авионски режим рада"
|
||||
|
||||
#: js/ui/status/network.js:847
|
||||
#: js/ui/status/network.js:855
|
||||
msgid "Wi-Fi is Off"
|
||||
msgstr "Бежична веза је искључена"
|
||||
|
||||
#: js/ui/status/network.js:848
|
||||
#: js/ui/status/network.js:856
|
||||
msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr "Бежична веза треба бити укључена да бисте се повезали на мрежу."
|
||||
|
||||
#: js/ui/status/network.js:849
|
||||
#: js/ui/status/network.js:857
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "Укључи бежичну везу"
|
||||
|
||||
#: js/ui/status/network.js:874
|
||||
#: js/ui/status/network.js:882
|
||||
msgid "Wi-Fi Networks"
|
||||
msgstr "Бежичне мреже"
|
||||
|
||||
#: js/ui/status/network.js:876
|
||||
#: js/ui/status/network.js:884
|
||||
msgid "Select a network"
|
||||
msgstr "Изаберите мрежу"
|
||||
|
||||
#: js/ui/status/network.js:906
|
||||
#: js/ui/status/network.js:914
|
||||
msgid "No Networks"
|
||||
msgstr "Нема мрежа"
|
||||
|
||||
#: js/ui/status/network.js:927 js/ui/status/rfkill.js:115
|
||||
#: js/ui/status/network.js:935 js/ui/status/rfkill.js:115
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr "Користи физички прекидач за искључивање"
|
||||
|
||||
#: js/ui/status/network.js:1194
|
||||
#: js/ui/status/network.js:1202
|
||||
msgid "Select Network"
|
||||
msgstr "Изабери мрежу"
|
||||
|
||||
#: js/ui/status/network.js:1200
|
||||
#: js/ui/status/network.js:1208
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Подешавања бежичне везе"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:1319
|
||||
#: js/ui/status/network.js:1327
|
||||
#, javascript-format
|
||||
msgid "%s Hotspot Active"
|
||||
msgstr "%s хотспот укључен"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:1334
|
||||
#: js/ui/status/network.js:1342
|
||||
#, javascript-format
|
||||
msgid "%s Not Connected"
|
||||
msgstr "%s неповезано"
|
||||
|
||||
#: js/ui/status/network.js:1434
|
||||
#: js/ui/status/network.js:1446
|
||||
msgid "connecting…"
|
||||
msgstr "повезујем се…"
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password
|
||||
#: js/ui/status/network.js:1437
|
||||
#: js/ui/status/network.js:1449
|
||||
msgid "authentication required"
|
||||
msgstr "потребна је пријава"
|
||||
|
||||
#: js/ui/status/network.js:1439
|
||||
#: js/ui/status/network.js:1451
|
||||
msgid "connection failed"
|
||||
msgstr "повезивање није успело"
|
||||
|
||||
#: js/ui/status/network.js:1505 js/ui/status/network.js:1600
|
||||
#: js/ui/status/network.js:1517 js/ui/status/network.js:1612
|
||||
#: js/ui/status/rfkill.js:93
|
||||
msgid "Network Settings"
|
||||
msgstr "Подешавања мреже"
|
||||
|
||||
#: js/ui/status/network.js:1507
|
||||
#: js/ui/status/network.js:1519
|
||||
msgid "VPN Settings"
|
||||
msgstr "ВПН подешавања"
|
||||
|
||||
#: js/ui/status/network.js:1526
|
||||
#: js/ui/status/network.js:1538
|
||||
msgid "VPN"
|
||||
msgstr "ВПН"
|
||||
|
||||
#: js/ui/status/network.js:1536
|
||||
#: js/ui/status/network.js:1548
|
||||
msgid "VPN Off"
|
||||
msgstr "Искључи ВПН"
|
||||
|
||||
#: js/ui/status/network.js:1631
|
||||
#: js/ui/status/network.js:1643
|
||||
#, javascript-format
|
||||
msgid "%s Wired Connection"
|
||||
msgid_plural "%s Wired Connections"
|
||||
@ -1691,7 +1695,7 @@ msgstr[1] "%s жичане везе"
|
||||
msgstr[2] "%s жичаних веза"
|
||||
msgstr[3] "%s жичана веза"
|
||||
|
||||
#: js/ui/status/network.js:1635
|
||||
#: js/ui/status/network.js:1647
|
||||
#, javascript-format
|
||||
msgid "%s Wi-Fi Connection"
|
||||
msgid_plural "%s Wi-Fi Connections"
|
||||
@ -1700,7 +1704,7 @@ msgstr[1] "%s бежичне везе"
|
||||
msgstr[2] "%s бежичних веза"
|
||||
msgstr[3] "%s бежична веза"
|
||||
|
||||
#: js/ui/status/network.js:1639
|
||||
#: js/ui/status/network.js:1651
|
||||
#, javascript-format
|
||||
msgid "%s Modem Connection"
|
||||
msgid_plural "%s Modem Connections"
|
||||
@ -1709,11 +1713,11 @@ msgstr[1] "%s модемске везе"
|
||||
msgstr[2] "%s модемских веза"
|
||||
msgstr[3] "%s модемска веза"
|
||||
|
||||
#: js/ui/status/network.js:1786
|
||||
#: js/ui/status/network.js:1798
|
||||
msgid "Connection failed"
|
||||
msgstr "Повезивање није успело"
|
||||
|
||||
#: js/ui/status/network.js:1787
|
||||
#: js/ui/status/network.js:1799
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Активирање мрежне везе није успело"
|
||||
|
||||
@ -1811,11 +1815,11 @@ msgstr "Пријавите се као други корисник"
|
||||
msgid "Unlock Window"
|
||||
msgstr "Откључај прозор"
|
||||
|
||||
#: js/ui/viewSelector.js:182
|
||||
#: js/ui/viewSelector.js:183
|
||||
msgid "Applications"
|
||||
msgstr "Програми"
|
||||
|
||||
#: js/ui/viewSelector.js:186
|
||||
#: js/ui/viewSelector.js:187
|
||||
msgid "Search"
|
||||
msgstr "Тражи"
|
||||
|
||||
@ -1824,22 +1828,22 @@ msgstr "Тражи"
|
||||
msgid "“%s” is ready"
|
||||
msgstr "„%s“ је спреман"
|
||||
|
||||
#: js/ui/windowManager.js:83
|
||||
#: js/ui/windowManager.js:84
|
||||
msgid "Do you want to keep these display settings?"
|
||||
msgstr "Да ли желите да задржите ова подешавања екрана?"
|
||||
|
||||
#. Translators: this and the following message should be limited in lenght,
|
||||
#. to avoid ellipsizing the labels.
|
||||
#.
|
||||
#: js/ui/windowManager.js:102
|
||||
#: js/ui/windowManager.js:103
|
||||
msgid "Revert Settings"
|
||||
msgstr "Врати подешавања"
|
||||
|
||||
#: js/ui/windowManager.js:105
|
||||
#: js/ui/windowManager.js:106
|
||||
msgid "Keep Changes"
|
||||
msgstr "Задржи измене"
|
||||
|
||||
#: js/ui/windowManager.js:123
|
||||
#: js/ui/windowManager.js:124
|
||||
#, javascript-format
|
||||
msgid "Settings changes will revert in %d second"
|
||||
msgid_plural "Settings changes will revert in %d seconds"
|
||||
@ -1850,7 +1854,7 @@ msgstr[3] "Измене подешавања ће бити враћене за %
|
||||
|
||||
#. Translators: This represents the size of a window. The first number is
|
||||
#. * the width of the window and the second is the height.
|
||||
#: js/ui/windowManager.js:678
|
||||
#: js/ui/windowManager.js:679
|
||||
#, javascript-format
|
||||
msgid "%d × %d"
|
||||
msgstr "%d × %d"
|
||||
@ -1887,35 +1891,35 @@ msgstr "Увек на врху"
|
||||
msgid "Always on Visible Workspace"
|
||||
msgstr "Увек на приказаном радном простору"
|
||||
|
||||
#: js/ui/windowMenu.js:105
|
||||
#: js/ui/windowMenu.js:103
|
||||
msgid "Move to Workspace Left"
|
||||
msgstr "Премести на леви радни простор"
|
||||
|
||||
#: js/ui/windowMenu.js:110
|
||||
#: js/ui/windowMenu.js:108
|
||||
msgid "Move to Workspace Right"
|
||||
msgstr "Премести на десни радни простор"
|
||||
|
||||
#: js/ui/windowMenu.js:115
|
||||
#: js/ui/windowMenu.js:113
|
||||
msgid "Move to Workspace Up"
|
||||
msgstr "Премести на радни простор горе"
|
||||
|
||||
#: js/ui/windowMenu.js:120
|
||||
#: js/ui/windowMenu.js:118
|
||||
msgid "Move to Workspace Down"
|
||||
msgstr "Премести на радни простор доле"
|
||||
|
||||
#: js/ui/windowMenu.js:136
|
||||
#: js/ui/windowMenu.js:134
|
||||
msgid "Move to Monitor Up"
|
||||
msgstr "Премести на горњи радни простор"
|
||||
|
||||
#: js/ui/windowMenu.js:142
|
||||
#: js/ui/windowMenu.js:140
|
||||
msgid "Move to Monitor Down"
|
||||
msgstr "Премести на доњи радни простор"
|
||||
|
||||
#: js/ui/windowMenu.js:148
|
||||
#: js/ui/windowMenu.js:146
|
||||
msgid "Move to Monitor Left"
|
||||
msgstr "Премести екран улево"
|
||||
|
||||
#: js/ui/windowMenu.js:154
|
||||
#: js/ui/windowMenu.js:152
|
||||
msgid "Move to Monitor Right"
|
||||
msgstr "Премести екран удесно"
|
||||
|
||||
@ -1954,19 +1958,19 @@ msgstr[3] "%u улаз"
|
||||
msgid "System Sounds"
|
||||
msgstr "Системски звуци"
|
||||
|
||||
#: src/main.c:381
|
||||
#: src/main.c:372
|
||||
msgid "Print version"
|
||||
msgstr "Исписује издање"
|
||||
|
||||
#: src/main.c:387
|
||||
#: src/main.c:378
|
||||
msgid "Mode used by GDM for login screen"
|
||||
msgstr "Који режим користи ГДМ за екран пријављивања"
|
||||
|
||||
#: src/main.c:393
|
||||
#: src/main.c:384
|
||||
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
||||
msgstr "Користи нарочит режим, нпр. „gdm“ за екран пријављивања"
|
||||
|
||||
#: src/main.c:399
|
||||
#: src/main.c:390
|
||||
msgid "List possible modes"
|
||||
msgstr "Исписује могуће режиме"
|
||||
|
||||
|
234
po/sr@latin.po
234
po/sr@latin.po
@ -11,17 +11,19 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell master\n"
|
||||
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2017-03-03 11:37+0000\n"
|
||||
"PO-Revision-Date: 2017-03-05 05:41+0200\n"
|
||||
"Last-Translator: Miroslav Nikolić <miroslavnikolic@rocketmail.com>\n"
|
||||
"POT-Creation-Date: 2017-05-18 18:56+0000\n"
|
||||
"PO-Revision-Date: 2017-05-18 22:42+0200\n"
|
||||
"Last-Translator: Marko M. Kostić <marko.m.kostic@gmail.com>\n"
|
||||
"Language-Team: Serbian <gnom@prevod.org>\n"
|
||||
"Language: sr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
|
||||
"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
||||
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
"X-Project-Style: gnome\n"
|
||||
"X-Generator: Poedit 2.0.2\n"
|
||||
"X-Poedit-Bookmarks: -1,167,-1,-1,-1,-1,-1,-1,-1,-1\n"
|
||||
|
||||
#: data/50-gnome-shell-system.xml:6
|
||||
msgid "System"
|
||||
@ -48,7 +50,7 @@ msgid "Open the application menu"
|
||||
msgstr "Otvorite izbornik programa"
|
||||
|
||||
#: data/gnome-shell-extension-prefs.desktop.in.in:4
|
||||
#: js/extensionPrefs/main.js:149
|
||||
#: js/extensionPrefs/main.js:152
|
||||
msgid "Shell Extensions"
|
||||
msgstr "Proširenja školjke"
|
||||
|
||||
@ -326,7 +328,7 @@ msgstr "Mrežna prijava"
|
||||
msgid "network-workgroup"
|
||||
msgstr "network-workgroup"
|
||||
|
||||
#: js/extensionPrefs/main.js:117
|
||||
#: js/extensionPrefs/main.js:120
|
||||
#, javascript-format
|
||||
msgid "There was an error loading the preferences dialog for %s:"
|
||||
msgstr "Došlo je do greške pri učitavanju prozorčeta postavki za „%s“:"
|
||||
@ -334,7 +336,7 @@ msgstr "Došlo je do greške pri učitavanju prozorčeta postavki za „%s“:"
|
||||
#: js/gdm/authPrompt.js:149 js/ui/audioDeviceSelection.js:71
|
||||
#: js/ui/components/networkAgent.js:145 js/ui/components/polkitAgent.js:179
|
||||
#: js/ui/endSessionDialog.js:482 js/ui/extensionDownloader.js:195
|
||||
#: js/ui/shellMountOperation.js:399 js/ui/status/network.js:939
|
||||
#: js/ui/shellMountOperation.js:399 js/ui/status/network.js:947
|
||||
msgid "Cancel"
|
||||
msgstr "Otkaži"
|
||||
|
||||
@ -382,7 +384,7 @@ msgstr "Korisnik: "
|
||||
msgid "Login Window"
|
||||
msgstr "Prozor za prijavljivanje"
|
||||
|
||||
#: js/gdm/util.js:341
|
||||
#: js/gdm/util.js:342
|
||||
msgid "Authentication error"
|
||||
msgstr "Greška potvrđivanja identiteta"
|
||||
|
||||
@ -391,7 +393,7 @@ msgstr "Greška potvrđivanja identiteta"
|
||||
#. as a cue to display our own message.
|
||||
#. Translators: this message is shown below the password entry field
|
||||
#. to indicate the user can swipe their finger instead
|
||||
#: js/gdm/util.js:473
|
||||
#: js/gdm/util.js:474
|
||||
msgid "(or swipe finger)"
|
||||
msgstr "(ili prevucite prst)"
|
||||
|
||||
@ -433,7 +435,6 @@ msgstr[2] "Pre %d sati"
|
||||
msgstr[3] "Pre jedan sat"
|
||||
|
||||
#: js/misc/util.js:188
|
||||
#| msgid "Yesterday, %H∶%M"
|
||||
msgid "Yesterday"
|
||||
msgstr "Juče"
|
||||
|
||||
@ -544,11 +545,11 @@ msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%d .%B %Y., %l∶%M %p"
|
||||
|
||||
#. TRANSLATORS: this is the title of the wifi captive portal login window
|
||||
#: js/portalHelper/main.js:67
|
||||
#: js/portalHelper/main.js:66
|
||||
msgid "Hotspot Login"
|
||||
msgstr "Prijava na vruću tačku"
|
||||
|
||||
#: js/portalHelper/main.js:113
|
||||
#: js/portalHelper/main.js:112
|
||||
msgid ""
|
||||
"Your connection to this hotspot login is not secure. Passwords or other "
|
||||
"information you enter on this page can be viewed by people nearby."
|
||||
@ -558,11 +559,11 @@ msgstr ""
|
||||
|
||||
#. No support for non-modal system dialogs, so ignore the option
|
||||
#. let modal = options['modal'] || true;
|
||||
#: js/ui/accessDialog.js:62 js/ui/status/location.js:427
|
||||
#: js/ui/accessDialog.js:62 js/ui/status/location.js:405
|
||||
msgid "Deny Access"
|
||||
msgstr "Zabrani pristup"
|
||||
|
||||
#: js/ui/accessDialog.js:63 js/ui/status/location.js:430
|
||||
#: js/ui/accessDialog.js:63 js/ui/status/location.js:408
|
||||
msgid "Grant Access"
|
||||
msgstr "Dozvoli pristup"
|
||||
|
||||
@ -762,7 +763,7 @@ msgid "Type again:"
|
||||
msgstr "Upišite ponovo:"
|
||||
|
||||
#: js/ui/components/networkAgent.js:140 js/ui/status/network.js:272
|
||||
#: js/ui/status/network.js:366 js/ui/status/network.js:942
|
||||
#: js/ui/status/network.js:366 js/ui/status/network.js:950
|
||||
msgid "Connect"
|
||||
msgstr "Poveži se"
|
||||
|
||||
@ -836,7 +837,7 @@ msgstr "Lozinka mobilne širokopojasne mreže"
|
||||
msgid "A password is required to connect to “%s”."
|
||||
msgstr "Potrebna je lozinka za povezivanje na „%s“."
|
||||
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1747
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1759
|
||||
msgid "Network Manager"
|
||||
msgstr "Upravnik mreže"
|
||||
|
||||
@ -862,12 +863,12 @@ msgstr "Pogrešili ste! Pokušajte ponovo."
|
||||
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name.
|
||||
#: js/ui/components/telepathyClient.js:767
|
||||
#: js/ui/components/telepathyClient.js:799
|
||||
#, javascript-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "„%s“ je sada poznat kao „%s“"
|
||||
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:178
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:179
|
||||
msgid "Windows"
|
||||
msgstr "Prozori"
|
||||
|
||||
@ -933,24 +934,27 @@ msgstr "%s, zatim %s kasnije."
|
||||
#: js/ui/dateMenu.js:293
|
||||
#, javascript-format
|
||||
msgid "%s, then %s, followed by %s later."
|
||||
msgstr "%s, zatim %s, kasnije praćeno %s."
|
||||
msgstr "%s, zatim %s, a kasnije %s."
|
||||
|
||||
#: js/ui/dateMenu.js:300
|
||||
#| msgid "Searching…"
|
||||
msgid "Select a location…"
|
||||
msgstr "Izaberite mesto…"
|
||||
|
||||
#: js/ui/dateMenu.js:303
|
||||
msgid "Loading…"
|
||||
msgstr "Učitavam…"
|
||||
|
||||
#. Translators: %s is a temperature with unit, e.g. "23℃"
|
||||
#: js/ui/dateMenu.js:306
|
||||
#: js/ui/dateMenu.js:309
|
||||
#, javascript-format
|
||||
msgid "Feels like %s."
|
||||
msgstr "Oseća se kao %s."
|
||||
|
||||
#: js/ui/dateMenu.js:309
|
||||
#: js/ui/dateMenu.js:312
|
||||
msgid "Go online for weather information"
|
||||
msgstr "Idite na mrežu za podatke o vremenskoj prognozi."
|
||||
|
||||
#: js/ui/dateMenu.js:311
|
||||
#: js/ui/dateMenu.js:314
|
||||
msgid "Weather information is currently unavailable"
|
||||
msgstr "Podaci o vremenskoj prognozi trenutno nisu dostupni."
|
||||
|
||||
@ -1135,51 +1139,51 @@ msgstr "Sakrij kasetu"
|
||||
msgid "Status Icons"
|
||||
msgstr "Ikonice stanja"
|
||||
|
||||
#: js/ui/lookingGlass.js:643
|
||||
#: js/ui/lookingGlass.js:642
|
||||
msgid "No extensions installed"
|
||||
msgstr "Nisu instalirana proširenja"
|
||||
|
||||
#. Translators: argument is an extension UUID.
|
||||
#: js/ui/lookingGlass.js:697
|
||||
#: js/ui/lookingGlass.js:696
|
||||
#, javascript-format
|
||||
msgid "%s has not emitted any errors."
|
||||
msgstr "%s nije objavio nikakve greške."
|
||||
|
||||
#: js/ui/lookingGlass.js:703
|
||||
#: js/ui/lookingGlass.js:702
|
||||
msgid "Hide Errors"
|
||||
msgstr "Sakrij greške"
|
||||
|
||||
#: js/ui/lookingGlass.js:707 js/ui/lookingGlass.js:767
|
||||
#: js/ui/lookingGlass.js:706 js/ui/lookingGlass.js:766
|
||||
msgid "Show Errors"
|
||||
msgstr "Prikažite greške"
|
||||
|
||||
#: js/ui/lookingGlass.js:716
|
||||
#: js/ui/lookingGlass.js:715
|
||||
msgid "Enabled"
|
||||
msgstr "Uključeno"
|
||||
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: js/ui/lookingGlass.js:719 src/gvc/gvc-mixer-control.c:1866
|
||||
#: js/ui/lookingGlass.js:718 src/gvc/gvc-mixer-control.c:1866
|
||||
msgid "Disabled"
|
||||
msgstr "Isključeno"
|
||||
|
||||
#: js/ui/lookingGlass.js:721
|
||||
#: js/ui/lookingGlass.js:720
|
||||
msgid "Error"
|
||||
msgstr "Greška"
|
||||
|
||||
#: js/ui/lookingGlass.js:723
|
||||
#: js/ui/lookingGlass.js:722
|
||||
msgid "Out of date"
|
||||
msgstr "Izvan datuma"
|
||||
|
||||
#: js/ui/lookingGlass.js:725
|
||||
#: js/ui/lookingGlass.js:724
|
||||
msgid "Downloading"
|
||||
msgstr "Preuzimam"
|
||||
|
||||
#: js/ui/lookingGlass.js:749
|
||||
#: js/ui/lookingGlass.js:748
|
||||
msgid "View Source"
|
||||
msgstr "Prikaži kod"
|
||||
|
||||
#: js/ui/lookingGlass.js:758
|
||||
#: js/ui/lookingGlass.js:757
|
||||
msgid "Web Page"
|
||||
msgstr "Veb stranica"
|
||||
|
||||
@ -1213,47 +1217,47 @@ msgstr "Pregled"
|
||||
msgid "Type to search…"
|
||||
msgstr "Upišite tekst za pretragu…"
|
||||
|
||||
#: js/ui/padOsd.js:37
|
||||
#: js/ui/padOsd.js:103
|
||||
msgid "New shortcut…"
|
||||
msgstr "Nova prečica…"
|
||||
|
||||
#: js/ui/padOsd.js:86
|
||||
#: js/ui/padOsd.js:152
|
||||
msgid "Application defined"
|
||||
msgstr "Definisani program"
|
||||
|
||||
#: js/ui/padOsd.js:87
|
||||
#: js/ui/padOsd.js:153
|
||||
msgid "Show on-screen help"
|
||||
msgstr "Prikaži pomoć na ekranu"
|
||||
|
||||
#: js/ui/padOsd.js:88
|
||||
#: js/ui/padOsd.js:154
|
||||
msgid "Switch monitor"
|
||||
msgstr "Promeni monitor"
|
||||
|
||||
#: js/ui/padOsd.js:89
|
||||
#: js/ui/padOsd.js:155
|
||||
msgid "Assign keystroke"
|
||||
msgstr "Dodeli taster"
|
||||
|
||||
#: js/ui/padOsd.js:143
|
||||
#: js/ui/padOsd.js:209
|
||||
msgid "Done"
|
||||
msgstr "Gotovo"
|
||||
|
||||
#: js/ui/padOsd.js:597
|
||||
#: js/ui/padOsd.js:698
|
||||
msgid "Edit…"
|
||||
msgstr "Uredi…"
|
||||
|
||||
#: js/ui/padOsd.js:610 js/ui/padOsd.js:665
|
||||
#: js/ui/padOsd.js:738 js/ui/padOsd.js:800
|
||||
msgid "None"
|
||||
msgstr "Ništa"
|
||||
|
||||
#: js/ui/padOsd.js:648
|
||||
#: js/ui/padOsd.js:783
|
||||
msgid "Press a button to configure"
|
||||
msgstr "Pritisnite dugme da podesite"
|
||||
|
||||
#: js/ui/padOsd.js:649
|
||||
#: js/ui/padOsd.js:784
|
||||
msgid "Press Esc to exit"
|
||||
msgstr "Pritisnite „Esc“ da izađete"
|
||||
|
||||
#: js/ui/padOsd.js:652
|
||||
#: js/ui/padOsd.js:787
|
||||
msgid "Press any key to exit"
|
||||
msgstr "Pritisnite neki taster da izađete"
|
||||
|
||||
@ -1289,7 +1293,7 @@ msgstr "toggle-switch-intl"
|
||||
msgid "Enter a Command"
|
||||
msgstr "Unesite naredbu"
|
||||
|
||||
#: js/ui/runDialog.js:111 js/ui/windowMenu.js:162
|
||||
#: js/ui/runDialog.js:111 js/ui/windowMenu.js:160
|
||||
msgid "Close"
|
||||
msgstr "Zatvori"
|
||||
|
||||
@ -1303,11 +1307,11 @@ msgstr "Ponovno pokrećem…"
|
||||
|
||||
#. Translators: This is a time format for a date in
|
||||
#. long format
|
||||
#: js/ui/screenShield.js:85
|
||||
#: js/ui/screenShield.js:88
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A, %d. %B"
|
||||
|
||||
#: js/ui/screenShield.js:144
|
||||
#: js/ui/screenShield.js:147
|
||||
#, javascript-format
|
||||
msgid "%d new message"
|
||||
msgid_plural "%d new messages"
|
||||
@ -1316,7 +1320,7 @@ msgstr[1] "%d nove poruke"
|
||||
msgstr[2] "%d novih poruka"
|
||||
msgstr[3] "%d nova poruka"
|
||||
|
||||
#: js/ui/screenShield.js:146
|
||||
#: js/ui/screenShield.js:149
|
||||
#, javascript-format
|
||||
msgid "%d new notification"
|
||||
msgid_plural "%d new notifications"
|
||||
@ -1325,11 +1329,11 @@ msgstr[1] "%d nova obaveštenja"
|
||||
msgstr[2] "%d novih obaveštenja"
|
||||
msgstr[3] "%d novo obaveštenje"
|
||||
|
||||
#: js/ui/screenShield.js:449 js/ui/status/system.js:409
|
||||
#: js/ui/screenShield.js:452 js/ui/status/system.js:409
|
||||
msgid "Lock"
|
||||
msgstr "Zaključaj"
|
||||
|
||||
#: js/ui/screenShield.js:707
|
||||
#: js/ui/screenShield.js:715
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "Gnom mora da zaključa ekran"
|
||||
|
||||
@ -1340,19 +1344,19 @@ msgstr "Gnom mora da zaključa ekran"
|
||||
#.
|
||||
#. XXX: another option is to kick the user into the gdm login
|
||||
#. screen, where we're not affected by grabs
|
||||
#: js/ui/screenShield.js:828 js/ui/screenShield.js:1295
|
||||
#: js/ui/screenShield.js:836 js/ui/screenShield.js:1308
|
||||
msgid "Unable to lock"
|
||||
msgstr "Ne mogu da zaključam"
|
||||
|
||||
#: js/ui/screenShield.js:829 js/ui/screenShield.js:1296
|
||||
#: js/ui/screenShield.js:837 js/ui/screenShield.js:1309
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "Neki program je blokirao zaključavanje"
|
||||
|
||||
#: js/ui/search.js:617
|
||||
#: js/ui/search.js:621
|
||||
msgid "Searching…"
|
||||
msgstr "Tražim…"
|
||||
|
||||
#: js/ui/search.js:619
|
||||
#: js/ui/search.js:623
|
||||
msgid "No results."
|
||||
msgstr "Nema odgovarajućih rezultata."
|
||||
|
||||
@ -1450,13 +1454,13 @@ msgstr "Isklj."
|
||||
msgid "On"
|
||||
msgstr "Uklj."
|
||||
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:1302
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:1310
|
||||
msgid "Turn On"
|
||||
msgstr "Uključi"
|
||||
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:181
|
||||
#: js/ui/status/network.js:367 js/ui/status/network.js:1302
|
||||
#: js/ui/status/network.js:1417 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/network.js:367 js/ui/status/network.js:1310
|
||||
#: js/ui/status/network.js:1429 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/rfkill.js:90 js/ui/status/rfkill.js:117
|
||||
msgid "Turn Off"
|
||||
msgstr "Isključi"
|
||||
@ -1469,37 +1473,37 @@ msgstr "Osvetljenost"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Pokaži raspored tastature"
|
||||
|
||||
#: js/ui/status/location.js:107 js/ui/status/location.js:215
|
||||
#: js/ui/status/location.js:88 js/ui/status/location.js:196
|
||||
msgid "Location Enabled"
|
||||
msgstr "Određivanje mesta uključeno"
|
||||
|
||||
#: js/ui/status/location.js:108 js/ui/status/location.js:216
|
||||
#: js/ui/status/location.js:89 js/ui/status/location.js:197
|
||||
msgid "Disable"
|
||||
msgstr "Isključi"
|
||||
|
||||
#: js/ui/status/location.js:109
|
||||
#: js/ui/status/location.js:90
|
||||
msgid "Privacy Settings"
|
||||
msgstr "Podešavanja privatnosti"
|
||||
|
||||
#: js/ui/status/location.js:214
|
||||
#: js/ui/status/location.js:195
|
||||
msgid "Location In Use"
|
||||
msgstr "Određivanje mesta se koristi"
|
||||
|
||||
#: js/ui/status/location.js:218
|
||||
#: js/ui/status/location.js:199
|
||||
msgid "Location Disabled"
|
||||
msgstr "Određivanje mesta isključeno"
|
||||
|
||||
#: js/ui/status/location.js:219
|
||||
#: js/ui/status/location.js:200
|
||||
msgid "Enable"
|
||||
msgstr "Uključi"
|
||||
|
||||
#. Translators: %s is an application name
|
||||
#: js/ui/status/location.js:436
|
||||
#: js/ui/status/location.js:414
|
||||
#, javascript-format
|
||||
msgid "Give %s access to your location?"
|
||||
msgstr "Da li da „%s“ dam pristup vašem mestu?"
|
||||
|
||||
#: js/ui/status/location.js:438
|
||||
#: js/ui/status/location.js:416
|
||||
msgid "Location access can be changed at any time from the privacy settings."
|
||||
msgstr ""
|
||||
"Pristup mestu možete da izmenite u bilo koje vreme u podešavanjima "
|
||||
@ -1510,7 +1514,7 @@ msgid "<unknown>"
|
||||
msgstr "<nepoznato>"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:465 js/ui/status/network.js:1331
|
||||
#: js/ui/status/network.js:465 js/ui/status/network.js:1339
|
||||
#, javascript-format
|
||||
msgid "%s Off"
|
||||
msgstr "%s isključeno"
|
||||
@ -1536,7 +1540,7 @@ msgid "%s Disconnecting"
|
||||
msgstr "%s prekidanje veze u toku"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:483 js/ui/status/network.js:1323
|
||||
#: js/ui/status/network.js:483 js/ui/status/network.js:1331
|
||||
#, javascript-format
|
||||
msgid "%s Connecting"
|
||||
msgstr "%s povezivanje u toku"
|
||||
@ -1576,7 +1580,7 @@ msgid "Mobile Broadband Settings"
|
||||
msgstr "Podešavanja mobilne širokopojasne veze"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:602 js/ui/status/network.js:1328
|
||||
#: js/ui/status/network.js:602 js/ui/status/network.js:1336
|
||||
#, javascript-format
|
||||
msgid "%s Hardware Disabled"
|
||||
msgstr "%s uređaj isključen"
|
||||
@ -1592,97 +1596,97 @@ msgstr "%s isključeno"
|
||||
msgid "Connect to Internet"
|
||||
msgstr "Poveži se na Internet"
|
||||
|
||||
#: js/ui/status/network.js:836
|
||||
#: js/ui/status/network.js:844
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "Avionski režim rada je uključen"
|
||||
|
||||
#: js/ui/status/network.js:837
|
||||
#: js/ui/status/network.js:845
|
||||
msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr "Bežična veza je isključena kada je uključen avionski režim rada."
|
||||
|
||||
#: js/ui/status/network.js:838
|
||||
#: js/ui/status/network.js:846
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "Isključi avionski režim rada"
|
||||
|
||||
#: js/ui/status/network.js:847
|
||||
#: js/ui/status/network.js:855
|
||||
msgid "Wi-Fi is Off"
|
||||
msgstr "Bežična veza je isključena"
|
||||
|
||||
#: js/ui/status/network.js:848
|
||||
#: js/ui/status/network.js:856
|
||||
msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr "Bežična veza treba biti uključena da biste se povezali na mrežu."
|
||||
|
||||
#: js/ui/status/network.js:849
|
||||
#: js/ui/status/network.js:857
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "Uključi bežičnu vezu"
|
||||
|
||||
#: js/ui/status/network.js:874
|
||||
#: js/ui/status/network.js:882
|
||||
msgid "Wi-Fi Networks"
|
||||
msgstr "Bežične mreže"
|
||||
|
||||
#: js/ui/status/network.js:876
|
||||
#: js/ui/status/network.js:884
|
||||
msgid "Select a network"
|
||||
msgstr "Izaberite mrežu"
|
||||
|
||||
#: js/ui/status/network.js:906
|
||||
#: js/ui/status/network.js:914
|
||||
msgid "No Networks"
|
||||
msgstr "Nema mreža"
|
||||
|
||||
#: js/ui/status/network.js:927 js/ui/status/rfkill.js:115
|
||||
#: js/ui/status/network.js:935 js/ui/status/rfkill.js:115
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr "Koristi fizički prekidač za isključivanje"
|
||||
|
||||
#: js/ui/status/network.js:1194
|
||||
#: js/ui/status/network.js:1202
|
||||
msgid "Select Network"
|
||||
msgstr "Izaberi mrežu"
|
||||
|
||||
#: js/ui/status/network.js:1200
|
||||
#: js/ui/status/network.js:1208
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Podešavanja bežične veze"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:1319
|
||||
#: js/ui/status/network.js:1327
|
||||
#, javascript-format
|
||||
msgid "%s Hotspot Active"
|
||||
msgstr "%s hotspot uključen"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:1334
|
||||
#: js/ui/status/network.js:1342
|
||||
#, javascript-format
|
||||
msgid "%s Not Connected"
|
||||
msgstr "%s nepovezano"
|
||||
|
||||
#: js/ui/status/network.js:1434
|
||||
#: js/ui/status/network.js:1446
|
||||
msgid "connecting…"
|
||||
msgstr "povezujem se…"
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password
|
||||
#: js/ui/status/network.js:1437
|
||||
#: js/ui/status/network.js:1449
|
||||
msgid "authentication required"
|
||||
msgstr "potrebna je prijava"
|
||||
|
||||
#: js/ui/status/network.js:1439
|
||||
#: js/ui/status/network.js:1451
|
||||
msgid "connection failed"
|
||||
msgstr "povezivanje nije uspelo"
|
||||
|
||||
#: js/ui/status/network.js:1505 js/ui/status/network.js:1600
|
||||
#: js/ui/status/network.js:1517 js/ui/status/network.js:1612
|
||||
#: js/ui/status/rfkill.js:93
|
||||
msgid "Network Settings"
|
||||
msgstr "Podešavanja mreže"
|
||||
|
||||
#: js/ui/status/network.js:1507
|
||||
#: js/ui/status/network.js:1519
|
||||
msgid "VPN Settings"
|
||||
msgstr "VPN podešavanja"
|
||||
|
||||
#: js/ui/status/network.js:1526
|
||||
#: js/ui/status/network.js:1538
|
||||
msgid "VPN"
|
||||
msgstr "VPN"
|
||||
|
||||
#: js/ui/status/network.js:1536
|
||||
#: js/ui/status/network.js:1548
|
||||
msgid "VPN Off"
|
||||
msgstr "Isključi VPN"
|
||||
|
||||
#: js/ui/status/network.js:1631
|
||||
#: js/ui/status/network.js:1643
|
||||
#, javascript-format
|
||||
msgid "%s Wired Connection"
|
||||
msgid_plural "%s Wired Connections"
|
||||
@ -1691,7 +1695,7 @@ msgstr[1] "%s žičane veze"
|
||||
msgstr[2] "%s žičanih veza"
|
||||
msgstr[3] "%s žičana veza"
|
||||
|
||||
#: js/ui/status/network.js:1635
|
||||
#: js/ui/status/network.js:1647
|
||||
#, javascript-format
|
||||
msgid "%s Wi-Fi Connection"
|
||||
msgid_plural "%s Wi-Fi Connections"
|
||||
@ -1700,7 +1704,7 @@ msgstr[1] "%s bežične veze"
|
||||
msgstr[2] "%s bežičnih veza"
|
||||
msgstr[3] "%s bežična veza"
|
||||
|
||||
#: js/ui/status/network.js:1639
|
||||
#: js/ui/status/network.js:1651
|
||||
#, javascript-format
|
||||
msgid "%s Modem Connection"
|
||||
msgid_plural "%s Modem Connections"
|
||||
@ -1709,11 +1713,11 @@ msgstr[1] "%s modemske veze"
|
||||
msgstr[2] "%s modemskih veza"
|
||||
msgstr[3] "%s modemska veza"
|
||||
|
||||
#: js/ui/status/network.js:1786
|
||||
#: js/ui/status/network.js:1798
|
||||
msgid "Connection failed"
|
||||
msgstr "Povezivanje nije uspelo"
|
||||
|
||||
#: js/ui/status/network.js:1787
|
||||
#: js/ui/status/network.js:1799
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Aktiviranje mrežne veze nije uspelo"
|
||||
|
||||
@ -1811,11 +1815,11 @@ msgstr "Prijavite se kao drugi korisnik"
|
||||
msgid "Unlock Window"
|
||||
msgstr "Otključaj prozor"
|
||||
|
||||
#: js/ui/viewSelector.js:182
|
||||
#: js/ui/viewSelector.js:183
|
||||
msgid "Applications"
|
||||
msgstr "Programi"
|
||||
|
||||
#: js/ui/viewSelector.js:186
|
||||
#: js/ui/viewSelector.js:187
|
||||
msgid "Search"
|
||||
msgstr "Traži"
|
||||
|
||||
@ -1824,22 +1828,22 @@ msgstr "Traži"
|
||||
msgid "“%s” is ready"
|
||||
msgstr "„%s“ je spreman"
|
||||
|
||||
#: js/ui/windowManager.js:83
|
||||
#: js/ui/windowManager.js:84
|
||||
msgid "Do you want to keep these display settings?"
|
||||
msgstr "Da li želite da zadržite ova podešavanja ekrana?"
|
||||
|
||||
#. Translators: this and the following message should be limited in lenght,
|
||||
#. to avoid ellipsizing the labels.
|
||||
#.
|
||||
#: js/ui/windowManager.js:102
|
||||
#: js/ui/windowManager.js:103
|
||||
msgid "Revert Settings"
|
||||
msgstr "Vrati podešavanja"
|
||||
|
||||
#: js/ui/windowManager.js:105
|
||||
#: js/ui/windowManager.js:106
|
||||
msgid "Keep Changes"
|
||||
msgstr "Zadrži izmene"
|
||||
|
||||
#: js/ui/windowManager.js:123
|
||||
#: js/ui/windowManager.js:124
|
||||
#, javascript-format
|
||||
msgid "Settings changes will revert in %d second"
|
||||
msgid_plural "Settings changes will revert in %d seconds"
|
||||
@ -1850,7 +1854,7 @@ msgstr[3] "Izmene podešavanja će biti vraćene za %d sekundu"
|
||||
|
||||
#. Translators: This represents the size of a window. The first number is
|
||||
#. * the width of the window and the second is the height.
|
||||
#: js/ui/windowManager.js:678
|
||||
#: js/ui/windowManager.js:679
|
||||
#, javascript-format
|
||||
msgid "%d × %d"
|
||||
msgstr "%d × %d"
|
||||
@ -1887,35 +1891,35 @@ msgstr "Uvek na vrhu"
|
||||
msgid "Always on Visible Workspace"
|
||||
msgstr "Uvek na prikazanom radnom prostoru"
|
||||
|
||||
#: js/ui/windowMenu.js:105
|
||||
#: js/ui/windowMenu.js:103
|
||||
msgid "Move to Workspace Left"
|
||||
msgstr "Premesti na levi radni prostor"
|
||||
|
||||
#: js/ui/windowMenu.js:110
|
||||
#: js/ui/windowMenu.js:108
|
||||
msgid "Move to Workspace Right"
|
||||
msgstr "Premesti na desni radni prostor"
|
||||
|
||||
#: js/ui/windowMenu.js:115
|
||||
#: js/ui/windowMenu.js:113
|
||||
msgid "Move to Workspace Up"
|
||||
msgstr "Premesti na radni prostor gore"
|
||||
|
||||
#: js/ui/windowMenu.js:120
|
||||
#: js/ui/windowMenu.js:118
|
||||
msgid "Move to Workspace Down"
|
||||
msgstr "Premesti na radni prostor dole"
|
||||
|
||||
#: js/ui/windowMenu.js:136
|
||||
#: js/ui/windowMenu.js:134
|
||||
msgid "Move to Monitor Up"
|
||||
msgstr "Premesti na gornji radni prostor"
|
||||
|
||||
#: js/ui/windowMenu.js:142
|
||||
#: js/ui/windowMenu.js:140
|
||||
msgid "Move to Monitor Down"
|
||||
msgstr "Premesti na donji radni prostor"
|
||||
|
||||
#: js/ui/windowMenu.js:148
|
||||
#: js/ui/windowMenu.js:146
|
||||
msgid "Move to Monitor Left"
|
||||
msgstr "Premesti ekran ulevo"
|
||||
|
||||
#: js/ui/windowMenu.js:154
|
||||
#: js/ui/windowMenu.js:152
|
||||
msgid "Move to Monitor Right"
|
||||
msgstr "Premesti ekran udesno"
|
||||
|
||||
@ -1954,19 +1958,19 @@ msgstr[3] "%u ulaz"
|
||||
msgid "System Sounds"
|
||||
msgstr "Sistemski zvuci"
|
||||
|
||||
#: src/main.c:381
|
||||
#: src/main.c:372
|
||||
msgid "Print version"
|
||||
msgstr "Ispisuje izdanje"
|
||||
|
||||
#: src/main.c:387
|
||||
#: src/main.c:378
|
||||
msgid "Mode used by GDM for login screen"
|
||||
msgstr "Koji režim koristi GDM za ekran prijavljivanja"
|
||||
|
||||
#: src/main.c:393
|
||||
#: src/main.c:384
|
||||
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
||||
msgstr "Koristi naročit režim, npr. „gdm“ za ekran prijavljivanja"
|
||||
|
||||
#: src/main.c:399
|
||||
#: src/main.c:390
|
||||
msgid "List possible modes"
|
||||
msgstr "Ispisuje moguće režime"
|
||||
|
||||
|
397
po/tr.po
397
po/tr.po
@ -9,22 +9,23 @@
|
||||
# Gökhan Gurbetoğlu <ggurbet@gmail.com>, 2014.
|
||||
# Muhammet Kara <muhammetk@gmail.com>, 2011, 2012, 2013, 2014, 2015, 2016.
|
||||
# Emin Tufan Çetin <etcetin@gmail.com>, 2017.
|
||||
# Furkan Ahmet Kara <furkanahmetkara.fk@gmail.com>, 2017.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell\n"
|
||||
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2017-02-27 19:03+0000\n"
|
||||
"PO-Revision-Date: 2017-02-28 10:06+0300\n"
|
||||
"Last-Translator: Emin Tufan Çetin <etcetin@gmail.com>\n"
|
||||
"POT-Creation-Date: 2017-05-11 09:41+0000\n"
|
||||
"PO-Revision-Date: 2017-05-16 03:31+0300\n"
|
||||
"Last-Translator: Furkan Ahmet Kara <furkanahmetkara.fk@gmail.com>\n"
|
||||
"Language-Team: Türkçe <gnome-turk@gnome.org>\n"
|
||||
"Language: tr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Poedit 1.8.9\n"
|
||||
"X-Generator: Gtranslator 2.91.7\n"
|
||||
"X-Project-Style: gnome\n"
|
||||
|
||||
#: data/50-gnome-shell-system.xml:6
|
||||
@ -52,7 +53,7 @@ msgid "Open the application menu"
|
||||
msgstr "Uygulama menüsünü aç"
|
||||
|
||||
#: data/gnome-shell-extension-prefs.desktop.in.in:4
|
||||
#: js/extensionPrefs/main.js:149
|
||||
#: js/extensionPrefs/main.js:152
|
||||
msgid "Shell Extensions"
|
||||
msgstr "Kabuk Uzantıları"
|
||||
|
||||
@ -339,7 +340,7 @@ msgstr "Ağ Girişi"
|
||||
msgid "network-workgroup"
|
||||
msgstr "network-workgroup"
|
||||
|
||||
#: js/extensionPrefs/main.js:117
|
||||
#: js/extensionPrefs/main.js:120
|
||||
#, javascript-format
|
||||
msgid "There was an error loading the preferences dialog for %s:"
|
||||
msgstr "%s için tercihler iletişim penceresi yüklenirken hata oluştu:"
|
||||
@ -347,7 +348,7 @@ msgstr "%s için tercihler iletişim penceresi yüklenirken hata oluştu:"
|
||||
#: js/gdm/authPrompt.js:149 js/ui/audioDeviceSelection.js:71
|
||||
#: js/ui/components/networkAgent.js:145 js/ui/components/polkitAgent.js:179
|
||||
#: js/ui/endSessionDialog.js:482 js/ui/extensionDownloader.js:195
|
||||
#: js/ui/shellMountOperation.js:399 js/ui/status/network.js:939
|
||||
#: js/ui/shellMountOperation.js:399 js/ui/status/network.js:947
|
||||
msgid "Cancel"
|
||||
msgstr "İptal"
|
||||
|
||||
@ -395,7 +396,7 @@ msgstr "Kullanıcı Adı: "
|
||||
msgid "Login Window"
|
||||
msgstr "Oturum Açma Penceresi"
|
||||
|
||||
#: js/gdm/util.js:341
|
||||
#: js/gdm/util.js:342
|
||||
msgid "Authentication error"
|
||||
msgstr "Kimlik doğrulama hatası"
|
||||
|
||||
@ -404,40 +405,85 @@ msgstr "Kimlik doğrulama hatası"
|
||||
#. as a cue to display our own message.
|
||||
#. Translators: this message is shown below the password entry field
|
||||
#. to indicate the user can swipe their finger instead
|
||||
#: js/gdm/util.js:473
|
||||
#: js/gdm/util.js:474
|
||||
msgid "(or swipe finger)"
|
||||
msgstr "(ya da parmak izi okutun)"
|
||||
|
||||
#: js/misc/util.js:121
|
||||
#: js/misc/util.js:122
|
||||
msgid "Command not found"
|
||||
msgstr "Komut bulunamadı"
|
||||
|
||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
||||
#. something nicer
|
||||
#: js/misc/util.js:154
|
||||
#: js/misc/util.js:155
|
||||
msgid "Could not parse command:"
|
||||
msgstr "Komut işlenemedi:"
|
||||
|
||||
#: js/misc/util.js:162
|
||||
#: js/misc/util.js:163
|
||||
#, javascript-format
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "“%s” çalıştırılması başarısız:"
|
||||
|
||||
#. Translators: Time in 24h format
|
||||
#: js/misc/util.js:180
|
||||
msgid "Just now"
|
||||
msgstr "Şimdi"
|
||||
|
||||
#: js/misc/util.js:182
|
||||
#, javascript-format
|
||||
msgid "%d minute ago"
|
||||
msgid_plural "%d minutes ago"
|
||||
msgstr[0] "%d dakika önce"
|
||||
|
||||
#: js/misc/util.js:185
|
||||
#, javascript-format
|
||||
msgid "%d hour ago"
|
||||
msgid_plural "%d hours ago"
|
||||
msgstr[0] "%d saat önce"
|
||||
|
||||
#: js/misc/util.js:188
|
||||
#| msgid "Yesterday, %H∶%M"
|
||||
msgid "Yesterday"
|
||||
msgstr "Dün"
|
||||
|
||||
#: js/misc/util.js:190
|
||||
#, javascript-format
|
||||
msgid "%d day ago"
|
||||
msgid_plural "%d days ago"
|
||||
msgstr[0] "%d gün önce"
|
||||
|
||||
#: js/misc/util.js:193
|
||||
#, javascript-format
|
||||
msgid "%d week ago"
|
||||
msgid_plural "%d weeks ago"
|
||||
msgstr[0] "%d hafta önce"
|
||||
|
||||
#: js/misc/util.js:196
|
||||
#, javascript-format
|
||||
msgid "%d month ago"
|
||||
msgid_plural "%d months ago"
|
||||
msgstr[0] "%d ay önce"
|
||||
|
||||
#: js/misc/util.js:198
|
||||
#, javascript-format
|
||||
msgid "%d year ago"
|
||||
msgid_plural "%d years ago"
|
||||
msgstr[0] "%d yıl önce"
|
||||
|
||||
#. Translators: Time in 24h format
|
||||
#: js/misc/util.js:229
|
||||
msgid "%H∶%M"
|
||||
msgstr "%H∶%M"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 24h format. i.e. "Yesterday, 14:30"
|
||||
#: js/misc/util.js:199
|
||||
#: js/misc/util.js:235
|
||||
#, no-c-format
|
||||
msgid "Yesterday, %H∶%M"
|
||||
msgstr "Dün, %H∶%M"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 24h format. i.e. "Monday, 14:30"
|
||||
#: js/misc/util.js:205
|
||||
#: js/misc/util.js:241
|
||||
#, no-c-format
|
||||
msgid "%A, %H∶%M"
|
||||
msgstr "%A, %H∶%M"
|
||||
@ -445,7 +491,7 @@ msgstr "%A, %H∶%M"
|
||||
#. Translators: this is the month name and day number
|
||||
#. followed by a time string in 24h format.
|
||||
#. i.e. "May 25, 14:30"
|
||||
#: js/misc/util.js:211
|
||||
#: js/misc/util.js:247
|
||||
#, no-c-format
|
||||
msgid "%B %d, %H∶%M"
|
||||
msgstr "%d %B, %H∶%M"
|
||||
@ -453,26 +499,26 @@ msgstr "%d %B, %H∶%M"
|
||||
#. Translators: this is the month name, day number, year
|
||||
#. number followed by a time string in 24h format.
|
||||
#. i.e. "May 25 2012, 14:30"
|
||||
#: js/misc/util.js:217
|
||||
#: js/misc/util.js:253
|
||||
#, no-c-format
|
||||
msgid "%B %d %Y, %H∶%M"
|
||||
msgstr "%d %B %Y, %H∶%M"
|
||||
|
||||
#. Translators: Time in 12h format
|
||||
#: js/misc/util.js:222
|
||||
#: js/misc/util.js:258
|
||||
msgid "%l∶%M %p"
|
||||
msgstr "%l∶%M %p"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 12h format. i.e. "Yesterday, 2:30 pm"
|
||||
#: js/misc/util.js:228
|
||||
#: js/misc/util.js:264
|
||||
#, no-c-format
|
||||
msgid "Yesterday, %l∶%M %p"
|
||||
msgstr "Dün, %l∶%M %p"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 12h format. i.e. "Monday, 2:30 pm"
|
||||
#: js/misc/util.js:234
|
||||
#: js/misc/util.js:270
|
||||
#, no-c-format
|
||||
msgid "%A, %l∶%M %p"
|
||||
msgstr "%A, %l∶%M %p"
|
||||
@ -480,7 +526,7 @@ msgstr "%A, %l∶%M %p"
|
||||
#. Translators: this is the month name and day number
|
||||
#. followed by a time string in 12h format.
|
||||
#. i.e. "May 25, 2:30 pm"
|
||||
#: js/misc/util.js:240
|
||||
#: js/misc/util.js:276
|
||||
#, no-c-format
|
||||
msgid "%B %d, %l∶%M %p"
|
||||
msgstr "%d %B, %l∶%M %p"
|
||||
@ -488,17 +534,17 @@ msgstr "%d %B, %l∶%M %p"
|
||||
#. Translators: this is the month name, day number, year
|
||||
#. number followed by a time string in 12h format.
|
||||
#. i.e. "May 25 2012, 2:30 pm"
|
||||
#: js/misc/util.js:246
|
||||
#: js/misc/util.js:282
|
||||
#, no-c-format
|
||||
msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%d %B %Y, %l∶%M %p"
|
||||
|
||||
#. TRANSLATORS: this is the title of the wifi captive portal login window
|
||||
#: js/portalHelper/main.js:67
|
||||
#: js/portalHelper/main.js:66
|
||||
msgid "Hotspot Login"
|
||||
msgstr "Erişim Noktası Girişi"
|
||||
|
||||
#: js/portalHelper/main.js:113
|
||||
#: js/portalHelper/main.js:112
|
||||
msgid ""
|
||||
"Your connection to this hotspot login is not secure. Passwords or other "
|
||||
"information you enter on this page can be viewed by people nearby."
|
||||
@ -509,11 +555,11 @@ msgstr ""
|
||||
|
||||
#. No support for non-modal system dialogs, so ignore the option
|
||||
#. let modal = options['modal'] || true;
|
||||
#: js/ui/accessDialog.js:62 js/ui/status/location.js:427
|
||||
#: js/ui/accessDialog.js:62 js/ui/status/location.js:405
|
||||
msgid "Deny Access"
|
||||
msgstr "Erişimi Reddet"
|
||||
|
||||
#: js/ui/accessDialog.js:63 js/ui/status/location.js:430
|
||||
#: js/ui/accessDialog.js:63 js/ui/status/location.js:408
|
||||
msgid "Grant Access"
|
||||
msgstr "Erişime İzin Ver"
|
||||
|
||||
@ -664,37 +710,33 @@ msgstr "%V. Hafta"
|
||||
#. Translators: Shown in calendar event list for all day events
|
||||
#. * Keep it short, best if you can use less then 10 characters
|
||||
#.
|
||||
#: js/ui/calendar.js:721
|
||||
#: js/ui/calendar.js:729
|
||||
msgctxt "event list time"
|
||||
msgid "All Day"
|
||||
msgstr "Tüm Gün"
|
||||
|
||||
#: js/ui/calendar.js:836
|
||||
msgid "Events"
|
||||
msgstr "Olaylar"
|
||||
|
||||
#: js/ui/calendar.js:845
|
||||
#: js/ui/calendar.js:862
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A, %d %B"
|
||||
|
||||
#: js/ui/calendar.js:849
|
||||
#: js/ui/calendar.js:866
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%A, %d %B, %Y"
|
||||
|
||||
#: js/ui/calendar.js:931
|
||||
msgid "Notifications"
|
||||
msgstr "Bildirimler"
|
||||
|
||||
#: js/ui/calendar.js:1082
|
||||
#: js/ui/calendar.js:1086
|
||||
msgid "No Notifications"
|
||||
msgstr "Bildirim Yok"
|
||||
|
||||
#: js/ui/calendar.js:1085
|
||||
#: js/ui/calendar.js:1089
|
||||
msgid "No Events"
|
||||
msgstr "Olay Yok"
|
||||
|
||||
#: js/ui/calendar.js:1117
|
||||
msgid "Clear All"
|
||||
msgstr "Tümünü Temizle"
|
||||
|
||||
#: js/ui/components/automountManager.js:91
|
||||
msgid "External drive connected"
|
||||
msgstr "Harici sürücü bağlandı"
|
||||
@ -717,7 +759,7 @@ msgid "Type again:"
|
||||
msgstr "Terkar yazın:"
|
||||
|
||||
#: js/ui/components/networkAgent.js:140 js/ui/status/network.js:272
|
||||
#: js/ui/status/network.js:366 js/ui/status/network.js:942
|
||||
#: js/ui/status/network.js:366 js/ui/status/network.js:950
|
||||
msgid "Connect"
|
||||
msgstr "Bağlan"
|
||||
|
||||
@ -792,7 +834,7 @@ msgstr "Mobil geniş bant ağ parolası"
|
||||
msgid "A password is required to connect to “%s”."
|
||||
msgstr "“%s”e bağlanmak için parola gerekli."
|
||||
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1747
|
||||
#: js/ui/components/networkAgent.js:655 js/ui/status/network.js:1759
|
||||
msgid "Network Manager"
|
||||
msgstr "Ağ Yöneticisi"
|
||||
|
||||
@ -818,12 +860,12 @@ msgstr "Üzgünüm ama işe yaramadı. Lütfen yeniden deneyin."
|
||||
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name.
|
||||
#: js/ui/components/telepathyClient.js:765
|
||||
#: js/ui/components/telepathyClient.js:799
|
||||
#, javascript-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "%s, şimdi %s olarak biliniyor"
|
||||
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:178
|
||||
#: js/ui/ctrlAltTab.js:29 js/ui/viewSelector.js:179
|
||||
msgid "Windows"
|
||||
msgstr "Pencereler"
|
||||
|
||||
@ -840,7 +882,7 @@ msgstr "Konsol"
|
||||
#. 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").
|
||||
#.
|
||||
#: js/ui/dateMenu.js:73
|
||||
#: js/ui/dateMenu.js:75
|
||||
msgid "%B %e %Y"
|
||||
msgstr "%e %B %Y"
|
||||
|
||||
@ -848,18 +890,71 @@ msgstr "%e %B %Y"
|
||||
#. * below the time in the shell; it should combine the weekday and the
|
||||
#. * date, e.g. "Tuesday February 17 2015".
|
||||
#.
|
||||
#: js/ui/dateMenu.js:80
|
||||
#: js/ui/dateMenu.js:82
|
||||
msgid "%A %B %e %Y"
|
||||
msgstr "%e %B %Y %A"
|
||||
|
||||
#: js/ui/dateMenu.js:142
|
||||
#: js/ui/dateMenu.js:144
|
||||
msgid "Add world clocks…"
|
||||
msgstr "Dünya saatlerini ekle…"
|
||||
|
||||
#: js/ui/dateMenu.js:143
|
||||
#: js/ui/dateMenu.js:145
|
||||
msgid "World Clocks"
|
||||
msgstr "Dünya Saatleri"
|
||||
|
||||
#: js/ui/dateMenu.js:224
|
||||
msgid "Weather"
|
||||
msgstr "Hava Durumu"
|
||||
|
||||
#. Translators: %s is a weather condition like "Clear sky"; see
|
||||
#. libgweather for the possible condition strings. If at all
|
||||
#. possible, the sentence should match the grammatical case etc. of
|
||||
#. the inserted conditions.
|
||||
#: js/ui/dateMenu.js:281
|
||||
#, javascript-format
|
||||
msgid "%s all day."
|
||||
msgstr "Gün boyu %s."
|
||||
|
||||
#. Translators: %s is a weather condition like "Clear sky"; see
|
||||
#. libgweather for the possible condition strings. If at all
|
||||
#. possible, the sentence should match the grammatical case etc. of
|
||||
#. the inserted conditions.
|
||||
#: js/ui/dateMenu.js:287
|
||||
#, javascript-format
|
||||
msgid "%s, then %s later."
|
||||
msgstr "%s, daha sonra %s."
|
||||
|
||||
#. Translators: %s is a weather condition like "Clear sky"; see
|
||||
#. libgweather for the possible condition strings. If at all
|
||||
#. possible, the sentence should match the grammatical case etc. of
|
||||
#. the inserted conditions.
|
||||
#: js/ui/dateMenu.js:293
|
||||
#, javascript-format
|
||||
msgid "%s, then %s, followed by %s later."
|
||||
msgstr "%s, daha sonra %s, ardından %s."
|
||||
|
||||
#: js/ui/dateMenu.js:300
|
||||
msgid "Select a location…"
|
||||
msgstr "Bir konum seç…"
|
||||
|
||||
#: js/ui/dateMenu.js:303
|
||||
msgid "Loading…"
|
||||
msgstr "Yükleniyor…"
|
||||
|
||||
#. Translators: %s is a temperature with unit, e.g. "23℃"
|
||||
#: js/ui/dateMenu.js:309
|
||||
#, javascript-format
|
||||
msgid "Feels like %s."
|
||||
msgstr "Hissedilen %s."
|
||||
|
||||
#: js/ui/dateMenu.js:312
|
||||
msgid "Go online for weather information"
|
||||
msgstr "Hava durumu bilgisi için çevrim içi olun"
|
||||
|
||||
#: js/ui/dateMenu.js:314
|
||||
msgid "Weather information is currently unavailable"
|
||||
msgstr "Hava durumu bilgisi şu anda kullanılabilir değil\t"
|
||||
|
||||
#: js/ui/endSessionDialog.js:64
|
||||
#, javascript-format
|
||||
msgctxt "title"
|
||||
@ -1024,74 +1119,66 @@ msgstr "Tepsiyi gizle"
|
||||
msgid "Status Icons"
|
||||
msgstr "Durum Simgeleri"
|
||||
|
||||
#: js/ui/lookingGlass.js:643
|
||||
#: js/ui/lookingGlass.js:642
|
||||
msgid "No extensions installed"
|
||||
msgstr "Herhangi bir uzantı kurulu değil"
|
||||
|
||||
#. Translators: argument is an extension UUID.
|
||||
#: js/ui/lookingGlass.js:697
|
||||
#: js/ui/lookingGlass.js:696
|
||||
#, javascript-format
|
||||
msgid "%s has not emitted any errors."
|
||||
msgstr "%s, herhangi bir hata vermedi."
|
||||
|
||||
#: js/ui/lookingGlass.js:703
|
||||
#: js/ui/lookingGlass.js:702
|
||||
msgid "Hide Errors"
|
||||
msgstr "Hataları Gizle"
|
||||
|
||||
#: js/ui/lookingGlass.js:707 js/ui/lookingGlass.js:767
|
||||
#: js/ui/lookingGlass.js:706 js/ui/lookingGlass.js:766
|
||||
msgid "Show Errors"
|
||||
msgstr "Hataları Göster"
|
||||
|
||||
#: js/ui/lookingGlass.js:716
|
||||
#: js/ui/lookingGlass.js:715
|
||||
msgid "Enabled"
|
||||
msgstr "Etkin"
|
||||
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: js/ui/lookingGlass.js:719 src/gvc/gvc-mixer-control.c:1866
|
||||
#: js/ui/lookingGlass.js:718 src/gvc/gvc-mixer-control.c:1866
|
||||
msgid "Disabled"
|
||||
msgstr "Devre dışı"
|
||||
|
||||
#: js/ui/lookingGlass.js:721
|
||||
#: js/ui/lookingGlass.js:720
|
||||
msgid "Error"
|
||||
msgstr "Hata"
|
||||
|
||||
#: js/ui/lookingGlass.js:723
|
||||
#: js/ui/lookingGlass.js:722
|
||||
msgid "Out of date"
|
||||
msgstr "Güncel değil"
|
||||
|
||||
#: js/ui/lookingGlass.js:725
|
||||
#: js/ui/lookingGlass.js:724
|
||||
msgid "Downloading"
|
||||
msgstr "İndiriliyor"
|
||||
|
||||
#: js/ui/lookingGlass.js:749
|
||||
#: js/ui/lookingGlass.js:748
|
||||
msgid "View Source"
|
||||
msgstr "Kaynağı Görüntüle"
|
||||
|
||||
#: js/ui/lookingGlass.js:758
|
||||
#: js/ui/lookingGlass.js:757
|
||||
msgid "Web Page"
|
||||
msgstr "Web Sayfası"
|
||||
|
||||
#: js/ui/messageList.js:543
|
||||
msgid "Clear section"
|
||||
msgstr "Bölümü temizle"
|
||||
|
||||
#: js/ui/messageTray.js:1486
|
||||
#: js/ui/messageTray.js:1493
|
||||
msgid "System Information"
|
||||
msgstr "Sistem Bilgisi"
|
||||
|
||||
#: js/ui/mpris.js:194
|
||||
#: js/ui/mpris.js:211
|
||||
msgid "Unknown artist"
|
||||
msgstr "Bilinmeyen sanatçı"
|
||||
|
||||
#: js/ui/mpris.js:195
|
||||
#: js/ui/mpris.js:212
|
||||
msgid "Unknown title"
|
||||
msgstr "Bilinmeyen başlık"
|
||||
|
||||
#: js/ui/mpris.js:217
|
||||
msgid "Media"
|
||||
msgstr "Ortam"
|
||||
|
||||
#: js/ui/overview.js:84
|
||||
msgid "Undo"
|
||||
msgstr "Geri Al"
|
||||
@ -1110,47 +1197,47 @@ msgstr "Genel Görünüm"
|
||||
msgid "Type to search…"
|
||||
msgstr "Aramak için buraya yazın..."
|
||||
|
||||
#: js/ui/padOsd.js:37
|
||||
#: js/ui/padOsd.js:103
|
||||
msgid "New shortcut…"
|
||||
msgstr "Yeni kısayol…"
|
||||
|
||||
#: js/ui/padOsd.js:86
|
||||
#: js/ui/padOsd.js:152
|
||||
msgid "Application defined"
|
||||
msgstr "Uygulama tanımlı"
|
||||
|
||||
#: js/ui/padOsd.js:87
|
||||
#: js/ui/padOsd.js:153
|
||||
msgid "Show on-screen help"
|
||||
msgstr "Ekranda yardımı göster"
|
||||
|
||||
#: js/ui/padOsd.js:88
|
||||
#: js/ui/padOsd.js:154
|
||||
msgid "Switch monitor"
|
||||
msgstr "Monitör değiştir"
|
||||
|
||||
#: js/ui/padOsd.js:89
|
||||
#: js/ui/padOsd.js:155
|
||||
msgid "Assign keystroke"
|
||||
msgstr "Tuş vuruşu ata"
|
||||
|
||||
#: js/ui/padOsd.js:143
|
||||
#: js/ui/padOsd.js:209
|
||||
msgid "Done"
|
||||
msgstr "Bitti"
|
||||
|
||||
#: js/ui/padOsd.js:597
|
||||
#: js/ui/padOsd.js:698
|
||||
msgid "Edit…"
|
||||
msgstr "Düzenle…"
|
||||
|
||||
#: js/ui/padOsd.js:610 js/ui/padOsd.js:665
|
||||
#: js/ui/padOsd.js:738 js/ui/padOsd.js:800
|
||||
msgid "None"
|
||||
msgstr "Yok"
|
||||
|
||||
#: js/ui/padOsd.js:648
|
||||
#: js/ui/padOsd.js:783
|
||||
msgid "Press a button to configure"
|
||||
msgstr "Yapılandırmak için bir düğmeye basın"
|
||||
|
||||
#: js/ui/padOsd.js:649
|
||||
#: js/ui/padOsd.js:784
|
||||
msgid "Press Esc to exit"
|
||||
msgstr "Çıkmak için Esc'ye basın"
|
||||
|
||||
#: js/ui/padOsd.js:652
|
||||
#: js/ui/padOsd.js:787
|
||||
msgid "Press any key to exit"
|
||||
msgstr "Çıkmak için herhangi bir tuşa basın"
|
||||
|
||||
@ -1186,7 +1273,7 @@ msgstr "toggle-switch-intl"
|
||||
msgid "Enter a Command"
|
||||
msgstr "Komut Gir"
|
||||
|
||||
#: js/ui/runDialog.js:111 js/ui/windowMenu.js:162
|
||||
#: js/ui/runDialog.js:111 js/ui/windowMenu.js:160
|
||||
msgid "Close"
|
||||
msgstr "Kapat"
|
||||
|
||||
@ -1200,27 +1287,27 @@ msgstr "Yeniden başlatılıyor..."
|
||||
|
||||
#. Translators: This is a time format for a date in
|
||||
#. long format
|
||||
#: js/ui/screenShield.js:85
|
||||
#: js/ui/screenShield.js:88
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%d %B %A"
|
||||
|
||||
#: js/ui/screenShield.js:144
|
||||
#: js/ui/screenShield.js:147
|
||||
#, javascript-format
|
||||
msgid "%d new message"
|
||||
msgid_plural "%d new messages"
|
||||
msgstr[0] "%d yeni ileti"
|
||||
|
||||
#: js/ui/screenShield.js:146
|
||||
#: js/ui/screenShield.js:149
|
||||
#, javascript-format
|
||||
msgid "%d new notification"
|
||||
msgid_plural "%d new notifications"
|
||||
msgstr[0] "%d yeni bildirim"
|
||||
|
||||
#: js/ui/screenShield.js:449 js/ui/status/system.js:409
|
||||
#: js/ui/screenShield.js:452 js/ui/status/system.js:409
|
||||
msgid "Lock"
|
||||
msgstr "Kilitle"
|
||||
|
||||
#: js/ui/screenShield.js:707
|
||||
#: js/ui/screenShield.js:715
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "GNOME'un ekranı kilitlemesi gerekiyor"
|
||||
|
||||
@ -1231,19 +1318,19 @@ msgstr "GNOME'un ekranı kilitlemesi gerekiyor"
|
||||
#.
|
||||
#. XXX: another option is to kick the user into the gdm login
|
||||
#. screen, where we're not affected by grabs
|
||||
#: js/ui/screenShield.js:828 js/ui/screenShield.js:1295
|
||||
#: js/ui/screenShield.js:836 js/ui/screenShield.js:1308
|
||||
msgid "Unable to lock"
|
||||
msgstr "Kilitlenemedi"
|
||||
|
||||
#: js/ui/screenShield.js:829 js/ui/screenShield.js:1296
|
||||
#: js/ui/screenShield.js:837 js/ui/screenShield.js:1309
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "Kilitleme bir uygulama tarafından engellendi"
|
||||
|
||||
#: js/ui/search.js:617
|
||||
#: js/ui/search.js:621
|
||||
msgid "Searching…"
|
||||
msgstr "Aranıyor…"
|
||||
|
||||
#: js/ui/search.js:619
|
||||
#: js/ui/search.js:623
|
||||
msgid "No results."
|
||||
msgstr "Sonuç yok."
|
||||
|
||||
@ -1338,13 +1425,13 @@ msgstr "Kapalı"
|
||||
msgid "On"
|
||||
msgstr "Açık"
|
||||
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:1302
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:1310
|
||||
msgid "Turn On"
|
||||
msgstr "Aç"
|
||||
|
||||
#: js/ui/status/bluetooth.js:142 js/ui/status/network.js:181
|
||||
#: js/ui/status/network.js:367 js/ui/status/network.js:1302
|
||||
#: js/ui/status/network.js:1417 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/network.js:367 js/ui/status/network.js:1310
|
||||
#: js/ui/status/network.js:1429 js/ui/status/nightLight.js:47
|
||||
#: js/ui/status/rfkill.js:90 js/ui/status/rfkill.js:117
|
||||
msgid "Turn Off"
|
||||
msgstr "Kapat"
|
||||
@ -1357,37 +1444,37 @@ msgstr "Parlaklık"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Klavye Düzenini Göster"
|
||||
|
||||
#: js/ui/status/location.js:107 js/ui/status/location.js:215
|
||||
#: js/ui/status/location.js:88 js/ui/status/location.js:196
|
||||
msgid "Location Enabled"
|
||||
msgstr "Konum Etkinleştirildi"
|
||||
|
||||
#: js/ui/status/location.js:108 js/ui/status/location.js:216
|
||||
#: js/ui/status/location.js:89 js/ui/status/location.js:197
|
||||
msgid "Disable"
|
||||
msgstr "Devre Dışı Bırak"
|
||||
|
||||
#: js/ui/status/location.js:109
|
||||
#: js/ui/status/location.js:90
|
||||
msgid "Privacy Settings"
|
||||
msgstr "Gizlilik Ayarları"
|
||||
|
||||
#: js/ui/status/location.js:214
|
||||
#: js/ui/status/location.js:195
|
||||
msgid "Location In Use"
|
||||
msgstr "Konum Kullanımda"
|
||||
|
||||
#: js/ui/status/location.js:218
|
||||
#: js/ui/status/location.js:199
|
||||
msgid "Location Disabled"
|
||||
msgstr "Konum Devre Dışı"
|
||||
|
||||
#: js/ui/status/location.js:219
|
||||
#: js/ui/status/location.js:200
|
||||
msgid "Enable"
|
||||
msgstr "Etkinleştir"
|
||||
|
||||
#. Translators: %s is an application name
|
||||
#: js/ui/status/location.js:436
|
||||
#: js/ui/status/location.js:414
|
||||
#, javascript-format
|
||||
msgid "Give %s access to your location?"
|
||||
msgstr "%s uygulaması konumunuza erişebilsin mi?"
|
||||
|
||||
#: js/ui/status/location.js:438
|
||||
#: js/ui/status/location.js:416
|
||||
msgid "Location access can be changed at any time from the privacy settings."
|
||||
msgstr "Konum erişimi, gizlilik ayarlarından her zaman değiştirilebilir."
|
||||
|
||||
@ -1396,7 +1483,7 @@ msgid "<unknown>"
|
||||
msgstr "<bilinmeyen>"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:465 js/ui/status/network.js:1331
|
||||
#: js/ui/status/network.js:465 js/ui/status/network.js:1339
|
||||
#, javascript-format
|
||||
msgid "%s Off"
|
||||
msgstr "%s Kapalı"
|
||||
@ -1422,7 +1509,7 @@ msgid "%s Disconnecting"
|
||||
msgstr "%s Bağlantısı Kesiliyor"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:483 js/ui/status/network.js:1323
|
||||
#: js/ui/status/network.js:483 js/ui/status/network.js:1331
|
||||
#, javascript-format
|
||||
msgid "%s Connecting"
|
||||
msgstr "%s Bağlanıyor"
|
||||
@ -1462,7 +1549,7 @@ msgid "Mobile Broadband Settings"
|
||||
msgstr "Mobil Geniş Bant Ayarları"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:602 js/ui/status/network.js:1328
|
||||
#: js/ui/status/network.js:602 js/ui/status/network.js:1336
|
||||
#, javascript-format
|
||||
msgid "%s Hardware Disabled"
|
||||
msgstr "%s Donanımı Devre Dışı"
|
||||
@ -1478,119 +1565,119 @@ msgstr "%s Devre Dışı"
|
||||
msgid "Connect to Internet"
|
||||
msgstr "İnternet'e Bağlan"
|
||||
|
||||
#: js/ui/status/network.js:836
|
||||
#: js/ui/status/network.js:844
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "Uçak Kipi Açık"
|
||||
|
||||
#: js/ui/status/network.js:837
|
||||
#: js/ui/status/network.js:845
|
||||
msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr "Uçak kipi açıldığında kablosuz ağ devre dışı kalır."
|
||||
|
||||
#: js/ui/status/network.js:838
|
||||
#: js/ui/status/network.js:846
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "Uçak Kipini Kapat"
|
||||
|
||||
#: js/ui/status/network.js:847
|
||||
#: js/ui/status/network.js:855
|
||||
msgid "Wi-Fi is Off"
|
||||
msgstr "Kablosuz Ağ Kapalı"
|
||||
|
||||
#: js/ui/status/network.js:848
|
||||
#: js/ui/status/network.js:856
|
||||
msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr "Bir ağa bağlanmak için kablosuz ağın açık olması gerekir."
|
||||
|
||||
#: js/ui/status/network.js:849
|
||||
#: js/ui/status/network.js:857
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "Kablosuz Ağı Aç"
|
||||
|
||||
#: js/ui/status/network.js:874
|
||||
#: js/ui/status/network.js:882
|
||||
msgid "Wi-Fi Networks"
|
||||
msgstr "Kablosuz Ağlar"
|
||||
|
||||
#: js/ui/status/network.js:876
|
||||
#: js/ui/status/network.js:884
|
||||
msgid "Select a network"
|
||||
msgstr "Bir ağ seçin"
|
||||
|
||||
#: js/ui/status/network.js:906
|
||||
#: js/ui/status/network.js:914
|
||||
msgid "No Networks"
|
||||
msgstr "Ağ Yok"
|
||||
|
||||
#: js/ui/status/network.js:927 js/ui/status/rfkill.js:115
|
||||
#: js/ui/status/network.js:935 js/ui/status/rfkill.js:115
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr "Kapatmak için donanım anahtarını kullanın."
|
||||
|
||||
#: js/ui/status/network.js:1194
|
||||
#: js/ui/status/network.js:1202
|
||||
msgid "Select Network"
|
||||
msgstr "Ağ Seç"
|
||||
|
||||
#: js/ui/status/network.js:1200
|
||||
#: js/ui/status/network.js:1208
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Kablosuz Ağ Ayarları"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:1319
|
||||
#: js/ui/status/network.js:1327
|
||||
#, javascript-format
|
||||
msgid "%s Hotspot Active"
|
||||
msgstr "%s Erişim Noktası Etkin"
|
||||
|
||||
#. Translators: %s is a network identifier
|
||||
#: js/ui/status/network.js:1334
|
||||
#: js/ui/status/network.js:1342
|
||||
#, javascript-format
|
||||
msgid "%s Not Connected"
|
||||
msgstr "%s Bağlı Değil"
|
||||
|
||||
#: js/ui/status/network.js:1434
|
||||
#: js/ui/status/network.js:1446
|
||||
msgid "connecting…"
|
||||
msgstr "bağlanıyor…"
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password
|
||||
#: js/ui/status/network.js:1437
|
||||
#: js/ui/status/network.js:1449
|
||||
msgid "authentication required"
|
||||
msgstr "kimlik doğrulaması gerekli"
|
||||
|
||||
#: js/ui/status/network.js:1439
|
||||
#: js/ui/status/network.js:1451
|
||||
msgid "connection failed"
|
||||
msgstr "bağlantı başarısız"
|
||||
|
||||
#: js/ui/status/network.js:1505 js/ui/status/network.js:1600
|
||||
#: js/ui/status/network.js:1517 js/ui/status/network.js:1612
|
||||
#: js/ui/status/rfkill.js:93
|
||||
msgid "Network Settings"
|
||||
msgstr "Ağ Ayarları"
|
||||
|
||||
#: js/ui/status/network.js:1507
|
||||
#: js/ui/status/network.js:1519
|
||||
msgid "VPN Settings"
|
||||
msgstr "VPN Ayarları"
|
||||
|
||||
#: js/ui/status/network.js:1526
|
||||
#: js/ui/status/network.js:1538
|
||||
msgid "VPN"
|
||||
msgstr "VPN"
|
||||
|
||||
#: js/ui/status/network.js:1536
|
||||
#: js/ui/status/network.js:1548
|
||||
msgid "VPN Off"
|
||||
msgstr "VPN Kapalı"
|
||||
|
||||
#: js/ui/status/network.js:1631
|
||||
#: js/ui/status/network.js:1643
|
||||
#, javascript-format
|
||||
msgid "%s Wired Connection"
|
||||
msgid_plural "%s Wired Connections"
|
||||
msgstr[0] "%s Kablolu Bağlantı"
|
||||
|
||||
#: js/ui/status/network.js:1635
|
||||
#: js/ui/status/network.js:1647
|
||||
#, javascript-format
|
||||
msgid "%s Wi-Fi Connection"
|
||||
msgid_plural "%s Wi-Fi Connections"
|
||||
msgstr[0] "%s Kablosuz Ağ Bağlantısı"
|
||||
|
||||
#: js/ui/status/network.js:1639
|
||||
#: js/ui/status/network.js:1651
|
||||
#, javascript-format
|
||||
msgid "%s Modem Connection"
|
||||
msgid_plural "%s Modem Connections"
|
||||
msgstr[0] "%s Modem Bağlantısı"
|
||||
|
||||
#: js/ui/status/network.js:1786
|
||||
#: js/ui/status/network.js:1798
|
||||
msgid "Connection failed"
|
||||
msgstr "Bağlantı başarısız oldu"
|
||||
|
||||
#: js/ui/status/network.js:1787
|
||||
#: js/ui/status/network.js:1799
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Ağ bağlantısının etkinleştirilmesi başarısız oldu"
|
||||
|
||||
@ -1688,11 +1775,11 @@ msgstr "Başka kullanıcı olarak oturum aç"
|
||||
msgid "Unlock Window"
|
||||
msgstr "Kilit Açma Penceresi"
|
||||
|
||||
#: js/ui/viewSelector.js:182
|
||||
#: js/ui/viewSelector.js:183
|
||||
msgid "Applications"
|
||||
msgstr "Uygulamalar"
|
||||
|
||||
#: js/ui/viewSelector.js:186
|
||||
#: js/ui/viewSelector.js:187
|
||||
msgid "Search"
|
||||
msgstr "Ara"
|
||||
|
||||
@ -1701,22 +1788,22 @@ msgstr "Ara"
|
||||
msgid "“%s” is ready"
|
||||
msgstr "“%s” hazır"
|
||||
|
||||
#: js/ui/windowManager.js:83
|
||||
#: js/ui/windowManager.js:84
|
||||
msgid "Do you want to keep these display settings?"
|
||||
msgstr "Bu görüntü ayarlarını saklamak istiyor musunuz?"
|
||||
|
||||
#. Translators: this and the following message should be limited in lenght,
|
||||
#. to avoid ellipsizing the labels.
|
||||
#.
|
||||
#: js/ui/windowManager.js:102
|
||||
#: js/ui/windowManager.js:103
|
||||
msgid "Revert Settings"
|
||||
msgstr "Ayarları Eski Haline Getir"
|
||||
|
||||
#: js/ui/windowManager.js:105
|
||||
#: js/ui/windowManager.js:106
|
||||
msgid "Keep Changes"
|
||||
msgstr "Değişiklikleri Sakla"
|
||||
|
||||
#: js/ui/windowManager.js:123
|
||||
#: js/ui/windowManager.js:124
|
||||
#, javascript-format
|
||||
msgid "Settings changes will revert in %d second"
|
||||
msgid_plural "Settings changes will revert in %d seconds"
|
||||
@ -1724,7 +1811,7 @@ msgstr[0] "Ayarlardaki değişiklikler %d saniye içinde eski haline döndürül
|
||||
|
||||
#. Translators: This represents the size of a window. The first number is
|
||||
#. * the width of the window and the second is the height.
|
||||
#: js/ui/windowManager.js:678
|
||||
#: js/ui/windowManager.js:679
|
||||
#, javascript-format
|
||||
msgid "%d × %d"
|
||||
msgstr "%d × %d"
|
||||
@ -1761,35 +1848,35 @@ msgstr "Her Zaman Üstte"
|
||||
msgid "Always on Visible Workspace"
|
||||
msgstr "Her Zaman Görünür Çalışma Alanında"
|
||||
|
||||
#: js/ui/windowMenu.js:105
|
||||
#: js/ui/windowMenu.js:103
|
||||
msgid "Move to Workspace Left"
|
||||
msgstr "Soldaki Çalışma Alanına Taşı"
|
||||
|
||||
#: js/ui/windowMenu.js:110
|
||||
#: js/ui/windowMenu.js:108
|
||||
msgid "Move to Workspace Right"
|
||||
msgstr "Sağdaki Çalışma Alanına Taşı"
|
||||
|
||||
#: js/ui/windowMenu.js:115
|
||||
#: js/ui/windowMenu.js:113
|
||||
msgid "Move to Workspace Up"
|
||||
msgstr "Üstteki Çalışma Alanına Taşı"
|
||||
|
||||
#: js/ui/windowMenu.js:120
|
||||
#: js/ui/windowMenu.js:118
|
||||
msgid "Move to Workspace Down"
|
||||
msgstr "Alttaki Çalışma Alanına Taşı"
|
||||
|
||||
#: js/ui/windowMenu.js:136
|
||||
#: js/ui/windowMenu.js:134
|
||||
msgid "Move to Monitor Up"
|
||||
msgstr "Üstteki Monitöre Taşı"
|
||||
|
||||
#: js/ui/windowMenu.js:142
|
||||
#: js/ui/windowMenu.js:140
|
||||
msgid "Move to Monitor Down"
|
||||
msgstr "Alttaki Monitöre Taşı"
|
||||
|
||||
#: js/ui/windowMenu.js:148
|
||||
#: js/ui/windowMenu.js:146
|
||||
msgid "Move to Monitor Left"
|
||||
msgstr "Soldaki Monitöre Taşı"
|
||||
|
||||
#: js/ui/windowMenu.js:154
|
||||
#: js/ui/windowMenu.js:152
|
||||
msgid "Move to Monitor Right"
|
||||
msgstr "Sağdaki Monitöre Taşı"
|
||||
|
||||
@ -1822,19 +1909,19 @@ msgstr[0] "%u Girdi"
|
||||
msgid "System Sounds"
|
||||
msgstr "Sistem Sesleri"
|
||||
|
||||
#: src/main.c:381
|
||||
#: src/main.c:372
|
||||
msgid "Print version"
|
||||
msgstr "Sürümü yazdır"
|
||||
|
||||
#: src/main.c:387
|
||||
#: src/main.c:378
|
||||
msgid "Mode used by GDM for login screen"
|
||||
msgstr "Oturum açma ekranında GDM tarafından kullanılan kip"
|
||||
|
||||
#: src/main.c:393
|
||||
#: src/main.c:384
|
||||
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
||||
msgstr "Oturum açma ekranı için -“gdm” gibi- özel bir kip kullan"
|
||||
|
||||
#: src/main.c:399
|
||||
#: src/main.c:390
|
||||
msgid "List possible modes"
|
||||
msgstr "Mevcut kipleri listele"
|
||||
|
||||
@ -1860,6 +1947,18 @@ msgstr "Parola boş bırakılamaz"
|
||||
msgid "Authentication dialog was dismissed by the user"
|
||||
msgstr "Kimlik doğrulama penceresi kullanıcı tarafından kapatıldı"
|
||||
|
||||
#~ msgid "Events"
|
||||
#~ msgstr "Olaylar"
|
||||
|
||||
#~ msgid "Notifications"
|
||||
#~ msgstr "Bildirimler"
|
||||
|
||||
#~ msgid "Clear section"
|
||||
#~ msgstr "Bölümü temizle"
|
||||
|
||||
#~ msgid "Media"
|
||||
#~ msgstr "Ortam"
|
||||
|
||||
#~ msgid "GNOME Shell Extension Preferences"
|
||||
#~ msgstr "GNOME Kabuğu Eklenti Tercihleri"
|
||||
|
||||
|
@ -68,7 +68,6 @@ main(int argc, char **argv)
|
||||
if (clutter_init (&argc, &argv) != CLUTTER_INIT_SUCCESS)
|
||||
return 1;
|
||||
|
||||
g_object_set (clutter_settings_get_default (), "window-scaling-factor", 1, NULL);
|
||||
gdk_x11_display_set_window_scale (gdk_display_get_default (), 1);
|
||||
|
||||
context = g_option_context_new (NULL);
|
||||
|
@ -22,6 +22,7 @@
|
||||
#include <gdk/gdkx.h>
|
||||
#include <gio/gio.h>
|
||||
#include <girepository.h>
|
||||
#include <meta/meta-backend.h>
|
||||
#include <meta/display.h>
|
||||
#include <meta/util.h>
|
||||
#include <meta/meta-shaped-texture.h>
|
||||
@ -833,35 +834,38 @@ global_stage_after_swap (gpointer data)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
update_scale_factor (GtkSettings *settings,
|
||||
GParamSpec *pspec,
|
||||
gpointer data)
|
||||
update_scaling_factor (ShellGlobal *global,
|
||||
MetaBackend *backend)
|
||||
|
||||
{
|
||||
ShellGlobal *global = SHELL_GLOBAL (data);
|
||||
ClutterStage *stage = CLUTTER_STAGE (global->stage);
|
||||
StThemeContext *context = st_theme_context_get_for_stage (stage);
|
||||
GValue value = G_VALUE_INIT;
|
||||
int scaling_factor;
|
||||
|
||||
g_value_init (&value, G_TYPE_INT);
|
||||
if (gdk_screen_get_setting (global->gdk_screen, "gdk-window-scaling-factor", &value))
|
||||
scaling_factor = meta_backend_get_ui_scaling_factor (backend);
|
||||
|
||||
g_object_set (context, "scale-factor", scaling_factor, NULL);
|
||||
if (meta_is_wayland_compositor ())
|
||||
{
|
||||
g_object_set (context, "scale-factor", g_value_get_int (&value), NULL);
|
||||
if (meta_is_wayland_compositor ())
|
||||
{
|
||||
int xft_dpi;
|
||||
g_object_get (settings, "gtk-xft-dpi", &xft_dpi, NULL);
|
||||
GtkSettings *settings = gtk_settings_get_default ();
|
||||
int xft_dpi;
|
||||
|
||||
g_object_set (clutter_settings_get_default (), "font-dpi", xft_dpi, NULL);
|
||||
}
|
||||
g_object_get (settings, "gtk-xft-dpi", &xft_dpi, NULL);
|
||||
g_object_set (clutter_settings_get_default (), "font-dpi", xft_dpi, NULL);
|
||||
}
|
||||
|
||||
/* Make sure clutter and gdk scaling stays disabled */
|
||||
g_object_set (clutter_settings_get_default (), "window-scaling-factor", 1, NULL);
|
||||
gdk_x11_display_set_window_scale (gdk_display_get_default (), 1);
|
||||
}
|
||||
|
||||
static void
|
||||
ui_scaling_factor_changed (MetaBackend *backend,
|
||||
ShellGlobal *global)
|
||||
{
|
||||
update_scaling_factor (global, backend);
|
||||
}
|
||||
|
||||
/* This is an IBus workaround. The flow of events with IBus is that every time
|
||||
* it gets gets a key event, it:
|
||||
*
|
||||
@ -965,6 +969,8 @@ void
|
||||
_shell_global_set_plugin (ShellGlobal *global,
|
||||
MetaPlugin *plugin)
|
||||
{
|
||||
MetaBackend *backend;
|
||||
|
||||
g_return_if_fail (SHELL_IS_GLOBAL (global));
|
||||
g_return_if_fail (global->plugin == NULL);
|
||||
|
||||
@ -1045,18 +1051,15 @@ _shell_global_set_plugin (ShellGlobal *global,
|
||||
g_signal_connect (global->meta_display, "notify::focus-window",
|
||||
G_CALLBACK (focus_window_changed), global);
|
||||
|
||||
/* gdk-window-scaling-factor is not exported to gtk-settings
|
||||
* because it is handled inside gdk, so we use gtk-xft-dpi instead
|
||||
* which also changes when the scale factor changes.
|
||||
*/
|
||||
g_signal_connect (gtk_settings_get_default (), "notify::gtk-xft-dpi",
|
||||
G_CALLBACK (update_scale_factor), global);
|
||||
backend = meta_get_backend ();
|
||||
g_signal_connect (backend, "ui-scaling-factor-changed",
|
||||
G_CALLBACK (ui_scaling_factor_changed), global);
|
||||
|
||||
gdk_event_handler_set (gnome_shell_gdk_event_handler, global, NULL);
|
||||
|
||||
global->focus_manager = st_focus_manager_get_for_stage (global->stage);
|
||||
|
||||
update_scale_factor (gtk_settings_get_default (), NULL, global);
|
||||
update_scaling_factor (global, meta_get_backend ());
|
||||
}
|
||||
|
||||
GjsContext *
|
||||
|
@ -23,8 +23,6 @@
|
||||
#include <string.h>
|
||||
#include <dbus/dbus-glib.h>
|
||||
|
||||
/* For use of unstable features in libsecret, until they stabilize */
|
||||
#define SECRET_API_SUBJECT_TO_CHANGE
|
||||
#include <libsecret/secret.h>
|
||||
|
||||
#include "shell-network-agent.h"
|
||||
|
@ -1142,7 +1142,7 @@ _st_entry_icon_press_cb (ClutterActor *actor,
|
||||
ClutterButtonEvent *event,
|
||||
StEntry *entry)
|
||||
{
|
||||
StEntryPrivate *priv = ST_ENTRY_PRIV (actor);
|
||||
StEntryPrivate *priv = ST_ENTRY_PRIV (entry);
|
||||
|
||||
if (actor == priv->primary_icon)
|
||||
g_signal_emit (entry, entry_signals[PRIMARY_ICON_CLICKED], 0);
|
||||
|
@ -180,7 +180,7 @@ st_shadow_get_box (StShadow *shadow,
|
||||
}
|
||||
|
||||
/**
|
||||
* SECTION:st-shadow-helper:
|
||||
* SECTION: st-shadow-helper
|
||||
*
|
||||
* An helper for implementing a drop shadow on a actor.
|
||||
* The actor is expected to recreate the helper whenever its contents
|
||||
|
@ -448,6 +448,8 @@ load_pixbuf_thread (GTask *result,
|
||||
g_task_return_error (result, error);
|
||||
else if (pixbuf)
|
||||
g_task_return_pointer (result, g_object_ref (pixbuf), g_object_unref);
|
||||
|
||||
g_clear_object (&pixbuf);
|
||||
}
|
||||
|
||||
static GdkPixbuf *
|
||||
@ -1038,18 +1040,22 @@ on_sliced_image_loaded (GObject *source_object,
|
||||
GObject *cache = source_object;
|
||||
AsyncImageData *data = (AsyncImageData *)user_data;
|
||||
GTask *task = G_TASK (res);
|
||||
GList *list;
|
||||
GList *list, *pixbufs;
|
||||
|
||||
if (g_task_had_error (task))
|
||||
return;
|
||||
|
||||
for (list = g_task_propagate_pointer (task, NULL); list; list = list->next)
|
||||
pixbufs = g_task_propagate_pointer (task, NULL);
|
||||
|
||||
for (list = pixbufs; list; list = list->next)
|
||||
{
|
||||
ClutterActor *actor = load_from_pixbuf (GDK_PIXBUF (list->data));
|
||||
clutter_actor_hide (actor);
|
||||
clutter_actor_add_child (data->actor, actor);
|
||||
}
|
||||
|
||||
g_list_free_full (pixbufs, g_object_unref);
|
||||
|
||||
if (data->load_callback != NULL)
|
||||
data->load_callback (cache, data->load_callback_data);
|
||||
}
|
||||
@ -1057,12 +1063,7 @@ on_sliced_image_loaded (GObject *source_object,
|
||||
static void
|
||||
free_glist_unref_gobjects (gpointer p)
|
||||
{
|
||||
GList *list = p;
|
||||
GList *iter;
|
||||
|
||||
for (iter = list; iter; iter = iter->next)
|
||||
g_object_unref (iter->data);
|
||||
g_list_free (list);
|
||||
g_list_free_full (p, g_object_unref);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -1,6 +1,6 @@
|
||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||
|
||||
// Test cases for Calendar markup parsing
|
||||
// Test cases for MessageList markup parsing
|
||||
|
||||
const JsUnit = imports.jsUnit;
|
||||
const Pango = imports.gi.Pango;
|
||||
@ -8,7 +8,7 @@ const Pango = imports.gi.Pango;
|
||||
const Environment = imports.ui.environment;
|
||||
Environment.init();
|
||||
|
||||
const Calendar = imports.ui.calendar;
|
||||
const MessageList = imports.ui.messageList;
|
||||
|
||||
// Assert that @input, assumed to be markup, gets "fixed" to @output,
|
||||
// which is valid markup. If @output is null, @input is expected to
|
||||
@ -16,7 +16,7 @@ const Calendar = imports.ui.calendar;
|
||||
function assertConverts(input, output) {
|
||||
if (!output)
|
||||
output = input;
|
||||
let fixed = Calendar._fixMarkup(input, true);
|
||||
let fixed = MessageList._fixMarkup(input, true);
|
||||
JsUnit.assertEquals(output, fixed);
|
||||
|
||||
let parsed = false;
|
||||
@ -30,7 +30,7 @@ function assertConverts(input, output) {
|
||||
// Assert that @input, assumed to be plain text, gets escaped to @output,
|
||||
// which is valid markup.
|
||||
function assertEscapes(input, output) {
|
||||
let fixed = Calendar._fixMarkup(input, false);
|
||||
let fixed = MessageList._fixMarkup(input, false);
|
||||
JsUnit.assertEquals(output, fixed);
|
||||
|
||||
let parsed = false;
|
||||
|
Reference in New Issue
Block a user