Compare commits

...

98 Commits

Author SHA1 Message Date
Alexander Mikhaylenko
35aa7998bc power: Ceil percentage when looking for icon
Use correct battery icon. For example, use battery-level-10-symbolic, with
a warning, on 1%-10% instead of 10%-19%.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/1617

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/726
2019-09-14 12:17:46 +05:00
Марко Костић
314a89a837 Update Serbian translation 2019-09-13 19:43:24 +00:00
Jonas Ådahl
57ed68541a environment: Disable fullscreen unredirect during all transitions
When there is a transition, it's likely that we are animating some part
of the desktop, and in such situations we don't want to unredirect
fullscreen windows.

This fixes unwanted unredirection when e.g. hiding a modal dialog by
re-enabling the unredirection after the animation has finished, instead
of when it starts.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/721
2019-09-13 16:10:17 +00:00
Georges Basile Stavracas Neto
413c677fcf iconGrid: Only animate visible icons
Mutter recently added an optimization to only allocate
visible children [1]. That broke ClutterClones, but it
was subsequently fixed [2].

However, that exposed a third problem, this time with
FrequentView: visible but transparent icons, that are
not allocated by the icon grid, were cloned and animated
during the spring animation.

Only animate visible icons with opacity greater than 0.

[1] https://gitlab.gnome.org/GNOME/mutter/commit/0eab73dc
[2] https://gitlab.gnome.org/GNOME/mutter/commit/08a3cbfc

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/696
2019-09-13 15:33:45 +00:00
Milo Casagrande
3d86e6e791 Update Italian translation 2019-09-13 12:55:53 +00:00
Daniel Mustieles
3fbd61cbf0 Updated Spanish translation 2019-09-13 08:27:06 +02:00
Georges Basile Stavracas Neto
43b4f2c7d5 lookingGlass: Only update window list when visible
Updating the window list in the Looking Glass is a costly
operation: it destroys a whole lot of actors, and recreates
them. This triggers CSS changes, repaints, and allocations.

It is specially bad when paired with Wayland's big number
of window creations and deletions when showing Builder's
and Epiphany's popup window.

Only update the window list in the Looking Glass when it is
visible.

Related: https://gitlab.gnome.org/GNOME/mutter/issues/556

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/719
2019-09-13 00:49:38 +00:00
Anders Jonsson
7eb4088f45 Update Swedish translation 2019-09-12 22:16:22 +00:00
Florian Müllner
f00201fa6c ci: Disable MR handling for now
We aren't quite ready to enforce non-legacy style for now, mostly due
to the xgettext bug that prevents us from using template strings in
some places, and vast amounts of legacy indentation.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/716
2019-09-12 23:18:27 +02:00
Florian Müllner
1aca2ba6bb ci: Disallow legacy style in merge requests
In order to transition from the current legacy style to the modern
gjs one, use the MR line-filtering we used to do on common errors
to ensure new code complies with the new style.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/716
2019-09-12 23:18:27 +02:00
Florian Müllner
e9131465dd ci: Fail on any common lint errors
Now that we fixed all pre-existing errors that are common between
regular and legacy configuration, we can stop filtering the result
by the lines modified by the merge request.

This will allow us to catch errors in merge requests that slipped
through until now, for example when leaving a newly-unused import
behind.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/716
2019-09-12 23:18:27 +02:00
Florian Müllner
0ee7f02f8e cleanup: Don't assume hasOwnProperty() method on objects
Since ES5, it is possible to create objects with no prototype at all:

    let foo = Object.create(null);

Those object won't have any builtin properties like hasOwnProperty(),
which is why eslint added a corresponding rule to its default rule set.

While this isn't an issue that affects our code, there's no harm in fol-
lowing the recommendation and call the method through Object.prototype.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/716
2019-09-12 23:18:27 +02:00
Florian Müllner
451f4e3636 cleanup: "Only" use two indentation styles for object literals
We currently use no less than three different ways of indenting
object literals:

    let obj1 = {
        foo: 42,
        bar: 23,
    };

    let obj2 = { foo: 42,
                 bar: 23 };

    let obj3 = { foo: 42,
                 bar: 23
               };

The first is the one we want to use everywhere eventually, while the
second is the most commonly used "legacy" style.

It is the third one that is most problematic, as it throws off eslint
fairly badly: It violates both the rule to have consistent line breaks
in braces as well as the indentation style of both regular and legacy
configurations.

Fortunately the third style was mostly used for tween parameters, so
is quite rare after the Tweener purge. Get rid of the remaining ones
to cut down on pre-existing eslint errors.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/716
2019-09-12 23:18:24 +02:00
Florian Müllner
2fc4987c73 cleanup: Stop using Mainloop module
It is deprecated in favor of the regular GLib functions.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/718
2019-09-12 19:09:24 +02:00
GB_2
4525ad346d windowMenu: Animate menu
Most menus have an animation, so add one to the window menu for
consistency and better looks (like !712).

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/717
2019-09-12 16:01:46 +00:00
Danial Behzadi
e4b8a4b432 Update Persian translation 2019-09-12 12:27:27 +00:00
Enrico Nicoletto
62e594af6d Update Brazilian Portuguese translation 2019-09-12 11:35:40 +00:00
Florian Müllner
ce92270626 extensionSystem: Add missing return value
_callExtensionInit() should return whether the extension was initialized
successfully or not, but the early return added in commit 2a9e065cfb
doesn't.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/715
2019-09-12 12:45:05 +02:00
Jonas Dreßler
bdcf3037ca extensionSystem: Always disable multiple extensions in reverse order
Since disabling an extension will lead to disabling and re-enabling all
following extensions in the list, always disable multiple extensions by
looping through the list in reverse order.

This lowers the execution time of the event handlers quite a bit if many
extensions are installed.

Thanks to Philippe Troin for identifying the problem and proposing the
initial patch to change the extension order when reloading.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/177

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Jonas Dreßler
9698ff491a extensionSystem: Only add to extensionOrder array if enabling worked
Only push uuids of newly enabled extensions to the `_extensionOrder`
array if enabling them was successful.

Otherwise, since `_callExtensionDisable()` doesn't remove uuids that
weren't successfully enabled from the array, those extensions get added
to the array multiple times when they're disabled and enabled.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Jonas Dreßler
2a9e065cfb extensionSystem: Always enforce disallowing extensions using sessionMode
It's currently possible to circumvent the `sessionMode.allowExtensions`
property: For already enabled extensions one can call reloadExtension
via DBus, for new extensions it's possible by adding the extension to
the enabled-extensions gsettings key and setting the
disable-extension-version-validation key (which triggers a reload of
`this._enabledExtensions`) and then calling reloadExtension via DBus.

So to enforce `allowExtensions` while still allowing to update
extensions and keeping the extensionSystem synced with various gsettings
keys, replace the checks for `this._enabled` with simple checks for
`Main.sessionMode.allowExtensions` inside `_callExtensionInit()` and
`_callExtensionEnable()`.

The remaining checks for `this._enabled` are only small optimizations to
prevent running code on irrelevant sessionMode updates.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Jonas Dreßler
4c93ef39fa extensionSystem: Handle added or removed sessionMode extensions
Right now we're only handling added sessionMode extensions correctly on
sessionMode updates, also handle the other case and disable removed
sessionMode extensions on sessionMode updates.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Jonas Dreßler
22107c183b extensionSystem: Rename initted to initialized
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Jonas Dreßler
c06eb5d0a7 extensionSystem: Log an extension error if loading the stylesheet failed
Instead of only logging a message that loading the extension stylesheet
failed and silently returning we should use `logExtensionError` for that
instead. This also sets the extension state to ERROR and makes sure we
don't try to enable it again.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Jonas Dreßler
e76877c4b8 extensionSystem: Check if extension exists before accessing property
If the extension doesn't exist in the `this._extensions` Map, we'd try
to access `extension.dir` on undefined/null. So set the `dir` variable
after checking if `extension` is defined.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Jonas Dreßler
2a32fb2e72 extensionSystem: Fix a wrong error message
The extension object is added to the `this._extensions` Map inside
`createExtensionObject`, not inside `loadExtension`.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Jonas Dreßler
de86920e0e extensionSystem: Remove unncessary return statements
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Jonas Dreßler
8754736fda extensionUtils: Check version variable for undefined first
Avoid a warning message when trying to access requiredArray[2] by
checking if its undefined first.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/96
2019-09-12 10:24:49 +00:00
Iain Lane
d2ead59d74 data: Lower TimeoutStartSec in systemd units
If there's a stubborn process in our cgroup, we shouldn't hang around
waiting for the default (30 seconds) before the session closes. We've
logged out, SIGTERMed and the thing is refusing to go away, let's not
make people hang around for ages.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/699
2019-09-12 08:16:10 +00:00
Emin Tufan Çetin
2f4fcc59a1 Update Turkish translation 2019-09-12 04:26:07 +00:00
Florian Müllner
ba6dbb228d workspace: Minor clarification
Code and comment were based on the old get_input_rect() and get_outer_rect()
method names that were changed to the more appropriate get_buffer_rect() and
get_frame_rect() a long time ago.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/713
2019-09-11 23:32:16 +00:00
Florian Müllner
60e386048b backgroundMenu: Animate menu opening
The animation was removed in commit 6a00a504d4 for consistency with
other menus. However commit a9b12d5d73 then *added* animations to
those just four minutes later.

So add back the original animations for consistency, both with menu
closing and with other menus.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/1595
2019-09-11 23:25:21 +00:00
Christian Kirbach
c2904fa14d Update German translation 2019-09-11 21:14:44 +00:00
Florian Müllner
dfdb139d9c workspaceThumbnails: Replace loops with Array.find()
This is much more idiomatic and concise than iterating over
thumbnails until we find the one we are looking for.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
ce63d21dcc overview: Minor cleanup
Safe one indentation level by combining conditions.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
1da9937453 workspace: Use operator shorthand
Shorthands like a += b are well-established, so prefer them over the
less concise a = a + b.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
9f11fbad16 jsParse: Disambiguate regex
Make it clear that /= is part of a regex and not an operator shorthand.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
f54e7804c5 workspace: Don't initialize variables to undefined
The declaration itself already does this implicitly.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
7db5f8b28e calendar: Use template strings over concatenation
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
743ce23fbc util: Separate statements with linebreak
Our eslint rules will soon forbid more than one statement per line.
We already follow that rule except for one lone offender; fix that.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
a3267be192 network: Don't omit parens when constructing
While it is legal to omit parentheses when invoking a constructor
with no arguments, we generally avoid that in our coding style.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
4ad2523877 messageTray: Add missing linebreak
Methods should be separated by an empty lines, even when short.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
4bfee3a8ca ibusManager: Wrap line before dot
When chaining function calls, our coding style asks for the dot to
start the new line, not end the preceding one.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
fc964f975a kbdA11yDialog: Avoid unnecessary ternary operators
A condition is already boolean, there's no point in explicitly
turning it into true/false.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
52f85c9465 system: Properly separate statements
Whoops, that's some typo that sneaked into commit 9c3b3320f8 ...

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
691610f23c lookingGlass: Fix misleading typeof use
typeof is an operator, not a function. Putting unneeded parentheses
around the expression obfuscates that.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Florian Müllner
b6a2b2b8a5 cleanup: Remove left-over imports
Unfortunately this slipped through our CI tests, as the script
filters errors by lines that are modified by the corresponding
merge request.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/710
2019-09-11 20:59:31 +00:00
Daniel Șerbănescu
1ad8a2fcf6 Update Romanian translation 2019-09-11 20:13:21 +00:00
Balázs Úr
7ce08845f1 Update Hungarian translation 2019-09-11 20:11:51 +00:00
Aurimas Černius
d469250130 Updated Lithuanian translation 2019-09-11 22:37:29 +03:00
Jordi Mas
7fd5c47e06 Update Catalan translation 2019-09-11 21:21:08 +02:00
Kukuh Syafaat
8704b1004e Update Indonesian translation 2019-09-11 18:31:47 +00:00
Piotr Drąg
65a9fb8c01 Update Polish translation 2019-09-11 19:22:04 +02:00
Florian Müllner
25a7a8006a gnome-extensions: Translate help command
The quotes and COMMAND string aren't part of the syntax, so they
should be translated.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/1538
2019-09-11 17:09:30 +00:00
Marek Černocký
6fe1d3248a Updated Czech translation 2019-09-11 18:01:13 +02:00
Jonas Dreßler
13f97532bf overviewControls: Remove slide transitions before setting value manually
Remove transitions of the `slide-x` property of the layout manager
before we set the property to a fixed value, otherwise the transitions
might still be running and change the value after we set it.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/707
2019-09-11 11:39:44 +00:00
Anders Jonsson
1acee3d702 Update Swedish translation 2019-09-10 23:53:06 +00:00
Marco Trevisan (Treviño)
1d17404471 selectArea: Ignore motion events once we got a result
When selecting an area for screenshot we monitor the events while we've valid
coordinates in order to redraw the rubber band.
However, we don't stop ignore the motion events after button release and so
while animating. This might cause an unwanted effect if moving the mouse away
during fade out that is way more visible slowing-down the animations.

To fix this ignore any motion event once we've set the results.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/711
2019-09-10 22:08:25 +02:00
Florian Müllner
48b860b69f ci: Turn on -Werror
Now that all compiler warnings are fixed, let's try to keep it that
way by making warnings fatal during CI.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/709
2019-09-10 17:51:02 +00:00
Florian Müllner
a030c54661 shell: Replace another GTimeVal
This slipped through in commit 9b7f228f8e.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/709
2019-09-10 17:51:02 +00:00
Florian Müllner
dcf7bae6c7 calendar-server: Temporarily ignore all deprecations in eds includes
Evolution draws in libsoup, which exposes deprecated types in its
API. While its headers have been fixed to guard the affected symbols,
those fixes aren't in our CI images yet.

