Compare commits

..

7 Commits

Author SHA1 Message Date
Benjamin Berg
ff1b411f74 data: Add desktop autostart file for extension warning
Adding this file allows gnome-session to trigger the warning after it
disabled extensions in the non-systemd case.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/695
2019-08-30 18:58:50 +02:00
Benjamin Berg
098114f4c8 data: Add systemd service file for extension disabled warning
Show the extension preferences UI right after login if the last session
failed and extensions have been disabled because of this.

This adds the files for the systemd session case.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/695
2019-08-30 18:58:50 +02:00
Benjamin Berg
9a49b20fac extensionPrefs: Delete disabled warning marker
It isn't possible to easily delete the marker from an XDG autostart
file, so make it on startup to simplify that. This is in preparation
for the next commit which adds the appropriate autostart file.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/695
2019-08-30 18:58:50 +02:00
Benjamin Berg
d9775e41b2 extensionSystem: Allow disabling extensions when globally disabled
The canChange property was not actually reflecting whether
the enableExtension or disableExtension can change the underlying
setting. Instead the property was showing whether such a change will
have an effect.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/695
2019-08-30 18:58:30 +02:00
Benjamin Berg
5796a5d193 extensionPrefs: Reflect whether extension is requested in active state
To do this, simply use the new isRequested property to properly reflect
the underlying settings key rather than the actual loaded state of the
extension.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/695
2019-08-30 18:56:24 +02:00
Benjamin Berg
afefc88e02 extensionSystem: Add isRequested property for extensions
The property reflects whether the extension is enabled in the setting.
This does not mean that the extension is actually loaded, the API user
must check the state property for this information.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/695
2019-08-30 17:19:23 +02:00
Benjamin Berg
44cd1ae25b extensionPrefs: Add ability to warn about extensions being disabled
If we disable extensions after a gnome-shell failure, then we should
warn the user about this happening. The old concept was to do so in the
fail-whale, but we can't even show the fail-whale when running on
wayland.

Adding this option allows starting up the preference dialog on the next
log in and telling the user what happened then. This means we can both
tell the user what is going on and enable them to solve the issue at the
same time.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/695
2019-08-30 16:09:26 +02:00
37 changed files with 5786 additions and 11652 deletions

34
NEWS
View File

