Compare commits
	
		
			129 Commits
		
	
	
		
			benzea/sys
			...
			wip/exalm/
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 35aa7998bc | ||
|   | 314a89a837 | ||
|   | 57ed68541a | ||
|   | 413c677fcf | ||
|   | 3d86e6e791 | ||
|   | 3fbd61cbf0 | ||
|   | 43b4f2c7d5 | ||
|   | 7eb4088f45 | ||
|   | f00201fa6c | ||
|   | 1aca2ba6bb | ||
|   | e9131465dd | ||
|   | 0ee7f02f8e | ||
|   | 451f4e3636 | ||
|   | 2fc4987c73 | ||
|   | 4525ad346d | ||
|   | e4b8a4b432 | ||
|   | 62e594af6d | ||
|   | ce92270626 | ||
|   | bdcf3037ca | ||
|   | 9698ff491a | ||
|   | 2a9e065cfb | ||
|   | 4c93ef39fa | ||
|   | 22107c183b | ||
|   | c06eb5d0a7 | ||
|   | e76877c4b8 | ||
|   | 2a32fb2e72 | ||
|   | de86920e0e | ||
|   | 8754736fda | ||
|   | d2ead59d74 | ||
|   | 2f4fcc59a1 | ||
|   | ba6dbb228d | ||
|   | 60e386048b | ||
|   | c2904fa14d | ||
|   | dfdb139d9c | ||
|   | ce63d21dcc | ||
|   | 1da9937453 | ||
|   | 9f11fbad16 | ||
|   | f54e7804c5 | ||
|   | 7db5f8b28e | ||
|   | 743ce23fbc | ||
|   | a3267be192 | ||
|   | 4ad2523877 | ||
|   | 4bfee3a8ca | ||
|   | fc964f975a | ||
|   | 52f85c9465 | ||
|   | 691610f23c | ||
|   | b6a2b2b8a5 | ||
|   | 1ad8a2fcf6 | ||
|   | 7ce08845f1 | ||
|   | d469250130 | ||
|   | 7fd5c47e06 | ||
|   | 8704b1004e | ||
|   | 65a9fb8c01 | ||
|   | 25a7a8006a | ||
|   | 6fe1d3248a | ||
|   | 13f97532bf | ||
|   | 1acee3d702 | ||
|   | 1d17404471 | ||
|   | 48b860b69f | ||
|   | a030c54661 | ||
|   | dcf7bae6c7 | ||
|   | d0ace108e5 | ||
|   | 32d5744014 | ||
|   | d16094774b | ||
|   | ac664ba321 | ||
|   | 0888a9bffd | ||
|   | 5e82d72424 | ||
|   | 2513835e89 | ||
|   | 98b70ef00f | ||
|   | ae11381b88 | ||
|   | e9596f2775 | ||
|   | 8adbc8010a | ||
|   | 76fb559964 | ||
|   | 1bc1b4d9d8 | ||
|   | dfc0ef56f6 | ||
|   | 1e68e78d8e | ||
|   | 17fa5a2db4 | ||
|   | 004a5e1042 | ||
|   | 4915a9e8e4 | ||
|   | 8a7e44ccf0 | ||
|   | a497afe695 | ||
|   | 15c252c11d | ||
|   | 27da3ed1fe | ||
|   | 8656102182 | ||
|   | 24d3744cb9 | ||
|   | 031913b9df | ||
|   | e53443daf9 | ||
|   | 06317f4f6a | ||
|   | c69e195441 | ||
|   | a53b48de4c | ||
|   | eca98aee42 | ||
|   | ea5aaa8ab2 | ||
|   | 72566eda43 | ||
|   | 7a4f9a5ff3 | ||
|   | ba23fd9989 | ||
|   | c101196f5b | ||
|   | 1687a5451e | ||
|   | ea4d5f89eb | ||
|   | 9e388ebcfd | ||
|   | 8d9cae45f9 | ||
|   | 406d0900a7 | ||
|   | cf611d2be8 | ||
|   | 7875fc831b | ||
|   | 44bca36385 | ||
|   | e2c3198627 | ||
|   | 8b549f3d5b | ||
|   | a0e3c342a6 | ||
|   | a80331dbcf | ||
|   | 0068dab001 | ||
|   | 7d42990462 | ||
|   | e6dec7a9dd | ||
|   | 8adfc5b106 | ||
|   | 8be95b5785 | ||
|   | 9194de8460 | ||
|   | 6dccbc5a90 | ||
|   | efba1e83c7 | ||
|   | d1442765a6 | ||
|   | 72e5caf6e1 | ||
|   | 3768b6b701 | ||
|   | e5cde4700f | ||
|   | a207f67f73 | ||
|   | b73aace476 | ||
|   | 346d37ecbb | ||
|   | 7bb29817f7 | ||
|   | 92b92a2e0a | ||
|   | 8e79f9f2dc | ||
|   | 05b345cc92 | ||
|   | 89f9925208 | ||
|   | fcc1d7beff | 
| @@ -54,7 +54,7 @@ build: | ||||
|         - meson mutter mutter/build --prefix=/usr -Dtests=false | ||||
|         - ninja -C mutter/build install | ||||
|     script: | ||||
|         - meson . build -Dbuiltype=debugoptimized -Dman=false | ||||
|         - meson . build -Dbuiltype=debugoptimized -Dman=false --werror | ||||
|         - ninja -C build | ||||
|         - ninja -C build install | ||||
|     <<: *only_default | ||||
|   | ||||
| @@ -66,6 +66,10 @@ create_common() { | ||||
|   rm $OUTPUT_FINAL.tmp | ||||
| } | ||||
|  | ||||
| # Disable MR handling for now. We aren't ready to enforce | ||||
| # non-legacy style just yet ... | ||||
| unset CI_MERGE_REQUEST_TARGET_BRANCH_NAME | ||||
|  | ||||
| if [ "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" ]; then | ||||
|   git fetch $CI_MERGE_REQUEST_PROJECT_URL.git $CI_MERGE_REQUEST_TARGET_BRANCH_NAME | ||||
|   branch_point=$(git merge-base HEAD FETCH_HEAD) | ||||
| @@ -86,12 +90,16 @@ run_eslint LEGACY | ||||
| echo Done. | ||||
| create_common | ||||
|  | ||||
| if ! is_empty $OUTPUT_FINAL; then | ||||
|   cat $OUTPUT_FINAL | ||||
|   exit 1 | ||||
| fi | ||||
|  | ||||
| # Just show the report and succeed when not testing a MR | ||||
| if [ -z "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" ]; then | ||||
|   cat $OUTPUT_FINAL | ||||
|   exit 0 | ||||
| fi | ||||
|  | ||||
| copy_matched_lines $OUTPUT_FINAL $LINE_CHANGES $OUTPUT_MR | ||||
| copy_matched_lines $OUTPUT_REGULAR $LINE_CHANGES $OUTPUT_MR | ||||
| cat $OUTPUT_MR | ||||
| is_empty $OUTPUT_MR | ||||
|   | ||||
							
								
								
									
										34
									
								
								NEWS
									
									
									
									
									
								
							
							
						
						
									
										34
									
								
								NEWS
									
									
									
									
									
								
							| @@ -1,3 +1,37 @@ | ||||