Until we get a fixed version, just disable all deprecation warnings
during the include in order to not trip over "foreign" bugs.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/709
2019-09-10 17:51:02 +00:00
Florian Müllner
d0ace108e5 calendar-server: Disable deprecated e-d-s API
We aren't using any deprecated evolution-data-server API, so we can
turn it off; this avoids compiler warnings for glib deprecations
used by those functions, which makes it harder to spot warnings for
our own code base.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/709
2019-09-10 17:51:02 +00:00
Florian Müllner
32d5744014 build: Exclude private headers from GIR
They contain API that is explicitly not meant to be used externally
and - as it uses the "wrong" namespace due to the _ prefix - doesn't
end up in the introspection data anyway.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/709
2019-09-10 17:51:02 +00:00
Florian Müllner
d16094774b build: Remove st-private.h from "public" headers
It is currently listed both as public and private header, which is
clearly bonkers. As the name implies, the latter is correct ...

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/709
2019-09-10 17:51:02 +00:00
Piotr Drąg
ac664ba321 Update Polish translation 2019-09-10 17:58:11 +02:00
Florian Müllner
0888a9bffd environment: Skip property animations while hidden
For implicit animations, Clutter will skip any transitions while
an actor is unmapped, and just set the property directly. Do the
same in our ease_property() convencience method.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/708
2019-09-10 14:41:26 +00:00
Daniel Mustieles
5e82d72424 Updated Spanish translation 2019-09-10 15:56:03 +02:00
Jiri Grönroos
2513835e89 Update Finnish translation 2019-09-10 11:11:21 +00:00
Kukuh Syafaat
98b70ef00f Update Indonesian translation 2019-09-10 07:12:48 +00:00
Daniel Șerbănescu
ae11381b88 Update Romanian translation 2019-09-10 06:48:29 +00:00
Milo Casagrande
e9596f2775 Update Italian translation 2019-09-10 06:47:05 +00:00
Balázs Úr
8adbc8010a Update Hungarian translation 2019-09-10 04:40:55 +00:00
Fran Dieguez
76fb559964 Update Galician translation 2019-09-09 22:45:51 +00:00
Rafael Fontenelle
1bc1b4d9d8 Update Brazilian Portuguese translation 2019-09-09 22:44:55 +00:00
Georges Basile Stavracas Neto
dfc0ef56f6 appDisplay: Allow editing folder names
Add a new popover with a regular entry + button to rename
folders. The layout is similar to other GNOME applications.

The popup is implemented as a PopupMenu subclass, leaving
the grab management to PopupMenuManager.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/675
2019-09-09 22:15:49 +02:00
Jonas Dreßler
1e68e78d8e extensionPrefs: Block notify::active signal handler while updating state
We disable and enable extensions inside the `notify::active` signal
handler, but we shouldn't do that in case the change didn't come from
the user but because something else changed the state of the extension.

This causes an issue when the extensionPrefs window is open and the
session gets locked: The extensions are temporarily disabled by the
shell, extensionPrefs updates its switches on the state change and adds
those extensions to the `disabled-extensions` gsettings key inside the
signal handler. Now when the session is unlocked again, the extensions
won't be enabled again since they're forced-disabled.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/705
2019-09-09 19:50:31 +00:00
Jonas Dreßler
17fa5a2db4 extensionPrefs: Connect to ExtensionStateChanged after building UI
Since we manipulate parts of the UI (like the switch) in this signal
handler, let's only connect it after setting up the UI.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/705
2019-09-09 19:50:31 +00:00
Jonas Dreßler
004a5e1042 iconGrid: Queue a relayout after child opacity changes
We're using a vfunc override for `get_paint_volume` to exclude children
with an opacity of 0 from the paint volume and thus decrease the size of
the area we need to paint.

Now if the paint volume is requested during the spring animation (the
real icons are hidden using an opacity of 0 and clones are used for the
animation), `get_paint_volume` returns a paint volume with a height of
0. After that, the spring animation finishes and the icon-opacities are
set to 255 in `_resetAnimationActors`, and since we cache paint volumes
and there's no reason for Clutter to assume it got invalid, the icons
end up not being painted.

Fix this by queuing a relayout of the grid when the opacity of a child
is changed from or to 0, which manually invalidates the paint volume.

The reason why this is not an issue with the paginated icon grid
(all-apps view) is probably because StScrollView invalidates the paint
volume a lot more often than regular containers.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/1502
2019-09-09 19:39:28 +00:00
Jonas Dreßler
4915a9e8e4 iconGrid: Delete private child property when removing child
Delete a private property we set when the child got added to make sure
the reference is deleted after the child got removed from the grid.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/704
2019-09-09 19:39:28 +00:00
Marco Trevisan (Treviño)
8a7e44ccf0 extensionSystem: Use logError to record extension errors with stack trace
Extensions might emit JS errors explicitly or implicitly, however GNOME
Shell doesn't present any stack trace for those making them quite hard
to debug.

Make this easier by logging errors with logError() whichs includes the
stack dump.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:19 +00:00
Marco Trevisan (Treviño)
a497afe695 system: Track buttonGroup visibility using a group of actors
Cleanup the visibility check on actions by using an array of actors to
track, so that we don't repeat the same variables multiple times.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:19 +00:00
Marco Trevisan (Treviño)
15c252c11d popupMenu: Remove extra parameter on boolean ParamSpec initialization
PopupBaseMenuItem properties were initialized using wrong param spec
signature, fix this by removing the extra parameter.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
27da3ed1fe calendar: Use binding for clearButton visibility
When the calendar PlaceHolder is visible, the ClearButton shouldn't
be. Instead of setting the visibility explicitly, we can use a property
binding.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
8656102182 workspacesDisplay: Disconnect MetaLater and parent signals on destroy
When the WorkspacesDisplay actor is destroyed we should remove the
ongoing later and parent widget connections to avoid accessing an
invalid object on callback.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
24d3744cb9 workspace: Don't use clones' delegate to check children
The WindowClones are now themselves actors, so we can just check for
their type instead of checking for the delegate.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
031913b9df workspace: Use Workspace prefix for WindowClone class
We have both Workspace's WindowClone and workspaceThumbnail's WindowClone,
so better to be clear about them using a class prefix.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
e53443daf9 workspace: Remove Long-press later with the actor
Ensure that the long-press later is removed with the actor, otherwise
it will try to use invalidated data.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
06317f4f6a status/keyboard: Make Input source types var
These are used by keyboard so they need to be readable outside the
status.keyboard module.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
c69e195441 search: Remove updateSearch later on destruction
When the GridSearchBase actor is destroyed we should remove the
ongoing later that might try to access to invalid resources.

To do this, add an _onDestroy() callback function to SearchResultsBase
and override it in GridSearchBase.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
a53b48de4c locatePointer: Bind ripples creation to settings
Don't create ripples if locate pointer is not enabled, and bind
creation to the relative desktop interface settings key.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
eca98aee42 ripples: Add destroy() method and remove them when unneeded
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
ea5aaa8ab2 realmd: Set login format to null on start and update if invalid
We were checking an undefined property but that would lead to a a warning.
Instead we can consider the login format unset until is null, and in case
update it.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
72566eda43 messageTray: Remove unused source object parameter
This is has been added in commit b150869b5 but is never used

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
7a4f9a5ff3 keyboard: Treat menu items as actors
This is a leftover of GNOME/gnome-shell!499, since menu items are all
actors now, we can just avoid using the actor property when adding an
action item.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
ba23fd9989 lookingGlass: Throw a clearer error on referencing invalid result index
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
c101196f5b lightbox: Use common ease parameters and avoid similar codepaths
Easing calls on show/hide functions have some parameters in common whether the
radial effect is enabled or not.

So instead of doing repeated calls with similar parameters, initialize common
values in params objects.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
1687a5451e altTab: use AltTab prefix on AppIcon class
There's an AppIcon class on appDisplay, so it won't be easy to discern
the one we're going to add in altTab.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
Marco Trevisan (Treviño)
ea4d5f89eb animation: Stop the animation before removing all the children
If the resource scale or the scale factor changes while the animation
is playing, we need to stop the animation and start it again once the
texture is loaded, as the idle might try to access an invalidated
animation child otherwise.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/700
2019-09-09 19:28:18 +00:00
92 changed files with 2608 additions and 1928 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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; }

View File

@@ -567,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)
@@ -574,13 +578,13 @@ class ExtensionRow extends Gtk.ListBoxRow {
this._extension = ExtensionUtils.deserializeExtension(newState);
let state = (this._extension.state == ExtensionState.ENABLED);
GObject.signal_handler_block(this._switch, this._notifyActiveId);
this._switch.state = state;
GObject.signal_handler_unblock(this._switch, this._notifyActiveId);
this._switch.sensitive = this._canToggle();
});
this.connect('destroy', this._onDestroy.bind(this));
this._buildUI();
}
get uuid() {
@@ -646,7 +650,7 @@ class ExtensionRow extends Gtk.ListBoxRow {
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

View File

@@ -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();

View File

@@ -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;

View File

@@ -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,9 +18,9 @@ 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,
requiredMajor, requiredMinor, requiredMicro);
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);
}
function getIBusManager() {
@@ -216,21 +215,23 @@ 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,
() => {
this._ibus.preload_engines_async(
ids,
-1,
null,
null);
this._preloadEnginesId = 0;
return GLib.SOURCE_REMOVE;
});
GLib.timeout_add_seconds(
GLib.PRIORITY_DEFAULT,
this._PRELOAD_ENGINES_DELAY_TIME,
() => {
this._ibus.preload_engines_async(
ids,
-1,
null,
null);
this._preloadEnginesId = 0;
return GLib.SOURCE_REMOVE;
});
}
};
Signals.addSignalMethods(IBusManager.prototype);

View File

@@ -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

View File

@@ -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);

View File

@@ -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,14 +791,16 @@ 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._enterItem(index);
this._mouseTimeOutId = 0;
return GLib.SOURCE_REMOVE;
});
this._mouseTimeOutId = GLib.timeout_add(
GLib.PRIORITY_DEFAULT,
APP_ICON_HOVER_TIMEOUT,
() => {
this._enterItem(index);
this._mouseTimeOutId = 0;
return GLib.SOURCE_REMOVE;
});
GLib.Source.set_name_by_id(this._mouseTimeOutId, '[gnome-shell] this._enterItem');
} else {
this._itemEntered(index);

View File

@@ -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) {

View File

@@ -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;

View File

@@ -147,12 +147,11 @@ 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),
});
}
addFavorite(appId) {
@@ -181,12 +180,11 @@ 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),
});
}
}
Signals.addSignalMethods(AppFavorites.prototype);

View File

@@ -441,20 +441,21 @@ var Background = class Background {
}
_loadAnimation(file) {
this._cache.getAnimation({ file: file,
settingsSchema: this._settings.schema_id,
onLoaded: animation => {
this._animation = animation;
this._cache.getAnimation({
file: file,
settingsSchema: this._settings.schema_id,
onLoaded: animation => {
this._animation = animation;
if (!this._animation || this._cancellable.is_cancelled()) {
this._setLoaded();
return;
}
if (!this._animation || this._cancellable.is_cancelled()) {
this._setLoaded();
return;
}
this._updateAnimation();
this._watchFile(file);
}
});
this._updateAnimation();
this._watchFile(file);
}
});
}
_loadImage(file) {
@@ -748,13 +749,14 @@ var BackgroundManager = class BackgroundManager {
_createBackgroundActor() {
let background = this._backgroundSource.getBackground(this._monitorIndex);
let backgroundActor = new Meta.BackgroundActor({ meta_display: global.display,
monitor: this._monitorIndex,
background: background.background,
vignette: this._vignette,
vignette_sharpness: 0.5,
brightness: 0.5,
});
let backgroundActor = new Meta.BackgroundActor({
meta_display: global.display,
monitor: this._monitorIndex,
background: background.background,
vignette: this._vignette,
vignette_sharpness: 0.5,
brightness: 0.5,
});
this._container.add_child(backgroundActor);

View File

@@ -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();

View File

@@ -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;

View File

@@ -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;

View File

@@ -325,10 +325,10 @@ 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);
let button = new St.Button({ child: box,

View File

@@ -112,16 +112,17 @@ class NetworkSecretDialog extends ModalDialog.ModalDialog {
expand: true });
}
this._okButton = { label: _("Connect"),
action: this._onOk.bind(this),
default: true
};
this._okButton = {
label: _("Connect"),
action: this._onOk.bind(this),
default: true,
};
this.setButtons([{ label: _("Cancel"),
action: this.cancel.bind(this),
key: Clutter.KEY_Escape,
},
this._okButton]);
this.setButtons([{
label: _("Cancel"),
action: this.cancel.bind(this),
key: Clutter.KEY_Escape,
}, this._okButton]);
this._updateOkButton();
}
@@ -551,11 +552,12 @@ var VPNRequestHandler = class {
let shouldAsk = keyfile.get_boolean(groups[i], 'ShouldAsk');
if (shouldAsk) {
contentOverride.secrets.push({ label: keyfile.get_string(groups[i], 'Label'),
key: groups[i],
value: value,
password: keyfile.get_boolean(groups[i], 'IsSecret')
});
contentOverride.secrets.push({
label: keyfile.get_string(groups[i], 'Label'),
key: groups[i],
value: value,
password: keyfile.get_boolean(groups[i], 'IsSecret'),
});
} else {
if (!value.length) // Ignore empty secrets
continue;
@@ -609,10 +611,11 @@ Signals.addSignalMethods(VPNRequestHandler.prototype);
var NetworkAgent = class {
constructor() {
this._native = new Shell.NetworkAgent({ identifier: 'org.gnome.Shell.NetworkAgent',
capabilities: NM.SecretAgentCapabilities.VPN_HINTS,
auto_register: false
});
this._native = new Shell.NetworkAgent({
identifier: 'org.gnome.Shell.NetworkAgent',
capabilities: NM.SecretAgentCapabilities.VPN_HINTS,
auto_register: false,
});
this._dialogs = { };
this._vpnRequests = { };

View File

@@ -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');

View File

@@ -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;

View File

@@ -30,11 +30,13 @@ 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,
can_focus: true,
reactive: false
});
this.actor = new St.Button({
style_class: 'datemenu-today-button',
x_align: St.Align.START,
x_expand: true,
can_focus: true,
reactive: false,
});
this.actor.connect('clicked', () => {
this._calendar.setDate(new Date(), false);
});

View File

@@ -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;
@@ -451,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: () => {
this.close(true);
let signalId = this.connect('closed', () => {
this.disconnect(signalId);
this._confirm(signal);
});
},
label: label });
buttons.push({
action: () => {
this.close(true);
let signalId = this.connect('closed', () => {
this.disconnect(signalId);
this._confirm(signal);
});
},
label: label,
});
}
this.setButtons(buttons);
@@ -565,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);
@@ -587,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;
}

View File