@@ -1,37 +1,3 @@
3.34.0
======
* Handle startup/shutdown of misc X11 services [Carlos; !680]
* Fix sound volume mute/unmute [Iain; #1557]
* Correctly terminate pasted text [Carlos; #1570]
Contributors:
Carlos Garnacho, Iain Lane
Translators:
Tom Tryfonidis [el], Milo Casagrande [it], Ryuta Fujii [ja],
Efstathios Iosifidis [el], Carmen Bianca BAKKER [eo], Sabri Ünal [tr],
Dušan Kazik [sk], Balázs Meskó [hu], Claude Paroz [fr]
3.33.92
=======
* Animate pointer a11y pie timer [Jonas D.; !688]
* Fix restarting shell in systemd user session [Benjamin; !690]
* Misc. bug fixes and cleanups [Florian, Jonas D., Jonas Å., Will;
!691, !689, !692, #1552, !698]
Contributors:
Jonas Ådahl, Benjamin Berg, Piotr Drąg, Jonas Dreßler, Florian Müllner,
Will Thompson
Translators:
Daniel Șerbănescu [ro], Danial Behzadi [fa], Daniel Mustieles [es],
Jiri Grönroos [fi], Asier Sarasua Garmendia [eu], Piotr Drąg [pl],
Rūdolfs Mazurs [lv], Anders Jonsson [sv], Fran Dieguez [gl], Jordi Mas [ca],
Matej Urbančič [sl], Zander Brown [en_GB], Ryuta Fujii [ja], Tim Sabsch [de],
Fabio Tomat [fur], Pawan Chitrakar [ne], A S Alam [pa], Changwoo Ryu [ko],
Aurimas Černius [lt], Daniel Rusek [cs], Marek Černocký [cs],
Kukuh Syafaat [id], Goran Vidović [hr], Rafael Fontenelle [pt_BR]
3.33.91
=======
* Fix regression when adjusting brightness [Florian; #1500]

View File

@@ -0,0 +1,12 @@
[Desktop Entry]
Type=Application
Name=GNOME Shell Extensions Disabled Warning
Comment=Warning shown if extensions were disabled due to a failure
Exec=@bindir@/gnome-shell-extension-prefs --disabled-warning
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-shell
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-Version=@VERSION@
OnlyShowIn=GNOME;
AutostartCondition=if-exists gnome-shell-extensions-disabled-warning
X-GNOME-HiddenUnderSystemd=@systemd_hidden@

View File

@@ -0,0 +1,13 @@
[Unit]
Description=Warn about GNOME Shell extensions being disabled
ConditionPathExists=%E/gnome-shell-extensions-disabled-warning
Requisite=gnome-session.target
After=gnome-session.target
[Service]
Type=simple
ExecStartPre=-/bin/rm %E/gnome-shell-extensions-disabled-warning
ExecStart=@bindir@/gnome-shell-extension-prefs --disabled-warning
Restart=no

View File

@@ -8,3 +8,5 @@ Before=gnome-session-initialized.target
Requires=gnome-shell-wayland.service
After=gnome-shell-wayland.service
Wants=gnome-shell-extensions-disabled-warning.service

View File

@@ -8,3 +8,5 @@ Before=gnome-session-initialized.target
Requires=gnome-shell-x11.service
After=gnome-shell-x11.service
Wants=gnome-shell-extensions-disabled-warning.service

View File

@@ -31,6 +31,19 @@ foreach desktop_file : desktop_files
)
endforeach
i18n.merge_file('desktop',
input: configure_file(
input: 'gnome-shell-extensions-disabled-warning.desktop.in.in',
output: 'gnome-shell-extensions-disabled-warning.desktop.in',
configuration: desktopconf
),
output: 'gnome-shell-extension-disabled-warning.desktop',
po_dir: po_dir,
install: true,
install_dir: autostartdir,
type: 'desktop'
)
serviceconf = configuration_data()
serviceconf.set('libexecdir', libexecdir)
foreach service_file : service_files

View File

@@ -10,7 +10,7 @@ const _ = Gettext.gettext;
const Config = imports.misc.config;
const ExtensionUtils = imports.misc.extensionUtils;
const { loadInterfaceXML } = imports.misc.fileUtils;
const { loadInterfaceXML, deleteGFile } = imports.misc.fileUtils;
const { ExtensionState } = ExtensionUtils;
@@ -219,10 +219,33 @@ var Application = GObject.registerClass({
Gio.SettingsBindFlags.DEFAULT |
Gio.SettingsBindFlags.INVERT_BOOLEAN);
let vbox = new Gtk.Box({ orientation: Gtk.Orientation.VERTICAL });
this._window.add(vbox);
this.disabledInfobar = new Gtk.InfoBar({
message_type: Gtk.MessageType.ERROR,
revealed: false,
show_close_button: true
});
this.disabledInfobar.connect('response', () => {
this.disabledInfobar.revealed = false;
});
let contentArea = this.disabledInfobar.get_content_area();
let label = new Gtk.Label({
label: _('A problem was detected and extensions were automatically disabled. It is recommended to disable or reconfigure any extensions that may have caused the issue before re-enabling them at the top.'),
ellipsize: Pango.EllipsizeMode.END,
wrap: true,
lines: 2,
xalign: 0,
margin: 6
});
contentArea.add(label);
vbox.add(this.disabledInfobar);
this._mainStack = new Gtk.Stack({
transition_type: Gtk.StackTransitionType.CROSSFADE
});
this._window.add(this._mainStack);
vbox.add(this._mainStack);
let scroll = new Gtk.ScrolledWindow({ hscrollbar_policy: Gtk.PolicyType.NEVER });
@@ -338,6 +361,20 @@ var Application = GObject.registerClass({
let args = commandLine.get_arguments();
if (args.length) {
if (args[0] == '--disabled-warning') {
if (!this._settings.is_writable('disable-user-extensions'))
this.quit();
this.disabledInfobar.set_revealed(true);
let file = GLib.build_filenamev ([GLib.get_user_config_dir(), 'gnome-shell-extensions-disabled-warning']);
let gfile = Gio.File.new_for_path(file);
if (gfile.query_exists(null))
deleteGFile(gfile);
return 0;
}
let uuid = args[0];
this._skipMainWindow = true;
@@ -574,8 +611,11 @@ class ExtensionRow extends Gtk.ListBoxRow {
this._extension = ExtensionUtils.deserializeExtension(newState);
let state = (this._extension.state == ExtensionState.ENABLED);
this._switch.freeze_notify();
this._switch.state = state;
this._switch.active = this._extension.isRequested;
this._switch.sensitive = this._canToggle();
this._switch.thaw_notify();
});
this.connect('destroy', this._onDestroy.bind(this));
@@ -644,7 +684,6 @@ class ExtensionRow extends Gtk.ListBoxRow {
this._switch = new Gtk.Switch({
valign: Gtk.Align.CENTER,
sensitive: this._canToggle(),
state: this._extension.state === ExtensionState.ENABLED
});
this._switch.connect('notify::active', () => {
if (this._switch.active)
@@ -653,6 +692,11 @@ class ExtensionRow extends Gtk.ListBoxRow {
this._app.shellProxy.DisableExtensionRemote(this.uuid);
});
this._switch.connect('state-set', () => true);
this._switch.freeze_notify();
this._switch.state = this._extension.state === ExtensionState.ENABLED;
this._switch.active = this._extension.isRequested;
this._switch.thaw_notify();
hbox.add(this._switch);
}

View File

@@ -31,7 +31,7 @@ var ExtensionState = {
UNINSTALLED: 99
};
const SERIALIZED_PROPERTIES = ['type', 'state', 'path', 'error', 'hasPrefs', 'canChange'];
const SERIALIZED_PROPERTIES = ['type', 'state', 'path', 'error', 'hasPrefs', 'canChange', 'isRequested'];
/**
* getCurrentExtension:

View File

@@ -59,19 +59,15 @@ var IBusManager = class {
this._spawn();
}
_spawn(extraArgs = []) {
_spawn() {
try {
let cmdLine = ['ibus-daemon', '--panel', 'disable', ...extraArgs];
Gio.Subprocess.new(cmdLine, Gio.SubprocessFlags.NONE);
Gio.Subprocess.new(['ibus-daemon', '--xim', '--panel', 'disable'],
Gio.SubprocessFlags.NONE);
} catch (e) {
log(`Failed to launch ibus-daemon: ${e.message}`);
}
}
restartDaemon(extraArgs = []) {
this._spawn(['-r', ...extraArgs]);
}
_clear() {
if (this._panelService)
this._panelService.destroy();
@@ -84,6 +80,8 @@ var IBusManager = class {
this._currentEngineName = null;
this.emit('ready', false);
this._spawn();
}
_onConnected() {

View File

@@ -352,15 +352,12 @@ class EndSessionDialog extends ModalDialog.ModalDialog {
}
// It only makes sense to check for this permission if PackageKit is available.
Polkit.Permission.new(
'org.freedesktop.packagekit.trigger-offline-update', null, null,
(source, res) => {
try {
this._updatesPermission = Polkit.Permission.new_finish(res);
} catch (e) {
log(`No permission to trigger offline updates: ${e}`);
}
});
try {
this._updatesPermission = Polkit.Permission.new_sync(
'org.freedesktop.packagekit.trigger-offline-update', null, null);
} catch (e) {
log('No permission to trigger offline updates: %s'.format(e.toString()));
}
}
_onDestroy() {

View File

@@ -22,6 +22,7 @@ var ExtensionManager = class {
this._extensions = new Map();
this._enabledExtensions = [];
this._requestedExtensions = [];
this._extensionOrder = [];
Main.sessionMode.connect('updated', this._sessionUpdated.bind(this));
@@ -250,6 +251,9 @@ var ExtensionManager = class {
// Default to error, we set success as the last step
extension.state = ExtensionState.ERROR;
let requested = this._requestedExtensions.includes(extension.uuid);
extension.isRequested = requested;
let checkVersion = !global.settings.get_boolean(EXTENSION_DISABLE_VERSION_CHECK_KEY);
if (checkVersion && ExtensionUtils.isOutOfDate(extension)) {
@@ -363,10 +367,7 @@ var ExtensionManager = class {
? DISABLE_USER_EXTENSIONS_KEY
: ENABLED_EXTENSIONS_KEY;
extension.canChange =
!hasError &&
global.settings.is_writable(changeKey) &&
(isMode || !modeOnly);
extension.canChange = global.settings.is_writable(ENABLED_EXTENSIONS_KEY);
}
_getEnabledExtensions() {
@@ -380,6 +381,14 @@ var ExtensionManager = class {
return extensions.filter(item => !disabledExtensions.includes(item));
}
_getRequestedExtensions() {
let extensions = global.settings.get_strv(ENABLED_EXTENSIONS_KEY);
// filter out 'disabled-extensions' which takes precedence
let disabledExtensions = global.settings.get_strv(DISABLED_EXTENSIONS_KEY);
return extensions.filter(item => !disabledExtensions.includes(item));
}
_onUserExtensionsEnabledChanged() {
this._onEnabledExtensionsChanged();
this._onSettingsWritableChanged();
@@ -391,6 +400,16 @@ var ExtensionManager = class {
if (!this._enabled)
return;
// Updated requested state and emit change notifications
this._requestedExtensions = this._getRequestedExtensions();
for (let extension of this._extensions.values()) {
let requested = this._requestedExtensions.includes(extension.uuid);
if (extension.isRequested == requested)
continue;
extension.isRequested = requested;
this.emit('extension-state-changed', extension);
}
// Find and enable all the newly enabled extensions: UUIDs found in the
// new setting, but not in the old one.
newEnabledExtensions.filter(
@@ -451,6 +470,7 @@ var ExtensionManager = class {
this._onSettingsWritableChanged.bind(this));
this._enabledExtensions = this._getEnabledExtensions();
this._requestedExtensions = this._getRequestedExtensions();
let perUserDir = Gio.File.new_for_path(global.userdatadir);
FileUtils.collectFromDatadirs('extensions', true, (dir, info) => {
@@ -512,8 +532,9 @@ var ExtensionManager = class {
// property; it might make sense to make enabledExtensions independent
// from allowExtensions in the future
if (Main.sessionMode.allowExtensions) {
if (this._initted)
if (this._initted) {
this._enabledExtensions = this._getEnabledExtensions();
}
this._enableAllExtensions();
} else {
this._disableAllExtensions();

View File

@@ -574,7 +574,7 @@ var EmojiPager = GObject.registerClass({
'delta': GObject.ParamSpec.int(
'delta', 'delta', 'delta',
GObject.ParamFlags.READWRITE,
GLib.MININT32, GLib.MAXINT32, 0)
0, GLib.MAXINT32, 0)
},
Signals: {
'emoji': { param_types: [GObject.TYPE_STRING] },

View File

@@ -750,33 +750,29 @@ var GtkNotificationDaemon = class GtkNotificationDaemon {
_loadNotifications() {
this._isLoading = true;
try {
let value = global.get_persistent_state('a(sa(sv))', 'notifications');
if (value) {
let sources = value.deep_unpack();
sources.forEach(([appId, notifications]) => {
if (notifications.length == 0)
let value = global.get_persistent_state('a(sa(sv))', 'notifications');
if (value) {
let sources = value.deep_unpack();
sources.forEach(([appId, notifications]) => {
if (notifications.length == 0)
return;
let source;
try {
source = this._ensureAppSource(appId);
} catch (e) {
if (e instanceof InvalidAppError)
return;
throw e;
}
let source;
try {
source = this._ensureAppSource(appId);
} catch (e) {
if (e instanceof InvalidAppError)
return;
throw e;
}
notifications.forEach(([notificationId, notification]) => {
source.addNotification(notificationId, notification.deep_unpack(), false);
});
notifications.forEach(([notificationId, notification]) => {
source.addNotification(notificationId, notification.deep_unpack(), false);
});
}
} catch (e) {
logError(e, 'Failed to load saved notifications');
} finally {
this._isLoading = false;
});
}
this._isLoading = false;
}
_saveNotifications() {

View File

@@ -1,7 +1,7 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
/* exported Indicator */
const { Clutter, Gio, GObject, Gvc, St } = imports.gi;
const { Clutter, Gio, Gvc, St } = imports.gi;
const Signals = imports.signals;
const Main = imports.ui.main;
@@ -36,8 +36,7 @@ var StreamSlider = class {
this._soundSettings.connect(`changed::${ALLOW_AMPLIFIED_VOLUME_KEY}`, this._amplifySettingsChanged.bind(this));
this._amplifySettingsChanged();
this._sliderChangedId = this._slider.connect('notify::value',
this._sliderChanged.bind(this));
this._slider.connect('notify::value', this._sliderChanged.bind(this));
this._slider.connect('drag-end', this._notifyVolumeChange.bind(this));
this._icon = new St.Icon({ style_class: 'popup-menu-icon' });
@@ -130,16 +129,10 @@ var StreamSlider = class {
this._volumeCancellable);
}
_changeSlider(value) {
GObject.signal_handler_block(this._slider, this._sliderChangedId);
this._slider.value = value;
GObject.signal_handler_unblock(this._slider, this._sliderChangedId);
}
_updateVolume() {
let muted = this._stream.is_muted;
this._changeSlider(muted
? 0 : (this._stream.volume / this._control.get_vol_max_norm()));
this._slider.value = muted
? 0 : (this._stream.volume / this._control.get_vol_max_norm());
this.emit('stream-updated');
}

View File

@@ -17,7 +17,6 @@ const PadOsd = imports.ui.padOsd;
const EdgeDragAction = imports.ui.edgeDragAction;
const CloseDialog = imports.ui.closeDialog;
const SwitchMonitor = imports.ui.switchMonitor;
const IBusManager = imports.misc.ibusManager;
const { loadInterfaceXML } = imports.misc.fileUtils;
@@ -1042,15 +1041,6 @@ var WindowManager = class {
}
});
global.display.connect('x11-display-opened', () => {
IBusManager.getIBusManager().restartDaemon(['--xim']);
Shell.util_start_systemd_unit('gnome-session-x11-services.target', 'fail');
});
global.display.connect('x11-display-closing', () => {
Shell.util_stop_systemd_unit('gnome-session-x11-services.target', 'fail');
IBusManager.getIBusManager().restartDaemon();
});
Main.overview.connect('showing', () => {
for (let i = 0; i < this._dimmedWindows.length; i++)
this._undimWindow(this._dimmedWindows[i]);

View File

@@ -1,5 +1,5 @@
project('gnome-shell', 'c',
version: '3.34.0',
version: '3.33.91',
meson_version: '>= 0.47.0',
license: 'GPLv2+'
)
@@ -26,7 +26,7 @@ gio_req = '>= 2.56.0'
gi_req = '>= 1.49.1'
gjs_req = '>= 1.57.3'
gtk_req = '>= 3.15.0'
mutter_req = '>= 3.34.0'
mutter_req = '>= 3.33.91'
polkit_req = '>= 0.100'
schemas_req = '>= 3.33.1'
startup_req = '>= 0.11'

View File

@@ -200,9 +200,9 @@ msgid ""
msgstr ""
"El GNOME Shell us demanarà la contrasenya quan es munti un dispositiu "
"encriptat o un sistema de fitxers remot. Si es pot desar la contrasenya per "
"utilitzar-lo en el futur, es mostrarà la casella de selecció «Recorda la "
"utilitzar-lo en el futur, es mostrarà la casella de verificació «Recorda la "
"contrasenya». Aquesta clau estableix el valor per defecte d'aquesta casella "
"de selecció."
"de verificació."
#: data/org.gnome.shell.gschema.xml.in:96
msgid ""
@@ -1412,7 +1412,7 @@ msgid ""
"row. This turns off the Sticky Keys feature, which affects the way your "
"keyboard works."
msgstr ""
"Heu premut dues tecles juntes, o la tecla de majúscules 5 cops seguides. Això "
"Heu premut dos tecles juntes, o la tecla de majúscules 5 cops seguides. Això "
"desactiva la funcionalitat de les tecles enganxoses, que afecta la manera en "
"què funciona el teclat."
@@ -2367,7 +2367,7 @@ msgid ""
"Description is a single-sentence explanation of what your extension does.\n"
"Examples are: %s"
msgstr ""
"La descripció és una explicació d'una frase de què fa l'extensió.\n"
"La descripció és una explicació d'una frase del què fa l'extensió.\n"
"Per exemple: %s"
#: src/extensions-tool/command-create.c:206 src/extensions-tool/main.c:172

1343
po/cs.po

File diff suppressed because it is too large Load Diff

1781
po/el.po

File diff suppressed because it is too large Load Diff

1294
po/eo.po

File diff suppressed because it is too large Load Diff

1287
po/fr.po

File diff suppressed because it is too large Load Diff

1191
po/hr.po

File diff suppressed because it is too large Load Diff

1241
po/hu.po

File diff suppressed because it is too large Load Diff

339
po/id.po
View File

@@ -9,8 +9,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2019-08-21 23:18+0000\n"
"PO-Revision-Date: 2019-09-03 19:18+0700\n"
"POT-Creation-Date: 2019-08-12 19:40+0000\n"
"PO-Revision-Date: 2019-08-16 15:37+0700\n"
"Last-Translator: Kukuh Syafaat <kukuhsyafaat@gnome.org>\n"
"Language-Team: Indonesian <gnome-l10n-id@googlegroups.com>\n"
"Language: id\n"
@@ -47,7 +47,7 @@ msgid "Open the application menu"
msgstr "Buka menu aplikasi"
#: data/gnome-shell-extension-prefs.desktop.in.in:4
#: js/extensionPrefs/main.js:211
#: js/extensionPrefs/main.js:208
msgid "Shell Extensions"
msgstr "Ekstensi Shell"
@@ -403,11 +403,11 @@ msgstr ""
msgid "Network Login"
msgstr "Log Masuk Jaringan"
#: js/extensionPrefs/main.js:104 js/extensionPrefs/main.js:534
#: js/extensionPrefs/main.js:101 js/extensionPrefs/main.js:531
msgid "Somethings gone wrong"
msgstr "Ada yang tidak beres"
#: js/extensionPrefs/main.js:111
#: js/extensionPrefs/main.js:108
msgid ""
"Were very sorry, but theres been a problem: the settings for this "
"extension cant be displayed. We recommend that you report the issue to the "
@@ -417,27 +417,27 @@ msgstr ""
"tidak dapat ditampilkan. Kami menyarankan Anda melaporkan masalah ini kepada "
"penulis ekstensi."
#: js/extensionPrefs/main.js:118
#: js/extensionPrefs/main.js:115
msgid "Technical Details"
msgstr "Detail Teknis"
#: js/extensionPrefs/main.js:153
#: js/extensionPrefs/main.js:150
msgid "Copy Error"
msgstr "Salin Galat"
#: js/extensionPrefs/main.js:180
#: js/extensionPrefs/main.js:177
msgid "Homepage"
msgstr "Halaman Web"
#: js/extensionPrefs/main.js:181
#: js/extensionPrefs/main.js:178
msgid "Visit extension homepage"
msgstr "Kunjungi halaman web ekstensi"
#: js/extensionPrefs/main.js:476
#: js/extensionPrefs/main.js:473
msgid "No Extensions Installed"
msgstr "Tak Ada Ekstensi Terpasang"
#: js/extensionPrefs/main.js:486
#: js/extensionPrefs/main.js:483
msgid ""
"Extensions can be installed through Software or <a href=\"https://extensions."
"gnome.org\">extensions.gnome.org</a>."
@@ -445,11 +445,11 @@ msgstr ""
"Ekstensi dapat dipasang melalui Perangkat Lunak atau <a href=\"https://"
"extensions.gnome.org\">extensions.gnome.org</a>."
#: js/extensionPrefs/main.js:501
#: js/extensionPrefs/main.js:498
msgid "Browse in Software"
msgstr "Ramban di Perangkat Lunak"
#: js/extensionPrefs/main.js:541
#: js/extensionPrefs/main.js:538
msgid ""
"Were very sorry, but it was not possible to get the list of installed "
"extensions. Make sure you are logged into GNOME and try again."
@@ -1780,7 +1780,7 @@ msgstr "Mati"
msgid "On"
msgstr "Hidup"
#: js/ui/status/brightness.js:38
#: js/ui/status/brightness.js:37
msgid "Brightness"
msgstr "Kecerahan"
@@ -2330,319 +2330,10 @@ msgstr "Pindahkan ke Monitor Kanan"
msgid "Evolution Calendar"
msgstr "Evolution Kalender"
#: src/extensions-tool/command-create.c:189
#, c-format
msgid ""
"Name should be a very short (ideally descriptive) string.\n"
"Examples are: %s"
msgstr ""
"Nama harus berupa string yang sangat pendek (idealnya deskriptif).\n"
"Contohnya adalah: %s"
#: src/extensions-tool/command-create.c:192 src/extensions-tool/main.c:169
msgid "Name"
msgstr "Nama"
#: src/extensions-tool/command-create.c:203
#, c-format
msgid ""
"Description is a single-sentence explanation of what your extension does.\n"
"Examples are: %s"
msgstr ""
"Deskripsi adalah penjelasan satu kalimat tentang apa yang dilakukan ekstensi "
"Anda.\n"
"Contohnya adalah: %s"
#: src/extensions-tool/command-create.c:206 src/extensions-tool/main.c:172
msgid "Description"
msgstr "Deskripsi"
#: src/extensions-tool/command-create.c:217
msgid ""
"UUID is a globally-unique identifier for your extension.\n"
"This should be in the format of an email address (clicktofocus@janedoe."
"example.com)\n"
msgstr ""
"UUID adalah pengidentifikasi unik secara global untuk ekstensi Anda.\n"
"Ini harus dalam format alamat surel (clicktofocus@janedoe.example.com)\n"
#: src/extensions-tool/command-create.c:239
msgid "The unique identifier of the new extension"
msgstr "Pengidentifikasi unik ekstensi baru"
#: src/extensions-tool/command-create.c:242
msgid "NAME"
msgstr "NAMA"
#: src/extensions-tool/command-create.c:243
msgid "The user-visible name of the new extension"
msgstr "Nama ekstensi baru yang dapat dilihat pengguna"
#: src/extensions-tool/command-create.c:245
msgid "DESCRIPTION"
msgstr "DESKRIPSI"
#: src/extensions-tool/command-create.c:247
msgid "A short description of what the extension does"
msgstr "Deskripsi singkat tentang apa yang dilakukan ekstensi"
#: src/extensions-tool/command-create.c:250
msgid "Enter extension information interactively"
msgstr "Masukkan informasi ekstensi secara interaktif"
#: src/extensions-tool/command-create.c:258
msgid "Create a new extension"
msgstr "Buat ekstensi baru"
#: src/extensions-tool/command-create.c:275
#: src/extensions-tool/command-list.c:158
msgid "Unknown arguments"
msgstr "Argumen tak dikenal"
#: src/extensions-tool/command-create.c:284
msgid "UUID, name and description are required"
msgstr "Diperlukan UUID, nama, dan deskripsi"
#: src/extensions-tool/command-disable.c:57
msgid "Disable an extension"
msgstr "Nonaktifkan ekstensi"
#: src/extensions-tool/command-disable.c:74
#: src/extensions-tool/command-enable.c:74
#: src/extensions-tool/command-info.c:96
#: src/extensions-tool/command-prefs.c:107
#: src/extensions-tool/command-reset.c:74
#: src/extensions-tool/command-uninstall.c:89
msgid "No UUID given"
msgstr "Tidak ada UUID yang diberikan"
#: src/extensions-tool/command-disable.c:79
#: src/extensions-tool/command-enable.c:79
#: src/extensions-tool/command-info.c:101
#: src/extensions-tool/command-prefs.c:112
#: src/extensions-tool/command-reset.c:79
#: src/extensions-tool/command-uninstall.c:94
msgid "More than one UUID given"
msgstr "Lebih dari satu UUID diberikan"
#: src/extensions-tool/command-enable.c:57
msgid "Enable an extension"
msgstr "Aktifkan ekstensi"
#: src/extensions-tool/command-info.c:79
msgid "Show extensions info"
msgstr "Tampilkan info ekstensi"
#: src/extensions-tool/command-install.c:173
msgid "Overwrite an existing extension"
msgstr "Timpa ekstensi yang ada"
#: src/extensions-tool/command-install.c:175
msgid "EXTENSION_BUNDLE"
msgstr "BUNDEL_EKSTENSI"
#: src/extensions-tool/command-install.c:184
msgid "Install an extension bundle"
msgstr "Pasang bundel ekstensi"
#: src/extensions-tool/command-install.c:201
msgid "No extension bundle specified"
msgstr "Tidak ada bundel ekstensi yang ditentukan"
#: src/extensions-tool/command-install.c:207
msgid "More than one extension bundle specified"
msgstr "Lebih dari satu bundel ekstensi ditentukan"
#: src/extensions-tool/command-list.c:118
msgid "Show user-installed extensions"
msgstr "Tampilkan ekstensi yang dipasang pengguna"
#: src/extensions-tool/command-list.c:121
msgid "Show system-installed extensions"
msgstr "Tampilkan ekstensi yang dipasang sistem"
#: src/extensions-tool/command-list.c:124
msgid "Show enabled extensions"
msgstr "Tampilkan ekstensi yang diaktifkan"
#: src/extensions-tool/command-list.c:127
msgid "Show disabled extensions"
msgstr "Tampilkan ekstensi yang dinonaktifkan"
#: src/extensions-tool/command-list.c:130
msgid "Show extensions with preferences"
msgstr "Tampilkan ekstensi dengan preferensi"
#: src/extensions-tool/command-list.c:133
msgid "Print extension details"
msgstr "Cetak detail ekstensi"
#: src/extensions-tool/command-list.c:141
msgid "List installed extensions"
msgstr "Daftar ekstensi yang dipasang"
#: src/extensions-tool/command-pack.c:450
msgid "FILE"
msgstr "BERKAS"
#: src/extensions-tool/command-pack.c:451
msgid "Additional source to include in the bundle"
msgstr "Sumber tambahan untuk disertakan dalam bundel"
#: src/extensions-tool/command-pack.c:454
msgid "SCHEMA"
msgstr "SKEMA"
#: src/extensions-tool/command-pack.c:455
msgid "A GSettings schema that should be included"
msgstr "Skema GSettings yang harus dimasukkan"
#: src/extensions-tool/command-pack.c:457
#: src/extensions-tool/command-pack.c:468
msgid "DIRECTORY"
msgstr "DIREKTORI"
#: src/extensions-tool/command-pack.c:459
msgid "The directory where translations are found"
msgstr "Direktori tempat terjemahan ditemukan"
#: src/extensions-tool/command-pack.c:461
msgid "DOMAIN"
msgstr "DOMAIN"
#: src/extensions-tool/command-pack.c:463
msgid "The gettext domain to use for translations"
msgstr "Domain gettext yang digunakan untuk terjemahan"
#: src/extensions-tool/command-pack.c:466
msgid "Overwrite an existing pack"
msgstr "Timpa paket yang ada"
#: src/extensions-tool/command-pack.c:470
msgid "The directory where the pack should be created"
msgstr "Direktori tempat paket harus dibuat"
#: src/extensions-tool/command-pack.c:472
msgid "SOURCE_DIRECTORY"
msgstr "DIREKTORI_SUMBER"
#: src/extensions-tool/command-pack.c:481
msgid "Create an extension bundle"
msgstr "Buat bundel ekstensi"
#: src/extensions-tool/command-pack.c:500
msgid "More than one source directory specified"
msgstr "Lebih dari satu direktori sumber ditentukan"
#: src/extensions-tool/command-prefs.c:90
msgid "Opens extension preferences"
msgstr "Buka preferensi ekstensi"
#: src/extensions-tool/command-reset.c:57
msgid "Reset an extension"
msgstr "Atur ulang ekstensi"
#: src/extensions-tool/command-uninstall.c:72
msgid "Uninstall an extension"
msgstr "Hapus ekstensi"
#: src/extensions-tool/main.c:175
msgid "Path"
msgstr "Path"
#: src/extensions-tool/main.c:178
msgid "URL"
msgstr "URL"
#: src/extensions-tool/main.c:181
msgid "Original author"
msgstr "Penulis asli"
#: src/extensions-tool/main.c:184
msgid "Version"
msgstr "Versi"
#: src/extensions-tool/main.c:187
msgid "State"
msgstr "Kondisi"
#: src/extensions-tool/main.c:221
msgid "“version” takes no arguments"
msgstr "\"version\" tak menerima argumen"
#: src/extensions-tool/main.c:223 src/extensions-tool/main.c:239
msgid "Usage:"
msgstr "Pemakaian:"
#: src/extensions-tool/main.c:226
msgid "Print version information and exit."
msgstr "Cetak informasi versi dan keluar."
#: src/extensions-tool/main.c:240
msgid "COMMAND"
msgstr "PERINTAH"
#: src/extensions-tool/main.c:240
msgid "[ARGS…]"
msgstr "[ARG...]"
#: src/extensions-tool/main.c:242
msgid "Commands:"
msgstr "Perintah:"
#: src/extensions-tool/main.c:243
msgid "Print help"
msgstr "Cetak bantuan"
#: src/extensions-tool/main.c:244 src/main.c:460
#: src/main.c:460
msgid "Print version"
msgstr "Versi Cetak"
#: src/extensions-tool/main.c:245
msgid "Enable extension"
msgstr "Aktifkan ekstensi"
#: src/extensions-tool/main.c:246
msgid "Disable extension"
msgstr "Nonaktifkan ekstensi"
#: src/extensions-tool/main.c:247
msgid "Reset extension"
msgstr "Atur ulang ekstensi"
#: src/extensions-tool/main.c:248
msgid "Uninstall extension"
msgstr "Hapus ekstensi"
#: src/extensions-tool/main.c:249
msgid "List extensions"
msgstr "Daftar ekstensi"
#: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251
msgid "Show extension info"
msgstr "Tampilkan info ekstensi"
#: src/extensions-tool/main.c:252
msgid "Open extension preferences"
msgstr "Buka preferensi ekstensi"
#: src/extensions-tool/main.c:253
msgid "Create extension"
msgstr "Buat ekstensi"
#: src/extensions-tool/main.c:254
msgid "Package extension"
msgstr "Ekstensi Paket"
#: src/extensions-tool/main.c:255
msgid "Install extension bundle"
msgstr "Pasang bundel ekstensi"
#: src/extensions-tool/main.c:257
#, c-format
msgid "Use %s to get detailed help.\n"
msgstr "Gunakan %s untuk mendapatkan bantuan terperinci.\n"
#: src/main.c:466
msgid "Mode used by GDM for login screen"
msgstr "Mode yang dipakai oleh layar log masuk GDM"

1283
po/it.po

File diff suppressed because it is too large Load Diff

View File

@@ -16,8 +16,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2019-09-05 13:45+0000\n"
"PO-Revision-Date: 2019-09-06 21:10+0900\n"
"POT-Creation-Date: 2019-08-27 11:26+0000\n"
"PO-Revision-Date: 2019-08-29 20:44+0900\n"
"Last-Translator: sicklylife <translation@sicklylife.jp>\n"
"Language-Team: Japanese <gnome-translation@gnome.gr.jp>\n"
"Language: ja\n"
@@ -453,7 +453,7 @@ msgstr ""
#: js/gdm/authPrompt.js:139 js/ui/audioDeviceSelection.js:53
#: js/ui/components/networkAgent.js:120 js/ui/components/polkitAgent.js:138
#: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189
#: js/ui/endSessionDialog.js:445 js/ui/extensionDownloader.js:189
#: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399
#: js/ui/status/network.js:899
msgid "Cancel"
@@ -803,7 +803,7 @@ msgstr "ヘッドフォン"
msgid "Headset"
msgstr "ヘッドセット"
#: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248
#: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241
msgid "Microphone"
msgstr "マイク"
@@ -1037,7 +1037,8 @@ msgid ""
"Passwords or encryption keys are required to access the wireless network "
"“%s”."
msgstr ""
"無線ネットワーク”%s”にアクセスするにはパスワードか暗号化キーが必要です。"
"無線ネットワーク”%s”にアクセスするにはパスワードか、または暗号化キーが必要で"
"す。"
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:693
msgid "Wired 802.1X authentication"
@@ -1292,13 +1293,13 @@ msgid "Other users are logged in."
msgstr "他のユーザーがログインしています。"
#. Translators: Remote here refers to a remote session, like a ssh login
#: js/ui/endSessionDialog.js:650
#: js/ui/endSessionDialog.js:647
#, javascript-format
msgid "%s (remote)"
msgstr "%s (リモート)"
#. Translators: Console here refers to a tty like a VT console
#: js/ui/endSessionDialog.js:653
#: js/ui/endSessionDialog.js:650
#, javascript-format
msgid "%s (console)"
msgstr "%s (コンソール)"
@@ -1648,8 +1649,8 @@ msgstr "キーファイルを使用する"
msgid ""
"To unlock a volume that uses keyfiles, use the <i>%s</i> utility instead."
msgstr ""
"キーファイルを使用するボリュームのロック解除には <i>%s</i> ユーティリティを使"
"用します。"
"キーファイルを使用するボリュームのロック解除には <i>%s</i> ユーティリティを"
"使用します。"
#: js/ui/shellMountOperation.js:323
msgid "PIM Number"
@@ -2145,11 +2146,11 @@ msgstr "Thunderbolt 認証エラー"
msgid "Could not authorize the Thunderbolt device: %s"
msgstr "Thunderbolt デバイスを認証できませんでした: %s"
#: js/ui/status/volume.js:129
#: js/ui/status/volume.js:128
msgid "Volume changed"
msgstr "音量変更しました"
#: js/ui/status/volume.js:200
#: js/ui/status/volume.js:193
msgid "Volume"
msgstr "音量"
@@ -2202,22 +2203,22 @@ msgstr "検索"
msgid "“%s” is ready"
msgstr "”%s”は準備完了です"
#: js/ui/windowManager.js:55
#: js/ui/windowManager.js:54
msgid "Do you want to keep these display settings?"
msgstr "このディスプレイ設定を保存しますか?"
#. Translators: this and the following message should be limited in length,
#. to avoid ellipsizing the labels.
#.
#: js/ui/windowManager.js:67
#: js/ui/windowManager.js:66
msgid "Revert Settings"
msgstr "設定を元に戻す"
#: js/ui/windowManager.js:70
#: js/ui/windowManager.js:69
msgid "Keep Changes"
msgstr "変更を保存"
#: js/ui/windowManager.js:88
#: js/ui/windowManager.js:87
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@@ -2225,7 +2226,7 @@ msgstr[0] "%d 秒後に元の設定に戻ります"
#. 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:684
#: js/ui/windowManager.js:683
#, javascript-format
msgid "%d × %d"
msgstr "%d × %d"
@@ -2555,7 +2556,7 @@ msgstr "コマンド:"
msgid "Print help"
msgstr "ヘルプを表示する"
#: src/extensions-tool/main.c:244 src/main.c:468
#: src/extensions-tool/main.c:244 src/main.c:460
msgid "Print version"
msgstr "バージョンを表示する"
@@ -2604,15 +2605,15 @@ msgstr ""
msgid "Use %s to get detailed help.\n"
msgstr "%s を使用すると詳細なヘルプが表示されます。\n"
#: src/main.c:474
#: src/main.c:466
msgid "Mode used by GDM for login screen"
msgstr "ログイン画面で GDM が使用するモード"
#: src/main.c:480
#: src/main.c:472
msgid "Use a specific mode, e.g. “gdm” for login screen"
msgstr "指定したモードを使用する (例: ログイン画面用の“gdm”)"
#: src/main.c:486
#: src/main.c:478
msgid "List possible modes"
msgstr "使用可能なモードを一覧表示する"

1292
po/ko.po

File diff suppressed because it is too large Load Diff

405
po/lt.po
View File

@@ -10,8 +10,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2019-08-21 23:18+0000\n"
"PO-Revision-Date: 2019-09-01 22:32+0300\n"
"POT-Creation-Date: 2019-08-09 14:45+0000\n"
"PO-Revision-Date: 2019-08-18 22:05+0300\n"
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
"Language: lt\n"
@@ -48,7 +48,7 @@ msgid "Open the application menu"
msgstr "Atverti programų meniu"
#: data/gnome-shell-extension-prefs.desktop.in.in:4
#: js/extensionPrefs/main.js:211
#: js/extensionPrefs/main.js:208
msgid "Shell Extensions"
msgstr "Shell plėtiniai"
@@ -95,10 +95,16 @@ msgstr ""
"Shell D-Bus metodus EnableExtension ir DisableExtension."
#: data/org.gnome.shell.gschema.xml.in:26
#| msgid "UUIDs of extensions to enable"
msgid "UUIDs of extensions to force disabling"
msgstr "Privestinai išjungtų plėtinių UUID"
#: data/org.gnome.shell.gschema.xml.in:27
#| msgid ""
#| "GNOME Shell extensions have a UUID property; this key lists extensions "
#| "which should be loaded. Any extension that wants to be loaded needs to be "
#| "in this list. You can also manipulate this list with the EnableExtension "
#| "and DisableExtension D-Bus methods on org.gnome.Shell."
msgid ""
"GNOME Shell extensions have a UUID property; this key lists extensions which "
"should be disabled, even if loaded as part of the current mode. You can also "
@@ -341,6 +347,7 @@ msgstr ""
"srities. Priešingu atveju įtraukiami visi langai."
#: data/org.gnome.shell.gschema.xml.in:234
#| msgid "Location In Use"
msgid "Locations"
msgstr "Vietos"
@@ -357,6 +364,7 @@ msgid "Whether to fetch the current location or not"
msgstr "Ar gauti dabartinę vietą"
#: data/org.gnome.shell.gschema.xml.in:253
#| msgid "Location In Use"
msgid "Location"
msgstr "Vieta"
@@ -397,11 +405,11 @@ msgstr "Atidėti fokuso pakeitimus pelei iki žymiklis nustos judėti"
msgid "Network Login"
msgstr "Tinklo prisijungimas"
#: js/extensionPrefs/main.js:104 js/extensionPrefs/main.js:534
#: js/extensionPrefs/main.js:101 js/extensionPrefs/main.js:531
msgid "Somethings gone wrong"
msgstr "Atsitiko kažkas negero"
#: js/extensionPrefs/main.js:111
#: js/extensionPrefs/main.js:108
msgid ""
"Were very sorry, but theres been a problem: the settings for this "
"extension cant be displayed. We recommend that you report the issue to the "
@@ -410,27 +418,27 @@ msgstr ""
"Atsiprašome, bet kilo problema: šio plėtinio nustatymų parodyti nepavyksta. "
"Rekomenduojame pranešti apie problemą plėtinio autoriams."
#: js/extensionPrefs/main.js:118
#: js/extensionPrefs/main.js:115
msgid "Technical Details"
msgstr "Techninė informacija"
#: js/extensionPrefs/main.js:153
#: js/extensionPrefs/main.js:150
msgid "Copy Error"
msgstr "Kopijuoti klaidą"
#: js/extensionPrefs/main.js:180
#: js/extensionPrefs/main.js:177
msgid "Homepage"
msgstr "Namų tinklalapis"
#: js/extensionPrefs/main.js:181
#: js/extensionPrefs/main.js:178
msgid "Visit extension homepage"
msgstr "Aplankyti plėtinio namų tinklalapį"
#: js/extensionPrefs/main.js:476
#: js/extensionPrefs/main.js:473
msgid "No Extensions Installed"
msgstr "Nėra įdiegtų plėtinių"
#: js/extensionPrefs/main.js:486
#: js/extensionPrefs/main.js:483
msgid ""
"Extensions can be installed through Software or <a href=\"https://extensions."
"gnome.org\">extensions.gnome.org</a>."
@@ -438,11 +446,11 @@ msgstr ""
"Plėtinius galima įdiegti per Programinę įrangą arba <a href=\"https://"
"extensions.gnome.org\">extensions.gnome.org</a>."
#: js/extensionPrefs/main.js:501
#: js/extensionPrefs/main.js:498
msgid "Browse in Software"
msgstr "Naršyti Programinėje įrangoje"
#: js/extensionPrefs/main.js:541
#: js/extensionPrefs/main.js:538
msgid ""
"Were very sorry, but it was not possible to get the list of installed "
"extensions. Make sure you are logged into GNOME and try again."
@@ -545,6 +553,7 @@ msgstr "Atsijungti"
#. Translators: A list of keywords that match the logout action, separated by semicolons
#: js/misc/systemActions.js:108
#| msgid "logout;sign off"
msgid "logout;log out;sign off"
msgstr "atsijungti;išeiti;"
@@ -762,27 +771,28 @@ msgid "All"
msgstr "Visos"
#. Translators: This is the heading of a list of open windows
#: js/ui/appDisplay.js:2233 js/ui/panel.js:77
#: js/ui/appDisplay.js:2224 js/ui/panel.js:77
#| msgid "Windows"
msgid "Open Windows"
msgstr "Atverti langai"
#: js/ui/appDisplay.js:2252 js/ui/panel.js:84
#: js/ui/appDisplay.js:2243 js/ui/panel.js:84
msgid "New Window"
msgstr "Naujas langas"
#: js/ui/appDisplay.js:2264
#: js/ui/appDisplay.js:2255
msgid "Launch using Dedicated Graphics Card"
msgstr "Paleisti naudojant dedikuotą grafikos kortą"
#: js/ui/appDisplay.js:2293 js/ui/dash.js:240
#: js/ui/appDisplay.js:2284 js/ui/dash.js:240
msgid "Remove from Favorites"
msgstr "Pašalinti iš mėgstamų"
#: js/ui/appDisplay.js:2299
#: js/ui/appDisplay.js:2290
msgid "Add to Favorites"
msgstr "Pridėti prie mėgstamų"
#: js/ui/appDisplay.js:2309 js/ui/panel.js:95
#: js/ui/appDisplay.js:2300 js/ui/panel.js:95
msgid "Show Details"
msgstr "Rodyti detalią informaciją"
@@ -982,6 +992,7 @@ msgid "External drive disconnected"
msgstr "Atjungta išorinė laikmena"
#: js/ui/components/automountManager.js:210
#| msgid "Unable to lock"
msgid "Unable to unlock volume"
msgstr "Nepavyksta atrakinti garso"
@@ -1663,6 +1674,7 @@ msgid "Hide Text"
msgstr "Slėpti tekstą"
#: js/ui/shellMountOperation.js:304
#| msgid "Volume"
msgid "Hidden Volume"
msgstr "Paslėptas garsumas"
@@ -1671,6 +1683,7 @@ msgid "Windows System Volume"
msgstr "Windows sisteminis tomas"
#: js/ui/shellMountOperation.js:310
#| msgid "Mouse Keys"
msgid "Uses Keyfiles"
msgstr "Naudoja raktų failus"
@@ -1702,12 +1715,14 @@ msgstr "Atsiminti slaptažodį"
#. Translators: %s is the Disks application
#: js/ui/shellMountOperation.js:404
#, javascript-format
#| msgid "Open with %s"
msgid "Open %s"
msgstr "Atverti %s"
#. Translators: %s is the Disks application
#: js/ui/shellMountOperation.js:476
#, javascript-format
#| msgid "Unable to connect to %s"
msgid "Unable to start %s"
msgstr "Nepavyksta paleisti %s"
@@ -1786,7 +1801,7 @@ msgstr "Išjungta"
msgid "On"
msgstr "Įjungta"
#: js/ui/status/brightness.js:38
#: js/ui/status/brightness.js:37
msgid "Brightness"
msgstr "Ryškumas"
@@ -2339,356 +2354,19 @@ msgstr "Perkelti į dešiniau esantį monitorių"
msgid "Evolution Calendar"
msgstr "Evolution kalendorius"
#: src/extensions-tool/command-create.c:189
#, c-format
msgid ""
"Name should be a very short (ideally descriptive) string.\n"
"Examples are: %s"
msgstr ""
"Pavadinimas turi būti trumpa (geriausia apibūdinant) simbolių eilutė.\n"
"Pavyzdžiai: %s"
#: src/extensions-tool/command-create.c:192 src/extensions-tool/main.c:169
msgid "Name"
msgstr "Pavadinimas"
#: src/extensions-tool/command-create.c:203
#, c-format
msgid ""
"Description is a single-sentence explanation of what your extension does.\n"
"Examples are: %s"
msgstr ""
"Aprašymas yra vieno sakinio paaiškinimas, ką daro plėtinys.\n"
"Pavyzdžiai: %s"
#: src/extensions-tool/command-create.c:206 src/extensions-tool/main.c:172
msgid "Description"
msgstr "Aprašymas"
#: src/extensions-tool/command-create.c:217
msgid ""
"UUID is a globally-unique identifier for your extension.\n"
"This should be in the format of an email address (clicktofocus@janedoe."
"example.com)\n"
msgstr ""
"UUID yra visuotinai unikalus identifikatorius jūsų plėtiniui.\n"
"Jis turėtų būti el. pašto adreso formato (clicktofocus@janedoe.example.com)\n"
#: src/extensions-tool/command-create.c:239
msgid "The unique identifier of the new extension"
msgstr "Unikalus identifikatorius naujam plėtiniui"
#: src/extensions-tool/command-create.c:242
msgid "NAME"
msgstr "PAVADINIMAS"
#: src/extensions-tool/command-create.c:243
msgid "The user-visible name of the new extension"
msgstr "Naudotojui matomas plėtinio pavadinimas"
#: src/extensions-tool/command-create.c:245
msgid "DESCRIPTION"
msgstr "APRAŠYMAS"
#: src/extensions-tool/command-create.c:247
msgid "A short description of what the extension does"
msgstr "Trumpas aprašymas, ką daro plėtinys"
#: src/extensions-tool/command-create.c:250
msgid "Enter extension information interactively"
msgstr "Įveskite plėtinio informaciją interaktyviai"
#: src/extensions-tool/command-create.c:258
#| msgid "Disable user extensions"
msgid "Create a new extension"
msgstr "Sukurti naują plėtinį"
#: src/extensions-tool/command-create.c:275
#: src/extensions-tool/command-list.c:158
#| msgid "Unknown artist"
msgid "Unknown arguments"
msgstr "Nežinomi argumentai"
#: src/extensions-tool/command-create.c:284
msgid "UUID, name and description are required"
msgstr "UUID, pavadinimas ir aprašymas yra būtini"
#: src/extensions-tool/command-disable.c:57
#| msgid "Disable user extensions"
msgid "Disable an extension"
msgstr "Išjungti plėtinį"
#: src/extensions-tool/command-disable.c:74
#: src/extensions-tool/command-enable.c:74
#: src/extensions-tool/command-info.c:96
#: src/extensions-tool/command-prefs.c:107
#: src/extensions-tool/command-reset.c:74
#: src/extensions-tool/command-uninstall.c:89
msgid "No UUID given"
msgstr "Nenurodytas UUID"
#: src/extensions-tool/command-disable.c:79
#: src/extensions-tool/command-enable.c:79
#: src/extensions-tool/command-info.c:101
#: src/extensions-tool/command-prefs.c:112
#: src/extensions-tool/command-reset.c:79
#: src/extensions-tool/command-uninstall.c:94
msgid "More than one UUID given"
msgstr "Pateiktas daugiau nei vienas UUID"
#: src/extensions-tool/command-enable.c:57
#| msgid "Disable user extensions"
msgid "Enable an extension"
msgstr "Išjungti plėtinį"
#: src/extensions-tool/command-info.c:79
#| msgid "No extensions installed"
msgid "Show extensions info"
msgstr "Rodyti plėtinio informaciją"
#: src/extensions-tool/command-install.c:173
msgid "Overwrite an existing extension"
msgstr "Perrašyti esamą plėtinį"
#: src/extensions-tool/command-install.c:175
msgid "EXTENSION_BUNDLE"
msgstr "PLĖTINIO_RYŠULYS"
#: src/extensions-tool/command-install.c:184
#| msgid "UUIDs of extensions to enable"
msgid "Install an extension bundle"
msgstr "Įdiegti plėtinio ryšulį"
#: src/extensions-tool/command-install.c:201
#| msgid "No extensions installed"
msgid "No extension bundle specified"
msgstr "Nenurodytas plėtinio ryšulys"
#: src/extensions-tool/command-install.c:207
msgid "More than one extension bundle specified"
msgstr "Nurodytas daugiau nei vienas plėtinio ryšulys"
#: src/extensions-tool/command-list.c:118
#| msgid "Shell Extensions"
msgid "Show user-installed extensions"
msgstr "Rodyti naudotojo įdiegtus plėtinius"
#: src/extensions-tool/command-list.c:121
#| msgid "Shell Extensions"
msgid "Show system-installed extensions"
msgstr "Rodyti sistemoje įdiegtus plėtinius"
#: src/extensions-tool/command-list.c:124
#| msgid "Shell Extensions"
msgid "Show enabled extensions"
msgstr "Rodyti įjungtus plėtinius"
#: src/extensions-tool/command-list.c:127
#| msgid "Disable user extensions"
msgid "Show disabled extensions"
msgstr "Rodyti išjungtus plėtinius"
#: src/extensions-tool/command-list.c:130
#| msgid "GNOME Shell Extension Preferences"
msgid "Show extensions with preferences"
msgstr "Rodyti plėtinius su nuostatomis"
#: src/extensions-tool/command-list.c:133
#| msgid "Visit extension homepage"
msgid "Print extension details"
msgstr "Atspausdinti plėtinio informaciją"
#: src/extensions-tool/command-list.c:141
#| msgid "Disable user extensions"
msgid "List installed extensions"
msgstr "Išvardinti įdiegtus plėtinius"
#: src/extensions-tool/command-pack.c:450
msgid "FILE"
msgstr "FAILAS"
#: src/extensions-tool/command-pack.c:451
msgid "Additional source to include in the bundle"
msgstr "Papildomas šaltinis įdėjimui į ryšulį"
#: src/extensions-tool/command-pack.c:454
msgid "SCHEMA"
msgstr "SCHEMA"
#: src/extensions-tool/command-pack.c:455
msgid "A GSettings schema that should be included"
msgstr "GSettings schema, kuri turi būti įtraukta"
#: src/extensions-tool/command-pack.c:457
#: src/extensions-tool/command-pack.c:468
msgid "DIRECTORY"
msgstr "KATALOGAS"
#: src/extensions-tool/command-pack.c:459
msgid "The directory where translations are found"
msgstr "Katalogas, kuriame yra vertimai"
#: src/extensions-tool/command-pack.c:461
msgid "DOMAIN"
msgstr "DOMENAS"
#: src/extensions-tool/command-pack.c:463
msgid "The gettext domain to use for translations"
msgstr "gettext domenas, naudojamas vertimams"
#: src/extensions-tool/command-pack.c:466
msgid "Overwrite an existing pack"
msgstr "Perrašyti esamą paketą"
#: src/extensions-tool/command-pack.c:470
msgid "The directory where the pack should be created"
msgstr "Katalogas, kuriame turi būti sukurtas paketas"
#: src/extensions-tool/command-pack.c:472
msgid "SOURCE_DIRECTORY"
msgstr "KODO_KATALOGAS"
#: src/extensions-tool/command-pack.c:481
msgid "Create an extension bundle"
msgstr "Sukurti plėtinio ryšulį"
#: src/extensions-tool/command-pack.c:500
msgid "More than one source directory specified"
msgstr "Nurodytas daugiau nei vienas kodo aplankas"
#: src/extensions-tool/command-prefs.c:90
#| msgid "GNOME Shell Extension Preferences"
msgid "Opens extension preferences"
msgstr "Atveria plėtinio nuostatas"
#: src/extensions-tool/command-reset.c:57
#| msgid "Disable user extensions"
msgid "Reset an extension"
msgstr "Atstatyti plėtinį"
#: src/extensions-tool/command-uninstall.c:72
#| msgid "Disable user extensions"
msgid "Uninstall an extension"
msgstr "Išdiegti plėtinį"
#: src/extensions-tool/main.c:175
msgid "Path"
msgstr "Kelias"
#: src/extensions-tool/main.c:178
msgid "URL"
msgstr "URL"
#: src/extensions-tool/main.c:181
msgid "Original author"
msgstr "Pradinis autorius"
#: src/extensions-tool/main.c:184
#| msgid "Print version"
msgid "Version"
msgstr "Versija"
#: src/extensions-tool/main.c:187
msgid "State"
msgstr "Būsena"
#: src/extensions-tool/main.c:221
msgid "“version” takes no arguments"
msgstr "„version“ nepriima argumentų"
#: src/extensions-tool/main.c:223 src/extensions-tool/main.c:239
msgid "Usage:"
msgstr "Naudojimas:"
#: src/extensions-tool/main.c:226
msgid "Print version information and exit."
msgstr "Atspausdinti versijos informaciją ir išeiti."
#: src/extensions-tool/main.c:240
msgid "COMMAND"
msgstr "KOMANDA"
#: src/extensions-tool/main.c:240
msgid "[ARGS…]"
msgstr "[ARG…]"
#: src/extensions-tool/main.c:242
msgid "Commands:"
msgstr "Komandos:"
#: src/extensions-tool/main.c:243
#| msgid "Print version"
msgid "Print help"
msgstr "Atspausdinti žinyną"
#: src/extensions-tool/main.c:244 src/main.c:460
#: src/main.c:464
msgid "Print version"
msgstr "Išvesti versijos numerį"
#: src/extensions-tool/main.c:245
#| msgid "Disable user extensions"
msgid "Enable extension"
msgstr "Įjungti ]plėtinį"
#: src/extensions-tool/main.c:246
#| msgid "Disable user extensions"
msgid "Disable extension"
msgstr "Išjungti plėtinį"
#: src/extensions-tool/main.c:247
#| msgid "Disable user extensions"
msgid "Reset extension"
msgstr "Atstatyti plėtinį"
#: src/extensions-tool/main.c:248
#| msgid "Disable user extensions"
msgid "Uninstall extension"
msgstr "Išdiegti plėtinį"
#: src/extensions-tool/main.c:249
#| msgid "Disable user extensions"
msgid "List extensions"
msgstr "Išvardinti plėtinius"
#: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251
#| msgid "No extensions installed"
msgid "Show extension info"
msgstr "Rodyti plėtinio informaciją"
#: src/extensions-tool/main.c:252
#| msgid "GNOME Shell Extension Preferences"
msgid "Open extension preferences"
msgstr "Atverti plėtinio nuostatas"
#: src/extensions-tool/main.c:253
#| msgid "Shell Extensions"
msgid "Create extension"
msgstr "Sukurti plėtinį"
#: src/extensions-tool/main.c:254
#| msgid "Shell Extensions"
msgid "Package extension"
msgstr "Supakuoti plėtinį"
#: src/extensions-tool/main.c:255
#| msgid "UUIDs of extensions to enable"
msgid "Install extension bundle"
msgstr "Įdiegti plėtinio ryšulį"
#: src/extensions-tool/main.c:257
#, c-format
msgid "Use %s to get detailed help.\n"
msgstr "Detalesnį žinyną gausite panaudoję %s\n"
#: src/main.c:466
#: src/main.c:470
msgid "Mode used by GDM for login screen"
msgstr "Veiksena, naudojama GDM prisijungimo ekrane"
#: src/main.c:472
#: src/main.c:476
msgid "Use a specific mode, e.g. “gdm” for login screen"
msgstr "Naudoti konkrečią veikseną, pvz., „gdm“ prisijungimo ekranui"
#: src/main.c:478
#: src/main.c:482
msgid "List possible modes"
msgstr "Išvardinti galimas veiksenas"
@@ -2710,7 +2388,7 @@ msgstr "Slaptažodžiai nesutampa."
msgid "Password cannot be blank"
msgstr "Slaptažodis negali būti tuščias"
#: src/shell-polkit-authentication-agent.c:344
#: src/shell-polkit-authentication-agent.c:348
msgid "Authentication dialog was dismissed by the user"
msgstr "Naudotojas užvėrė tapatybės patvirtinimo dialogą"
@@ -2808,6 +2486,9 @@ msgstr "Sistemos garsai"
#~ msgid "Media"
#~ msgstr "Medija"
#~ msgid "GNOME Shell Extension Preferences"
#~ msgstr "GNOME Shell plėtinių nuostatos"
#~ msgid "Web Authentication Redirect"
#~ msgstr "Reikia patvirtinti tapatybę internete"

1526
po/pa.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1394
po/sk.po

File diff suppressed because it is too large Load Diff

1437
po/tr.po

File diff suppressed because it is too large Load Diff

View File

@@ -1577,7 +1577,7 @@ load_variant (GFile *dir,
else
{
GBytes *bytes = g_mapped_file_get_bytes (mfile);
res = g_variant_new_from_bytes (G_VARIANT_TYPE (property_type), bytes, FALSE);
res = g_variant_new_from_bytes (G_VARIANT_TYPE (property_type), bytes, TRUE);
g_bytes_unref (bytes);
g_mapped_file_unref (mfile);
}

View File

@@ -5,6 +5,7 @@
#include <meta/display.h>
#include <meta/util.h>
#include <meta/meta-plugin.h>
#include <meta/meta-shaped-texture.h>
#include <meta/meta-cursor-tracker.h>
#include <st/st.h>
@@ -456,6 +457,7 @@ grab_window_screenshot (ClutterActor *stage,
MetaWindow *window = meta_display_get_focus_window (display);
ClutterActor *window_actor;
gfloat actor_x, actor_y;
MetaShapedTexture *stex;
MetaRectangle rect;
cairo_rectangle_int_t clip;
@@ -475,8 +477,8 @@ grab_window_screenshot (ClutterActor *stage,
clip.width = priv->screenshot_area.width = rect.width;
clip.height = priv->screenshot_area.height = rect.height;
priv->image = meta_window_actor_get_image (META_WINDOW_ACTOR (window_actor),
&clip);
stex = META_SHAPED_TEXTURE (meta_window_actor_get_texture (META_WINDOW_ACTOR (window_actor)));
priv->image = meta_shaped_texture_get_image (stex, &clip);
priv->datetime = g_date_time_new_now_local ();
if (priv->include_cursor)

View File

@@ -20,6 +20,7 @@
#include <glib/gi18n-lib.h>
#include <gtk/gtk.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <meta/meta-shaped-texture.h>
#include <locale.h>
#ifdef HAVE__NL_TIME_FIRST_WEEKDAY
@@ -429,12 +430,14 @@ ClutterContent *
shell_util_get_content_for_window_actor (MetaWindowActor *window_actor,
MetaRectangle *window_rect)
{
MetaShapedTexture *texture;
ClutterContent *content;
cairo_surface_t *surface;
cairo_rectangle_int_t clip;
gfloat actor_x, actor_y;
gfloat resource_scale;
texture = meta_window_actor_get_texture (window_actor);
clutter_actor_get_position (CLUTTER_ACTOR (window_actor), &actor_x, &actor_y);
if (!clutter_actor_get_resource_scale (CLUTTER_ACTOR (window_actor),
@@ -450,7 +453,7 @@ shell_util_get_content_for_window_actor (MetaWindowActor *window_actor,
clip.width = ceilf (window_rect->width * resource_scale);
clip.height = ceilf (window_rect->height * resource_scale);
surface = meta_window_actor_get_image (window_actor, &clip);
surface = meta_shaped_texture_get_image (texture, &clip);
content = clutter_canvas_new ();
clutter_canvas_set_size (CLUTTER_CANVAS (content),
@@ -609,62 +612,3 @@ shell_util_check_cloexec_fds (void)
fdwalk (check_cloexec, NULL);
g_info ("Open fd CLOEXEC check complete");
}
static void
on_systemd_call_cb (GObject *source,
GAsyncResult *res,
gpointer user_data)
{
g_autoptr (GVariant) reply = NULL;
g_autoptr (GError) error = NULL;
const gchar *command = user_data;
reply = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source),
res, &error);
if (error)
g_warning ("Could not issue '%s' systemd call", command);
}
static gboolean
shell_util_systemd_call (const char *command,
const char *unit,
const char *mode,
GError **error)
{
g_autoptr (GDBusConnection) connection = NULL;
connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, error);
if (connection == NULL)
return FALSE;
g_dbus_connection_call (connection,
"org.freedesktop.systemd1",
"/org/freedesktop/systemd1",
"org.freedesktop.systemd1.Manager",
command,
g_variant_new ("(ss)",
unit, mode),
NULL,
G_DBUS_CALL_FLAGS_NONE,
-1, NULL,
on_systemd_call_cb,
(gpointer) command);
return TRUE;
}
gboolean
shell_util_start_systemd_unit (const char *unit,
const char *mode,
GError **error)
{
return shell_util_systemd_call ("StartUnit", unit, mode, error);
}
gboolean
shell_util_stop_systemd_unit (const char *unit,
const char *mode,
GError **error)
{
return shell_util_systemd_call ("StopUnit", unit, mode, error);
}

View File

@@ -59,13 +59,6 @@ cairo_surface_t * shell_util_composite_capture_images (ClutterCapture *captures
void shell_util_check_cloexec_fds (void);
gboolean shell_util_start_systemd_unit (const char *unit,
const char *mode,
GError **error);
gboolean shell_util_stop_systemd_unit (const char *unit,
const char *mode,
GError **error);
G_END_DECLS
#endif /* __SHELL_UTIL_H__ */

View File

@@ -128,22 +128,14 @@ transfer_cb (MetaSelection *selection,
GAsyncResult *res,
TransferData *data)
{
gchar *text = NULL;
const gchar *text = NULL;
if (meta_selection_transfer_finish (selection, res, NULL))
{
gsize data_size;
data_size =
g_memory_output_stream_get_data_size (G_MEMORY_OUTPUT_STREAM (data->stream));
text = g_new0 (char, data_size + 1);
memcpy (text, g_memory_output_stream_get_data (G_MEMORY_OUTPUT_STREAM (data->stream)), data_size);
}
text = g_memory_output_stream_get_data (G_MEMORY_OUTPUT_STREAM (data->stream));
data->callback (data->clipboard, text, data->user_data);
g_object_unref (data->stream);
g_free (data);
g_free (text);
}
/**