| 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] | ||||
|   | ||||
| @@ -1,12 +0,0 @@ | ||||
| [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@ | ||||
| @@ -1,13 +0,0 @@ | ||||
| [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 | ||||
|  | ||||
| @@ -23,3 +23,5 @@ ExecStart=@bindir@/gnome-shell | ||||
| SuccessExitStatus=1 | ||||
| # On wayland we cannot restart | ||||
| Restart=no | ||||
| # Kill any stubborn child processes after this long | ||||
| TimeoutStopSec=5 | ||||
|   | ||||
| @@ -8,5 +8,3 @@ Before=gnome-session-initialized.target | ||||
|  | ||||
| Requires=gnome-shell-wayland.service | ||||
| After=gnome-shell-wayland.service | ||||
|  | ||||
| Wants=gnome-shell-extensions-disabled-warning.service | ||||
|   | ||||
| @@ -29,3 +29,5 @@ SuccessExitStatus=1 | ||||
| Restart=always | ||||
| # Do not wait before restarting the shell | ||||
| RestartSec=0ms | ||||
| # Kill any stubborn child processes after this long | ||||
| TimeoutStopSec=5 | ||||
|   | ||||
| @@ -8,5 +8,3 @@ Before=gnome-session-initialized.target | ||||
|  | ||||
| Requires=gnome-shell-x11.service | ||||
| After=gnome-shell-x11.service | ||||
|  | ||||
| Wants=gnome-shell-extensions-disabled-warning.service | ||||
|   | ||||
| @@ -31,19 +31,6 @@ 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 | ||||
|   | ||||
| @@ -611,6 +611,14 @@ StScrollBar { | ||||
|   } | ||||
|  | ||||
|  | ||||
| // Rename popup | ||||
|  | ||||
| .rename-folder-popup-box { | ||||
|   spacing: 6px; | ||||
|   margin-left: 12px; | ||||
|   margin-right: 12px; | ||||
| } | ||||
|  | ||||
| // Background menu | ||||
| .background-menu { -boxpointer-gap: 4px; -arrow-rise: 0px; } | ||||
|  | ||||
|   | ||||
| @@ -10,7 +10,7 @@ const _ = Gettext.gettext; | ||||
|  | ||||
| const Config = imports.misc.config; | ||||
| const ExtensionUtils = imports.misc.extensionUtils; | ||||
| const { loadInterfaceXML, deleteGFile } = imports.misc.fileUtils; | ||||
| const { loadInterfaceXML } = imports.misc.fileUtils; | ||||
|  | ||||
| const { ExtensionState } = ExtensionUtils; | ||||
|  | ||||
| @@ -219,33 +219,10 @@ 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 | ||||
|         }); | ||||
|         vbox.add(this._mainStack); | ||||
|         this._window.add(this._mainStack); | ||||
|  | ||||
|         let scroll = new Gtk.ScrolledWindow({ hscrollbar_policy: Gtk.PolicyType.NEVER }); | ||||
|  | ||||
| @@ -361,20 +338,6 @@ 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; | ||||
| @@ -604,6 +567,10 @@ class ExtensionRow extends Gtk.ListBoxRow { | ||||
|         this._extension = extension; | ||||
|         this._prefsModule = null; | ||||
|  | ||||
|         this.connect('destroy', this._onDestroy.bind(this)); | ||||
|  | ||||
|         this._buildUI(); | ||||
|  | ||||
|         this._extensionStateChangedId = this._app.shellProxy.connectSignal( | ||||
|             'ExtensionStateChanged', (p, sender, [uuid, newState]) => { | ||||
|                 if (this.uuid !== uuid) | ||||
| @@ -611,16 +578,13 @@ class ExtensionRow extends Gtk.ListBoxRow { | ||||
|  | ||||
|                 this._extension = ExtensionUtils.deserializeExtension(newState); | ||||
|                 let state = (this._extension.state == ExtensionState.ENABLED); | ||||
|                 this._switch.freeze_notify(); | ||||
|  | ||||
|                 GObject.signal_handler_block(this._switch, this._notifyActiveId); | ||||
|                 this._switch.state = state; | ||||
|                 this._switch.active = this._extension.isRequested; | ||||
|                 GObject.signal_handler_unblock(this._switch, this._notifyActiveId); | ||||
|  | ||||
|                 this._switch.sensitive = this._canToggle(); | ||||
|                 this._switch.thaw_notify(); | ||||
|             }); | ||||
|  | ||||
|         this.connect('destroy', this._onDestroy.bind(this)); | ||||
|  | ||||
|         this._buildUI(); | ||||
|     } | ||||
|  | ||||
|     get uuid() { | ||||
| @@ -684,19 +648,15 @@ 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', () => { | ||||
|         this._notifyActiveId = this._switch.connect('notify::active', () => { | ||||
|             if (this._switch.active) | ||||
|                 this._app.shellProxy.EnableExtensionRemote(this.uuid); | ||||
|             else | ||||
|                 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); | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -21,6 +21,7 @@ var Manager = class { | ||||
|                                            '/org/freedesktop/realmd', | ||||
|                                            this._reloadRealms.bind(this)); | ||||
|         this._realms = {}; | ||||
|         this._loginFormat = null; | ||||
|  | ||||
|         this._signalId = this._aggregateProvider.connect('g-properties-changed', | ||||
|             (proxy, properties) => { | ||||
| @@ -86,7 +87,7 @@ var Manager = class { | ||||
|     } | ||||
|  | ||||
|     get loginFormat() { | ||||
|         if (this._loginFormat !== undefined) | ||||
|         if (this._loginFormat) | ||||
|             return this._loginFormat; | ||||
|  | ||||
|         this._updateLoginFormat(); | ||||
|   | ||||
| @@ -31,7 +31,7 @@ var ExtensionState = { | ||||
|     UNINSTALLED: 99 | ||||
| }; | ||||
|  | ||||
| const SERIALIZED_PROPERTIES = ['type', 'state', 'path', 'error', 'hasPrefs', 'canChange', 'isRequested']; | ||||
| const SERIALIZED_PROPERTIES = ['type', 'state', 'path', 'error', 'hasPrefs', 'canChange']; | ||||
|  | ||||
| /** | ||||
|  * getCurrentExtension: | ||||
| @@ -165,8 +165,8 @@ function versionCheck(required, current) { | ||||
|         let requiredArray = required[i].split('.'); | ||||
|         if (requiredArray[0] == major && | ||||
|             requiredArray[1] == minor && | ||||
|             (requiredArray[2] == point || | ||||
|              (requiredArray[2] == undefined && parseInt(minor) % 2 == 0))) | ||||
|             ((requiredArray[2] === undefined && parseInt(minor) % 2 == 0) || | ||||
|              requiredArray[2] == point)) | ||||
|             return true; | ||||
|     } | ||||
|     return false; | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported getIBusManager */ | ||||
|  | ||||
| const { Gio, GLib, IBus } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const IBusCandidatePopup = imports.ui.ibusCandidatePopup; | ||||
| @@ -19,8 +18,8 @@ function _checkIBusVersion(requiredMajor, requiredMinor, requiredMicro) { | ||||
|          IBus.MICRO_VERSION >= requiredMicro)) | ||||
|         return; | ||||
|  | ||||
|     throw "Found IBus version %d.%d.%d but required is %d.%d.%d". | ||||
|         format(IBus.MAJOR_VERSION, IBus.MINOR_VERSION, IBus.MINOR_VERSION, | ||||
|     throw "Found IBus version %d.%d.%d but required is %d.%d.%d" | ||||
|         .format(IBus.MAJOR_VERSION, IBus.MINOR_VERSION, IBus.MINOR_VERSION, | ||||
|                 requiredMajor, requiredMinor, requiredMicro); | ||||
| } | ||||
|  | ||||
| @@ -59,15 +58,19 @@ var IBusManager = class { | ||||
|         this._spawn(); | ||||
|     } | ||||
|  | ||||
|     _spawn() { | ||||
|     _spawn(extraArgs = []) { | ||||
|         try { | ||||
|             Gio.Subprocess.new(['ibus-daemon', '--xim', '--panel', 'disable'], | ||||
|                                Gio.SubprocessFlags.NONE); | ||||
|             let cmdLine = ['ibus-daemon', '--panel', 'disable', ...extraArgs]; | ||||
|             Gio.Subprocess.new(cmdLine, 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(); | ||||
| @@ -80,8 +83,6 @@ var IBusManager = class { | ||||
|         this._currentEngineName = null; | ||||
|  | ||||
|         this.emit('ready', false); | ||||
|  | ||||
|         this._spawn(); | ||||
|     } | ||||
|  | ||||
|     _onConnected() { | ||||
| @@ -214,12 +215,14 @@ var IBusManager = class { | ||||
|             return; | ||||
|  | ||||
|         if (this._preloadEnginesId != 0) { | ||||
|             Mainloop.source_remove(this._preloadEnginesId); | ||||
|             GLib.source_remove(this._preloadEnginesId); | ||||
|             this._preloadEnginesId = 0; | ||||
|         } | ||||
|  | ||||
|         this._preloadEnginesId = | ||||
|             Mainloop.timeout_add_seconds(this._PRELOAD_ENGINES_DELAY_TIME, | ||||
|             GLib.timeout_add_seconds( | ||||
|                 GLib.PRIORITY_DEFAULT, | ||||
|                 this._PRELOAD_ENGINES_DELAY_TIME, | ||||
|                 () => { | ||||
|                     this._ibus.preload_engines_async( | ||||
|                         ids, | ||||
|   | ||||
| @@ -217,7 +217,7 @@ function isUnsafeExpression(str) { | ||||
|     prunedStr = prunedStr.replace(/[=!]==/g, '');    //replace === and !== with nothing | ||||
|     prunedStr = prunedStr.replace(/[=<>!]=/g, '');    //replace ==, <=, >=, != with nothing | ||||
|  | ||||
|     if (prunedStr.match(/=/)) { | ||||
|     if (prunedStr.match(/[=]/)) { | ||||
|         return true; | ||||
|     } else if (prunedStr.match(/;/)) { | ||||
|         // If we contain a semicolon not inside of a quote/regex, assume we're unsafe as well | ||||
|   | ||||
| @@ -5,7 +5,6 @@ | ||||
|  | ||||
| const { Clutter, Gio, GLib, GObject, Shell, St } = imports.gi; | ||||
| const Gettext = imports.gettext; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const Main = imports.ui.main; | ||||
| const Params = imports.misc.params; | ||||
| @@ -314,7 +313,8 @@ function lowerBound(array, val, cmp) { | ||||
|     if (array.length == 0) | ||||
|         return 0; | ||||
|  | ||||
|     min = 0; max = array.length; | ||||
|     min = 0; | ||||
|     max = array.length; | ||||
|     while (min < (max - 1)) { | ||||
|         mid = Math.floor((min + max) / 2); | ||||
|         v = cmp(array[mid], val); | ||||
|   | ||||
| @@ -3,7 +3,6 @@ | ||||
|             WindowCyclerPopup */ | ||||
|  | ||||
| const { Atk, Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const Main = imports.ui.main; | ||||
| const SwitcherPopup = imports.ui.switcherPopup; | ||||
| @@ -292,7 +291,7 @@ class AppSwitcherPopup extends SwitcherPopup.SwitcherPopup { | ||||
|         if (this._thumbnails) | ||||
|             this._destroyThumbnails(); | ||||
|         if (this._thumbnailTimeoutId != 0) | ||||
|             Mainloop.source_remove(this._thumbnailTimeoutId); | ||||
|             GLib.source_remove(this._thumbnailTimeoutId); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
| @@ -327,7 +326,7 @@ class AppSwitcherPopup extends SwitcherPopup.SwitcherPopup { | ||||
|         } | ||||
|  | ||||
|         if (this._thumbnailTimeoutId != 0) { | ||||
|             Mainloop.source_remove(this._thumbnailTimeoutId); | ||||
|             GLib.source_remove(this._thumbnailTimeoutId); | ||||
|             this._thumbnailTimeoutId = 0; | ||||
|         } | ||||
|  | ||||
| @@ -344,7 +343,8 @@ class AppSwitcherPopup extends SwitcherPopup.SwitcherPopup { | ||||
|             this._thumbnails.highlight(window, forceAppFocus); | ||||
|         } else if (this._items[this._selectedIndex].cachedWindows.length > 1 && | ||||
|                    !forceAppFocus) { | ||||
|             this._thumbnailTimeoutId = Mainloop.timeout_add ( | ||||
|             this._thumbnailTimeoutId = GLib.timeout_add( | ||||
|                 GLib.PRIORITY_DEFAULT, | ||||
|                 THUMBNAIL_POPUP_TIME, | ||||
|                 this._timeoutPopupThumbnails.bind(this)); | ||||
|             GLib.Source.set_name_by_id(this._thumbnailTimeoutId, '[gnome-shell] this._timeoutPopupThumbnails'); | ||||
| @@ -648,8 +648,9 @@ class WindowCyclerPopup extends CyclerPopup { | ||||
|     } | ||||
| }); | ||||
|  | ||||
| var AppIcon = GObject.registerClass( | ||||
| class AppIcon extends St.BoxLayout { | ||||
| var AppIcon = GObject.registerClass({ | ||||
|     GTypeName: 'AltTab_AppIcon' | ||||
| }, class AppIcon extends St.BoxLayout { | ||||
|     _init(app) { | ||||
|         super._init({ style_class: 'alt-tab-app', | ||||
|                       vertical: true }); | ||||
| @@ -711,7 +712,7 @@ class AppSwitcher extends SwitcherPopup.SwitcherList { | ||||
|  | ||||
|     _onDestroy() { | ||||
|         if (this._mouseTimeOutId != 0) | ||||
|             Mainloop.source_remove(this._mouseTimeOutId); | ||||
|             GLib.source_remove(this._mouseTimeOutId); | ||||
|  | ||||
|         this.icons.forEach(icon => { | ||||
|             icon.app.disconnect(icon._stateChangedId); | ||||
| @@ -790,9 +791,11 @@ class AppSwitcher extends SwitcherPopup.SwitcherList { | ||||
|     // activation when the thumbnail list is open | ||||
|     _onItemEnter(index) { | ||||
|         if (this._mouseTimeOutId != 0) | ||||
|             Mainloop.source_remove(this._mouseTimeOutId); | ||||
|             GLib.source_remove(this._mouseTimeOutId); | ||||
|         if (this._altTabPopup.thumbnailsVisible) { | ||||
|             this._mouseTimeOutId = Mainloop.timeout_add(APP_ICON_HOVER_TIMEOUT, | ||||
|             this._mouseTimeOutId = GLib.timeout_add( | ||||
|                 GLib.PRIORITY_DEFAULT, | ||||
|                 APP_ICON_HOVER_TIMEOUT, | ||||
|                 () => { | ||||
|                     this._enterItem(index); | ||||
|                     this._mouseTimeOutId = 0; | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported Animation, AnimatedIcon, Spinner */ | ||||
|  | ||||
| const { Clutter, GLib, Gio, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| var ANIMATED_ICON_UPDATE_TIMEOUT = 16; | ||||
| var SPINNER_ANIMATION_TIME = 300; | ||||
| @@ -45,7 +44,7 @@ var Animation = class { | ||||
|  | ||||
|     stop() { | ||||
|         if (this._timeoutId > 0) { | ||||
|             Mainloop.source_remove(this._timeoutId); | ||||
|             GLib.source_remove(this._timeoutId); | ||||
|             this._timeoutId = 0; | ||||
|         } | ||||
|  | ||||
| @@ -54,12 +53,19 @@ var Animation = class { | ||||
|  | ||||
|     _loadFile(file, width, height) { | ||||
|         let [validResourceScale, resourceScale] = this.actor.get_resource_scale(); | ||||
|         let wasPlaying = this._isPlaying; | ||||
|  | ||||
|         if (this._isPlaying) | ||||
|             this.stop(); | ||||
|  | ||||
|         this._isLoaded = false; | ||||
|         this.actor.destroy_all_children(); | ||||
|  | ||||
|         if (!validResourceScale) | ||||
|         if (!validResourceScale) { | ||||
|             if (wasPlaying) | ||||
|                 this.play(); | ||||
|             return; | ||||
|         } | ||||
|  | ||||
|         let textureCache = St.TextureCache.get_default(); | ||||
|         let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor; | ||||
| @@ -67,6 +73,9 @@ var Animation = class { | ||||
|                                                           scaleFactor, resourceScale, | ||||
|                                                           this._animationsLoaded.bind(this)); | ||||
|         this.actor.set_child(this._animations); | ||||
|  | ||||
|         if (wasPlaying) | ||||
|             this.play(); | ||||
|     } | ||||
|  | ||||
|     _showFrame(frame) { | ||||
|   | ||||
| @@ -3,7 +3,6 @@ | ||||
|  | ||||
| const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Signals = imports.signals; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const AppFavorites = imports.ui.appFavorites; | ||||
| const BoxPointer = imports.ui.boxpointer; | ||||
| @@ -1159,11 +1158,10 @@ var AppSearchProvider = class AppSearchProvider { | ||||
|             if (id.endsWith('.desktop')) { | ||||
|                 let app = this._appSys.lookup_app(id); | ||||
|  | ||||
|                 metas.push({ 'id': app.get_id(), | ||||
|                              'name': app.get_name(), | ||||
|                              'createIcon'(size) { | ||||
|                                  return app.create_icon_texture(size); | ||||
|                              } | ||||
|                 metas.push({ | ||||
|                     id: app.get_id(), | ||||
|                     name: app.get_name(), | ||||
|                     createIcon: size => app.create_icon_texture(size), | ||||
|                 }); | ||||
|             } else { | ||||
|                 let name = this._systemActions.getName(id); | ||||
| @@ -1438,6 +1436,13 @@ var FolderIcon = class FolderIcon { | ||||
|         this._itemDragEndId = Main.overview.connect( | ||||
|             'item-drag-end', this._onDragEnd.bind(this)); | ||||
|  | ||||
|         this._popupTimeoutId = 0; | ||||
|  | ||||
|         this.actor.connect('leave-event', this._onLeaveEvent.bind(this)); | ||||
|         this.actor.connect('button-press-event', this._onButtonPress.bind(this)); | ||||
|         this.actor.connect('touch-event', this._onTouchEvent.bind(this)); | ||||
|         this.actor.connect('popup-menu', this._popupRenamePopup.bind(this)); | ||||
|  | ||||
|         this.actor.connect('clicked', this.open.bind(this)); | ||||
|         this.actor.connect('destroy', this.onDestroy.bind(this)); | ||||
|         this.actor.connect('notify::mapped', () => { | ||||
| @@ -1462,9 +1467,12 @@ var FolderIcon = class FolderIcon { | ||||
|  | ||||
|         if (this._popup) | ||||
|             this._popup.actor.destroy(); | ||||
|  | ||||
|         this._removeMenuTimeout(); | ||||
|     } | ||||
|  | ||||
|     open() { | ||||
|         this._removeMenuTimeout(); | ||||
|         this._ensurePopup(); | ||||
|         this.view.actor.vscroll.adjustment.value = 0; | ||||
|         this._openSpaceForPopup(); | ||||
| @@ -1627,6 +1635,76 @@ var FolderIcon = class FolderIcon { | ||||
|         this._popupInvalidated = false; | ||||
|     } | ||||
|  | ||||
|     _removeMenuTimeout() { | ||||
|         if (this._popupTimeoutId > 0) { | ||||
|             GLib.source_remove(this._popupTimeoutId); | ||||
|             this._popupTimeoutId = 0; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     _setPopupTimeout() { | ||||
|         this._removeMenuTimeout(); | ||||
|         this._popupTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, MENU_POPUP_TIMEOUT, () => { | ||||
|             this._popupTimeoutId = 0; | ||||
|             this._popupRenamePopup(); | ||||
|             return GLib.SOURCE_REMOVE; | ||||
|         }); | ||||
|         GLib.Source.set_name_by_id(this._popupTimeoutId, | ||||
|                                    '[gnome-shell] this._popupRenamePopup'); | ||||
|     } | ||||
|  | ||||
|     _onLeaveEvent(_actor, _event) { | ||||
|         this.actor.fake_release(); | ||||
|         this._removeMenuTimeout(); | ||||
|     } | ||||
|  | ||||
|     _onButtonPress(_actor, event) { | ||||
|         let button = event.get_button(); | ||||
|         if (button == 1) { | ||||
|             this._setPopupTimeout(); | ||||
|         } else if (button == 3) { | ||||
|             this._popupRenamePopup(); | ||||
|             return Clutter.EVENT_STOP; | ||||
|         } | ||||
|         return Clutter.EVENT_PROPAGATE; | ||||
|     } | ||||
|  | ||||
|     _onTouchEvent(actor, event) { | ||||
|         if (event.type() == Clutter.EventType.TOUCH_BEGIN) | ||||
|             this._setPopupTimeout(); | ||||
|  | ||||
|         return Clutter.EVENT_PROPAGATE; | ||||
|     } | ||||
|  | ||||
|     _popupRenamePopup() { | ||||
|         this._removeMenuTimeout(); | ||||
|         this.actor.fake_release(); | ||||
|  | ||||
|         if (!this._menu) { | ||||
|             this._menuManager = new PopupMenu.PopupMenuManager(this.actor); | ||||
|  | ||||
|             this._menu = new RenameFolderMenu(this, this._folder); | ||||
|             this._menuManager.addMenu(this._menu); | ||||
|  | ||||
|             this._menu.connect('open-state-changed', (menu, isPoppedUp) => { | ||||
|                 if (!isPoppedUp) | ||||
|                     this.actor.sync_hover(); | ||||
|             }); | ||||
|             let id = Main.overview.connect('hiding', () => { | ||||
|                 this._menu.close(); | ||||
|             }); | ||||
|             this.actor.connect('destroy', () => { | ||||
|                 Main.overview.disconnect(id); | ||||
|             }); | ||||
|  | ||||
|             this._menuManager.addMenu(this._menu); | ||||
|         } | ||||
|  | ||||
|         this.actor.set_hover(true); | ||||
|         this._menu.popup(); | ||||
|         this._menuManager.ignoreRelease(); | ||||
|     } | ||||
|  | ||||
|     adaptToSize(width, height) { | ||||
|         this._parentAvailableWidth = width; | ||||
|         this._parentAvailableHeight = height; | ||||
| @@ -1637,6 +1715,90 @@ var FolderIcon = class FolderIcon { | ||||
| }; | ||||
| Signals.addSignalMethods(FolderIcon.prototype); | ||||
|  | ||||
| var RenameFolderMenu = class RenameFolderMenu extends PopupMenu.PopupMenu { | ||||
|     constructor(source, folder) { | ||||
|         super(source.actor, 0.5, St.Side.BOTTOM); | ||||
|  | ||||
|         this._source = source; | ||||
|         this._folder = folder; | ||||
|  | ||||
|         // We want to keep the item hovered while the menu is up | ||||
|         this.blockSourceEvents = true; | ||||
|  | ||||
|         let box = new St.BoxLayout({ style_class: 'rename-folder-popup-box' }); | ||||
|         this.box.add_child(box); | ||||
|  | ||||
|         // Entry | ||||
|         this._entry = new St.Entry({ | ||||
|             x_expand: true, | ||||
|             width: 200, | ||||
|         }); | ||||
|         box.add_child(this._entry); | ||||
|  | ||||
|         this._entry.clutter_text.connect('notify::text', | ||||
|                                          this._validate.bind(this)); | ||||
|         this._entry.clutter_text.connect('activate', | ||||
|                                          this._updateFolderName.bind(this)); | ||||
|  | ||||
|         // Rename button | ||||
|         this._button = new St.Button({ | ||||
|             style_class: 'button', | ||||
|             reactive: true, | ||||
|             button_mask: St.ButtonMask.ONE | St.ButtonMask.TWO, | ||||
|             can_focus: true, | ||||
|             label: _("Rename"), | ||||
|         }); | ||||
|         box.add_child(this._button); | ||||
|  | ||||
|         this._button.connect('clicked', this._updateFolderName.bind(this)); | ||||
|  | ||||
|         // Chain our visibility and lifecycle to that of the source | ||||
|         this._sourceMappedId = source.actor.connect('notify::mapped', () => { | ||||
|             if (!source.actor.mapped) | ||||
|                 this.close(); | ||||
|         }); | ||||
|         source.actor.connect('destroy', () => { | ||||
|             source.actor.disconnect(this._sourceMappedId); | ||||
|             this.destroy(); | ||||
|         }); | ||||
|  | ||||
|         Main.uiGroup.add_actor(this.actor); | ||||
|     } | ||||
|  | ||||
|     popup() { | ||||
|         let folderName = _getFolderName(this._folder); | ||||
|  | ||||
|         this._entry.text = folderName; | ||||
|         this._entry.clutter_text.set_selection(0, folderName.length); | ||||
|  | ||||
|         this.open(); | ||||
|     } | ||||
|  | ||||
|     _isValidFolderName() { | ||||
|         let folderName = _getFolderName(this._folder); | ||||
|         let newFolderName = this._entry.text.trim(); | ||||
|  | ||||
|         return newFolderName.length > 0 && newFolderName != folderName; | ||||
|     } | ||||
|  | ||||
|     _validate() { | ||||
|         let isValid = this._isValidFolderName(); | ||||
|  | ||||
|         this._button.reactive = isValid; | ||||
|     } | ||||
|  | ||||
|     _updateFolderName() { | ||||
|         if (!this._isValidFolderName()) | ||||
|             return; | ||||
|  | ||||
|         let newFolderName = this._entry.text.trim(); | ||||
|         this._folder.set_string('name', newFolderName); | ||||
|         this._folder.set_boolean('translate', false); | ||||
|         this.close(); | ||||
|     } | ||||
| }; | ||||
| Signals.addSignalMethods(RenameFolderMenu.prototype); | ||||
|  | ||||
| var AppFolderPopup = class AppFolderPopup { | ||||
|     constructor(source, side) { | ||||
|         this._source = source; | ||||
| @@ -1912,7 +2074,7 @@ var AppIcon = class AppIcon { | ||||
|  | ||||
|     _removeMenuTimeout() { | ||||
|         if (this._menuTimeoutId > 0) { | ||||
|             Mainloop.source_remove(this._menuTimeoutId); | ||||
|             GLib.source_remove(this._menuTimeoutId); | ||||
|             this._menuTimeoutId = 0; | ||||
|         } | ||||
|     } | ||||
| @@ -1926,7 +2088,7 @@ var AppIcon = class AppIcon { | ||||
|  | ||||
|     _setPopupTimeout() { | ||||
|         this._removeMenuTimeout(); | ||||
|         this._menuTimeoutId = Mainloop.timeout_add(MENU_POPUP_TIMEOUT, () => { | ||||
|         this._menuTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, MENU_POPUP_TIMEOUT, () => { | ||||
|             this._menuTimeoutId = 0; | ||||
|             this.popupMenu(); | ||||
|             return GLib.SOURCE_REMOVE; | ||||
|   | ||||
| @@ -147,11 +147,10 @@ class AppFavorites { | ||||
|  | ||||
|         let app = Shell.AppSystem.get_default().lookup_app(appId); | ||||
|  | ||||
|         Main.overview.setMessage(_("%s has been added to your favorites.").format(app.get_name()), | ||||
|                                  { forFeedback: true, | ||||
|                                    undoCallback: () => { | ||||
|                                        this._removeFavorite(appId); | ||||
|                                    } | ||||
|         let msg = _("%s has been added to your favorites.").format(app.get_name()); | ||||
|         Main.overview.setMessage(msg, { | ||||
|             forFeedback: true, | ||||
|             undoCallback: () => this._removeFavorite(appId), | ||||
|         }); | ||||
|     } | ||||
|  | ||||
| @@ -181,11 +180,10 @@ class AppFavorites { | ||||
|         if (!this._removeFavorite(appId)) | ||||
|             return; | ||||
|  | ||||
|         Main.overview.setMessage(_("%s has been removed from your favorites.").format(app.get_name()), | ||||
|                                  { forFeedback: true, | ||||
|                                    undoCallback: () => { | ||||
|                                        this._addFavorite(appId, pos); | ||||
|                                    } | ||||
|         let msg = _("%s has been removed from your favorites.").format(app.get_name()); | ||||
|         Main.overview.setMessage(msg, { | ||||
|             forFeedback: true, | ||||
|             undoCallback: () => this._addFavorite(appId, pos), | ||||
|         }); | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -441,7 +441,8 @@ var Background = class Background { | ||||
|     } | ||||
|  | ||||
|     _loadAnimation(file) { | ||||
|         this._cache.getAnimation({ file: file, | ||||
|         this._cache.getAnimation({ | ||||
|             file: file, | ||||
|             settingsSchema: this._settings.schema_id, | ||||
|             onLoaded: animation => { | ||||
|                 this._animation = animation; | ||||
| @@ -748,7 +749,8 @@ var BackgroundManager = class BackgroundManager { | ||||
|  | ||||
|     _createBackgroundActor() { | ||||
|         let background = this._backgroundSource.getBackground(this._monitorIndex); | ||||
|         let backgroundActor = new Meta.BackgroundActor({ meta_display: global.display, | ||||
|         let backgroundActor = new Meta.BackgroundActor({ | ||||
|             meta_display: global.display, | ||||
|             monitor: this._monitorIndex, | ||||
|             background: background.background, | ||||
|             vignette: this._vignette, | ||||
|   | ||||
| @@ -31,7 +31,7 @@ function addBackgroundMenu(actor, layoutManager) { | ||||
|  | ||||
|     function openMenu(x, y) { | ||||
|         Main.layoutManager.setDummyCursorGeometry(x, y, 0, 0); | ||||
|         actor._backgroundMenu.open(BoxPointer.PopupAnimation.NONE); | ||||
|         actor._backgroundMenu.open(BoxPointer.PopupAnimation.FULL); | ||||
|     } | ||||
|  | ||||
|     let clickAction = new Clutter.ClickAction(); | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| // -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*- | ||||
| /* exported Calendar, CalendarMessageList */ | ||||
|  | ||||
| const { Clutter, Gio, GLib, Shell, St } = imports.gi; | ||||
| const { Clutter, Gio, GLib, GObject, Shell, St } = imports.gi; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const Main = imports.ui.main; | ||||
| @@ -688,15 +688,15 @@ var EventMessage = class EventMessage extends MessageList.Message { | ||||
|         let rtl = Clutter.get_default_text_direction() == Clutter.TextDirection.RTL; | ||||
|         if (this._event.date < periodBegin && !this._event.allDay) { | ||||
|             if (rtl) | ||||
|                 title = title + ELLIPSIS_CHAR; | ||||
|                 title = `${title}${ELLIPSIS_CHAR}`; | ||||
|             else | ||||
|                 title = ELLIPSIS_CHAR + title; | ||||
|                 title = `${ELLIPSIS_CHAR}${title}`; | ||||
|         } | ||||
|         if (this._event.end > periodEnd && !this._event.allDay) { | ||||
|             if (rtl) | ||||
|                 title = ELLIPSIS_CHAR + title; | ||||
|                 title = `${ELLIPSIS_CHAR}${title}`; | ||||
|             else | ||||
|                 title = title + ELLIPSIS_CHAR; | ||||
|                 title = `${title}${ELLIPSIS_CHAR}`; | ||||
|         } | ||||
|         return title; | ||||
|     } | ||||
| @@ -1075,6 +1075,10 @@ var CalendarMessageList = class CalendarMessageList { | ||||
|         }); | ||||
|         box.add_actor(this._clearButton); | ||||
|  | ||||
|         this._placeholder.actor.bind_property('visible', | ||||
|             this._clearButton, 'visible', | ||||
|             GObject.BindingFlags.INVERT_BOOLEAN); | ||||
|  | ||||
|         this._sectionList = new St.BoxLayout({ style_class: 'message-list-sections', | ||||
|                                                vertical: true, | ||||
|                                                y_expand: true, | ||||
| @@ -1145,7 +1149,6 @@ var CalendarMessageList = class CalendarMessageList { | ||||
|  | ||||
|         let empty = sections.every(s => s.empty || !s.actor.visible); | ||||
|         this._placeholder.actor.visible = empty; | ||||
|         this._clearButton.visible = !empty; | ||||
|  | ||||
|         let canClear = sections.some(s => s.canClear && s.actor.visible); | ||||
|         this._clearButton.reactive = canClear; | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported Component */ | ||||
|  | ||||
| const { Gio, GLib } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Params = imports.misc.params; | ||||
|  | ||||
| const GnomeSession = imports.misc.gnomeSession; | ||||
| @@ -39,7 +38,7 @@ var AutomountManager = class { | ||||
|         this._driveDisconnectedId = this._volumeMonitor.connect('drive-disconnected', this._onDriveDisconnected.bind(this)); | ||||
|         this._driveEjectButtonId = this._volumeMonitor.connect('drive-eject-button', this._onDriveEjectButton.bind(this)); | ||||
|  | ||||
|         this._mountAllId = Mainloop.idle_add(this._startupMountAll.bind(this)); | ||||
|         this._mountAllId = GLib.idle_add(GLib.PRIORITY_DEFAULT, this._startupMountAll.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._mountAllId, '[gnome-shell] this._startupMountAll'); | ||||
|     } | ||||
|  | ||||
| @@ -51,7 +50,7 @@ var AutomountManager = class { | ||||
|         this._volumeMonitor.disconnect(this._driveEjectButtonId); | ||||
|  | ||||
|         if (this._mountAllId > 0) { | ||||
|             Mainloop.source_remove(this._mountAllId); | ||||
|             GLib.source_remove(this._mountAllId); | ||||
|             this._mountAllId = 0; | ||||
|         } | ||||
|     } | ||||
| @@ -220,7 +219,7 @@ var AutomountManager = class { | ||||
|  | ||||
|     _onVolumeRemoved(monitor, volume) { | ||||
|         if (volume._allowAutorunExpireId && volume._allowAutorunExpireId > 0) { | ||||
|             Mainloop.source_remove(volume._allowAutorunExpireId); | ||||
|             GLib.source_remove(volume._allowAutorunExpireId); | ||||
|             delete volume._allowAutorunExpireId; | ||||
|         } | ||||
|         this._volumeQueue =  | ||||
| @@ -249,7 +248,7 @@ var AutomountManager = class { | ||||
|     } | ||||
|  | ||||
|     _allowAutorunExpire(volume) { | ||||
|         let id = Mainloop.timeout_add_seconds(AUTORUN_EXPIRE_TIMEOUT_SECS, () => { | ||||
|         let id = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, AUTORUN_EXPIRE_TIMEOUT_SECS, () => { | ||||
|             volume.allowAutorun = false; | ||||
|             delete volume._allowAutorunExpireId; | ||||
|             return GLib.SOURCE_REMOVE; | ||||
|   | ||||
| @@ -325,9 +325,9 @@ var AutorunNotification = class extends MessageTray.Notification { | ||||
|                                  style_class: 'hotplug-notification-item-icon' }); | ||||
|         box.add(icon); | ||||
|  | ||||
|         let label = new St.Bin({ y_align: St.Align.MIDDLE, | ||||
|                                  child: new St.Label | ||||
|                                  ({ text: _("Open with %s").format(app.get_name()) }) | ||||
|         let label = new St.Bin({ | ||||
|             y_align: St.Align.MIDDLE, | ||||
|             child: new St.Label({ text: _("Open with %s").format(app.get_name()) }), | ||||
|         }); | ||||
|         box.add(label); | ||||
|  | ||||
|   | ||||
| @@ -112,16 +112,17 @@ class NetworkSecretDialog extends ModalDialog.ModalDialog { | ||||
|                                         expand: true }); | ||||
|         } | ||||
|  | ||||
|         this._okButton = { label: _("Connect"), | ||||
|         this._okButton = { | ||||
|             label: _("Connect"), | ||||
|             action: this._onOk.bind(this), | ||||
|                            default: true | ||||
|             default: true, | ||||
|         }; | ||||
|  | ||||
|         this.setButtons([{ label: _("Cancel"), | ||||
|         this.setButtons([{ | ||||
|             label: _("Cancel"), | ||||
|             action: this.cancel.bind(this), | ||||
|             key: Clutter.KEY_Escape, | ||||
|                          }, | ||||
|                          this._okButton]); | ||||
|         }, this._okButton]); | ||||
|  | ||||
|         this._updateOkButton(); | ||||
|     } | ||||
| @@ -551,10 +552,11 @@ var VPNRequestHandler = class { | ||||
|                 let shouldAsk = keyfile.get_boolean(groups[i], 'ShouldAsk'); | ||||
|  | ||||
|                 if (shouldAsk) { | ||||
|                     contentOverride.secrets.push({ label: keyfile.get_string(groups[i], 'Label'), | ||||
|                     contentOverride.secrets.push({ | ||||
|                         label: keyfile.get_string(groups[i], 'Label'), | ||||
|                         key: groups[i], | ||||
|                         value: value, | ||||
|                                                    password: keyfile.get_boolean(groups[i], 'IsSecret') | ||||
|                         password: keyfile.get_boolean(groups[i], 'IsSecret'), | ||||
|                     }); | ||||
|                 } else { | ||||
|                     if (!value.length) // Ignore empty secrets | ||||
| @@ -609,9 +611,10 @@ Signals.addSignalMethods(VPNRequestHandler.prototype); | ||||
|  | ||||
| var NetworkAgent = class { | ||||
|     constructor() { | ||||
|         this._native = new Shell.NetworkAgent({ identifier: 'org.gnome.Shell.NetworkAgent', | ||||
|         this._native = new Shell.NetworkAgent({ | ||||
|             identifier: 'org.gnome.Shell.NetworkAgent', | ||||
|             capabilities: NM.SecretAgentCapabilities.VPN_HINTS, | ||||
|                                                 auto_register: false | ||||
|             auto_register: false, | ||||
|         }); | ||||
|  | ||||
|         this._dialogs = { }; | ||||
|   | ||||
| @@ -3,7 +3,6 @@ | ||||
|  | ||||
| const { Clutter, Gio, GLib, GObject, St } = imports.gi; | ||||
| const Lang = imports.lang; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| var Tpl = null; | ||||
| var Tp = null; | ||||
| @@ -546,8 +545,8 @@ var ChatSource = class extends MessageTray.Source { | ||||
|         // Wait a bit before notifying for the received message, a handler | ||||
|         // could ack it in the meantime. | ||||
|         if (this._notifyTimeoutId != 0) | ||||
|             Mainloop.source_remove(this._notifyTimeoutId); | ||||
|         this._notifyTimeoutId = Mainloop.timeout_add(500, | ||||
|             GLib.source_remove(this._notifyTimeoutId); | ||||
|         this._notifyTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, 500, | ||||
|             this._notifyTimeout.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._notifyTimeoutId, '[gnome-shell] this._notifyTimeout'); | ||||
|     } | ||||
| @@ -641,7 +640,7 @@ var ChatNotification = class extends MessageTray.Notification { | ||||
|  | ||||
|     destroy(reason) { | ||||
|         if (this._timestampTimeoutId) | ||||
|             Mainloop.source_remove(this._timestampTimeoutId); | ||||
|             GLib.source_remove(this._timestampTimeoutId); | ||||
|         this._timestampTimeoutId = 0; | ||||
|         super.destroy(reason); | ||||
|     } | ||||
| @@ -729,7 +728,7 @@ var ChatNotification = class extends MessageTray.Notification { | ||||
|  | ||||
|         // Reset the old message timeout | ||||
|         if (this._timestampTimeoutId) | ||||
|             Mainloop.source_remove(this._timestampTimeoutId); | ||||
|             GLib.source_remove(this._timestampTimeoutId); | ||||
|         this._timestampTimeoutId = 0; | ||||
|  | ||||
|         let message = { realMessage: props.group != 'meta', | ||||
| @@ -747,7 +746,8 @@ var ChatNotification = class extends MessageTray.Notification { | ||||
|             } else { | ||||
|                 // Schedule a new timestamp in SCROLLBACK_IMMEDIATE_TIME | ||||
|                 // from the timestamp of the message. | ||||
|                 this._timestampTimeoutId = Mainloop.timeout_add_seconds( | ||||
|                 this._timestampTimeoutId = GLib.timeout_add_seconds( | ||||
|                     GLib.PRIORITY_DEFAULT, | ||||
|                     SCROLLBACK_IMMEDIATE_TIME - (currentTime - timestamp), | ||||
|                     this.appendTimestamp.bind(this)); | ||||
|                 GLib.Source.set_name_by_id(this._timestampTimeoutId, '[gnome-shell] this.appendTimestamp'); | ||||
| @@ -952,14 +952,15 @@ var ChatNotificationBanner = class extends MessageTray.NotificationBanner { | ||||
|  | ||||
|         // Remove composing timeout. | ||||
|         if (this._composingTimeoutId > 0) { | ||||
|             Mainloop.source_remove(this._composingTimeoutId); | ||||
|             GLib.source_remove(this._composingTimeoutId); | ||||
|             this._composingTimeoutId = 0; | ||||
|         } | ||||
|  | ||||
|         if (text != '') { | ||||
|             this.notification.source.setChatState(Tp.ChannelChatState.COMPOSING); | ||||
|  | ||||
|             this._composingTimeoutId = Mainloop.timeout_add_seconds( | ||||
|             this._composingTimeoutId = GLib.timeout_add_seconds( | ||||
|                 GLib.PRIORITY_DEFAULT, | ||||
|                 COMPOSING_STOP_TIMEOUT, | ||||
|                 this._composingStopTimeout.bind(this)); | ||||
|             GLib.Source.set_name_by_id(this._composingTimeoutId, '[gnome-shell] this._composingStopTimeout'); | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported Dash */ | ||||
|  | ||||
| const { Clutter, GLib, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const AppDisplay = imports.ui.appDisplay; | ||||
| @@ -500,7 +499,7 @@ var Dash = class Dash { | ||||
|         // that the notify::hover handler does everything we need to. | ||||
|         if (opened) { | ||||
|             if (this._showLabelTimeoutId > 0) { | ||||
|                 Mainloop.source_remove(this._showLabelTimeoutId); | ||||
|                 GLib.source_remove(this._showLabelTimeoutId); | ||||
|                 this._showLabelTimeoutId = 0; | ||||
|             } | ||||
|  | ||||
| @@ -514,7 +513,7 @@ var Dash = class Dash { | ||||
|         if (shouldShow) { | ||||
|             if (this._showLabelTimeoutId == 0) { | ||||
|                 let timeout = this._labelShowing ? 0 : DASH_ITEM_HOVER_TIMEOUT; | ||||
|                 this._showLabelTimeoutId = Mainloop.timeout_add(timeout, | ||||
|                 this._showLabelTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, timeout, | ||||
|                     () => { | ||||
|                         this._labelShowing = true; | ||||
|                         item.showLabel(); | ||||
| @@ -523,17 +522,17 @@ var Dash = class Dash { | ||||
|                     }); | ||||
|                 GLib.Source.set_name_by_id(this._showLabelTimeoutId, '[gnome-shell] item.showLabel'); | ||||
|                 if (this._resetHoverTimeoutId > 0) { | ||||
|                     Mainloop.source_remove(this._resetHoverTimeoutId); | ||||
|                     GLib.source_remove(this._resetHoverTimeoutId); | ||||
|                     this._resetHoverTimeoutId = 0; | ||||
|                 } | ||||
|             } | ||||
|         } else { | ||||
|             if (this._showLabelTimeoutId > 0) | ||||
|                 Mainloop.source_remove(this._showLabelTimeoutId); | ||||
|                 GLib.source_remove(this._showLabelTimeoutId); | ||||
|             this._showLabelTimeoutId = 0; | ||||
|             item.hideLabel(); | ||||
|             if (this._labelShowing) { | ||||
|                 this._resetHoverTimeoutId = Mainloop.timeout_add(DASH_ITEM_HOVER_TIMEOUT, | ||||
|                 this._resetHoverTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, DASH_ITEM_HOVER_TIMEOUT, | ||||
|                     () => { | ||||
|                         this._labelShowing = false; | ||||
|                         this._resetHoverTimeoutId = 0; | ||||
|   | ||||
| @@ -30,10 +30,12 @@ var TodayButton = class TodayButton { | ||||
|         // Having the ability to go to the current date if the user is already | ||||
|         // on the current date can be confusing. So don't make the button reactive | ||||
|         // until the selected date changes. | ||||
|         this.actor = new St.Button({ style_class: 'datemenu-today-button', | ||||
|                                      x_expand: true, x_align: St.Align.START, | ||||
|         this.actor = new St.Button({ | ||||
|             style_class: 'datemenu-today-button', | ||||
|             x_align: St.Align.START, | ||||
|             x_expand: true, | ||||
|             can_focus: true, | ||||
|                                      reactive: false | ||||
|             reactive: false, | ||||
|         }); | ||||
|         this.actor.connect('clicked', () => { | ||||
|             this._calendar.setDate(new Date(), false); | ||||
|   | ||||
| @@ -17,8 +17,6 @@ | ||||
|  * along with this program; if not, see <http://www.gnu.org/licenses/>. | ||||
|  */ | ||||
|  | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const { AccountsService, Clutter, Gio, | ||||
|         GLib, GObject, Pango, Polkit, Shell, St }  = imports.gi; | ||||
|  | ||||
| @@ -352,12 +350,15 @@ 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_sync( | ||||
|                 'org.freedesktop.packagekit.trigger-offline-update', null, null); | ||||
|                     this._updatesPermission = Polkit.Permission.new_finish(res); | ||||
|                 } catch (e) { | ||||
|             log('No permission to trigger offline updates: %s'.format(e.toString())); | ||||
|                     log(`No permission to trigger offline updates: ${e}`); | ||||
|                 } | ||||
|             }); | ||||
|     } | ||||
|  | ||||
|     _onDestroy() { | ||||
| @@ -448,14 +449,16 @@ class EndSessionDialog extends ModalDialog.ModalDialog { | ||||
|         for (let i = 0; i < dialogContent.confirmButtons.length; i++) { | ||||
|             let signal = dialogContent.confirmButtons[i].signal; | ||||
|             let label = dialogContent.confirmButtons[i].label; | ||||
|             buttons.push({ action: () => { | ||||
|             buttons.push({ | ||||
|                 action: () => { | ||||
|                     this.close(true); | ||||
|                     let signalId = this.connect('closed', () => { | ||||
|                         this.disconnect(signalId); | ||||
|                         this._confirm(signal); | ||||
|                     }); | ||||
|                 }, | ||||
|                            label: label }); | ||||
|                 label: label, | ||||
|             }); | ||||
|         } | ||||
|  | ||||
|         this.setButtons(buttons); | ||||
| @@ -562,7 +565,7 @@ class EndSessionDialog extends ModalDialog.ModalDialog { | ||||
|         let startTime = GLib.get_monotonic_time(); | ||||
|         this._secondsLeft = this._totalSecondsToStayOpen; | ||||
|  | ||||
|         this._timerId = Mainloop.timeout_add_seconds(1, () => { | ||||
|         this._timerId = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, 1, () => { | ||||
|             let currentTime = GLib.get_monotonic_time(); | ||||
|             let secondsElapsed = ((currentTime - startTime) / 1000000); | ||||
|  | ||||
| @@ -584,7 +587,7 @@ class EndSessionDialog extends ModalDialog.ModalDialog { | ||||
|  | ||||
|     _stopTimer() { | ||||
|         if (this._timerId > 0) { | ||||
|             Mainloop.source_remove(this._timerId); | ||||
|             GLib.source_remove(this._timerId); | ||||
|             this._timerId = 0; | ||||
|         } | ||||
|  | ||||
|   | ||||
| @@ -10,7 +10,7 @@ imports.gi.versions.Gtk = '3.0'; | ||||
| imports.gi.versions.TelepathyGLib = '0.12'; | ||||
| imports.gi.versions.TelepathyLogger = '0.2'; | ||||
|  | ||||
| const { Clutter, GLib, Shell, St } = imports.gi; | ||||
| const { Clutter, GLib, Meta, Shell, St } = imports.gi; | ||||
| const Gettext = imports.gettext; | ||||
|  | ||||
| // We can't import shell JS modules yet, because they may have | ||||
| @@ -58,17 +58,16 @@ function _patchLayoutClass(layoutClass, styleProps) { | ||||
|     }; | ||||
| } | ||||
|  | ||||
| function _makeEaseCallback(params) { | ||||
| function _makeEaseCallback(params, cleanup) { | ||||
|     let onComplete = params.onComplete; | ||||
|     delete params.onComplete; | ||||
|  | ||||
|     let onStopped = params.onStopped; | ||||
|     delete params.onStopped; | ||||
|  | ||||
|     if (!onComplete && !onStopped) | ||||
|         return null; | ||||
|  | ||||
|     return isFinished => { | ||||
|         cleanup(); | ||||
|  | ||||
|         if (onStopped) | ||||
|             onStopped(isFinished); | ||||
|         if (onComplete && isFinished) | ||||
| @@ -110,7 +109,10 @@ function _easeActor(actor, params) { | ||||
|         actor.set_easing_mode(params.mode); | ||||
|     delete params.mode; | ||||
|  | ||||
|     let callback = _makeEaseCallback(params); | ||||
|     Meta.disable_unredirect_for_display(global.display); | ||||
|  | ||||
|     let cleanup = () => Meta.enable_unredirect_for_display(global.display); | ||||
|     let callback = _makeEaseCallback(params, cleanup); | ||||
|  | ||||
|     // cancel overwritten transitions | ||||
|     let animatedProps = Object.keys(params).map(p => p.replace('_', '-', 'g')); | ||||
| @@ -119,15 +121,12 @@ function _easeActor(actor, params) { | ||||
|     actor.set(params); | ||||
|     actor.restore_easing_state(); | ||||
|  | ||||
|     if (callback) { | ||||
|     let transition = actor.get_transition(animatedProps[0]); | ||||
|  | ||||
|     if (transition) | ||||
|         transition.connect('stopped', (t, finished) => callback(finished)); | ||||
|     else | ||||
|         callback(true); | ||||
| } | ||||
| } | ||||
|  | ||||
| function _easeActorProperty(actor, propName, target, params) { | ||||
|     // Avoid pointless difference with ease() | ||||
| @@ -139,7 +138,15 @@ function _easeActorProperty(actor, propName, target, params) { | ||||
|         params.duration = adjustAnimationTime(params.duration); | ||||
|     let duration = Math.floor(params.duration || 0); | ||||
|  | ||||
|     let callback = _makeEaseCallback(params); | ||||
|     // Copy Clutter's behavior for implicit animations, see | ||||
|     // should_skip_implicit_transition() | ||||
|     if (actor instanceof Clutter.Actor && !actor.mapped) | ||||
|         duration = 0; | ||||
|  | ||||
|     Meta.disable_unredirect_for_display(global.display); | ||||
|  | ||||
|     let cleanup = () => Meta.enable_unredirect_for_display(global.display); | ||||
|     let callback = _makeEaseCallback(params, cleanup); | ||||
|  | ||||
|     // cancel overwritten transition | ||||
|     actor.remove_transition(propName); | ||||
| @@ -148,7 +155,6 @@ function _easeActorProperty(actor, propName, target, params) { | ||||
|         let [obj, prop] = _getPropertyTarget(actor, propName); | ||||
|         obj[prop] = target; | ||||
|  | ||||
|         if (callback) | ||||
|         callback(true); | ||||
|  | ||||
|         return; | ||||
| @@ -164,7 +170,6 @@ function _easeActorProperty(actor, propName, target, params) { | ||||
|  | ||||
|     transition.set_to(target); | ||||
|  | ||||
|     if (callback) | ||||
|     transition.connect('stopped', (t, finished) => callback(finished)); | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -186,13 +186,14 @@ class InstallExtensionDialog extends ModalDialog.ModalDialog { | ||||
|         this._info = info; | ||||
|         this._invocation = invocation; | ||||
|  | ||||
|         this.setButtons([{ label: _("Cancel"), | ||||
|         this.setButtons([{ | ||||
|             label: _("Cancel"), | ||||
|             action: this._onCancelButtonPressed.bind(this), | ||||
|                            key: Clutter.Escape | ||||
|                          }, | ||||
|                          { label: _("Install"), | ||||
|             key: Clutter.Escape, | ||||
|         }, { | ||||
|             label: _("Install"), | ||||
|             action: this._onInstallButtonPressed.bind(this), | ||||
|                            default: true | ||||
|             default: true, | ||||
|         }]); | ||||
|  | ||||
|         let content = new Dialog.MessageDialogContent({ | ||||
|   | ||||
| @@ -17,12 +17,11 @@ const EXTENSION_DISABLE_VERSION_CHECK_KEY = 'disable-extension-version-validatio | ||||
|  | ||||
| var ExtensionManager = class { | ||||
|     constructor() { | ||||
|         this._initted = false; | ||||
|         this._initialized = false; | ||||
|         this._enabled = false; | ||||
|  | ||||
|         this._extensions = new Map(); | ||||
|         this._enabledExtensions = []; | ||||
|         this._requestedExtensions = []; | ||||
|         this._extensionOrder = []; | ||||
|  | ||||
|         Main.sessionMode.connect('updated', this._sessionUpdated.bind(this)); | ||||
| @@ -99,6 +98,9 @@ var ExtensionManager = class { | ||||
|     } | ||||
|  | ||||
|     _callExtensionEnable(uuid) { | ||||
|         if (!Main.sessionMode.allowExtensions) | ||||
|             return; | ||||
|  | ||||
|         let extension = this.lookup(uuid); | ||||
|         if (!extension) | ||||
|             return; | ||||
| @@ -109,8 +111,6 @@ var ExtensionManager = class { | ||||
|         if (extension.state != ExtensionState.DISABLED) | ||||
|             return; | ||||
|  | ||||
|         this._extensionOrder.push(uuid); | ||||
|  | ||||
|         let stylesheetNames = [`${global.session_mode}.css`, 'stylesheet.css']; | ||||
|         let theme = St.ThemeContext.get_for_stage(global.stage).get_theme(); | ||||
|         for (let i = 0; i < stylesheetNames.length; i++) { | ||||
| @@ -122,7 +122,7 @@ var ExtensionManager = class { | ||||
|             } catch (e) { | ||||
|                 if (e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.NOT_FOUND)) | ||||
|                     continue; // not an error | ||||
|                 log(`Failed to load stylesheet for extension ${uuid}: ${e.message}`); | ||||
|                 this.logExtensionError(uuid, e); | ||||
|                 return; | ||||
|             } | ||||
|         } | ||||
| @@ -130,15 +130,14 @@ var ExtensionManager = class { | ||||
|         try { | ||||
|             extension.stateObj.enable(); | ||||
|             extension.state = ExtensionState.ENABLED; | ||||
|             this._extensionOrder.push(uuid); | ||||
|             this.emit('extension-state-changed', extension); | ||||
|             return; | ||||
|         } catch (e) { | ||||
|             if (extension.stylesheet) { | ||||
|                 theme.unload_stylesheet(extension.stylesheet); | ||||
|                 delete extension.stylesheet; | ||||
|             } | ||||
|             this.logExtensionError(uuid, e); | ||||
|             return; | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @@ -195,7 +194,7 @@ var ExtensionManager = class { | ||||
|             extension.errors = []; | ||||
|         extension.errors.push(message); | ||||
|  | ||||
|         log('Extension "%s" had error: %s'.format(uuid, message)); | ||||
|         logError(error, `Extension ${uuid}`); | ||||
|         this.emit('extension-state-changed', extension); | ||||
|     } | ||||
|  | ||||
| @@ -251,9 +250,6 @@ 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)) { | ||||
| @@ -308,12 +304,14 @@ var ExtensionManager = class { | ||||
|     } | ||||
|  | ||||
|     _callExtensionInit(uuid) { | ||||
|         if (!Main.sessionMode.allowExtensions) | ||||
|             return false; | ||||
|  | ||||
|         let extension = this.lookup(uuid); | ||||
|         let dir = extension.dir; | ||||
|  | ||||
|         if (!extension) | ||||
|             throw new Error("Extension was not properly created. Call loadExtension first"); | ||||
|             throw new Error("Extension was not properly created. Call createExtensionObject first"); | ||||
|  | ||||
|         let dir = extension.dir; | ||||
|         let extensionJs = dir.get_child('extension.js'); | ||||
|         if (!extensionJs.query_exists(null)) { | ||||
|             this.logExtensionError(uuid, new Error('Missing extension.js')); | ||||
| @@ -367,7 +365,10 @@ var ExtensionManager = class { | ||||
|             ? DISABLE_USER_EXTENSIONS_KEY | ||||
|             : ENABLED_EXTENSIONS_KEY; | ||||
|  | ||||
|         extension.canChange = global.settings.is_writable(ENABLED_EXTENSIONS_KEY); | ||||
|         extension.canChange = | ||||
|             !hasError && | ||||
|             global.settings.is_writable(changeKey) && | ||||
|             (isMode || !modeOnly); | ||||
|     } | ||||
|  | ||||
|     _getEnabledExtensions() { | ||||
| @@ -381,14 +382,6 @@ 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(); | ||||
| @@ -397,19 +390,6 @@ var ExtensionManager = class { | ||||
|     _onEnabledExtensionsChanged() { | ||||
|         let newEnabledExtensions = this._getEnabledExtensions(); | ||||
|  | ||||
|         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( | ||||
| @@ -420,9 +400,9 @@ var ExtensionManager = class { | ||||
|  | ||||
|         // Find and disable all the newly disabled extensions: UUIDs found in the | ||||
|         // old setting, but not in the new one. | ||||
|         this._enabledExtensions.filter( | ||||
|             item => !newEnabledExtensions.includes(item) | ||||
|         ).forEach(uuid => { | ||||
|         this._extensionOrder.filter( | ||||
|             uuid => !newEnabledExtensions.includes(uuid) | ||||
|         ).reverse().forEach(uuid => { | ||||
|             this._callExtensionDisable(uuid); | ||||
|         }); | ||||
|  | ||||
| @@ -437,22 +417,19 @@ var ExtensionManager = class { | ||||
|     } | ||||
|  | ||||
|     _onVersionValidationChanged() { | ||||
|         // we want to reload all extensions, but only enable | ||||
|         // extensions when allowed by the sessionMode, so | ||||
|         // temporarily disable them all | ||||
|         this._enabledExtensions = []; | ||||
|         // Disabling extensions modifies the order array, so use a copy | ||||
|         let extensionOrder = this._extensionOrder.slice(); | ||||
|  | ||||
|         // The loop modifies the extensions map, so iterate over a copy | ||||
|         let extensions = [...this._extensions.values()]; | ||||
|         for (let extension of extensions) | ||||
|             this.reloadExtension(extension); | ||||
|         this._enabledExtensions = this._getEnabledExtensions(); | ||||
|  | ||||
|         if (Main.sessionMode.allowExtensions) { | ||||
|             this._enabledExtensions.forEach(uuid => { | ||||
|                 this._callExtensionEnable(uuid); | ||||
|         // Disable enabled extensions in the reverse order first to avoid | ||||
|         // the "rebasing" done in _callExtensionDisable... | ||||
|         extensionOrder.slice().reverse().forEach(uuid => { | ||||
|             this._callExtensionDisable(uuid); | ||||
|         }); | ||||
|         } | ||||
|  | ||||
|         // ...and then reload and enable extensions in the correct order again. | ||||
|         [...this._extensions.values()].sort((a, b) => { | ||||
|             return extensionOrder.indexOf(a.uuid) - extensionOrder.indexOf(b.uuid); | ||||
|         }).forEach(extension => this.reloadExtension(extension)); | ||||
|     } | ||||
|  | ||||
|     _loadExtensions() { | ||||
| @@ -470,7 +447,6 @@ 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) => { | ||||
| @@ -502,9 +478,9 @@ var ExtensionManager = class { | ||||
|         if (this._enabled) | ||||
|             return; | ||||
|  | ||||
|         if (!this._initted) { | ||||
|         if (!this._initialized) { | ||||
|             this._loadExtensions(); | ||||
|             this._initted = true; | ||||
|             this._initialized = true; | ||||
|         } else { | ||||
|             this._enabledExtensions.forEach(uuid => { | ||||
|                 this._callExtensionEnable(uuid); | ||||
| @@ -517,7 +493,7 @@ var ExtensionManager = class { | ||||
|         if (!this._enabled) | ||||
|             return; | ||||
|  | ||||
|         if (this._initted) { | ||||
|         if (this._initialized) { | ||||
|             this._extensionOrder.slice().reverse().forEach(uuid => { | ||||
|                 this._callExtensionDisable(uuid); | ||||
|             }); | ||||
| @@ -532,9 +508,8 @@ var ExtensionManager = class { | ||||
|         // property; it might make sense to make enabledExtensions independent | ||||
|         // from allowExtensions in the future | ||||
|         if (Main.sessionMode.allowExtensions) { | ||||
|             if (this._initted) { | ||||
|                 this._enabledExtensions = this._getEnabledExtensions(); | ||||
|             } | ||||
|             // Take care of added or removed sessionMode extensions | ||||
|             this._onEnabledExtensionsChanged(); | ||||
|             this._enableAllExtensions(); | ||||
|         } else { | ||||
|             this._disableAllExtensions(); | ||||
|   | ||||
| @@ -247,10 +247,23 @@ var IconGrid = GObject.registerClass({ | ||||
|  | ||||
|     _childAdded(grid, child) { | ||||
|         child._iconGridKeyFocusInId = child.connect('key-focus-in', this._keyFocusIn.bind(this)); | ||||
|  | ||||
|         child._paintVisible = child.opacity > 0; | ||||
|         child._opacityChangedId = child.connect('notify::opacity', () => { | ||||
|             let paintVisible = child._paintVisible; | ||||
|             child._paintVisible = child.opacity > 0; | ||||
|             if (paintVisible !== child._paintVisible) | ||||
|                 this.queue_relayout(); | ||||
|         }); | ||||
|     } | ||||
|  | ||||
|     _childRemoved(grid, child) { | ||||
|         child.disconnect(child._iconGridKeyFocusInId); | ||||
|         delete child._iconGridKeyFocusInId; | ||||
|  | ||||
|         child.disconnect(child._opacityChangedId); | ||||
|         delete child._opacityChangedId; | ||||
|         delete child._paintVisible; | ||||
|     } | ||||
|  | ||||
|     vfunc_get_preferred_width(_forHeight) { | ||||
| @@ -414,7 +427,7 @@ var IconGrid = GObject.registerClass({ | ||||
|      * set of items to be animated. | ||||
|      */ | ||||
|     _getChildrenToAnimate() { | ||||
|         return this._getVisibleChildren(); | ||||
|         return this._getVisibleChildren().filter(child => child.opacity > 0); | ||||
|     } | ||||
|  | ||||
|     _resetAnimationActors() { | ||||
| @@ -871,7 +884,7 @@ var PaginatedIconGrid = GObject.registerClass({ | ||||
|  | ||||
|     // Overridden from IconGrid | ||||
|     _getChildrenToAnimate() { | ||||
|         let children = this._getVisibleChildren(); | ||||
|         let children = super._getChildrenToAnimate(); | ||||
|         let firstIndex = this._childrenPerPage * this.currentPage; | ||||
|         let lastIndex = firstIndex + this._childrenPerPage; | ||||
|  | ||||
|   | ||||
| @@ -27,7 +27,7 @@ class KbdA11yDialog extends GObject.Object { | ||||
|  | ||||
|         if (whatChanged & Clutter.KeyboardA11yFlags.SLOW_KEYS_ENABLED) { | ||||
|             key = KEY_SLOW_KEYS_ENABLED; | ||||
|             enabled = (newFlags & Clutter.KeyboardA11yFlags.SLOW_KEYS_ENABLED) ? true : false; | ||||
|             enabled = (newFlags & Clutter.KeyboardA11yFlags.SLOW_KEYS_ENABLED) > 0; | ||||
|             title = enabled ? | ||||
|                     _("Slow Keys Turned On") : | ||||
|                     _("Slow Keys Turned Off"); | ||||
| @@ -36,7 +36,7 @@ class KbdA11yDialog extends GObject.Object { | ||||
|  | ||||
|         } else  if (whatChanged & Clutter.KeyboardA11yFlags.STICKY_KEYS_ENABLED) { | ||||
|             key = KEY_STICKY_KEYS_ENABLED; | ||||
|             enabled = (newFlags & Clutter.KeyboardA11yFlags.STICKY_KEYS_ENABLED) ? true : false; | ||||
|             enabled = (newFlags & Clutter.KeyboardA11yFlags.STICKY_KEYS_ENABLED) > 0; | ||||
|             title = enabled ? | ||||
|                     _("Sticky Keys Turned On") : | ||||
|                     _("Sticky Keys Turned Off"); | ||||
|   | ||||
| @@ -193,12 +193,12 @@ var LanguageSelectionPopup = class extends PopupMenu.PopupMenu { | ||||
|             item = this.addAction(is.displayName, () => { | ||||
|                 inputSourceManager.activateInputSource(is, true); | ||||
|             }); | ||||
|             item.actor.can_focus = false; | ||||
|             item.can_focus = false; | ||||
|         } | ||||
|  | ||||
|         this.addMenuItem(new PopupMenu.PopupSeparatorMenuItem()); | ||||
|         item = this.addSettingsAction(_("Region & Language Settings"), 'gnome-region-panel.desktop'); | ||||
|         item.actor.can_focus = false; | ||||
|         item.can_focus = false; | ||||
|  | ||||
|         this._capturedEventId = 0; | ||||
|  | ||||
| @@ -574,7 +574,7 @@ var EmojiPager = GObject.registerClass({ | ||||
|         'delta': GObject.ParamSpec.int( | ||||
|             'delta', 'delta', 'delta', | ||||
|             GObject.ParamFlags.READWRITE, | ||||
|             0, GLib.MAXINT32, 0) | ||||
|             GLib.MININT32, GLib.MAXINT32, 0) | ||||
|     }, | ||||
|     Signals: { | ||||
|         'emoji': { param_types: [GObject.TYPE_STRING] }, | ||||
|   | ||||
| @@ -238,7 +238,8 @@ var LayoutManager = GObject.registerClass({ | ||||
|                                              reactive: true }); | ||||
|         this.addChrome(this.overviewGroup); | ||||
|  | ||||
|         this.screenShieldGroup = new St.Widget({ name: 'screenShieldGroup', | ||||
|         this.screenShieldGroup = new St.Widget({ | ||||
|             name: 'screenShieldGroup', | ||||
|             visible: false, | ||||
|             clip_to_allocation: true, | ||||
|             layout_manager: new Clutter.BinLayout(), | ||||
| @@ -860,7 +861,7 @@ var LayoutManager = GObject.registerClass({ | ||||
|         // We can't use Params.parse here because we want to drop | ||||
|         // the extra values like ancestorData.actor | ||||
|         for (let prop in defaultParams) { | ||||
|             if (!params.hasOwnProperty(prop)) | ||||
|             if (!Object.prototype.hasOwnProperty.call(params, prop)) | ||||
|                 params[prop] = ancestorData[prop]; | ||||
|         } | ||||
|  | ||||
| @@ -1224,6 +1225,8 @@ var HotCorner = class HotCorner { | ||||
|  | ||||
|         if (this.actor) | ||||
|             this.actor.destroy(); | ||||
|  | ||||
|         this._ripples.destroy(); | ||||
|     } | ||||
|  | ||||
|     _toggleOverview() { | ||||
|   | ||||
| @@ -108,7 +108,8 @@ var RadialShaderEffect = GObject.registerClass({ | ||||
|  */ | ||||
| var Lightbox = class Lightbox { | ||||
|     constructor(container, params) { | ||||
|         params = Params.parse(params, { inhibitEvents: false, | ||||
|         params = Params.parse(params, { | ||||
|             inhibitEvents: false, | ||||
|             width: null, | ||||
|             height: null, | ||||
|             fadeFactor: DEFAULT_FADE_FACTOR, | ||||
| @@ -172,10 +173,13 @@ var Lightbox = class Lightbox { | ||||
|     } | ||||
|  | ||||
|     show(fadeInTime) { | ||||
|         fadeInTime = fadeInTime || 0; | ||||
|  | ||||
|         this.actor.remove_all_transitions(); | ||||
|  | ||||
|         let easeProps = { | ||||
|             duration: fadeInTime || 0, | ||||
|             mode: Clutter.AnimationMode.EASE_OUT_QUAD | ||||
|         }; | ||||
|  | ||||
|         let onComplete = () => { | ||||
|             this.shown = true; | ||||
|             this.emit('shown'); | ||||
| @@ -183,55 +187,38 @@ var Lightbox = class Lightbox { | ||||
|  | ||||
|         if (this._radialEffect) { | ||||
|             this.actor.ease_property( | ||||
|                 '@effects.radial.brightness', VIGNETTE_BRIGHTNESS, { | ||||
|                     duration: fadeInTime, | ||||
|                     mode: Clutter.AnimationMode.EASE_OUT_QUAD | ||||
|                 }); | ||||
|                 '@effects.radial.brightness', VIGNETTE_BRIGHTNESS, easeProps); | ||||
|             this.actor.ease_property( | ||||
|                 '@effects.radial.sharpness', VIGNETTE_SHARPNESS, { | ||||
|                     duration: fadeInTime, | ||||
|                     mode: Clutter.AnimationMode.EASE_OUT_QUAD, | ||||
|                     onComplete | ||||
|                 }); | ||||
|                 '@effects.radial.sharpness', VIGNETTE_SHARPNESS, | ||||
|                 Object.assign({ onComplete }, easeProps)); | ||||
|         } else { | ||||
|             this.actor.ease({ | ||||
|             this.actor.ease(Object.assign(easeProps, { | ||||
|                 opacity: 255 * this._fadeFactor, | ||||
|                 duration: fadeInTime, | ||||
|                 mode: Clutter.AnimationMode.EASE_OUT_QUAD, | ||||
|                 onComplete | ||||
|             }); | ||||
|             })); | ||||
|         } | ||||
|  | ||||
|         this.actor.show(); | ||||
|     } | ||||
|  | ||||
|     hide(fadeOutTime) { | ||||
|         fadeOutTime = fadeOutTime || 0; | ||||
|  | ||||
|         this.shown = false; | ||||
|         this.actor.remove_all_transitions(); | ||||
|  | ||||
|         let easeProps = { | ||||
|             duration: fadeOutTime || 0, | ||||
|             mode: Clutter.AnimationMode.EASE_OUT_QUAD | ||||
|         }; | ||||
|  | ||||
|         let onComplete = () => this.actor.hide(); | ||||
|  | ||||
|         if (this._radialEffect) { | ||||
|             this.actor.ease_property( | ||||
|                 '@effects.radial.brightness', 1.0, { | ||||
|                     duration: fadeOutTime, | ||||
|                     mode: Clutter.AnimationMode.EASE_OUT_QUAD | ||||
|                 }); | ||||
|                 '@effects.radial.brightness', 1.0, easeProps); | ||||
|             this.actor.ease_property( | ||||
|                 '@effects.radial.sharpness', 0.0, { | ||||
|                     duration: fadeOutTime, | ||||
|                     mode: Clutter.AnimationMode.EASE_OUT_QUAD, | ||||
|                     onComplete | ||||
|                 }); | ||||
|                 '@effects.radial.sharpness', 0.0, Object.assign({ onComplete }, easeProps)); | ||||
|         } else { | ||||
|             this.actor.ease({ | ||||
|                 opacity: 0, | ||||
|                 duration: fadeOutTime, | ||||
|                 mode: Clutter.AnimationMode.EASE_OUT_QUAD, | ||||
|                 onComplete | ||||
|             }); | ||||
|             this.actor.ease(Object.assign(easeProps, { opacity: 0, onComplete })); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -11,12 +11,26 @@ const LOCATE_POINTER_SCHEMA = "org.gnome.desktop.interface"; | ||||
| var LocatePointer = class { | ||||
|     constructor() { | ||||
|         this._settings = new Gio.Settings({ schema_id: LOCATE_POINTER_SCHEMA }); | ||||
|         this._settings.connect(`changed::${LOCATE_POINTER_KEY}`, () => this._syncEnabled()); | ||||
|         this._syncEnabled(); | ||||
|     } | ||||
|  | ||||
|     _syncEnabled() { | ||||
|         let enabled = this._settings.get_boolean(LOCATE_POINTER_KEY); | ||||
|         if (enabled == !!this._ripples) | ||||
|             return; | ||||
|  | ||||
|         if (enabled) { | ||||
|             this._ripples = new Ripples.Ripples(0.5, 0.5, 'ripple-pointer-location'); | ||||
|             this._ripples.addTo(Main.uiGroup); | ||||
|         } else { | ||||
|             this._ripples.destroy(); | ||||
|             this._ripples = null; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     show() { | ||||
|         if (!this._settings.get_boolean(LOCATE_POINTER_KEY)) | ||||
|         if (!this._ripples) | ||||
|             return; | ||||
|  | ||||
|         let [x, y] = global.get_pointer(); | ||||
|   | ||||
| @@ -3,7 +3,6 @@ | ||||
|  | ||||
| const { Clutter, Cogl, Gio, GLib, | ||||
|         GObject, Meta, Pango, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
| const System = imports.system; | ||||
|  | ||||
| @@ -20,7 +19,6 @@ const CHEVRON = '>>> '; | ||||
| /* Imports...feel free to add here as needed */ | ||||
| var commandHeader = 'const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; ' + | ||||
|                     'const Main = imports.ui.main; ' + | ||||
|                     'const Mainloop = imports.mainloop; ' + | ||||
|                     /* Utility functions...we should probably be able to use these | ||||
|                      * in the shell core code too. */ | ||||
|                     'const stage = global.stage; ' + | ||||
| @@ -240,7 +238,7 @@ var Notebook = class Notebook { | ||||
| Signals.addSignalMethods(Notebook.prototype); | ||||
|  | ||||
| function objectToString(o) { | ||||
|     if (typeof(o) == typeof(objectToString)) { | ||||
|     if (typeof o == typeof objectToString) { | ||||
|         // special case this since the default is way, way too verbose | ||||
|         return '<js function>'; | ||||
|     } else { | ||||
| @@ -306,6 +304,9 @@ var WindowList = class WindowList { | ||||
|     } | ||||
|  | ||||
|     _updateWindowList() { | ||||
|         if (!this._lookingGlass.isOpen) | ||||
|             return; | ||||
|  | ||||
|         this.actor.destroy_all_children(); | ||||
|         let windows = global.get_window_actors(); | ||||
|         let tracker = Shell.WindowTracker.get_default(); | ||||
| @@ -337,6 +338,10 @@ var WindowList = class WindowList { | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     update() { | ||||
|         this._updateWindowList(); | ||||
|     } | ||||
| }; | ||||
| Signals.addSignalMethods(WindowList.prototype); | ||||
|  | ||||
| @@ -369,7 +374,7 @@ var ObjInspector = class ObjInspector { | ||||
|  | ||||
|         let hbox = new St.BoxLayout({ style_class: 'lg-obj-inspector-title' }); | ||||
|         this._container.add_actor(hbox); | ||||
|         let label = new St.Label({ text: 'Inspecting: %s: %s'.format(typeof(obj), | ||||
|         let label = new St.Label({ text: 'Inspecting: %s: %s'.format(typeof obj, | ||||
|                                                                      objectToString(obj)) }); | ||||
|         label.single_line_mode = true; | ||||
|         hbox.add(label, { expand: true, y_fill: false }); | ||||
| @@ -387,7 +392,7 @@ var ObjInspector = class ObjInspector { | ||||
|         button.add_actor(new St.Icon({ icon_name: 'window-close-symbolic' })); | ||||
|         button.connect('clicked', this.close.bind(this)); | ||||
|         hbox.add(button); | ||||
|         if (typeof(obj) == typeof({})) { | ||||
|         if (typeof obj == typeof {}) { | ||||
|             let properties = []; | ||||
|             for (let propName in obj) { | ||||
|                 properties.push(propName); | ||||
| @@ -821,7 +826,7 @@ var LookingGlass = class LookingGlass { | ||||
|         gcIcon.connect('button-press-event', () => { | ||||
|             gcIcon.icon_name = 'user-trash'; | ||||
|             System.gc(); | ||||
|             this._timeoutId = Mainloop.timeout_add(500, () => { | ||||
|             this._timeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, 500, () => { | ||||
|                 gcIcon.icon_name = 'user-trash-full'; | ||||
|                 this._timeoutId = 0; | ||||
|                 return GLib.SOURCE_REMOVE; | ||||
| @@ -1010,7 +1015,11 @@ var LookingGlass = class LookingGlass { | ||||
|     } | ||||
|  | ||||
|     getResult(idx) { | ||||
|         try { | ||||
|             return this._results[idx - this._offset].o; | ||||
|         } catch (e) { | ||||
|             throw new Error(`Unknown result at index ${idx}`); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     toggle() { | ||||
| @@ -1097,6 +1106,8 @@ var LookingGlass = class LookingGlass { | ||||
|             duration, | ||||
|             mode: Clutter.AnimationMode.EASE_OUT_QUAD | ||||
|         }); | ||||
|  | ||||
|         this._windowList.update(); | ||||
|     } | ||||
|  | ||||
|     close() { | ||||
| @@ -1122,5 +1133,9 @@ var LookingGlass = class LookingGlass { | ||||
|             onComplete: () => this.actor.hide() | ||||
|         }); | ||||
|     } | ||||
|  | ||||
|     get isOpen() { | ||||
|         return this._open; | ||||
|     } | ||||
| }; | ||||
| Signals.addSignalMethods(LookingGlass.prototype); | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
|  | ||||
| const { Atspi, Clutter, GDesktopEnums, | ||||
|         Gio, GLib, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const Background = imports.ui.background; | ||||
| @@ -1144,7 +1143,7 @@ var ZoomRegion = class ZoomRegion { | ||||
|  | ||||
|     _clearScrollContentsTimer() { | ||||
|         if (this._scrollContentsTimerId != 0) { | ||||
|             Mainloop.source_remove(this._scrollContentsTimerId); | ||||
|             GLib.source_remove(this._scrollContentsTimerId); | ||||
|             this._scrollContentsTimerId = 0; | ||||
|         } | ||||
|     } | ||||
| @@ -1156,7 +1155,7 @@ var ZoomRegion = class ZoomRegion { | ||||
|         } | ||||
|  | ||||
|         this._clearScrollContentsTimer(); | ||||
|         this._scrollContentsTimerId = Mainloop.timeout_add(POINTER_REST_TIME, () => { | ||||
|         this._scrollContentsTimerId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, POINTER_REST_TIME, () => { | ||||
|             this._scrollContentsToDelayed(x, y); | ||||
|             return GLib.SOURCE_REMOVE; | ||||
|         }); | ||||
|   | ||||
| @@ -9,7 +9,6 @@ | ||||
|             initializeDeferredWork, getThemeStylesheet, setThemeStylesheet */ | ||||
|  | ||||
| const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const AccessDialog = imports.ui.accessDialog; | ||||
| const AudioDeviceSelection = imports.ui.audioDeviceSelection; | ||||
| @@ -620,7 +619,7 @@ function _runDeferredWork(workId) { | ||||
|     _deferredWorkQueue.splice(index, 1); | ||||
|     _deferredWorkData[workId].callback(); | ||||
|     if (_deferredWorkQueue.length == 0 && _deferredTimeoutId > 0) { | ||||
|         Mainloop.source_remove(_deferredTimeoutId); | ||||
|         GLib.source_remove(_deferredTimeoutId); | ||||
|         _deferredTimeoutId = 0; | ||||
|     } | ||||
| } | ||||
| @@ -708,7 +707,7 @@ function queueDeferredWork(workId) { | ||||
|         _queueBeforeRedraw(workId); | ||||
|         return; | ||||
|     } else if (_deferredTimeoutId == 0) { | ||||
|         _deferredTimeoutId = Mainloop.timeout_add_seconds(DEFERRED_TIMEOUT_SECONDS, () => { | ||||
|         _deferredTimeoutId = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, DEFERRED_TIMEOUT_SECONDS, () => { | ||||
|             _runAllDeferredWork(); | ||||
|             _deferredTimeoutId = 0; | ||||
|             return GLib.SOURCE_REMOVE; | ||||
|   | ||||
| @@ -4,7 +4,6 @@ | ||||
|    SystemNotificationSource, MessageTray */ | ||||
|  | ||||
| const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const Calendar = imports.ui.calendar; | ||||
| @@ -137,12 +136,13 @@ var FocusGrabber = class FocusGrabber { | ||||
| // A notification without a policy object will inherit the default one. | ||||
| var NotificationPolicy = class NotificationPolicy { | ||||
|     constructor(params) { | ||||
|         params = Params.parse(params, { enable: true, | ||||
|         params = Params.parse(params, { | ||||
|             enable: true, | ||||
|             enableSound: true, | ||||
|             showBanners: true, | ||||
|             forceExpanded: false, | ||||
|             showInLockScreen: true, | ||||
|                                         detailsInLockScreen: false | ||||
|             detailsInLockScreen: false, | ||||
|         }); | ||||
|         Object.getOwnPropertyNames(params).forEach(key => { | ||||
|             let desc = Object.getOwnPropertyDescriptor(params, key); | ||||
| @@ -153,6 +153,7 @@ var NotificationPolicy = class NotificationPolicy { | ||||
|     // Do nothing for the default policy. These methods are only useful for the | ||||
|     // GSettings policy. | ||||
|     store() { } | ||||
|  | ||||
|     destroy() { } | ||||
|  | ||||
|     get enable() { | ||||
| @@ -1004,7 +1005,6 @@ var MessageTray = class MessageTray { | ||||
|  | ||||
|     _addSource(source) { | ||||
|         let obj = { | ||||
|             source: source, | ||||
|             notifyId: 0, | ||||
|             destroyId: 0, | ||||
|         }; | ||||
| @@ -1091,7 +1091,7 @@ var MessageTray = class MessageTray { | ||||
|     _resetNotificationLeftTimeout() { | ||||
|         this._useLongerNotificationLeftTimeout = false; | ||||
|         if (this._notificationLeftTimeoutId) { | ||||
|             Mainloop.source_remove(this._notificationLeftTimeoutId); | ||||
|             GLib.source_remove(this._notificationLeftTimeoutId); | ||||
|             this._notificationLeftTimeoutId = 0; | ||||
|             this._notificationLeftMouseX = -1; | ||||
|             this._notificationLeftMouseY = -1; | ||||
| @@ -1137,7 +1137,7 @@ var MessageTray = class MessageTray { | ||||
|             // We wait for a longer period if the notification popped up where the mouse pointer was already positioned. | ||||
|             // That gives the user more time to mouse away from the notification and mouse back in in order to expand it. | ||||
|             let timeout = this._useLongerNotificationLeftTimeout ? LONGER_HIDE_TIMEOUT : HIDE_TIMEOUT; | ||||
|             this._notificationLeftTimeoutId = Mainloop.timeout_add(timeout, this._onNotificationLeftTimeout.bind(this)); | ||||
|             this._notificationLeftTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, timeout, this._onNotificationLeftTimeout.bind(this)); | ||||
|             GLib.Source.set_name_by_id(this._notificationLeftTimeoutId, '[gnome-shell] this._onNotificationLeftTimeout'); | ||||
|         } | ||||
|     } | ||||
| @@ -1166,7 +1166,9 @@ var MessageTray = class MessageTray { | ||||
|             x < this._notificationLeftMouseX + MOUSE_LEFT_ACTOR_THRESHOLD && | ||||
|             x > this._notificationLeftMouseX - MOUSE_LEFT_ACTOR_THRESHOLD) { | ||||
|             this._notificationLeftMouseX = -1; | ||||
|             this._notificationLeftTimeoutId = Mainloop.timeout_add(LONGER_HIDE_TIMEOUT, | ||||
|             this._notificationLeftTimeoutId = GLib.timeout_add( | ||||
|                 GLib.PRIORITY_DEFAULT, | ||||
|                 LONGER_HIDE_TIMEOUT, | ||||
|                 this._onNotificationLeftTimeout.bind(this)); | ||||
|             GLib.Source.set_name_by_id(this._notificationLeftTimeoutId, '[gnome-shell] this._onNotificationLeftTimeout'); | ||||
|         } else { | ||||
| @@ -1345,12 +1347,12 @@ var MessageTray = class MessageTray { | ||||
|  | ||||
|     _updateNotificationTimeout(timeout) { | ||||
|         if (this._notificationTimeoutId) { | ||||
|             Mainloop.source_remove(this._notificationTimeoutId); | ||||
|             GLib.source_remove(this._notificationTimeoutId); | ||||
|             this._notificationTimeoutId = 0; | ||||
|         } | ||||
|         if (timeout > 0) { | ||||
|             this._notificationTimeoutId = | ||||
|                 Mainloop.timeout_add(timeout, | ||||
|                 GLib.timeout_add(GLib.PRIORITY_DEFAULT, timeout, | ||||
|                     this._notificationTimeout.bind(this)); | ||||
|             GLib.Source.set_name_by_id(this._notificationTimeoutId, '[gnome-shell] this._notificationTimeout'); | ||||
|         } | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported NotificationDaemon */ | ||||
|  | ||||
| const { GdkPixbuf, Gio, GLib, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const Config = imports.misc.config; | ||||
| const Main = imports.ui.main; | ||||
| @@ -171,7 +170,7 @@ var FdoNotificationDaemon = class FdoNotificationDaemon { | ||||
|             // Ignore replacesId since we already sent back a | ||||
|             // NotificationClosed for that id. | ||||
|             id = this._nextNotificationId++; | ||||
|             let idleId = Mainloop.idle_add(() => { | ||||
|             let idleId = GLib.idle_add(GLib.PRIORITY_DEFAULT, () => { | ||||
|                 this._emitNotificationClosed(id, NotificationClosedReason.DISMISSED); | ||||
|                 return GLib.SOURCE_REMOVE; | ||||
|             }); | ||||
| @@ -750,6 +749,7 @@ 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(); | ||||
| @@ -771,9 +771,12 @@ var GtkNotificationDaemon = class GtkNotificationDaemon { | ||||
|                     }); | ||||
|                 }); | ||||
|             } | ||||
|  | ||||
|         } catch (e) { | ||||
|             logError(e, 'Failed to load saved notifications'); | ||||
|         } finally { | ||||
|             this._isLoading = false; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     _saveNotifications() { | ||||
|         if (this._isLoading) | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported OsdWindowManager */ | ||||
|  | ||||
| const { Clutter, GLib, GObject, Meta, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const BarLevel = imports.ui.barLevel; | ||||
| const Layout = imports.ui.layout; | ||||
| @@ -143,9 +142,9 @@ var OsdWindow = class { | ||||
|         } | ||||
|  | ||||
|         if (this._hideTimeoutId) | ||||
|             Mainloop.source_remove(this._hideTimeoutId); | ||||
|         this._hideTimeoutId = Mainloop.timeout_add(HIDE_TIMEOUT, | ||||
|                                                    this._hide.bind(this)); | ||||
|             GLib.source_remove(this._hideTimeoutId); | ||||
|         this._hideTimeoutId = GLib.timeout_add( | ||||
|             GLib.PRIORITY_DEFAULT, HIDE_TIMEOUT, this._hide.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._hideTimeoutId, '[gnome-shell] this._hide'); | ||||
|     } | ||||
|  | ||||
| @@ -153,7 +152,7 @@ var OsdWindow = class { | ||||
|         if (!this._hideTimeoutId) | ||||
|             return; | ||||
|  | ||||
|         Mainloop.source_remove(this._hideTimeoutId); | ||||
|         GLib.source_remove(this._hideTimeoutId); | ||||
|         this._hide(); | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported Overview */ | ||||
|  | ||||
| const { Clutter, GLib, Meta, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const Background = imports.ui.background; | ||||
| @@ -43,8 +42,9 @@ var ShellInfo = class { | ||||
|     } | ||||
|  | ||||
|     setMessage(text, options) { | ||||
|         options = Params.parse(options, { undoCallback: null, | ||||
|                                           forFeedback: false | ||||
|         options = Params.parse(options, { | ||||
|             undoCallback: null, | ||||
|             forFeedback: false, | ||||
|         }); | ||||
|  | ||||
|         let undoCallback = options.undoCallback; | ||||
| @@ -300,7 +300,7 @@ var Overview = class { | ||||
|  | ||||
|     _resetWindowSwitchTimeout() { | ||||
|         if (this._windowSwitchTimeoutId != 0) { | ||||
|             Mainloop.source_remove(this._windowSwitchTimeoutId); | ||||
|             GLib.source_remove(this._windowSwitchTimeoutId); | ||||
|             this._windowSwitchTimeoutId = 0; | ||||
|         } | ||||
|     } | ||||
| @@ -323,7 +323,9 @@ var Overview = class { | ||||
|  | ||||
|         if (targetIsWindow) { | ||||
|             this._lastHoveredWindow = dragEvent.targetActor._delegate.metaWindow; | ||||
|             this._windowSwitchTimeoutId = Mainloop.timeout_add(DND_WINDOW_SWITCH_TIMEOUT, | ||||
|             this._windowSwitchTimeoutId = GLib.timeout_add( | ||||
|                 GLib.PRIORITY_DEFAULT, | ||||
|                 DND_WINDOW_SWITCH_TIMEOUT, | ||||
|                 () => { | ||||
|                     this._windowSwitchTimeoutId = 0; | ||||
|                     Main.activateWindow(dragEvent.targetActor._delegate.metaWindow, | ||||
| @@ -481,17 +483,15 @@ var Overview = class { | ||||
|  | ||||
|         if (this._shown) { | ||||
|             let shouldBeModal = !this._inXdndDrag; | ||||
|             if (shouldBeModal) { | ||||
|                 if (!this._modal) { | ||||
|                     if (Main.pushModal(this._overview, | ||||
|                                        { actionMode: Shell.ActionMode.OVERVIEW })) { | ||||
|             if (shouldBeModal && !this._modal) { | ||||
|                 let actionMode = Shell.ActionMode.OVERVIEW; | ||||
|                 if (Main.pushModal(this._overview, { actionMode })) { | ||||
|                     this._modal = true; | ||||
|                 } else { | ||||
|                     this.hide(); | ||||
|                     return false; | ||||
|                 } | ||||
|             } | ||||
|             } | ||||
|         } else { | ||||
|             if (this._modal) { | ||||
|                 Main.popModal(this._overview); | ||||
|   | ||||
| @@ -248,6 +248,7 @@ var SlidingControl = class { | ||||
|         // selector; this means we can now safely set the full slide for | ||||
|         // the next page, since slideIn or slideOut might have been called, | ||||
|         // changing the visiblity | ||||
|         this.actor.remove_transition('@layout.slide-x'); | ||||
|         this.layout.slide_x = this._getSlide(); | ||||
|         this._updateTranslation(); | ||||
|     } | ||||
|   | ||||
| @@ -3,7 +3,6 @@ | ||||
|  | ||||
| const { Atk, Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Cairo = imports.cairo; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const Animation = imports.ui.animation; | ||||
| const Config = imports.misc.config; | ||||
| @@ -451,8 +450,8 @@ class ActivitiesButton extends PanelMenu.Button { | ||||
|             return DND.DragMotionResult.CONTINUE; | ||||
|  | ||||
|         if (this._xdndTimeOut != 0) | ||||
|             Mainloop.source_remove(this._xdndTimeOut); | ||||
|         this._xdndTimeOut = Mainloop.timeout_add(BUTTON_DND_ACTIVATION_TIMEOUT, () => { | ||||
|             GLib.source_remove(this._xdndTimeOut); | ||||
|         this._xdndTimeOut = GLib.timeout_add(GLib.PRIORITY_DEFAULT, BUTTON_DND_ACTIVATION_TIMEOUT, () => { | ||||
|             this._xdndToggleOverview(); | ||||
|         }); | ||||
|         GLib.Source.set_name_by_id(this._xdndTimeOut, '[gnome-shell] this._xdndToggleOverview'); | ||||
| @@ -496,7 +495,7 @@ class ActivitiesButton extends PanelMenu.Button { | ||||
|         if (pickedActor == this && Main.overview.shouldToggleByCornerOrButton()) | ||||
|             Main.overview.toggle(); | ||||
|  | ||||
|         Mainloop.source_remove(this._xdndTimeOut); | ||||
|         GLib.source_remove(this._xdndTimeOut); | ||||
|         this._xdndTimeOut = 0; | ||||
|         return GLib.SOURCE_REMOVE; | ||||
|     } | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| /* exported PointerA11yTimeout */ | ||||
| const { Clutter, GLib, GObject, Meta, St } = imports.gi; | ||||
| const { Clutter, GObject, Meta, St } = imports.gi; | ||||
| const Main = imports.ui.main; | ||||
| const Cairo = imports.cairo; | ||||
|  | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported getPointerWatcher */ | ||||
|  | ||||
| const { GLib, Meta } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| // We stop polling if the user is idle for more than this amount of time | ||||
| var IDLE_TIME = 1000; | ||||
| @@ -87,7 +86,7 @@ var PointerWatcher = class { | ||||
|  | ||||
|     _updateTimeout() { | ||||
|         if (this._timeoutId) { | ||||
|             Mainloop.source_remove(this._timeoutId); | ||||
|             GLib.source_remove(this._timeoutId); | ||||
|             this._timeoutId = 0; | ||||
|         } | ||||
|  | ||||
| @@ -98,7 +97,7 @@ var PointerWatcher = class { | ||||
|         for (let i = 1; i < this._watches.length; i++) | ||||
|             minInterval = Math.min(this._watches[i].interval, minInterval); | ||||
|  | ||||
|         this._timeoutId = Mainloop.timeout_add(minInterval, | ||||
|         this._timeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, minInterval, | ||||
|             this._onTimeout.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout'); | ||||
|     } | ||||
|   | ||||
| @@ -57,11 +57,9 @@ var PopupBaseMenuItem = GObject.registerClass({ | ||||
|     Properties: { | ||||
|         'active': GObject.ParamSpec.boolean('active', 'active', 'active', | ||||
|                                             GObject.ParamFlags.READWRITE, | ||||
|                                             GObject.TYPE_BOOLEAN, | ||||
|                                             false), | ||||
|         'sensitive': GObject.ParamSpec.boolean('sensitive', 'sensitive', 'sensitive', | ||||
|                                                GObject.ParamFlags.READWRITE, | ||||
|                                                GObject.TYPE_BOOLEAN, | ||||
|                                                true), | ||||
|     }, | ||||
|     Signals: { | ||||
| @@ -69,11 +67,12 @@ var PopupBaseMenuItem = GObject.registerClass({ | ||||
|     } | ||||
| }, class PopupBaseMenuItem extends St.BoxLayout { | ||||
|     _init(params) { | ||||
|         params = Params.parse (params, { reactive: true, | ||||
|         params = Params.parse (params, { | ||||
|             reactive: true, | ||||
|             activate: true, | ||||
|             hover: true, | ||||
|             style_class: null, | ||||
|                                          can_focus: true | ||||
|             can_focus: true, | ||||
|         }); | ||||
|         super._init({ style_class: 'popup-menu-item', | ||||
|                       reactive: params.reactive, | ||||
| @@ -333,8 +332,9 @@ var PopupSwitchMenuItem = GObject.registerClass({ | ||||
|         this._statusBin = new St.Bin({ x_align: St.Align.END }); | ||||
|         this.add(this._statusBin, { expand: true, x_align: St.Align.END }); | ||||
|  | ||||
|         this._statusLabel = new St.Label({ text: '', | ||||
|                                            style_class: 'popup-status-menu-item' | ||||
|         this._statusLabel = new St.Label({ | ||||
|             text: '', | ||||
|             style_class: 'popup-status-menu-item', | ||||
|         }); | ||||
|         this._statusBin.child = this._switch; | ||||
|     } | ||||
|   | ||||
| @@ -34,6 +34,12 @@ var Ripples = class Ripples { | ||||
|         this._ripple3.set_pivot_point(px, py); | ||||
|     } | ||||
|  | ||||
|     destroy() { | ||||
|         this._ripple1.destroy(); | ||||
|         this._ripple2.destroy(); | ||||
|         this._ripple3.destroy(); | ||||
|     } | ||||
|  | ||||
|     _animRipple(ripple, delay, duration, startScale, startOpacity, finalScale) { | ||||
|         // We draw a ripple by using a source image and animating it scaling | ||||
|         // outwards and fading away. We want the ripples to move linearly | ||||
|   | ||||
| @@ -94,9 +94,11 @@ class RunDialog extends ModalDialog.ModalDialog { | ||||
|  | ||||
|         this._errorBox.hide(); | ||||
|  | ||||
|         this.setButtons([{ action: this.close.bind(this), | ||||
|         this.setButtons([{ | ||||
|             action: this.close.bind(this), | ||||
|             label: _("Close"), | ||||
|                            key: Clutter.Escape }]); | ||||
|             key: Clutter.Escape, | ||||
|         }]); | ||||
|  | ||||
|         this._pathCompleter = new Gio.FilenameCompleter(); | ||||
|  | ||||
|   | ||||
| @@ -3,7 +3,6 @@ | ||||
| const { AccountsService, Clutter, Cogl, Gio, GLib, | ||||
|         GnomeDesktop, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Cairo = imports.cairo; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const Background = imports.ui.background; | ||||
| @@ -430,7 +429,8 @@ var ScreenShield = class { | ||||
|         this.actor = Main.layoutManager.screenShieldGroup; | ||||
|  | ||||
|         this._lockScreenState = MessageTray.State.HIDDEN; | ||||
|         this._lockScreenGroup = new St.Widget({ x_expand: true, | ||||
|         this._lockScreenGroup = new St.Widget({ | ||||
|             x_expand: true, | ||||
|             y_expand: true, | ||||
|             reactive: true, | ||||
|             can_focus: true, | ||||
| @@ -833,7 +833,9 @@ var ScreenShield = class { | ||||
|             let lockTimeout = Math.max( | ||||
|                 STANDARD_FADE_TIME, | ||||
|                 this._settings.get_uint(LOCK_DELAY_KEY) * 1000); | ||||
|             this._lockTimeoutId = Mainloop.timeout_add(lockTimeout, | ||||
|             this._lockTimeoutId = GLib.timeout_add( | ||||
|                 GLib.PRIORITY_DEFAULT, | ||||
|                 lockTimeout, | ||||
|                 () => { | ||||
|                     this._lockTimeoutId = 0; | ||||
|                     this.lock(false); | ||||
| @@ -1028,7 +1030,7 @@ var ScreenShield = class { | ||||
|         this._arrowActiveWatchId = 0; | ||||
|  | ||||
|         if (!this._arrowAnimationId) { | ||||
|             this._arrowAnimationId = Mainloop.timeout_add(6000, this._animateArrows.bind(this)); | ||||
|             this._arrowAnimationId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, 6000, this._animateArrows.bind(this)); | ||||
|             GLib.Source.set_name_by_id(this._arrowAnimationId, '[gnome-shell] this._animateArrows'); | ||||
|             this._animateArrows(); | ||||
|         } | ||||
| @@ -1040,7 +1042,7 @@ var ScreenShield = class { | ||||
|  | ||||
|     _pauseArrowAnimation() { | ||||
|         if (this._arrowAnimationId) { | ||||
|             Mainloop.source_remove(this._arrowAnimationId); | ||||
|             GLib.source_remove(this._arrowAnimationId); | ||||
|             this._arrowAnimationId = 0; | ||||
|         } | ||||
|  | ||||
| @@ -1050,7 +1052,7 @@ var ScreenShield = class { | ||||
|  | ||||
|     _stopArrowAnimation() { | ||||
|         if (this._arrowAnimationId) { | ||||
|             Mainloop.source_remove(this._arrowAnimationId); | ||||
|             GLib.source_remove(this._arrowAnimationId); | ||||
|             this._arrowAnimationId = 0; | ||||
|         } | ||||
|         if (this._arrowActiveWatchId) { | ||||
| @@ -1097,7 +1099,7 @@ var ScreenShield = class { | ||||
|         if (params.fadeToBlack && params.animateFade) { | ||||
|             // Take a beat | ||||
|  | ||||
|             let id = Mainloop.timeout_add(MANUAL_FADE_TIME, () => { | ||||
|             let id = GLib.timeout_add(GLib.PRIORITY_DEFAULT, MANUAL_FADE_TIME, () => { | ||||
|                 this._activateFade(this._shortLightbox, MANUAL_FADE_TIME); | ||||
|                 return GLib.SOURCE_REMOVE; | ||||
|             }); | ||||
| @@ -1240,7 +1242,7 @@ var ScreenShield = class { | ||||
|         } | ||||
|  | ||||
|         if (this._lockTimeoutId != 0) { | ||||
|             Mainloop.source_remove(this._lockTimeoutId); | ||||
|             GLib.source_remove(this._lockTimeoutId); | ||||
|             this._lockTimeoutId = 0; | ||||
|         } | ||||
|  | ||||
|   | ||||
| @@ -271,7 +271,7 @@ var SelectArea = class { | ||||
|     } | ||||
|  | ||||
|     _onMotionEvent(actor, event) { | ||||
|         if (this._startX == -1 || this._startY == -1) | ||||
|         if (this._startX == -1 || this._startY == -1 || this._result) | ||||
|             return Clutter.EVENT_PROPAGATE; | ||||
|  | ||||
|         [this._lastX, this._lastY] = event.get_coords(); | ||||
|   | ||||
| @@ -4,7 +4,6 @@ | ||||
|             collectStatistics, runPerfScript */ | ||||
|  | ||||
| const { Gio, GLib, Meta, Shell } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const Main = imports.ui.main; | ||||
| const Params = imports.misc.params; | ||||
| @@ -41,7 +40,7 @@ const { loadInterfaceXML } = imports.misc.fileUtils; | ||||
|  */ | ||||
| function sleep(milliseconds) { | ||||
|     return new Promise(resolve => { | ||||
|         let id = Mainloop.timeout_add(milliseconds, () => { | ||||
|         let id = GLib.timeout_add(GLib.PRIORITY_DEFAULT, milliseconds, () => { | ||||
|             resolve(); | ||||
|             return GLib.SOURCE_REMOVE; | ||||
|         }); | ||||
|   | ||||
| @@ -158,10 +158,15 @@ var SearchResultsBase = class { | ||||
|         this._clipboard = St.Clipboard.get_default(); | ||||
|  | ||||
|         this._cancellable = new Gio.Cancellable(); | ||||
|  | ||||
|         this.actor.connect('destroy', this._onDestroy.bind(this)); | ||||
|     } | ||||
|  | ||||
|     destroy() { | ||||
|         this.actor.destroy(); | ||||
|     } | ||||
|  | ||||
|     _onDestroy() { | ||||
|         this._terms = []; | ||||
|     } | ||||
|  | ||||
| @@ -341,14 +346,30 @@ var GridSearchResults = class extends SearchResultsBase { | ||||
|         this._resultDisplayBin.set_child(this._bin); | ||||
|     } | ||||
|  | ||||
|     _onDestroy() { | ||||
|         if (this._updateSearchLater) { | ||||
|             Meta.later_remove(this._updateSearchLater); | ||||
|             delete this._updateSearchLater; | ||||
|         } | ||||
|  | ||||
|         super._onDestroy(); | ||||
|     } | ||||
|  | ||||
|     updateSearch(...args) { | ||||
|         if (this._notifyAllocationId) | ||||
|             this.actor.disconnect(this._notifyAllocationId); | ||||
|         if (this._updateSearchLater) { | ||||
|             Meta.later_remove(this._updateSearchLater); | ||||
|             delete this._updateSearchLater; | ||||
|         } | ||||
|  | ||||
|         // Make sure the maximum number of results calculated by | ||||
|         // _getMaxDisplayedResults() is updated after width changes. | ||||
|         this._notifyAllocationId = this.actor.connect('notify::allocation', () => { | ||||
|             Meta.later_add(Meta.LaterType.BEFORE_REDRAW, () => { | ||||
|             if (this._updateSearchLater) | ||||
|                 return; | ||||
|             this._updateSearchLater = Meta.later_add(Meta.LaterType.BEFORE_REDRAW, () => { | ||||
|                 delete this._updateSearchLater; | ||||
|                 super.updateSearch(...args); | ||||
|                 return GLib.SOURCE_REMOVE; | ||||
|             }); | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported SessionMode, listModes */ | ||||
|  | ||||
| const GLib = imports.gi.GLib; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const FileUtils = imports.misc.fileUtils; | ||||
| @@ -112,7 +111,7 @@ function _loadMode(file, info) { | ||||
|     let suffix = name.indexOf('.json'); | ||||
|     let modeName = suffix == -1 ? name : name.slice(name, suffix); | ||||
|  | ||||
|     if (_modes.hasOwnProperty(modeName)) | ||||
|     if (Object.prototype.hasOwnProperty.call(_modes, modeName)) | ||||
|         return; | ||||
|  | ||||
|     let fileContent, success_, newMode; | ||||
| @@ -141,15 +140,16 @@ function _loadModes() { | ||||
|  | ||||
| function listModes() { | ||||
|     _loadModes(); | ||||
|     let id = Mainloop.idle_add(() => { | ||||
|     let loop = new GLib.MainLoop(null, false); | ||||
|     let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, () => { | ||||
|         let names = Object.getOwnPropertyNames(_modes); | ||||
|         for (let i = 0; i < names.length; i++) | ||||
|             if (_modes[names[i]].isPrimary) | ||||
|                 print(names[i]); | ||||
|         Mainloop.quit('listModes'); | ||||
|         loop.quit(); | ||||
|     }); | ||||
|     GLib.Source.set_name_by_id(id, '[gnome-shell] listModes'); | ||||
|     Mainloop.run('listModes'); | ||||
|     loop.run(); | ||||
| } | ||||
|  | ||||
| var SessionMode = class { | ||||
|   | ||||
| @@ -26,8 +26,9 @@ function _setButtonsForChoices(dialog, choices) { | ||||
|  | ||||
|     for (let idx = 0; idx < choices.length; idx++) { | ||||
|         let button = idx; | ||||
|         buttons.unshift({ label: choices[idx], | ||||
|                           action: () => dialog.emit('response', button) | ||||
|         buttons.unshift({ | ||||
|             label: choices[idx], | ||||
|             action: () => dialog.emit('response', button), | ||||
|         }); | ||||
|     } | ||||
|  | ||||
| @@ -387,23 +388,25 @@ var ShellMountPasswordDialog = GObject.registerClass({ | ||||
|             this._rememberChoice = null; | ||||
|         } | ||||
|  | ||||
|         this._defaultButtons = [{ label: _("Cancel"), | ||||
|         this._defaultButtons = [{ | ||||
|             label: _("Cancel"), | ||||
|             action: this._onCancelButton.bind(this), | ||||
|                                   key: Clutter.Escape | ||||
|                                 }, | ||||
|                                 { label: _("Unlock"), | ||||
|             key: Clutter.Escape, | ||||
|         }, { | ||||
|             label: _("Unlock"), | ||||
|             action: this._onUnlockButton.bind(this), | ||||
|                                   default: true | ||||
|             default: true, | ||||
|         }]; | ||||
|  | ||||
|         this._usesKeyfilesButtons = [{ label: _("Cancel"), | ||||
|         this._usesKeyfilesButtons = [{ | ||||
|             label: _("Cancel"), | ||||
|             action: this._onCancelButton.bind(this), | ||||
|                                        key: Clutter.Escape | ||||
|                                      }, | ||||
|                                      { /* Translators: %s is the Disks application */ | ||||
|             key: Clutter.Escape, | ||||
|         }, { | ||||
|             /* Translators: %s is the Disks application */ | ||||
|             label: _("Open %s").format(disksApp.get_name()), | ||||
|             action: this._onOpenDisksButton.bind(this), | ||||
|                                        default: true | ||||
|             default: true, | ||||
|         }]; | ||||
|  | ||||
|         this.setButtons(this._defaultButtons); | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported ATIndicator */ | ||||
|  | ||||
| const { Gio, GLib, GObject, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const PanelMenu = imports.ui.panelMenu; | ||||
| const PopupMenu = imports.ui.popupMenu; | ||||
| @@ -96,7 +95,7 @@ class ATIndicator extends PanelMenu.Button { | ||||
|         if (this._syncMenuVisibilityIdle) | ||||
|             return; | ||||
|  | ||||
|         this._syncMenuVisibilityIdle = Mainloop.idle_add(this._syncMenuVisibility.bind(this)); | ||||
|         this._syncMenuVisibilityIdle = GLib.idle_add(GLib.PRIORITY_DEFAULT, this._syncMenuVisibility.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._syncMenuVisibilityIdle, '[gnome-shell] this._syncMenuVisibility'); | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -13,8 +13,8 @@ const PanelMenu = imports.ui.panelMenu; | ||||
| const SwitcherPopup = imports.ui.switcherPopup; | ||||
| const Util = imports.misc.util; | ||||
|  | ||||
| const INPUT_SOURCE_TYPE_XKB = 'xkb'; | ||||
| const INPUT_SOURCE_TYPE_IBUS = 'ibus'; | ||||
| var INPUT_SOURCE_TYPE_XKB = 'xkb'; | ||||
| var INPUT_SOURCE_TYPE_IBUS = 'ibus'; | ||||
|  | ||||
| var LayoutMenuItem = GObject.registerClass( | ||||
| class LayoutMenuItem extends PopupMenu.PopupBaseMenuItem { | ||||
|   | ||||
| @@ -1,7 +1,6 @@ | ||||
| // -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*- | ||||
| /* exported NMApplet */ | ||||
| const { Clutter, Gio, GLib, GObject, NM, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const Animation = imports.ui.animation; | ||||
| @@ -719,7 +718,7 @@ class NMWirelessDialog extends ModalDialog.ModalDialog { | ||||
|         this._updateSensitivity(); | ||||
|         this._syncView(); | ||||
|  | ||||
|         this._scanTimeoutId = Mainloop.timeout_add_seconds(15, this._onScanTimeout.bind(this)); | ||||
|         this._scanTimeoutId = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, 15, this._onScanTimeout.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._scanTimeoutId, '[gnome-shell] this._onScanTimeout'); | ||||
|         this._onScanTimeout(); | ||||
|  | ||||
| @@ -757,7 +756,7 @@ class NMWirelessDialog extends ModalDialog.ModalDialog { | ||||
|         } | ||||
|  | ||||
|         if (this._scanTimeoutId) { | ||||
|             Mainloop.source_remove(this._scanTimeoutId); | ||||
|             GLib.source_remove(this._scanTimeoutId); | ||||
|             this._scanTimeoutId = 0; | ||||
|         } | ||||
|     } | ||||
| @@ -874,7 +873,7 @@ class NMWirelessDialog extends ModalDialog.ModalDialog { | ||||
|         this._airplaneHeadline = new St.Label({ style_class: 'nm-dialog-airplane-headline headline' }); | ||||
|         this._airplaneText = new St.Label({ style_class: 'nm-dialog-airplane-text' }); | ||||
|  | ||||
|         let airplaneSubStack = new St.Widget({ layout_manager: new Clutter.BinLayout }); | ||||
|         let airplaneSubStack = new St.Widget({ layout_manager: new Clutter.BinLayout() }); | ||||
|         this._airplaneButton = new St.Button({ style_class: 'modal-dialog-button button' }); | ||||
|         this._airplaneButton.connect('clicked', () => { | ||||
|             if (this._rfkill.airplaneMode) | ||||
| @@ -1074,12 +1073,13 @@ class NMWirelessDialog extends ModalDialog.ModalDialog { | ||||
|  | ||||
|             this._resortItems(); | ||||
|         } else { | ||||
|             network = { ssid: accessPoint.get_ssid(), | ||||
|             network = { | ||||
|                 ssid: accessPoint.get_ssid(), | ||||
|                 mode: accessPoint.mode, | ||||
|                 security: this._getApSecurityType(accessPoint), | ||||
|                 connections: [], | ||||
|                 item: null, | ||||
|                         accessPoints: [accessPoint] | ||||
|                 accessPoints: [accessPoint], | ||||
|             }; | ||||
|             network.ssidText = ssidToLabel(network.ssid); | ||||
|             this._checkConnections(network, accessPoint); | ||||
|   | ||||
| @@ -110,7 +110,7 @@ var Indicator = class extends PanelMenu.SystemIndicator { | ||||
|         // The icons | ||||
|         let chargingState = this._proxy.State == UPower.DeviceState.CHARGING | ||||
|             ? '-charging' : ''; | ||||
|         let fillLevel = 10 * Math.floor(this._proxy.Percentage / 10); | ||||
|         let fillLevel = 10 * Math.ceil(this._proxy.Percentage / 10); | ||||
|         let icon = this._proxy.State == UPower.DeviceState.FULLY_CHARGED | ||||
|             ? 'battery-level-100-charged-symbolic' | ||||
|             : `battery-level-${fillLevel}${chargingState}-symbolic`; | ||||
|   | ||||
| @@ -137,15 +137,6 @@ var Indicator = class extends PanelMenu.SystemIndicator { | ||||
|         this._sessionUpdated(); | ||||
|     } | ||||
|  | ||||
|     _updateActionsVisibility() { | ||||
|         let visible = (this._settingsAction.visible || | ||||
|                        this._orientationLockAction.visible || | ||||
|                        this._lockScreenAction.visible || | ||||
|                        this._altSwitcher.actor.visible); | ||||
|  | ||||
|         this.buttonGroup.visible = visible; | ||||
|     } | ||||
|  | ||||
|     _sessionUpdated() { | ||||
|         this._settingsAction.visible = Main.sessionMode.allowSettings; | ||||
|     } | ||||
| @@ -253,7 +244,7 @@ var Indicator = class extends PanelMenu.SystemIndicator { | ||||
|  | ||||
|         this._orientationLockAction = this._createActionButton('', _("Orientation Lock")); | ||||
|         this._orientationLockAction.connect('clicked', () => { | ||||
|             this.menu.itemActivated(BoxPointer.PopupAnimation.NONE), | ||||
|             this.menu.itemActivated(BoxPointer.PopupAnimation.NONE); | ||||
|             this._systemActions.activateLockOrientation(); | ||||
|         }); | ||||
|         item.add(this._orientationLockAction, { expand: true, x_fill: false }); | ||||
| @@ -302,15 +293,18 @@ var Indicator = class extends PanelMenu.SystemIndicator { | ||||
|  | ||||
|         this.menu.addMenuItem(item); | ||||
|  | ||||
|         let visibilityGroup = [ | ||||
|             this._settingsAction, | ||||
|             this._orientationLockAction, | ||||
|             this._lockScreenAction, | ||||
|             this._altSwitcher.actor, | ||||
|         ]; | ||||
|  | ||||
|         this._settingsAction.connect('notify::visible', | ||||
|                                      () => this._updateActionsVisibility()); | ||||
|         this._orientationLockAction.connect('notify::visible', | ||||
|                                             () => this._updateActionsVisibility()); | ||||
|         this._lockScreenAction.connect('notify::visible', | ||||
|                                        () => this._updateActionsVisibility()); | ||||
|         this._altSwitcher.actor.connect('notify::visible', | ||||
|                                         () => this._updateActionsVisibility()); | ||||
|         for (let actor of visibilityGroup) { | ||||
|             actor.connect('notify::visible', () => { | ||||
|                 this.buttonGroup.visible = visibilityGroup.some(a => a.visible); | ||||
|             }); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     _onSettingsClicked() { | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| // -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*- | ||||
| /* exported Indicator */ | ||||
|  | ||||
| const { Clutter, Gio, Gvc, St } = imports.gi; | ||||
| const { Clutter, Gio, GObject, Gvc, St } = imports.gi; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const Main = imports.ui.main; | ||||
| @@ -36,7 +36,8 @@ var StreamSlider = class { | ||||
|         this._soundSettings.connect(`changed::${ALLOW_AMPLIFIED_VOLUME_KEY}`, this._amplifySettingsChanged.bind(this)); | ||||
|         this._amplifySettingsChanged(); | ||||
|  | ||||
|         this._slider.connect('notify::value', this._sliderChanged.bind(this)); | ||||
|         this._sliderChangedId = 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' }); | ||||
| @@ -129,10 +130,16 @@ 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._slider.value = muted | ||||
|             ? 0 : (this._stream.volume / this._control.get_vol_max_norm()); | ||||
|         this._changeSlider(muted | ||||
|             ? 0 : (this._stream.volume / this._control.get_vol_max_norm())); | ||||
|         this.emit('stream-updated'); | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported SwitcherPopup, SwitcherList */ | ||||
|  | ||||
| const { Clutter, GLib, GObject, Meta, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const Main = imports.ui.main; | ||||
|  | ||||
| @@ -142,7 +141,9 @@ var SwitcherPopup = GObject.registerClass({ | ||||
|  | ||||
|         // We delay showing the popup so that fast Alt+Tab users aren't | ||||
|         // disturbed by the popup briefly flashing. | ||||
|         this._initialDelayTimeoutId = Mainloop.timeout_add(POPUP_DELAY_TIMEOUT, | ||||
|         this._initialDelayTimeoutId = GLib.timeout_add( | ||||
|             GLib.PRIORITY_DEFAULT, | ||||
|             POPUP_DELAY_TIMEOUT, | ||||
|             () => { | ||||
|                 Main.osdWindowManager.hideAll(); | ||||
|                 this.opacity = 255; | ||||
| @@ -249,9 +250,9 @@ var SwitcherPopup = GObject.registerClass({ | ||||
|         this.mouseActive = false; | ||||
|  | ||||
|         if (this._motionTimeoutId != 0) | ||||
|             Mainloop.source_remove(this._motionTimeoutId); | ||||
|             GLib.source_remove(this._motionTimeoutId); | ||||
|  | ||||
|         this._motionTimeoutId = Mainloop.timeout_add(DISABLE_HOVER_TIMEOUT, this._mouseTimedOut.bind(this)); | ||||
|         this._motionTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, DISABLE_HOVER_TIMEOUT, this._mouseTimedOut.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._motionTimeoutId, '[gnome-shell] this._mouseTimedOut'); | ||||
|     } | ||||
|  | ||||
| @@ -263,9 +264,11 @@ var SwitcherPopup = GObject.registerClass({ | ||||
|  | ||||
|     _resetNoModsTimeout() { | ||||
|         if (this._noModsTimeoutId != 0) | ||||
|             Mainloop.source_remove(this._noModsTimeoutId); | ||||
|             GLib.source_remove(this._noModsTimeoutId); | ||||
|  | ||||
|         this._noModsTimeoutId = Mainloop.timeout_add(NO_MODS_TIMEOUT, | ||||
|         this._noModsTimeoutId = GLib.timeout_add( | ||||
|             GLib.PRIORITY_DEFAULT, | ||||
|             NO_MODS_TIMEOUT, | ||||
|             () => { | ||||
|                 this._finish(global.get_current_time()); | ||||
|                 this._noModsTimeoutId = 0; | ||||
| @@ -302,11 +305,11 @@ var SwitcherPopup = GObject.registerClass({ | ||||
|         this._popModal(); | ||||
|  | ||||
|         if (this._motionTimeoutId != 0) | ||||
|             Mainloop.source_remove(this._motionTimeoutId); | ||||
|             GLib.source_remove(this._motionTimeoutId); | ||||
|         if (this._initialDelayTimeoutId != 0) | ||||
|             Mainloop.source_remove(this._initialDelayTimeoutId); | ||||
|             GLib.source_remove(this._initialDelayTimeoutId); | ||||
|         if (this._noModsTimeoutId != 0) | ||||
|             Mainloop.source_remove(this._noModsTimeoutId); | ||||
|             GLib.source_remove(this._noModsTimeoutId); | ||||
|     } | ||||
|  | ||||
|     _select(num) { | ||||
|   | ||||
| @@ -309,11 +309,9 @@ var ViewSelector = class { | ||||
|         if (params.a11yFocus) | ||||
|             Main.ctrlAltTabManager.addGroup(params.a11yFocus, name, a11yIcon); | ||||
|         else | ||||
|             Main.ctrlAltTabManager.addGroup(actor, name, a11yIcon, | ||||
|                                             { proxy: this.actor, | ||||
|                                               focusCallback: () => { | ||||
|                                                   this._a11yFocusPage(page); | ||||
|                                               } | ||||
|             Main.ctrlAltTabManager.addGroup(actor, name, a11yIcon, { | ||||
|                 proxy: this.actor, | ||||
|                 focusCallback: () => this._a11yFocusPage(page), | ||||
|             }); | ||||
|         page.hide(); | ||||
|         this.actor.add_actor(page); | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported WindowManager */ | ||||
|  | ||||
| const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const AltTab = imports.ui.altTab; | ||||
| @@ -17,6 +16,7 @@ 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; | ||||
|  | ||||
| @@ -70,13 +70,13 @@ class DisplayChangeDialog extends ModalDialog.ModalDialog { | ||||
|                                           action: this._onSuccess.bind(this), | ||||
|                                           default: true }); | ||||
|  | ||||
|         this._timeoutId = Mainloop.timeout_add(ONE_SECOND, this._tick.bind(this)); | ||||
|         this._timeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, ONE_SECOND, this._tick.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._tick'); | ||||
|     } | ||||
|  | ||||
|     close(timestamp) { | ||||
|         if (this._timeoutId > 0) { | ||||
|             Mainloop.source_remove(this._timeoutId); | ||||
|             GLib.source_remove(this._timeoutId); | ||||
|             this._timeoutId = 0; | ||||
|         } | ||||
|  | ||||
| @@ -280,9 +280,9 @@ var WorkspaceTracker = class { | ||||
|  | ||||
|     keepWorkspaceAlive(workspace, duration) { | ||||
|         if (workspace._keepAliveId) | ||||
|             Mainloop.source_remove(workspace._keepAliveId); | ||||
|             GLib.source_remove(workspace._keepAliveId); | ||||
|  | ||||
|         workspace._keepAliveId = Mainloop.timeout_add(duration, () => { | ||||
|         workspace._keepAliveId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, duration, () => { | ||||
|             workspace._keepAliveId = 0; | ||||
|             this._queueCheckWorkspaces(); | ||||
|             return GLib.SOURCE_REMOVE; | ||||
| @@ -293,7 +293,7 @@ var WorkspaceTracker = class { | ||||
|     _windowRemoved(workspace, window) { | ||||
|         workspace._lastRemovedWindow = window; | ||||
|         this._queueCheckWorkspaces(); | ||||
|         let id = Mainloop.timeout_add(LAST_WINDOW_GRACE_TIME, () => { | ||||
|         let id = GLib.timeout_add(GLib.PRIORITY_DEFAULT, LAST_WINDOW_GRACE_TIME, () => { | ||||
|             if (workspace._lastRemovedWindow == window) { | ||||
|                 workspace._lastRemovedWindow = null; | ||||
|                 this._queueCheckWorkspaces(); | ||||
| @@ -1041,6 +1041,15 @@ 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]); | ||||
|   | ||||
| @@ -224,7 +224,7 @@ var WindowMenuManager = class { | ||||
|         this._sourceActor.set_position(rect.x, rect.y); | ||||
|         this._sourceActor.show(); | ||||
|  | ||||
|         menu.open(BoxPointer.PopupAnimation.NONE); | ||||
|         menu.open(BoxPointer.PopupAnimation.FADE); | ||||
|         menu.actor.navigate_focus(null, St.DirectionType.TAB_FORWARD, false); | ||||
|         menu.connect('open-state-changed', (menu_, isOpen) => { | ||||
|             if (isOpen) | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported Workspace */ | ||||
|  | ||||
| const { Atk, Clutter, GLib, GObject, Meta, Pango, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const DND = imports.ui.dnd; | ||||
| @@ -57,17 +56,16 @@ class WindowCloneLayout extends Clutter.LayoutManager { | ||||
|         // has an extra set of "padding" around it that we need to trim | ||||
|         // down. | ||||
|  | ||||
|         // The outer rect (from which we compute the bounding box) | ||||
|         // paradoxically is the smaller rectangle, containing the positions | ||||
|         // of the visible frame. The input rect contains everything, | ||||
|         // including the invisible border padding. | ||||
|         let inputRect = window.get_buffer_rect(); | ||||
|         // The bounding box is based on the (visible) frame rect, while | ||||
|         // the buffer rect contains everything, including the invisible | ||||
|         // border padding. | ||||
|         let bufferRect = window.get_buffer_rect(); | ||||
|  | ||||
|         let box = new Clutter.ActorBox(); | ||||
|  | ||||
|         box.set_origin(inputRect.x - this._boundingBox.x, | ||||
|                        inputRect.y - this._boundingBox.y); | ||||
|         box.set_size(inputRect.width, inputRect.height); | ||||
|         box.set_origin(bufferRect.x - this._boundingBox.x, | ||||
|                        bufferRect.y - this._boundingBox.y); | ||||
|         box.set_size(bufferRect.width, bufferRect.height); | ||||
|  | ||||
|         return box; | ||||
|     } | ||||
| @@ -83,8 +81,8 @@ class WindowCloneLayout extends Clutter.LayoutManager { | ||||
|     vfunc_allocate(container, box, flags) { | ||||
|         container.get_children().forEach(child => { | ||||
|             let realWindow; | ||||
|             if (child == container._delegate._windowClone) | ||||
|                 realWindow = container._delegate.realWindow; | ||||
|             if (child == container._windowClone) | ||||
|                 realWindow = container.realWindow; | ||||
|             else | ||||
|                 realWindow = child.source; | ||||
|  | ||||
| @@ -104,7 +102,7 @@ var WindowClone = GObject.registerClass({ | ||||
|         'show-chrome': {}, | ||||
|         'size-changed': {} | ||||
|     }, | ||||
| }, class WindowClone extends St.Widget { | ||||
| }, class WorkspaceWindowClone extends St.Widget { | ||||
|     _init(realWindow, workspace) { | ||||
|         this.realWindow = realWindow; | ||||
|         this.metaWindow = realWindow.meta_window; | ||||
| @@ -354,6 +352,11 @@ var WindowClone = GObject.registerClass({ | ||||
|         this.metaWindow._delegate = null; | ||||
|         this._delegate = null; | ||||
|  | ||||
|         if (this._longPressLater) { | ||||
|             Meta.later_remove(this._longPressLater); | ||||
|             delete this._longPressLater; | ||||
|         } | ||||
|  | ||||
|         if (this.inDrag) { | ||||
|             this.emit('drag-end'); | ||||
|             this.inDrag = false; | ||||
| @@ -388,9 +391,13 @@ var WindowClone = GObject.registerClass({ | ||||
|             let event = Clutter.get_current_event(); | ||||
|             this._dragTouchSequence = event.get_event_sequence(); | ||||
|  | ||||
|             if (this._longPressLater) | ||||
|                 return true; | ||||
|  | ||||
|             // A click cancels a long-press before any click handler is | ||||
|             // run - make sure to not start a drag in that case | ||||
|             Meta.later_add(Meta.LaterType.BEFORE_REDRAW, () => { | ||||
|             this._longPressLater = Meta.later_add(Meta.LaterType.BEFORE_REDRAW, () => { | ||||
|                 delete this._longPressLater; | ||||
|                 if (this._selected) | ||||
|                     return; | ||||
|                 let [x, y] = action.get_coords(); | ||||
| @@ -628,7 +635,7 @@ var WindowOverlay = class { | ||||
|  | ||||
|     _onDestroy() { | ||||
|         if (this._idleHideOverlayId > 0) { | ||||
|             Mainloop.source_remove(this._idleHideOverlayId); | ||||
|             GLib.source_remove(this._idleHideOverlayId); | ||||
|             this._idleHideOverlayId = 0; | ||||
|         } | ||||
|         this._windowClone.metaWindow.disconnect(this._updateCaptionId); | ||||
| @@ -680,7 +687,7 @@ var WindowOverlay = class { | ||||
|  | ||||
|     _onHideChrome() { | ||||
|         if (this._idleHideOverlayId == 0) { | ||||
|             this._idleHideOverlayId = Mainloop.timeout_add(WINDOW_OVERLAY_IDLE_HIDE_TIMEOUT, this._idleHideOverlay.bind(this)); | ||||
|             this._idleHideOverlayId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, WINDOW_OVERLAY_IDLE_HIDE_TIMEOUT, this._idleHideOverlay.bind(this)); | ||||
|             GLib.Source.set_name_by_id(this._idleHideOverlayId, '[gnome-shell] this._idleHideOverlay'); | ||||
|         } | ||||
|     } | ||||
| @@ -697,7 +704,7 @@ var WindowOverlay = class { | ||||
|  | ||||
|     hideOverlay() { | ||||
|         if (this._idleHideOverlayId > 0) { | ||||
|             Mainloop.source_remove(this._idleHideOverlayId); | ||||
|             GLib.source_remove(this._idleHideOverlayId); | ||||
|             this._idleHideOverlayId = 0; | ||||
|         } | ||||
|         this.closeButton.hide(); | ||||
| @@ -939,7 +946,7 @@ var LayoutStrategy = class { | ||||
|             y += row.height * row.additionalScale + this._rowSpacing; | ||||
|         } | ||||
|  | ||||
|         compensation = compensation / 2; | ||||
|         compensation /= 2; | ||||
|  | ||||
|         for (let i = 0; i < rows.length; i++) { | ||||
|             let row = rows[i]; | ||||
| @@ -1090,10 +1097,8 @@ const WorkspaceActor = GObject.registerClass( | ||||
| class WorkspaceActor extends St.Widget { | ||||
|     vfunc_get_focus_chain() { | ||||
|         return this.get_children().filter(c => c.visible).sort((a, b) => { | ||||
|             let cloneA = (a._delegate && a._delegate instanceof WindowClone) ? a._delegate : null; | ||||
|             let cloneB = (b._delegate && b._delegate instanceof WindowClone) ? b._delegate : null; | ||||
|             if (cloneA && cloneB) | ||||
|                 return cloneA.slotId - cloneB.slotId; | ||||
|             if (a instanceof WindowClone && b instanceof WindowClone) | ||||
|                 return a.slotId - b.slotId; | ||||
|  | ||||
|             return 0; | ||||
|         }); | ||||
| @@ -1263,7 +1268,7 @@ var Workspace = class { | ||||
|  | ||||
|     _realRecalculateWindowPositions(flags) { | ||||
|         if (this._repositionWindowsId > 0) { | ||||
|             Mainloop.source_remove(this._repositionWindowsId); | ||||
|             GLib.source_remove(this._repositionWindowsId); | ||||
|             this._repositionWindowsId = 0; | ||||
|         } | ||||
|  | ||||
| @@ -1473,7 +1478,7 @@ var Workspace = class { | ||||
|  | ||||
|         // remove old handler | ||||
|         if (this._repositionWindowsId > 0) { | ||||
|             Mainloop.source_remove(this._repositionWindowsId); | ||||
|             GLib.source_remove(this._repositionWindowsId); | ||||
|             this._repositionWindowsId = 0; | ||||
|         } | ||||
|  | ||||
| @@ -1483,7 +1488,7 @@ var Workspace = class { | ||||
|         this._cursorY = y; | ||||
|  | ||||
|         this._currentLayout = null; | ||||
|         this._repositionWindowsId = Mainloop.timeout_add(WINDOW_REPOSITIONING_DELAY, | ||||
|         this._repositionWindowsId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, WINDOW_REPOSITIONING_DELAY, | ||||
|             this._delayedWindowRepositioning.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._repositionWindowsId, '[gnome-shell] this._delayedWindowRepositioning'); | ||||
|     } | ||||
| @@ -1497,7 +1502,7 @@ var Workspace = class { | ||||
|         if (!win) { | ||||
|             // Newly-created windows are added to a workspace before | ||||
|             // the compositor finds out about them... | ||||
|             let id = Mainloop.idle_add(() => { | ||||
|             let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, () => { | ||||
|                 if (this.actor && | ||||
|                     metaWin.get_compositor_private() && | ||||
|                     metaWin.get_workspace() == this.metaWorkspace) | ||||
| @@ -1643,7 +1648,7 @@ var Workspace = class { | ||||
|             this._windows[i].remove_all_transitions(); | ||||
|  | ||||
|         if (this._repositionWindowsId > 0) { | ||||
|             Mainloop.source_remove(this._repositionWindowsId); | ||||
|             GLib.source_remove(this._repositionWindowsId); | ||||
|             this._repositionWindowsId = 0; | ||||
|         } | ||||
|  | ||||
| @@ -1728,7 +1733,7 @@ var Workspace = class { | ||||
|             this._windows[i].remove_all_transitions(); | ||||
|  | ||||
|         if (this._repositionWindowsId > 0) { | ||||
|             Mainloop.source_remove(this._repositionWindowsId); | ||||
|             GLib.source_remove(this._repositionWindowsId); | ||||
|             this._repositionWindowsId = 0; | ||||
|         } | ||||
|         this._overviewHiddenId = Main.overview.connect('hidden', this._doneLeavingOverview.bind(this)); | ||||
| @@ -1789,7 +1794,7 @@ var Workspace = class { | ||||
|         global.display.disconnect(this._windowLeftMonitorId); | ||||
|  | ||||
|         if (this._repositionWindowsId > 0) { | ||||
|             Mainloop.source_remove(this._repositionWindowsId); | ||||
|             GLib.source_remove(this._repositionWindowsId); | ||||
|             this._repositionWindowsId = 0; | ||||
|         } | ||||
|  | ||||
| @@ -1978,7 +1983,7 @@ var Workspace = class { | ||||
|     } | ||||
|  | ||||
|     _onCloneSelected(clone, time) { | ||||
|         let wsIndex = undefined; | ||||
|         let wsIndex; | ||||
|         if (this.metaWorkspace) | ||||
|             wsIndex = this.metaWorkspace.index(); | ||||
|         Main.activateWindow(clone.metaWindow, time, wsIndex); | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported WorkspaceSwitcherPopup */ | ||||
|  | ||||
| const { Clutter, GLib, GObject, Meta, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
|  | ||||
| const Main = imports.ui.main; | ||||
|  | ||||
| @@ -195,14 +194,14 @@ class WorkspaceSwitcherPopup extends St.Widget { | ||||
|  | ||||
|         this._redisplay(); | ||||
|         if (this._timeoutId != 0) | ||||
|             Mainloop.source_remove(this._timeoutId); | ||||
|         this._timeoutId = Mainloop.timeout_add(DISPLAY_TIMEOUT, this._onTimeout.bind(this)); | ||||
|             GLib.source_remove(this._timeoutId); | ||||
|         this._timeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, DISPLAY_TIMEOUT, this._onTimeout.bind(this)); | ||||
|         GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout'); | ||||
|         this._show(); | ||||
|     } | ||||
|  | ||||
|     _onTimeout() { | ||||
|         Mainloop.source_remove(this._timeoutId); | ||||
|         GLib.source_remove(this._timeoutId); | ||||
|         this._timeoutId = 0; | ||||
|         this._container.ease({ | ||||
|             opacity: 0.0, | ||||
| @@ -215,7 +214,7 @@ class WorkspaceSwitcherPopup extends St.Widget { | ||||
|  | ||||
|     _onDestroy() { | ||||
|         if (this._timeoutId) | ||||
|             Mainloop.source_remove(this._timeoutId); | ||||
|             GLib.source_remove(this._timeoutId); | ||||
|         this._timeoutId = 0; | ||||
|  | ||||
|         let workspaceManager = global.workspace_manager; | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* exported WorkspaceThumbnail, ThumbnailsBox */ | ||||
|  | ||||
| const { Clutter, Gio, GLib, GObject, Meta, Shell, St } = imports.gi; | ||||
| const Mainloop = imports.mainloop; | ||||
| const Signals = imports.signals; | ||||
|  | ||||
| const Background = imports.ui.background; | ||||
| @@ -389,7 +388,7 @@ var WorkspaceThumbnail = GObject.registerClass({ | ||||
|         if (!win) { | ||||
|             // Newly-created windows are added to a workspace before | ||||
|             // the compositor finds out about them... | ||||
|             let id = Mainloop.idle_add(() => { | ||||
|             let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, () => { | ||||
|                 if (!this._removed && | ||||
|                     metaWin.get_compositor_private() && | ||||
|                     metaWin.get_workspace() == this.metaWorkspace) | ||||
| @@ -711,14 +710,12 @@ var ThumbnailsBox = GObject.registerClass({ | ||||
|     _activateThumbnailAtPoint(stageX, stageY, time) { | ||||
|         let [r_, x_, y] = this.transform_stage_point(stageX, stageY); | ||||
|  | ||||
|         for (let i = 0; i < this._thumbnails.length; i++) { | ||||
|             let thumbnail = this._thumbnails[i]; | ||||
|             let [, h] = thumbnail.get_transformed_size(); | ||||
|             if (y >= thumbnail.y && y <= thumbnail.y + h) { | ||||
|         let thumbnail = this._thumbnails.find(t => { | ||||
|             let [, h] = t.get_transformed_size(); | ||||
|             return y >= t.y && y <= t.y + h; | ||||
|         }); | ||||
|         if (thumbnail) | ||||
|             thumbnail.activate(time); | ||||
|                 break; | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     _onButtonRelease(actor, event) { | ||||
| @@ -1340,15 +1337,9 @@ var ThumbnailsBox = GObject.registerClass({ | ||||
|     } | ||||
|  | ||||
|     _activeWorkspaceChanged(_wm, _from, _to, _direction) { | ||||
|         let thumbnail; | ||||
|         let workspaceManager = global.workspace_manager; | ||||
|         let activeWorkspace = workspaceManager.get_active_workspace(); | ||||
|         for (let i = 0; i < this._thumbnails.length; i++) { | ||||
|             if (this._thumbnails[i].metaWorkspace == activeWorkspace) { | ||||
|                 thumbnail = this._thumbnails[i]; | ||||
|                 break; | ||||
|             } | ||||
|         } | ||||
|         let thumbnail = this._thumbnails.find(t => t.metaWorkspace == activeWorkspace); | ||||
|  | ||||
|         this._animatingIndicator = true; | ||||
|         let indicatorThemeNode = this._indicator.get_theme_node(); | ||||
|   | ||||
| @@ -524,6 +524,22 @@ var WorkspacesDisplay = class { | ||||
|         this._keyPressEventId = 0; | ||||
|  | ||||
|         this._fullGeometry = null; | ||||
|  | ||||
|         this.actor.connect('destroy', this._onDestroy.bind(this)); | ||||
|     } | ||||
|  | ||||
|     _onDestroy() { | ||||
|         if (this._notifyOpacityId) { | ||||
|             let parent = this.actor.get_parent(); | ||||
|             if (parent) | ||||
|                 parent.disconnect(this._notifyOpacityId); | ||||
|             this._notifyOpacityId = 0; | ||||
|         } | ||||
|  | ||||
|         if (this._parentSetLater) { | ||||
|             Meta.later_remove(this._parentSetLater); | ||||
|             this._parentSetLater = 0; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     _onPan(action) { | ||||
| @@ -717,7 +733,11 @@ var WorkspacesDisplay = class { | ||||
|             oldParent.disconnect(this._notifyOpacityId); | ||||
|         this._notifyOpacityId = 0; | ||||
|  | ||||
|         Meta.later_add(Meta.LaterType.BEFORE_REDRAW, () => { | ||||
|         if (this._parentSetLater) | ||||
|             return; | ||||
|  | ||||
|         this._parentSetLater = Meta.later_add(Meta.LaterType.BEFORE_REDRAW, () => { | ||||
|             this._parentSetLater = 0; | ||||
|             let newParent = this.actor.get_parent(); | ||||
|             if (!newParent) | ||||
|                 return; | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| project('gnome-shell', 'c', | ||||
|   version: '3.33.91', | ||||
|   version: '3.34.0', | ||||
|   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.33.91' | ||||
| mutter_req = '>= 3.34.0' | ||||
| polkit_req = '>= 0.100' | ||||
| schemas_req = '>= 3.33.1' | ||||
| startup_req = '>= 0.11' | ||||
|   | ||||
							
								
								
									
										118
									
								
								po/ca.po
									
									
									
									
									
								
							
							
						
						
									
										118
									
								
								po/ca.po
									
									
									
									
									
								
							| @@ -10,7 +10,7 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: HEAD\n" | ||||
| "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n" | ||||
| "POT-Creation-Date: 2019-08-21 23:18+0000\n" | ||||
| "POT-Creation-Date: 2019-09-11 17:13+0000\n" | ||||
| "PO-Revision-Date: 2019-08-25 21:53+0200\n" | ||||
| "Last-Translator: Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>\n" | ||||
| "Language-Team: Catalan <tradgnome@softcatala.org>\n" | ||||
| @@ -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 verificació «Recorda la " | ||||
| "utilitzar-lo en el futur, es mostrarà la casella de selecció «Recorda la " | ||||
| "contrasenya». Aquesta clau estableix el valor per defecte d'aquesta casella " | ||||
| "de verificació." | ||||
| "de selecció." | ||||
|  | ||||
| #: data/org.gnome.shell.gschema.xml.in:96 | ||||
| msgid "" | ||||
| @@ -470,7 +470,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -774,28 +774,32 @@ msgstr "Freqüent" | ||||
| msgid "All" | ||||
| msgstr "Totes" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "Canvia el nom" | ||||
|  | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Obre finestres" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Finestra nova" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Inicia usant una targeta gràfica dedicada" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Suprimeix dels preferits" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Afegeix als preferits" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Mostra els detalls" | ||||
|  | ||||
| @@ -825,7 +829,7 @@ msgstr "Auriculars" | ||||
| msgid "Headset" | ||||
| msgstr "Auriculars amb micròfon" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Micròfon" | ||||
|  | ||||
| @@ -1328,13 +1332,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Altres usuaris tenen la sessió oberta." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (remot)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (consola)" | ||||
| @@ -1412,9 +1416,9 @@ msgid "" | ||||
| "row. This turns off the Sticky Keys feature, which affects the way your " | ||||
| "keyboard works." | ||||
| msgstr "" | ||||
| "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." | ||||
| "Heu premut dues 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." | ||||
|  | ||||
| #: js/ui/kbdA11yDialog.js:58 | ||||
| msgid "Leave On" | ||||
| @@ -1489,7 +1493,7 @@ msgstr "Mostra el codi font" | ||||
| msgid "Web Page" | ||||
| msgstr "Pàgina web" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Informació de l'ordinador" | ||||
|  | ||||
| @@ -1618,7 +1622,7 @@ msgid_plural "%d new notifications" | ||||
| msgstr[0] "%d notificació nova" | ||||
| msgstr[1] "%d notificacions noves" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Bloqueja" | ||||
|  | ||||
| @@ -1641,15 +1645,15 @@ msgstr "No es pot blocar" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Una aplicació està bloquejant el bloqueig" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "S'està cercant…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "No s'ha trobat cap resultat." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -2134,27 +2138,27 @@ msgstr "Desactiva" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "El mode d'avió és actiu" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Canvia d'usuari" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Surt" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Paràmetres del compte" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Bloqueja l'orientació" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Atura temporalment" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Apaga" | ||||
|  | ||||
| @@ -2194,11 +2198,11 @@ msgstr "S'ha produït un error d'autorització a Thunderbolt" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "No s'ha pogut autoritzar el dispositiu Thunderbolt: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "S'ha canviat el volum" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Volum" | ||||
|  | ||||
| @@ -2251,22 +2255,22 @@ msgstr "Cerca" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "«%s» ja està a punt" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "Voleu mantenir aquesta configuració de la pantalla?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Descarta els canvis" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Mantén els canvis" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2275,7 +2279,7 @@ msgstr[1] "Es descartaran els canvis d'aquí %d segons" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2367,7 +2371,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 del què fa l'extensió.\n" | ||||
| "La descripció és una explicació d'una frase de què fa l'extensió.\n" | ||||
| "Per exemple: %s" | ||||
|  | ||||
| #: src/extensions-tool/command-create.c:206 src/extensions-tool/main.c:172 | ||||
| @@ -2587,7 +2591,7 @@ msgstr "Comarca" | ||||
| msgid "“version” takes no arguments" | ||||
| msgstr "«version» no té arguments" | ||||
|  | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:239 | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:243 | ||||
| msgid "Usage:" | ||||
| msgstr "Ús:" | ||||
|  | ||||
| @@ -2595,80 +2599,80 @@ msgstr "Ús:" | ||||
| msgid "Print version information and exit." | ||||
| msgstr "Mostra la informació de la versió i surt." | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244 | ||||
| msgid "COMMAND" | ||||
| msgstr "ORDRE" | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:244 | ||||
| msgid "[ARGS…]" | ||||
| msgstr "[ARGS…]" | ||||
|  | ||||
| #: src/extensions-tool/main.c:242 | ||||
| #: src/extensions-tool/main.c:246 | ||||
| msgid "Commands:" | ||||
| msgstr "Ordres:" | ||||
|  | ||||
| #: src/extensions-tool/main.c:243 | ||||
| #: src/extensions-tool/main.c:247 | ||||
| msgid "Print help" | ||||
| msgstr "Mostra l'ajuda" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:248 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Mostra la versió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:245 | ||||
| #: src/extensions-tool/main.c:249 | ||||
| msgid "Enable extension" | ||||
| msgstr "Habilita l'extensió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:246 | ||||
| #: src/extensions-tool/main.c:250 | ||||
| msgid "Disable extension" | ||||
| msgstr "Inhabilita l'extensió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:247 | ||||
| #: src/extensions-tool/main.c:251 | ||||
| msgid "Reset extension" | ||||
| msgstr "Reinicia l'extensió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:248 | ||||
| #: src/extensions-tool/main.c:252 | ||||
| msgid "Uninstall extension" | ||||
| msgstr "Desinstal·la l'extensió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:249 | ||||
| #: src/extensions-tool/main.c:253 | ||||
| msgid "List extensions" | ||||
| msgstr "Llista les extensions" | ||||
|  | ||||
| #: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251 | ||||
| #: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255 | ||||
| msgid "Show extension info" | ||||
| msgstr "Mostra la informació de l'extensió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:252 | ||||
| #: src/extensions-tool/main.c:256 | ||||
| msgid "Open extension preferences" | ||||
| msgstr "Obre les preferències de l'extensió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:253 | ||||
| #: src/extensions-tool/main.c:257 | ||||
| msgid "Create extension" | ||||
| msgstr "Crea extensió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:254 | ||||
| #: src/extensions-tool/main.c:258 | ||||
| msgid "Package extension" | ||||
| msgstr "Paquet d'extensió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:255 | ||||
| #: src/extensions-tool/main.c:259 | ||||
| msgid "Install extension bundle" | ||||
| msgstr "Instal·la un paquet d'extensió" | ||||
|  | ||||
| #: src/extensions-tool/main.c:257 | ||||
| #: src/extensions-tool/main.c:261 | ||||
| #, c-format | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgstr "Feu servir %s per obtenir ajuda detallada.\n" | ||||
| msgid "Use “%s” to get detailed help.\n" | ||||
| msgstr "Feu servir «%s» per obtenir ajuda detallada.\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "El mode que utilitzarà el GDM per a la pantalla d'entrada" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "Utilitza un mode específic, p. ex. «gdm» per la pantalla d'entrada" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Llista els modes possibles" | ||||
|  | ||||
|   | ||||
							
								
								
									
										108
									
								
								po/de.po
									
									
									
									
									
								
							
							
						
						
									
										108
									
								
								po/de.po
									
									
									
									
									
								
							| @@ -22,9 +22,9 @@ 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-08-23 21:09+0200\n" | ||||
| "Last-Translator: Tim Sabsch <tim@sabsch.com>\n" | ||||
| "POT-Creation-Date: 2019-09-11 17:13+0000\n" | ||||
| "PO-Revision-Date: 2019-09-11 23:14+0200\n" | ||||
| "Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n" | ||||
| "Language-Team: Deutsch <gnome-de@gnome.org>\n" | ||||
| "Language: de\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| @@ -475,7 +475,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -779,29 +779,33 @@ msgstr "Häufig" | ||||
| msgid "All" | ||||
| msgstr "Alle" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "Umbenennen" | ||||
|  | ||||
| # Fensterüberschrift | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Offene Fenster" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Neues Fenster" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Mit dedizierter Grafikkarte starten" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Aus Favoriten entfernen" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Zu Favoriten hinzufügen" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Details anzeigen" | ||||
|  | ||||
| @@ -831,7 +835,7 @@ msgstr "Kopfhörer" | ||||
| msgid "Headset" | ||||
| msgstr "Headset" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Mikrofon" | ||||
|  | ||||
| @@ -1336,13 +1340,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Andere Benutzer sind angemeldet." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (Entfernt)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (Konsole)" | ||||
| @@ -1497,7 +1501,7 @@ msgstr "Quelle zeigen" | ||||
| msgid "Web Page" | ||||
| msgstr "Webseite" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Systeminformationen" | ||||
|  | ||||
| @@ -1629,7 +1633,7 @@ msgid_plural "%d new notifications" | ||||
| msgstr[0] "%d neue Benachrichtigung" | ||||
| msgstr[1] "%d neue Benachrichtigungen" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Sperren" | ||||
|  | ||||
| @@ -1652,15 +1656,15 @@ msgstr "Sperrung fehlgeschlagen" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Sperrung wurde von einer Anwendung blockiert" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "Suche läuft …" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "Keine Ergebnisse." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -2153,27 +2157,27 @@ msgstr "Ausschalten" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "Flugmodus ist eingeschaltet" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Benutzer wechseln" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Abmelden" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Kontoeinstellungen" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Hoch-/Querformats-Fixierung" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Bereitschaft" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Ausschalten" | ||||
|  | ||||
| @@ -2213,11 +2217,11 @@ msgstr "Thunderbolt-Legitimierungsfehler" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "Das Thunderbolt-Gerät %s konnte nicht legitimiert werden" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "Lautstärke geändert" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Lautstärke" | ||||
|  | ||||
| @@ -2270,22 +2274,22 @@ msgstr "Suchen" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "»%s« ist bereit" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "Wollen Sie diese Anzeigeeinstellungen beibehalten?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Zurücksetzen" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Beibehalten" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2295,7 +2299,7 @@ msgstr[1] "" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2609,7 +2613,7 @@ msgstr "Status" | ||||
| msgid "“version” takes no arguments" | ||||
| msgstr "»version« akzeptiert keine Argumente" | ||||
|  | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:239 | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:243 | ||||
| msgid "Usage:" | ||||
| msgstr "Aufruf:" | ||||
|  | ||||
| @@ -2617,82 +2621,82 @@ msgstr "Aufruf:" | ||||
| msgid "Print version information and exit." | ||||
| msgstr "Versionsinformationen ausgeben und beenden." | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244 | ||||
| msgid "COMMAND" | ||||
| msgstr "BEFEHL" | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:244 | ||||
| msgid "[ARGS…]" | ||||
| msgstr "[ARGUMENTE …]" | ||||
|  | ||||
| #: src/extensions-tool/main.c:242 | ||||
| #: src/extensions-tool/main.c:246 | ||||
| msgid "Commands:" | ||||
| msgstr "Befehle:" | ||||
|  | ||||
| #: src/extensions-tool/main.c:243 | ||||
| #: src/extensions-tool/main.c:247 | ||||
| msgid "Print help" | ||||
| msgstr "Hilfe ausgeben" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:248 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Version ausgeben" | ||||
|  | ||||
| #: src/extensions-tool/main.c:245 | ||||
| #: src/extensions-tool/main.c:249 | ||||
| msgid "Enable extension" | ||||
| msgstr "Erweiterung aktivieren" | ||||
|  | ||||
| #: src/extensions-tool/main.c:246 | ||||
| #: src/extensions-tool/main.c:250 | ||||
| msgid "Disable extension" | ||||
| msgstr "Erweiterung deaktivieren" | ||||
|  | ||||
| #: src/extensions-tool/main.c:247 | ||||
| #: src/extensions-tool/main.c:251 | ||||
| msgid "Reset extension" | ||||
| msgstr "Erweiterung zurücksetzen" | ||||
|  | ||||
| #: src/extensions-tool/main.c:248 | ||||
| #: src/extensions-tool/main.c:252 | ||||
| msgid "Uninstall extension" | ||||
| msgstr "Erweiterung deinstallieren" | ||||
|  | ||||
| #: src/extensions-tool/main.c:249 | ||||
| #: src/extensions-tool/main.c:253 | ||||
| msgid "List extensions" | ||||
| msgstr "Erweiterungen auflisten" | ||||
|  | ||||
| #: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251 | ||||
| #: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255 | ||||
| msgid "Show extension info" | ||||
| msgstr "Erweiterungsinformationen anzeigen" | ||||
|  | ||||
| #: src/extensions-tool/main.c:252 | ||||
| #: src/extensions-tool/main.c:256 | ||||
| msgid "Open extension preferences" | ||||
| msgstr "Erweiterungseinstellungen öffnen" | ||||
|  | ||||
| #: src/extensions-tool/main.c:253 | ||||
| #: src/extensions-tool/main.c:257 | ||||
| msgid "Create extension" | ||||
| msgstr "Erweiterung erstellen" | ||||
|  | ||||
| #: src/extensions-tool/main.c:254 | ||||
| #: src/extensions-tool/main.c:258 | ||||
| msgid "Package extension" | ||||
| msgstr "Paket-Erweiterung" | ||||
|  | ||||
| #: src/extensions-tool/main.c:255 | ||||
| #: src/extensions-tool/main.c:259 | ||||
| msgid "Install extension bundle" | ||||
| msgstr "Erweiterungspaket installieren" | ||||
|  | ||||
| #: src/extensions-tool/main.c:257 | ||||
| #: src/extensions-tool/main.c:261 | ||||
| #, c-format | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgid "Use “%s” to get detailed help.\n" | ||||
| msgstr "Verwenden Sie »%s«, um detaillierte Hilfe zu erhalten.\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "Der durch GDM im Anmeldefenster verwendete Modus" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "" | ||||
| "Verwenden Sie einen spezifischen Modus wie z.B. »gdm« für den " | ||||
| "Anmeldebildschirm" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Die möglichen Modi auflisten" | ||||
|  | ||||
|   | ||||
							
								
								
									
										113
									
								
								po/es.po
									
									
									
									
									
								
							
							
						
						
									
										113
									
								
								po/es.po
									
									
									
									
									
								
							| @@ -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-22 13:06+0000\n" | ||||
| "PO-Revision-Date: 2019-08-26 12:25+0200\n" | ||||
| "POT-Creation-Date: 2019-09-11 17:13+0000\n" | ||||
| "PO-Revision-Date: 2019-09-13 08:26+0200\n" | ||||
| "Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n" | ||||
| "Language-Team: Spanish - Spain <gnome-es-list@gnome.org>\n" | ||||
| "Language: es_ES\n" | ||||
| @@ -465,7 +465,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -768,28 +768,32 @@ msgstr "Frecuentes" | ||||
| msgid "All" | ||||
| msgstr "Todas" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "Renombrar" | ||||
|  | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Ventanas abiertas" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Ventana nueva" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Lanzar usando la tarjeta gráfica dedicada" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Quitar de los favoritos" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Añadir a los favoritos" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Mostrar detalles" | ||||
|  | ||||
| @@ -819,7 +823,7 @@ msgstr "Auriculares" | ||||
| msgid "Headset" | ||||
| msgstr "Manos libres" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Micrófono" | ||||
|  | ||||
| @@ -1319,13 +1323,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Hay otros usuarios con la sesión iniciada." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (remoto)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (consola)" | ||||
| @@ -1480,7 +1484,7 @@ msgstr "Ver fuente" | ||||
| msgid "Web Page" | ||||
| msgstr "Página web" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Información del sistema" | ||||
|  | ||||
| @@ -1609,7 +1613,7 @@ msgid_plural "%d new notifications" | ||||
| msgstr[0] "%d notificación nueva" | ||||
| msgstr[1] "%d notificaciones nuevas" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Bloquear" | ||||
|  | ||||
| @@ -1632,15 +1636,15 @@ msgstr "No se pudo bloquear" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Una aplicación impidió el bloqueo" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "Buscando…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "No se encontraron resultados." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -2125,27 +2129,27 @@ msgstr "Apagar" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "Modo avión activado" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Cambiar de usuario" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Cerrar la sesión" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Configuración de la cuenta" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Bloqueo de orientación" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Suspender" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Apagar" | ||||
|  | ||||
| @@ -2184,11 +2188,11 @@ msgstr "Error de autorización de Thunderbolt" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "No se pudo autorizar el dispositivo Thunderbolt: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "Volumen modificado" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Volumen" | ||||
|  | ||||
| @@ -2241,22 +2245,22 @@ msgstr "Buscar" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "«%s» está preparado" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "¿Quiere mantener esta configuración de la pantalla?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Revertir configuración" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Mantener cambios" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2265,7 +2269,7 @@ msgstr[1] "La configuración se revertirá en %d segundos" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2450,12 +2454,10 @@ msgid "EXTENSION_BUNDLE" | ||||
| msgstr "EXTENSION_BUNDLE" | ||||
|  | ||||
| #: src/extensions-tool/command-install.c:184 | ||||
| #| msgid "UUIDs of extensions to enable" | ||||
| msgid "Install an extension bundle" | ||||
| msgstr "Instalar un conjunto de extensiones" | ||||
|  | ||||
| #: src/extensions-tool/command-install.c:201 | ||||
| #| msgid "No extensions installed" | ||||
| msgid "No extension bundle specified" | ||||
| msgstr "No se ha especificado un conjunto de extensiones" | ||||
|  | ||||
| @@ -2580,7 +2582,7 @@ msgstr "Estado" | ||||
| msgid "“version” takes no arguments" | ||||
| msgstr "«version» no lleva argumentos" | ||||
|  | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:239 | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:243 | ||||
| msgid "Usage:" | ||||
| msgstr "Uso:" | ||||
|  | ||||
| @@ -2588,84 +2590,83 @@ msgstr "Uso:" | ||||
| msgid "Print version information and exit." | ||||
| msgstr "Mostrar información de la versión y salir." | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244 | ||||
| msgid "COMMAND" | ||||
| msgstr "COMANDO" | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:244 | ||||
| msgid "[ARGS…]" | ||||
| msgstr "[ARGS…]" | ||||
|  | ||||
| #: src/extensions-tool/main.c:242 | ||||
| #: src/extensions-tool/main.c:246 | ||||
| msgid "Commands:" | ||||
| msgstr "Comandos:" | ||||
|  | ||||
| #: src/extensions-tool/main.c:243 | ||||
| #: src/extensions-tool/main.c:247 | ||||
| msgid "Print help" | ||||
| msgstr "Mostrar ayuda" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:248 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Imprimir versión" | ||||
|  | ||||
| #: src/extensions-tool/main.c:245 | ||||
| #: src/extensions-tool/main.c:249 | ||||
| msgid "Enable extension" | ||||
| msgstr "Activar extensión" | ||||
|  | ||||
| #: src/extensions-tool/main.c:246 | ||||
| #: src/extensions-tool/main.c:250 | ||||
| msgid "Disable extension" | ||||
| msgstr "Desactivar extensión" | ||||
|  | ||||
| #: src/extensions-tool/main.c:247 | ||||
| #: src/extensions-tool/main.c:251 | ||||
| msgid "Reset extension" | ||||
| msgstr "Restablecer extensión" | ||||
|  | ||||
| #: src/extensions-tool/main.c:248 | ||||
| #: src/extensions-tool/main.c:252 | ||||
| msgid "Uninstall extension" | ||||
| msgstr "Desinstalar extensión" | ||||
|  | ||||
| #: src/extensions-tool/main.c:249 | ||||
| #: src/extensions-tool/main.c:253 | ||||
| msgid "List extensions" | ||||
| msgstr "Listar extensiones" | ||||
|  | ||||
| #: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251 | ||||
| #: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255 | ||||
| msgid "Show extension info" | ||||
| msgstr "Mostrar información de la extensión" | ||||
|  | ||||
| #: src/extensions-tool/main.c:252 | ||||
| #: src/extensions-tool/main.c:256 | ||||
| msgid "Open extension preferences" | ||||
| msgstr "Abrir las preferencias de la extensión" | ||||
|  | ||||
| #: src/extensions-tool/main.c:253 | ||||
| #: src/extensions-tool/main.c:257 | ||||
| msgid "Create extension" | ||||
| msgstr "Crear extensión" | ||||
|  | ||||
| #: src/extensions-tool/main.c:254 | ||||
| #| msgid "Extension" | ||||
| #: src/extensions-tool/main.c:258 | ||||
| msgid "Package extension" | ||||
| msgstr "Extensión del paquete" | ||||
|  | ||||
| #: src/extensions-tool/main.c:255 | ||||
| #| msgid "UUIDs of extensions to enable" | ||||
| #: src/extensions-tool/main.c:259 | ||||
| msgid "Install extension bundle" | ||||
| msgstr "Instalar conjunto de extensiones" | ||||
|  | ||||
| #: src/extensions-tool/main.c:257 | ||||
| #: src/extensions-tool/main.c:261 | ||||
| #, c-format | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgstr "Use %s para obtener ayuda detallada.\n" | ||||
| #| msgid "Use %s to get detailed help.\n" | ||||
| msgid "Use “%s” to get detailed help.\n" | ||||
| msgstr "Use «%s» para obtener ayuda detallada.\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "Modo usado por GDM para la pantalla de inicio" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "" | ||||
| "Usar un modo específico, por ejemplo, «gdm» para la pantalla de inicio de " | ||||
| "sesión" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Listar los modos posibles" | ||||
|  | ||||
|   | ||||
							
								
								
									
										106
									
								
								po/fa.po
									
									
									
									
									
								
							
							
						
						
									
										106
									
								
								po/fa.po
									
									
									
									
									
								
							| @@ -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-08-22 16:40+0430\n" | ||||
| "POT-Creation-Date: 2019-09-11 17:13+0000\n" | ||||
| "PO-Revision-Date: 2019-09-12 12:26+0000\n" | ||||
| "Last-Translator: Danial Behzadi <dani.behzi@ubuntu.com>\n" | ||||
| "Language-Team: Persian <>\n" | ||||
| "Language: fa\n" | ||||
| @@ -430,7 +430,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -733,28 +733,32 @@ msgstr "پُراستفاده" | ||||
| msgid "All" | ||||
| msgstr "همه" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "تغییر نام" | ||||
|  | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "گشودن پنجرهها" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "پنجرهٔ جدید" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "اجرا با کارت گرافیک اختصاصی" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "حذف از مورد پسندها" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "اضافه کردن به مورد پسندها" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "نمایش جزئیات" | ||||
|  | ||||
| @@ -784,7 +788,7 @@ msgstr "هدفونها" | ||||
| msgid "Headset" | ||||
| msgstr "هدست" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "میکروفون" | ||||
|  | ||||
| @@ -1277,13 +1281,13 @@ msgid "Other users are logged in." | ||||
| msgstr "کاربران دیگر وارد سامانه هستند." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (دوردست)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (پایانه)" | ||||
| @@ -1434,7 +1438,7 @@ msgstr "نمایش منبع" | ||||
| msgid "Web Page" | ||||
| msgstr "صفحهٔ وب" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "اطلاعات سامانه" | ||||
|  | ||||
| @@ -1563,7 +1567,7 @@ msgid_plural "%d new notifications" | ||||
| msgstr[0] "%Id آگاهی جدید" | ||||
| msgstr[1] "%Id آگاهی جدید" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "قفل کردن" | ||||
|  | ||||
| @@ -1586,15 +1590,15 @@ msgstr "نمیتوان قفل کرد" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "قفل توسط یک برنامه مسدود شده بود" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "درحال حستجو…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "بدون نتیجه." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -2076,27 +2080,27 @@ msgstr "خاموش کردن" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "حالت هواپیمایی روشن است" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "تعویض کاربر" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "خروج" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "تنظیمات حساب" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "قفل جهت" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "تعلیق" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "خاموش کردن" | ||||
|  | ||||
| @@ -2133,11 +2137,11 @@ msgstr "خطای تأیید هویت تاندربولت" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "نمیتوان افزارهٔ تاندربولت را تأیید هویت کرد: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "بلندی صدا تغییر کرد" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "بلندی صدا" | ||||
|  | ||||
| @@ -2190,22 +2194,22 @@ msgstr "جستجو" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "«%s» آماده است" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| 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:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "بازنشانی تنظیمات" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "ذخیره تغییرات" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2214,7 +2218,7 @@ msgstr[1] "تغییرات تنظیمات در %Id ثانیه بازنشانی م | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%Id × %Id" | ||||
| @@ -2518,7 +2522,7 @@ msgstr "وضعیت" | ||||
| msgid "“version” takes no arguments" | ||||
| msgstr "«نگارش» آرگومانی نمیگیرد" | ||||
|  | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:239 | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:243 | ||||
| msgid "Usage:" | ||||
| msgstr "استفاده:" | ||||
|  | ||||
| @@ -2526,80 +2530,80 @@ msgstr "استفاده:" | ||||
| msgid "Print version information and exit." | ||||
| msgstr "چاپ اطّلاعات نگارش و خروج." | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244 | ||||
| msgid "COMMAND" | ||||
| msgstr "COMMAND" | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:244 | ||||
| msgid "[ARGS…]" | ||||
| msgstr "[ARGS…]" | ||||
|  | ||||
| #: src/extensions-tool/main.c:242 | ||||
| #: src/extensions-tool/main.c:246 | ||||
| msgid "Commands:" | ||||
| msgstr "دستورات:" | ||||
|  | ||||
| #: src/extensions-tool/main.c:243 | ||||
| #: src/extensions-tool/main.c:247 | ||||
| msgid "Print help" | ||||
| msgstr "چاپ راهنما" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:248 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "چاپ نسخه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:245 | ||||
| #: src/extensions-tool/main.c:249 | ||||
| msgid "Enable extension" | ||||
| msgstr "فعّال کردن افزونه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:246 | ||||
| #: src/extensions-tool/main.c:250 | ||||
| msgid "Disable extension" | ||||
| msgstr "غیرفعّال کردن افزونه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:247 | ||||
| #: src/extensions-tool/main.c:251 | ||||
| msgid "Reset extension" | ||||
| msgstr "بازنشانی افزونه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:248 | ||||
| #: src/extensions-tool/main.c:252 | ||||
| msgid "Uninstall extension" | ||||
| msgstr "حذف نصب افزونه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:249 | ||||
| #: src/extensions-tool/main.c:253 | ||||
| msgid "List extensions" | ||||
| msgstr "فهرست افزونهها" | ||||
|  | ||||
| #: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251 | ||||
| #: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255 | ||||
| msgid "Show extension info" | ||||
| msgstr "نمایش اطّلاعات افزونه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:252 | ||||
| #: src/extensions-tool/main.c:256 | ||||
| msgid "Open extension preferences" | ||||
| msgstr "گشودن ترجیحات افزونه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:253 | ||||
| #: src/extensions-tool/main.c:257 | ||||
| msgid "Create extension" | ||||
| msgstr "ایجاد افزونه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:254 | ||||
| #: src/extensions-tool/main.c:258 | ||||
| msgid "Package extension" | ||||
| msgstr "بستهبندی افزونه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:255 | ||||
| #: src/extensions-tool/main.c:259 | ||||
| msgid "Install extension bundle" | ||||
| msgstr "نصب دستهٔ افزونه" | ||||
|  | ||||
| #: src/extensions-tool/main.c:257 | ||||
| #: src/extensions-tool/main.c:261 | ||||
| #, c-format | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgid "Use “%s” to get detailed help.\n" | ||||
| msgstr "برای گرفتن راهنمای با جزییات از %s استفاده کنید.\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "حالت استفاده شده توسط GDM برای صفحه ورود به سامانه" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "استفاده از یک حالت مشخص، مثلاً gdm برای صفحهٔ ورود" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "فهرست کردن حالتهای ممکن" | ||||
|  | ||||
|   | ||||
							
								
								
									
										74
									
								
								po/fi.po
									
									
									
									
									
								
							
							
						
						
									
										74
									
								
								po/fi.po
									
									
									
									
									
								
							| @@ -25,8 +25,8 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: gnome-shell\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-08-22 19:36+0300\n" | ||||
| "POT-Creation-Date: 2019-09-09 20:24+0000\n" | ||||
| "PO-Revision-Date: 2019-09-10 14:10+0300\n" | ||||
| "Last-Translator: Jiri Grönroos <jiri.gronroos+l10n@iki.fi>\n" | ||||
| "Language-Team: suomi <lokalisointi-lista@googlegroups.com>\n" | ||||
| "Language: fi\n" | ||||
| @@ -34,7 +34,7 @@ msgstr "" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=2; plural=(n != 1);\n" | ||||
| "X-Generator: Poedit 2.0.6\n" | ||||
| "X-Generator: Poedit 2.2.3\n" | ||||
| "X-DamnedLies-Scope: partial\n" | ||||
| "X-Project-Style: gnome\n" | ||||
| "X-POT-Import-Date: 2012-03-05 15:06:10+0000\n" | ||||
| @@ -486,7 +486,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -789,28 +789,32 @@ msgstr "Käytetyimmät" | ||||
| msgid "All" | ||||
| msgstr "Kaikki" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "Nimeä uudelleen" | ||||
|  | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Avoimet ikkunat" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Uusi ikkuna" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Käynnistä erillisnäytönohjainta käyttäen" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Poista suosikeista" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Lisää suosikkeihin" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Näytä tiedot" | ||||
|  | ||||
| @@ -840,7 +844,7 @@ msgstr "Kuulokkeet" | ||||
| msgid "Headset" | ||||
| msgstr "Headset-kuulokkeet" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Mikrofoni" | ||||
|  | ||||
| @@ -1341,13 +1345,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Muita käyttäjiä on kirjautuneena." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (etä)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (konsoli)" | ||||
| @@ -1502,7 +1506,7 @@ msgstr "Näytä lähde" | ||||
| msgid "Web Page" | ||||
| msgstr "Verkkosivusto" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Järjestelmän tiedot" | ||||
|  | ||||
| @@ -1633,7 +1637,7 @@ msgid_plural "%d new notifications" | ||||
| msgstr[0] "%d uusi ilmoitus" | ||||
| msgstr[1] "%d uutta ilmoitusta" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Lukitse" | ||||
|  | ||||
| @@ -1656,15 +1660,15 @@ msgstr "Lukitus epäonnistui" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Lukitus estettiin sovelluksen toimesta" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "Etsitään…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "Ei tuloksia." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -2147,27 +2151,27 @@ msgstr "Sammuta" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "Lentokonetila on päällä" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Vaihda käyttäjää" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Kirjaudu ulos" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Tilin asetukset" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Kiertolukitus" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Valmiustila" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Sammuta" | ||||
|  | ||||
| @@ -2205,11 +2209,11 @@ msgstr "Thunderbolt-valtuutusvirhe" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "Thunderbolt-laitetta ei voitu valtuuttaa: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "Äänenvoimakkuutta muutettu" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Äänenvoimakkuus" | ||||
|  | ||||
| @@ -2262,22 +2266,22 @@ msgstr "Haku" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "“%s” on valmis" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "Haluatko säilyttää nämä näyttöasetukset?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Palauta asetukset" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Säilytä muutokset" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2286,7 +2290,7 @@ msgstr[1] "Asetusmuutokset palautetaan %d sekunnissa" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2623,7 +2627,7 @@ msgstr "Komennot:" | ||||
| msgid "Print help" | ||||
| msgstr "Tulosta ohje" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:244 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Tulosta versio" | ||||
|  | ||||
| @@ -2674,15 +2678,15 @@ msgstr "Asenna laajennuspaketti" | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgstr "Suorita %s nähdäksesi yksityiskohtaisia ohjeita.\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "GDM:n kirjautumisruudussa käyttämä tila" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "Käytä tiettyä tilaa (esim. “gdm”) kirjautumisnäkymää varten" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Listaa mahdolliset tilat" | ||||
|  | ||||
|   | ||||
							
								
								
									
										72
									
								
								po/gl.po
									
									
									
									
									
								
							
							
						
						
									
										72
									
								
								po/gl.po
									
									
									
									
									
								
							| @@ -11,8 +11,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-25 16:47+0000\n" | ||||
| "PO-Revision-Date: 2019-08-26 17:22+0200\n" | ||||
| "POT-Creation-Date: 2019-09-09 20:24+0000\n" | ||||
| "PO-Revision-Date: 2019-09-10 00:45+0200\n" | ||||
| "Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n" | ||||
| "Language-Team: Galician\n" | ||||
| "Language: gl\n" | ||||
| @@ -460,7 +460,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -764,28 +764,32 @@ msgstr "Frecuentes" | ||||
| msgid "All" | ||||
| msgstr "Todos" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "Renomear" | ||||
|  | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Abrir Xanelas" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Xanela nova" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Iniciar usando a Tarxeta Gráfica Adicada" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Retirar dos marcadores" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Engadir aos favoritos" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Mostrar detalles" | ||||
|  | ||||
| @@ -815,7 +819,7 @@ msgstr "Cascos auriculares" | ||||
| msgid "Headset" | ||||
| msgstr "Auriculares" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Micrófono" | ||||
|  | ||||
| @@ -1314,13 +1318,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Hai outros usuarios conectados." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (remoto)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (consola)" | ||||
| @@ -1475,7 +1479,7 @@ msgstr "Ver fonte" | ||||
| msgid "Web Page" | ||||
| msgstr "Páxina web" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Información do sistema" | ||||
|  | ||||
| @@ -1604,7 +1608,7 @@ msgid_plural "%d new notifications" | ||||
| msgstr[0] "%d notificación nova" | ||||
| msgstr[1] "%d notificacións novas" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Bloquear" | ||||
|  | ||||
| @@ -1627,15 +1631,15 @@ msgstr "Non foi posíbel bloquear" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Un aplicativo impediu o bloqueo" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "Buscando…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "Sen resultados." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -2120,27 +2124,27 @@ msgstr "Desactivar" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "Modo avión activado" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Cambiar de usuario" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Saír da sesión" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Preferencias da conta" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Bloqueo de orientación" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Suspender" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Apagar" | ||||
|  | ||||
| @@ -2179,11 +2183,11 @@ msgstr "Erro de autorización de Thunderbolt" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "Non foi posíbel autorizar o dispositivo Thunderbolt: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "Volume cambiado" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Volume" | ||||
|  | ||||
| @@ -2236,22 +2240,22 @@ msgstr "Buscar" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "«%s» está preparado" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "Desexa manter estas preferencias de pantalla?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Reverter preferencias" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Manter cambios" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2260,7 +2264,7 @@ msgstr[1] "Os cambios das preferencias revertiranse en %d segundos" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2598,7 +2602,7 @@ msgstr "Ordes:" | ||||
| msgid "Print help" | ||||
| msgstr "Imprime a axuda" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:244 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Imprimir versión" | ||||
|  | ||||
| @@ -2647,17 +2651,17 @@ msgstr "Instalar paquete de extensión" | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgstr "Use %s obter axuda detallada.\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "Modo usado por GDM para a pantalla de inicio" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "" | ||||
| "Usar un modo específico, por exemplo, «gdm» para a pantalla de inicio de " | ||||
| "sesión" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Listar os modos posíbeis" | ||||
|  | ||||
|   | ||||
							
								
								
									
										405
									
								
								po/id.po
									
									
									
									
									
								
							
							
						
						
									
										405
									
								
								po/id.po
									
									
									
									
									
								
							| @@ -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-12 19:40+0000\n" | ||||
| "PO-Revision-Date: 2019-08-16 15:37+0700\n" | ||||
| "POT-Creation-Date: 2019-09-11 17:13+0000\n" | ||||
| "PO-Revision-Date: 2019-09-12 01:30+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:208 | ||||
| #: js/extensionPrefs/main.js:211 | ||||
| msgid "Shell Extensions" | ||||
| msgstr "Ekstensi Shell" | ||||
|  | ||||
| @@ -403,11 +403,11 @@ msgstr "" | ||||
| msgid "Network Login" | ||||
| msgstr "Log Masuk Jaringan" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:101 js/extensionPrefs/main.js:531 | ||||
| #: js/extensionPrefs/main.js:104 js/extensionPrefs/main.js:534 | ||||
| msgid "Something’s gone wrong" | ||||
| msgstr "Ada yang tidak beres" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:108 | ||||
| #: js/extensionPrefs/main.js:111 | ||||
| msgid "" | ||||
| "We’re very sorry, but there’s been a problem: the settings for this " | ||||
| "extension can’t 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:115 | ||||
| #: js/extensionPrefs/main.js:118 | ||||
| msgid "Technical Details" | ||||
| msgstr "Detail Teknis" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:150 | ||||
| #: js/extensionPrefs/main.js:153 | ||||
| msgid "Copy Error" | ||||
| msgstr "Salin Galat" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:177 | ||||
| #: js/extensionPrefs/main.js:180 | ||||
| msgid "Homepage" | ||||
| msgstr "Halaman Web" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:178 | ||||
| #: js/extensionPrefs/main.js:181 | ||||
| msgid "Visit extension homepage" | ||||
| msgstr "Kunjungi halaman web ekstensi" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:473 | ||||
| #: js/extensionPrefs/main.js:476 | ||||
| msgid "No Extensions Installed" | ||||
| msgstr "Tak Ada Ekstensi Terpasang" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:483 | ||||
| #: js/extensionPrefs/main.js:486 | ||||
| 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:498 | ||||
| #: js/extensionPrefs/main.js:501 | ||||
| msgid "Browse in Software" | ||||
| msgstr "Ramban di Perangkat Lunak" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:538 | ||||
| #: js/extensionPrefs/main.js:541 | ||||
| msgid "" | ||||
| "We’re very sorry, but it was not possible to get the list of installed " | ||||
| "extensions. Make sure you are logged into GNOME and try again." | ||||
| @@ -459,7 +459,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -763,28 +763,32 @@ msgstr "Sering" | ||||
| msgid "All" | ||||
| msgstr "Semua" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "Ubah Nama" | ||||
|  | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Buka Jendela" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Jendela Baru" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Luncurkan menggunakan Kartu Grafis Terdedikasi" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Hapus dari Favorit" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Tambah ke Favorit" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Tampilkan Rincian" | ||||
|  | ||||
| @@ -814,7 +818,7 @@ msgstr "Headphone" | ||||
| msgid "Headset" | ||||
| msgstr "Headset" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Mikrofon" | ||||
|  | ||||
| @@ -1315,13 +1319,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Pengguna lain sedang log masuk." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (jarak jauh)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (konsol)" | ||||
| @@ -1474,7 +1478,7 @@ msgstr "Tilik Sumber" | ||||
| msgid "Web Page" | ||||
| msgstr "Halaman Web" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Informasi Sistem" | ||||
|  | ||||
| @@ -1603,7 +1607,7 @@ msgid_plural "%d new notifications" | ||||
| msgstr[0] "%d pemberitahuan baru" | ||||
| msgstr[1] "%d pemberitahuan baru" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Kunci" | ||||
|  | ||||
| @@ -1626,15 +1630,15 @@ msgstr "Tak bisa mengunci" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Kunci diblokir oleh suatu aplikasi" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "Mencari…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "Tak ada yang cocok." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -1780,7 +1784,7 @@ msgstr "Mati" | ||||
| msgid "On" | ||||
| msgstr "Hidup" | ||||
|  | ||||
| #: js/ui/status/brightness.js:37 | ||||
| #: js/ui/status/brightness.js:38 | ||||
| msgid "Brightness" | ||||
| msgstr "Kecerahan" | ||||
|  | ||||
| @@ -2117,27 +2121,27 @@ msgstr "Matikan" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "Mode Pesawat Terbang Aktif" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Ganti Pengguna" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Keluar" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Pengaturan Akun" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Kunci Orientasi" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Suspensi" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Matikan" | ||||
|  | ||||
| @@ -2176,11 +2180,11 @@ msgstr "Autorisasi Thunderbolt galat" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "Tidak dapat mengautorisasi perangkat Thunderbolt: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "Volume diubah" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Volume" | ||||
|  | ||||
| @@ -2233,22 +2237,22 @@ msgstr "Cari" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "“%s” siap" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "Apakah Anda ingin mempertahankan pengaturan tampilan ini?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Balikkan Tatanan" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Simpan Perubahan" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2257,7 +2261,7 @@ msgstr[1] "Perubahan tatanan akan dikembalikan dalam %d detik" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2330,19 +2334,328 @@ msgstr "Pindahkan ke Monitor Kanan" | ||||
| msgid "Evolution Calendar" | ||||
| msgstr "Evolution Kalender" | ||||
|  | ||||
| #: src/main.c:460 | ||||
| #: 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:243 | ||||
| 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:241 src/extensions-tool/main.c:244 | ||||
| msgid "COMMAND" | ||||
| msgstr "PERINTAH" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 | ||||
| msgid "[ARGS…]" | ||||
| msgstr "[ARG...]" | ||||
|  | ||||
| #: src/extensions-tool/main.c:246 | ||||
| msgid "Commands:" | ||||
| msgstr "Perintah:" | ||||
|  | ||||
| #: src/extensions-tool/main.c:247 | ||||
| msgid "Print help" | ||||
| msgstr "Cetak bantuan" | ||||
|  | ||||
| #: src/extensions-tool/main.c:248 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Versi Cetak" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/extensions-tool/main.c:249 | ||||
| msgid "Enable extension" | ||||
| msgstr "Aktifkan ekstensi" | ||||
|  | ||||
| #: src/extensions-tool/main.c:250 | ||||
| msgid "Disable extension" | ||||
| msgstr "Nonaktifkan ekstensi" | ||||
|  | ||||
| #: src/extensions-tool/main.c:251 | ||||
| msgid "Reset extension" | ||||
| msgstr "Atur ulang ekstensi" | ||||
|  | ||||
| #: src/extensions-tool/main.c:252 | ||||
| msgid "Uninstall extension" | ||||
| msgstr "Hapus ekstensi" | ||||
|  | ||||
| #: src/extensions-tool/main.c:253 | ||||
| msgid "List extensions" | ||||
| msgstr "Daftar ekstensi" | ||||
|  | ||||
| #: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255 | ||||
| msgid "Show extension info" | ||||
| msgstr "Tampilkan info ekstensi" | ||||
|  | ||||
| #: src/extensions-tool/main.c:256 | ||||
| msgid "Open extension preferences" | ||||
| msgstr "Buka preferensi ekstensi" | ||||
|  | ||||
| #: src/extensions-tool/main.c:257 | ||||
| msgid "Create extension" | ||||
| msgstr "Buat ekstensi" | ||||
|  | ||||
| #: src/extensions-tool/main.c:258 | ||||
| msgid "Package extension" | ||||
| msgstr "Ekstensi Paket" | ||||
|  | ||||
| #: src/extensions-tool/main.c:259 | ||||
| msgid "Install extension bundle" | ||||
| msgstr "Pasang bundel ekstensi" | ||||
|  | ||||
| #: src/extensions-tool/main.c:261 | ||||
| #, c-format | ||||
| msgid "Use “%s” to get detailed help.\n" | ||||
| msgstr "Gunakan \"%s\" untuk mendapatkan bantuan terperinci.\n" | ||||
|  | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "Mode yang dipakai oleh layar log masuk GDM" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "Menggunakan mode tertentu, mis. \"gdm\" untuk layar masuk" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Menampilkan mode yang mungkin" | ||||
|  | ||||
|   | ||||
							
								
								
									
										41
									
								
								po/ja.po
									
									
									
									
									
								
							
							
						
						
									
										41
									
								
								po/ja.po
									
									
									
									
									
								
							| @@ -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-08-27 11:26+0000\n" | ||||
| "PO-Revision-Date: 2019-08-29 20:44+0900\n" | ||||
| "POT-Creation-Date: 2019-09-05 13:45+0000\n" | ||||
| "PO-Revision-Date: 2019-09-06 21:10+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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 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:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "マイク" | ||||
|  | ||||
| @@ -1037,8 +1037,7 @@ 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" | ||||
| @@ -1293,13 +1292,13 @@ msgid "Other users are logged in." | ||||
| msgstr "他のユーザーがログインしています。" | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (リモート)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (コンソール)" | ||||
| @@ -1649,8 +1648,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" | ||||
| @@ -2146,11 +2145,11 @@ msgstr "Thunderbolt 認証エラー" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "Thunderbolt デバイスを認証できませんでした: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "音量変更しました" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "音量" | ||||
|  | ||||
| @@ -2203,22 +2202,22 @@ msgstr "検索" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "”%s”は準備完了です" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| 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:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "設定を元に戻す" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "変更を保存" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2226,7 +2225,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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2556,7 +2555,7 @@ msgstr "コマンド:" | ||||
| msgid "Print help" | ||||
| msgstr "ヘルプを表示する" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:244 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "バージョンを表示する" | ||||
|  | ||||
| @@ -2605,15 +2604,15 @@ msgstr "" | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgstr "%s を使用すると詳細なヘルプが表示されます。\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "ログイン画面で GDM が使用するモード" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "指定したモードを使用する (例: ログイン画面用の“gdm”)" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "使用可能なモードを一覧表示する" | ||||
|  | ||||
|   | ||||
							
								
								
									
										426
									
								
								po/lt.po
									
									
									
									
									
								
							
							
						
						
									
										426
									
								
								po/lt.po
									
									
									
									
									
								
							| @@ -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-09 14:45+0000\n" | ||||
| "PO-Revision-Date: 2019-08-18 22:05+0300\n" | ||||
| "POT-Creation-Date: 2019-09-11 17:13+0000\n" | ||||
| "PO-Revision-Date: 2019-09-11 22:37+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:208 | ||||
| #: js/extensionPrefs/main.js:211 | ||||
| msgid "Shell Extensions" | ||||
| msgstr "Shell plėtiniai" | ||||
|  | ||||
| @@ -95,16 +95,10 @@ 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 " | ||||
| @@ -347,7 +341,6 @@ msgstr "" | ||||
| "srities. Priešingu atveju įtraukiami visi langai." | ||||
|  | ||||
| #: data/org.gnome.shell.gschema.xml.in:234 | ||||
| #| msgid "Location In Use" | ||||
| msgid "Locations" | ||||
| msgstr "Vietos" | ||||
|  | ||||
| @@ -364,7 +357,6 @@ 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" | ||||
|  | ||||
| @@ -405,11 +397,11 @@ msgstr "Atidėti fokuso pakeitimus pelei iki žymiklis nustos judėti" | ||||
| msgid "Network Login" | ||||
| msgstr "Tinklo prisijungimas" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:101 js/extensionPrefs/main.js:531 | ||||
| #: js/extensionPrefs/main.js:104 js/extensionPrefs/main.js:534 | ||||
| msgid "Something’s gone wrong" | ||||
| msgstr "Atsitiko kažkas negero" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:108 | ||||
| #: js/extensionPrefs/main.js:111 | ||||
| msgid "" | ||||
| "We’re very sorry, but there’s been a problem: the settings for this " | ||||
| "extension can’t be displayed. We recommend that you report the issue to the " | ||||
| @@ -418,27 +410,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:115 | ||||
| #: js/extensionPrefs/main.js:118 | ||||
| msgid "Technical Details" | ||||
| msgstr "Techninė informacija" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:150 | ||||
| #: js/extensionPrefs/main.js:153 | ||||
| msgid "Copy Error" | ||||
| msgstr "Kopijuoti klaidą" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:177 | ||||
| #: js/extensionPrefs/main.js:180 | ||||
| msgid "Homepage" | ||||
| msgstr "Namų tinklalapis" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:178 | ||||
| #: js/extensionPrefs/main.js:181 | ||||
| msgid "Visit extension homepage" | ||||
| msgstr "Aplankyti plėtinio namų tinklalapį" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:473 | ||||
| #: js/extensionPrefs/main.js:476 | ||||
| msgid "No Extensions Installed" | ||||
| msgstr "Nėra įdiegtų plėtinių" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:483 | ||||
| #: js/extensionPrefs/main.js:486 | ||||
| msgid "" | ||||
| "Extensions can be installed through Software or <a href=\"https://extensions." | ||||
| "gnome.org\">extensions.gnome.org</a>." | ||||
| @@ -446,11 +438,11 @@ msgstr "" | ||||
| "Plėtinius galima įdiegti per Programinę įrangą arba <a href=\"https://" | ||||
| "extensions.gnome.org\">extensions.gnome.org</a>." | ||||
|  | ||||
| #: js/extensionPrefs/main.js:498 | ||||
| #: js/extensionPrefs/main.js:501 | ||||
| msgid "Browse in Software" | ||||
| msgstr "Naršyti Programinėje įrangoje" | ||||
|  | ||||
| #: js/extensionPrefs/main.js:538 | ||||
| #: js/extensionPrefs/main.js:541 | ||||
| msgid "" | ||||
| "We’re very sorry, but it was not possible to get the list of installed " | ||||
| "extensions. Make sure you are logged into GNOME and try again." | ||||
| @@ -460,7 +452,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -553,7 +545,6 @@ 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;" | ||||
|  | ||||
| @@ -770,29 +761,33 @@ msgstr "Dažnai naudojamos" | ||||
| msgid "All" | ||||
| msgstr "Visos" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| #| msgid "Username: " | ||||
| msgid "Rename" | ||||
| msgstr "Pervadinti" | ||||
|  | ||||
| #. Translators: This is the heading of a list of open windows | ||||
| #: js/ui/appDisplay.js:2224 js/ui/panel.js:77 | ||||
| #| msgid "Windows" | ||||
| #: js/ui/appDisplay.js:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Atverti langai" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2243 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Naujas langas" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2255 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Paleisti naudojant dedikuotą grafikos kortą" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2284 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Pašalinti iš mėgstamų" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2290 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Pridėti prie mėgstamų" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2300 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Rodyti detalią informaciją" | ||||
|  | ||||
| @@ -822,7 +817,7 @@ msgstr "Ausinės" | ||||
| msgid "Headset" | ||||
| msgstr "Ausinės su mikrofonu" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Mikrofonas" | ||||
|  | ||||
| @@ -992,7 +987,6 @@ 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" | ||||
|  | ||||
| @@ -1328,13 +1322,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Yra prisijungusių kitų naudotojų" | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (nutolęs)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (komandų eilutė)" | ||||
| @@ -1487,7 +1481,7 @@ msgstr "Žiūrėti šaltinį" | ||||
| msgid "Web Page" | ||||
| msgstr "Tinklalapis" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Sistemos informacija" | ||||
|  | ||||
| @@ -1618,7 +1612,7 @@ msgstr[0] "%d naujas pranešimas" | ||||
| msgstr[1] "%d nauji pranešimai" | ||||
| msgstr[2] "%d naujų pranešimų" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Užrakinti" | ||||
|  | ||||
| @@ -1641,15 +1635,15 @@ msgstr "Nepavyksta užrakinti" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Programa užblokavo užrakinimą" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "Ieškoma…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "Nerasta atitikmenų." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -1674,7 +1668,6 @@ msgid "Hide Text" | ||||
| msgstr "Slėpti tekstą" | ||||
|  | ||||
| #: js/ui/shellMountOperation.js:304 | ||||
| #| msgid "Volume" | ||||
| msgid "Hidden Volume" | ||||
| msgstr "Paslėptas garsumas" | ||||
|  | ||||
| @@ -1683,7 +1676,6 @@ msgid "Windows System Volume" | ||||
| msgstr "Windows sisteminis tomas" | ||||
|  | ||||
| #: js/ui/shellMountOperation.js:310 | ||||
| #| msgid "Mouse Keys" | ||||
| msgid "Uses Keyfiles" | ||||
| msgstr "Naudoja raktų failus" | ||||
|  | ||||
| @@ -1715,14 +1707,12 @@ 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" | ||||
|  | ||||
| @@ -1801,7 +1791,7 @@ msgstr "Išjungta" | ||||
| msgid "On" | ||||
| msgstr "Įjungta" | ||||
|  | ||||
| #: js/ui/status/brightness.js:37 | ||||
| #: js/ui/status/brightness.js:38 | ||||
| msgid "Brightness" | ||||
| msgstr "Ryškumas" | ||||
|  | ||||
| @@ -2141,27 +2131,27 @@ msgstr "Išjungti" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "Skrydžio veiksena įjungta" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Keisti naudotoją" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Atsijungti" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Paskyros nustatymai" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Padėties užrakinimas" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Pristabdyti" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Išjungti" | ||||
|  | ||||
| @@ -2199,11 +2189,11 @@ msgstr "Thunderbolt autorizacijos klaida" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "Nepavyko autorizuoti Thunderbolt įrenginio: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "Garsumas pakeistas" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Garsumas" | ||||
|  | ||||
| @@ -2256,22 +2246,22 @@ msgstr "Ieškoti" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "„%s“ yra pasirengusi" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "Ar norite įrašyti šiuos vaizduoklio nustatymus?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Grąžinti nustatymus" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Įrašyti pakeitimus" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2281,7 +2271,7 @@ msgstr[2] "Pakeitimai bus grąžinti po %d sekundžių" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2354,19 +2344,328 @@ msgstr "Perkelti į dešiniau esantį monitorių" | ||||
| msgid "Evolution Calendar" | ||||
| msgstr "Evolution kalendorius" | ||||
|  | ||||
| #: src/main.c:464 | ||||
| #: 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 "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 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 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 "Enable an extension" | ||||
| msgstr "Išjungti plėtinį" | ||||
|  | ||||
| #: src/extensions-tool/command-info.c:79 | ||||
| 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 "Install an extension bundle" | ||||
| msgstr "Įdiegti plėtinio ryšulį" | ||||
|  | ||||
| #: src/extensions-tool/command-install.c:201 | ||||
| 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 "Show user-installed extensions" | ||||
| msgstr "Rodyti naudotojo įdiegtus plėtinius" | ||||
|  | ||||
| #: src/extensions-tool/command-list.c:121 | ||||
| msgid "Show system-installed extensions" | ||||
| msgstr "Rodyti sistemoje įdiegtus plėtinius" | ||||
|  | ||||
| #: src/extensions-tool/command-list.c:124 | ||||
| msgid "Show enabled extensions" | ||||
| msgstr "Rodyti įjungtus plėtinius" | ||||
|  | ||||
| #: src/extensions-tool/command-list.c:127 | ||||
| msgid "Show disabled extensions" | ||||
| msgstr "Rodyti išjungtus plėtinius" | ||||
|  | ||||
| #: src/extensions-tool/command-list.c:130 | ||||
| msgid "Show extensions with preferences" | ||||
| msgstr "Rodyti plėtinius su nuostatomis" | ||||
|  | ||||
| #: src/extensions-tool/command-list.c:133 | ||||
| msgid "Print extension details" | ||||
| msgstr "Atspausdinti plėtinio informaciją" | ||||
|  | ||||
| #: src/extensions-tool/command-list.c:141 | ||||
| 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 "Opens extension preferences" | ||||
| msgstr "Atveria plėtinio nuostatas" | ||||
|  | ||||
| #: src/extensions-tool/command-reset.c:57 | ||||
| msgid "Reset an extension" | ||||
| msgstr "Atstatyti plėtinį" | ||||
|  | ||||
| #: src/extensions-tool/command-uninstall.c:72 | ||||
| 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 "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:243 | ||||
| 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:241 src/extensions-tool/main.c:244 | ||||
| msgid "COMMAND" | ||||
| msgstr "KOMANDA" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 | ||||
| msgid "[ARGS…]" | ||||
| msgstr "[ARG…]" | ||||
|  | ||||
| #: src/extensions-tool/main.c:246 | ||||
| msgid "Commands:" | ||||
| msgstr "Komandos:" | ||||
|  | ||||
| #: src/extensions-tool/main.c:247 | ||||
| msgid "Print help" | ||||
| msgstr "Atspausdinti žinyną" | ||||
|  | ||||
| #: src/extensions-tool/main.c:248 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Išvesti versijos numerį" | ||||
|  | ||||
| #: src/main.c:470 | ||||
| #: src/extensions-tool/main.c:249 | ||||
| msgid "Enable extension" | ||||
| msgstr "Įjungti ]plėtinį" | ||||
|  | ||||
| #: src/extensions-tool/main.c:250 | ||||
| msgid "Disable extension" | ||||
| msgstr "Išjungti plėtinį" | ||||
|  | ||||
| #: src/extensions-tool/main.c:251 | ||||
| msgid "Reset extension" | ||||
| msgstr "Atstatyti plėtinį" | ||||
|  | ||||
| #: src/extensions-tool/main.c:252 | ||||
| msgid "Uninstall extension" | ||||
| msgstr "Išdiegti plėtinį" | ||||
|  | ||||
| #: src/extensions-tool/main.c:253 | ||||
| msgid "List extensions" | ||||
| msgstr "Išvardinti plėtinius" | ||||
|  | ||||
| #: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255 | ||||
| msgid "Show extension info" | ||||
| msgstr "Rodyti plėtinio informaciją" | ||||
|  | ||||
| #: src/extensions-tool/main.c:256 | ||||
| msgid "Open extension preferences" | ||||
| msgstr "Atverti plėtinio nuostatas" | ||||
|  | ||||
| #: src/extensions-tool/main.c:257 | ||||
| msgid "Create extension" | ||||
| msgstr "Sukurti plėtinį" | ||||
|  | ||||
| #: src/extensions-tool/main.c:258 | ||||
| msgid "Package extension" | ||||
| msgstr "Supakuoti plėtinį" | ||||
|  | ||||
| #: src/extensions-tool/main.c:259 | ||||
| msgid "Install extension bundle" | ||||
| msgstr "Įdiegti plėtinio ryšulį" | ||||
|  | ||||
| #: src/extensions-tool/main.c:261 | ||||
| #, c-format | ||||
| #| msgid "Use %s to get detailed help.\n" | ||||
| msgid "Use “%s” to get detailed help.\n" | ||||
| msgstr "Detalesnį žinyną gausite panaudoję „%s“.\n" | ||||
|  | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "Veiksena, naudojama GDM prisijungimo ekrane" | ||||
|  | ||||
| #: src/main.c:476 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "Naudoti konkrečią veikseną, pvz., „gdm“ prisijungimo ekranui" | ||||
|  | ||||
| #: src/main.c:482 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Išvardinti galimas veiksenas" | ||||
|  | ||||
| @@ -2388,7 +2687,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:348 | ||||
| #: src/shell-polkit-authentication-agent.c:344 | ||||
| msgid "Authentication dialog was dismissed by the user" | ||||
| msgstr "Naudotojas užvėrė tapatybės patvirtinimo dialogą" | ||||
|  | ||||
| @@ -2486,9 +2785,6 @@ 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" | ||||
|  | ||||
|   | ||||
							
								
								
									
										108
									
								
								po/pl.po
									
									
									
									
									
								
							
							
						
						
									
										108
									
								
								po/pl.po
									
									
									
									
									
								
							| @@ -10,8 +10,8 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: gnome-shell\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-08-23 18:39+0200\n" | ||||
| "POT-Creation-Date: 2019-09-11 17:13+0000\n" | ||||
| "PO-Revision-Date: 2019-09-11 19:21+0200\n" | ||||
| "Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n" | ||||
| "Language-Team: Polish <community-poland@mozilla.org>\n" | ||||
| "Language: pl\n" | ||||
| @@ -458,7 +458,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -774,28 +774,32 @@ msgstr "Często używane" | ||||
| msgid "All" | ||||
| msgstr "Wszystkie" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "Zmień nazwę" | ||||
|  | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Otwarte okna" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Nowe okno" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Uruchom za pomocą dedykowanej karty graficznej" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Usuń z ulubionych" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Dodaj do ulubionych" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Wyświetl szczegóły" | ||||
|  | ||||
| @@ -825,7 +829,7 @@ msgstr "Słuchawki" | ||||
| msgid "Headset" | ||||
| msgstr "Słuchawki z mikrofonem" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Mikrofon" | ||||
|  | ||||
| @@ -1330,13 +1334,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Inni użytkownicy są zalogowani." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (zdalnie)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (konsola)" | ||||
| @@ -1490,7 +1494,7 @@ msgstr "Wyświetl źródło" | ||||
| msgid "Web Page" | ||||
| msgstr "Strona WWW" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Informacje systemowe" | ||||
|  | ||||
| @@ -1621,7 +1625,7 @@ msgstr[0] "%d nowe powiadomienie" | ||||
| msgstr[1] "%d nowe powiadomienia" | ||||
| msgstr[2] "%d nowych powiadomień" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Zablokuj ekran" | ||||
|  | ||||
| @@ -1644,15 +1648,15 @@ msgstr "Nie można zablokować" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Blokowanie zostało zablokowane przez program" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "Wyszukiwanie…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "Brak wyników." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -2141,27 +2145,27 @@ msgstr "Wyłącz" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "Włączono tryb samolotowy" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Przełącz użytkownika" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Wyloguj się" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Ustawienia konta" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Blokada orientacji" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Uśpij" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Wyłącz komputer" | ||||
|  | ||||
| @@ -2200,11 +2204,11 @@ msgstr "Błąd upoważnienia Thunderbolt" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "Nie można upoważnić urządzenia Thunderbolt: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "Zmieniono głośność" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Głośność" | ||||
|  | ||||
| @@ -2257,22 +2261,22 @@ msgstr "Wyszukiwanie" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "Okno „%s” jest gotowe" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "Zachować te ustawienia ekranu?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Przywróć ustawienia" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Zachowaj zmiany" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2282,7 +2286,7 @@ msgstr[2] "Zmienione ustawienia zostaną przywrócone za %d sekund" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d×%d" | ||||
| @@ -2594,7 +2598,7 @@ msgstr "Stan" | ||||
| msgid "“version” takes no arguments" | ||||
| msgstr "Opcja „version” nie przyjmuje parametrów" | ||||
|  | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:239 | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:243 | ||||
| msgid "Usage:" | ||||
| msgstr "Użycie:" | ||||
|  | ||||
| @@ -2602,80 +2606,80 @@ msgstr "Użycie:" | ||||
| msgid "Print version information and exit." | ||||
| msgstr "Wyświetla informacje o wersji i kończy działanie." | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244 | ||||
| msgid "COMMAND" | ||||
| msgstr "POLECENIE" | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:244 | ||||
| msgid "[ARGS…]" | ||||
| msgstr "[PARAMETRY…]" | ||||
|  | ||||
| #: src/extensions-tool/main.c:242 | ||||
| #: src/extensions-tool/main.c:246 | ||||
| msgid "Commands:" | ||||
| msgstr "Polecenia:" | ||||
|  | ||||
| #: src/extensions-tool/main.c:243 | ||||
| #: src/extensions-tool/main.c:247 | ||||
| msgid "Print help" | ||||
| msgstr "Wyświetla pomoc" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:248 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Wyświetla wersję" | ||||
|  | ||||
| #: src/extensions-tool/main.c:245 | ||||
| #: src/extensions-tool/main.c:249 | ||||
| msgid "Enable extension" | ||||
| msgstr "Włącza rozszerzenie" | ||||
|  | ||||
| #: src/extensions-tool/main.c:246 | ||||
| #: src/extensions-tool/main.c:250 | ||||
| msgid "Disable extension" | ||||
| msgstr "Wyłącza rozszerzenie" | ||||
|  | ||||
| #: src/extensions-tool/main.c:247 | ||||
| #: src/extensions-tool/main.c:251 | ||||
| msgid "Reset extension" | ||||
| msgstr "Przywraca rozszerzenie" | ||||
|  | ||||
| #: src/extensions-tool/main.c:248 | ||||
| #: src/extensions-tool/main.c:252 | ||||
| msgid "Uninstall extension" | ||||
| msgstr "Odinstalowuje rozszerzenie" | ||||
|  | ||||
| #: src/extensions-tool/main.c:249 | ||||
| #: src/extensions-tool/main.c:253 | ||||
| msgid "List extensions" | ||||
| msgstr "Wyświetla listę rozszerzeń" | ||||
|  | ||||
| #: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251 | ||||
| #: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255 | ||||
| msgid "Show extension info" | ||||
| msgstr "Wyświetla informacje o rozszerzeniu" | ||||
|  | ||||
| #: src/extensions-tool/main.c:252 | ||||
| #: src/extensions-tool/main.c:256 | ||||
| msgid "Open extension preferences" | ||||
| msgstr "Otwiera preferencje rozszerzenia" | ||||
|  | ||||
| #: src/extensions-tool/main.c:253 | ||||
| #: src/extensions-tool/main.c:257 | ||||
| msgid "Create extension" | ||||
| msgstr "Tworzy rozszerzenie" | ||||
|  | ||||
| #: src/extensions-tool/main.c:254 | ||||
| #: src/extensions-tool/main.c:258 | ||||
| msgid "Package extension" | ||||
| msgstr "Tworzy pakiet z rozszerzeniem" | ||||
|  | ||||
| #: src/extensions-tool/main.c:255 | ||||
| #: src/extensions-tool/main.c:259 | ||||
| msgid "Install extension bundle" | ||||
| msgstr "Instaluje pakiet rozszerzenia" | ||||
|  | ||||
| #: src/extensions-tool/main.c:257 | ||||
| #: src/extensions-tool/main.c:261 | ||||
| #, c-format | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgstr "Polecenie %s wyświetli szczegółową pomoc.\n" | ||||
| msgid "Use “%s” to get detailed help.\n" | ||||
| msgstr "Polecenie „%s” wyświetli szczegółową pomoc.\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "Tryb używany przez GDM dla ekranu logowania" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "Używa podanego trybu, np. „gdm” dla ekranu logowania" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Wyświetla listę możliwych trybów" | ||||
|  | ||||
|   | ||||
							
								
								
									
										1217
									
								
								po/pt_BR.po
									
									
									
									
									
								
							
							
						
						
									
										1217
									
								
								po/pt_BR.po
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										108
									
								
								po/ro.po
									
									
									
									
									
								
							
							
						
						
									
										108
									
								
								po/ro.po
									
									
									
									
									
								
							| @@ -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-08-22 10:05+0200\n" | ||||
| "POT-Creation-Date: 2019-09-11 17:13+0000\n" | ||||
| "PO-Revision-Date: 2019-09-11 22:12+0200\n" | ||||
| "Last-Translator: Daniel Șerbănescu <daniel [at] serbanescu [dot] dk>\n" | ||||
| "Language-Team: Gnome Romanian Translation Team <gnomero-list@lists." | ||||
| "sourceforge.net>\n" | ||||
| @@ -468,7 +468,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -780,28 +780,32 @@ msgstr "Frecvente" | ||||
| msgid "All" | ||||
| msgstr "Toate" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "Redenumește" | ||||
|  | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Ferestre deschise" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Fereastră nouă" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Lansează folosind placa grafică dedicată" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Elimină din favorite" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Adaugă la Favorite" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Arată detaliile" | ||||
|  | ||||
| @@ -831,7 +835,7 @@ msgstr "Căști auriculare" | ||||
| msgid "Headset" | ||||
| msgstr "Căști cu microfon" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Microfon" | ||||
|  | ||||
| @@ -1334,13 +1338,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Alți utilizatori sunt conectați." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (la distanță)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (consolă)" | ||||
| @@ -1495,7 +1499,7 @@ msgstr "Vizualizează sursa" | ||||
| msgid "Web Page" | ||||
| msgstr "Pagină Web" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Informații despre sistem" | ||||
|  | ||||
| @@ -1626,7 +1630,7 @@ msgstr[0] "%d notificare" | ||||
| msgstr[1] "%d notificări" | ||||
| msgstr[2] "%d de notificări" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Blocare" | ||||
|  | ||||
| @@ -1649,15 +1653,15 @@ msgstr "Blocare nereușită" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Blocarea a fost împiedicată de o aplicație" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "Se caută…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "Niciun rezultat." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -2147,27 +2151,27 @@ msgstr "Oprește" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "Modul avion este pornit" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Comută utilizatorul" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Ieșire din sesiune" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Configurări de cont" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Blocare de orientare" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Suspendare" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Oprire" | ||||
|  | ||||
| @@ -2206,11 +2210,11 @@ msgstr "Eroare de autorizare Thunderbolt" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "Nu s-a putut autoriza dispozitivul Thunderbolt: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "Volumul a fost schimbat" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Volum" | ||||
|  | ||||
| @@ -2263,22 +2267,22 @@ msgstr "Caută" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "„%s” este gata" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "Doriți să păstrați aceste configurări de afișare?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Restaurează configurările" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Păstrați modificările" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2288,7 +2292,7 @@ msgstr[2] "Schimbările vor fi restaurare în %d de secunde" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2602,7 +2606,7 @@ msgstr "Stare" | ||||
| msgid "“version” takes no arguments" | ||||
| msgstr "„version” nu primește argumente" | ||||
|  | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:239 | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:243 | ||||
| msgid "Usage:" | ||||
| msgstr "Utilizare:" | ||||
|  | ||||
| @@ -2610,80 +2614,80 @@ msgstr "Utilizare:" | ||||
| msgid "Print version information and exit." | ||||
| msgstr "Tipărește informațiile versiunii și ieși." | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244 | ||||
| msgid "COMMAND" | ||||
| msgstr "COMANDĂ" | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:244 | ||||
| msgid "[ARGS…]" | ||||
| msgstr "[ARGUMENTE…]" | ||||
|  | ||||
| #: src/extensions-tool/main.c:242 | ||||
| #: src/extensions-tool/main.c:246 | ||||
| msgid "Commands:" | ||||
| msgstr "Comenzi:" | ||||
|  | ||||
| #: src/extensions-tool/main.c:243 | ||||
| #: src/extensions-tool/main.c:247 | ||||
| msgid "Print help" | ||||
| msgstr "Tipărește ajutorul" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:248 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Tipărește versiunea" | ||||
|  | ||||
| #: src/extensions-tool/main.c:245 | ||||
| #: src/extensions-tool/main.c:249 | ||||
| msgid "Enable extension" | ||||
| msgstr "Activează extensia" | ||||
|  | ||||
| #: src/extensions-tool/main.c:246 | ||||
| #: src/extensions-tool/main.c:250 | ||||
| msgid "Disable extension" | ||||
| msgstr "Dezactivează extensia" | ||||
|  | ||||
| #: src/extensions-tool/main.c:247 | ||||
| #: src/extensions-tool/main.c:251 | ||||
| msgid "Reset extension" | ||||
| msgstr "Restabilește extensia" | ||||
|  | ||||
| #: src/extensions-tool/main.c:248 | ||||
| #: src/extensions-tool/main.c:252 | ||||
| msgid "Uninstall extension" | ||||
| msgstr "Dezinstalează extensia" | ||||
|  | ||||
| #: src/extensions-tool/main.c:249 | ||||
| #: src/extensions-tool/main.c:253 | ||||
| msgid "List extensions" | ||||
| msgstr "Listează extensiile" | ||||
|  | ||||
| #: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251 | ||||
| #: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255 | ||||
| msgid "Show extension info" | ||||
| msgstr "Arată informații despre extensie" | ||||
|  | ||||
| #: src/extensions-tool/main.c:252 | ||||
| #: src/extensions-tool/main.c:256 | ||||
| msgid "Open extension preferences" | ||||
| msgstr "Deschide preferințele extensiei" | ||||
|  | ||||
| #: src/extensions-tool/main.c:253 | ||||
| #: src/extensions-tool/main.c:257 | ||||
| msgid "Create extension" | ||||
| msgstr "Creează extensie" | ||||
|  | ||||
| #: src/extensions-tool/main.c:254 | ||||
| #: src/extensions-tool/main.c:258 | ||||
| msgid "Package extension" | ||||
| msgstr "Împachetează extensia" | ||||
|  | ||||
| #: src/extensions-tool/main.c:255 | ||||
| #: src/extensions-tool/main.c:259 | ||||
| msgid "Install extension bundle" | ||||
| msgstr "Instalează pachetul de extensii" | ||||
|  | ||||
| #: src/extensions-tool/main.c:257 | ||||
| #: src/extensions-tool/main.c:261 | ||||
| #, c-format | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgstr "Utilizați %s pentru a obține ajutor detaliat.\n" | ||||
| msgid "Use “%s” to get detailed help.\n" | ||||
| msgstr "Utilizați „%s” pentru a obține ajutor detaliat.\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "Mod folosit de GDM pentru meniul de autentificare" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "Utilizează un mod specific, de exemplu „gdm” pentru ecranul de logare" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Enumeră câmpurile care pot fi afișate" | ||||
|  | ||||
|   | ||||
							
								
								
									
										108
									
								
								po/sv.po
									
									
									
									
									
								
							
							
						
						
									
										108
									
								
								po/sv.po
									
									
									
									
									
								
							| @@ -11,8 +11,8 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: gnome-shell\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-08-24 21:45+0200\n" | ||||
| "POT-Creation-Date: 2019-09-11 17:13+0000\n" | ||||
| "PO-Revision-Date: 2019-09-13 00:15+0200\n" | ||||
| "Last-Translator: Anders Jonsson <anders.jonsson@norsjovallen.se>\n" | ||||
| "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" | ||||
| "Language: sv\n" | ||||
| @@ -452,7 +452,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:445 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/endSessionDialog.js:448 js/ui/extensionDownloader.js:189 | ||||
| #: js/ui/shellMountOperation.js:390 js/ui/shellMountOperation.js:399 | ||||
| #: js/ui/status/network.js:899 | ||||
| msgid "Cancel" | ||||
| @@ -756,28 +756,32 @@ msgstr "Ofta använda" | ||||
| msgid "All" | ||||
| msgstr "Alla" | ||||
|  | ||||
| #: js/ui/appDisplay.js:1751 | ||||
| msgid "Rename" | ||||
| msgstr "Byt namn" | ||||
|  | ||||
| #. 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:2397 js/ui/panel.js:77 | ||||
| msgid "Open Windows" | ||||
| msgstr "Öppna fönster" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2252 js/ui/panel.js:84 | ||||
| #: js/ui/appDisplay.js:2416 js/ui/panel.js:84 | ||||
| msgid "New Window" | ||||
| msgstr "Nytt fönster" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2264 | ||||
| #: js/ui/appDisplay.js:2428 | ||||
| msgid "Launch using Dedicated Graphics Card" | ||||
| msgstr "Kör med diskret grafikkort" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2293 js/ui/dash.js:240 | ||||
| #: js/ui/appDisplay.js:2457 js/ui/dash.js:240 | ||||
| msgid "Remove from Favorites" | ||||
| msgstr "Ta bort från favoriter" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2299 | ||||
| #: js/ui/appDisplay.js:2463 | ||||
| msgid "Add to Favorites" | ||||
| msgstr "Lägg till som favorit" | ||||
|  | ||||
| #: js/ui/appDisplay.js:2309 js/ui/panel.js:95 | ||||
| #: js/ui/appDisplay.js:2473 js/ui/panel.js:95 | ||||
| msgid "Show Details" | ||||
| msgstr "Visa detaljer" | ||||
|  | ||||
| @@ -807,7 +811,7 @@ msgstr "Hörlurar" | ||||
| msgid "Headset" | ||||
| msgstr "Mikrofonlur" | ||||
|  | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:241 | ||||
| #: js/ui/audioDeviceSelection.js:64 js/ui/status/volume.js:248 | ||||
| msgid "Microphone" | ||||
| msgstr "Mikrofon" | ||||
|  | ||||
| @@ -1308,13 +1312,13 @@ msgid "Other users are logged in." | ||||
| msgstr "Andra användare är inloggade." | ||||
|  | ||||
| #. Translators: Remote here refers to a remote session, like a ssh login | ||||
| #: js/ui/endSessionDialog.js:647 | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #, javascript-format | ||||
| msgid "%s (remote)" | ||||
| msgstr "%s (fjärransluten)" | ||||
|  | ||||
| #. Translators: Console here refers to a tty like a VT console | ||||
| #: js/ui/endSessionDialog.js:650 | ||||
| #: js/ui/endSessionDialog.js:653 | ||||
| #, javascript-format | ||||
| msgid "%s (console)" | ||||
| msgstr "%s (konsol)" | ||||
| @@ -1467,7 +1471,7 @@ msgstr "Visa källa" | ||||
| msgid "Web Page" | ||||
| msgstr "Webbsida" | ||||
|  | ||||
| #: js/ui/messageTray.js:1462 | ||||
| #: js/ui/messageTray.js:1461 | ||||
| msgid "System Information" | ||||
| msgstr "Systeminformation" | ||||
|  | ||||
| @@ -1596,7 +1600,7 @@ msgid_plural "%d new notifications" | ||||
| msgstr[0] "%d ny avisering" | ||||
| msgstr[1] "%d nya aviseringar" | ||||
|  | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:269 | ||||
| #: js/ui/screenShield.js:444 js/ui/status/system.js:260 | ||||
| msgid "Lock" | ||||
| msgstr "Lås" | ||||
|  | ||||
| @@ -1619,15 +1623,15 @@ msgstr "Kunde inte låsa" | ||||
| msgid "Lock was blocked by an application" | ||||
| msgstr "Låsning hindrades av ett program" | ||||
|  | ||||
| #: js/ui/search.js:647 | ||||
| #: js/ui/search.js:668 | ||||
| msgid "Searching…" | ||||
| msgstr "Söker…" | ||||
|  | ||||
| #: js/ui/search.js:649 | ||||
| #: js/ui/search.js:670 | ||||
| msgid "No results." | ||||
| msgstr "Inga sökträffar." | ||||
|  | ||||
| #: js/ui/search.js:773 | ||||
| #: js/ui/search.js:794 | ||||
| #, javascript-format | ||||
| msgid "%d more" | ||||
| msgid_plural "%d more" | ||||
| @@ -2111,27 +2115,27 @@ msgstr "Stäng av" | ||||
| msgid "Airplane Mode On" | ||||
| msgstr "Flygplansläge påslaget" | ||||
|  | ||||
| #: js/ui/status/system.js:201 | ||||
| #: js/ui/status/system.js:192 | ||||
| msgid "Switch User" | ||||
| msgstr "Växla användare" | ||||
|  | ||||
| #: js/ui/status/system.js:213 | ||||
| #: js/ui/status/system.js:204 | ||||
| msgid "Log Out" | ||||
| msgstr "Logga ut" | ||||
|  | ||||
| #: js/ui/status/system.js:225 | ||||
| #: js/ui/status/system.js:216 | ||||
| msgid "Account Settings" | ||||
| msgstr "Kontoinställningar" | ||||
|  | ||||
| #: js/ui/status/system.js:254 | ||||
| #: js/ui/status/system.js:245 | ||||
| msgid "Orientation Lock" | ||||
| msgstr "Skärmrotation" | ||||
|  | ||||
| #: js/ui/status/system.js:280 | ||||
| #: js/ui/status/system.js:271 | ||||
| msgid "Suspend" | ||||
| msgstr "Vänteläge" | ||||
|  | ||||
| #: js/ui/status/system.js:290 | ||||
| #: js/ui/status/system.js:281 | ||||
| msgid "Power Off" | ||||
| msgstr "Stäng av" | ||||
|  | ||||
| @@ -2170,11 +2174,11 @@ msgstr "Thunderbolt-auktoriseringsfel" | ||||
| msgid "Could not authorize the Thunderbolt device: %s" | ||||
| msgstr "Kunde inte auktorisera Thunderbolt-enheten: %s" | ||||
|  | ||||
| #: js/ui/status/volume.js:128 | ||||
| #: js/ui/status/volume.js:129 | ||||
| msgid "Volume changed" | ||||
| msgstr "Volymen ändrades" | ||||
|  | ||||
| #: js/ui/status/volume.js:193 | ||||
| #: js/ui/status/volume.js:200 | ||||
| msgid "Volume" | ||||
| msgstr "Volym" | ||||
|  | ||||
| @@ -2227,22 +2231,22 @@ msgstr "Sök" | ||||
| msgid "“%s” is ready" | ||||
| msgstr "”%s” är redo" | ||||
|  | ||||
| #: js/ui/windowManager.js:54 | ||||
| #: js/ui/windowManager.js:55 | ||||
| msgid "Do you want to keep these display settings?" | ||||
| msgstr "Vill du behålla dessa skärminställningar?" | ||||
|  | ||||
| #. Translators: this and the following message should be limited in length, | ||||
| #. to avoid ellipsizing the labels. | ||||
| #. | ||||
| #: js/ui/windowManager.js:66 | ||||
| #: js/ui/windowManager.js:67 | ||||
| msgid "Revert Settings" | ||||
| msgstr "Återställ inställningar" | ||||
|  | ||||
| #: js/ui/windowManager.js:69 | ||||
| #: js/ui/windowManager.js:70 | ||||
| msgid "Keep Changes" | ||||
| msgstr "Behåll ändringar" | ||||
|  | ||||
| #: js/ui/windowManager.js:87 | ||||
| #: js/ui/windowManager.js:88 | ||||
| #, javascript-format | ||||
| msgid "Settings changes will revert in %d second" | ||||
| msgid_plural "Settings changes will revert in %d seconds" | ||||
| @@ -2251,7 +2255,7 @@ msgstr[1] "Inställningarna kommer återställas om %d sekunder" | ||||
|  | ||||
| #. 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:683 | ||||
| #: js/ui/windowManager.js:684 | ||||
| #, javascript-format | ||||
| msgid "%d × %d" | ||||
| msgstr "%d × %d" | ||||
| @@ -2564,7 +2568,7 @@ msgstr "Tillstånd" | ||||
| msgid "“version” takes no arguments" | ||||
| msgstr "”version” tar inga argument" | ||||
|  | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:239 | ||||
| #: src/extensions-tool/main.c:223 src/extensions-tool/main.c:243 | ||||
| msgid "Usage:" | ||||
| msgstr "Användning:" | ||||
|  | ||||
| @@ -2572,80 +2576,80 @@ msgstr "Användning:" | ||||
| msgid "Print version information and exit." | ||||
| msgstr "Skriv ut versionsinformation och avsluta." | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244 | ||||
| msgid "COMMAND" | ||||
| msgstr "KOMMANDO" | ||||
|  | ||||
| #: src/extensions-tool/main.c:240 | ||||
| #: src/extensions-tool/main.c:244 | ||||
| msgid "[ARGS…]" | ||||
| msgstr "[ARGUMENT…]" | ||||
|  | ||||
| #: src/extensions-tool/main.c:242 | ||||
| #: src/extensions-tool/main.c:246 | ||||
| msgid "Commands:" | ||||
| msgstr "Kommandon:" | ||||
|  | ||||
| #: src/extensions-tool/main.c:243 | ||||
| #: src/extensions-tool/main.c:247 | ||||
| msgid "Print help" | ||||
| msgstr "Skriv ut hjälp" | ||||
|  | ||||
| #: src/extensions-tool/main.c:244 src/main.c:460 | ||||
| #: src/extensions-tool/main.c:248 src/main.c:468 | ||||
| msgid "Print version" | ||||
| msgstr "Skriv ut version" | ||||
|  | ||||
| #: src/extensions-tool/main.c:245 | ||||
| #: src/extensions-tool/main.c:249 | ||||
| msgid "Enable extension" | ||||
| msgstr "Aktivera tillägg" | ||||
|  | ||||
| #: src/extensions-tool/main.c:246 | ||||
| #: src/extensions-tool/main.c:250 | ||||
| msgid "Disable extension" | ||||
| msgstr "Inaktivera tillägg" | ||||
|  | ||||
| #: src/extensions-tool/main.c:247 | ||||
| #: src/extensions-tool/main.c:251 | ||||
| msgid "Reset extension" | ||||
| msgstr "Återställ tillägg" | ||||
|  | ||||
| #: src/extensions-tool/main.c:248 | ||||
| #: src/extensions-tool/main.c:252 | ||||
| msgid "Uninstall extension" | ||||
| msgstr "Avinstallera tillägg" | ||||
|  | ||||
| #: src/extensions-tool/main.c:249 | ||||
| #: src/extensions-tool/main.c:253 | ||||
| msgid "List extensions" | ||||
| msgstr "Lista tillägg" | ||||
|  | ||||
| #: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251 | ||||
| #: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255 | ||||
| msgid "Show extension info" | ||||
| msgstr "Visa info för tillägg" | ||||
|  | ||||
| #: src/extensions-tool/main.c:252 | ||||
| #: src/extensions-tool/main.c:256 | ||||
| msgid "Open extension preferences" | ||||
| msgstr "Öppna inställningar för tillägg" | ||||
|  | ||||
| #: src/extensions-tool/main.c:253 | ||||
| #: src/extensions-tool/main.c:257 | ||||
| msgid "Create extension" | ||||
| msgstr "Skapa tillägg" | ||||
|  | ||||
| #: src/extensions-tool/main.c:254 | ||||
| #: src/extensions-tool/main.c:258 | ||||
| msgid "Package extension" | ||||
| msgstr "Paketera tillägg" | ||||
|  | ||||
| #: src/extensions-tool/main.c:255 | ||||
| #: src/extensions-tool/main.c:259 | ||||
| msgid "Install extension bundle" | ||||
| msgstr "Installera tilläggsbunt" | ||||
|  | ||||
| #: src/extensions-tool/main.c:257 | ||||
| #: src/extensions-tool/main.c:261 | ||||
| #, c-format | ||||
| msgid "Use %s to get detailed help.\n" | ||||
| msgstr "Använd %s för att få detaljerad hjälp.\n" | ||||
| msgid "Use “%s” to get detailed help.\n" | ||||
| msgstr "Använd ”%s” för att få detaljerad hjälp.\n" | ||||
|  | ||||
| #: src/main.c:466 | ||||
| #: src/main.c:474 | ||||
| msgid "Mode used by GDM for login screen" | ||||
| msgstr "Läge som används av GDM för inloggningsskärmen" | ||||
|  | ||||
| #: src/main.c:472 | ||||
| #: src/main.c:480 | ||||
| msgid "Use a specific mode, e.g. “gdm” for login screen" | ||||
| msgstr "Använd ett specifikt läge, t.ex. ”gdm” för inloggningsskärm" | ||||
|  | ||||
| #: src/main.c:478 | ||||
| #: src/main.c:486 | ||||
| msgid "List possible modes" | ||||
| msgstr "Lista möjliga lägen" | ||||
|  | ||||
|   | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user