@@ -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,14 +121,11 @@ 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);
}
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) {
@@ -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,8 +155,7 @@ function _easeActorProperty(actor, propName, target, params) {
let [obj, prop] = _getPropertyTarget(actor, propName);
obj[prop] = target;
if (callback)
callback(true);
callback(true);
return;
}
@@ -164,8 +170,7 @@ function _easeActorProperty(actor, propName, target, params) {
transition.set_to(target);
if (callback)
transition.connect('stopped', (t, finished) => callback(finished));
transition.connect('stopped', (t, finished) => callback(finished));
}
function _loggingFunc(...args) {

View File

@@ -186,14 +186,15 @@ class InstallExtensionDialog extends ModalDialog.ModalDialog {
this._info = info;
this._invocation = invocation;
this.setButtons([{ label: _("Cancel"),
action: this._onCancelButtonPressed.bind(this),
key: Clutter.Escape
},
{ label: _("Install"),
action: this._onInstallButtonPressed.bind(this),
default: true
}]);
this.setButtons([{
label: _("Cancel"),
action: this._onCancelButtonPressed.bind(this),
key: Clutter.Escape,
}, {
label: _("Install"),
action: this._onInstallButtonPressed.bind(this),
default: true,
}]);
let content = new Dialog.MessageDialogContent({
title: _("Download and install “%s” from extensions.gnome.org?").format(info.name),

View File

@@ -17,7 +17,7 @@ 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();
@@ -98,6 +98,9 @@ var ExtensionManager = class {
}
_callExtensionEnable(uuid) {
if (!Main.sessionMode.allowExtensions)
return;
let extension = this.lookup(uuid);
if (!extension)
return;
@@ -108,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++) {
@@ -121,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;
}
}
@@ -129,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;
}
}
@@ -194,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);
}
@@ -304,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'));
@@ -388,9 +390,6 @@ var ExtensionManager = class {
_onEnabledExtensionsChanged() {
let newEnabledExtensions = this._getEnabledExtensions();
if (!this._enabled)
return;
// Find and enable all the newly enabled extensions: UUIDs found in the
// new setting, but not in the old one.
newEnabledExtensions.filter(
@@ -401,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);
});
@@ -418,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();
// Disable enabled extensions in the reverse order first to avoid
// the "rebasing" done in _callExtensionDisable...
extensionOrder.slice().reverse().forEach(uuid => {
this._callExtensionDisable(uuid);
});
if (Main.sessionMode.allowExtensions) {
this._enabledExtensions.forEach(uuid => {
this._callExtensionEnable(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() {
@@ -482,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);
@@ -497,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);
});
@@ -512,8 +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();

View File

@@ -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;

View File

@@ -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");

View File

@@ -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;

View File

@@ -238,11 +238,12 @@ var LayoutManager = GObject.registerClass({
reactive: true });
this.addChrome(this.overviewGroup);
this.screenShieldGroup = new St.Widget({ name: 'screenShieldGroup',
visible: false,
clip_to_allocation: true,
layout_manager: new Clutter.BinLayout(),
});
this.screenShieldGroup = new St.Widget({
name: 'screenShieldGroup',
visible: false,
clip_to_allocation: true,
layout_manager: new Clutter.BinLayout(),
});
this.addChrome(this.screenShieldGroup);
this.panelBox = new St.BoxLayout({ name: 'panelBox',
@@ -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() {

View File

@@ -108,12 +108,13 @@ var RadialShaderEffect = GObject.registerClass({
*/
var Lightbox = class Lightbox {
constructor(container, params) {
params = Params.parse(params, { inhibitEvents: false,
width: null,
height: null,
fadeFactor: DEFAULT_FADE_FACTOR,
radialEffect: false,
});
params = Params.parse(params, {
inhibitEvents: false,
width: null,
height: null,
fadeFactor: DEFAULT_FADE_FACTOR,
radialEffect: false,
});
this._container = container;
this._children = container.get_children();
@@ -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 }));
}
}

View File

@@ -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._ripples = new Ripples.Ripples(0.5, 0.5, 'ripple-pointer-location');
this._ripples.addTo(Main.uiGroup);
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();

View File

@@ -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) {
return this._results[idx - this._offset].o;
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);

View File

@@ -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;
});

View File

@@ -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;

View File

@@ -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,13 +136,14 @@ 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,
enableSound: true,
showBanners: true,
forceExpanded: false,
showInLockScreen: true,
detailsInLockScreen: false
});
params = Params.parse(params, {
enable: true,
enableSound: true,
showBanners: true,
forceExpanded: false,
showInLockScreen: true,
detailsInLockScreen: false,
});
Object.getOwnPropertyNames(params).forEach(key => {
let desc = Object.getOwnPropertyDescriptor(params, key);
Object.defineProperty(this, `_${key}`, desc);
@@ -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,8 +1166,10 @@ 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._onNotificationLeftTimeout.bind(this));
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 {
this._notificationLeftTimeoutId = 0;
@@ -1345,13 +1347,13 @@ 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,
this._notificationTimeout.bind(this));
GLib.timeout_add(GLib.PRIORITY_DEFAULT, timeout,
this._notificationTimeout.bind(this));
GLib.Source.set_name_by_id(this._notificationTimeoutId, '[gnome-shell] this._notificationTimeout');
}
}

View File

@@ -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;
});

View File

@@ -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();
}

View File

@@ -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,9 +42,10 @@ 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;
let forFeedback = options.forFeedback;
@@ -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,15 +483,13 @@ var Overview = class {
if (this._shown) {
let shouldBeModal = !this._inXdndDrag;
if (shouldBeModal) {
if (!this._modal) {
if (Main.pushModal(this._overview,
{ actionMode: Shell.ActionMode.OVERVIEW })) {
this._modal = true;
} else {
this.hide();
return false;
}
if (shouldBeModal && !this._modal) {
let actionMode = Shell.ActionMode.OVERVIEW;
if (Main.pushModal(this._overview, { actionMode })) {
this._modal = true;
} else {
this.hide();
return false;
}
}
} else {

View File

@@ -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();
}

View File

@@ -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;
}

View File

@@ -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;

View File

@@ -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,8 +97,8 @@ 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._onTimeout.bind(this));
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');
}

View File

@@ -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,12 +67,13 @@ var PopupBaseMenuItem = GObject.registerClass({
}
}, class PopupBaseMenuItem extends St.BoxLayout {
_init(params) {
params = Params.parse (params, { reactive: true,
activate: true,
hover: true,
style_class: null,
can_focus: true
});
params = Params.parse (params, {
reactive: true,
activate: true,
hover: true,
style_class: null,
can_focus: true,
});
super._init({ style_class: 'popup-menu-item',
reactive: params.reactive,
track_hover: params.reactive,
@@ -333,9 +332,10 @@ 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;
}

View File

@@ -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

View File

@@ -94,9 +94,11 @@ class RunDialog extends ModalDialog.ModalDialog {
this._errorBox.hide();
this.setButtons([{ action: this.close.bind(this),
label: _("Close"),
key: Clutter.Escape }]);
this.setButtons([{
action: this.close.bind(this),
label: _("Close"),
key: Clutter.Escape,
}]);
this._pathCompleter = new Gio.FilenameCompleter();

View File

@@ -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,13 +429,14 @@ var ScreenShield = class {
this.actor = Main.layoutManager.screenShieldGroup;
this._lockScreenState = MessageTray.State.HIDDEN;
this._lockScreenGroup = new St.Widget({ x_expand: true,
y_expand: true,
reactive: true,
can_focus: true,
name: 'lockScreenGroup',
visible: false,
});
this._lockScreenGroup = new St.Widget({
x_expand: true,
y_expand: true,
reactive: true,
can_focus: true,
name: 'lockScreenGroup',
visible: false,
});
this._lockScreenGroup.connect('key-press-event',
this._onLockScreenKeyPress.bind(this));
this._lockScreenGroup.connect('scroll-event',
@@ -833,12 +833,14 @@ 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 = 0;
this.lock(false);
return GLib.SOURCE_REMOVE;
});
this._lockTimeoutId = GLib.timeout_add(
GLib.PRIORITY_DEFAULT,
lockTimeout,
() => {
this._lockTimeoutId = 0;
this.lock(false);
return GLib.SOURCE_REMOVE;
});
GLib.Source.set_name_by_id(this._lockTimeoutId, '[gnome-shell] this.lock');
}
@@ -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;
}

View File

@@ -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();

View File

@@ -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;
});

View File

@@ -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;
});

View File

@@ -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 {

View File

@@ -26,9 +26,10 @@ 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),
});
}
dialog.setButtons(buttons);
@@ -387,24 +388,26 @@ var ShellMountPasswordDialog = GObject.registerClass({
this._rememberChoice = null;
}
this._defaultButtons = [{ label: _("Cancel"),
action: this._onCancelButton.bind(this),
key: Clutter.Escape
},
{ label: _("Unlock"),
action: this._onUnlockButton.bind(this),
default: true
}];
this._defaultButtons = [{
label: _("Cancel"),
action: this._onCancelButton.bind(this),
key: Clutter.Escape,
}, {
label: _("Unlock"),
action: this._onUnlockButton.bind(this),
default: true,
}];
this._usesKeyfilesButtons = [{ label: _("Cancel"),
action: this._onCancelButton.bind(this),
key: Clutter.Escape
},
{ /* Translators: %s is the Disks application */
label: _("Open %s").format(disksApp.get_name()),
action: this._onOpenDisksButton.bind(this),
default: true
}];
this._usesKeyfilesButtons = [{
label: _("Cancel"),
action: this._onCancelButton.bind(this),
key: Clutter.Escape,
}, {
/* Translators: %s is the Disks application */
label: _("Open %s").format(disksApp.get_name()),
action: this._onOpenDisksButton.bind(this),
default: true,
}];
this.setButtons(this._defaultButtons);
}

View File

@@ -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');
}

View File

@@ -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 {

View File

@@ -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,13 +1073,14 @@ class NMWirelessDialog extends ModalDialog.ModalDialog {
this._resortItems();
} else {
network = { ssid: accessPoint.get_ssid(),
mode: accessPoint.mode,
security: this._getApSecurityType(accessPoint),
connections: [],
item: null,
accessPoints: [accessPoint]
};
network = {
ssid: accessPoint.get_ssid(),
mode: accessPoint.mode,
security: this._getApSecurityType(accessPoint),
connections: [],
item: null,
accessPoints: [accessPoint],
};
network.ssidText = ssidToLabel(network.ssid);
this._checkConnections(network, accessPoint);

View File

@@ -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`;

View File

@@ -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() {

View File

@@ -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,13 +141,15 @@ 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,
() => {
Main.osdWindowManager.hideAll();
this.opacity = 255;
this._initialDelayTimeoutId = 0;
return GLib.SOURCE_REMOVE;
});
this._initialDelayTimeoutId = GLib.timeout_add(
GLib.PRIORITY_DEFAULT,
POPUP_DELAY_TIMEOUT,
() => {
Main.osdWindowManager.hideAll();
this.opacity = 255;
this._initialDelayTimeoutId = 0;
return GLib.SOURCE_REMOVE;
});
GLib.Source.set_name_by_id(this._initialDelayTimeoutId, '[gnome-shell] Main.osdWindow.cancel');
return true;
}
@@ -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,14 +264,16 @@ 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._finish(global.get_current_time());
this._noModsTimeoutId = 0;
return GLib.SOURCE_REMOVE;
});
this._noModsTimeoutId = GLib.timeout_add(
GLib.PRIORITY_DEFAULT,
NO_MODS_TIMEOUT,
() => {
this._finish(global.get_current_time());
this._noModsTimeoutId = 0;
return GLib.SOURCE_REMOVE;
});
}
_popModal() {
@@ -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) {

View File

@@ -309,12 +309,10 @@ 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);
return page;

View File

@@ -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;
@@ -71,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;
}
@@ -281,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;
@@ -294,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();

View File

@@ -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)

View File

@@ -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);

View File

@@ -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;

View File

@@ -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) {
thumbnail.activate(time);
break;
}
}
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);
}
_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();

View File

@@ -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;

112
po/ca.po
View File

@@ -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"
@@ -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 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."
"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"
@@ -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"

View File

@@ -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-09-01 21:21+0000\n"
"PO-Revision-Date: 2019-09-02 08:52+0200\n"
"POT-Creation-Date: 2019-09-09 20:24+0000\n"
"PO-Revision-Date: 2019-09-11 18:00+0200\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: čeština <gnome-cs-list@gnome.org>\n"
"Language: cs\n"
@@ -769,28 +769,32 @@ msgstr "Časté"
msgid "All"
msgstr "Všechny"
#: js/ui/appDisplay.js:1751
msgid "Rename"
msgstr "Přejmenovat"
#. 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 "Otevřená 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 "Nové okno"
#: js/ui/appDisplay.js:2264
#: js/ui/appDisplay.js:2428
msgid "Launch using Dedicated Graphics Card"
msgstr "Spustit pomocí vyhrazené grafické karty"
#: 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 "Odstranit z oblíbených"
#: js/ui/appDisplay.js:2299
#: js/ui/appDisplay.js:2463
msgid "Add to Favorites"
msgstr "Přidat mezi oblíbené"
#: js/ui/appDisplay.js:2309 js/ui/panel.js:95
#: js/ui/appDisplay.js:2473 js/ui/panel.js:95
msgid "Show Details"
msgstr "Zobrazit podrobnosti"
@@ -820,7 +824,7 @@ msgstr "Sluchátka"
msgid "Headset"
msgstr "Sluchátka s 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"
@@ -1489,7 +1493,7 @@ msgstr "Zobrazit zdroj"
msgid "Web Page"
msgstr "Webová stránka"
#: js/ui/messageTray.js:1462
#: js/ui/messageTray.js:1461
msgid "System Information"
msgstr "Informace o systému"
@@ -1620,7 +1624,7 @@ msgstr[0] "%d nové upozornění"
msgstr[1] "%d nová upozornění"
msgstr[2] "%d nových upozornění"
#: 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 "Uzamknout"
@@ -1643,15 +1647,15 @@ msgstr "Nelze uzamknout obrazovku"
msgid "Lock was blocked by an application"
msgstr "Zamknutí bylo zablokováno některou z aplikací"
#: js/ui/search.js:647
#: js/ui/search.js:668
msgid "Searching…"
msgstr "Hledá se…"
#: js/ui/search.js:649
#: js/ui/search.js:670
msgid "No results."
msgstr "Žádné výsledky."
#: js/ui/search.js:773
#: js/ui/search.js:794
#, javascript-format
msgid "%d more"
msgid_plural "%d more"
@@ -2141,27 +2145,27 @@ msgstr "Vypnout"
msgid "Airplane Mode On"
msgstr "Režim „letadlo“ je zapnutý"
#: js/ui/status/system.js:201
#: js/ui/status/system.js:192
msgid "Switch User"
msgstr "Přepnout uživatele"
#: js/ui/status/system.js:213
#: js/ui/status/system.js:204
msgid "Log Out"
msgstr "Odhlásit se"
#: js/ui/status/system.js:225
#: js/ui/status/system.js:216
msgid "Account Settings"
msgstr "Nastavení účtu"
#: js/ui/status/system.js:254
#: js/ui/status/system.js:245
msgid "Orientation Lock"
msgstr "Zámek otočení"
#: js/ui/status/system.js:280
#: js/ui/status/system.js:271
msgid "Suspend"
msgstr "Uspat do paměti"
#: js/ui/status/system.js:290
#: js/ui/status/system.js:281
msgid "Power Off"
msgstr "Vypnout"
@@ -2199,11 +2203,11 @@ msgstr "Chyba ověření Thunderbolt"
msgid "Could not authorize the Thunderbolt device: %s"
msgstr "Nezdařilo se provést ověření zařízení Thunderbolt: %s"
#: js/ui/status/volume.js:128
#: js/ui/status/volume.js:129
msgid "Volume changed"
msgstr "Hlasitost změněna"
#: js/ui/status/volume.js:193
#: js/ui/status/volume.js:200
msgid "Volume"
msgstr "Hlasitost"
@@ -2256,22 +2260,22 @@ msgstr "Hledat"
msgid "“%s” is ready"
msgstr "Připraveno „%s“"
#: js/ui/windowManager.js:54
#: js/ui/windowManager.js:55
msgid "Do you want to keep these display settings?"
msgstr "Chcete zachovat nastavení displeje?"
#. 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 "Obnovit původní"
#: js/ui/windowManager.js:69
#: js/ui/windowManager.js:70
msgid "Keep Changes"
msgstr "Zachovat"
#: 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 +2285,7 @@ msgstr[2] "Nastavení se obnoví na původní 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"
@@ -2723,25 +2727,3 @@ msgstr[2] "%u vstupů"
#: subprojects/gvc/gvc-mixer-control.c:2736
msgid "System Sounds"
msgstr "Systémové zvuky"
#~ msgid ""
#~ "Keybinding that pauses and resumes all running tweens, for debugging "
#~ "purposes"
#~ msgstr ""
#~ "Klávesová zkratka k pozastavení a opětovnému spuštění všech běžících "
#~ "animací tweens; pro účely ladění"
#~ msgid "Which keyboard to use"
#~ msgstr "Která klávesnice se má používat"
#~ msgid "The type of keyboard to use."
#~ msgstr "Typ klávesnice, který se má používat."
#~ msgid "network-workgroup"
#~ msgstr "network-workgroup"
#~ msgid "toggle-switch-us"
#~ msgstr "toggle-switch-intl"
#~ msgid "evolution"
#~ msgstr "evolution"

108
po/de.po
View File

@@ -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
View File

@@ -9,8 +9,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell.master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2019-08-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
View File

@@ -9,8 +9,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2019-08-21 23:18+0000\n"
"PO-Revision-Date: 2019-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 "فهرست کردن حالت‌های ممکن"

View File

@@ -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"

View File

@@ -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"

117
po/hu.po
View File

@@ -10,9 +10,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-09-05 13:45+0000\n"
"PO-Revision-Date: 2019-09-07 20:24+0200\n"
"Last-Translator: Balázs Meskó <mesko.balazs at fsf dot hu>\n"
"POT-Creation-Date: 2019-09-11 17:13+0000\n"
"PO-Revision-Date: 2019-09-11 22:11+0200\n"
"Last-Translator: Balázs Úr <ur.balazs at fsf dot hu>\n"
"Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
@@ -93,16 +93,10 @@ msgstr ""
"EnableExtension és DisableExtension D-Bus metódusaival is manipulálhatja."
#: data/org.gnome.shell.gschema.xml.in:26
#| msgid "UUIDs of extensions to enable"
msgid "UUIDs of extensions to force disabling"
msgstr "A kényszerítetten letiltandó kiterjesztések UUID azonosítói"
#: 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 "
@@ -348,7 +342,6 @@ msgstr ""
"megjelenítve a váltón. Egyébként minden ablak fel lesz véve."
#: data/org.gnome.shell.gschema.xml.in:234
#| msgid "Location In Use"
msgid "Locations"
msgstr "Helyek"
@@ -365,7 +358,6 @@ msgid "Whether to fetch the current location or not"
msgstr "Lekérje-e a jelenlegi helyet"
#: data/org.gnome.shell.gschema.xml.in:253
#| msgid "Location In Use"
msgid "Location"
msgstr "Hely"
@@ -769,28 +761,32 @@ msgstr "Gyakori"
msgid "All"
msgstr "Összes"
#: js/ui/appDisplay.js:1751
msgid "Rename"
msgstr "Átnevezés"
#. 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 "Ablakok megnyitása"
#: js/ui/appDisplay.js:2252 js/ui/panel.js:84
#: js/ui/appDisplay.js:2416 js/ui/panel.js:84
msgid "New Window"
msgstr "Új ablak"
#: js/ui/appDisplay.js:2264
#: js/ui/appDisplay.js:2428
msgid "Launch using Dedicated Graphics Card"
msgstr "Futtatás a dedikált videokártyával"
#: 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 "Eltávolítás a Kedvencek közül"
#: js/ui/appDisplay.js:2299
#: js/ui/appDisplay.js:2463
msgid "Add to Favorites"
msgstr "Hozzáadás a Kedvencekhez"
#: js/ui/appDisplay.js:2309 js/ui/panel.js:95
#: js/ui/appDisplay.js:2473 js/ui/panel.js:95
msgid "Show Details"
msgstr "Részletek megjelenítése"
@@ -1481,7 +1477,7 @@ msgstr "Forrás megtekintése"
msgid "Web Page"
msgstr "Weblap"
#: js/ui/messageTray.js:1462
#: js/ui/messageTray.js:1461
msgid "System Information"
msgstr "Rendszerinformációk"
@@ -1610,7 +1606,7 @@ msgid_plural "%d new notifications"
msgstr[0] "%d új értesítés"
msgstr[1] "%d új értesítés"
#: 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 "Zárolás"
@@ -1633,15 +1629,15 @@ msgstr "Nem lehet zárolni"
msgid "Lock was blocked by an application"
msgstr "A zárolást egy alkalmazás blokkolta"
#: js/ui/search.js:647
#: js/ui/search.js:668
msgid "Searching…"
msgstr "Keresés…"
#: js/ui/search.js:649
#: js/ui/search.js:670
msgid "No results."
msgstr "Nincs találat."
#: js/ui/search.js:773
#: js/ui/search.js:794
#, javascript-format
msgid "%d more"
msgid_plural "%d more"
@@ -2125,27 +2121,27 @@ msgstr "Kikapcsolás"
msgid "Airplane Mode On"
msgstr "Repülőgép mód be"
#: js/ui/status/system.js:201
#: js/ui/status/system.js:192
msgid "Switch User"
msgstr "Felhasználóváltás"
#: js/ui/status/system.js:213
#: js/ui/status/system.js:204
msgid "Log Out"
msgstr "Kijelentkezés"
#: js/ui/status/system.js:225
#: js/ui/status/system.js:216
msgid "Account Settings"
msgstr "Fiókbeállítások"
#: js/ui/status/system.js:254
#: js/ui/status/system.js:245
msgid "Orientation Lock"
msgstr "Tájolás zárolása"
#: js/ui/status/system.js:280
#: js/ui/status/system.js:271
msgid "Suspend"
msgstr "Felfüggesztés"
#: js/ui/status/system.js:290
#: js/ui/status/system.js:281
msgid "Power Off"
msgstr "Kikapcsolás"
@@ -2398,13 +2394,11 @@ msgid "Enter extension information interactively"
msgstr "Adja meg a kiterjesztés információit interaktív módon"
#: src/extensions-tool/command-create.c:258
#| msgid "Disable user extensions"
msgid "Create a new extension"
msgstr "Új kiterjesztés létrehozása"
#: src/extensions-tool/command-create.c:275
#: src/extensions-tool/command-list.c:158
#| msgid "Unknown artist"
msgid "Unknown arguments"
msgstr "Ismeretlen argumentumok"
@@ -2413,7 +2407,6 @@ msgid "UUID, name and description are required"
msgstr "A UUID, név és leírás kötelező"
#: src/extensions-tool/command-disable.c:57
#| msgid "Disable user extensions"
msgid "Disable an extension"
msgstr "Kiterjesztés letiltása"
@@ -2436,12 +2429,10 @@ msgid "More than one UUID given"
msgstr "Több mint egy UUID lett megadva"
#: src/extensions-tool/command-enable.c:57
#| msgid "Disable user extensions"
msgid "Enable an extension"
msgstr "Kiterjesztés engedélyezése"
#: src/extensions-tool/command-info.c:79
#| msgid "No extensions installed"
msgid "Show extensions info"
msgstr "Kiterjesztésinformációk megjelenítése"
@@ -2454,12 +2445,10 @@ msgid "EXTENSION_BUNDLE"
msgstr "KITERJESZTÉSCSOMAG"
#: src/extensions-tool/command-install.c:184
#| msgid "UUIDs of extensions to enable"
msgid "Install an extension bundle"
msgstr "Kiterjesztéscsomag telepítése"
#: src/extensions-tool/command-install.c:201
#| msgid "No extensions installed"
msgid "No extension bundle specified"
msgstr "Nincs megadva kiterjesztéscsomag"
@@ -2468,22 +2457,18 @@ msgid "More than one extension bundle specified"
msgstr "Több mint egy kiterjesztéscsomag lett megadva"
#: src/extensions-tool/command-list.c:118
#| msgid "Shell Extensions"
msgid "Show user-installed extensions"
msgstr "Felhasználó által telepített kiterjesztések megjelenítése"
#: src/extensions-tool/command-list.c:121
#| msgid "Shell Extensions"
msgid "Show system-installed extensions"
msgstr "Rendszer által telepített kiterjesztések megjelenítése"
#: src/extensions-tool/command-list.c:124
#| msgid "Shell Extensions"
msgid "Show enabled extensions"
msgstr "Engedélyezett kiterjesztések megjelenítése"
#: src/extensions-tool/command-list.c:127
#| msgid "Disable user extensions"
msgid "Show disabled extensions"
msgstr "Letiltott kiterjesztések megjelenítése"
@@ -2492,12 +2477,10 @@ msgid "Show extensions with preferences"
msgstr "Beállításokkal rendelkező kiterjesztések megjelenítése"
#: src/extensions-tool/command-list.c:133
#| msgid "Visit extension homepage"
msgid "Print extension details"
msgstr "Kiterjesztés részleteinek kiírása"
#: src/extensions-tool/command-list.c:141
#| msgid "Disable user extensions"
msgid "List installed extensions"
msgstr "Telepített kiterjesztések felsorolása"
@@ -2559,12 +2542,10 @@ msgid "Opens extension preferences"
msgstr "Megnyitja a kiterjesztés beállításait"
#: src/extensions-tool/command-reset.c:57
#| msgid "Disable user extensions"
msgid "Reset an extension"
msgstr "Kiterjesztés visszaállítása"
#: src/extensions-tool/command-uninstall.c:72
#| msgid "Disable user extensions"
msgid "Uninstall an extension"
msgstr "Kiterjesztés eltávolítása"
@@ -2581,7 +2562,6 @@ msgid "Original author"
msgstr "Eredeti szerző"
#: src/extensions-tool/main.c:184
#| msgid "Print version"
msgid "Version"
msgstr "Verzió"
@@ -2593,7 +2573,7 @@ msgstr "Állapot"
msgid "“version” takes no arguments"
msgstr "a „version” nem fogad argumentumokat"
#: 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 "Használat:"
@@ -2601,80 +2581,71 @@ msgstr "Használat:"
msgid "Print version information and exit."
msgstr "Verzióinformációk kiírása és kilépés."
#: src/extensions-tool/main.c:240
#: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244
msgid "COMMAND"
msgstr "PARANCS"
#: src/extensions-tool/main.c:240
#: src/extensions-tool/main.c:244
msgid "[ARGS…]"
msgstr "[ARGUMENTUMOK…]"
#: src/extensions-tool/main.c:242
#: src/extensions-tool/main.c:246
msgid "Commands:"
msgstr "Parancsok:"
#: src/extensions-tool/main.c:243
#| msgid "Print version"
#: src/extensions-tool/main.c:247
msgid "Print help"
msgstr "Súgó kiírása"
#: src/extensions-tool/main.c:244 src/main.c:468
#: src/extensions-tool/main.c:248 src/main.c:468
msgid "Print version"
msgstr "Verzió kiírása"
#: src/extensions-tool/main.c:245
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:249
msgid "Enable extension"
msgstr "Kiterjesztés engedélyezése"
#: src/extensions-tool/main.c:246
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:250
msgid "Disable extension"
msgstr "Kiterjesztés letiltása"
#: src/extensions-tool/main.c:247
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:251
msgid "Reset extension"
msgstr "Kiterjesztés visszaállítása"
#: src/extensions-tool/main.c:248
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:252
msgid "Uninstall extension"
msgstr "Kiterjesztés eltávolítása"
#: src/extensions-tool/main.c:249
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:253
msgid "List extensions"
msgstr "Kiterjesztések felsorolása"
#: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251
#| msgid "No extensions installed"
#: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255
msgid "Show extension info"
msgstr "Kiterjesztésinformációk megjelenítése"
#: src/extensions-tool/main.c:252
#: src/extensions-tool/main.c:256
msgid "Open extension preferences"
msgstr "Kiterjesztésbeállítások megnyitása"
#: src/extensions-tool/main.c:253
#| msgid "Shell Extensions"
#: src/extensions-tool/main.c:257
msgid "Create extension"
msgstr "Kiterjesztés létrehozása"
#: src/extensions-tool/main.c:254
#| msgid "Shell Extensions"
#: src/extensions-tool/main.c:258
msgid "Package extension"
msgstr "Kiterjesztés csomagolása"
#: src/extensions-tool/main.c:255
#| msgid "UUIDs of extensions to enable"
#: src/extensions-tool/main.c:259
msgid "Install extension bundle"
msgstr "Kiterjesztéscsomag telepítése"
#: src/extensions-tool/main.c:257
#: src/extensions-tool/main.c:261
#, c-format
msgid "Use %s to get detailed help.\n"
msgstr "Részletes súgóhoz használja ezt: %s.\n"
#| msgid "Use %s to get detailed help.\n"
msgid "Use “%s” to get detailed help.\n"
msgstr "Részletes súgóhoz használja ezt: „%s”.\n"
#: src/main.c:474
msgid "Mode used by GDM for login screen"

108
po/id.po
View File

@@ -9,8 +9,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2019-08-21 23:18+0000\n"
"PO-Revision-Date: 2019-09-03 19:18+0700\n"
"POT-Creation-Date: 2019-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"
@@ -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"
@@ -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"
@@ -2570,7 +2574,7 @@ msgstr "Kondisi"
msgid "“version” takes no arguments"
msgstr "\"version\" tak menerima argumen"
#: 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 "Pemakaian:"
@@ -2578,80 +2582,80 @@ msgstr "Pemakaian:"
msgid "Print version information and exit."
msgstr "Cetak informasi versi dan keluar."
#: src/extensions-tool/main.c:240
#: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244
msgid "COMMAND"
msgstr "PERINTAH"
#: src/extensions-tool/main.c:240
#: src/extensions-tool/main.c:244
msgid "[ARGS…]"
msgstr "[ARG...]"
#: src/extensions-tool/main.c:242
#: src/extensions-tool/main.c:246
msgid "Commands:"
msgstr "Perintah:"
#: src/extensions-tool/main.c:243
#: src/extensions-tool/main.c:247
msgid "Print help"
msgstr "Cetak bantuan"
#: src/extensions-tool/main.c:244 src/main.c:460
#: src/extensions-tool/main.c:248 src/main.c:468
msgid "Print version"
msgstr "Versi Cetak"
#: src/extensions-tool/main.c:245
#: src/extensions-tool/main.c:249
msgid "Enable extension"
msgstr "Aktifkan ekstensi"
#: src/extensions-tool/main.c:246
#: src/extensions-tool/main.c:250
msgid "Disable extension"
msgstr "Nonaktifkan ekstensi"
#: src/extensions-tool/main.c:247
#: src/extensions-tool/main.c:251
msgid "Reset extension"
msgstr "Atur ulang ekstensi"
#: src/extensions-tool/main.c:248
#: src/extensions-tool/main.c:252
msgid "Uninstall extension"
msgstr "Hapus ekstensi"
#: src/extensions-tool/main.c:249
#: src/extensions-tool/main.c:253
msgid "List extensions"
msgstr "Daftar ekstensi"
#: 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 "Tampilkan info ekstensi"
#: src/extensions-tool/main.c:252
#: src/extensions-tool/main.c:256
msgid "Open extension preferences"
msgstr "Buka preferensi ekstensi"
#: src/extensions-tool/main.c:253
#: src/extensions-tool/main.c:257
msgid "Create extension"
msgstr "Buat ekstensi"
#: src/extensions-tool/main.c:254
#: src/extensions-tool/main.c:258
msgid "Package extension"
msgstr "Ekstensi Paket"
#: src/extensions-tool/main.c:255
#: src/extensions-tool/main.c:259
msgid "Install extension bundle"
msgstr "Pasang bundel ekstensi"
#: src/extensions-tool/main.c:257
#: src/extensions-tool/main.c:261
#, c-format
msgid "Use %s to get detailed help.\n"
msgstr "Gunakan %s untuk mendapatkan bantuan terperinci.\n"
msgid "Use %s to get detailed help.\n"
msgstr "Gunakan \"%s\" untuk mendapatkan bantuan terperinci.\n"
#: src/main.c:466
#: 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"

108
po/it.po
View File

@@ -12,8 +12,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-09-04 11:30+0200\n"
"POT-Creation-Date: 2019-09-11 17:13+0000\n"
"PO-Revision-Date: 2019-09-13 14:55+0200\n"
"Last-Translator: Milo Casagrande <milo@milo.name>\n"
"Language-Team: Italiano <gnome-it-list@gnome.org>\n"
"Language: it\n"
@@ -471,7 +471,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 "Frequenti"
msgid "All"
msgstr "Tutte"
#: js/ui/appDisplay.js:1751
msgid "Rename"
msgstr "Rinomina"
#. 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 "Finestre aperte"
#: js/ui/appDisplay.js:2252 js/ui/panel.js:84
#: js/ui/appDisplay.js:2416 js/ui/panel.js:84
msgid "New Window"
msgstr "Nuova finestra"
#: js/ui/appDisplay.js:2264
#: js/ui/appDisplay.js:2428
msgid "Launch using Dedicated Graphics Card"
msgstr "Lancia utilizzando scheda grafica dedicata"
#: 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 "Rimuovi dai preferiti"
#: js/ui/appDisplay.js:2299
#: js/ui/appDisplay.js:2463
msgid "Add to Favorites"
msgstr "Aggiungi ai preferiti"
#: 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 dettagli"
@@ -827,7 +831,7 @@ msgstr "Cuffie"
msgid "Headset"
msgstr "Cuffie con microfono"
#: 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 "Microfono"
@@ -1329,13 +1333,13 @@ msgid "Other users are logged in."
msgstr "Altri utenti sono collegati."
#. 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 (console)"
@@ -1492,7 +1496,7 @@ msgstr "Visualizza sorgente"
msgid "Web Page"
msgstr "Pagina web"
#: js/ui/messageTray.js:1462
#: js/ui/messageTray.js:1461
msgid "System Information"
msgstr "Informazione di sistema"
@@ -1621,7 +1625,7 @@ msgid_plural "%d new notifications"
msgstr[0] "%d nuova notifica"
msgstr[1] "%d nuove notifiche"
#: 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 "Blocca"
@@ -1644,15 +1648,15 @@ msgstr "Impossibile bloccare"
msgid "Lock was blocked by an application"
msgstr "Il blocco è stato impedito da un'applicazione"
#: js/ui/search.js:647
#: js/ui/search.js:668
msgid "Searching…"
msgstr "Ricerca…"
#: js/ui/search.js:649
#: js/ui/search.js:670
msgid "No results."
msgstr "Nessun risultato."
#: js/ui/search.js:773
#: js/ui/search.js:794
#, javascript-format
msgid "%d more"
msgid_plural "%d more"
@@ -2143,27 +2147,27 @@ msgstr "Spegni"
msgid "Airplane Mode On"
msgstr "Modalità aereo attivata"
#: js/ui/status/system.js:201
#: js/ui/status/system.js:192
msgid "Switch User"
msgstr "Cambia utente"
#: js/ui/status/system.js:213
#: js/ui/status/system.js:204
msgid "Log Out"
msgstr "Termina sessione"
#: js/ui/status/system.js:225
#: js/ui/status/system.js:216
msgid "Account Settings"
msgstr "Impostazioni account"
#: js/ui/status/system.js:254
#: js/ui/status/system.js:245
msgid "Orientation Lock"
msgstr "Blocca orientazione"
#: js/ui/status/system.js:280
#: js/ui/status/system.js:271
msgid "Suspend"
msgstr "Sospendi"
#: js/ui/status/system.js:290
#: js/ui/status/system.js:281
msgid "Power Off"
msgstr "Spegni"
@@ -2203,11 +2207,11 @@ msgstr "Errore autenticazione Thunderbolt"
msgid "Could not authorize the Thunderbolt device: %s"
msgstr "Impossibile autorizzare il dispositivo Thunderbolt: %s"
#: js/ui/status/volume.js:128
#: js/ui/status/volume.js:129
msgid "Volume changed"
msgstr "Volume modificato"
#: js/ui/status/volume.js:193
#: js/ui/status/volume.js:200
msgid "Volume"
msgstr "Volume"
@@ -2261,22 +2265,22 @@ msgstr "Cerca"
msgid "“%s” is ready"
msgstr "«%s» è pronto"
#: js/ui/windowManager.js:54
#: js/ui/windowManager.js:55
msgid "Do you want to keep these display settings?"
msgstr "Mantenere queste impostazioni per il monitor?"
#. 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 "Ripristina impostazioni"
#: js/ui/windowManager.js:69
#: js/ui/windowManager.js:70
msgid "Keep Changes"
msgstr "Mantieni modifiche"
#: 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"
@@ -2285,7 +2289,7 @@ msgstr[1] "Le modifiche alle impostazioni saranno ripristinate tra %d secondi"
#. 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"
@@ -2599,7 +2603,7 @@ msgstr "Stato"
msgid "“version” takes no arguments"
msgstr "«version» non accetta alcun argomento"
#: 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:"
@@ -2607,80 +2611,80 @@ msgstr "Uso:"
msgid "Print version information and exit."
msgstr "Stampa informazioni sulla versione ed esce"
#: 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 "[ARG…]"
#: src/extensions-tool/main.c:242
#: src/extensions-tool/main.c:246
msgid "Commands:"
msgstr "Comandi:"
#: src/extensions-tool/main.c:243
#: src/extensions-tool/main.c:247
msgid "Print help"
msgstr "Stampa l'aiuto"
#: src/extensions-tool/main.c:244 src/main.c:460
#: src/extensions-tool/main.c:248 src/main.c:468
msgid "Print version"
msgstr "Stampa la versione"
#: src/extensions-tool/main.c:245
#: src/extensions-tool/main.c:249
msgid "Enable extension"
msgstr "Abilita estensione"
#: src/extensions-tool/main.c:246
#: src/extensions-tool/main.c:250
msgid "Disable extension"
msgstr "Disabilita estensione"
#: src/extensions-tool/main.c:247
#: src/extensions-tool/main.c:251
msgid "Reset extension"
msgstr "Ripristina estensione"
#: src/extensions-tool/main.c:248
#: src/extensions-tool/main.c:252
msgid "Uninstall extension"
msgstr "Rimuovi estensione"
#: src/extensions-tool/main.c:249
#: src/extensions-tool/main.c:253
msgid "List extensions"
msgstr "Elenca estensioni"
#: 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 informazioni sull'estensione"
#: src/extensions-tool/main.c:252
#: src/extensions-tool/main.c:256
msgid "Open extension preferences"
msgstr "Apri preferenze estensione"
#: src/extensions-tool/main.c:253
#: src/extensions-tool/main.c:257
msgid "Create extension"
msgstr "Crea estensione"
#: src/extensions-tool/main.c:254
#: src/extensions-tool/main.c:258
msgid "Package extension"
msgstr "Crea pacchetto estensione"
#: src/extensions-tool/main.c:255
#: src/extensions-tool/main.c:259
msgid "Install extension bundle"
msgstr "Installa bundle estensioni"
#: src/extensions-tool/main.c:257
#: src/extensions-tool/main.c:261
#, c-format
msgid "Use %s to get detailed help.\n"
msgstr "Usare %s per maggiori informazioni.\n"
msgid "Use %s to get detailed help.\n"
msgstr "Usare «%s» per maggiori informazioni.\n"
#: src/main.c:466
#: src/main.c:474
msgid "Mode used by GDM for login screen"
msgstr "Modalità usata da GDM per la schermata d'accesso"
#: src/main.c:472
#: src/main.c:480
msgid "Use a specific mode, e.g. “gdm” for login screen"
msgstr "Usa una modalità specifica, per es. «gdm» per la schermata d'accesso"
#: src/main.c:478
#: src/main.c:486
msgid "List possible modes"
msgstr "Elenca le modalità possibili"

139
po/lt.po
View File

@@ -10,8 +10,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2019-08-21 23:18+0000\n"
"PO-Revision-Date: 2019-09-01 22:32+0300\n"
"POT-Creation-Date: 2019-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"
@@ -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"
@@ -761,28 +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:2233 js/ui/panel.js:77
#: js/ui/appDisplay.js:2397 js/ui/panel.js:77
msgid "Open Windows"
msgstr "Atverti langai"
#: js/ui/appDisplay.js:2252 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:2264
#: js/ui/appDisplay.js:2428
msgid "Launch using Dedicated Graphics Card"
msgstr "Paleisti naudojant dedikuotą grafikos kortą"
#: js/ui/appDisplay.js:2293 js/ui/dash.js:240
#: js/ui/appDisplay.js:2457 js/ui/dash.js:240
msgid "Remove from Favorites"
msgstr "Pašalinti iš mėgstamų"
#: js/ui/appDisplay.js:2299
#: js/ui/appDisplay.js:2463
msgid "Add to Favorites"
msgstr "Pridėti prie mėgstamų"
#: js/ui/appDisplay.js:2309 js/ui/panel.js:95
#: js/ui/appDisplay.js:2473 js/ui/panel.js:95
msgid "Show Details"
msgstr "Rodyti detalią informaciją"
@@ -812,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"
@@ -1317,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ė)"
@@ -1476,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"
@@ -1607,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"
@@ -1630,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"
@@ -2126,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"
@@ -2184,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"
@@ -2241,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"
@@ -2266,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"
@@ -2399,13 +2404,11 @@ msgid "Enter extension information interactively"
msgstr "Įveskite plėtinio informaciją interaktyviai"
#: src/extensions-tool/command-create.c:258
#| msgid "Disable user extensions"
msgid "Create a new extension"
msgstr "Sukurti naują plėtinį"
#: src/extensions-tool/command-create.c:275
#: src/extensions-tool/command-list.c:158
#| msgid "Unknown artist"
msgid "Unknown arguments"
msgstr "Nežinomi argumentai"
@@ -2414,7 +2417,6 @@ msgid "UUID, name and description are required"
msgstr "UUID, pavadinimas ir aprašymas yra būtini"
#: src/extensions-tool/command-disable.c:57
#| msgid "Disable user extensions"
msgid "Disable an extension"
msgstr "Išjungti plėtinį"
@@ -2437,12 +2439,10 @@ msgid "More than one UUID given"
msgstr "Pateiktas daugiau nei vienas UUID"
#: src/extensions-tool/command-enable.c:57
#| msgid "Disable user extensions"
msgid "Enable an extension"
msgstr "Išjungti plėtinį"
#: src/extensions-tool/command-info.c:79
#| msgid "No extensions installed"
msgid "Show extensions info"
msgstr "Rodyti plėtinio informaciją"
@@ -2455,12 +2455,10 @@ msgid "EXTENSION_BUNDLE"
msgstr "PLĖTINIO_RYŠULYS"
#: src/extensions-tool/command-install.c:184
#| msgid "UUIDs of extensions to enable"
msgid "Install an extension bundle"
msgstr "Įdiegti plėtinio ryšulį"
#: src/extensions-tool/command-install.c:201
#| msgid "No extensions installed"
msgid "No extension bundle specified"
msgstr "Nenurodytas plėtinio ryšulys"
@@ -2469,37 +2467,30 @@ msgid "More than one extension bundle specified"
msgstr "Nurodytas daugiau nei vienas plėtinio ryšulys"
#: src/extensions-tool/command-list.c:118
#| msgid "Shell Extensions"
msgid "Show user-installed extensions"
msgstr "Rodyti naudotojo įdiegtus plėtinius"
#: src/extensions-tool/command-list.c:121
#| msgid "Shell Extensions"
msgid "Show system-installed extensions"
msgstr "Rodyti sistemoje įdiegtus plėtinius"
#: src/extensions-tool/command-list.c:124
#| msgid "Shell Extensions"
msgid "Show enabled extensions"
msgstr "Rodyti įjungtus plėtinius"
#: src/extensions-tool/command-list.c:127
#| msgid "Disable user extensions"
msgid "Show disabled extensions"
msgstr "Rodyti išjungtus plėtinius"
#: src/extensions-tool/command-list.c:130
#| msgid "GNOME Shell Extension Preferences"
msgid "Show extensions with preferences"
msgstr "Rodyti plėtinius su nuostatomis"
#: src/extensions-tool/command-list.c:133
#| msgid "Visit extension homepage"
msgid "Print extension details"
msgstr "Atspausdinti plėtinio informaciją"
#: src/extensions-tool/command-list.c:141
#| msgid "Disable user extensions"
msgid "List installed extensions"
msgstr "Išvardinti įdiegtus plėtinius"
@@ -2557,17 +2548,14 @@ msgid "More than one source directory specified"
msgstr "Nurodytas daugiau nei vienas kodo aplankas"
#: src/extensions-tool/command-prefs.c:90
#| msgid "GNOME Shell Extension Preferences"
msgid "Opens extension preferences"
msgstr "Atveria plėtinio nuostatas"
#: src/extensions-tool/command-reset.c:57
#| msgid "Disable user extensions"
msgid "Reset an extension"
msgstr "Atstatyti plėtinį"
#: src/extensions-tool/command-uninstall.c:72
#| msgid "Disable user extensions"
msgid "Uninstall an extension"
msgstr "Išdiegti plėtinį"
@@ -2584,7 +2572,6 @@ msgid "Original author"
msgstr "Pradinis autorius"
#: src/extensions-tool/main.c:184
#| msgid "Print version"
msgid "Version"
msgstr "Versija"
@@ -2596,7 +2583,7 @@ msgstr "Būsena"
msgid "“version” takes no arguments"
msgstr "„version“ nepriima 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 "Naudojimas:"
@@ -2604,91 +2591,81 @@ msgstr "Naudojimas:"
msgid "Print version information and exit."
msgstr "Atspausdinti versijos informaciją ir išeiti."
#: src/extensions-tool/main.c:240
#: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244
msgid "COMMAND"
msgstr "KOMANDA"
#: src/extensions-tool/main.c:240
#: src/extensions-tool/main.c:244
msgid "[ARGS…]"
msgstr "[ARG…]"
#: src/extensions-tool/main.c:242
#: src/extensions-tool/main.c:246
msgid "Commands:"
msgstr "Komandos:"
#: src/extensions-tool/main.c:243
#| msgid "Print version"
#: src/extensions-tool/main.c:247
msgid "Print help"
msgstr "Atspausdinti žinyną"
#: src/extensions-tool/main.c:244 src/main.c:460
#: src/extensions-tool/main.c:248 src/main.c:468
msgid "Print version"
msgstr "Išvesti versijos numerį"
#: src/extensions-tool/main.c:245
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:249
msgid "Enable extension"
msgstr "Įjungti ]plėtinį"
#: src/extensions-tool/main.c:246
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:250
msgid "Disable extension"
msgstr "Išjungti plėtinį"
#: src/extensions-tool/main.c:247
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:251
msgid "Reset extension"
msgstr "Atstatyti plėtinį"
#: src/extensions-tool/main.c:248
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:252
msgid "Uninstall extension"
msgstr "Išdiegti plėtinį"
#: src/extensions-tool/main.c:249
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:253
msgid "List extensions"
msgstr "Išvardinti plėtinius"
#: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251
#| msgid "No extensions installed"
#: 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:252
#| msgid "GNOME Shell Extension Preferences"
#: src/extensions-tool/main.c:256
msgid "Open extension preferences"
msgstr "Atverti plėtinio nuostatas"
#: src/extensions-tool/main.c:253
#| msgid "Shell Extensions"
#: src/extensions-tool/main.c:257
msgid "Create extension"
msgstr "Sukurti plėtinį"
#: src/extensions-tool/main.c:254
#| msgid "Shell Extensions"
#: src/extensions-tool/main.c:258
msgid "Package extension"
msgstr "Supakuoti plėtinį"
#: src/extensions-tool/main.c:255
#| msgid "UUIDs of extensions to enable"
#: src/extensions-tool/main.c:259
msgid "Install extension bundle"
msgstr "Įdiegti plėtinio ryšulį"
#: src/extensions-tool/main.c:257
#: src/extensions-tool/main.c:261
#, c-format
msgid "Use %s to get detailed help.\n"
msgstr "Detalesnį žinyną gausite panaudoję %s\n"
#| 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:466
#: src/main.c:474
msgid "Mode used by GDM for login screen"
msgstr "Veiksena, naudojama GDM prisijungimo ekrane"
#: src/main.c:472
#: 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:478
#: src/main.c:486
msgid "List possible modes"
msgstr "Išvardinti galimas veiksenas"

108
po/pl.po
View File

@@ -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"

View File

@@ -15,7 +15,7 @@
# Georges Basile Stavracas Neto <georges.stavracas@gmail.com>, 2014.
# Felipe Braga <fbobraga@gmail.com>, 2015.
# Artur de Aquino Morais <artur.morais93@outlook.com>, 2016.
# Enrico Nicoletto <liverig@gmail.com>, 2013-2018.
# Enrico Nicoletto <liverig@gmail.com>, 2013-2019.
# Bruno Lopes da Silva <brunolopesbldsb@gmail.com>, 2018.
# Rafael Fontenelle <rafaelff@gnome.org>, 2013-2019.
#
@@ -23,16 +23,16 @@ 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-09-03 16:23-0300\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"POT-Creation-Date: 2019-09-11 17:13+0000\n"
"PO-Revision-Date: 2019-09-12 08:34-0300\n"
"Last-Translator: Enrico Nicoletto <enrico.nicoletto@src.gnome.org>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1)\n"
"X-Generator: Gtranslator 3.32.0\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 2.2.3\n"
"X-Project-Style: gnome\n"
#: data/50-gnome-shell-system.xml:6
@@ -362,7 +362,6 @@ msgstr ""
"trabalho atual. Caso contrário, todos as janelas serão incluídas."
#: data/org.gnome.shell.gschema.xml.in:234
#| msgid "Location In Use"
msgid "Locations"
msgstr "Localizações"
@@ -379,7 +378,6 @@ msgid "Whether to fetch the current location or not"
msgstr "Se deve-se obter a localização atual ou não"
#: data/org.gnome.shell.gschema.xml.in:253
#| msgid "Location In Use"
msgid "Location"
msgstr "Localização"
@@ -479,7 +477,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"
@@ -783,28 +781,32 @@ msgstr "Frequente"
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 janelas"
#: js/ui/appDisplay.js:2252 js/ui/panel.js:84
#: js/ui/appDisplay.js:2416 js/ui/panel.js:84
msgid "New Window"
msgstr "Nova janela"
#: js/ui/appDisplay.js:2264
#: js/ui/appDisplay.js:2428
msgid "Launch using Dedicated Graphics Card"
msgstr "Inicia usando placa de vídeo 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 "Remover dos favoritos"
#: js/ui/appDisplay.js:2299
#: js/ui/appDisplay.js:2463
msgid "Add to Favorites"
msgstr "Adicionar 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 detalhes"
@@ -834,7 +836,7 @@ msgstr "Fones de ouvido"
msgid "Headset"
msgstr "Fone de ouvido com microfone"
#: 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 "Microfone"
@@ -1336,13 +1338,13 @@ msgid "Other users are logged in."
msgstr "Outros usuários estão com sessão aberta."
#. 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 (console)"
@@ -1497,7 +1499,7 @@ msgstr "Ver fonte"
msgid "Web Page"
msgstr "Página web"
#: js/ui/messageTray.js:1462
#: js/ui/messageTray.js:1461
msgid "System Information"
msgstr "Informações do sistema"
@@ -1626,7 +1628,7 @@ msgid_plural "%d new notifications"
msgstr[0] "%d nova notificação"
msgstr[1] "%d novas notificações"
#: 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"
@@ -1649,15 +1651,15 @@ msgstr "Não foi possível bloquear"
msgid "Lock was blocked by an application"
msgstr "O bloqueio foi impedido por um aplicativo"
#: js/ui/search.js:647
#: js/ui/search.js:668
msgid "Searching…"
msgstr "Pesquisando…"
#: js/ui/search.js:649
#: js/ui/search.js:670
msgid "No results."
msgstr "Nenhum resultado."
#: js/ui/search.js:773
#: js/ui/search.js:794
#, javascript-format
msgid "%d more"
msgid_plural "%d more"
@@ -2143,27 +2145,27 @@ msgstr "Desativar"
msgid "Airplane Mode On"
msgstr "Modo avião ligado"
#: js/ui/status/system.js:201
#: js/ui/status/system.js:192
msgid "Switch User"
msgstr "Alternar usuário"
#: js/ui/status/system.js:213
#: js/ui/status/system.js:204
msgid "Log Out"
msgstr "Encerrar sessão"
#: js/ui/status/system.js:225
#: js/ui/status/system.js:216
msgid "Account Settings"
msgstr "Configurações de conta"
#: js/ui/status/system.js:254
#: js/ui/status/system.js:245
msgid "Orientation Lock"
msgstr "Bloqueio de orientação"
#: 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 "Desligar"
@@ -2203,11 +2205,11 @@ msgstr "Erro de autorização de thunderbolt"
msgid "Could not authorize the Thunderbolt device: %s"
msgstr "Não foi possível autorizar o dispositivo Thunderbolt: %s"
#: js/ui/status/volume.js:128
#: js/ui/status/volume.js:129
msgid "Volume changed"
msgstr "Volume alterado"
#: js/ui/status/volume.js:193
#: js/ui/status/volume.js:200
msgid "Volume"
msgstr "Volume"
@@ -2262,22 +2264,22 @@ msgstr "“%s” está pronto"
# Título de janela de confirmação; Se grande demais, pode ser exibida com "..."
# Vide: https://bugzilla.gnome.org/show_bug.cgi?id=786331
#: js/ui/windowManager.js:54
#: js/ui/windowManager.js:55
msgid "Do you want to keep these display settings?"
msgstr "Deseja manter essas configurações da tela?"
#. 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 configurações"
#: js/ui/windowManager.js:69
#: js/ui/windowManager.js:70
msgid "Keep Changes"
msgstr "Manter alterações"
#: 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 +2288,7 @@ msgstr[1] "Alterações nas configurações serão revertidas em %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"
@@ -2420,13 +2422,11 @@ msgid "Enter extension information interactively"
msgstr "Insira as informações da extensão interativamente"
#: src/extensions-tool/command-create.c:258
#| msgid "Disable user extensions"
msgid "Create a new extension"
msgstr "Cria uma nova extensão"
#: src/extensions-tool/command-create.c:275
#: src/extensions-tool/command-list.c:158
#| msgid "Unknown artist"
msgid "Unknown arguments"
msgstr "Argumentos desconhecidos"
@@ -2435,7 +2435,6 @@ msgid "UUID, name and description are required"
msgstr "UUID, nome e descrição são necessários"
#: src/extensions-tool/command-disable.c:57
#| msgid "Disable user extensions"
msgid "Disable an extension"
msgstr "Desabilita uma extensão"
@@ -2458,12 +2457,10 @@ msgid "More than one UUID given"
msgstr "Mais de um UUID fornecido"
#: src/extensions-tool/command-enable.c:57
#| msgid "Disable user extensions"
msgid "Enable an extension"
msgstr "Habilita uma extensão"
#: src/extensions-tool/command-info.c:79
#| msgid "No extensions installed"
msgid "Show extensions info"
msgstr "Mostra informações das extensões"
@@ -2476,12 +2473,10 @@ msgid "EXTENSION_BUNDLE"
msgstr "PACOTE_EXTENSÃO"
#: src/extensions-tool/command-install.c:184
#| msgid "UUIDs of extensions to enable"
msgid "Install an extension bundle"
msgstr "Instala um pacote de extensão"
#: src/extensions-tool/command-install.c:201
#| msgid "No extensions installed"
msgid "No extension bundle specified"
msgstr "Nenhum pacote de extensão especificado"
@@ -2490,37 +2485,30 @@ msgid "More than one extension bundle specified"
msgstr "Mais de um pacote de extensão especificado"
#: src/extensions-tool/command-list.c:118
#| msgid "Shell Extensions"
msgid "Show user-installed extensions"
msgstr "Mostra extensões instaladas pelo usuário"
#: src/extensions-tool/command-list.c:121
#| msgid "Shell Extensions"
msgid "Show system-installed extensions"
msgstr "Mostra extensões instaladas pelo sistema"
#: src/extensions-tool/command-list.c:124
#| msgid "Shell Extensions"
msgid "Show enabled extensions"
msgstr "Mostra extensões habilitadas"
#: src/extensions-tool/command-list.c:127
#| msgid "Disable user extensions"
msgid "Show disabled extensions"
msgstr "Mostra extensões desabilitadas"
#: src/extensions-tool/command-list.c:130
#| msgid "GNOME Shell Extension Preferences"
msgid "Show extensions with preferences"
msgstr "Mostra extensões com preferências"
#: src/extensions-tool/command-list.c:133
#| msgid "Visit extension homepage"
msgid "Print extension details"
msgstr "Mostra detalhes da extensão"
#: src/extensions-tool/command-list.c:141
#| msgid "Disable user extensions"
msgid "List installed extensions"
msgstr "Lista extensões instaladas"
@@ -2578,17 +2566,14 @@ msgid "More than one source directory specified"
msgstr "Mais de um diretório fonte especificado"
#: src/extensions-tool/command-prefs.c:90
#| msgid "GNOME Shell Extension Preferences"
msgid "Opens extension preferences"
msgstr "Abre as preferências da extensão"
#: src/extensions-tool/command-reset.c:57
#| msgid "Disable user extensions"
msgid "Reset an extension"
msgstr "Redefine uma extensão"
#: src/extensions-tool/command-uninstall.c:72
#| msgid "Disable user extensions"
msgid "Uninstall an extension"
msgstr "Desinstala uma extensão"
@@ -2605,7 +2590,6 @@ msgid "Original author"
msgstr "Autor original"
#: src/extensions-tool/main.c:184
#| msgid "Print version"
msgid "Version"
msgstr "Versão"
@@ -2617,7 +2601,7 @@ msgstr "Estado"
msgid "“version” takes no arguments"
msgstr "“version” não aceita 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:"
@@ -2625,92 +2609,81 @@ msgstr "Uso:"
msgid "Print version information and exit."
msgstr "Exibe as informações da versão e sai."
#: 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
#| msgid "Print version"
#: src/extensions-tool/main.c:247
msgid "Print help"
msgstr "Exibe essa 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 "Exibe a versão"
#: src/extensions-tool/main.c:245
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:249
msgid "Enable extension"
msgstr "Habilita extensão"
#: src/extensions-tool/main.c:246
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:250
msgid "Disable extension"
msgstr "Desabilita extensão"
#: src/extensions-tool/main.c:247
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:251
msgid "Reset extension"
msgstr "Redefine extensão"
#: src/extensions-tool/main.c:248
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:252
msgid "Uninstall extension"
msgstr "Desinstala extensão"
#: src/extensions-tool/main.c:249
#| msgid "Disable user extensions"
#: src/extensions-tool/main.c:253
msgid "List extensions"
msgstr "Lista extensões"
#: src/extensions-tool/main.c:250 src/extensions-tool/main.c:251
#| msgid "No extensions installed"
#: src/extensions-tool/main.c:254 src/extensions-tool/main.c:255
msgid "Show extension info"
msgstr "Mostra informações de extensão"
#: src/extensions-tool/main.c:252
#| msgid "GNOME Shell Extension Preferences"
#: src/extensions-tool/main.c:256
msgid "Open extension preferences"
msgstr "Abre preferências de extensão"
#: src/extensions-tool/main.c:253
#| msgid "Shell Extensions"
#: src/extensions-tool/main.c:257
msgid "Create extension"
msgstr "Cria extensão"
#: src/extensions-tool/main.c:254
#| msgid "Shell Extensions"
#: src/extensions-tool/main.c:258
msgid "Package extension"
msgstr "Empacota extensão"
#: src/extensions-tool/main.c:255
#| msgid "UUIDs of extensions to enable"
#: src/extensions-tool/main.c:259
msgid "Install extension bundle"
msgstr "Instala pacote de extensão"
#: 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 obter ajuda detalhada.\n"
msgid "Use %s to get detailed help.\n"
msgstr "Use %s para obter ajuda detalhada.\n"
#: src/main.c:466
#: src/main.c:474
msgid "Mode used by GDM for login screen"
msgstr "Modo usado pelo GDM para a tela de início de sessão"
#: src/main.c:472
#: src/main.c:480
msgid "Use a specific mode, e.g. “gdm” for login screen"
msgstr ""
"Utilizar um modo específico, ex.: “gdm” para a tela de início de sessão"
#: src/main.c:478
#: src/main.c:486
msgid "List possible modes"
msgstr "Listar modos possíveis"

108
po/ro.po
View File

@@ -10,8 +10,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
"POT-Creation-Date: 2019-08-21 23:18+0000\n"
"PO-Revision-Date: 2019-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"

1339
po/sr.po

File diff suppressed because it is too large Load Diff

108
po/sv.po
View File

@@ -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"

262
po/tr.po
View File

@@ -17,7 +17,7 @@ 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-09-05 17:18+0000\n"
"POT-Creation-Date: 2019-09-12 00:13+0000\n"
"PO-Revision-Date: 2019-09-07 10:16+0300\n"
"Last-Translator: Emin Tufan Çetin <etcetin@gmail.com>\n"
"Language-Team: Türkçe <gnome-turk@gnome.org>\n"
@@ -53,7 +53,8 @@ msgstr "Tüm uygulamaları göster"
msgid "Open the application menu"
msgstr "Uygulama menüsünü aç"
#: data/gnome-shell-extension-prefs.desktop.in.in:4 js/extensionPrefs/main.js:211
#: data/gnome-shell-extension-prefs.desktop.in.in:4
#: js/extensionPrefs/main.js:211
msgid "Shell Extensions"
msgstr "Kabuk Uzantıları"
@@ -94,9 +95,10 @@ msgid ""
"DisableExtension D-Bus methods on org.gnome.Shell."
msgstr ""
"GNOME Kabuğu uzantılarında UUID adlı bir özellik bulunur; bu anahtar, "
"yüklenmesi gereken uzantıları listeler. Yüklenmesi istenen her tür uzantının bu "
"listede olması gerekir. Ayrıca bu listeyi, org.gnome.Shell üzerindeki "
"EnableExtension ve DisableExtension DBus yöntemleri ile de değiştirebilirsiniz."
"yüklenmesi gereken uzantıları listeler. Yüklenmesi istenen her tür uzantının "
"bu listede olması gerekir. Ayrıca bu listeyi, org.gnome.Shell üzerindeki "
"EnableExtension ve DisableExtension DBus yöntemleri ile de "
"değiştirebilirsiniz."
#: data/org.gnome.shell.gschema.xml.in:26
msgid "UUIDs of extensions to force disabling"
@@ -110,11 +112,12 @@ msgid ""
"methods on org.gnome.Shell. This key takes precedence over the “enabled-"
"extensions” setting."
msgstr ""
"GNOME Kabuğu uzantılarında UUID adlı bir özellik bulunur; bu anahtar, geçerli "
"kipin bir parçası olarak yüklenmiş olsa bile devre dışı bırakılması gereken "
"uzantıları listeler. Bu listeyi, org.gnome.Shell üzerindeki EnableExtension ve "
"DisableExtension D-Bus yöntemleriyle de değiştirebilirsiniz. Bu anahtar "
"“enabled-extensions” ayarına göre önceliklidir."
"GNOME Kabuğu uzantılarında UUID adlı bir özellik bulunur; bu anahtar, "
"geçerli kipin bir parçası olarak yüklenmiş olsa bile devre dışı bırakılması "
"gereken uzantıları listeler. Bu listeyi, org.gnome.Shell üzerindeki "
"EnableExtension ve DisableExtension D-Bus yöntemleriyle de "
"değiştirebilirsiniz. Bu anahtar “enabled-extensions” ayarına göre "
"önceliklidir."
#: data/org.gnome.shell.gschema.xml.in:37
msgid "Disable user extensions"
@@ -134,9 +137,9 @@ msgstr "Uzantının sürüm uyumu doğrulamasını devre dışı bırak"
#: data/org.gnome.shell.gschema.xml.in:46
msgid ""
"GNOME Shell will only load extensions that claim to support the current running "
"version. Enabling this option will disable this check and try to load all "
"extensions regardless of the versions they claim to support."
"GNOME Shell will only load extensions that claim to support the current "
"running version. Enabling this option will disable this check and try to "
"load all extensions regardless of the versions they claim to support."
msgstr ""
"GNOME Kabuğu yalnızca şu andaki çalışan sürümü desteklediklerini ileri süren "
"uzantıları yükleyecektir. Bu seçeneği etkinleştirmek bu denetimi devre dışı "
@@ -184,37 +187,41 @@ msgstr ""
"gizlenmesini önler."
#: data/org.gnome.shell.gschema.xml.in:86
msgid "Whether to remember password for mounting encrypted or remote filesystems"
msgstr "Şifreli ya da uzak dosya sistemlerini bağlamak için parolanın anımsanması"
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr ""
"Şifreli ya da uzak dosya sistemlerini bağlamak için parolanın anımsanması"
#: data/org.gnome.shell.gschema.xml.in:87
msgid ""
"The shell will request a password when an encrypted device or a remote "
"filesystem is mounted. If the password can be saved for future use a “Remember "
"Password” checkbox will be present. This key sets the default state of the "
"checkbox."
"filesystem is mounted. If the password can be saved for future use a "
"“Remember Password” checkbox will be present. This key sets the default "
"state of the checkbox."
msgstr ""
"Kabuk, şifreli bir aygıt ya da uzak dosya sistemi bağlandığında parola "
"isteyecek. Eğer parola gelecekte kullanılmak üzere kaydedilebiliyorsa, "
"“Parolayı Anımsa” onay kutusu sunulacak. Bu anahtar, onay kutusunun öntanımlı "
"durumunu belirler."
"“Parolayı Anımsa” onay kutusu sunulacak. Bu anahtar, onay kutusunun "
"öntanımlı durumunu belirler."
#: data/org.gnome.shell.gschema.xml.in:96
msgid "Whether the default Bluetooth adapter had set up devices associated to it"
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Öntanımlı Bluetooth bağdaştırıcının ayarlanmış ilişkili aygıtlara sahip olması"
"Öntanımlı Bluetooth bağdaştırıcının ayarlanmış ilişkili aygıtlara sahip "
"olması"
#: data/org.gnome.shell.gschema.xml.in:97
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default adapter. "
"This will be reset if the default adapter is ever seen not to have devices "
"associated to it."
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"Kabuk, yalnızca gücü açık bir Bluetooth bağdaştırıcı varsa ya da öntanımlı "
"bağdaştırıcı ile ilişkili olarak ayarlanmış aygıtlar varsa bir Bluetooth menü "
"ögesi gösterecektir. Eğer öntanımlı bağdaştırıcıyla ilşkili aygıtların olmadığı "
"görülecek olursa bu durum sıfırlanacaktır."
"bağdaştırıcı ile ilişkili olarak ayarlanmış aygıtlar varsa bir Bluetooth "
"menü ögesi gösterecektir. Eğer öntanımlı bağdaştırıcıyla ilşkili aygıtların "
"olmadığı görülecek olursa bu durum sıfırlanacaktır."
#: data/org.gnome.shell.gschema.xml.in:106
msgid "Enable introspection API"
@@ -307,14 +314,15 @@ msgstr "Uygulama 8ʼe geç"
msgid "Switch to application 9"
msgstr "Uygulama 9ʼa geç"
#: data/org.gnome.shell.gschema.xml.in:196 data/org.gnome.shell.gschema.xml.in:223
#: data/org.gnome.shell.gschema.xml.in:196
#: data/org.gnome.shell.gschema.xml.in:223
msgid "Limit switcher to current workspace."
msgstr "Geçiş menüsünü geçerli çalışma alanıyla sınırla."
#: data/org.gnome.shell.gschema.xml.in:197
msgid ""
"If true, only applications that have windows on the current workspace are shown "
"in the switcher. Otherwise, all applications are included."
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
msgstr ""
"Eğer bu seçenek etkinse, yalnızca geçerli çalışma alanında penceresi olan "
"uygulamalar geçiş menüsünde gösterilir. Aksi halde, tüm uygulamalar "
@@ -326,13 +334,13 @@ msgstr "Uygulama simge kipi."
#: data/org.gnome.shell.gschema.xml.in:215
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities are "
"“thumbnail-only” (shows a thumbnail of the window), “app-icon-only” (shows only "
"the application icon) or “both”."
"Configures how the windows are shown in the switcher. Valid possibilities "
"are “thumbnail-only” (shows a thumbnail of the window), “app-icon-"
"only” (shows only the application icon) or “both”."
msgstr ""
"Pencerelerin değiştiricideki gösterim biçimini yapılandırır. Uygun olasılıklar; "
"“thumbnail-only” (pencerenin küçük bir resmini gösterir), “app-icon-"
"only” (yalnızca uygulama simgesini gösterir) ya da “both” (her ikisi) "
"Pencerelerin değiştiricideki gösterim biçimini yapılandırır. Uygun "
"olasılıklar; “thumbnail-only” (pencerenin küçük bir resmini gösterir), “app-"
"icon-only” (yalnızca uygulama simgesini gösterir) ya da “both” (her ikisi) "
"değerleridir."
#: data/org.gnome.shell.gschema.xml.in:224
@@ -340,8 +348,8 @@ msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
msgstr ""
"Eğer bu seçenek etkinse, yalnızca geçerli çalışma alanındaki pencereler geçiş "
"menüsünde gösterilir. Aksi halde, tüm pencereler görünecektir."
"Eğer bu seçenek etkinse, yalnızca geçerli çalışma alanındaki pencereler "
"geçiş menüsünde gösterilir. Aksi halde, tüm pencereler görünecektir."
#: data/org.gnome.shell.gschema.xml.in:234
msgid "Locations"
@@ -371,17 +379,21 @@ msgstr "Hava durumunun gösterileceği konum"
msgid "Attach modal dialog to the parent window"
msgstr "Yardımcı iletişim penceresini üst pencereye iliştir"
#: data/org.gnome.shell.gschema.xml.in:267 data/org.gnome.shell.gschema.xml.in:276
#: data/org.gnome.shell.gschema.xml.in:284 data/org.gnome.shell.gschema.xml.in:292
#: data/org.gnome.shell.gschema.xml.in:267
#: data/org.gnome.shell.gschema.xml.in:276
#: data/org.gnome.shell.gschema.xml.in:284
#: data/org.gnome.shell.gschema.xml.in:292
#: data/org.gnome.shell.gschema.xml.in:300
msgid "This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Bu anahtar, GNOME Shell çalışırken org.gnome.mutter içindeki anahtarı geçersiz "
"kılar."
"Bu anahtar, GNOME Shell çalışırken org.gnome.mutter içindeki anahtarı "
"geçersiz kılar."
#: data/org.gnome.shell.gschema.xml.in:275
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Pencereler ekran kenarlarında bırakıldığında kenar döşemeyi etkinleştir"
msgstr ""
"Pencereler ekran kenarlarında bırakıldığında kenar döşemeyi etkinleştir"
#: data/org.gnome.shell.gschema.xml.in:283
msgid "Workspaces are managed dynamically"
@@ -393,7 +405,8 @@ msgstr "Çalışma alanları yalnızca birincil ekranda"
#: data/org.gnome.shell.gschema.xml.in:299
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Fare kipinde odak değişikliklerini işaretçi hareketi durana kadar beklet"
msgstr ""
"Fare kipinde odak değişikliklerini işaretçi hareketi durana kadar beklet"
#: data/org.gnome.Shell.PortalHelper.desktop.in.in:3
msgid "Network Login"
@@ -405,12 +418,12 @@ msgstr "Bir şeyler ters gitti"
#: js/extensionPrefs/main.js:111
msgid ""
"Were very sorry, but theres been a problem: the settings for this extension "
"cant be displayed. We recommend that you report the issue to the extension "
"authors."
"Were very sorry, but theres been a problem: the settings for this "
"extension cant be displayed. We recommend that you report the issue to the "
"extension authors."
msgstr ""
"Çok üzgünüz ancak sorun oluştu: bu uzantı için ayarlar görüntülenemiyor. Sorunu "
"uzantı yazarlarına bildirmenizi öneririz."
"Çok üzgünüz ancak sorun oluştu: bu uzantı için ayarlar görüntülenemiyor. "
"Sorunu uzantı yazarlarına bildirmenizi öneririz."
#: js/extensionPrefs/main.js:118
msgid "Technical Details"
@@ -752,28 +765,33 @@ msgstr "Sık Sık"
msgid "All"
msgstr "Tümü"
#: js/ui/appDisplay.js:1751
#| msgid "Username: "
msgid "Rename"
msgstr "Yeniden Adlandır"
#. 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 "Açık Pencereler"
#: js/ui/appDisplay.js:2252 js/ui/panel.js:84
#: js/ui/appDisplay.js:2416 js/ui/panel.js:84
msgid "New Window"
msgstr "Yeni Pencere"
#: js/ui/appDisplay.js:2264
#: js/ui/appDisplay.js:2428
msgid "Launch using Dedicated Graphics Card"
msgstr "Adanmış Ekran Kartıyla Başlat"
#: 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 "Sık Kullanılanlardan Çıkar"
#: js/ui/appDisplay.js:2299
#: js/ui/appDisplay.js:2463
msgid "Add to Favorites"
msgstr "Sık Kullanılanlara Ekle"
#: js/ui/appDisplay.js:2309 js/ui/panel.js:95
#: js/ui/appDisplay.js:2473 js/ui/panel.js:95
msgid "Show Details"
msgstr "Ayrıntıları Göster"
@@ -994,7 +1012,8 @@ msgid "Type again:"
msgstr "Yeniden yaz:"
#: js/ui/components/networkAgent.js:105
msgid "Alternatively you can connect by pushing the “WPS” button on your router."
msgid ""
"Alternatively you can connect by pushing the “WPS” button on your router."
msgstr ""
"Diğer seçenek olarak, yönlendiricinizde “WPS” düğmesini kullanarak "
"bağlayabilirsiniz."
@@ -1035,7 +1054,8 @@ msgstr "Kablosuz ağ için kimlik doğrulama gerekiyor"
#: js/ui/components/networkAgent.js:316 js/ui/components/networkAgent.js:689
#, javascript-format
msgid ""
"Passwords or encryption keys are required to access the wireless network “%s”."
"Passwords or encryption keys are required to access the wireless network "
"“%s”."
msgstr ""
"“%s” kablosuz ağına erişmek için parola veya şifreleme anahtarları gerekiyor."
@@ -1244,8 +1264,8 @@ msgid "The system will automatically restart and install updates in %d second."
msgid_plural ""
"The system will automatically restart and install updates in %d seconds."
msgstr[0] ""
"Sistem %d saniye içinde kendiliğinden yeniden başlayacak ve güncelleştirmeleri "
"kuracak."
"Sistem %d saniye içinde kendiliğinden yeniden başlayacak ve "
"güncelleştirmeleri kuracak."
#: js/ui/endSessionDialog.js:102 js/ui/endSessionDialog.js:122
msgctxt "button"
@@ -1277,8 +1297,8 @@ msgid ""
"time: ensure that you have backed up and that the computer is plugged in."
msgstr ""
"Bilgisayarınız yeniden başladıktan sonra %s %s kurulacak. Yükseltme kurulumu "
"uzun sürebilir: verilerinizi yedeklediğinizden ve bilgisayarınızın prize takılı "
"olduğundan emin olun."
"uzun sürebilir: verilerinizi yedeklediğinizden ve bilgisayarınızın prize "
"takılı olduğundan emin olun."
#: js/ui/endSessionDialog.js:306
msgid "Running on battery power: please plug in before installing updates."
@@ -1364,20 +1384,20 @@ msgstr "Yapışkan Tuşlar Kapalı"
#: js/ui/kbdA11yDialog.js:44
msgid ""
"You just pressed the Shift key 5 times in a row. This is the shortcut for the "
"Sticky Keys feature, which affects the way your keyboard works."
"You just pressed the Shift key 5 times in a row. This is the shortcut for "
"the Sticky Keys feature, which affects the way your keyboard works."
msgstr ""
"Shift tuşuna art arda 5 kez bastınız. Bu, klavyenizin çalışma yolunu etkileyen "
"Yapışkan Tuşlar özelliğinin kısayoludur."
"Shift tuşuna art arda 5 kez bastınız. Bu, klavyenizin çalışma yolunu "
"etkileyen Yapışkan Tuşlar özelliğinin kısayoludur."
#: js/ui/kbdA11yDialog.js:46
msgid ""
"You just pressed two keys at once, or pressed the Shift key 5 times in a row. "
"This turns off the Sticky Keys feature, which affects the way your keyboard "
"works."
"You just pressed two keys at once, or pressed the Shift key 5 times in a "
"row. This turns off the Sticky Keys feature, which affects the way your "
"keyboard works."
msgstr ""
"İki tuşa aynı anda veya Shift tuşuna art arda 5 kez bastınız. Bu, klavyenizin "
"çalışma yolunu etkileyen Yapışkan Tuşlar özelliğini kapatır."
"İki tuşa aynı anda veya Shift tuşuna art arda 5 kez bastınız. Bu, "
"klavyenizin çalışma yolunu etkileyen Yapışkan Tuşlar özelliğini kapatır."
#: js/ui/kbdA11yDialog.js:58
msgid "Leave On"
@@ -1452,7 +1472,7 @@ msgstr "Kaynağı Görüntüle"
msgid "Web Page"
msgstr "Web Sayfası"
#: js/ui/messageTray.js:1462
#: js/ui/messageTray.js:1461
msgid "System Information"
msgstr "Sistem Bilgisi"
@@ -1579,7 +1599,7 @@ msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "%d yeni bildirim"
#: 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 "Kilitle"
@@ -1602,15 +1622,15 @@ msgstr "Kilitlenemedi"
msgid "Lock was blocked by an application"
msgstr "Kilitleme bir uygulama tarafından engellendi"
#: js/ui/search.js:647
#: js/ui/search.js:668
msgid "Searching…"
msgstr "Aranıyor…"
#: js/ui/search.js:649
#: js/ui/search.js:670
msgid "No results."
msgstr "Sonuç yok."
#: js/ui/search.js:773
#: js/ui/search.js:794
#, javascript-format
msgid "%d more"
msgid_plural "%d more"
@@ -1647,7 +1667,8 @@ msgstr "Anahtar Dosyaları Kullanır"
#. Translators: %s is the Disks application
#: js/ui/shellMountOperation.js:316
#, javascript-format
msgid "To unlock a volume that uses keyfiles, use the <i>%s</i> utility instead."
msgid ""
"To unlock a volume that uses keyfiles, use the <i>%s</i> utility instead."
msgstr ""
"Anahtar dosyaları kullanan bölümün kilidini açmak için <i>%s</i> aracını "
"kullanın."
@@ -2087,27 +2108,27 @@ msgstr "Kapat"
msgid "Airplane Mode On"
msgstr "Uçak Kipi Açık"
#: js/ui/status/system.js:201
#: js/ui/status/system.js:192
msgid "Switch User"
msgstr "Kullanıcı Değiştir"
#: js/ui/status/system.js:213
#: js/ui/status/system.js:204
msgid "Log Out"
msgstr "Oturumu Kapat"
#: js/ui/status/system.js:225
#: js/ui/status/system.js:216
msgid "Account Settings"
msgstr "Hesap Ayarları"
#: js/ui/status/system.js:254
#: js/ui/status/system.js:245
msgid "Orientation Lock"
msgstr "Yönelim Kilidi"
#: js/ui/status/system.js:280
#: js/ui/status/system.js:271
msgid "Suspend"
msgstr "Beklet"
#: js/ui/status/system.js:290
#: js/ui/status/system.js:281
msgid "Power Off"
msgstr "Kapat"
@@ -2328,8 +2349,8 @@ msgstr "Açıklama"
#: 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"
"This should be in the format of an email address (clicktofocus@janedoe."
"example.com)\n"
msgstr ""
"UUID, uzantınız için genel ve benzersiz tanımlayıcıdır.\n"
"E-posta biçiminde olmalıdır (clicktofocus@janedoe.example.com)\n"
@@ -2362,7 +2383,8 @@ msgstr "Uzantı bilgisini etkileşimli olarak gir"
msgid "Create a new extension"
msgstr "Yeni uzantı oluştur"
#: src/extensions-tool/command-create.c:275 src/extensions-tool/command-list.c:158
#: src/extensions-tool/command-create.c:275
#: src/extensions-tool/command-list.c:158
msgid "Unknown arguments"
msgstr "Bilinmeyen argüman"
@@ -2375,15 +2397,19 @@ msgid "Disable an extension"
msgstr "Uzantı devre dışı bırak"
#: 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-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 "Verilen UUID yok"
#: 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-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 "Birden ÇOK UUID verildi"
@@ -2460,7 +2486,8 @@ msgstr "ŞEMA"
msgid "A GSettings schema that should be included"
msgstr "İçerilmesi gereken GSettings şeması"
#: src/extensions-tool/command-pack.c:457 src/extensions-tool/command-pack.c:468
#: src/extensions-tool/command-pack.c:457
#: src/extensions-tool/command-pack.c:468
msgid "DIRECTORY"
msgstr "DİZİN"
@@ -2532,7 +2559,7 @@ msgstr "Durum"
msgid "“version” takes no arguments"
msgstr "“version” hiçbir argüman almaz"
#: 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 "Kullanım:"
@@ -2540,70 +2567,70 @@ msgstr "Kullanım:"
msgid "Print version information and exit."
msgstr "Sürüm bilgisini yazdır ve çık."
#: src/extensions-tool/main.c:240
#: src/extensions-tool/main.c:241 src/extensions-tool/main.c:244
msgid "COMMAND"
msgstr "KOMUT"
#: src/extensions-tool/main.c:240
#: src/extensions-tool/main.c:244
msgid "[ARGS…]"
msgstr "[ARGÜMANLAR…]"
#: src/extensions-tool/main.c:242
#: src/extensions-tool/main.c:246
msgid "Commands:"
msgstr "Komutlar:"
#: src/extensions-tool/main.c:243
#: src/extensions-tool/main.c:247
msgid "Print help"
msgstr "Yardımı yazdır"
#: src/extensions-tool/main.c:244 src/main.c:468
#: src/extensions-tool/main.c:248 src/main.c:468
msgid "Print version"
msgstr "Sürümü yazdır"
#: src/extensions-tool/main.c:245
#: src/extensions-tool/main.c:249
msgid "Enable extension"
msgstr "Uzantıyı etkinleştir"
#: src/extensions-tool/main.c:246
#: src/extensions-tool/main.c:250
msgid "Disable extension"
msgstr "Uzantıyı devre dışı bırak"
#: src/extensions-tool/main.c:247
#: src/extensions-tool/main.c:251
msgid "Reset extension"
msgstr "Uzantıyı sıfırla"
#: src/extensions-tool/main.c:248
#: src/extensions-tool/main.c:252
msgid "Uninstall extension"
msgstr "Uzantıyı kaldır"
#: src/extensions-tool/main.c:249
#: src/extensions-tool/main.c:253
msgid "List extensions"
msgstr "Uzantıları listele"
#: 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 "Uzantı bilgisini göster"
#: src/extensions-tool/main.c:252
#: src/extensions-tool/main.c:256
msgid "Open extension preferences"
msgstr "GNOME Kabuğu Uzantı Tercihleri"
#: src/extensions-tool/main.c:253
#: src/extensions-tool/main.c:257
msgid "Create extension"
msgstr "Uzantı oluştur"
#: src/extensions-tool/main.c:254
#: src/extensions-tool/main.c:258
msgid "Package extension"
msgstr "Uzantıyı paketle"
#: src/extensions-tool/main.c:255
#: src/extensions-tool/main.c:259
msgid "Install extension bundle"
msgstr "Uzantı demetini yükle"
#: src/extensions-tool/main.c:257
#, c-format
msgid "Use %s to get detailed help.\n"
msgstr "Ayrıntılı yardım almak için %s kullan.\n"
#: src/extensions-tool/main.c:261
#| msgid "Use %s to get detailed help.\n"
msgid "Use %s to get detailed help.\n"
msgstr "Ayrıntılı yardım almak için %s kullanın.\n"
#: src/main.c:474
msgid "Mode used by GDM for login screen"
@@ -2660,7 +2687,8 @@ msgid "System Sounds"
msgstr "Sistem Sesleri"
#~ msgid ""
#~ "Keybinding that pauses and resumes all running tweens, for debugging purposes"
#~ "Keybinding that pauses and resumes all running tweens, for debugging "
#~ "purposes"
#~ msgstr ""
#~ "Hata ayıklama amacıyla, çalışmakta olan tüm ara çerçeveleri duraklatan ve "
#~ "devam ettiren tuş bağı"
@@ -2877,12 +2905,12 @@ msgstr "Sistem Sesleri"
#~ msgid ""
#~ "Certificate uses an insecure cipher algorithm or is cryptographically weak"
#~ msgstr ""
#~ "Sertifika güvensiz bir şifreleme algoritması kullanıyor ya da kriptografik "
#~ "olarak zayıf"
#~ "Sertifika güvensiz bir şifreleme algoritması kullanıyor ya da "
#~ "kriptografik olarak zayıf"
#~ msgid ""
#~ "The length of the server certificate, or the depth of the server certificate "
#~ "chain, exceed the limits imposed by the cryptography library"
#~ "The length of the server certificate, or the depth of the server "
#~ "certificate chain, exceed the limits imposed by the cryptography library"
#~ msgstr ""
#~ "Sunucu sertifikasının uzunluğu ya da sunucu sertifikası zincirinin "
#~ "derinliği, şifreleme kütüphanesi tarafından koyulan sınırlarııyor"

View File

@@ -28,7 +28,10 @@
#include <libintl.h>
#include <string.h>
#define HANDLE_LIBICAL_MEMORY
#define EDS_DISABLE_DEPRECATED
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
#include <libecal/libecal.h>
G_GNUC_END_IGNORE_DEPRECATIONS
#undef CALENDAR_ENABLE_DEBUG
#include "calendar-debug.h"

View File

@@ -34,7 +34,10 @@
#include <gio/gio.h>
#define HANDLE_LIBICAL_MEMORY
#define EDS_DISABLE_DEPRECATED
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
#include <libecal/libecal.h>
G_GNUC_END_IGNORE_DEPRECATIONS
#include "calendar-sources.h"

View File

@@ -236,6 +236,10 @@ handle_version (int argc, char *argv[], gboolean do_help)
static void
usage (void)
{
g_autofree char *help_command = NULL;
help_command = g_strdup_printf ("gnome-extensions help %s", _("COMMAND"));
g_printerr ("%s\n", _("Usage:"));
g_printerr (" gnome-extensions %s %s\n", _("COMMAND"), _("[ARGS…]"));
g_printerr ("\n");
@@ -254,7 +258,7 @@ usage (void)
g_printerr (" pack %s\n", _("Package extension"));
g_printerr (" install %s\n", _("Install extension bundle"));
g_printerr ("\n");
g_printerr (_("Use %s to get detailed help.\n"), "“gnome-extensions help COMMAND”");
g_printerr (_("Use %s to get detailed help.\n"), help_command);
}
int

View File

@@ -144,13 +144,9 @@ shell_util_format_date (const char *format,
gint64 time_ms)
{
GDateTime *datetime;
GTimeVal tv;
char *result;
tv.tv_sec = time_ms / 1000;
tv.tv_usec = (time_ms % 1000) * 1000;
datetime = g_date_time_new_from_timeval_local (&tv);
datetime = g_date_time_new_from_unix_local (time_ms / 1000);
if (!datetime) /* time_ms is out of range of GDateTime */
return g_strdup ("");

View File

@@ -14,7 +14,6 @@ st_headers = [
'st-icon-colors.h',
'st-image-content.h',
'st-label.h',
'st-private.h',
'st-scrollable.h',
'st-scroll-bar.h',
'st-scroll-view.h',
@@ -94,7 +93,7 @@ st_enums = gnome.mkenums_simple('st-enum-types',
#endif'''
)
st_gir_sources = st_sources + st_private_headers + st_headers + st_enums
st_gir_sources = st_sources + st_headers + st_enums
data_to_c = find_program(meson.source_root() + '/src/data-to-c.pl')

View File

@@ -3,7 +3,6 @@
const UI = imports.testcommon.ui;
const { Clutter, GLib, St } = imports.gi;
const Mainloop = imports.mainloop;
const DELAY = 2000;
@@ -59,14 +58,14 @@ function test() {
resize_animated(label1);
resize_animated(label2);
Mainloop.timeout_add(DELAY, () => {
GLib.timeout_add(GLib.PRIORITY_DEFAULT, DELAY, () => {
log(label1 + label1.get_size());
resize_animated(label1);
resize_animated(label2);
return true;
});
Mainloop.timeout_add(2 * DELAY, () => {
GLib.timeout_add(GLib.PRIORITY_DEFAULT, 2 * DELAY, () => {
iter += 1;
iter %= shadowStyles.length;
label1.set_style(get_css_style(shadowStyles[iter]));

View File

@@ -2,8 +2,7 @@
const UI = imports.testcommon.ui;
const { Clutter, St } = imports.gi;
const Mainloop = imports.mainloop;
const { Clutter, GLib, St } = imports.gi;
function test() {
let stage = new Clutter.Stage({ width: 400, height: 400 });
@@ -39,7 +38,7 @@ function test() {
let entryHintBoth = new St.Entry({ style: 'border: 1px solid black; text-shadow: 0 2px red;',
hint_actor: hintActor2 });
let idx = 0;
Mainloop.timeout_add_seconds(1, function() {
GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, 1, function() {
idx++;
if (idx % 2 == 0)

View File

@@ -2,8 +2,7 @@
imports.gi.versions.Gtk = '3.0';
const Gtk = imports.gi.Gtk;
const Mainloop = imports.mainloop;
const { GLib, Gtk } = imports.gi;
function nextTitle() {
let length = Math.random() * 20;
@@ -26,7 +25,7 @@ function main() {
});
win.present();
Mainloop.timeout_add(5000, function() {
GLib.timeout_add(GLib.PRIORITY_DEFAULT, 5000, function() {
win.title = nextTitle();
return true;
});