Compare commits

..

98 Commits

Author SHA1 Message Date
2d3c81390b Bump version to 3.13.2
Update NEWS.
2014-05-27 21:35:37 +02:00
516b8f6bf8 screenshot: Don't use meta_window_get_rect
It's going to be removed soon.
2014-05-27 15:14:33 -04:00
75fdca0b47 data: Drop button-layout from overrides schema
The default in gsettings-desktop-schemas now matches what we want,
so no need to keep overriding it.
2014-05-27 19:54:31 +02:00
9f366118f0 windowMenu: Only add workspace actions when enabled by session mode
When workspaces are disabled by the session mode, all workspace
related actions don't make sense. Worse, the "Move to Workspace ..."
actions allow sending windows into a nirvana with no means to
get them back.

https://bugzilla.gnome.org/show_bug.cgi?id=730653
2014-05-27 19:49:06 +02:00
c228a9a89a viewSelector: Don't re-navigate into the active page
Starting keynav into the active page is handled from a key-press
handler on the stage, however we should not "start" keynav when
we are already navigating elsewhere - the latter can happen when
keynav fails (for instance because the focus is trapped inside an
open app folder or at the end of the dash), and the event bubbles
up to the stage. So make sure to only handle the event to actually
start keynav, to not interfere with the normal navigation handling.

Thanks to Carlos Soriano <carlos.soriano89@gmail.com> for the
debugging footwork.

https://bugzilla.gnome.org/show_bug.cgi?id=726760
2014-05-27 19:49:06 +02:00
e747fcb16f windowMenu: Ping window when activating any menu action
We do this for actions in the regular app menu, it makes sense to
do the same for window menu and fallback app menu.
2014-05-27 19:49:05 +02:00
a72a24ebff theme: Bring fallback app-menu style closer to GTK+
The fallback app-menu in GTK+'s client side decorations obviously
uses the GTK+ theme rather than the shell one; update the style
of our own fallback app-menu to resemble that style.

https://bugzilla.gnome.org/show_bug.cgi?id=730752
2014-05-27 19:49:05 +02:00
8811ba2ec0 Support (fallback) app menu in SSD
We now allow "appmenu" in the button layout to make synchronizing it
with GTK+'s client-side decorations easier, but as some people tweak
their settings to get in-window app menus even when using the shell,
actually pop up the app menu when the button is activated.

https://bugzilla.gnome.org/show_bug.cgi?id=730752
2014-05-27 19:49:05 +02:00
38d8e465b3 popupMenu: Hide separator label when not in use
The optional label support introduced in commit af063dc2f2 broke
the centering of separators, as the label still adds additional
spacing even when empty.
Properly hide the label actor in that case to fix the alignment.

https://bugzilla.gnome.org/show_bug.cgi?id=730753
2014-05-27 19:49:04 +02:00
5b3fb024be extensionPrefs: Skip main window when launched with a UUID
The extension-prefs tool is used by gnome-tweak-tool and the
extensions web site to display preferences. However as those
already implement their own extension lists, the main window
is not useful in that context (to not say it is rather silly).

Just skip the main window and only show the specified extension's
preference dialog in those cases.

https://bugzilla.gnome.org/show_bug.cgi?id=730829
2014-05-27 18:02:25 +02:00
521f5f2b6b extensionPrefs: Add switches to enable/disable extensions
Bring the extension-prefs tool in line with the mockup by adding
switches to enable/disable extensions, similar to the extension
page in gnome-tweak-tool.

https://bugzilla.gnome.org/show_bug.cgi?id=730829
2014-05-27 18:02:25 +02:00
e1b30b2924 extension-prefs: Give the UI a bit of GNOME 3 treatment
The extension-prefs UI has never been great, but as the GNOME 3
design patterns are evolving, it is starting to look seriously
outdated. Modernize the UI a bit to have it fit in a bit better.

https://bugzilla.gnome.org/show_bug.cgi?id=730829
2014-05-27 18:02:25 +02:00
dd85670f8b switcherPopup: Add a return value to _keyPressHandler
This allows us to handle keybindings that use Escape instead of just
dismissing the popup unconditionally when we see an Escape press.

https://bugzilla.gnome.org/show_bug.cgi?id=730739
2014-05-26 15:55:37 +02:00
625f3a5113 tools/build: Update to 3.14 2014-05-25 23:22:18 +02:00
58c4a6c847 Updated Hebrew translation 2014-05-22 23:46:51 +03:00
752aca811c windowManager: Support coords 2014-05-22 10:51:49 -04:00
a4cf0501ee Updated Indonesian translation 2014-05-22 09:22:25 +00:00
4c7b992c36 windowMenu: Fix typo
Closing windows is done with delete(), not close() ...
2014-05-21 19:57:17 +02:00
264a51de3f gnome-shell-wayland.desktop: Drop mutter-launch from Exec line
mutter-launch has been replaced with logind's Session and Seat APIs.
2014-05-21 11:11:27 +02:00
625280bcd6 Updated Brazilian Portuguese translation 2014-05-20 19:36:14 +00:00
4f8265f82e Updated Spanish translation 2014-05-20 20:05:06 +02:00
ff07d3a46a Renable compiler warnings and fix a few that show up
The switch to GNOME_COMPILE_WARNINGS() caused -Wall and other
warnings to not actually be used since GNOME_COMPILE_WARNINGS()
just sets WARN_CFLAGS. Add WARN_CFLAGS to AM_CFLAGS so that
it takes effect.

Add  -Wno-error=deprecated-declarations so that when -Werror is
enabled, we don't fail on all the deprecated cogl and clutter
symbols.

https://bugzilla.gnome.org/show_bug.cgi?id=730408
2014-05-19 20:51:12 -04:00
5d11941638 Support resource:/// URL's in GNOME_SHELL_JS envvar
It can be useful to augment the shell's search path by doing

 GNOME_SHELL_JS=resource:///org/gnome/shell:<mypath>

But this doesn't work because resource: is split off. Special
case path elements that are just 'resource' and recombine
them with the next element.

https://bugzilla.gnome.org/show_bug.cgi?id=730409
2014-05-19 20:47:05 -04:00
f1f659571b Updated Turkish translation 2014-05-19 11:46:28 +00:00
c60d13b33e Updated Lithuanian translation 2014-05-18 22:25:40 +03:00
33060d382b Updated Czech translation 2014-05-18 15:40:01 +02:00
4b1e412ac3 Updated Hebrew translation 2014-05-18 02:48:02 +03:00
659730ab09 Mark string as translatable 2014-05-18 01:08:49 +02:00
7c3a99b7ed Updated POTFILES.in 2014-05-18 01:02:36 +02:00
e7af257814 Implement window menus in gnome-shell
https://bugzilla.gnome.org/show_bug.cgi?id=726352
2014-05-17 15:17:29 -04:00
c9190294bc gnome-shell-build-setup.sh: work around removal of gpk-install-package-name
gpk-install-package-name was removed in 3.12. Call the D-Bus interface
using gdbus instead.
2014-05-17 15:10:04 -04:00
e070e3c44a Updated Czech translation 2014-05-16 14:37:15 +02:00
fe87de7cec Updated Hebrew translation 2014-05-16 04:20:15 +03:00
2519e4f08d Updated Brazilian Portuguese translation 2014-05-15 18:28:01 +00:00
fe304d3c94 Updated Lithuanian translation 2014-05-11 23:43:13 +03:00
1f4e6872ab Updated Spanish translation 2014-05-10 19:48:56 +02:00
5ade2e7418 main: emit systemd message for any session except gdm and initial-setup 2014-05-09 23:35:57 +02:00
3e7d325e77 [l10n] Updated Catalan (Valencian) translation 2014-05-09 00:02:51 +02:00
ef04a9d1ed osdWindow: Check monitor validity before updating
When a monitor is removed, the OsdWindow for that monitor may process
the monitors-changed signal before OsdWindowManager does (which will
remove the OSD). If that happens, we will currently try to access
an invalid monitor; check for this to avoid a couple of warning.
2014-05-08 11:14:23 +02:00
011fef4b2b system: Keep key focus when switching between alternatives
When switching between alternatives in AltSwitcher, the currently
visible child is replaced with the alternative. If the original
child has the key focus when it is removed from the stage, the
focus is lost. Detect this case and manually move the focus to
the new child.

https://bugzilla.gnome.org/show_bug.cgi?id=727259
2014-05-06 14:25:39 +02:00
caf6389f79 Fix Italian translation
- "Aereo" is the thing that flies, "Aero" is the Windows 7 theme.
- "Abilita", not "Abilitato", for the Enable action.
2014-05-04 15:22:55 +02:00
c7306449ae workspaceThumbnails: Move to primary monitor first when creating workspace
When dragging a window preview from a non-primary monitor onto a
workspace thumbnail, the window is moved to the primery monitor
first before changing its workspace. However when dragging the window
between thumbnails to create a new workspace, it is kept on its current
monitor instead. This is not only inconsistent, but outright confusing
with the default 'workspaces-only-on-primary' setting, as the newly
created workspace is immediately removed again.

https://bugzilla.gnome.org/show_bug.cgi?id=683819
2014-05-03 23:50:25 +02:00
8c45e6fa43 main: Don't depend on GSystem unconditionally
We only need GSystem when running under systemd. As libgsystem itself
has a hard dependency on systemd, only import it when actually needed
to keep working on systems where systemd is not available.

https://bugzilla.gnome.org/show_bug.cgi?id=728449
2014-05-03 23:50:25 +02:00
9504d21297 Updated Belarusian translation.
(cherry picked from commit 6d679148b6)
2014-05-03 14:46:57 +02:00
0832ca544a Update the default favourite apps list for renamed desktop files
Nautilus and gnome-documents have changed their desktop file names to
support DBus activation.

https://bugzilla.gnome.org/show_bug.cgi?id=729429
2014-05-03 00:01:56 +02:00
a000a1f76e rfkill: make the Airplane mode menu insensitive in the lock screen
Like we do for the bluetooth and wifi menus

https://bugzilla.gnome.org/show_bug.cgi?id=729224
2014-04-30 21:52:56 +02:00
ea8b02ff7f Bump version to 3.13.1
Update NEWS.
2014-04-30 19:15:12 +02:00
3cc7112283 Add a 'Show Details' menuitem in the app picker
Add a menu item that shows the details of the application
in gnome-software.

https://bugzilla.gnome.org/show_bug.cgi?id=643043
2014-04-30 19:15:06 +02:00
50f0fc4e23 overviewControls: Adjust heuristic for hiding workspace switcher
The workspace switcher should be expanded when workspaces are in use.
Our current implementation assumes that workspaces are used when there
are windows on at least two workspaces. However workspaces are already
used when moving from a non-empty workspace to an empty one (presumably
with the intention to launch something on that workspace), so tweak the
heuristic accordingly.

https://bugzilla.gnome.org/show_bug.cgi?id=662457
2014-04-30 18:06:52 +02:00
0a4ad01d8a Updated Galician translations 2014-04-30 15:34:42 +02:00
19afabe2a1 dateMenu: Don't make dateMenuButton reactive on current day
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.

https://bugzilla.gnome.org/show_bug.cgi?id=726724
2014-04-29 01:02:27 +02:00
103027a446 St: remove hover state if reactive disabled
The hover state of a widget can become persistent if
the widget becomes reactive while a pointer grab.
To avoid that, remove hover state if the reactive property
is disabled.

https://bugzilla.gnome.org/show_bug.cgi?id=728343
2014-04-29 01:02:27 +02:00
28c1f81f4a appDisplay: Make page panning smoother on touch
Currently, our logic for page panning isn't great. If the user starts a
pan upwards and hesitates over a new page, we'll go to the *next* page
on release, since the difference is greater, but the velocity wound down
to 0.

Instead of trying to treat it like page down or scrolls, simply do the
math to find the page where the user scrolled to.

This is unfortunately broken for fast swipes, since the user doesn't get
far enough into the new page to make a difference. I'm getting the
impression we'll need a gesture recognizer for this, though, however
crude. Simple hacks I tried, like a velocity multiplier, didn't work
properly.

https://bugzilla.gnome.org/show_bug.cgi?id=729064
2014-04-28 13:30:09 -04:00
82ec6c08b8 appDisplay: Fix pages getting "stuck" under touch
We often call goToPage like:

  this.goToPage(this._currentPage - 1);

(or + 1). During panning, these are based on the velocity values
of the gesture action. If we're already on the first or last page
and the panning ends, it's possible to get goToPage that's either
-1 or greater than the last page.

During normal usage, this isn't a problem, since the Y values will
be correct, always. But when panning, the Y values stick to the
finger, and thus if we return early, we won't snap to the exact page,
making it seem like things get "stuck".

Fix this the simple way by clamping to the correctly-ranged values
of pageNumber

https://bugzilla.gnome.org/show_bug.cgi?id=729064
2014-04-28 13:30:09 -04:00
551e57406d appDisplay: Remove redundant checks for pageNumber
We already do these at the beginning of the function.

https://bugzilla.gnome.org/show_bug.cgi?id=729064
2014-04-28 13:30:08 -04:00
1c8036b863 If systemd is enabled send a message with MESSAGE_ID after gnome-shell has started in user mode
Also adds a new dependency - libgsystem
https://bugzilla.gnome.org/show_bug.cgi?id=728449
2014-04-28 18:49:44 +02:00
f8bac5c197 util: Don't pass too many arguments to child_watch_add 2014-04-28 10:22:51 -04:00
6ece67b654 calendar: Don't mark translations from GTK+ for translation
The order in which month and year are displayed is controlled by
a "special" translated string in GTK+. We pick up the translation
from there, so make sure that it doesn't get translated again
in gnome-shell.

https://bugzilla.gnome.org/show_bug.cgi?id=715042
2014-04-27 02:06:27 +02:00
96411dfed5 Updated Brazilian Portuguese translation 2014-04-26 22:14:01 +00:00
24897169a9 st-entry: Handle <shift>insert
GTK+ supports this as alternative to <ctrl>v, so let's do the same
for consistency.

https://bugzilla.gnome.org/show_bug.cgi?id=648318
2014-04-26 21:19:59 +02:00
05ddece9a0 workspaceThumbnails: Fix removal of multiple workspaces
When workspaces have been removed, we need to remove the corresponding
thumbnails as well; the number of thumbnails that need removing is
the difference between the old number of workspaces and the new one.
Currently we assume that the old number of workspaces corresponds to
the number of existing thumbnails, but that may actually be wrong:
A thumbnail will still be animated out after its workspace has been
removed. As a result, we end up removing too many thumbnails when a
workspace is removed while a thumbnail of a previously removed workspace
is still animating out. Fix this by basing the old number of workspaces
only on thumbnails that have not been removed previously.

https://bugzilla.gnome.org/show_bug.cgi?id=728820
2014-04-26 17:50:38 +02:00
df08ae7996 screenshot: Port to GrabHelper
Taking an area screenshot doesn't work currently when in "grab mode",
for instance when the message tray or top bar menus are open. Fix
this by using GrabHelper for selecting the area, so grabs are properly
stacked for us.

https://bugzilla.gnome.org/show_bug.cgi?id=709126
2014-04-26 16:19:21 +02:00
a244c1e987 loginManager: Kill ConsoleKit support
The code path is completely unmaintained and untested (and probably
unused as well, considering that nobody has complained about accessing
the session object's Active property which does not exist in the
ConsoleKit case).
Most of our ConsoleKit code is already a dummy anyway, just do the
same for the remaining functionality.

https://bugzilla.gnome.org/show_bug.cgi?id=686626
2014-04-25 15:53:45 +02:00
bc182f78b1 style: Clean out unused selectors 2014-04-25 15:51:43 +02:00
2d18b06b3f osdWindow: Fix setting a zero-level in osdWindow
Commit 7101cc3170 caused a small
regression insomuch that it checks for a valid "level" but simply using
"if (level)" which will be false if level is undefined and if
level == 0.

Check for not undefined instead.

https://bugzilla.gnome.org/show_bug.cgi?id=727384
2014-04-25 15:20:18 +02:00
61852df9a1 Tajik translation updated 2014-04-25 17:16:49 +05:00
3969be38bd environment: Be more careful when hooking up style properties
Sometimes it is more appropriate to set layout properties that are
hooked up to CSS properties in code. However this is currently not
possible, as we end up setting properties to 0 when not found in CSS;
be a bit more careful when hooking up CSS properties to support this.

https://bugzilla.gnome.org/show_bug.cgi?id=728897
2014-04-24 19:31:55 +02:00
92f9aff784 tests/gapplication: Don't pass too many args to gtk_init 2014-04-23 16:49:44 -04:00
815cfe6c20 Updated Romanian Translation 2014-04-23 21:46:14 +02:00
052b5176d2 Updated Czech translation 2014-04-23 17:05:29 +02:00
bccbcd8e4a networkAgent: Handle empty vpn 'keyfiles'
Passing back no data is valid in case both secrets (group and user passwords)
are stored.

Just confirm the request in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=728681
2014-04-23 13:09:34 +02:00
90589fabee texture-cache: Fix compile warning 2014-04-22 18:35:56 -04:00
5947111f14 Updated Ukrainian translation 2014-04-22 23:07:18 +03:00
c8c56a5443 Updated Khmer translation 2014-04-22 08:46:49 +00:00
a83b9ed6d7 search: Make sure to destroy old provider displays when we unregister
When we unregistered providers, like when we refreshed the list of
active remote providers, we would forget to destroy the old provider
display after the fact. This left an empty "skeleton" provider display
still in the search results that would never be filled in. Make sure
to destroy it properly.

https://bugzilla.gnome.org/show_bug.cgi?id=728597
2014-04-21 23:36:52 -04:00
f9c83bccb6 status: use consistent messages for network connections
https://bugzilla.gnome.org/show_bug.cgi?id=727163
2014-04-21 22:03:22 +02:00
2f720e22fc rfkill: fix turning off airplane mode from the menu
The menu does not have a proxy anymore, it needs to go through
the manager.

https://bugzilla.gnome.org/show_bug.cgi?id=728512
2014-04-21 19:10:54 +02:00
329028d3b9 Updated Dutch translation 2014-04-18 20:16:51 +02:00
5c3f9f6999 osdWindow: Show on all monitors
We had one osdWindow that we displayed either on the primary monitor or on
whatever monitor index got passed over dbus.

Change that to show the osd on all monitors when no explicit monitor is
requested. A monitor should be requested in cases like display brightness where it makes sense to only show the osd on the affected monitor.

https://bugzilla.gnome.org/show_bug.cgi?id=722684
2014-04-17 15:15:14 +02:00
4a6b89d44c windowManager: add switch-to-workspace-last keybinding
When using dynamic workspace, the number of the last workspace may vary,
and it would be nice to have a keybinding to jump directly to it.

https://bugzilla.gnome.org/show_bug.cgi?id=659288
2014-04-16 21:45:14 +02:00
7fa1834ab6 extension-prefs: Remove extra whitespace 2014-04-15 17:54:51 -04:00
c7bc9f8925 extension-prefs: Kill warning
We need to include shell-js.h
2014-04-15 17:54:51 -04:00
70d75ca311 loginManager: Don't pass too many args to steal_fds 2014-04-15 17:53:37 -04:00
9830b3b8f7 appDisplay: Don't pass too many args to add_actor 2014-04-15 17:53:34 -04:00
525c8780fd Fix typo 2014-04-15 23:35:06 +02:00
76c4ec8ee4 layout: Don't always extend struts to the screen edge
NetWM struts are defined in terms of screen edges (rather than monitor
edges), which works poorly with vertical monitor layouts (as it renders
entire monitors unusable). Don't extend struts in those cases.

https://bugzilla.gnome.org/show_bug.cgi?id=663690
2014-04-15 23:35:06 +02:00
b4a48a7644 extension-prefs: Force linking with libgnome-shell-js
Use the same hack we use for the main executable to fool the linker
when using --as-needed.

https://bugzilla.gnome.org/show_bug.cgi?id=727948
2014-04-15 23:35:05 +02:00
5087f0930c l10n: Update Japanese translation 2014-04-15 00:36:54 +09:00
398cc5af85 Updated Danish translation 2014-04-13 21:53:58 +02:00
f073945d31 Updated Hungarian translation 2014-04-13 15:42:18 +02:00
c36abcb905 Updated Latvian translation 2014-04-12 12:35:33 +03:00
e2ccbe5528 layout: Change setDummyCursorPosition to also set the size
If we are being used to follow a text entry cursor we also need to set
the size so that the popup menu avoids covering it.

https://bugzilla.gnome.org/show_bug.cgi?id=727579
2014-04-11 16:54:01 +02:00
68b2d5fcf0 LookingGlass: Correct timeout usage
Calling Mainloop.source_remove() on the timeout ID will not reset it,
and we're already removing the timeout by returning GLib.SOURCE_REMOVE
in the callback.
2014-04-10 21:08:49 +02:00
cd2bd7685a js: Name all the timeouts and idles
With very uninventive names. Names now, good names later.

https://bugzilla.gnome.org/show_bug.cgi?id=727983
2014-04-10 21:08:16 +02:00
85f811f147 src: Name all the timeouts and idles
https://bugzilla.gnome.org/show_bug.cgi?id=727983
2014-04-10 19:38:04 +02:00
e8fd8b58d0 Added Khmer translation 2014-04-10 07:30:29 +00:00
2aa12e8f4b Updated Indonesian translation 2014-04-10 05:48:25 +00:00
ee0c76c2b9 Link to libmutter always
Wayland support was merged into mutter master.
2014-04-09 15:24:09 -07:00
95 changed files with 6060 additions and 4741 deletions

3
.gitignore vendored
View File

@ -78,11 +78,8 @@ src/gnome-shell-calendar-server
src/gnome-shell-extension-prefs
src/gnome-shell-extension-tool
src/gnome-shell-hotplug-sniffer
src/gnome-shell-jhbuild
src/gnome-shell-perf-helper
src/gnome-shell-perf-tool
src/gnome-shell-real
src/gnome-shell-wayland
src/hotplug-sniffer/org.gnome.Shell.HotplugSniffer.service
src/run-js-test
src/test-recorder

52
NEWS
View File

@ -1,22 +1,28 @@
3.12.2
3.13.2
======
* Fix turning off airplane mode [Giovanni; #728512]
* Handle empty VPN keyfiles [Adel; #728681]
* Fix setting zero-level in osdWindow [Bastien; #727384]
* Fix removal of multiple workspace thumbnails at once [Florian; #728820]
* Make airplane mode menu insensitive in lock screen [Giovanni; #729224]
* Don't always extend struts to the screen edge [Florian; #683819]
* Fix keynav for alternatives in AltSwitcher [Florian; #727259]
* Fix zombie search providers showing up [Jasper; #728597]
* Implement window menus in the shell [Jasper; #726352]
* Support resource:/// URLs in GNOME_SHELL_JS envvar [Owen; #730409]
* Fix switcher popups with keybindings containing Escape [Rui; #730739]
* Update extension-prefs UI to follow GNOME 3 patterns [Florian; #730829]
* Add support for fallback app menu in window decorations [Florian; #730752]
* Fix keynav escaping open app folders [Florian; #726760]
* Misc. bug fixes [Kalev, Florian, Owen; #729429, #728449, #730408, #730753,
#730653]
Contributors:
Giovanni Campagna, Adel Gadllah, Florian Müllner, Bastien Nocera,
Jasper St. Pierre
Giovanni Campagna, Piotr Drąg, Kalev Lember, Rui Matos, Florian Müllner,
Vadim Rutkovsky, Carlos Soriano, Jasper St. Pierre, Owen W. Taylor
Translations:
Wouter Bolsterlee [nl], Daniel Korostil [uk], Ihar Hrachyshka [be],
Giovanni Campagna [it], Carles Ferrando [ca@valencia]
Ihar Hrachyshka [be], Giovanni Campagna [it], Carles Ferrando [ca@valencia],
Daniel Mustieles [es], Aurimas Černius [lt], Enrico Nicoletto [pt_BR],
Yosef Or Boczko [he], Marek Černocký [cs], Muhammet Kara [tr],
Georges Neto [pt_BR], Andika Triwidada [id]
3.12.1
3.13.1
======
* Ensure the currently focused app icon is viewable [Rui; #726759]
* Improve language in location menu [Zeeshan; #726498]
@ -25,12 +31,27 @@ Translations:
* Fix bad antialiasing on panel menu buttons [Carlos; #727336]
* Don't hide location menu [Zeeshan; #727398]
* Fix IM candidate window obscuring current text [Rui; #727579]
* Fix extension-prefs tool when linked with --as-needed [Florian; #727948]
* Don't always extend struts to the screen edge [Florian; #663690]
* Add shortcuts for switching to the last workspace [Elad; #659288]
* Show OSD window on all monitors [Adel; #722684]
* Improve consistency of labels in network menu [Paul; #727163]
* Fix zombie search providers showing up [Jasper; #728597]
* Remove ConsoleKit support [Florian; #686626]
* Fix region screenshots with open shell menus [Florian; #709126]
* Support <shift>insert in text entries [Florian; #648318]
* Improve app picker scrolling on touch [Jasper; #729064]
* Don't make date button clickable when on current date [Carlos; #726724]
* Tweak heuristic for hiding workspace switcher [Florian; #662457]
* Add option to show in Software to app context menu [Matthias; #643043]
* Misc. bug fixes and cleanups [Bastien, Florian, Giovanni, Adel, Vadim,
Carlos; #727983, #727948, #728512, #728681, #728897, #727384, #728820,
#715042, #728449, #728343]
Contributors:
Zeeshan Ali (Khattak), Cosimo Cecchi, Piotr Drąg, Rui Matos, Simon McVittie,
Florian Müllner, Alejandro Piñeiro, Carlos Soriano
Elad Alfassa, Zeeshan Ali (Khattak), Giovanni Campagna, Cosimo Cecchi,
Matthias Clasen, Piotr Drąg, Adel Gadllah, Paul Lange, Rui Matos,
Simon McVittie, Florian Müllner, Bastien Nocera, Alejandro Piñeiro,
Vadim Rutkovsky, Carlos Soriano, Jasper St. Pierre
Translations:
Khaled Hosny [ar], Piotr Drąg [pl], Yosef Or Boczko [he],
@ -42,7 +63,8 @@ Translations:
Fran Diéguez [gl], Pau Iranzo [ca], Luca Ferretti [it], Milo Casagrande [it],
Tiago S [pt], Victor Ibragimov [tg], Dirgita [id], Khoem Sokhem [km],
Rūdolfs Mazurs [lv], Balázs Úr [hu], Ask H. Larsen [da], Ikuya Awashiro [ja],
Мирослав Николић [sr, sr@latin]
Wouter Bolsterlee [nl], Daniel Korostil [uk], Daniel Șerbănescu [ro],
Enrico Nicoletto [pt_BR]
3.12.0
======

View File

@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.12.2],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[3.13.2],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_SRCDIR([src/shell-global.c])
@ -76,7 +76,7 @@ AC_MSG_RESULT($enable_systemd)
CLUTTER_MIN_VERSION=1.15.90
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
GJS_MIN_VERSION=1.39.0
MUTTER_MIN_VERSION=3.12.1
MUTTER_MIN_VERSION=3.13.2
GTK_MIN_VERSION=3.7.9
GIO_MIN_VERSION=2.37.0
LIBECAL_MIN_VERSION=3.5.3
@ -112,13 +112,6 @@ fi
PKG_CHECK_MODULES(GNOME_SHELL, $SHARED_PCS)
PKG_CHECK_MODULES(MUTTER, libmutter >= $MUTTER_MIN_VERSION)
PKG_CHECK_MODULES(MUTTER_WAYLAND, [libmutter-wayland >= $MUTTER_MIN_VERSION],
[MUTTER_WAYLAND_TYPELIB_DIR=`$PKG_CONFIG --variable=typelibdir libmutter-wayland`
AC_SUBST(MUTTER_WAYLAND_TYPELIB_DIR)
have_mutter_wayland=yes],
[have_mutter_wayland=no])
AM_CONDITIONAL(HAVE_MUTTER_WAYLAND, test $have_mutter_wayland != no)
PKG_CHECK_MODULES(GNOME_SHELL_JS, gio-2.0 gjs-internals-1.0 >= $GJS_MIN_VERSION)
PKG_CHECK_MODULES(ST, clutter-1.0 gtk+-3.0 libcroco-0.6 >= 0.6.8 x11)
@ -230,6 +223,14 @@ fi
AM_CONDITIONAL(ENABLE_MAN, test "$enable_man" != no)
GNOME_COMPILE_WARNINGS([error])
case "$WARN_CFLAGS" in
*-Werror*)
WARN_CFLAGS="$WARN_CFLAGS -Wno-error=deprecated-declarations"
;;
esac
AM_CFLAGS="$AM_CFLAGS $WARN_CFLAGS"
AC_SUBST(AM_CFLAGS)
BROWSER_PLUGIN_DIR="${BROWSER_PLUGIN_DIR:-"\${libdir}/mozilla/plugins"}"
AC_ARG_VAR([BROWSER_PLUGIN_DIR],[Where to install the plugin to])

View File

@ -1,9 +1,5 @@
desktopdir=$(datadir)/applications
desktop_DATA = gnome-shell.desktop gnome-shell-extension-prefs.desktop
if HAVE_MUTTER_WAYLAND
desktop_DATA += gnome-shell-wayland.desktop
endif HAVE_MUTTER_WAYLAND
desktop_DATA = gnome-shell.desktop gnome-shell-wayland.desktop gnome-shell-extension-prefs.desktop
# We substitute in bindir so it works as an autostart
# file when built in a non-system prefix

View File

@ -2,7 +2,7 @@
Type=Application
_Name=GNOME Shell (wayland compositor)
_Comment=Window management and application launching
Exec=@bindir@/mutter-launch -- gnome-shell-wayland --wayland --display-server
Exec=@bindir@/gnome-shell --wayland --display-server
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-shell
X-GNOME-Bugzilla-Component=general

View File

@ -31,7 +31,7 @@
</_description>
</key>
<key name="favorite-apps" type="as">
<default>[ 'epiphany.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'libreoffice-writer.desktop', 'nautilus.desktop', 'gnome-documents.desktop' ]</default>
<default>[ 'epiphany.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'libreoffice-writer.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Documents.desktop' ]</default>
<_summary>List of desktop file IDs for favorite applications</_summary>
<_description>
The applications corresponding to these identifiers
@ -221,15 +221,6 @@
</_description>
</key>
<key name="button-layout" type="s">
<default>":close"</default>
<_summary>Arrangement of buttons on the titlebar</_summary>
<_description>
This key overrides the key in org.gnome.desktop.wm.preferences when
running GNOME Shell.
</_description>
</key>
<key name="edge-tiling" type="b">
<default>true</default>
<_summary>Enable edge tiling when dropping windows on screen edges</_summary>

View File

@ -153,6 +153,21 @@ StScrollBar StButton#vhandle:active {
-arrow-rise: 11px;
}
.popup-menu-boxpointer.fallback-app-menu {
-arrow-border-radius: 4px;
-arrow-background-color: #ededed;
-arrow-border-width: 1px;
-arrow-border-color: #a6a6a6;
-arrow-base: 24px;
-arrow-rise: 11px;
}
.popup-menu-boxpointer.fallback-app-menu.dark {
-arrow-background-color: #3f4747;
-arrow-border-color: #282b2b;
}
.popup-menu {
min-width: 200px;
}
@ -166,6 +181,15 @@ StScrollBar StButton#vhandle:active {
background-color: #333333;
}
.fallback-app-menu .popup-submenu-menu-item:open {
background-color: #888888;
color: white;
}
.fallback-app-menu.dark .popup-submenu-menu-item:open {
background-color: #333333;
}
.popup-sub-menu {
background-gradient-start: rgba(80,80,80,0.3);
background-gradient-end: rgba(80,80,80,0.4);
@ -173,6 +197,20 @@ StScrollBar StButton#vhandle:active {
box-shadow: inset 0px 2px 4px rgba(0,0,0,0.9);
}
.fallback-app-menu .popup-sub-menu {
background-gradient-start: #dddddd;
background-gradient-end: #dfdfdf;
background-gradient-direction: vertical;
box-shadow: inset 0px 2px 4px rgba(0,0,0,0.4);
}
.fallback-app-menu.dark .popup-sub-menu {
background-gradient-start: #474747;
background-gradient-end: #4b4b4b;
background-gradient-direction: vertical;
box-shadow: inset 0px 2px 4px rgba(0,0,0,0.9);
}
.popup-sub-menu:scrolled .popup-menu-item:ltr {
padding-right: 0em;
}
@ -221,7 +259,29 @@ StScrollBar StButton#vhandle:active {
color: #9f9f9f;
}
.popup-image-menu-item {
.fallback-app-menu .popup-menu-item {
color: #43484a;
}
.fallback-app-menu .popup-menu-item:active {
color: white;
background-color: #4689cd;
}
.fallback-app-menu .popup-menu-item:insensitive {
color: gray;
}
.fallback-app-menu.dark .popup-menu-item {
color: white;
}
.fallback-app-menu.dark .popup-menu-item:active {
background-color: #445f7d;
}
.fallback-app-menu.dark .popup-menu-item:insensitive {
color: #9f9f9f;
}
.popup-separator-menu-item {
@ -233,8 +293,15 @@ StScrollBar StButton#vhandle:active {
padding: 8px 0px;
}
.popup-alternating-menu-item:alternate {
font-weight: bold;
.fallback-app-menu .popup-separator-menu-item {
-gradient-start: #a0a2a3;
-gradient-end: #a0a2a3;
-margin-horizontal: 0;
}
.fallback-app-menu.dark .popup-separator-menu-item {
-gradient-start: #818584;
-gradient-end: #818584;
}
.popup-status-menu-item {
@ -582,11 +649,6 @@ StScrollBar StButton#vhandle:active {
app-icon-bottom-clip: 2px;
}
.app-menu-icon {
width: 24px;
height: 24px;
}
.panel-button {
-natural-hpadding: 12px;
-minimum-hpadding: 6px;
@ -1157,11 +1219,6 @@ StScrollBar StButton#vhandle:active {
text-shadow: black 0px 2px 2px;
}
#LookingGlassDialog .lg-inspector-title {
font-weight: bold;
padding-bottom: 8px;
}
.lg-dialog StEntry {
selection-background-color: #bbbbbb;
selected-color: #333333;
@ -1241,10 +1298,6 @@ StScrollBar StButton#vhandle:active {
width: 0.3em;
}
#calendarPopup .calendar {
padding: 10px;
}
.calendar {
padding: .4em 1.75em .8em 1.75em;
spacing-rows: 0px;
@ -1773,26 +1826,6 @@ StScrollBar StButton#vhandle:active {
spacing: 8px;
}
.thumbnail-scroll-gradient-left {
background-gradient-direction: horizontal;
background-gradient-start: rgba(51, 51, 51, 1.0);
background-gradient-end: rgba(51, 51, 51, 0);
border-radius: 24px;
border-radius-topright: 0px;
border-radius-bottomright: 0px;
width: 60px;
}
.thumbnail-scroll-gradient-right {
background-gradient-direction: horizontal;
background-gradient-start: rgba(51, 51, 51, 0);
background-gradient-end: rgba(51, 51, 51, 1.0);
border-radius: 24px;
border-radius-topleft: 0px;
border-radius-bottomleft: 0px;
width: 60px;
}
.switcher-list .item-box {
padding: 8px;
border-radius: 8px;
@ -2062,10 +2095,6 @@ StScrollBar StButton#vhandle:active {
icon-size: 48px;
}
.mount-password-reask {
color: red;
}
.show-processes-dialog,
.mount-question-dialog {
spacing: 24px;
@ -2361,13 +2390,6 @@ StScrollBar StButton#vhandle:active {
padding-bottom: 1em;
}
.login-dialog-title {
font-size: 14pt;
font-weight: bold;
color: #666666;
padding-bottom: 2em;
}
.login-dialog {
/* Reset border and background */
border: none;
@ -2416,10 +2438,6 @@ StScrollBar StButton#vhandle:active {
background-size: contain;
}
.login-dialog-user-list-item-text-box {
padding: 0 0.5em;
}
.login-dialog-user-list-item .login-dialog-timed-login-indicator {
background-color: rgba(0,0,0,0.0);
height: 2px;

View File

@ -23,6 +23,11 @@ const GnomeShellIface = '<node> \
</interface> \
</node>';
const customCss = '.prefs-button { \
padding: 8px; \
border-radius: 20px; \
}';
const GnomeShellProxy = Gio.DBusProxy.makeProxyWrapper(GnomeShellIface);
function stripPrefix(string, prefix) {
@ -46,13 +51,9 @@ const Application = new Lang.Class({
this._extensionPrefsModules = {};
this._extensionIters = {};
this._startupUuid = null;
},
_buildModel: function() {
this._model = new Gtk.ListStore();
this._model.set_column_types([GObject.TYPE_STRING, GObject.TYPE_STRING]);
this._loaded = false;
this._skipMainWindow = false;
},
_extensionAvailable: function(uuid) {
@ -70,11 +71,6 @@ const Application = new Lang.Class({
return true;
},
_setExtensionInsensitive: function(layout, cell, model, iter, data) {
let uuid = model.get_value(iter, 0);
cell.set_sensitive(this._extensionAvailable(uuid));
},
_getExtensionPrefsModule: function(extension) {
let uuid = extension.metadata.uuid;
@ -104,21 +100,23 @@ const Application = new Lang.Class({
widget = this._buildErrorUI(extension, e);
}
// Destroy the current prefs widget, if it exists
if (this._extensionPrefsBin.get_child())
this._extensionPrefsBin.get_child().destroy();
let dialog = new Gtk.Dialog({ use_header_bar: true,
modal: true,
title: extension.metadata.name });
this._extensionPrefsBin.add(widget);
this._extensionSelector.set_active_iter(this._extensionIters[uuid]);
},
if (this._skipMainWindow) {
this.application.add_window(dialog);
if (this._window)
this._window.destroy();
this._window = dialog;
this._window.window_position = Gtk.WindowPosition.CENTER;
} else {
dialog.transient_for = this._window;
}
_extensionSelected: function() {
let [success, iter] = this._extensionSelector.get_active_iter();
if (!success)
return;
let uuid = this._model.get_value(iter, 0);
this._selectExtension(uuid);
dialog.set_default_size(600, 400);
dialog.get_content_area().add(widget);
dialog.show();
},
_buildErrorUI: function(extension, exc) {
@ -151,48 +149,26 @@ const Application = new Lang.Class({
_buildUI: function(app) {
this._window = new Gtk.ApplicationWindow({ application: app,
window_position: Gtk.WindowPosition.CENTER,
title: _("GNOME Shell Extension Preferences") });
window_position: Gtk.WindowPosition.CENTER });
this._window.set_size_request(600, 400);
this._window.set_size_request(800, 500);
let vbox = new Gtk.Box({ orientation: Gtk.Orientation.VERTICAL });
this._window.add(vbox);
this._titlebar = new Gtk.HeaderBar({ show_close_button: true,
title: _("GNOME Shell Extensions") });
this._window.set_titlebar(this._titlebar);
let toolbar = new Gtk.Toolbar();
toolbar.get_style_context().add_class(Gtk.STYLE_CLASS_PRIMARY_TOOLBAR);
vbox.add(toolbar);
let toolitem;
let scroll = new Gtk.ScrolledWindow({ hscrollbar_policy: Gtk.PolicyType.NEVER,
shadow_type: Gtk.ShadowType.IN,
halign: Gtk.Align.CENTER,
margin: 18 });
this._window.add(scroll);
let label = new Gtk.Label({ label: '<b>' + _("Extension") + '</b>',
use_markup: true });
toolitem = new Gtk.ToolItem({ child: label });
toolbar.add(toolitem);
this._extensionSelector = new Gtk.ListBox({ selection_mode: Gtk.SelectionMode.NONE });
this._extensionSelector.set_sort_func(Lang.bind(this, this._sortList));
this._extensionSelector.set_header_func(Lang.bind(this, this._updateHeader));
this._extensionSelector = new Gtk.ComboBox({ model: this._model,
margin_left: 8,
hexpand: true });
this._extensionSelector.get_style_context().add_class(Gtk.STYLE_CLASS_RAISED);
scroll.add(this._extensionSelector);
let renderer = new Gtk.CellRendererText();
this._extensionSelector.pack_start(renderer, true);
this._extensionSelector.add_attribute(renderer, 'text', 1);
this._extensionSelector.set_cell_data_func(renderer, Lang.bind(this, this._setExtensionInsensitive));
this._extensionSelector.connect('changed', Lang.bind(this, this._extensionSelected));
toolitem = new Gtk.ToolItem({ child: this._extensionSelector });
toolitem.set_expand(true);
toolbar.add(toolitem);
this._extensionPrefsBin = new Gtk.Frame();
vbox.add(this._extensionPrefsBin);
let label = new Gtk.Label({
label: _("Select an extension to configure using the combobox above."),
vexpand: true
});
this._extensionPrefsBin.add(label);
this._shellProxy = new GnomeShellProxy(Gio.DBus.session, 'org.gnome.Shell', '/org/gnome/Shell');
this._shellProxy.connectSignal('ExtensionStatusChanged', Lang.bind(this, function(proxy, senderName, [uuid, state, error]) {
@ -203,6 +179,35 @@ const Application = new Lang.Class({
this._window.show_all();
},
_addCustomStyle: function() {
let provider = new Gtk.CssProvider();
try {
provider.load_from_data(customCss, -1);
} catch(e) {
log('Failed to add application style');
return;
}
let screen = this._window.window.get_screen();
let priority = Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION;
Gtk.StyleContext.add_provider_for_screen(screen, provider, priority);
},
_sortList: function(row1, row2) {
let name1 = ExtensionUtils.extensions[row1.uuid].metadata.name;
let name2 = ExtensionUtils.extensions[row2.uuid].metadata.name;
return name1.localeCompare(name2);
},
_updateHeader: function(row, before) {
if (!before || row.get_header())
return;
let sep = new Gtk.Separator({ orientation: Gtk.Orientation.HORIZONTAL });
row.set_header(sep);
},
_scanExtensions: function() {
let finder = new ExtensionUtils.ExtensionFinder();
finder.connect('extension-found', Lang.bind(this, this._extensionFound));
@ -211,15 +216,24 @@ const Application = new Lang.Class({
},
_extensionFound: function(finder, extension) {
let iter = this._model.append();
this._model.set(iter, [0, 1], [extension.uuid, extension.metadata.name]);
this._extensionIters[extension.uuid] = iter;
let row = new ExtensionRow(extension.uuid);
row.prefsButton.visible = this._extensionAvailable(row.uuid);
row.prefsButton.connect('clicked', Lang.bind(this,
function() {
this._selectExtension(row.uuid);
}));
row.show_all();
this._extensionSelector.add(row);
},
_extensionsLoaded: function() {
if (this._startupUuid && this._extensionAvailable(this._startupUuid))
this._selectExtension(this._startupUuid);
this._startupUuid = null;
this._skipMainWindow = false;
this._loaded = true;
},
_onActivate: function() {
@ -227,29 +241,125 @@ const Application = new Lang.Class({
},
_onStartup: function(app) {
this._buildModel();
this._buildUI(app);
this._addCustomStyle();
this._scanExtensions();
},
_onCommandLine: function(app, commandLine) {
app.activate();
let args = commandLine.get_arguments();
if (args.length) {
let uuid = args[0];
this._skipMainWindow = true;
// Strip off "extension:///" prefix which fakes a URI, if it exists
uuid = stripPrefix(uuid, "extension:///");
if (this._extensionAvailable(uuid))
this._selectExtension(uuid);
else
else if (!this._loaded)
this._startupUuid = uuid;
else
this._skipMainWindow = false;
}
return 0;
}
});
const ExtensionRow = new Lang.Class({
Name: 'ExtensionRow',
Extends: Gtk.ListBoxRow,
_init: function(uuid) {
this.parent();
this.uuid = uuid;
this._settings = new Gio.Settings({ schema: 'org.gnome.shell' });
this._settings.connect('changed::enabled-extensions', Lang.bind(this,
function() {
this._switch.state = this._isEnabled();
}));
this._buildUI();
},
_buildUI: function() {
let extension = ExtensionUtils.extensions[this.uuid];
let hbox = new Gtk.Box({ orientation: Gtk.Orientation.HORIZONTAL,
hexpand: true, margin: 12, spacing: 6 });
this.add(hbox);
let vbox = new Gtk.Box({ orientation: Gtk.Orientation.VERTICAL,
spacing: 6, hexpand: true });
hbox.add(vbox);
let name = GLib.markup_escape_text(extension.metadata.name, -1);
let label = new Gtk.Label({ label: '<b>' + name + '</b>',
use_markup: true,
halign: Gtk.Align.START });
vbox.add(label);
let desc = extension.metadata.description.split('\n')[0];
label = new Gtk.Label({ label: desc,
ellipsize: Pango.EllipsizeMode.END,
halign: Gtk.Align.START });
vbox.add(label);
let button = new Gtk.Button({ valign: Gtk.Align.CENTER,
no_show_all: true });
button.add(new Gtk.Image({ icon_name: 'emblem-system-symbolic',
icon_size: Gtk.IconSize.BUTTON,
visible: true }));
button.get_style_context().add_class('prefs-button');
hbox.add(button);
this.prefsButton = button;
this._switch = new Gtk.Switch({ valign: Gtk.Align.CENTER,
state: this._isEnabled() });
this._switch.connect('notify::active', Lang.bind(this,
function() {
if (this._switch.active)
this._enable();
else
this._disable();
}));
this._switch.connect('state-set', function() { return true; });
hbox.add(this._switch);
},
_isEnabled: function() {
let extensions = this._settings.get_strv('enabled-extensions');
return extensions.indexOf(this.uuid) != -1;
},
_enable: function() {
let extensions = this._settings.get_strv('enabled-extensions');
if (extensions.indexOf(this.uuid) != -1)
return;
extensions.push(this.uuid);
this._settings.set_strv('enabled-extensions', extensions);
},
_disable: function() {
let extensions = this._settings.get_strv('enabled-extensions');
let pos = extensions.indexOf(this.uuid);
if (pos == -1)
return;
do {
extensions.splice(pos, 1);
pos = extensions.indexOf(this.uuid);
} while (pos != -1);
this._settings.set_strv('enabled-extensions', extensions);
}
});
function initEnvironment() {
// Monkey-patch in a "global" object that fakes some Shell utilities
// that ExtensionUtils depends on.

View File

@ -483,7 +483,7 @@ const LoginDialog = new Lang.Class({
},
_ensureUserListLoaded: function() {
if (!this._userManager.is_loaded)
if (!this._userManager.is_loaded) {
this._userManagerLoadedId = this._userManager.connect('notify::is-loaded',
Lang.bind(this, function() {
if (this._userManager.is_loaded) {
@ -492,8 +492,10 @@ const LoginDialog = new Lang.Class({
this._userManagerLoadedId = 0;
}
}));
else
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, this._loadUserList));
} else {
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, this._loadUserList));
GLib.Source.set_name_by_id(id, '[gnome-shell] _loadUserList');
}
},
_updateDisableUserList: function() {
@ -686,10 +688,11 @@ const LoginDialog = new Lang.Class({
},
onUpdateScope: this,
onComplete: function() {
Mainloop.idle_add(Lang.bind(this, function() {
let id = Mainloop.idle_add(Lang.bind(this, function() {
this._greeter.call_start_session_when_ready_sync(serviceName, true, null);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] this._greeter.call_start_session_when_ready_sync');
},
onCompleteScope: this });
},
@ -745,6 +748,7 @@ const LoginDialog = new Lang.Class({
hold.release();
return GLib.SOURCE_REMOVE;
});
GLib.Source.set_name_by_id(this._timedLoginIdleTimeOutId, '[gnome-shell] this._timedLoginAnimationTime');
return hold;
},

View File

@ -252,6 +252,7 @@ const ShellUserVerifier = new Lang.Class({
this._queueMessageTimeout();
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._messageQueueTimeoutId, '[gnome-shell] this._queueMessageTimeout');
},
_queueMessage: function(message, messageType) {

View File

@ -84,6 +84,7 @@
<file>ui/userWidget.js</file>
<file>ui/viewSelector.js</file>
<file>ui/windowAttentionHandler.js</file>
<file>ui/windowMenu.js</file>
<file>ui/windowManager.js</file>
<file>ui/workspace.js</file>
<file>ui/workspaceSwitcherPopup.js</file>

View File

@ -46,32 +46,6 @@ const SystemdLoginSessionIface = '<node> \
const SystemdLoginManager = Gio.DBusProxy.makeProxyWrapper(SystemdLoginManagerIface);
const SystemdLoginSession = Gio.DBusProxy.makeProxyWrapper(SystemdLoginSessionIface);
const ConsoleKitManagerIface = '<node> \
<interface name="org.freedesktop.ConsoleKit.Manager"> \
<method name="CanRestart"> \
<arg type="b" direction="out"/> \
</method> \
<method name="CanStop"> \
<arg type="b" direction="out"/> \
</method> \
<method name="Restart" /> \
<method name="Stop" /> \
<method name="GetCurrentSession"> \
<arg type="o" direction="out" /> \
</method> \
</interface> \
</node>';
const ConsoleKitSessionIface = '<node> \
<interface name="org.freedesktop.ConsoleKit.Session"> \
<signal name="Lock" /> \
<signal name="Unlock" /> \
</interface> \
</node>';
const ConsoleKitSession = Gio.DBusProxy.makeProxyWrapper(ConsoleKitSessionIface);
const ConsoleKitManager = Gio.DBusProxy.makeProxyWrapper(ConsoleKitManagerIface);
function haveSystemd() {
return GLib.access("/run/systemd/seats", 0) >= 0;
}
@ -101,7 +75,7 @@ function canLock() {
-1, null);
let version = result.deep_unpack()[0].deep_unpack();
return versionCompare('3.5.91', version);
return haveSystemd() && versionCompare('3.5.91', version);
} catch(e) {
return false;
}
@ -119,7 +93,7 @@ function getLoginManager() {
if (haveSystemd())
_loginManager = new LoginManagerSystemd();
else
_loginManager = new LoginManagerConsoleKit();
_loginManager = new LoginManagerDummy();
}
return _loginManager;
@ -136,9 +110,6 @@ const LoginManagerSystemd = new Lang.Class({
Lang.bind(this, this._prepareForSleep));
},
// Having this function is a bit of a hack since the Systemd and ConsoleKit
// session objects have different interfaces - but in both cases there are
// Lock/Unlock signals, and that's all we count upon at the moment.
getCurrentSessionProxy: function(callback) {
if (this._currentSession) {
callback (this._currentSession);
@ -191,7 +162,7 @@ const LoginManagerSystemd = new Lang.Class({
let fd = -1;
try {
let [outVariant, fdList] = proxy.call_with_unix_fd_list_finish(result);
fd = fdList.steal_fds(outVariant.deep_unpack())[0];
fd = fdList.steal_fds()[0];
callback(new Gio.UnixInputStream({ fd: fd }));
} catch(e) {
logError(e, "Error getting systemd inhibitor");
@ -206,35 +177,13 @@ const LoginManagerSystemd = new Lang.Class({
});
Signals.addSignalMethods(LoginManagerSystemd.prototype);
const LoginManagerConsoleKit = new Lang.Class({
Name: 'LoginManagerConsoleKit',
const LoginManagerDummy = new Lang.Class({
Name: 'LoginManagerDummy',
_init: function() {
this._proxy = new ConsoleKitManager(Gio.DBus.system,
'org.freedesktop.ConsoleKit',
'/org/freedesktop/ConsoleKit/Manager');
},
// Having this function is a bit of a hack since the Systemd and ConsoleKit
// session objects have different interfaces - but in both cases there are
// Lock/Unlock signals, and that's all we count upon at the moment.
getCurrentSessionProxy: function(callback) {
if (this._currentSession) {
callback (this._currentSession);
return;
}
this._proxy.GetCurrentSessionRemote(Lang.bind(this,
function(result, error) {
if (error) {
logError(error, 'Could not get a proxy for the current session');
} else {
this._currentSession = new ConsoleKitSession(Gio.DBus.system,
'org.freedesktop.ConsoleKit',
result[0]);
callback(this._currentSession);
}
}));
// we could return a DummySession object that fakes whatever callers
// expect (at the time of writing: connect() and connectSignal()
// methods), but just never calling the callback should be safer
},
canSuspend: function(asyncCallback) {
@ -254,4 +203,4 @@ const LoginManagerConsoleKit = new Lang.Class({
callback(null);
}
});
Signals.addSignalMethods(LoginManagerConsoleKit.prototype);
Signals.addSignalMethods(LoginManagerDummy.prototype);

View File

@ -129,7 +129,7 @@ function trySpawn(argv)
// Dummy child watch; we don't want to double-fork internally
// because then we lose the parent-child relationship, which
// can break polkit. See https://bugzilla.redhat.com//show_bug.cgi?id=819275
GLib.child_watch_add(GLib.PRIORITY_DEFAULT, pid, function () {}, null);
GLib.child_watch_add(GLib.PRIORITY_DEFAULT, pid, function () {});
}
// trySpawnCommandLine:

View File

@ -167,6 +167,8 @@ const AppSwitcherPopup = new Lang.Class({
this._select(this._selectedIndex, this._nextWindow());
else if (keysym == Clutter.Up)
this._select(this._selectedIndex, null, true);
else
return Clutter.EVENT_PROPAGATE;
} else {
if (keysym == Clutter.Left)
this._select(this._previous());
@ -174,7 +176,11 @@ const AppSwitcherPopup = new Lang.Class({
this._select(this._next());
else if (keysym == Clutter.Down)
this._select(this._selectedIndex, 0);
else
return Clutter.EVENT_PROPAGATE;
}
return Clutter.EVENT_STOP;
},
_scrollHandler: function(direction) {
@ -305,6 +311,7 @@ const AppSwitcherPopup = new Lang.Class({
this._thumbnailTimeoutId = Mainloop.timeout_add (
THUMBNAIL_POPUP_TIME,
Lang.bind(this, this._timeoutPopupThumbnails));
GLib.Source.set_name_by_id(this._thumbnailTimeoutId, '[gnome-shell] this._timeoutPopupThumbnails');
}
},
@ -403,7 +410,11 @@ const WindowSwitcherPopup = new Lang.Class({
this._select(this._previous());
else if (keysym == Clutter.Right)
this._select(this._next());
else
return Clutter.EVENT_PROPAGATE;
}
return Clutter.EVENT_STOP;
},
_finish: function() {
@ -556,6 +567,7 @@ const AppSwitcher = new Lang.Class({
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

@ -34,6 +34,7 @@ const Animation = new Lang.Class({
this._showFrame(0);
this._timeoutId = Mainloop.timeout_add(this._speed, Lang.bind(this, this._update));
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._update');
}
this._isPlaying = true;

View File

@ -41,9 +41,7 @@ const MIN_FREQUENT_APPS_COUNT = 3;
const INDICATORS_BASE_TIME = 0.25;
const INDICATORS_ANIMATION_DELAY = 0.125;
const INDICATORS_ANIMATION_MAX_TIME = 0.75;
// Fraction of page height the finger or mouse must reach
// to change page
const PAGE_SWITCH_TRESHOLD = 0.2;
const PAGE_SWITCH_TIME = 0.3;
const VIEWS_SWITCH_TIME = 0.4;
@ -81,6 +79,10 @@ function _getFolderName(folder) {
return name;
}
function clamp(value, min, max) {
return Math.max(min, Math.min(max, value));
}
const BaseAppView = new Lang.Class({
Name: 'BaseAppView',
Abstract: true,
@ -439,8 +441,8 @@ const AllView = new Lang.Class({
},
goToPage: function(pageNumber) {
if(pageNumber < 0 || pageNumber > this._grid.nPages() - 1)
return;
pageNumber = clamp(pageNumber, 0, this._grid.nPages() - 1);
if (this._currentPage == pageNumber && this._displayingPopup && this._currentPopup)
return;
if (this._displayingPopup && this._currentPopup)
@ -472,14 +474,12 @@ const AllView = new Lang.Class({
// longer than PAGE_SWITCH_TIME
time = Math.min(time, PAGE_SWITCH_TIME);
if (pageNumber < this._grid.nPages() && pageNumber >= 0) {
this._currentPage = pageNumber;
Tweener.addTween(this._adjustment,
{ value: this._grid.getPageY(this._currentPage),
time: time,
transition: 'easeOutQuad' });
this._pageIndicators.setCurrentPage(pageNumber);
}
this._currentPage = pageNumber;
Tweener.addTween(this._adjustment,
{ value: this._grid.getPageY(this._currentPage),
time: time,
transition: 'easeOutQuad' });
this._pageIndicators.setCurrentPage(pageNumber);
},
_diffToPage: function (pageNumber) {
@ -526,15 +526,19 @@ const AllView = new Lang.Class({
_onPanEnd: function(action) {
if (this._displayingPopup)
return;
let diffCurrentPage = this._diffToPage(this._currentPage);
if (diffCurrentPage > this._scrollView.height * PAGE_SWITCH_TRESHOLD) {
if (action.get_velocity(0)[2] > 0)
this.goToPage(this._currentPage - 1);
else
this.goToPage(this._currentPage + 1);
} else {
this.goToPage(this._currentPage);
}
let pageHeight = this._grid.getPageHeight();
// Calculate the scroll value we'd be at, which is our current
// scroll plus any velocity the user had when they released
// their finger.
let velocity = -action.get_velocity(0)[2];
let endPanValue = this._adjustment.value + velocity;
let closestPage = Math.round(endPanValue / pageHeight);
this.goToPage(closestPage);
this._panning = false;
},
@ -764,7 +768,7 @@ const AppDisplay = new Lang.Class({
this._viewStack = new St.Widget({ x_expand: true, y_expand: true,
layout_manager: this._viewStackLayout });
this._viewStackLayout.connect('allocated-size-changed', Lang.bind(this, this._onAllocatedSizeChanged));
this.actor.add_actor(this._viewStack, { expand: true });
this.actor.add_actor(this._viewStack);
let layout = new ControlsBoxLayout({ homogeneous: true });
this._controls = new St.Widget({ style_class: 'app-view-controls',
layout_manager: layout });
@ -1402,6 +1406,7 @@ const AppIcon = new Lang.Class({
this.popupMenu();
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._menuTimeoutId, '[gnome-shell] this.popupMenu');
} else if (button == 3) {
this.popupMenu();
return Clutter.EVENT_STOP;
@ -1597,6 +1602,26 @@ const AppIconMenu = new Lang.Class({
favs.addFavorite(this._source.app.get_id());
}));
}
if (Shell.AppSystem.get_default().lookup_app('org.gnome.Software.desktop')) {
this._appendSeparator();
let item = this._appendMenuItem(_("Show Details"));
item.connect('activate', Lang.bind(this, function() {
let id = this._source.app.get_id();
let args = GLib.Variant.new('(ss)', [id, '']);
Gio.DBus.get(Gio.BusType.SESSION, null,
function(o, res) {
let bus = Gio.DBus.get_finish(res);
bus.call('org.gnome.Software',
'/org/gnome/Software',
'org.gtk.Actions', 'Activate',
GLib.Variant.new('(sava{sv})',
['details', [args], null]),
null, 0, -1, null, null);
Main.overview.hide();
});
}));
}
}
},

View File

@ -271,10 +271,11 @@ const BackgroundCache = new Lang.Class({
if (this._animationFilename == params.filename) {
if (params.onLoaded) {
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
params.onLoaded(this._animation);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] params.onLoaded');
}
}
@ -286,10 +287,11 @@ const BackgroundCache = new Lang.Class({
this._animation = animation;
if (params.onLoaded) {
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
params.onLoaded(this._animation);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] params.onLoaded');
}
}));
}
@ -386,10 +388,11 @@ const Background = new Lang.Class({
this.isLoaded = true;
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
this.emit('loaded');
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] this.emit');
},
_loadPattern: function() {
@ -532,6 +535,7 @@ const Background = new Lang.Class({
this._updateAnimation();
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._updateAnimationTimeoutId, '[gnome-shell] this._updateAnimation');
},
_loadAnimation: function(filename) {

View File

@ -14,6 +14,9 @@ const Shell = imports.gi.Shell;
const MSECS_IN_DAY = 24 * 60 * 60 * 1000;
const SHOW_WEEKDATE_KEY = 'show-weekdate';
// alias to prevent xgettext from picking up strings translated in GTK+
const gtk30_ = Gettext_gtk30.gettext;
// in org.gnome.desktop.interface
const CLOCK_FORMAT_KEY = 'clock-format';
@ -387,7 +390,7 @@ const Calendar = new Lang.Class({
// Find the ordering for month/year in the calendar heading
this._headerFormatWithoutYear = '%B';
switch (Gettext_gtk30.gettext('calendar:MY')) {
switch (gtk30_('calendar:MY')) {
case 'calendar:MY':
this._headerFormat = '%B %Y';
break;

View File

@ -43,6 +43,7 @@ const AutomountManager = new Lang.Class({
this._driveEjectButtonId = this._volumeMonitor.connect('drive-eject-button', Lang.bind(this, this._onDriveEjectButton));
this._mountAllId = Mainloop.idle_add(Lang.bind(this, this._startupMountAll));
GLib.Source.set_name_by_id(this._mountAllId, '[gnome-shell] this._startupMountAll');
},
disable: function() {
@ -234,10 +235,11 @@ const AutomountManager = new Lang.Class({
},
_allowAutorunExpire: function(volume) {
Mainloop.timeout_add_seconds(AUTORUN_EXPIRE_TIMEOUT_SECS, function() {
let id = Mainloop.timeout_add_seconds(AUTORUN_EXPIRE_TIMEOUT_SECS, function() {
volume.allowAutorun = false;
return GLib.SOURCE_REMOVE;
});
GLib.Source.set_name_by_id(id, '[gnome-shell] volume.allowAutorun');
}
});
const Component = AutomountManager;

View File

@ -681,6 +681,7 @@ const ChatSource = new Lang.Class({
Mainloop.source_remove(this._notifyTimeoutId);
this._notifyTimeoutId = Mainloop.timeout_add(500,
Lang.bind(this, this._notifyTimeout));
GLib.Source.set_name_by_id(this._notifyTimeoutId, '[gnome-shell] this._notifyTimeout');
},
_notifyTimeout: function() {
@ -924,14 +925,16 @@ const ChatNotification = new Lang.Class({
realMessage: group != 'meta' });
if (!props.noTimestamp) {
if (timestamp < currentTime - SCROLLBACK_IMMEDIATE_TIME)
if (timestamp < currentTime - SCROLLBACK_IMMEDIATE_TIME) {
this.appendTimestamp();
else
} else {
// Schedule a new timestamp in SCROLLBACK_IMMEDIATE_TIME
// from the timestamp of the message.
this._timestampTimeoutId = Mainloop.timeout_add_seconds(
SCROLLBACK_IMMEDIATE_TIME - (currentTime - timestamp),
Lang.bind(this, this.appendTimestamp));
GLib.Source.set_name_by_id(this._timestampTimeoutId, '[gnome-shell] this.appendTimestamp');
}
}
this._filterMessages();
@ -1100,6 +1103,7 @@ const ChatNotification = new Lang.Class({
this._composingTimeoutId = Mainloop.timeout_add_seconds(
COMPOSING_STOP_TIMEOUT,
Lang.bind(this, this._composingStopTimeout));
GLib.Source.set_name_by_id(this._composingTimeoutId, '[gnome-shell] this._composingStopTimeout');
} else {
this.source.setChatState(Tp.ChannelChatState.ACTIVE);
}

View File

@ -165,6 +165,10 @@ const CtrlAltTabPopup = new Lang.Class({
this._select(this._previous());
else if (keysym == Clutter.Right)
this._select(this._next());
else
return Clutter.EVENT_PROPAGATE;
return Clutter.EVENT_STOP;
},
_finish : function(time) {

View File

@ -582,6 +582,7 @@ const Dash = new Lang.Class({
this._showLabelTimeoutId = 0;
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._showLabelTimeoutId, '[gnome-shell] item.showLabel');
if (this._resetHoverTimeoutId > 0) {
Mainloop.source_remove(this._resetHoverTimeoutId);
this._resetHoverTimeoutId = 0;
@ -599,6 +600,7 @@ const Dash = new Lang.Class({
this._resetHoverTimeoutId = 0;
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._resetHoverTimeoutId, '[gnome-shell] this._labelShowing');
}
}
},

View File

@ -63,8 +63,11 @@ const DateMenuButton = new Lang.Class({
hbox.add(vbox);
// Date
// 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._date = new St.Button({ style_class: 'datemenu-date-label',
can_focus: true,
reactive: false
});
this._date.connect('clicked',
Lang.bind(this, function() {
@ -82,6 +85,9 @@ const DateMenuButton = new Lang.Class({
// and the calender makes those dates unclickable when instantiated with
// a null event source
this._eventList.setDate(date);
// Make the button reactive only if the selected date is not the current date.
this._date.can_focus = this._date.reactive = !this._isToday(date)
}));
vbox.add(this._calendar.actor);
@ -132,6 +138,13 @@ const DateMenuButton = new Lang.Class({
this._sessionUpdated();
},
_isToday: function(date) {
let now = new Date();
return now.getYear() == date.getYear() &&
now.getMonth() == date.getMonth() &&
now.getDay() == date.getDay();
},
_appInstalledChanged: function() {
this._calendarApp = undefined;
this._updateEventsVisibility();

View File

@ -395,6 +395,7 @@ const _Draggable = new Lang.Class({
this._updateHoverId = GLib.idle_add(GLib.PRIORITY_DEFAULT,
Lang.bind(this, this._updateDragHover));
GLib.Source.set_name_by_id(this._updateHoverId, '[gnome-shell] this._updateDragHover');
},
_updateDragPosition : function (event) {

View File

@ -551,6 +551,7 @@ const EndSessionDialog = new Lang.Class({
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._timerId, '[gnome-shell] this._confirm');
},
_stopTimer: function() {

View File

@ -47,8 +47,11 @@ function _patchLayoutClass(layoutClass, styleProps) {
layoutClass.prototype.hookup_style = function(container) {
container.connect('style-changed', Lang.bind(this, function() {
let node = container.get_theme_node();
for (let prop in styleProps)
this[prop] = node.get_length(styleProps[prop]);
for (let prop in styleProps) {
let [found, length] = node.lookup_length(styleProps[prop], false);
if (found)
this[prop] = length;
}
}));
};
layoutClass.prototype.child_set = function(actor, props) {

View File

@ -645,6 +645,10 @@ const PaginatedIconGrid = new Lang.Class({
return this._nPages;
},
getPageHeight: function() {
return this._availableHeightPerPageForItems();
},
getPageY: function(pageNumber) {
if (!this._nPages)
return 0;

View File

@ -266,12 +266,14 @@ const Keyboard = new Lang.Class({
return;
}
if (!this._showIdleId)
this._showIdleId = GLib.idle_add(GLib.PRIORITY_DEFAULT_IDLE,
Lang.bind(this, function() {
this.Show(time);
return GLib.SOURCE_REMOVE;
}));
if (!this._showIdleId) {
this._showIdleId = GLib.idle_add(GLib.PRIORITY_DEFAULT_IDLE,
Lang.bind(this, function() {
this.Show(time);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._showIdleId, '[gnome-shell] this.Show');
}
},
_createLayersForGroup: function (gname) {
@ -500,6 +502,7 @@ const Keyboard = new Lang.Class({
this._show(monitor);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._keyboardRestingId, '[gnome-shell] this._clearKeyboardRestTimer');
},
_show: function(monitor) {
@ -526,6 +529,7 @@ const Keyboard = new Lang.Class({
this._hide();
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._keyboardRestingId, '[gnome-shell] this._clearKeyboardRestTimer');
},
_hide: function() {

View File

@ -603,7 +603,7 @@ const LayoutManager = new Lang.Class({
this._updateBackgrounds();
// We need to force an update of the regions now before we scale
// the UI group to get the coorect allocation for the struts.
// the UI group to get the correct allocation for the struts.
this._updateRegions();
this.trayBox.hide();
@ -628,10 +628,11 @@ const LayoutManager = new Lang.Class({
// until the event loop is uncontended and idle.
// This helps to prevent us from running the animation
// when the system is bogged down
GLib.idle_add(GLib.PRIORITY_LOW, Lang.bind(this, function() {
let id = GLib.idle_add(GLib.PRIORITY_LOW, Lang.bind(this, function() {
this._startupAnimation();
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] this._startupAnimation');
},
_startupAnimation: function() {

View File

@ -843,9 +843,10 @@ const LookingGlass = new Lang.Class({
System.gc();
this._timeoutId = Mainloop.timeout_add(500, Lang.bind(this, function () {
gcIcon.icon_name = 'gnome-fs-trash-full';
Mainloop.source_remove(this._timeoutId);
this._timeoutId = 0;
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] gcIcon.icon_name = \'gnome-fs-trash-full\'');
return Clutter.EVENT_PROPAGATE;
}));

View File

@ -43,6 +43,7 @@ const DEFAULT_BACKGROUND_COLOR = Clutter.Color.from_pixel(0x2e3436ff);
const A11Y_SCHEMA = 'org.gnome.desktop.a11y.keyboard';
const STICKY_KEYS_ENABLE = 'stickykeys-enable';
const GNOMESHELL_STARTED_MESSAGE_ID = 'f3ea493c22934e26811cd62abe8e203a';
let componentManager = null;
let panel = null;
@ -55,7 +56,7 @@ let screenShield = null;
let notificationDaemon = null;
let windowAttentionHandler = null;
let ctrlAltTabManager = null;
let osdWindow = null;
let osdWindowManager = null;
let sessionMode = null;
let shellDBusService = null;
let shellMountOpDBusService = null;
@ -103,9 +104,6 @@ function start() {
global.logError = window.log;
global.log = window.log;
if (!Meta.is_wayland_compositor)
Meta.is_wayland_compositor = function () { return false; };
// Chain up async errors reported from C
global.connect('notify-error', function (global, msg, detail) { notifyError(msg, detail); });
@ -158,7 +156,7 @@ function _initializeUI() {
screencastService = new Screencast.ScreencastService();
xdndHandler = new XdndHandler.XdndHandler();
ctrlAltTabManager = new CtrlAltTab.CtrlAltTabManager();
osdWindow = new OsdWindow.OsdWindow();
osdWindowManager = new OsdWindow.OsdWindowManager();
overview = new Overview.Overview();
wm = new WindowManager.WindowManager();
magnifier = new Magnifier.Magnifier();
@ -191,8 +189,6 @@ function _initializeUI() {
_startDate = new Date();
log('GNOME Shell started at ' + _startDate);
let perfModuleName = GLib.getenv("SHELL_PERF_MODULE");
if (perfModuleName) {
let perfOutput = GLib.getenv("SHELL_PERF_OUTPUT");
@ -216,6 +212,17 @@ function _initializeUI() {
if (screenShield) {
screenShield.lockIfWasLocked();
}
if (LoginManager.haveSystemd() &&
sessionMode.currentMode != 'gdm' &&
sessionMode.currentMode != 'initial-setup') {
// Do not import globally to not depend
// on systemd on non-systemd systems.
let GSystem = imports.gi.GSystem;
GSystem.log_structured_print('GNOME Shell started at ' + _startDate,
['MESSAGE_ID=' + GNOMESHELL_STARTED_MESSAGE_ID]);
} else {
log('GNOME Shell started at ' + _startDate);
}
});
}
@ -611,5 +618,6 @@ function queueDeferredWork(workId) {
_deferredTimeoutId = 0;
return GLib.SOURCE_REMOVE;
});
GLib.Source.set_name_by_id(_deferredTimeoutId, '[gnome-shell] _runAllDeferredWork');
}
}

View File

@ -1987,6 +1987,7 @@ const MessageTray = new Lang.Class({
this._trayDwellTimeoutId = Mainloop.timeout_add(TRAY_DWELL_TIME,
Lang.bind(this, this._trayDwellTimeout));
GLib.Source.set_name_by_id(this._trayDwellTimeoutId, '[gnome-shell] this._trayDwellTimeout');
}
this._trayDwelling = true;
} else {
@ -2316,6 +2317,7 @@ const MessageTray = new Lang.Class({
// 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 * 1000 : HIDE_TIMEOUT * 1000;
this._notificationLeftTimeoutId = Mainloop.timeout_add(timeout, Lang.bind(this, this._onNotificationLeftTimeout));
GLib.Source.set_name_by_id(this._notificationLeftTimeoutId, '[gnome-shell] this._onNotificationLeftTimeout');
}
},
@ -2351,6 +2353,7 @@ const MessageTray = new Lang.Class({
this._notificationLeftMouseX = -1;
this._notificationLeftTimeoutId = Mainloop.timeout_add(LONGER_HIDE_TIMEOUT * 1000,
Lang.bind(this, this._onNotificationLeftTimeout));
GLib.Source.set_name_by_id(this._notificationLeftTimeoutId, '[gnome-shell] this._onNotificationLeftTimeout');
} else {
this._notificationLeftTimeoutId = 0;
this._useLongerNotificationLeftTimeout = false;
@ -2668,10 +2671,12 @@ const MessageTray = new Lang.Class({
Mainloop.source_remove(this._notificationTimeoutId);
this._notificationTimeoutId = 0;
}
if (timeout > 0)
if (timeout > 0) {
this._notificationTimeoutId =
Mainloop.timeout_add(timeout,
Lang.bind(this, this._notificationTimeout));
GLib.Source.set_name_by_id(this._notificationTimeoutId, '[gnome-shell] this._notificationTimeout');
}
},
_notificationTimeout: function() {

View File

@ -244,11 +244,12 @@ const FdoNotificationDaemon = new Lang.Class({
// Ignore replacesId since we already sent back a
// NotificationClosed for that id.
id = this._nextNotificationId++;
Mainloop.idle_add(Lang.bind(this,
function () {
this._emitNotificationClosed(id, NotificationClosedReason.DISMISSED);
return GLib.SOURCE_REMOVE;
}));
let idle_id = Mainloop.idle_add(Lang.bind(this,
function () {
this._emitNotificationClosed(id, NotificationClosedReason.DISMISSED);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(idle_id, '[gnome-shell] this._emitNotificationClosed');
return invocation.return_value(GLib.Variant.new('(u)', [id]));
}

View File

@ -73,14 +73,17 @@ const LevelBar = new Lang.Class({
const OsdWindow = new Lang.Class({
Name: 'OsdWindow',
_init: function() {
_init: function(monitorIndex) {
this._popupSize = 0;
this.actor = new St.Widget({ x_expand: true,
y_expand: true,
x_align: Clutter.ActorAlign.CENTER,
y_align: Clutter.ActorAlign.CENTER });
this._currentMonitor = undefined;
this.setMonitor (-1);
this._monitorIndex = monitorIndex;
let constraint = new Layout.MonitorConstraint({ index: monitorIndex });
this.actor.add_constraint(constraint);
this._box = new St.BoxLayout({ style_class: 'osd-window',
vertical: true });
this.actor.add_actor(this._box);
@ -109,7 +112,6 @@ const OsdWindow = new Lang.Class({
Main.layoutManager.connect('monitors-changed',
Lang.bind(this, this._monitorsChanged));
this._monitorsChanged();
Main.uiGroup.add_child(this.actor);
},
@ -156,6 +158,7 @@ const OsdWindow = new Lang.Class({
Mainloop.source_remove(this._hideTimeoutId);
this._hideTimeoutId = Mainloop.timeout_add(HIDE_TIMEOUT,
Lang.bind(this, this._hide));
GLib.Source.set_name_by_id(this._hideTimeoutId, '[gnome-shell] this._hide');
},
cancel: function() {
@ -188,12 +191,9 @@ const OsdWindow = new Lang.Class({
_monitorsChanged: function() {
/* assume 110x110 on a 640x480 display and scale from there */
let monitor;
if (this._currentMonitor >= 0)
monitor = Main.layoutManager.monitors[this._currentMonitor];
else
monitor = Main.layoutManager.primaryMonitor;
let monitor = Main.layoutManager.monitors[this._monitorIndex];
if (!monitor)
return; // we are about to be removed
let scalew = monitor.width / 640.0;
let scaleh = monitor.height / 480.0;
@ -222,23 +222,56 @@ const OsdWindow = new Lang.Class({
// but the theme takes measures in unscaled dimensions
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
this._box.style = 'min-height: %dpx;'.format(Math.max(minWidth, minHeight) / scaleFactor);
},
setMonitor: function(index) {
let constraint;
if (index < 0)
index = -1;
if (this._currentMonitor == index)
return;
if (index < 0)
constraint = new Layout.MonitorConstraint({ primary: true });
else
constraint = new Layout.MonitorConstraint({ index: index });
this.actor.clear_constraints();
this.actor.add_constraint(constraint);
this._currentMonitor = index;
}
});
const OsdWindowManager = new Lang.Class({
Name: 'OsdWindowManager',
_init: function() {
this._osdWindows = [];
Main.layoutManager.connect('monitors-changed',
Lang.bind(this, this._monitorsChanged));
this._monitorsChanged();
},
_monitorsChanged: function() {
for (let i = 0; i < Main.layoutManager.monitors.length; i++) {
if (this._osdWindows[i] == undefined)
this._osdWindows[i] = new OsdWindow(i);
}
for (let i = Main.layoutManager.monitors.length; i < this._osdWindows.length; i++) {
this._osdWindows[i].actor.destroy();
this._osdWindows[i] = null;
}
this._osdWindows.length = Main.layoutManager.monitors.length;
},
_showOsdWindow: function(monitorIndex, icon, label, level) {
this._osdWindows[monitorIndex].setIcon(icon);
this._osdWindows[monitorIndex].setLabel(label);
this._osdWindows[monitorIndex].setLevel(level);
this._osdWindows[monitorIndex].show();
},
show: function(monitorIndex, icon, label, level) {
if (monitorIndex != -1) {
for (let i = 0; i < this._osdWindows.length; i++) {
if (i == monitorIndex)
this._showOsdWindow(i, icon, label, level);
else
this._osdWindows[i].cancel();
}
} else {
for (let i = 0; i < this._osdWindows.length; i++)
this._showOsdWindow(i, icon, label, level);
}
},
hideAll: function() {
for (let i = 0; i < this._osdWindows.length; i++)
this._osdWindows[i].cancel();
}
});

View File

@ -365,6 +365,7 @@ const Overview = new Lang.Class({
this._lastHoveredWindow = null;
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._windowSwitchTimeoutId, '[gnome-shell] Main.activateWindow');
}
return DND.DragMotionResult.CONTINUE;

View File

@ -259,13 +259,18 @@ const ThumbnailsSlider = new Lang.Class({
Main.layoutManager.connect('monitors-changed', Lang.bind(this, this._updateSlide));
this.actor.connect('notify::hover', Lang.bind(this, this._updateSlide));
global.window_manager.connect('switch-workspace', Lang.bind(this, this._updateSlide));
this._thumbnailsBox.actor.bind_property('visible', this.actor, 'visible', GObject.BindingFlags.SYNC_CREATE);
},
_getAlwaysZoomOut: function() {
// Always show the pager when hover, during a drag, or if workspaces are
// actually used, e.g. there are windows on more than one
let alwaysZoomOut = this.actor.hover || this._inDrag || !Meta.prefs_get_dynamic_workspaces() || global.screen.n_workspaces > 2;
// actually used, e.g. there are windows on any non-active workspace
let alwaysZoomOut = this.actor.hover ||
this._inDrag ||
!Meta.prefs_get_dynamic_workspaces() ||
global.screen.n_workspaces > 2 ||
global.screen.get_active_workspace_index() != 0;
if (!alwaysZoomOut) {
let monitors = Main.layoutManager.monitors;

View File

@ -595,6 +595,7 @@ const ActivitiesButton = new Lang.Class({
Mainloop.source_remove(this._xdndTimeOut);
this._xdndTimeOut = Mainloop.timeout_add(BUTTON_DND_ACTIVATION_TIMEOUT,
Lang.bind(this, this._xdndToggleOverview, actor));
GLib.Source.set_name_by_id(this._xdndTimeOut, '[gnome-shell] this._xdndToggleOverview');
return DND.DragMotionResult.CONTINUE;
},

View File

@ -107,6 +107,7 @@ const PointerWatcher = new Lang.Class({
this._timeoutId = Mainloop.timeout_add(minInterval,
Lang.bind(this, this._onTimeout));
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout');
},
_onTimeout: function() {

View File

@ -251,8 +251,16 @@ const PopupSeparatorMenuItem = new Lang.Class({
this.actor.add(this.label);
this.actor.label_actor = this.label;
this.label.connect('notify::text',
Lang.bind(this, this._syncVisibility));
this._syncVisibility();
this._separator = new Separator.HorizontalSeparator({ style_class: 'popup-separator-menu-item' });
this.actor.add(this._separator.actor, { expand: true });
},
_syncVisibility: function() {
this.label.visible = this.label.text != '';
}
});

View File

@ -850,6 +850,7 @@ const ScreenShield = new Lang.Class({
this.lock(false);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._lockTimeoutId, '[gnome-shell] this.lock');
}
this._activateFade(this._longLightbox, STANDARD_FADE_TIME);
@ -1041,6 +1042,7 @@ const ScreenShield = new Lang.Class({
if (!this._arrowAnimationId) {
this._arrowAnimationId = Mainloop.timeout_add(6000, Lang.bind(this, this._animateArrows));
GLib.Source.set_name_by_id(this._arrowAnimationId, '[gnome-shell] this._animateArrows');
this._animateArrows();
}
@ -1108,10 +1110,11 @@ const ScreenShield = new Lang.Class({
if (params.fadeToBlack && params.animateFade) {
// Take a beat
Mainloop.timeout_add(1000 * MANUAL_FADE_TIME, Lang.bind(this, function() {
let id = Mainloop.timeout_add(1000 * MANUAL_FADE_TIME, Lang.bind(this, function() {
this._activateFade(this._shortLightbox, MANUAL_FADE_TIME);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] this._activateFade');
} else {
if (params.fadeToBlack)
this._activateFade(this._shortLightbox, 0);

View File

@ -11,6 +11,7 @@ const Shell = imports.gi.Shell;
const Signals = imports.signals;
const St = imports.gi.St;
const GrabHelper = imports.ui.grabHelper;
const Lightbox = imports.ui.lightbox;
const Main = imports.ui.main;
const Tweener = imports.ui.tweener;
@ -139,6 +140,7 @@ const SelectArea = new Lang.Class({
this._startY = -1;
this._lastX = 0;
this._lastY = 0;
this._result = null;
this._initRubberbandColors();
@ -148,12 +150,12 @@ const SelectArea = new Lang.Class({
y: 0 });
Main.uiGroup.add_actor(this._group);
this._grabHelper = new GrabHelper.GrabHelper(this._group);
this._group.connect('button-press-event',
Lang.bind(this, this._onButtonPress));
this._group.connect('button-release-event',
Lang.bind(this, this._onButtonRelease));
this._group.connect('key-press-event',
Lang.bind(this, this._onKeyPress));
this._group.connect('motion-event',
Lang.bind(this, this._onMotionEvent));
@ -169,10 +171,12 @@ const SelectArea = new Lang.Class({
},
show: function() {
if (!Main.pushModal(this._group) || this._group.visible)
if (!this._grabHelper.grab({ actor: this._group,
onUngrab: Lang.bind(this, this._onUngrab) }))
return;
global.screen.set_cursor(Meta.Cursor.CROSSHAIR);
Main.uiGroup.set_child_above_sibling(this._group, null);
this._group.visible = true;
},
@ -202,13 +206,6 @@ const SelectArea = new Lang.Class({
height: Math.abs(this._startY - this._lastY) };
},
_onKeyPress: function(actor, event) {
if (event.get_key_symbol() == Clutter.Escape)
this._destroy(null, false);
return Clutter.EVENT_PROPAGATE;
},
_onMotionEvent: function(actor, event) {
if (this._startX == -1 || this._startY == -1)
return Clutter.EVENT_PROPAGATE;
@ -230,24 +227,28 @@ const SelectArea = new Lang.Class({
},
_onButtonRelease: function(actor, event) {
this._destroy(this._getGeometry(), true);
return Clutter.EVENT_PROPAGATE;
},
_destroy: function(geometry, fade) {
this._result = this._getGeometry();
Tweener.addTween(this._group,
{ opacity: 0,
time: fade ? 0.2 : 0,
time: 0.2,
transition: 'easeOutQuad',
onComplete: Lang.bind(this,
function() {
Main.popModal(this._group);
this._group.destroy();
global.screen.set_cursor(Meta.Cursor.DEFAULT);
this.emit('finished', geometry);
this._grabHelper.ungrab();
})
});
return Clutter.EVENT_PROPAGATE;
},
_onUngrab: function() {
global.screen.set_cursor(Meta.Cursor.DEFAULT);
this.emit('finished', this._result);
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this,
function() {
this._group.destroy();
return GLib.SOURCE_REMOVE;
}));
}
});
Signals.addSignalMethods(SelectArea.prototype);

View File

@ -39,11 +39,12 @@ const Main = imports.ui.main;
function sleep(milliseconds) {
let cb;
Mainloop.timeout_add(milliseconds, function() {
let id = Mainloop.timeout_add(milliseconds, function() {
if (cb)
cb();
return GLib.SOURCE_REMOVE;
});
GLib.Source.set_name_by_id(id, '[gnome-shell] sleep');
return function(callback) {
cb = callback;

View File

@ -140,13 +140,14 @@ function _loadModes() {
function listModes() {
_loadModes();
Mainloop.idle_add(function() {
let id = Mainloop.idle_add(function() {
let names = Object.getOwnPropertyNames(_modes);
for (let i = 0; i < names.length; i++)
if (_modes[names[i]].isPrimary)
print(names[i]);
Mainloop.quit('listModes');
});
GLib.Source.set_name_by_id(id, '[gnome-shell] listModes');
Mainloop.run('listModes');
}

View File

@ -141,12 +141,7 @@ const GnomeShell = new Lang.Class({
if (params['icon'])
icon = Gio.Icon.new_for_string(params['icon']);
Main.osdWindow.setIcon(icon);
Main.osdWindow.setMonitor (monitorIndex);
Main.osdWindow.setLabel(params['label']);
Main.osdWindow.setLevel(params['level']);
Main.osdWindow.show();
Main.osdWindowManager.show(monitorIndex, icon, params['label'], params['level']);
},
FocusApp: function(id) {

View File

@ -103,6 +103,7 @@ const ATIndicator = new Lang.Class({
return;
this._syncMenuVisbilityIdle = Mainloop.idle_add(Lang.bind(this, this._syncMenuVisibility));
GLib.Source.set_name_by_id(this._syncMenuVisbilityIdle, '[gnome-shell] this._syncMenuVisibility');
},
_buildItemExtended: function(string, initial_value, writable, on_set) {

View File

@ -292,6 +292,10 @@ const InputSourcePopup = new Lang.Class({
this._select(this._previous());
else if (keysym == Clutter.Right)
this._select(this._next());
else
return Clutter.EVENT_PROPAGATE;
return Clutter.EVENT_STOP;
},
_finish : function() {

View File

@ -423,18 +423,18 @@ const NMConnectionDevice = new Lang.Class({
case NetworkManager.DeviceState.UNMANAGED:
/* Translators: this is for network devices that are physically present but are not
under NetworkManager's control (and thus cannot be used in the menu) */
return _("unmanaged");
return _("Unmanaged");
case NetworkManager.DeviceState.DEACTIVATING:
return _("disconnecting...");
return _("Disconnecting");
case NetworkManager.DeviceState.PREPARE:
case NetworkManager.DeviceState.CONFIG:
case NetworkManager.DeviceState.IP_CONFIG:
case NetworkManager.DeviceState.IP_CHECK:
case NetworkManager.DeviceState.SECONDARIES:
return _("connecting...");
return _("Connecting");
case NetworkManager.DeviceState.NEED_AUTH:
/* Translators: this is for network connections that require some kind of key or password */
return _("authentication required");
return _("Authentication required");
case NetworkManager.DeviceState.UNAVAILABLE:
// This state is actually a compound of various states (generically unavailable,
// firmware missing), that are exposed by different properties (whose state may
@ -442,13 +442,13 @@ const NMConnectionDevice = new Lang.Class({
if (this._device.firmware_missing) {
/* Translators: this is for devices that require some kind of firmware or kernel
module, which is missing */
return _("firmware missing");
return _("Firmware missing");
}
/* Translators: this is for a network device that cannot be activated (for example it
is disabled by rfkill, or it has no coverage */
return _("unavailable");
return _("Unavailable");
case NetworkManager.DeviceState.FAILED:
return _("connection failed");
return _("Connection failed");
default:
log('Device state invalid, is %d'.format(this._device.state));
return 'invalid';

View File

@ -161,11 +161,12 @@ const SwitcherPopup = new Lang.Class({
// disturbed by the popup briefly flashing.
this._initialDelayTimeoutId = Mainloop.timeout_add(POPUP_DELAY_TIMEOUT,
Lang.bind(this, function () {
Main.osdWindow.cancel();
Main.osdWindowManager.hideAll();
this.actor.opacity = 255;
this._initialDelayTimeoutId = 0;
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(this._initialDelayTimeoutId, '[gnome-shell] Main.osdWindow.cancel');
return true;
},
@ -189,10 +190,11 @@ const SwitcherPopup = new Lang.Class({
this._disableHover();
if (this._keyPressHandler(keysym, backwards, action) != Clutter.EVENT_PROPAGATE)
return Clutter.EVENT_STOP;
if (keysym == Clutter.Escape)
this.destroy();
else
this._keyPressHandler(keysym, backwards, action);
return Clutter.EVENT_STOP;
},
@ -250,6 +252,7 @@ const SwitcherPopup = new Lang.Class({
Mainloop.source_remove(this._motionTimeoutId);
this._motionTimeoutId = Mainloop.timeout_add(DISABLE_HOVER_TIMEOUT, Lang.bind(this, this._mouseTimedOut));
GLib.Source.set_name_by_id(this._motionTimeoutId, '[gnome-shell] this._mouseTimedOut');
},
_mouseTimedOut: function() {

View File

@ -282,7 +282,7 @@ const ViewSelector = new Lang.Class({
return Clutter.EVENT_STOP;
} else if (this._shouldTriggerSearch(symbol)) {
this.startSearch(event);
} else if (!this._searchActive) {
} else if (!this._searchActive && !global.stage.key_focus) {
if (symbol == Clutter.Tab || symbol == Clutter.Down) {
this._activePage.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false);
return true;
@ -383,9 +383,11 @@ const ViewSelector = new Lang.Class({
this._iconClickedId = this._entry.connect('secondary-icon-clicked',
Lang.bind(this, this.reset));
if (this._searchTimeoutId == 0)
if (this._searchTimeoutId == 0) {
this._searchTimeoutId = Mainloop.timeout_add(150,
Lang.bind(this, this._doSearch));
GLib.Source.set_name_by_id(this._searchTimeoutId, '[gnome-shell] this._doSearch');
}
} else {
if (this._iconClickedId > 0) {
this._entry.disconnect(this._iconClickedId);

View File

@ -15,6 +15,7 @@ const WorkspaceSwitcherPopup = imports.ui.workspaceSwitcherPopup;
const Main = imports.ui.main;
const ModalDialog = imports.ui.modalDialog;
const Tweener = imports.ui.tweener;
const WindowMenu = imports.ui.windowMenu;
const SHELL_KEYBINDINGS_SCHEMA = 'org.gnome.shell.keybindings';
const WINDOW_ANIMATION_TIME = 0.25;
@ -82,6 +83,7 @@ const DisplayChangeDialog = new Lang.Class({
{ expand: false, x_fill: false, x_align: St.Align.END });
this._timeoutId = Mainloop.timeout_add(ONE_SECOND, Lang.bind(this, this._tick));
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._tick');
},
close: function(timestamp) {
@ -271,18 +273,20 @@ const WorkspaceTracker = new Lang.Class({
this._queueCheckWorkspaces();
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(workspace._keepAliveId, '[gnome-shell] this._queueCheckWorkspaces');
},
_windowRemoved: function(workspace, window) {
workspace._lastRemovedWindow = window;
this._queueCheckWorkspaces();
Mainloop.timeout_add(LAST_WINDOW_GRACE_TIME, Lang.bind(this, function() {
let id = Mainloop.timeout_add(LAST_WINDOW_GRACE_TIME, Lang.bind(this, function() {
if (workspace._lastRemovedWindow == window) {
workspace._lastRemovedWindow = null;
this._queueCheckWorkspaces();
}
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] this._queueCheckWorkspaces');
},
_windowLeftMonitor: function(metaScreen, monitorIndex, metaWin) {
@ -477,6 +481,7 @@ const WindowManager = new Lang.Class({
this._shellwm.connect('switch-workspace', Lang.bind(this, this._switchWorkspace));
this._shellwm.connect('show-tile-preview', Lang.bind(this, this._showTilePreview));
this._shellwm.connect('hide-tile-preview', Lang.bind(this, this._hideTilePreview));
this._shellwm.connect('show-window-menu', Lang.bind(this, this._showWindowMenu));
this._shellwm.connect('minimize', Lang.bind(this, this._minimizeWindow));
this._shellwm.connect('maximize', Lang.bind(this, this._maximizeWindow));
this._shellwm.connect('unmaximize', Lang.bind(this, this._unmaximizeWindow));
@ -504,6 +509,10 @@ const WindowManager = new Lang.Class({
Shell.KeyBindingMode.NORMAL |
Shell.KeyBindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('switch-to-workspace-last',
Shell.KeyBindingMode.NORMAL |
Shell.KeyBindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('move-to-workspace-left',
Shell.KeyBindingMode.NORMAL |
Shell.KeyBindingMode.OVERVIEW,
@ -604,6 +613,9 @@ const WindowManager = new Lang.Class({
this.setCustomKeybindingHandler('move-to-workspace-12',
Shell.KeyBindingMode.NORMAL,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('move-to-workspace-last',
Shell.KeyBindingMode.NORMAL,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('switch-applications',
Shell.KeyBindingMode.NORMAL,
Lang.bind(this, this._startAppSwitcher));
@ -659,6 +671,8 @@ const WindowManager = new Lang.Class({
this._dimWindow(this._dimmedWindows[i]);
}));
this._windowMenuManager = new WindowMenu.WindowMenuManager();
if (Main.sessionMode.hasWorkspaces)
this._workspaceTracker = new WorkspaceTracker(this);
@ -1149,6 +1163,10 @@ const WindowManager = new Lang.Class({
this._tilePreview.hide();
},
_showWindowMenu: function(shellwm, window, menu, x, y) {
this._windowMenuManager.showWindowMenuForWindow(window, menu, x, y);
},
_startAppSwitcher : function(display, screen, window, binding) {
/* prevent a corner case where both popups show up at once */
if (this._workspaceSwitcherPopup != null)
@ -1205,7 +1223,10 @@ const WindowManager = new Lang.Class({
let newWs;
let direction;
if (isNaN(target)) {
if (target == 'last') {
direction = Meta.MotionDirection.DOWN;
newWs = screen.get_workspace_by_index(screen.n_workspaces - 1);
} else if (isNaN(target)) {
direction = Meta.MotionDirection[target.toUpperCase()];
newWs = screen.get_active_workspace().get_neighbor(direction);
} else if (target > 0) {

172
js/ui/windowMenu.js Normal file
View File

@ -0,0 +1,172 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*
const Gtk = imports.gi.Gtk;
const Lang = imports.lang;
const Meta = imports.gi.Meta;
const St = imports.gi.St;
const Shell = imports.gi.Shell;
const BoxPointer = imports.ui.boxpointer;
const Main = imports.ui.main;
const PopupMenu = imports.ui.popupMenu;
const RemoteMenu = imports.ui.remoteMenu;
const WindowMenu = new Lang.Class({
Name: 'WindowMenu',
Extends: PopupMenu.PopupMenu,
_init: function(window) {
this.parent(Main.layoutManager.dummyCursor, 0, St.Side.TOP);
this.actor.add_style_class_name('window-menu');
Main.layoutManager.uiGroup.add_actor(this.actor);
this.actor.hide();
this._buildMenu(window);
},
_buildMenu: function(window) {
let type = window.get_window_type();
let item;
item = this.addAction(_("Minimize"), Lang.bind(this, function(event) {
window.minimize();
}));
if (!window.can_minimize())
item.setSensitive(false);
if (window.get_maximized()) {
item = this.addAction(_("Unmaximize"), Lang.bind(this, function() {
window.unmaximize(Meta.MaximizeFlags.BOTH);
}));
} else {
item = this.addAction(_("Maximize"), Lang.bind(this, function() {
window.maximize(Meta.MaximizeFlags.BOTH);
}));
}
if (!window.can_maximize())
item.setSensitive(false);
item = this.addAction(_("Move"), Lang.bind(this, function(event) {
window.begin_grab_op(Meta.GrabOp.KEYBOARD_MOVING, true, event.get_time());
}));
if (!window.allows_move())
item.setSensitive(false);
item = this.addAction(_("Resize"), Lang.bind(this, function(event) {
window.begin_grab_op(Meta.GrabOp.KEYBOARD_RESIZING_UNKNOWN, true, event.get_time());
}));
if (!window.allows_resize())
item.setSensitive(false);
if (!window.titlebar_is_onscreen() && type != Meta.WindowType.DOCK && type != Meta.WindowType.DESKTOP) {
this.addAction(_("Move Titlebar Onscreen"), Lang.bind(this, function(event) {
window.shove_titlebar_onscreen();
}));
}
item = this.addAction(_("Always on Top"), Lang.bind(this, function() {
if (window.is_above())
window.unmake_above();
else
window.make_above();
}));
if (window.is_above())
item.setOrnament(PopupMenu.Ornament.DOT);
if (window.get_maximized() ||
type == Meta.WindowType.DOCK ||
type == Meta.WindowType.DESKTOP ||
type == Meta.WindowType.SPLASHSCREEN)
item.setSensitive(false);
if (Main.sessionMode.hasWorkspaces &&
(!Meta.prefs_get_workspaces_only_on_primary() ||
window.is_on_primary_monitor())) {
let isSticky = window.is_on_all_workspaces();
item = this.addAction(_("Always on Visible Workspace"), Lang.bind(this, function() {
if (isSticky)
window.unstick();
else
window.stick();
}));
if (isSticky)
item.setOrnament(PopupMenu.Ornament.DOT);
if (window.is_always_on_all_workspaces())
item.setSensitive(false);
let nWorkspaces = global.screen.n_workspaces;
if (!isSticky) {
let workspace = window.get_workspace();
let idx = workspace.index();
if (idx > 0) {
this.addAction(_("Move to Workspace Up"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.UP));
}));
}
if (idx < nWorkspaces) {
this.addAction(_("Move to Workspace Down"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.DOWN));
}));
}
}
}
this.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
item = this.addAction(_("Close"), Lang.bind(this, function(event) {
window.delete(event.get_time());
}));
if (!window.can_close())
item.setSensitive(false);
}
});
const AppMenu = new Lang.Class({
Name: 'AppMenu',
Extends: RemoteMenu.RemoteMenu,
_init: function(window) {
let app = Shell.WindowTracker.get_default().get_window_app(window);
this.parent(Main.layoutManager.dummyCursor, app.menu, app.action_group);
this.actor.add_style_class_name('fallback-app-menu');
let variant = window.get_gtk_theme_variant();
if (variant)
this.actor.add_style_class_name(variant);
Main.layoutManager.uiGroup.add_actor(this.actor);
this.actor.hide();
}
});
const WindowMenuManager = new Lang.Class({
Name: 'WindowMenuManager',
_init: function() {
this._manager = new PopupMenu.PopupMenuManager({ actor: Main.layoutManager.dummyCursor });
},
showWindowMenuForWindow: function(window, type, x, y) {
let menu = (type == Meta.WindowMenuType.WM) ? new WindowMenu(window)
: new AppMenu(window);
this._manager.addMenu(menu);
menu.connect('activate', function() {
window.check_alive(global.get_current_time());
});
Main.layoutManager.setDummyCursorGeometry(x, y, 0, 0);
menu.open(BoxPointer.PopupAnimation.NONE);
menu.actor.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false);
menu.connect('open-state-changed', Lang.bind(this, function(menu_, isOpen) {
if (!isOpen)
menu.destroy();
}));
}
});

View File

@ -594,11 +594,12 @@ const WindowOverlay = new Lang.Class({
// use an idle handler to avoid mapping problems -
// see comment in Workspace._windowAdded
Mainloop.idle_add(Lang.bind(this,
function() {
this._windowClone.emit('selected');
return GLib.SOURCE_REMOVE;
}));
let id = Mainloop.idle_add(Lang.bind(this,
function() {
this._windowClone.emit('selected');
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] this._windowClone.emit');
}
},
@ -669,8 +670,10 @@ const WindowOverlay = new Lang.Class({
},
_onLeave: function() {
if (this._idleToggleCloseId == 0)
if (this._idleToggleCloseId == 0) {
this._idleToggleCloseId = Mainloop.timeout_add(750, Lang.bind(this, this._idleToggleCloseButton));
GLib.Source.set_name_by_id(this._idleToggleCloseId, '[gnome-shell] this._idleToggleCloseButton');
}
return Clutter.EVENT_PROPAGATE;
},
@ -1418,6 +1421,7 @@ const Workspace = new Lang.Class({
this._currentLayout = null;
this._repositionWindowsId = Mainloop.timeout_add(750,
Lang.bind(this, this._delayedWindowRepositioning));
GLib.Source.set_name_by_id(this._repositionWindowsId, '[gnome-shell] this._delayedWindowRepositioning');
},
_doAddWindow : function(metaWin) {
@ -1429,14 +1433,15 @@ const Workspace = new Lang.Class({
if (!win) {
// Newly-created windows are added to a workspace before
// the compositor finds out about them...
Mainloop.idle_add(Lang.bind(this,
function () {
if (this.actor &&
metaWin.get_compositor_private() &&
metaWin.get_workspace() == this.metaWorkspace)
this._doAddWindow(metaWin);
return GLib.SOURCE_REMOVE;
}));
let id = Mainloop.idle_add(Lang.bind(this,
function () {
if (this.actor &&
metaWin.get_compositor_private() &&
metaWin.get_workspace() == this.metaWorkspace)
this._doAddWindow(metaWin);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] this._doAddWindow');
return;
}

View File

@ -52,6 +52,7 @@ const WorkspaceSwitcherPopup = new Lang.Class({
this._globalSignals.push(global.screen.connect('workspace-removed', Lang.bind(this, this._redisplay)));
this._timeoutId = Mainloop.timeout_add(DISPLAY_TIMEOUT, Lang.bind(this, this._onTimeout));
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout');
},
_getPreferredHeight : function (actor, forWidth, alloc) {
@ -145,6 +146,7 @@ const WorkspaceSwitcherPopup = new Lang.Class({
if (this._timeoutId != 0)
Mainloop.source_remove(this._timeoutId);
this._timeoutId = Mainloop.timeout_add(DISPLAY_TIMEOUT, Lang.bind(this, this._onTimeout));
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout');
this._show();
},

View File

@ -386,14 +386,15 @@ const WorkspaceThumbnail = new Lang.Class({
if (!win) {
// Newly-created windows are added to a workspace before
// the compositor finds out about them...
Mainloop.idle_add(Lang.bind(this,
function () {
let id = Mainloop.idle_add(Lang.bind(this,
function () {
if (!this._removed &&
metaWin.get_compositor_private() &&
metaWin.get_workspace() == this.metaWorkspace)
this._doAddWindow(metaWin);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] this._doAddWindow');
return;
}
@ -825,10 +826,14 @@ const ThumbnailsBox = new Lang.Class({
window.change_workspace_by_index(window.get_workspace().index() + 1, true);
});
if (isWindow)
if (isWindow) {
// ... and bam, a workspace, good as new.
// Move the window to our monitor first if necessary.
let thumbMonitor = this._thumbnails[newWorkspaceIndex].monitorIndex;
if (source.metaWindow.get_monitor() != thumbMonitor)
source.metaWindow.move_to_monitor(thumbMonitor);
source.metaWindow.change_workspace_by_index(newWorkspaceIndex, true);
else if (source.shellWorkspaceLaunch) {
} else if (source.shellWorkspaceLaunch) {
source.shellWorkspaceLaunch({ workspace: newWorkspaceIndex,
timestamp: time });
// This new workspace will be automatically removed if the application fails

View File

@ -55,6 +55,7 @@ js/ui/unlockDialog.js
js/ui/viewSelector.js
js/ui/windowAttentionHandler.js
js/ui/windowManager.js
js/ui/windowMenu.js
src/calendar-server/evolution-calendar.desktop.in.in
# Please do not remove this file from POTFILES.in. Run "git submodule init && git submodule update" to get it.
src/gvc/gvc-mixer-control.c

361
po/cs.po
View File

@ -12,8 +12,8 @@ msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2014-03-27 20:52+0000\n"
"PO-Revision-Date: 2014-03-27 22:15+0100\n"
"POT-Creation-Date: 2014-05-18 07:27+0000\n"
"PO-Revision-Date: 2014-05-18 15:23+0200\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <gnome-cs-list@gnome.org>\n"
"Language: cs\n"
@ -336,25 +336,25 @@ msgstr "Vybrat sezení"
msgid "Not listed?"
msgstr "Nejste na seznamu?"
#: ../js/gdm/loginDialog.js:611
#: ../js/gdm/loginDialog.js:616
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(např. uživatel nebo %s)"
#: ../js/gdm/loginDialog.js:616 ../js/ui/components/networkAgent.js:262
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
#: ../js/ui/components/networkAgent.js:280
msgid "Username: "
msgstr "Uživatelské jméno: "
#: ../js/gdm/loginDialog.js:917
#: ../js/gdm/loginDialog.js:924
msgid "Login Window"
msgstr "Přihlašovací okno"
#: ../js/gdm/util.js:322
#: ../js/gdm/util.js:323
msgid "Authentication error"
msgstr "Chyba ověření"
#: ../js/gdm/util.js:452
#: ../js/gdm/util.js:453
msgid "(or swipe finger)"
msgstr "(nebo otiskněte prst)"
@ -371,30 +371,34 @@ msgstr "Nelze analyzovat příkaz:"
msgid "Execution of “%s” failed:"
msgstr "Vykonání „%s“ selhalo:"
#: ../js/ui/appDisplay.js:636
#: ../js/ui/appDisplay.js:640
msgid "Frequently used applications will appear here"
msgstr "Zde se objeví často používané aplikace"
#: ../js/ui/appDisplay.js:747
#: ../js/ui/appDisplay.js:751
msgid "Frequent"
msgstr "Časté"
#: ../js/ui/appDisplay.js:754
#: ../js/ui/appDisplay.js:758
msgid "All"
msgstr "Všechny"
#: ../js/ui/appDisplay.js:1566
#: ../js/ui/appDisplay.js:1571
msgid "New Window"
msgstr "Nové okno"
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1593 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "Odstranit z oblíbených"
#: ../js/ui/appDisplay.js:1594
#: ../js/ui/appDisplay.js:1599
msgid "Add to Favorites"
msgstr "Přidat mezi oblíbené"
#: ../js/ui/appDisplay.js:1608
msgid "Show Details"
msgstr "Zobrazit podrobnosti"
#: ../js/ui/appFavorites.js:87
#, javascript-format
msgid "%s has been added to your favorites."
@ -405,8 +409,8 @@ msgstr "%s byl přidán mezi oblíbené."
msgid "%s has been removed from your favorites."
msgstr "%s byl odstraněn z oblíbených."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
#: ../js/ui/status/system.js:334
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Nastavení"
@ -417,14 +421,14 @@ msgstr "Změnit pozadí…"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#. */
#: ../js/ui/calendar.js:64
#: ../js/ui/calendar.js:67
msgctxt "event list time"
msgid "All Day"
msgstr "Celý den"
#. Translators: Shown in calendar event list, if 24h format,
#. \u2236 is a ratio character, similar to : */
#: ../js/ui/calendar.js:70
#: ../js/ui/calendar.js:73
msgctxt "event list time"
msgid "%H%M"
msgstr "%k%M"
@ -432,7 +436,7 @@ msgstr "%k%M"
#. Translators: Shown in calendar event list, if 12h format,
#. \u2236 is a ratio character, similar to : and \u2009 is
#. a thin space */
#: ../js/ui/calendar.js:79
#: ../js/ui/calendar.js:82
msgctxt "event list time"
msgid "%l%M%p"
msgstr "%l%M%p"
@ -442,43 +446,43 @@ msgstr "%l%M%p"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#. */
#: ../js/ui/calendar.js:110
#: ../js/ui/calendar.js:113
msgctxt "grid sunday"
msgid "S"
msgstr "Ne"
#. Translators: Calendar grid abbreviation for Monday */
#: ../js/ui/calendar.js:112
#: ../js/ui/calendar.js:115
msgctxt "grid monday"
msgid "M"
msgstr "Po"
#. Translators: Calendar grid abbreviation for Tuesday */
#: ../js/ui/calendar.js:114
#: ../js/ui/calendar.js:117
msgctxt "grid tuesday"
msgid "T"
msgstr "Út"
#. Translators: Calendar grid abbreviation for Wednesday */
#: ../js/ui/calendar.js:116
#: ../js/ui/calendar.js:119
msgctxt "grid wednesday"
msgid "W"
msgstr "St"
#. Translators: Calendar grid abbreviation for Thursday */
#: ../js/ui/calendar.js:118
#: ../js/ui/calendar.js:121
msgctxt "grid thursday"
msgid "T"
msgstr "Čt"
#. Translators: Calendar grid abbreviation for Friday */
#: ../js/ui/calendar.js:120
#: ../js/ui/calendar.js:123
msgctxt "grid friday"
msgid "F"
msgstr "Pá"
#. Translators: Calendar grid abbreviation for Saturday */
#: ../js/ui/calendar.js:122
#: ../js/ui/calendar.js:125
msgctxt "grid saturday"
msgid "S"
msgstr "So"
@ -489,97 +493,93 @@ msgstr "So"
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
#. * both be 'T').
#. */
#: ../js/ui/calendar.js:135
#: ../js/ui/calendar.js:138
msgctxt "list sunday"
msgid "Su"
msgstr "Ne"
#. Translators: Event list abbreviation for Monday */
#: ../js/ui/calendar.js:137
#: ../js/ui/calendar.js:140
msgctxt "list monday"
msgid "M"
msgstr "Po"
#. Translators: Event list abbreviation for Tuesday */
#: ../js/ui/calendar.js:139
#: ../js/ui/calendar.js:142
msgctxt "list tuesday"
msgid "T"
msgstr "Út"
#. Translators: Event list abbreviation for Wednesday */
#: ../js/ui/calendar.js:141
#: ../js/ui/calendar.js:144
msgctxt "list wednesday"
msgid "W"
msgstr "St"
#. Translators: Event list abbreviation for Thursday */
#: ../js/ui/calendar.js:143
#: ../js/ui/calendar.js:146
msgctxt "list thursday"
msgid "Th"
msgstr "Čt"
#. Translators: Event list abbreviation for Friday */
#: ../js/ui/calendar.js:145
#: ../js/ui/calendar.js:148
msgctxt "list friday"
msgid "F"
msgstr "Pá"
#. Translators: Event list abbreviation for Saturday */
#: ../js/ui/calendar.js:147
#: ../js/ui/calendar.js:150
msgctxt "list saturday"
msgid "S"
msgstr "So"
#: ../js/ui/calendar.js:390
msgid "calendar:MY"
msgstr "calendar:MY"
#: ../js/ui/calendar.js:450
#: ../js/ui/calendar.js:453
msgid "Previous month"
msgstr "Předchozí měsíc"
#: ../js/ui/calendar.js:460
#: ../js/ui/calendar.js:463
msgid "Next month"
msgstr "Následující měsíc"
#. Translators: Text to show if there are no events */
#: ../js/ui/calendar.js:772
#: ../js/ui/calendar.js:775
msgid "Nothing Scheduled"
msgstr "Nic nenaplánováno"
#. Translators: Shown on calendar heading when selected day occurs on current year */
#: ../js/ui/calendar.js:790
#: ../js/ui/calendar.js:793
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e. %B"
#. Translators: Shown on calendar heading when selected day occurs on different year */
#: ../js/ui/calendar.js:793
#: ../js/ui/calendar.js:796
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e. %B %Y"
#: ../js/ui/calendar.js:804
#: ../js/ui/calendar.js:807
msgid "Today"
msgstr "Dnes"
#: ../js/ui/calendar.js:808
#: ../js/ui/calendar.js:811
msgid "Tomorrow"
msgstr "Zítra"
#: ../js/ui/calendar.js:819
#: ../js/ui/calendar.js:822
msgid "This week"
msgstr "Tento týden"
#: ../js/ui/calendar.js:827
#: ../js/ui/calendar.js:830
msgid "Next week"
msgstr "Následující týden"
#: ../js/ui/components/automountManager.js:90
#: ../js/ui/components/automountManager.js:91
msgid "External drive connected"
msgstr "Externí svazek připojen"
#: ../js/ui/components/automountManager.js:101
#: ../js/ui/components/automountManager.js:102
msgid "External drive disconnected"
msgstr "Externí svazek odpojen"
@ -724,77 +724,77 @@ msgid "Mute"
msgstr "Ztlumit"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:955
#: ../js/ui/components/telepathyClient.js:958
msgid "%H%M"
msgstr "%k%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 24h format. i.e. "Yesterday, 14:30" */
#: ../js/ui/components/telepathyClient.js:962
#: ../js/ui/components/telepathyClient.js:965
msgid "Yesterday, %H%M"
msgstr "včera, %k%M"
#. Translators: this is the week day name followed by a time
#. string in 24h format. i.e. "Monday, 14:30" */
#: ../js/ui/components/telepathyClient.js:969
#: ../js/ui/components/telepathyClient.js:972
msgid "%A, %H%M"
msgstr "%A, %k%M"
#. Translators: this is the month name and day number
#. followed by a time string in 24h format.
#. i.e. "May 25, 14:30" */
#: ../js/ui/components/telepathyClient.js:976
#: ../js/ui/components/telepathyClient.js:979
msgid "%B %d, %H%M"
msgstr "%e. %B %k%M"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 24h format.
#. i.e. "May 25 2012, 14:30" */
#: ../js/ui/components/telepathyClient.js:982
#: ../js/ui/components/telepathyClient.js:985
msgid "%B %d %Y, %H%M"
msgstr "%e. %B %Y, %k%M"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:991
#: ../js/ui/components/telepathyClient.js:994
msgid "%l%M %p"
msgstr "%l%M%p"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:998
#: ../js/ui/components/telepathyClient.js:1001
msgid "Yesterday, %l%M %p"
msgstr "včera, %l%M%p"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1005
#: ../js/ui/components/telepathyClient.js:1008
msgid "%A, %l%M %p"
msgstr "%A, %l%M%p"
#. Translators: this is the month name and day number
#. followed by a time string in 12h format.
#. i.e. "May 25, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1012
#: ../js/ui/components/telepathyClient.js:1015
msgid "%B %d, %l%M %p"
msgstr "%e. %B, %l%M%p"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 12h format.
#. i.e. "May 25 2012, 2:30 pm"*/
#: ../js/ui/components/telepathyClient.js:1018
#: ../js/ui/components/telepathyClient.js:1021
msgid "%B %d %Y, %l%M %p"
msgstr "%e. %B %Y, %l%M%p"
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:1051
#: ../js/ui/components/telepathyClient.js:1054
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s je teď znám jako %s"
#. translators: argument is a room name like
#. * room@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1154
#: ../js/ui/components/telepathyClient.js:1158
#, javascript-format
msgid "Invitation to %s"
msgstr "Pozvánka na připojení k %s"
@ -802,38 +802,38 @@ msgstr "Pozvánka na připojení k %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example. */
#: ../js/ui/components/telepathyClient.js:1162
#: ../js/ui/components/telepathyClient.js:1166
#, javascript-format
msgid "%s is inviting you to join %s"
msgstr "%s vás zve do %s"
#: ../js/ui/components/telepathyClient.js:1164
#: ../js/ui/components/telepathyClient.js:1199
#: ../js/ui/components/telepathyClient.js:1233
#: ../js/ui/components/telepathyClient.js:1290
#: ../js/ui/components/telepathyClient.js:1168
#: ../js/ui/components/telepathyClient.js:1203
#: ../js/ui/components/telepathyClient.js:1237
#: ../js/ui/components/telepathyClient.js:1295
msgid "Decline"
msgstr "Odmítnout"
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1295
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1243
#: ../js/ui/components/telepathyClient.js:1300
msgid "Accept"
msgstr "Přijmout"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1189
#: ../js/ui/components/telepathyClient.js:1193
#, javascript-format
msgid "Video call from %s"
msgstr "Videohovor od %s"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1192
#: ../js/ui/components/telepathyClient.js:1196
#, javascript-format
msgid "Call from %s"
msgstr "Hovor od %s"
#. translators: this is a button label (verb), not a noun */
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
msgid "Answer"
msgstr "Zvednout"
@ -842,110 +842,110 @@ msgstr "Zvednout"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#. */
#: ../js/ui/components/telepathyClient.js:1227
#: ../js/ui/components/telepathyClient.js:1231
#, javascript-format
msgid "%s is sending you %s"
msgstr "%s vám posílá %s"
#. To translators: The parameter is the contact's alias */
#: ../js/ui/components/telepathyClient.js:1256
#: ../js/ui/components/telepathyClient.js:1260
#, javascript-format
msgid "%s would like permission to see when you are online"
msgstr "%s vás žádá o oprávnění vidět, že jste dostupní"
#: ../js/ui/components/telepathyClient.js:1341
#: ../js/ui/components/telepathyClient.js:1346
msgid "Network error"
msgstr "Chyba sítě"
#: ../js/ui/components/telepathyClient.js:1343
#: ../js/ui/components/telepathyClient.js:1348
msgid "Authentication failed"
msgstr "Ověření selhalo"
#: ../js/ui/components/telepathyClient.js:1345
#: ../js/ui/components/telepathyClient.js:1350
msgid "Encryption error"
msgstr "Chyba šifrování"
#: ../js/ui/components/telepathyClient.js:1347
#: ../js/ui/components/telepathyClient.js:1352
msgid "Certificate not provided"
msgstr "Certifikát neposkytnut"
#: ../js/ui/components/telepathyClient.js:1349
#: ../js/ui/components/telepathyClient.js:1354
msgid "Certificate untrusted"
msgstr "Nedůvěryhodný certifikát"
#: ../js/ui/components/telepathyClient.js:1351
#: ../js/ui/components/telepathyClient.js:1356
msgid "Certificate expired"
msgstr "Platnost certifikátu vypršela"
#: ../js/ui/components/telepathyClient.js:1353
#: ../js/ui/components/telepathyClient.js:1358
msgid "Certificate not activated"
msgstr "Certifikát není aktivován"
#: ../js/ui/components/telepathyClient.js:1355
#: ../js/ui/components/telepathyClient.js:1360
msgid "Certificate hostname mismatch"
msgstr "Název počítače certifikátu nesouhlasí"
#: ../js/ui/components/telepathyClient.js:1357
#: ../js/ui/components/telepathyClient.js:1362
msgid "Certificate fingerprint mismatch"
msgstr "Otisk prstu certifikátu nesouhlasí"
#: ../js/ui/components/telepathyClient.js:1359
#: ../js/ui/components/telepathyClient.js:1364
msgid "Certificate self-signed"
msgstr "Certifikát je podepsán sám sebou"
#: ../js/ui/components/telepathyClient.js:1361
#: ../js/ui/components/telepathyClient.js:1366
msgid "Status is set to offline"
msgstr "Stav nastaven na „Odhlášen“"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1368
msgid "Encryption is not available"
msgstr "Šifrování není dostupné"
#: ../js/ui/components/telepathyClient.js:1365
#: ../js/ui/components/telepathyClient.js:1370
msgid "Certificate is invalid"
msgstr "Certifikát je neplatný"
#: ../js/ui/components/telepathyClient.js:1367
#: ../js/ui/components/telepathyClient.js:1372
msgid "Connection has been refused"
msgstr "Spojení bylo odmítnuto"
#: ../js/ui/components/telepathyClient.js:1369
#: ../js/ui/components/telepathyClient.js:1374
msgid "Connection can't be established"
msgstr "Spojení nemohlo bát navázáno"
#: ../js/ui/components/telepathyClient.js:1371
#: ../js/ui/components/telepathyClient.js:1376
msgid "Connection has been lost"
msgstr "Spojení bylo ztraceno"
#: ../js/ui/components/telepathyClient.js:1373
#: ../js/ui/components/telepathyClient.js:1378
msgid "This account is already connected to the server"
msgstr "Tento účet je již připojen k serveru"
#: ../js/ui/components/telepathyClient.js:1375
#: ../js/ui/components/telepathyClient.js:1380
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Spojení bylo nahrazeno novým spojením, které používá stejný zdroj"
#: ../js/ui/components/telepathyClient.js:1377
#: ../js/ui/components/telepathyClient.js:1382
msgid "The account already exists on the server"
msgstr "Takový účet již na serveru existuje"
#: ../js/ui/components/telepathyClient.js:1379
#: ../js/ui/components/telepathyClient.js:1384
msgid "Server is currently too busy to handle the connection"
msgstr "Server je právě příliš zaneprázdněn na to, aby obsloužil spojení"
#: ../js/ui/components/telepathyClient.js:1381
#: ../js/ui/components/telepathyClient.js:1386
msgid "Certificate has been revoked"
msgstr "Certifikát byl odvolán"
#: ../js/ui/components/telepathyClient.js:1383
#: ../js/ui/components/telepathyClient.js:1388
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Certifikát používá nepříliš bezpečný šifrovací algoritmus nebo je z "
"kryptografického hlediska slabý"
#: ../js/ui/components/telepathyClient.js:1385
#: ../js/ui/components/telepathyClient.js:1390
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -953,22 +953,22 @@ msgstr ""
"Délka certifikátu serveru nebo délka zřetězených certifikátů serveru "
"přesáhla omezení dané kryptografickou knihovnou"
#: ../js/ui/components/telepathyClient.js:1387
#: ../js/ui/components/telepathyClient.js:1392
msgid "Internal error"
msgstr "Vnitřní chyba"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1397
#: ../js/ui/components/telepathyClient.js:1402
#, javascript-format
msgid "Unable to connect to %s"
msgstr "Nelze se připojit k „%s“"
#: ../js/ui/components/telepathyClient.js:1402
#: ../js/ui/components/telepathyClient.js:1407
msgid "View account"
msgstr "Zobrazit účet"
#: ../js/ui/components/telepathyClient.js:1439
#: ../js/ui/components/telepathyClient.js:1444
msgid "Unknown reason"
msgstr "Neznámý důvod"
@ -984,15 +984,15 @@ msgstr "Zobrazit aplikace"
msgid "Dash"
msgstr "Oblíbené"
#: ../js/ui/dateMenu.js:91
#: ../js/ui/dateMenu.js:97
msgid "Open Calendar"
msgstr "Otevřít kalendář"
#: ../js/ui/dateMenu.js:95
#: ../js/ui/dateMenu.js:101
msgid "Open Clocks"
msgstr "Otevřít Hodiny"
#: ../js/ui/dateMenu.js:102
#: ../js/ui/dateMenu.js:108
msgid "Date & Time Settings"
msgstr "Nastavení data a času"
@ -1000,7 +1000,7 @@ msgstr "Nastavení data a času"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#. */
#: ../js/ui/dateMenu.js:192
#: ../js/ui/dateMenu.js:205
msgid "%A %B %e, %Y"
msgstr "%A, %e. %B, %Y"
@ -1131,13 +1131,13 @@ msgid "Other users are logged in."
msgstr "Jsou přihlášeni jiní uživatelé."
#. Translators: Remote here refers to a remote session, like a ssh login */
#: ../js/ui/endSessionDialog.js:618
#: ../js/ui/endSessionDialog.js:619
#, javascript-format
msgid "%s (remote)"
msgstr "%s (vzdálený)"
#. Translators: Console here refers to a tty like a VT console */
#: ../js/ui/endSessionDialog.js:621
#: ../js/ui/endSessionDialog.js:622
#, javascript-format
msgid "%s (console)"
msgstr "%s (konzola)"
@ -1151,7 +1151,7 @@ msgstr "Instalovat"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Stáhnout a nainstalovat „%s“ z extensions.gnome.org?"
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
msgid "Keyboard"
msgstr "Klávesnice"
@ -1239,16 +1239,16 @@ msgstr "Žádné zprávy"
msgid "Message Tray"
msgstr "Lišta zpráv"
#: ../js/ui/messageTray.js:2962
#: ../js/ui/messageTray.js:2967
msgid "System Information"
msgstr "Informace o systému"
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
msgctxt "program"
msgid "Unknown"
msgstr "Neznámé"
#: ../js/ui/overviewControls.js:483 ../js/ui/screenShield.js:151
#: ../js/ui/overviewControls.js:488 ../js/ui/screenShield.js:151
#, javascript-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1282,7 +1282,7 @@ msgstr "Ukončit"
msgid "Activities"
msgstr "Činnosti"
#: ../js/ui/panel.js:914
#: ../js/ui/panel.js:915
msgid "Top Bar"
msgstr "Horní lišta"
@ -1294,7 +1294,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Zadejte příkaz:"
#: ../js/ui/runDialog.js:114
#: ../js/ui/runDialog.js:114 ../js/ui/windowMenu.js:117
msgid "Close"
msgstr "Zavřít"
@ -1312,7 +1312,7 @@ msgstr[0] "%d nové upozornění"
msgstr[1] "%d nová upozornění"
msgstr[2] "%d nových upozornění"
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Uzamknout"
@ -1320,19 +1320,19 @@ msgstr "Uzamknout"
msgid "GNOME needs to lock the screen"
msgstr "GNOME potřebuje uzamknout obrazovku"
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
msgid "Unable to lock"
msgstr "Nelze uzamknout obrazovku"
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
msgid "Lock was blocked by an application"
msgstr "Zamknutí bylo zablokováno některou z aplikací"
#: ../js/ui/search.js:603
#: ../js/ui/search.js:606
msgid "Searching…"
msgstr "Hledá se…"
#: ../js/ui/search.js:649
#: ../js/ui/search.js:652
msgid "No results."
msgstr "Žádné výsledky."
@ -1396,11 +1396,11 @@ msgstr "Vícenásobné stisky kláves"
msgid "Mouse Keys"
msgstr "Myš klávesnicí"
#: ../js/ui/status/accessibility.js:143
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Vysoký kontrast"
#: ../js/ui/status/accessibility.js:192
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Styl velkého textu"
@ -1410,8 +1410,8 @@ msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
#: ../js/ui/status/rfkill.js:105
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:86
#: ../js/ui/status/rfkill.js:114
msgid "Turn Off"
msgstr "Vypnout"
@ -1471,37 +1471,37 @@ msgstr "Připojeno"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu) */
#: ../js/ui/status/network.js:426
msgid "unmanaged"
msgstr "nespravováno"
msgid "Unmanaged"
msgstr "Nespravováno"
#: ../js/ui/status/network.js:428
msgid "disconnecting..."
msgstr "odpojování…"
msgid "Disconnecting"
msgstr "Odpojuje se…"
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "připojování…"
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Připojuje se…"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "je vyžadováno ověření"
#: ../js/ui/status/network.js:437
msgid "Authentication required"
msgstr "Je vyžadováno ověření"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
#: ../js/ui/status/network.js:445
msgid "firmware missing"
msgstr "nedostupný firmware"
msgid "Firmware missing"
msgstr "Schází firmware"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage */
#: ../js/ui/status/network.js:449
msgid "unavailable"
msgstr "nedostupné"
msgid "Unavailable"
msgstr "Nedostupné"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "připojení selhalo"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Připojení selhalo"
#: ../js/ui/status/network.js:467
msgid "Wired Settings"
@ -1555,7 +1555,7 @@ msgstr "Vyberte síť"
msgid "No Networks"
msgstr "Žádné sítě"
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:112
msgid "Use hardware switch to turn off"
msgstr "K vypnutí použijte fyzický vypínač"
@ -1575,11 +1575,20 @@ msgstr "Zapnout"
msgid "Hotspot Active"
msgstr "Hotspot aktivní"
#: ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Připojuje se…"
#: ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "připojování…"
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "je vyžadováno ověření"
#: ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "připojení selhalo"
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:89
msgid "Network Settings"
msgstr "Nastavení sítě"
@ -1595,10 +1604,6 @@ msgstr "VPN"
msgid "Network Manager"
msgstr "Network Manager"
#: ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Připojení selhalo"
#: ../js/ui/status/network.js:1647
msgid "Activation of network connection failed"
msgstr "Aktivace síťového připojení selhala"
@ -1633,31 +1638,31 @@ msgstr "Záložní zdroj"
msgid "Battery"
msgstr "Baterie"
#: ../js/ui/status/rfkill.js:82
#: ../js/ui/status/rfkill.js:83
msgid "Airplane Mode"
msgstr "Režim „letadlo“"
#: ../js/ui/status/rfkill.js:84
#: ../js/ui/status/rfkill.js:85
msgid "On"
msgstr "Zapnuto"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Přepnout uživatele"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Odhlásit se"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Zámek otočení"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Uspat do paměti"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Vypnout"
@ -1694,22 +1699,22 @@ msgstr "Hledat"
msgid "“%s” is ready"
msgstr "Připraveno „%s“"
#: ../js/ui/windowManager.js:56
#: ../js/ui/windowManager.js:57
msgid "Do you want to keep these display settings?"
msgstr "Chcete zachovat nastavení displeje?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:75
#: ../js/ui/windowManager.js:76
msgid "Revert Settings"
msgstr "Obnovit původní"
#: ../js/ui/windowManager.js:79
#: ../js/ui/windowManager.js:80
msgid "Keep Changes"
msgstr "Zachovat"
#: ../js/ui/windowManager.js:97
#: ../js/ui/windowManager.js:99
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -1717,6 +1722,46 @@ msgstr[0] "Nastavení se obnoví na původní za %d sekundu"
msgstr[1] "Nastavení se obnoví na původní za %d sekundy"
msgstr[2] "Nastavení se obnoví na původní za %d sekund"
#: ../js/ui/windowMenu.js:33
msgid "Minimize"
msgstr "Minimalizovat"
#: ../js/ui/windowMenu.js:40
msgid "Unmaximize"
msgstr "Zrušit maximalizaci"
#: ../js/ui/windowMenu.js:44
msgid "Maximize"
msgstr "Maximalizovat"
#: ../js/ui/windowMenu.js:51
msgid "Move"
msgstr "Přesunout"
#: ../js/ui/windowMenu.js:57
msgid "Resize"
msgstr "Změnit velikost"
#: ../js/ui/windowMenu.js:64
msgid "Move Titlebar Onscreen"
msgstr ""
#: ../js/ui/windowMenu.js:69
msgid "Always on Top"
msgstr "Vždy nahoře"
#: ../js/ui/windowMenu.js:86
msgid "Always on Visible Workspace"
msgstr "Vždy na viditelné ploše"
#: ../js/ui/windowMenu.js:103
msgid "Move to Workspace Up"
msgstr "Přesunout o plochu výš"
#: ../js/ui/windowMenu.js:108
msgid "Move to Workspace Down"
msgstr "Přesunout o plochu níž"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Kalendář Evolution"
@ -1774,6 +1819,6 @@ msgstr "Hesla si neodpovídají."
msgid "Password cannot be blank"
msgstr "Heslo nemůže být prázdné."
#: ../src/shell-polkit-authentication-agent.c:343
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Dialogové okno ověření bylo uživatelem zrušeno"

470
po/da.po

File diff suppressed because it is too large Load Diff

422
po/es.po

File diff suppressed because it is too large Load Diff

290
po/gl.po
View File

@ -11,8 +11,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-03-31 23:35+0200\n"
"PO-Revision-Date: 2014-03-31 23:35+0200\n"
"POT-Creation-Date: 2014-04-30 15:34+0200\n"
"PO-Revision-Date: 2014-04-30 15:34+0200\n"
"Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n"
"Language-Team: gnome-l10n-gl@gnome.org\n"
"Language: gl\n"
@ -340,25 +340,25 @@ msgstr "Escolla unha sesión"
msgid "Not listed?"
msgstr "Non está na lista?"
#: ../js/gdm/loginDialog.js:614
#: ../js/gdm/loginDialog.js:616
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(p.ex., usuario ou %s)"
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
#: ../js/ui/components/networkAgent.js:280
msgid "Username: "
msgstr "Nome de usuario: "
#: ../js/gdm/loginDialog.js:920
#: ../js/gdm/loginDialog.js:924
msgid "Login Window"
msgstr "Xanela de inicio de sesión"
#: ../js/gdm/util.js:322
#: ../js/gdm/util.js:323
msgid "Authentication error"
msgstr "Erro de autenticación"
#: ../js/gdm/util.js:452
#: ../js/gdm/util.js:453
msgid "(or swipe finger)"
msgstr "(ou pase o dedo)"
@ -375,27 +375,27 @@ msgstr "Non foi posíbel analizar a orde:"
msgid "Execution of “%s” failed:"
msgstr "Produciuse un fallo na execución de «%s»:"
#: ../js/ui/appDisplay.js:636
#: ../js/ui/appDisplay.js:640
msgid "Frequently used applications will appear here"
msgstr "Os aplicativos usados recentemente aparecerán aquí"
#: ../js/ui/appDisplay.js:747
#: ../js/ui/appDisplay.js:751
msgid "Frequent"
msgstr "Frecuentes"
#: ../js/ui/appDisplay.js:754
#: ../js/ui/appDisplay.js:758
msgid "All"
msgstr "Todos"
#: ../js/ui/appDisplay.js:1566
#: ../js/ui/appDisplay.js:1571
msgid "New Window"
msgstr "Xanela nova"
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1593 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "Retirar dos marcadores"
#: ../js/ui/appDisplay.js:1594
#: ../js/ui/appDisplay.js:1599
msgid "Add to Favorites"
msgstr "Engadir aos favoritos"
@ -409,7 +409,7 @@ msgstr "%s foi engadido aos seus favoritos."
msgid "%s has been removed from your favorites."
msgstr "%s retirouse dos seus marcadores."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
#: ../js/ui/status/system.js:334
msgid "Settings"
msgstr "Preferencias"
@ -421,14 +421,14 @@ msgstr "Cambiar fondo de escritorio…"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#. */
#: ../js/ui/calendar.js:64
#: ../js/ui/calendar.js:67
msgctxt "event list time"
msgid "All Day"
msgstr "Todo o día"
#. Translators: Shown in calendar event list, if 24h format,
#. \u2236 is a ratio character, similar to : */
#: ../js/ui/calendar.js:70
#: ../js/ui/calendar.js:73
msgctxt "event list time"
msgid "%H%M"
msgstr "%H%M"
@ -436,7 +436,7 @@ msgstr "%H%M"
#. Translators: Shown in calendar event list, if 12h format,
#. \u2236 is a ratio character, similar to : and \u2009 is
#. a thin space */
#: ../js/ui/calendar.js:79
#: ../js/ui/calendar.js:82
msgctxt "event list time"
msgid "%l%M%p"
msgstr "%l%M%p"
@ -446,43 +446,43 @@ msgstr "%l%M%p"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#. */
#: ../js/ui/calendar.js:110
#: ../js/ui/calendar.js:113
msgctxt "grid sunday"
msgid "S"
msgstr "D"
#. Translators: Calendar grid abbreviation for Monday */
#: ../js/ui/calendar.js:112
#: ../js/ui/calendar.js:115
msgctxt "grid monday"
msgid "M"
msgstr "L"
#. Translators: Calendar grid abbreviation for Tuesday */
#: ../js/ui/calendar.js:114
#: ../js/ui/calendar.js:117
msgctxt "grid tuesday"
msgid "T"
msgstr "M"
#. Translators: Calendar grid abbreviation for Wednesday */
#: ../js/ui/calendar.js:116
#: ../js/ui/calendar.js:119
msgctxt "grid wednesday"
msgid "W"
msgstr "W"
#. Translators: Calendar grid abbreviation for Thursday */
#: ../js/ui/calendar.js:118
#: ../js/ui/calendar.js:121
msgctxt "grid thursday"
msgid "T"
msgstr "X"
#. Translators: Calendar grid abbreviation for Friday */
#: ../js/ui/calendar.js:120
#: ../js/ui/calendar.js:123
msgctxt "grid friday"
msgid "F"
msgstr "V"
#. Translators: Calendar grid abbreviation for Saturday */
#: ../js/ui/calendar.js:122
#: ../js/ui/calendar.js:125
msgctxt "grid saturday"
msgid "S"
msgstr "S"
@ -493,97 +493,93 @@ msgstr "S"
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
#. * both be 'T').
#. */
#: ../js/ui/calendar.js:135
#: ../js/ui/calendar.js:138
msgctxt "list sunday"
msgid "Su"
msgstr "Do"
#. Translators: Event list abbreviation for Monday */
#: ../js/ui/calendar.js:137
#: ../js/ui/calendar.js:140
msgctxt "list monday"
msgid "M"
msgstr "L"
#. Translators: Event list abbreviation for Tuesday */
#: ../js/ui/calendar.js:139
#: ../js/ui/calendar.js:142
msgctxt "list tuesday"
msgid "T"
msgstr "M"
#. Translators: Event list abbreviation for Wednesday */
#: ../js/ui/calendar.js:141
#: ../js/ui/calendar.js:144
msgctxt "list wednesday"
msgid "W"
msgstr "W"
#. Translators: Event list abbreviation for Thursday */
#: ../js/ui/calendar.js:143
#: ../js/ui/calendar.js:146
msgctxt "list thursday"
msgid "Th"
msgstr "X"
#. Translators: Event list abbreviation for Friday */
#: ../js/ui/calendar.js:145
#: ../js/ui/calendar.js:148
msgctxt "list friday"
msgid "F"
msgstr "V"
#. Translators: Event list abbreviation for Saturday */
#: ../js/ui/calendar.js:147
#: ../js/ui/calendar.js:150
msgctxt "list saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:390
msgid "calendar:MY"
msgstr "calendar:MY"
#: ../js/ui/calendar.js:450
#: ../js/ui/calendar.js:453
msgid "Previous month"
msgstr "Anterior mes"
#: ../js/ui/calendar.js:460
#: ../js/ui/calendar.js:463
msgid "Next month"
msgstr "Seguinte mes"
#. Translators: Text to show if there are no events */
#: ../js/ui/calendar.js:772
#: ../js/ui/calendar.js:775
msgid "Nothing Scheduled"
msgstr "Nada programado"
#. Translators: Shown on calendar heading when selected day occurs on current year */
#: ../js/ui/calendar.js:790
#: ../js/ui/calendar.js:793
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#. Translators: Shown on calendar heading when selected day occurs on different year */
#: ../js/ui/calendar.js:793
#: ../js/ui/calendar.js:796
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d de %B de %Y"
#: ../js/ui/calendar.js:804
#: ../js/ui/calendar.js:807
msgid "Today"
msgstr "Hoxe"
#: ../js/ui/calendar.js:808
#: ../js/ui/calendar.js:811
msgid "Tomorrow"
msgstr "Mañá"
#: ../js/ui/calendar.js:819
#: ../js/ui/calendar.js:822
msgid "This week"
msgstr "Esta semana"
#: ../js/ui/calendar.js:827
#: ../js/ui/calendar.js:830
msgid "Next week"
msgstr "A vindeira semana"
#: ../js/ui/components/automountManager.js:90
#: ../js/ui/components/automountManager.js:91
msgid "External drive connected"
msgstr "Unidade externa conectada"
#: ../js/ui/components/automountManager.js:101
#: ../js/ui/components/automountManager.js:102
msgid "External drive disconnected"
msgstr "Unidade externa desconectada"
@ -728,77 +724,77 @@ msgid "Mute"
msgstr "Silenciar"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:955
#: ../js/ui/components/telepathyClient.js:958
msgid "%H%M"
msgstr "%H%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 24h format. i.e. "Yesterday, 14:30" */
#: ../js/ui/components/telepathyClient.js:962
#: ../js/ui/components/telepathyClient.js:965
msgid "Yesterday, %H%M"
msgstr "Onte, %H:%M"
#. Translators: this is the week day name followed by a time
#. string in 24h format. i.e. "Monday, 14:30" */
#: ../js/ui/components/telepathyClient.js:969
#: ../js/ui/components/telepathyClient.js:972
msgid "%A, %H%M"
msgstr "%A ás %H:%M"
#. Translators: this is the month name and day number
#. followed by a time string in 24h format.
#. i.e. "May 25, 14:30" */
#: ../js/ui/components/telepathyClient.js:976
#: ../js/ui/components/telepathyClient.js:979
msgid "%B %d, %H%M"
msgstr "%d de %B ás %H:%M"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 24h format.
#. i.e. "May 25 2012, 14:30" */
#: ../js/ui/components/telepathyClient.js:982
#: ../js/ui/components/telepathyClient.js:985
msgid "%B %d %Y, %H%M"
msgstr "%d de %B de %Y ás %H:%M"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:991
#: ../js/ui/components/telepathyClient.js:994
msgid "%l%M %p"
msgstr "%l:%M %p"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:998
#: ../js/ui/components/telepathyClient.js:1001
msgid "Yesterday, %l%M %p"
msgstr "Onte, %H:%M"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1005
#: ../js/ui/components/telepathyClient.js:1008
msgid "%A, %l%M %p"
msgstr "%A, %l%M %p"
#. Translators: this is the month name and day number
#. followed by a time string in 12h format.
#. i.e. "May 25, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1012
#: ../js/ui/components/telepathyClient.js:1015
msgid "%B %d, %l%M %p"
msgstr "%d de %B, %l%M %p"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 12h format.
#. i.e. "May 25 2012, 2:30 pm"*/
#: ../js/ui/components/telepathyClient.js:1018
#: ../js/ui/components/telepathyClient.js:1021
msgid "%B %d %Y, %l%M %p"
msgstr "%d de %B de %Y, %l%M %p"
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:1051
#: ../js/ui/components/telepathyClient.js:1054
#, javascript-format
msgid "%s is now known as %s"
msgstr "Agora %s chámase %s"
#. translators: argument is a room name like
#. * room@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1154
#: ../js/ui/components/telepathyClient.js:1158
#, javascript-format
msgid "Invitation to %s"
msgstr "Convite a %s"
@ -806,38 +802,38 @@ msgstr "Convite a %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example. */
#: ../js/ui/components/telepathyClient.js:1162
#: ../js/ui/components/telepathyClient.js:1166
#, javascript-format
msgid "%s is inviting you to join %s"
msgstr "%s estalle convidando a unirse a %s"
#: ../js/ui/components/telepathyClient.js:1164
#: ../js/ui/components/telepathyClient.js:1199
#: ../js/ui/components/telepathyClient.js:1233
#: ../js/ui/components/telepathyClient.js:1291
#: ../js/ui/components/telepathyClient.js:1168
#: ../js/ui/components/telepathyClient.js:1203
#: ../js/ui/components/telepathyClient.js:1237
#: ../js/ui/components/telepathyClient.js:1295
msgid "Decline"
msgstr "Rexeitar"
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1296
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1243
#: ../js/ui/components/telepathyClient.js:1300
msgid "Accept"
msgstr "Aceptar"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1189
#: ../js/ui/components/telepathyClient.js:1193
#, javascript-format
msgid "Video call from %s"
msgstr "Videochamada de %s"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1192
#: ../js/ui/components/telepathyClient.js:1196
#, javascript-format
msgid "Call from %s"
msgstr "Chamada de %s"
#. translators: this is a button label (verb), not a noun */
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
msgid "Answer"
msgstr "Responder"
@ -846,112 +842,112 @@ msgstr "Responder"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#. */
#: ../js/ui/components/telepathyClient.js:1227
#: ../js/ui/components/telepathyClient.js:1231
#, javascript-format
msgid "%s is sending you %s"
msgstr "%s esta enviándolle %s"
#. To translators: The parameter is the contact's alias */
#: ../js/ui/components/telepathyClient.js:1256
#: ../js/ui/components/telepathyClient.js:1260
#, javascript-format
msgid "%s would like permission to see when you are online"
msgstr "%s solicítalle permiso para ver cando está en liña"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid "Network error"
msgstr "Erro da rede"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Authentication failed"
msgstr "Fallou a autenticación"
#: ../js/ui/components/telepathyClient.js:1346
#: ../js/ui/components/telepathyClient.js:1350
msgid "Encryption error"
msgstr "Erro de cifrado"
#: ../js/ui/components/telepathyClient.js:1348
#: ../js/ui/components/telepathyClient.js:1352
msgid "Certificate not provided"
msgstr "Certificado non fornecido"
#: ../js/ui/components/telepathyClient.js:1350
#: ../js/ui/components/telepathyClient.js:1354
msgid "Certificate untrusted"
msgstr "Non se confía no certificado"
#: ../js/ui/components/telepathyClient.js:1352
#: ../js/ui/components/telepathyClient.js:1356
msgid "Certificate expired"
msgstr "Certificado caducado"
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
msgid "Certificate not activated"
msgstr "Certificado non activado"
#: ../js/ui/components/telepathyClient.js:1356
#: ../js/ui/components/telepathyClient.js:1360
msgid "Certificate hostname mismatch"
msgstr "O nome do servidor do certificado non coincide"
#: ../js/ui/components/telepathyClient.js:1358
#: ../js/ui/components/telepathyClient.js:1362
msgid "Certificate fingerprint mismatch"
msgstr "A pegada do certificado non coincide"
#: ../js/ui/components/telepathyClient.js:1360
#: ../js/ui/components/telepathyClient.js:1364
msgid "Certificate self-signed"
msgstr "Certificado autoasinado"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1366
msgid "Status is set to offline"
msgstr "O estado está definido a «desconectado»"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Encryption is not available"
msgstr "O cifrado non está dispoñíbel"
#: ../js/ui/components/telepathyClient.js:1366
#: ../js/ui/components/telepathyClient.js:1370
msgid "Certificate is invalid"
msgstr "O certificado non é válido"
#: ../js/ui/components/telepathyClient.js:1368
#: ../js/ui/components/telepathyClient.js:1372
msgid "Connection has been refused"
msgstr "Rexeitouse a conexión"
#: ../js/ui/components/telepathyClient.js:1370
#: ../js/ui/components/telepathyClient.js:1374
msgid "Connection can't be established"
msgstr "Non é posíbel estabelecer a conexión"
#: ../js/ui/components/telepathyClient.js:1372
#: ../js/ui/components/telepathyClient.js:1376
msgid "Connection has been lost"
msgstr "Perdeuse a conexión"
#: ../js/ui/components/telepathyClient.js:1374
#: ../js/ui/components/telepathyClient.js:1378
msgid "This account is already connected to the server"
msgstr "Esta cuenta xa está conectada ao servidor"
#: ../js/ui/components/telepathyClient.js:1376
#: ../js/ui/components/telepathyClient.js:1380
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"Substituíuse a conexión por unha nova conexión empregando o mesmo recurso"
#: ../js/ui/components/telepathyClient.js:1378
#: ../js/ui/components/telepathyClient.js:1382
msgid "The account already exists on the server"
msgstr "Esta conta xa existe no servidor"
#: ../js/ui/components/telepathyClient.js:1380
#: ../js/ui/components/telepathyClient.js:1384
msgid "Server is currently too busy to handle the connection"
msgstr ""
"Nestes intres o servidor está moi ocupado tentando xestionar a conexión"
#: ../js/ui/components/telepathyClient.js:1382
#: ../js/ui/components/telepathyClient.js:1386
msgid "Certificate has been revoked"
msgstr "Revogouse o certificado"
#: ../js/ui/components/telepathyClient.js:1384
#: ../js/ui/components/telepathyClient.js:1388
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"O certificado usa un algoritmo de cifrado inseguro ou é criptográficamente "
"débil"
#: ../js/ui/components/telepathyClient.js:1386
#: ../js/ui/components/telepathyClient.js:1390
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -960,22 +956,22 @@ msgstr ""
"certificado do servidor excede os límites impostos pola biblioteca de "
"criptografía."
#: ../js/ui/components/telepathyClient.js:1388
#: ../js/ui/components/telepathyClient.js:1392
msgid "Internal error"
msgstr "Erro interno"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1398
#: ../js/ui/components/telepathyClient.js:1402
#, javascript-format
msgid "Unable to connect to %s"
msgstr "Non foi posíbel conectarse a %s"
#: ../js/ui/components/telepathyClient.js:1403
#: ../js/ui/components/telepathyClient.js:1407
msgid "View account"
msgstr "Ver conta"
#: ../js/ui/components/telepathyClient.js:1440
#: ../js/ui/components/telepathyClient.js:1444
msgid "Unknown reason"
msgstr "Razón descoñecida"
@ -991,22 +987,22 @@ msgstr "Mostrar aplicativos"
msgid "Dash"
msgstr "Taboleiro"
#: ../js/ui/dateMenu.js:91
#: ../js/ui/dateMenu.js:97
msgid "Open Calendar"
msgstr "Abrir Calendario"
#: ../js/ui/dateMenu.js:95
#: ../js/ui/dateMenu.js:101
msgid "Open Clocks"
msgstr "Abrir Reloxos"
#: ../js/ui/dateMenu.js:102
#: ../js/ui/dateMenu.js:108
msgid "Date & Time Settings"
msgstr "Preferencias de data e hora"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#. */
#: ../js/ui/dateMenu.js:192
#: ../js/ui/dateMenu.js:205
msgid "%A %B %e, %Y"
msgstr "%a, %e de %B, %Y"
@ -1129,13 +1125,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:618
#: ../js/ui/endSessionDialog.js:619
#, javascript-format
msgid "%s (remote)"
msgstr "%s (remoto)"
#. Translators: Console here refers to a tty like a VT console */
#: ../js/ui/endSessionDialog.js:621
#: ../js/ui/endSessionDialog.js:622
#, javascript-format
msgid "%s (console)"
msgstr "%s (consola)"
@ -1149,7 +1145,7 @@ msgstr "Instalar"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Desexa descargar e instalar «%s» desde extensions.gnome.org?"
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
msgid "Keyboard"
msgstr "Teclado"
@ -1237,11 +1233,11 @@ msgstr "Non hai mensaxes"
msgid "Message Tray"
msgstr "Bandexa de mensaxes"
#: ../js/ui/messageTray.js:2962
#: ../js/ui/messageTray.js:2967
msgid "System Information"
msgstr "Información do sistema"
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
msgctxt "program"
msgid "Unknown"
msgstr "Descoñecido"
@ -1279,7 +1275,7 @@ msgstr "Saír"
msgid "Activities"
msgstr "Actividades"
#: ../js/ui/panel.js:914
#: ../js/ui/panel.js:915
msgid "Top Bar"
msgstr "Barra superior"
@ -1316,19 +1312,19 @@ msgstr "Bloquear"
msgid "GNOME needs to lock the screen"
msgstr "GNOME precisa bloquear a pantalla"
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
msgid "Unable to lock"
msgstr "Non foi posíbel bloquear"
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
msgid "Lock was blocked by an application"
msgstr "Un aplicativo impediu o bloqueo"
#: ../js/ui/search.js:603
#: ../js/ui/search.js:606
msgid "Searching…"
msgstr "Buscando…"
#: ../js/ui/search.js:649
#: ../js/ui/search.js:652
msgid "No results."
msgstr "Sen resultados."
@ -1392,11 +1388,11 @@ msgstr "Rexeite de teclas"
msgid "Mouse Keys"
msgstr "Teclas do rato"
#: ../js/ui/status/accessibility.js:143
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Contraste alto"
#: ../js/ui/status/accessibility.js:192
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Texto grande"
@ -1466,37 +1462,37 @@ msgstr "Conectado"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu) */
#: ../js/ui/status/network.js:426
msgid "unmanaged"
msgstr "non xestionada"
msgid "Unmanaged"
msgstr "Sen xestionar"
#: ../js/ui/status/network.js:428
msgid "disconnecting..."
msgstr "desconectando…"
msgid "Disconnecting"
msgstr "Desconectando…"
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "conectando"
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Conectando"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "requírese autenticación"
#: ../js/ui/status/network.js:437
msgid "Authentication required"
msgstr "Requírese autenticación"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
#: ../js/ui/status/network.js:445
msgid "firmware missing"
msgstr "falta o «firmware»"
msgid "Firmware missing"
msgstr "Falta o «firmware»"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage */
#: ../js/ui/status/network.js:449
msgid "unavailable"
msgstr "non dispoñíbel"
msgid "Unavailable"
msgstr "Non dispoñíbel"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "conexión fallada"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Produciuse un fallo na conexión"
#: ../js/ui/status/network.js:467
msgid "Wired Settings"
@ -1570,9 +1566,18 @@ msgstr "Activar"
msgid "Hotspot Active"
msgstr "Punto wifi activo"
#: ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Conectando"
#: ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "conectando"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "requírese autenticación"
#: ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "conexión fallada"
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
msgid "Network Settings"
@ -1590,10 +1595,6 @@ msgstr "VPN"
msgid "Network Manager"
msgstr "Xestor da rede"
#: ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Produciuse un fallo na conexión"
#: ../js/ui/status/network.js:1647
msgid "Activation of network connection failed"
msgstr "Produciuse un fallo na activación da conexión de rede"
@ -1704,7 +1705,7 @@ msgstr "Reverter preferencias"
msgid "Keep Changes"
msgstr "Manter cambios"
#: ../js/ui/windowManager.js:97
#: ../js/ui/windowManager.js:98
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -1768,10 +1769,16 @@ msgstr "Os contrasinais non coinciden."
msgid "Password cannot be blank"
msgstr "O contrasinal non pode estar baleiro"
#: ../src/shell-polkit-authentication-agent.c:343
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "O usuario rexeitou o diálogo de autenticación"
#~ msgid "calendar:MY"
#~ msgstr "calendar:MY"
#~ msgid "unavailable"
#~ msgstr "non dispoñíbel"
#~ msgctxt "event list time"
#~ msgid "%H\\u2236%M"
#~ msgstr "%H\\u2236%M"
@ -2219,9 +2226,6 @@ msgstr "O usuario rexeitou o diálogo de autenticación"
#~ msgid "VPN Connections"
#~ msgstr "Conexións VPN"
#~ msgid "Unavailable"
#~ msgstr "Non dispoñíbel"
#~ msgid "System Settings"
#~ msgstr "Preferencias do sistema"

393
po/he.po
View File

@ -1,16 +1,17 @@
# Hebrew translation for gnome-shell.
# Copyright (C) 2009 gnome-shell's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell package.
# liel <lielft@gmail.com>, 2009.
# Yaron Shahrabani <sh.yaron@gmail.com>, 2010.
# Yosef Or Boczko <yoseforb@gnome.org>, 2013, 2014.
# Hebrew translation for gnome-shell.
# Copyright (C) 2009 gnome-shell's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell package.
# liel <lielft@gmail.com>, 2009.
# Yaron Shahrabani <sh.yaron@gmail.com>, 2010.
#
# Yosef Or Boczko <yoseforb@gnome.org>, 2013, 2014.
, 2014.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"POT-Creation-Date: 2014-03-27 20:22+0200\n"
"PO-Revision-Date: 2014-03-27 20:24+0200\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-22 23:44+0300\n"
"PO-Revision-Date: 2014-05-22 23:45+0300\n"
"Last-Translator: Yosef Or Boczko <yoseforb@gmail.com>\n"
"Language-Team: עברית <>\n"
@ -331,25 +332,25 @@ msgstr "בחירת הפעלה"
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "לא רשום?"
#: ../js/gdm/loginDialog.js:611
#: ../js/gdm/loginDialog.js:616
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(משתמש או %s לדוגמה)"
#: ../js/gdm/loginDialog.js:616 ../js/ui/components/networkAgent.js:262
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
#: ../js/ui/components/networkAgent.js:280
msgid "Username: "
msgstr "שם משתמש:"
#: ../js/gdm/loginDialog.js:917
#: ../js/gdm/loginDialog.js:924
msgid "Login Window"
msgstr "חלון כניסה"
#: ../js/gdm/util.js:322
#: ../js/gdm/util.js:323
msgid "Authentication error"
msgstr "שגיאת אימות"
#: ../js/gdm/util.js:452
#: ../js/gdm/util.js:453
msgid "(or swipe finger)"
msgstr "(או להעביר אצבע)"
@ -366,30 +367,34 @@ msgstr "לא ניתן לפענח את הפקודה:"
#, javascript-format
msgid "Execution of “%s” failed:"
msgstr "ההרצה של „%s” נכשלה:"
#: ../js/ui/appDisplay.js:636
#: ../js/ui/appDisplay.js:640
msgid "Frequently used applications will appear here"
msgstr "יישומים בשימוש תדיר יופיעו כאן"
#: ../js/ui/appDisplay.js:747
#: ../js/ui/appDisplay.js:751
msgid "Frequent"
msgstr "תדיר"
#: ../js/ui/appDisplay.js:754
#: ../js/ui/appDisplay.js:758
msgid "All"
msgstr "הכול"
#: ../js/ui/appDisplay.js:1566
#: ../js/ui/appDisplay.js:1571
msgid "New Window"
msgstr "חלון חדש"
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1593 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "הסרה מהמועדפים"
#: ../js/ui/appDisplay.js:1594
#: ../js/ui/appDisplay.js:1599
msgid "Add to Favorites"
msgstr "הוספה למועדפים"
#: ../js/ui/appDisplay.js:1608
msgid "Show Details"
msgstr "הצגת פרטים"
#: ../js/ui/appFavorites.js:87
#, javascript-format
@ -400,8 +405,8 @@ msgstr "%s נוסף למועדפים שלך."
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s הוסר מהמועדפים שלך."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
#: ../js/ui/status/system.js:334
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "הגדרות"
@ -412,22 +417,22 @@ msgstr "החלפת הרקע…"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#: ../js/ui/calendar.js:64
#. */
#: ../js/ui/calendar.js:67
msgctxt "event list time"
msgid "All Day"
msgstr "יום שלם"
#. Translators: Shown in calendar event list, if 24h format,
#: ../js/ui/calendar.js:70
#. \u2236 is a ratio character, similar to : */
#: ../js/ui/calendar.js:73
msgctxt "event list time"
msgstr "%H\\u2236%M"
msgid "%H%M"
msgstr "%H:%M"
#. Translators: Shown in calendar event list, if 12h format,
#. \u2236 is a ratio character, similar to : and \u2009 is
#: ../js/ui/calendar.js:79
#. a thin space */
#: ../js/ui/calendar.js:82
msgctxt "event list time"
msgid "%l%M%p"
@ -437,43 +442,43 @@ msgstr "%l\\u2236%M%p"
#. *
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#: ../js/ui/calendar.js:110
#. */
#: ../js/ui/calendar.js:113
msgctxt "grid sunday"
msgid "S"
msgstr "א"
#: ../js/ui/calendar.js:112
#. Translators: Calendar grid abbreviation for Monday */
#: ../js/ui/calendar.js:115
msgctxt "grid monday"
msgid "M"
msgstr "ב"
#: ../js/ui/calendar.js:114
#. Translators: Calendar grid abbreviation for Tuesday */
#: ../js/ui/calendar.js:117
msgctxt "grid tuesday"
msgid "T"
msgstr "ג"
#: ../js/ui/calendar.js:116
#. Translators: Calendar grid abbreviation for Wednesday */
#: ../js/ui/calendar.js:119
msgctxt "grid wednesday"
msgid "W"
msgstr "ד"
#: ../js/ui/calendar.js:118
#. Translators: Calendar grid abbreviation for Thursday */
#: ../js/ui/calendar.js:121
msgctxt "grid thursday"
msgid "T"
msgstr "ה"
#: ../js/ui/calendar.js:120
#. Translators: Calendar grid abbreviation for Friday */
#: ../js/ui/calendar.js:123
msgctxt "grid friday"
msgid "F"
msgstr "ו"
#: ../js/ui/calendar.js:122
#. Translators: Calendar grid abbreviation for Saturday */
#: ../js/ui/calendar.js:125
msgctxt "grid saturday"
msgid "S"
@ -484,97 +489,93 @@ msgstr "ש"
#. * NOTE: These list abbreviations are normally not shown together
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
#. * both be 'T').
#: ../js/ui/calendar.js:135
#. */
#: ../js/ui/calendar.js:138
msgctxt "list sunday"
msgid "Su"
msgstr "א׳"
#: ../js/ui/calendar.js:137
#. Translators: Event list abbreviation for Monday */
#: ../js/ui/calendar.js:140
msgctxt "list monday"
msgid "M"
msgstr "ב׳"
#: ../js/ui/calendar.js:139
#. Translators: Event list abbreviation for Tuesday */
#: ../js/ui/calendar.js:142
msgctxt "list tuesday"
msgid "T"
msgstr "ג׳"
#: ../js/ui/calendar.js:141
#. Translators: Event list abbreviation for Wednesday */
#: ../js/ui/calendar.js:144
msgctxt "list wednesday"
msgid "W"
msgstr "ד׳"
#: ../js/ui/calendar.js:143
#. Translators: Event list abbreviation for Thursday */
#: ../js/ui/calendar.js:146
msgctxt "list thursday"
msgid "Th"
msgstr "ה"
#: ../js/ui/calendar.js:145
#. Translators: Event list abbreviation for Friday */
#: ../js/ui/calendar.js:148
msgctxt "list friday"
msgid "F"
msgstr "ו׳"
#: ../js/ui/calendar.js:147
#. Translators: Event list abbreviation for Saturday */
#: ../js/ui/calendar.js:150
msgctxt "list saturday"
msgid "S"
msgstr "ש׳"
#: ../js/ui/calendar.js:390
msgid "calendar:MY"
msgstr "calendar:YM"
#: ../js/ui/calendar.js:450
#: ../js/ui/calendar.js:453
msgid "Previous month"
msgstr "חודש קודם"
#: ../js/ui/calendar.js:460
#: ../js/ui/calendar.js:463
msgid "Next month"
msgstr "חודש הבא"
#: ../js/ui/calendar.js:772
#. Translators: Text to show if there are no events */
#: ../js/ui/calendar.js:775
msgid "Nothing Scheduled"
msgstr "היומן ריק"
#: ../js/ui/calendar.js:790
#. Translators: Shown on calendar heading when selected day occurs on current year */
#: ../js/ui/calendar.js:793
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, ה־%e ב%B"
#: ../js/ui/calendar.js:793
#. Translators: Shown on calendar heading when selected day occurs on different year */
#: ../js/ui/calendar.js:796
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, ה־%e ב%B, %Y"
#: ../js/ui/calendar.js:804
#: ../js/ui/calendar.js:807
msgid "Today"
msgstr "היום"
#: ../js/ui/calendar.js:808
#: ../js/ui/calendar.js:811
msgid "Tomorrow"
msgstr "מחר"
#: ../js/ui/calendar.js:819
#: ../js/ui/calendar.js:822
msgid "This week"
msgstr "השבוע"
#: ../js/ui/calendar.js:827
#: ../js/ui/calendar.js:830
msgid "Next week"
msgstr "בשבוע הבא"
#: ../js/ui/components/automountManager.js:90
#: ../js/ui/components/automountManager.js:91
msgid "External drive connected"
msgstr "חובר כונן חיצוני"
#: ../js/ui/components/automountManager.js:101
#: ../js/ui/components/automountManager.js:102
msgid "External drive disconnected"
msgstr "נותק כונן חיצוני"
@ -717,77 +718,77 @@ msgid "Mute"
msgid "Mute"
msgstr "השתקה"
#: ../js/ui/components/telepathyClient.js:955
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:958
msgid "%H%M"
msgstr "%H:%M"
#. Translators: this is the word "Yesterday" followed by a
#: ../js/ui/components/telepathyClient.js:962
#. time string in 24h format. i.e. "Yesterday, 14:30" */
#: ../js/ui/components/telepathyClient.js:965
msgid "Yesterday, %H%M"
msgstr "אתמול, %H\\u2236%M"
#. Translators: this is the week day name followed by a time
#: ../js/ui/components/telepathyClient.js:969
#. string in 24h format. i.e. "Monday, 14:30" */
#: ../js/ui/components/telepathyClient.js:972
msgid "%A, %H%M"
msgstr "%A, %H:%M"
#. Translators: this is the month name and day number
#. followed by a time string in 24h format.
#: ../js/ui/components/telepathyClient.js:976
#. i.e. "May 25, 14:30" */
#: ../js/ui/components/telepathyClient.js:979
msgid "%B %d, %H%M"
msgstr "%d ב%B, %H:%M"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 24h format.
#: ../js/ui/components/telepathyClient.js:982
#. i.e. "May 25 2012, 14:30" */
#: ../js/ui/components/telepathyClient.js:985
msgid "%B %d %Y, %H%M"
msgstr "%d ב%B, %H:%M"
#: ../js/ui/components/telepathyClient.js:991
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:994
msgid "%l%M %p"
msgstr "%l:%M %p"
#. Translators: this is the word "Yesterday" followed by a
#: ../js/ui/components/telepathyClient.js:998
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1001
msgid "Yesterday, %l%M %p"
msgstr "אתמול, %l\\u2236%M %p"
#. Translators: this is the week day name followed by a time
#: ../js/ui/components/telepathyClient.js:1005
#. string in 12h format. i.e. "Monday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1008
msgid "%A, %l%M %p"
msgstr "%l:%M %p"
#. Translators: this is the month name and day number
#. followed by a time string in 12h format.
#: ../js/ui/components/telepathyClient.js:1012
#. i.e. "May 25, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1015
msgid "%B %d, %l%M %p"
msgstr "%d ב%B, %H:%M"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 12h format.
#: ../js/ui/components/telepathyClient.js:1018
#. i.e. "May 25 2012, 2:30 pm"*/
#: ../js/ui/components/telepathyClient.js:1021
msgid "%B %d %Y, %l%M %p"
msgstr "%d ב%B %Y, %l\\u2236%M %p"
#. Translators: this is the other person changing their old IM name to their new
#: ../js/ui/components/telepathyClient.js:1051
#. IM name. */
#: ../js/ui/components/telepathyClient.js:1054
#, javascript-format
msgid "%s is now known as %s"
msgstr "השם של %s הוחלף ל־%s"
#. translators: argument is a room name like
#: ../js/ui/components/telepathyClient.js:1154
#. * room@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1158
#, javascript-format
msgid "Invitation to %s"
@ -795,38 +796,38 @@ msgstr "הזמנה ל־%s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#: ../js/ui/components/telepathyClient.js:1162
#. * for example. */
#: ../js/ui/components/telepathyClient.js:1166
#, javascript-format
msgid "%s is inviting you to join %s"
msgstr "הוזמנת על ידי %s להצטרף אל %s"
#: ../js/ui/components/telepathyClient.js:1164
#: ../js/ui/components/telepathyClient.js:1199
#: ../js/ui/components/telepathyClient.js:1233
#: ../js/ui/components/telepathyClient.js:1290
#: ../js/ui/components/telepathyClient.js:1168
#: ../js/ui/components/telepathyClient.js:1203
#: ../js/ui/components/telepathyClient.js:1237
#: ../js/ui/components/telepathyClient.js:1295
msgid "Decline"
msgstr "דחייה"
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1295
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1243
#: ../js/ui/components/telepathyClient.js:1300
msgid "Accept"
msgstr "אישור"
#: ../js/ui/components/telepathyClient.js:1189
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1193
#, javascript-format
msgid "Video call from %s"
msgstr "שיחת וידאו מאת %s"
#: ../js/ui/components/telepathyClient.js:1192
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1196
#, javascript-format
msgid "Call from %s"
msgstr "שיחה מאת %s"
#: ../js/ui/components/telepathyClient.js:1206
#. translators: this is a button label (verb), not a noun */
#: ../js/ui/components/telepathyClient.js:1210
msgid "Answer"
msgstr "מענה"
@ -835,108 +836,108 @@ msgstr "מענה"
#. * the contact's alias and the second one is the
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#: ../js/ui/components/telepathyClient.js:1227
#. */
#: ../js/ui/components/telepathyClient.js:1231
#, javascript-format
msgid "%s is sending you %s"
msgstr "%s שולח/ת אליך %s"
#: ../js/ui/components/telepathyClient.js:1256
#. To translators: The parameter is the contact's alias */
#: ../js/ui/components/telepathyClient.js:1260
#, javascript-format
msgid "%s would like permission to see when you are online"
msgstr "%s רוצה לקבל הרשאות כדי לראות מתי מצבך הוא מקוון"
#: ../js/ui/components/telepathyClient.js:1341
#: ../js/ui/components/telepathyClient.js:1346
msgid "Network error"
msgstr "שגיאת רשת"
#: ../js/ui/components/telepathyClient.js:1343
#: ../js/ui/components/telepathyClient.js:1348
msgid "Authentication failed"
msgstr "האימות נכשל"
#: ../js/ui/components/telepathyClient.js:1345
#: ../js/ui/components/telepathyClient.js:1350
msgid "Encryption error"
msgstr "שגיאת הצפנה"
#: ../js/ui/components/telepathyClient.js:1347
#: ../js/ui/components/telepathyClient.js:1352
msgid "Certificate not provided"
msgstr "לא סופק אישור"
#: ../js/ui/components/telepathyClient.js:1349
#: ../js/ui/components/telepathyClient.js:1354
msgid "Certificate untrusted"
msgstr "האישור אינו מהימן"
#: ../js/ui/components/telepathyClient.js:1351
#: ../js/ui/components/telepathyClient.js:1356
msgid "Certificate expired"
msgstr "האישור פג"
#: ../js/ui/components/telepathyClient.js:1353
#: ../js/ui/components/telepathyClient.js:1358
msgid "Certificate not activated"
msgstr "האישור לא מופעל"
#: ../js/ui/components/telepathyClient.js:1355
#: ../js/ui/components/telepathyClient.js:1360
msgid "Certificate hostname mismatch"
msgstr "שם המארח באישור אינו תואם"
#: ../js/ui/components/telepathyClient.js:1357
#: ../js/ui/components/telepathyClient.js:1362
msgid "Certificate fingerprint mismatch"
msgstr "חוסר התאמה בטביעת האצבע של האישור"
#: ../js/ui/components/telepathyClient.js:1359
#: ../js/ui/components/telepathyClient.js:1364
msgid "Certificate self-signed"
msgstr "אישור בחתימה עצמית"
#: ../js/ui/components/telepathyClient.js:1361
#: ../js/ui/components/telepathyClient.js:1366
msgid "Status is set to offline"
msgstr "המצב הוגדר ל'מנותק'"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1368
msgid "Encryption is not available"
msgstr "ההצפנה אינה זמינה"
#: ../js/ui/components/telepathyClient.js:1365
#: ../js/ui/components/telepathyClient.js:1370
msgid "Certificate is invalid"
msgstr "האישור אינו תקף"
#: ../js/ui/components/telepathyClient.js:1367
#: ../js/ui/components/telepathyClient.js:1372
msgid "Connection has been refused"
msgstr "ההתחברות נשללה"
#: ../js/ui/components/telepathyClient.js:1369
#: ../js/ui/components/telepathyClient.js:1374
msgid "Connection can't be established"
msgstr "לא ניתן להפעיל את החיבור"
#: ../js/ui/components/telepathyClient.js:1371
#: ../js/ui/components/telepathyClient.js:1376
msgid "Connection has been lost"
msgstr "החיבור אבד"
#: ../js/ui/components/telepathyClient.js:1373
#: ../js/ui/components/telepathyClient.js:1378
msgid "This account is already connected to the server"
msgstr "חשבון זה כבר מחובר לשרת"
#: ../js/ui/components/telepathyClient.js:1375
#: ../js/ui/components/telepathyClient.js:1380
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "החיבור הוחלף בחיבור חדש באמצעות אותו המשאב"
#: ../js/ui/components/telepathyClient.js:1377
#: ../js/ui/components/telepathyClient.js:1382
msgid "The account already exists on the server"
msgstr "החשבון כבר קיים בשרת"
#: ../js/ui/components/telepathyClient.js:1379
#: ../js/ui/components/telepathyClient.js:1384
msgid "Server is currently too busy to handle the connection"
msgstr "השרת עסוק ברגע זה מכדי לטפל בחיבור"
#: ../js/ui/components/telepathyClient.js:1381
#: ../js/ui/components/telepathyClient.js:1386
msgid "Certificate has been revoked"
msgstr "האישור נשלל"
#: ../js/ui/components/telepathyClient.js:1383
#: ../js/ui/components/telepathyClient.js:1388
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr "האישור משתמש באלגוריתם הצפנה שאינו בטוח או חלש מבחינת הצפנה"
#: ../js/ui/components/telepathyClient.js:1385
#: ../js/ui/components/telepathyClient.js:1390
msgid ""
"The length of the server certificate, or the depth of the server certificate "
@ -944,22 +945,22 @@ msgstr ""
msgstr ""
"אורך אישור השרת, או עומק שרשרת אישור השרת, חורגים מהמגבלות שנכפו על ידי "
"ספריית ההצפנה"
#: ../js/ui/components/telepathyClient.js:1387
#: ../js/ui/components/telepathyClient.js:1392
msgid "Internal error"
msgstr "שגיאה פנימית"
#. translators: argument is the account name, like
#: ../js/ui/components/telepathyClient.js:1397
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1402
#, javascript-format
msgid "Unable to connect to %s"
msgstr "לא ניתן להתחבר אל %s"
#: ../js/ui/components/telepathyClient.js:1402
#: ../js/ui/components/telepathyClient.js:1407
msgid "View account"
msgstr "צפייה בחשבון"
#: ../js/ui/components/telepathyClient.js:1439
#: ../js/ui/components/telepathyClient.js:1444
msgid "Unknown reason"
msgstr "סיבה לא ידועה"
@ -975,22 +976,22 @@ msgstr "הצגת יישומים"
#: ../js/ui/dash.js:445
msgid "Dash"
msgstr "חלונית"
#: ../js/ui/dateMenu.js:91
#: ../js/ui/dateMenu.js:97
msgid "Open Calendar"
msgstr "פתיחת היומן"
#: ../js/ui/dateMenu.js:95
#: ../js/ui/dateMenu.js:101
msgid "Open Clocks"
msgstr "פתיחת השעונים"
#: ../js/ui/dateMenu.js:102
#: ../js/ui/dateMenu.js:108
msgid "Date & Time Settings"
msgstr "הגדרות תאריך ושעה"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#: ../js/ui/dateMenu.js:192
#. */
#: ../js/ui/dateMenu.js:205
msgid "%A %B %e, %Y"
msgstr "%A ה־%e ב%B, %Y"
@ -1109,13 +1110,13 @@ msgid "Other users are logged in."
msgid "Other users are logged in."
msgstr "משתמשים נוספים מחוברים."
#: ../js/ui/endSessionDialog.js:618
#. Translators: Remote here refers to a remote session, like a ssh login */
#: ../js/ui/endSessionDialog.js:619
#, javascript-format
msgid "%s (remote)"
msgstr "%s (מרוחק)"
#: ../js/ui/endSessionDialog.js:621
#. Translators: Console here refers to a tty like a VT console */
#: ../js/ui/endSessionDialog.js:622
#, javascript-format
msgid "%s (console)"
@ -1129,7 +1130,7 @@ msgstr "התקנה"
#, javascript-format
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "הורדה והתקנה של „%s” מ־extensions.gnome.org?"
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
msgid "Keyboard"
msgstr "מקלדת"
@ -1217,17 +1218,17 @@ msgstr "אין הודעות"
#: ../js/ui/messageTray.js:1964
msgid "Message Tray"
msgstr "אזור דיווח ההודעות"
#: ../js/ui/messageTray.js:2962
#: ../js/ui/messageTray.js:2967
msgid "System Information"
msgstr "פרטי המערכת"
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
msgctxt "program"
msgid "Unknown"
msgstr "לא ידוע"
# javascript-format
#: ../js/ui/overviewControls.js:483 ../js/ui/screenShield.js:151
# javascript-format
#: ../js/ui/overviewControls.js:488 ../js/ui/screenShield.js:151
#, c-format
msgid "%d new message"
@ -1260,7 +1261,7 @@ msgstr "יציאה"
#: ../js/ui/panel.js:568
msgid "Activities"
msgstr "פעילויות"
#: ../js/ui/panel.js:914
#: ../js/ui/panel.js:915
msgid "Top Bar"
msgstr "הסרגל העליון"
@ -1272,7 +1273,7 @@ msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:74
msgid "Enter a Command"
msgstr "נא להזין פקודה"
#: ../js/ui/runDialog.js:114
#: ../js/ui/runDialog.js:114 ../js/ui/windowMenu.js:117
msgid "Close"
msgstr "סגירה"
@ -1282,7 +1283,7 @@ msgstr "סגירה"
#: ../js/ui/screenShield.js:88
msgid "%A, %B %d"
msgstr "%A, ה־%d ב%B"
# javascript-format
# javascript-format
#: ../js/ui/screenShield.js:153
#, c-format
@ -1290,7 +1291,7 @@ msgid_plural "%d new notifications"
msgid_plural "%d new notifications"
msgstr[0] "התרעה חדשה אחת"
msgstr[1] "%d התרעות חדשות"
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "נעילה"
@ -1298,19 +1299,19 @@ msgstr "נעילה"
#: ../js/ui/screenShield.js:708
msgid "GNOME needs to lock the screen"
msgstr "על GNOME לנעול את המסך"
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
msgid "Unable to lock"
msgstr "לא ניתן לנעול"
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
msgid "Lock was blocked by an application"
msgstr "הנעילה נחסמה ע״י היישום"
#: ../js/ui/search.js:603
#: ../js/ui/search.js:606
msgid "Searching…"
msgstr "בחיפוש…"
#: ../js/ui/search.js:649
#: ../js/ui/search.js:652
msgid "No results."
msgstr "אין תוצאות."
@ -1374,11 +1375,11 @@ msgstr "מקשים קופצים"
#: ../js/ui/status/accessibility.js:84
msgid "Mouse Keys"
msgstr "מקשי עכבר"
#: ../js/ui/status/accessibility.js:143
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "ניגודיות גבוהה"
#: ../js/ui/status/accessibility.js:192
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "טקסט גדול"
@ -1388,8 +1389,8 @@ msgstr "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
#: ../js/ui/status/rfkill.js:105
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:86
#: ../js/ui/status/rfkill.js:114
msgid "Turn Off"
msgstr "כיבוי"
@ -1397,7 +1398,7 @@ msgstr "כיבוי"
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "הגדרות Bluetooth"
# javascript-format
# javascript-format
#: ../js/ui/status/bluetooth.js:104
#, c-format
@ -1449,37 +1450,37 @@ msgstr "מחובר"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu) */
msgid "unmanaged"
#: ../js/ui/status/network.js:426
msgid "Unmanaged"
msgstr "לא מנוהל"
msgid "disconnecting..."
msgstr "בהליכי ניתוק..."
#: ../js/ui/status/network.js:428
msgid "Disconnecting"
msgstr "בהליכי ניתוק"
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "בהתחברות..."
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "בהתחברות"
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
msgid "authentication required"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:437
msgid "Authentication required"
msgstr "נדרש אימות"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
msgid "firmware missing"
#: ../js/ui/status/network.js:445
msgid "Firmware missing"
msgstr "הקושחה חסרה"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage */
msgid "unavailable"
#: ../js/ui/status/network.js:449
msgid "Unavailable"
msgstr "לא זמין"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "החיבור נכשל"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "ההתחברות נכשלה"
#: ../js/ui/status/network.js:467
@ -1533,7 +1534,7 @@ msgstr "בחירת רשת"
#: ../js/ui/status/network.js:845
msgid "No Networks"
msgstr "אין רשתות"
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:112
msgid "Use hardware switch to turn off"
msgstr "שימוש במתג של החומרה לכיבוי"
@ -1553,11 +1554,20 @@ msgstr "הפעלה"
#: ../js/ui/status/network.js:1251
msgid "Hotspot Active"
msgstr "נקודה חמה פעילה"
#: ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "מתחבר"
#: ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "בהתחברות..."
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "נדרש אימות"
#: ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "ההתחברות נכשלה"
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:89
msgid "Network Settings"
msgstr "הגדרות הרשת"
@ -1573,10 +1583,6 @@ msgstr "VPN"
#: ../js/ui/status/network.js:1607
msgid "Network Manager"
msgstr "מנהל הרשתות"
#: ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "ההתחברות נכשל"
#: ../js/ui/status/network.js:1647
msgid "Activation of network connection failed"
@ -1594,14 +1600,14 @@ msgid "Estimating…"
msgid "Estimating…"
msgstr "מתבצע שערוך…"
#, c-format
#: ../js/ui/status/power.js:86
#, javascript-format
msgstr "%d\\u2236%02d נותרו (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d נותרו (%d%%)"
#, c-format
#: ../js/ui/status/power.js:91
#, javascript-format
msgstr "%d\\u2236%02d עד לטעינה מלאה (%d%%)"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d:%02d עד לטעינה מלאה (%d%%)"
#: ../js/ui/status/power.js:119
@ -1611,31 +1617,31 @@ msgstr "אל־פסק"
#: ../js/ui/status/power.js:121
msgid "Battery"
msgstr "סוללה"
#: ../js/ui/status/rfkill.js:82
#: ../js/ui/status/rfkill.js:83
msgid "Airplane Mode"
msgstr "מצב טיסה"
#: ../js/ui/status/rfkill.js:84
#: ../js/ui/status/rfkill.js:85
msgid "On"
msgstr "פועל"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "החלפת משתמש"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "יציאה"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "נעילת כיוון"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "השהיה"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "כיבוי"
@ -1672,29 +1678,69 @@ msgstr "חיפוש"
#, javascript-format
msgid "“%s” is ready"
msgstr "‏„%s” מוכן"
#: ../js/ui/windowManager.js:56
#: ../js/ui/windowManager.js:57
msgid "Do you want to keep these display settings?"
msgstr "האם ברצונך לשמור הגדרות תצוגה אלה?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#: ../js/ui/windowManager.js:75
#. */
#: ../js/ui/windowManager.js:76
msgid "Revert Settings"
msgstr "שחזור הגדרות"
#: ../js/ui/windowManager.js:79
#: ../js/ui/windowManager.js:80
msgid "Keep Changes"
msgstr "שמירת שינויים"
# javascript-format
#: ../js/ui/windowManager.js:97
# javascript-format
#: ../js/ui/windowManager.js:99
#, c-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
msgstr[0] "שינויי הגדרות ישוחזרו בעוד שנייה"
msgstr[1] "שינויי הגדרות ישוחזרו בעוד %d שניות"
#: ../js/ui/windowMenu.js:33
msgid "Minimize"
msgstr "מזעור"
#: ../js/ui/windowMenu.js:40
msgid "Unmaximize"
msgstr "ביטול הגדלה"
#: ../js/ui/windowMenu.js:44
msgid "Maximize"
msgstr "הגדלה"
#: ../js/ui/windowMenu.js:51
msgid "Move"
msgstr "הזזה"
#: ../js/ui/windowMenu.js:57
msgid "Resize"
msgstr "שינוי גודל"
#: ../js/ui/windowMenu.js:64
msgid "Move Titlebar Onscreen"
msgstr "הזזת שורת הכותרת על המסך"
#: ../js/ui/windowMenu.js:69
msgid "Always on Top"
msgstr "תמיד עליון"
#: ../js/ui/windowMenu.js:86
msgid "Always on Visible Workspace"
msgstr "הצגה בכל מרחבי העבודה"
#: ../js/ui/windowMenu.js:103
msgid "Move to Workspace Up"
msgstr "הזזה למרחב העבודה שמלמעלה"
#: ../js/ui/windowMenu.js:108
msgid "Move to Workspace Down"
msgstr "הזזה למרחב העבודה שמלמטה"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
@ -1750,10 +1796,16 @@ msgstr "הססמאות אינן תואמות."
#: ../src/shell-keyring-prompt.c:722
msgid "Password cannot be blank"
msgstr "הססמה לא יכולה להישאר ריקה"
#: ../src/shell-polkit-authentication-agent.c:343
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "המשתמש בחר להתעלם מתיבת דו־שיח האימות"
#~ msgid "calendar:MY"
#~ msgstr "calendar:YM"
#~ msgid "unavailable"
#~ msgstr "לא זמין"
#~ msgctxt "event list time"
#~ msgid "%H\\u2236%M"
@ -2207,9 +2259,6 @@ msgstr "המשתמש בחר להתעלם מתיבת דו־שיח האימות"
#~ msgid "VPN Connections"
#~ msgstr "חיבורי VPN"
#~ msgid "Unavailable"
#~ msgstr "לא זמין"
#~ msgid "System Settings"
#~ msgstr "הגדרות המערכת"

367
po/id.po
View File

@ -10,9 +10,9 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2014-04-05 19:59+0000\n"
"PO-Revision-Date: 2014-04-09 05:35+0700\n"
"Last-Translator: Dirgita <dirgitadevina@yahoo.co.id>\n"
"POT-Creation-Date: 2014-05-22 07:28+0000\n"
"PO-Revision-Date: 2014-05-22 16:21+0700\n"
"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
"Language-Team: Indonesian <gnome-l10n-id@googlegroups.com>\n"
"Language: id\n"
"MIME-Version: 1.0\n"
@ -20,7 +20,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Lokalize 1.5\n"
"X-Generator: Poedit 1.5.7\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -341,25 +341,25 @@ msgstr "Pilih Sesi"
msgid "Not listed?"
msgstr "Tak masuk daftar?"
#: ../js/gdm/loginDialog.js:614
#: ../js/gdm/loginDialog.js:616
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(cth., pengguna dari %s)"
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
#: ../js/ui/components/networkAgent.js:280
msgid "Username: "
msgstr "Nama pengguna: "
#: ../js/gdm/loginDialog.js:920
#: ../js/gdm/loginDialog.js:924
msgid "Login Window"
msgstr "Jendela Log Masuk"
#: ../js/gdm/util.js:322
#: ../js/gdm/util.js:323
msgid "Authentication error"
msgstr "Galat otentikasi"
#: ../js/gdm/util.js:452
#: ../js/gdm/util.js:453
msgid "(or swipe finger)"
msgstr "(atau gesekkan jari)"
@ -376,30 +376,34 @@ msgstr "Tak dapat mengurai perintah:"
msgid "Execution of “%s” failed:"
msgstr "Eksekusi \"%s\" gagal:"
#: ../js/ui/appDisplay.js:636
#: ../js/ui/appDisplay.js:640
msgid "Frequently used applications will appear here"
msgstr "Aplikasi yang sering dipakai akan muncul di sini"
#: ../js/ui/appDisplay.js:747
#: ../js/ui/appDisplay.js:751
msgid "Frequent"
msgstr "Sering"
#: ../js/ui/appDisplay.js:754
#: ../js/ui/appDisplay.js:758
msgid "All"
msgstr "Semua"
#: ../js/ui/appDisplay.js:1566
#: ../js/ui/appDisplay.js:1571
msgid "New Window"
msgstr "Jendela Baru"
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1593 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "Hapus dari Favorit"
#: ../js/ui/appDisplay.js:1594
#: ../js/ui/appDisplay.js:1599
msgid "Add to Favorites"
msgstr "Tambah ke Favorit"
#: ../js/ui/appDisplay.js:1608
msgid "Show Details"
msgstr "Tampilkan Rincian"
#: ../js/ui/appFavorites.js:87
#, javascript-format
msgid "%s has been added to your favorites."
@ -410,8 +414,8 @@ msgstr "%s telah ditambahkan ke favorit Anda."
msgid "%s has been removed from your favorites."
msgstr "%s telah dihapus dari favorit Anda."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
#: ../js/ui/status/system.js:334
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Pengaturan"
@ -422,14 +426,14 @@ msgstr "Ubah Latar…"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#. */
#: ../js/ui/calendar.js:64
#: ../js/ui/calendar.js:67
msgctxt "event list time"
msgid "All Day"
msgstr "Sepanjang Hari"
#. Translators: Shown in calendar event list, if 24h format,
#. \u2236 is a ratio character, similar to : */
#: ../js/ui/calendar.js:70
#: ../js/ui/calendar.js:73
msgctxt "event list time"
msgid "%H%M"
msgstr "%H%M"
@ -437,7 +441,7 @@ msgstr "%H%M"
#. Translators: Shown in calendar event list, if 12h format,
#. \u2236 is a ratio character, similar to : and \u2009 is
#. a thin space */
#: ../js/ui/calendar.js:79
#: ../js/ui/calendar.js:82
msgctxt "event list time"
msgid "%l%M%p"
msgstr "%l%M%p"
@ -447,43 +451,43 @@ msgstr "%l%M%p"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#. */
#: ../js/ui/calendar.js:110
#: ../js/ui/calendar.js:113
msgctxt "grid sunday"
msgid "S"
msgstr "M"
#. Translators: Calendar grid abbreviation for Monday */
#: ../js/ui/calendar.js:112
#: ../js/ui/calendar.js:115
msgctxt "grid monday"
msgid "M"
msgstr "S"
#. Translators: Calendar grid abbreviation for Tuesday */
#: ../js/ui/calendar.js:114
#: ../js/ui/calendar.js:117
msgctxt "grid tuesday"
msgid "T"
msgstr "S"
#. Translators: Calendar grid abbreviation for Wednesday */
#: ../js/ui/calendar.js:116
#: ../js/ui/calendar.js:119
msgctxt "grid wednesday"
msgid "W"
msgstr "R"
#. Translators: Calendar grid abbreviation for Thursday */
#: ../js/ui/calendar.js:118
#: ../js/ui/calendar.js:121
msgctxt "grid thursday"
msgid "T"
msgstr "K"
#. Translators: Calendar grid abbreviation for Friday */
#: ../js/ui/calendar.js:120
#: ../js/ui/calendar.js:123
msgctxt "grid friday"
msgid "F"
msgstr "J"
#. Translators: Calendar grid abbreviation for Saturday */
#: ../js/ui/calendar.js:122
#: ../js/ui/calendar.js:125
msgctxt "grid saturday"
msgid "S"
msgstr "S"
@ -494,97 +498,93 @@ msgstr "S"
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
#. * both be 'T').
#. */
#: ../js/ui/calendar.js:135
#: ../js/ui/calendar.js:138
msgctxt "list sunday"
msgid "Su"
msgstr "Min"
#. Translators: Event list abbreviation for Monday */
#: ../js/ui/calendar.js:137
#: ../js/ui/calendar.js:140
msgctxt "list monday"
msgid "M"
msgstr "Sen"
#. Translators: Event list abbreviation for Tuesday */
#: ../js/ui/calendar.js:139
#: ../js/ui/calendar.js:142
msgctxt "list tuesday"
msgid "T"
msgstr "Sel"
#. Translators: Event list abbreviation for Wednesday */
#: ../js/ui/calendar.js:141
#: ../js/ui/calendar.js:144
msgctxt "list wednesday"
msgid "W"
msgstr "Rab"
#. Translators: Event list abbreviation for Thursday */
#: ../js/ui/calendar.js:143
#: ../js/ui/calendar.js:146
msgctxt "list thursday"
msgid "Th"
msgstr "Kam"
#. Translators: Event list abbreviation for Friday */
#: ../js/ui/calendar.js:145
#: ../js/ui/calendar.js:148
msgctxt "list friday"
msgid "F"
msgstr "Jum"
#. Translators: Event list abbreviation for Saturday */
#: ../js/ui/calendar.js:147
#: ../js/ui/calendar.js:150
msgctxt "list saturday"
msgid "S"
msgstr "Sab"
#: ../js/ui/calendar.js:390
msgid "calendar:MY"
msgstr "calendar:MY"
#: ../js/ui/calendar.js:450
#: ../js/ui/calendar.js:453
msgid "Previous month"
msgstr "Bulan sebelumnya"
#: ../js/ui/calendar.js:460
#: ../js/ui/calendar.js:463
msgid "Next month"
msgstr "Bulan selanjutnya"
#. Translators: Text to show if there are no events */
#: ../js/ui/calendar.js:772
#: ../js/ui/calendar.js:775
msgid "Nothing Scheduled"
msgstr "Tak Ada Jadwal"
#. Translators: Shown on calendar heading when selected day occurs on current year */
#: ../js/ui/calendar.js:790
#: ../js/ui/calendar.js:793
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d %B"
#. Translators: Shown on calendar heading when selected day occurs on different year */
#: ../js/ui/calendar.js:793
#: ../js/ui/calendar.js:796
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d %B %Y"
#: ../js/ui/calendar.js:804
#: ../js/ui/calendar.js:807
msgid "Today"
msgstr "Hari ini"
#: ../js/ui/calendar.js:808
#: ../js/ui/calendar.js:811
msgid "Tomorrow"
msgstr "Besok"
#: ../js/ui/calendar.js:819
#: ../js/ui/calendar.js:822
msgid "This week"
msgstr "Minggu ini"
#: ../js/ui/calendar.js:827
#: ../js/ui/calendar.js:830
msgid "Next week"
msgstr "Minggu depan"
#: ../js/ui/components/automountManager.js:90
#: ../js/ui/components/automountManager.js:91
msgid "External drive connected"
msgstr "Drive eksternal tersambung"
#: ../js/ui/components/automountManager.js:101
#: ../js/ui/components/automountManager.js:102
msgid "External drive disconnected"
msgstr "Drive eksternal terputus"
@ -729,77 +729,77 @@ msgid "Mute"
msgstr "Bisu"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:955
#: ../js/ui/components/telepathyClient.js:958
msgid "%H%M"
msgstr "%H%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 24h format. i.e. "Yesterday, 14:30" */
#: ../js/ui/components/telepathyClient.js:962
#: ../js/ui/components/telepathyClient.js:965
msgid "Yesterday, %H%M"
msgstr "Kemarin, %H:%M"
#. Translators: this is the week day name followed by a time
#. string in 24h format. i.e. "Monday, 14:30" */
#: ../js/ui/components/telepathyClient.js:969
#: ../js/ui/components/telepathyClient.js:972
msgid "%A, %H%M"
msgstr "%A, %H%M"
#. Translators: this is the month name and day number
#. followed by a time string in 24h format.
#. i.e. "May 25, 14:30" */
#: ../js/ui/components/telepathyClient.js:976
#: ../js/ui/components/telepathyClient.js:979
msgid "%B %d, %H%M"
msgstr "%d %B, %H%M"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 24h format.
#. i.e. "May 25 2012, 14:30" */
#: ../js/ui/components/telepathyClient.js:982
#: ../js/ui/components/telepathyClient.js:985
msgid "%B %d %Y, %H%M"
msgstr "%d %B %Y, %H%M"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:991
#: ../js/ui/components/telepathyClient.js:994
msgid "%l%M %p"
msgstr "%H%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:998
#: ../js/ui/components/telepathyClient.js:1001
msgid "Yesterday, %l%M %p"
msgstr "Kemarin, %l%M %p"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1005
#: ../js/ui/components/telepathyClient.js:1008
msgid "%A, %l%M %p"
msgstr "%A, %l%M %p"
#. Translators: this is the month name and day number
#. followed by a time string in 12h format.
#. i.e. "May 25, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1012
#: ../js/ui/components/telepathyClient.js:1015
msgid "%B %d, %l%M %p"
msgstr "%d %B, %l%M %p"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 12h format.
#. i.e. "May 25 2012, 2:30 pm"*/
#: ../js/ui/components/telepathyClient.js:1018
#: ../js/ui/components/telepathyClient.js:1021
msgid "%B %d %Y, %l%M %p"
msgstr "%d %B %Y, %l%M %p"
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:1051
#: ../js/ui/components/telepathyClient.js:1054
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s sekarang dikenal sebagai %s"
#. translators: argument is a room name like
#. * room@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1154
#: ../js/ui/components/telepathyClient.js:1158
#, javascript-format
msgid "Invitation to %s"
msgstr "Undangan ke %s"
@ -807,38 +807,38 @@ msgstr "Undangan ke %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example. */
#: ../js/ui/components/telepathyClient.js:1162
#: ../js/ui/components/telepathyClient.js:1166
#, javascript-format
msgid "%s is inviting you to join %s"
msgstr "%s mengundang Anda untuk bergabung dengan %s"
#: ../js/ui/components/telepathyClient.js:1164
#: ../js/ui/components/telepathyClient.js:1199
#: ../js/ui/components/telepathyClient.js:1233
#: ../js/ui/components/telepathyClient.js:1291
#: ../js/ui/components/telepathyClient.js:1168
#: ../js/ui/components/telepathyClient.js:1203
#: ../js/ui/components/telepathyClient.js:1237
#: ../js/ui/components/telepathyClient.js:1295
msgid "Decline"
msgstr "Tolak"
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1296
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1243
#: ../js/ui/components/telepathyClient.js:1300
msgid "Accept"
msgstr "Terima"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1189
#: ../js/ui/components/telepathyClient.js:1193
#, javascript-format
msgid "Video call from %s"
msgstr "Panggilan video dari %s"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1192
#: ../js/ui/components/telepathyClient.js:1196
#, javascript-format
msgid "Call from %s"
msgstr "Panggilan dari %s"
#. translators: this is a button label (verb), not a noun */
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
msgid "Answer"
msgstr "Jawab"
@ -847,111 +847,111 @@ msgstr "Jawab"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#. */
#: ../js/ui/components/telepathyClient.js:1227
#: ../js/ui/components/telepathyClient.js:1231
#, javascript-format
msgid "%s is sending you %s"
msgstr "%s sedang mengirimi Anda %s"
#. To translators: The parameter is the contact's alias */
#: ../js/ui/components/telepathyClient.js:1256
#: ../js/ui/components/telepathyClient.js:1260
#, javascript-format
msgid "%s would like permission to see when you are online"
msgstr "%s ingin minta izin melihat Anda ketika Anda daring"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid "Network error"
msgstr "Galat jaringan"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Authentication failed"
msgstr "Otentikasi gagal"
#: ../js/ui/components/telepathyClient.js:1346
#: ../js/ui/components/telepathyClient.js:1350
msgid "Encryption error"
msgstr "Galat enkripsi"
#: ../js/ui/components/telepathyClient.js:1348
#: ../js/ui/components/telepathyClient.js:1352
msgid "Certificate not provided"
msgstr "Sertifikat tidak disediakan"
#: ../js/ui/components/telepathyClient.js:1350
#: ../js/ui/components/telepathyClient.js:1354
msgid "Certificate untrusted"
msgstr "Sertifikat tidak dipercaya"
#: ../js/ui/components/telepathyClient.js:1352
#: ../js/ui/components/telepathyClient.js:1356
msgid "Certificate expired"
msgstr "Sertifikat kadaluarsa"
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
msgid "Certificate not activated"
msgstr "Sertifikat tidak diaktifkan"
#: ../js/ui/components/telepathyClient.js:1356
#: ../js/ui/components/telepathyClient.js:1360
msgid "Certificate hostname mismatch"
msgstr "Nama host sertifikat tidak cocok"
#: ../js/ui/components/telepathyClient.js:1358
#: ../js/ui/components/telepathyClient.js:1362
msgid "Certificate fingerprint mismatch"
msgstr "Sidik jari sertifikat tidak cocok"
#: ../js/ui/components/telepathyClient.js:1360
#: ../js/ui/components/telepathyClient.js:1364
msgid "Certificate self-signed"
msgstr "Sertifikat ditandatangani sendiri"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1366
msgid "Status is set to offline"
msgstr "Status diatur ke luring"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Encryption is not available"
msgstr "Enkripsi tidak tersedia"
#: ../js/ui/components/telepathyClient.js:1366
#: ../js/ui/components/telepathyClient.js:1370
msgid "Certificate is invalid"
msgstr "Sertifikat tidak valid"
#: ../js/ui/components/telepathyClient.js:1368
#: ../js/ui/components/telepathyClient.js:1372
msgid "Connection has been refused"
msgstr "Koneksi telah ditolak"
#: ../js/ui/components/telepathyClient.js:1370
#: ../js/ui/components/telepathyClient.js:1374
msgid "Connection can't be established"
msgstr "Koneksi tak dapat dijalin"
#: ../js/ui/components/telepathyClient.js:1372
#: ../js/ui/components/telepathyClient.js:1376
msgid "Connection has been lost"
msgstr "Koneksi telah terputus"
#: ../js/ui/components/telepathyClient.js:1374
#: ../js/ui/components/telepathyClient.js:1378
msgid "This account is already connected to the server"
msgstr "Akun ini telah tersambung pada server"
#: ../js/ui/components/telepathyClient.js:1376
#: ../js/ui/components/telepathyClient.js:1380
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"Koneksi telah digantikan oleh koneksi baru memakai sumberdaya yang sama"
#: ../js/ui/components/telepathyClient.js:1378
#: ../js/ui/components/telepathyClient.js:1382
msgid "The account already exists on the server"
msgstr "Akun ini sudah ada di server"
#: ../js/ui/components/telepathyClient.js:1380
#: ../js/ui/components/telepathyClient.js:1384
msgid "Server is currently too busy to handle the connection"
msgstr "Server kini terlalu sibuk untuk menangani koneksi"
#: ../js/ui/components/telepathyClient.js:1382
#: ../js/ui/components/telepathyClient.js:1386
msgid "Certificate has been revoked"
msgstr "Sertifikat telah dicabut"
#: ../js/ui/components/telepathyClient.js:1384
#: ../js/ui/components/telepathyClient.js:1388
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Sertifikat memakai algorima cipher yang tak aman atau lemah secara "
"kriptografi"
#: ../js/ui/components/telepathyClient.js:1386
#: ../js/ui/components/telepathyClient.js:1390
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -959,22 +959,22 @@ msgstr ""
"Panjang sertifikat server, atau kedalaman rantai sertifikat server, "
"melampaui batas yang diberlakukan oleh pustaka kriptografi"
#: ../js/ui/components/telepathyClient.js:1388
#: ../js/ui/components/telepathyClient.js:1392
msgid "Internal error"
msgstr "Galat internal"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1398
#: ../js/ui/components/telepathyClient.js:1402
#, javascript-format
msgid "Unable to connect to %s"
msgstr "Tak bisa menyambung ke %s"
#: ../js/ui/components/telepathyClient.js:1403
#: ../js/ui/components/telepathyClient.js:1407
msgid "View account"
msgstr "Tilik akun"
#: ../js/ui/components/telepathyClient.js:1440
#: ../js/ui/components/telepathyClient.js:1444
msgid "Unknown reason"
msgstr "Alasan yang tidak diketahui"
@ -990,22 +990,22 @@ msgstr "Tampilkan Aplikasi"
msgid "Dash"
msgstr "Dash"
#: ../js/ui/dateMenu.js:91
#: ../js/ui/dateMenu.js:97
msgid "Open Calendar"
msgstr "Buka Kalender"
#: ../js/ui/dateMenu.js:95
#: ../js/ui/dateMenu.js:101
msgid "Open Clocks"
msgstr "Buka Jam"
#: ../js/ui/dateMenu.js:102
#: ../js/ui/dateMenu.js:108
msgid "Date & Time Settings"
msgstr "Pengaturan Waktu & Tanggal"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#. */
#: ../js/ui/dateMenu.js:192
#: ../js/ui/dateMenu.js:205
msgid "%A %B %e, %Y"
msgstr "%A, %e %B %Y"
@ -1122,13 +1122,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:618
#: ../js/ui/endSessionDialog.js:619
#, javascript-format
msgid "%s (remote)"
msgstr "%s (jarak jauh)"
#. Translators: Console here refers to a tty like a VT console */
#: ../js/ui/endSessionDialog.js:621
#: ../js/ui/endSessionDialog.js:622
#, javascript-format
msgid "%s (console)"
msgstr "%s (konsol)"
@ -1142,7 +1142,7 @@ msgstr "Pasang"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Unduh dan pasang \"%s\" dari extensions.gnome.org?"
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
msgid "Keyboard"
msgstr "Papan Ketik"
@ -1230,16 +1230,16 @@ msgstr "Tiada Pesan"
msgid "Message Tray"
msgstr "Baki Pesan"
#: ../js/ui/messageTray.js:2962
#: ../js/ui/messageTray.js:2967
msgid "System Information"
msgstr "Informasi Sistem"
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
msgctxt "program"
msgid "Unknown"
msgstr "Tak dikenal"
#: ../js/ui/overviewControls.js:483 ../js/ui/screenShield.js:151
#: ../js/ui/overviewControls.js:488 ../js/ui/screenShield.js:151
#, javascript-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1271,7 +1271,7 @@ msgstr "Keluar"
msgid "Activities"
msgstr "Aktivitas"
#: ../js/ui/panel.js:914
#: ../js/ui/panel.js:915
msgid "Top Bar"
msgstr "Bar Atas"
@ -1284,7 +1284,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Ketikkan Perintah"
#: ../js/ui/runDialog.js:114
#: ../js/ui/runDialog.js:114 ../js/ui/windowMenu.js:117
msgid "Close"
msgstr "Tutup"
@ -1300,7 +1300,7 @@ msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "%d pemberitahuan baru"
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Kunci"
@ -1308,19 +1308,19 @@ msgstr "Kunci"
msgid "GNOME needs to lock the screen"
msgstr "GNOME perlu mengunci layar"
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
msgid "Unable to lock"
msgstr "Tak bisa mengunci"
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
msgid "Lock was blocked by an application"
msgstr "Kunci diblokir oleh suatu aplikasi"
#: ../js/ui/search.js:603
#: ../js/ui/search.js:606
msgid "Searching…"
msgstr "Mencari…"
#: ../js/ui/search.js:649
#: ../js/ui/search.js:652
msgid "No results."
msgstr "Tak ada yang cocok."
@ -1384,11 +1384,11 @@ msgstr "Tombol Pantul"
msgid "Mouse Keys"
msgstr "Tombol Tetikus"
#: ../js/ui/status/accessibility.js:143
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Kontras Tinggi"
#: ../js/ui/status/accessibility.js:192
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Teks Besar"
@ -1398,8 +1398,8 @@ msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
#: ../js/ui/status/rfkill.js:105
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:86
#: ../js/ui/status/rfkill.js:114
msgid "Turn Off"
msgstr "Matikan"
@ -1457,37 +1457,37 @@ msgstr "Tersambung"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu) */
#: ../js/ui/status/network.js:426
msgid "unmanaged"
msgstr "tak dikelola"
msgid "Unmanaged"
msgstr "Tak Dikelola"
#: ../js/ui/status/network.js:428
msgid "disconnecting..."
msgstr "memutus..."
msgid "Disconnecting"
msgstr "Memutus"
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "menghubungi..."
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Menyambung"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "diperlukan otentikasi"
#: ../js/ui/status/network.js:437
msgid "Authentication required"
msgstr "Diperlukan otentikasi"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
#: ../js/ui/status/network.js:445
msgid "firmware missing"
msgstr "firmware hilang"
msgid "Firmware missing"
msgstr "Firmware hilang"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage */
#: ../js/ui/status/network.js:449
msgid "unavailable"
msgstr "tidak tersedia"
msgid "Unavailable"
msgstr "Tak tersedia"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "koneksi gagal"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Koneksi gagal"
#: ../js/ui/status/network.js:467
msgid "Wired Settings"
@ -1541,7 +1541,7 @@ msgstr "Pilih jaringan"
msgid "No Networks"
msgstr "Tiada Jaringan"
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:112
msgid "Use hardware switch to turn off"
msgstr "Pakai saklar perangkat keras untuk mematikan"
@ -1561,11 +1561,20 @@ msgstr "Nyalakan"
msgid "Hotspot Active"
msgstr "Hotspot Aktif"
#: ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Menyambung"
#: ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "menghubungi..."
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "diperlukan otentikasi"
#: ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "koneksi gagal"
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:89
msgid "Network Settings"
msgstr "Pengaturan Jaringan"
@ -1581,10 +1590,6 @@ msgstr "VPN"
msgid "Network Manager"
msgstr "Manajer Jaringan"
#: ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Koneksi gagal"
#: ../js/ui/status/network.js:1647
msgid "Activation of network connection failed"
msgstr "Aktivasi koneksi jaringan gagal"
@ -1619,31 +1624,31 @@ msgstr "UPS"
msgid "Battery"
msgstr "Baterai"
#: ../js/ui/status/rfkill.js:82
#: ../js/ui/status/rfkill.js:83
msgid "Airplane Mode"
msgstr "Mode Pesawat Terbang"
#: ../js/ui/status/rfkill.js:84
#: ../js/ui/status/rfkill.js:85
msgid "On"
msgstr "Nyala"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Ganti Pengguna"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Keluar"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Kunci Orientasi"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Suspensi"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Matikan"
@ -1680,27 +1685,67 @@ msgstr "Cari"
msgid "“%s” is ready"
msgstr "'%s' siap"
#: ../js/ui/windowManager.js:56
#: ../js/ui/windowManager.js:57
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 lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:75
#: ../js/ui/windowManager.js:76
msgid "Revert Settings"
msgstr "Balikkan Tatanan"
#: ../js/ui/windowManager.js:79
#: ../js/ui/windowManager.js:80
msgid "Keep Changes"
msgstr "Simpan Perubahan"
#: ../js/ui/windowManager.js:97
#: ../js/ui/windowManager.js:99
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
msgstr[0] "Perubahan tatanan akan dikembalikan dalam %d detik"
#: ../js/ui/windowMenu.js:33
msgid "Minimize"
msgstr "Minimalkan"
#: ../js/ui/windowMenu.js:40
msgid "Unmaximize"
msgstr "Tak Maksimalkan"
#: ../js/ui/windowMenu.js:44
msgid "Maximize"
msgstr "Maksimalkan"
#: ../js/ui/windowMenu.js:51
msgid "Move"
msgstr "Pindah"
#: ../js/ui/windowMenu.js:57
msgid "Resize"
msgstr "Ubah Ukuran"
#: ../js/ui/windowMenu.js:64
msgid "Move Titlebar Onscreen"
msgstr "Pindahkan Bilah Judul Pada Layar"
#: ../js/ui/windowMenu.js:69
msgid "Always on Top"
msgstr "Selalu di Puncak"
#: ../js/ui/windowMenu.js:86
msgid "Always on Visible Workspace"
msgstr "Selalu pada Ruang Kerja yang Tampak"
#: ../js/ui/windowMenu.js:103
msgid "Move to Workspace Up"
msgstr "Pindah ke Ruang Kerja Atas"
#: ../js/ui/windowMenu.js:108
msgid "Move to Workspace Down"
msgstr "Pindah ke Ruang Kerja Bawah"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Evolution Kalender"
@ -1754,8 +1799,6 @@ msgstr "Sandi tidak cocok."
msgid "Password cannot be blank"
msgstr "Sandi tidak boleh kosong"
#: ../src/shell-polkit-authentication-agent.c:343
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Dialog otentikasi ditolak oleh pengguna"

3499
po/km.po

File diff suppressed because it is too large Load Diff

361
po/lt.po
View File

@ -11,8 +11,8 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2014-03-30 19:57+0000\n"
"PO-Revision-Date: 2014-03-30 23:02+0300\n"
"POT-Creation-Date: 2014-05-18 07:27+0000\n"
"PO-Revision-Date: 2014-05-18 22:25+0300\n"
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
"Language: lt\n"
@ -336,25 +336,25 @@ msgstr "Pasirinkite seansą"
msgid "Not listed?"
msgstr "Nėra sąraše?"
#: ../js/gdm/loginDialog.js:614
#: ../js/gdm/loginDialog.js:616
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(pvz., naudotojas arba %s)"
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
#: ../js/ui/components/networkAgent.js:280
msgid "Username: "
msgstr "Naudotojo vardas: "
#: ../js/gdm/loginDialog.js:920
#: ../js/gdm/loginDialog.js:924
msgid "Login Window"
msgstr "Prisijungimo langas"
#: ../js/gdm/util.js:322
#: ../js/gdm/util.js:323
msgid "Authentication error"
msgstr "Tapatybės patvirtinimo klaida"
#: ../js/gdm/util.js:452
#: ../js/gdm/util.js:453
msgid "(or swipe finger)"
msgstr "(arba perbraukite pirštu)"
@ -371,30 +371,34 @@ msgstr "Nepavyko perskaityti komandos:"
msgid "Execution of “%s” failed:"
msgstr "Nepavyko įvykdyti „%s“:"
#: ../js/ui/appDisplay.js:636
#: ../js/ui/appDisplay.js:640
msgid "Frequently used applications will appear here"
msgstr "Čia bus matomos dažnai naudojamos programos"
#: ../js/ui/appDisplay.js:747
#: ../js/ui/appDisplay.js:751
msgid "Frequent"
msgstr "Dažnai naudojamos"
#: ../js/ui/appDisplay.js:754
#: ../js/ui/appDisplay.js:758
msgid "All"
msgstr "Visos"
#: ../js/ui/appDisplay.js:1566
#: ../js/ui/appDisplay.js:1571
msgid "New Window"
msgstr "Naujas langas"
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1593 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "Pašalinti iš mėgstamų"
#: ../js/ui/appDisplay.js:1594
#: ../js/ui/appDisplay.js:1599
msgid "Add to Favorites"
msgstr "Pridėti prie mėgstamų"
#: ../js/ui/appDisplay.js:1608
msgid "Show Details"
msgstr "Rodyti detalią informaciją"
#: ../js/ui/appFavorites.js:87
#, javascript-format
msgid "%s has been added to your favorites."
@ -405,8 +409,8 @@ msgstr "%s pridėta prie jūsų mėgstamų."
msgid "%s has been removed from your favorites."
msgstr "%s pašalinta iš jūsų mėgstamų."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
#: ../js/ui/status/system.js:334
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Nustatymai"
@ -417,14 +421,14 @@ msgstr "Keisti foną…"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#. */
#: ../js/ui/calendar.js:64
#: ../js/ui/calendar.js:67
msgctxt "event list time"
msgid "All Day"
msgstr "Visa diena"
#. Translators: Shown in calendar event list, if 24h format,
#. \u2236 is a ratio character, similar to : */
#: ../js/ui/calendar.js:70
#: ../js/ui/calendar.js:73
msgctxt "event list time"
msgid "%H%M"
msgstr "%H%M"
@ -432,7 +436,7 @@ msgstr "%H%M"
#. Translators: Shown in calendar event list, if 12h format,
#. \u2236 is a ratio character, similar to : and \u2009 is
#. a thin space */
#: ../js/ui/calendar.js:79
#: ../js/ui/calendar.js:82
msgctxt "event list time"
msgid "%l%M%p"
msgstr "%l:%M"
@ -442,43 +446,43 @@ msgstr "%l:%M"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#. */
#: ../js/ui/calendar.js:110
#: ../js/ui/calendar.js:113
msgctxt "grid sunday"
msgid "S"
msgstr "S"
#. Translators: Calendar grid abbreviation for Monday */
#: ../js/ui/calendar.js:112
#: ../js/ui/calendar.js:115
msgctxt "grid monday"
msgid "M"
msgstr "P"
#. Translators: Calendar grid abbreviation for Tuesday */
#: ../js/ui/calendar.js:114
#: ../js/ui/calendar.js:117
msgctxt "grid tuesday"
msgid "T"
msgstr "A"
#. Translators: Calendar grid abbreviation for Wednesday */
#: ../js/ui/calendar.js:116
#: ../js/ui/calendar.js:119
msgctxt "grid wednesday"
msgid "W"
msgstr "T"
#. Translators: Calendar grid abbreviation for Thursday */
#: ../js/ui/calendar.js:118
#: ../js/ui/calendar.js:121
msgctxt "grid thursday"
msgid "T"
msgstr "K"
#. Translators: Calendar grid abbreviation for Friday */
#: ../js/ui/calendar.js:120
#: ../js/ui/calendar.js:123
msgctxt "grid friday"
msgid "F"
msgstr "P"
#. Translators: Calendar grid abbreviation for Saturday */
#: ../js/ui/calendar.js:122
#: ../js/ui/calendar.js:125
msgctxt "grid saturday"
msgid "S"
msgstr "Š"
@ -489,97 +493,93 @@ msgstr "Š"
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
#. * both be 'T').
#. */
#: ../js/ui/calendar.js:135
#: ../js/ui/calendar.js:138
msgctxt "list sunday"
msgid "Su"
msgstr "Sk"
#. Translators: Event list abbreviation for Monday */
#: ../js/ui/calendar.js:137
#: ../js/ui/calendar.js:140
msgctxt "list monday"
msgid "M"
msgstr "Pr"
#. Translators: Event list abbreviation for Tuesday */
#: ../js/ui/calendar.js:139
#: ../js/ui/calendar.js:142
msgctxt "list tuesday"
msgid "T"
msgstr "An"
#. Translators: Event list abbreviation for Wednesday */
#: ../js/ui/calendar.js:141
#: ../js/ui/calendar.js:144
msgctxt "list wednesday"
msgid "W"
msgstr "Tr"
#. Translators: Event list abbreviation for Thursday */
#: ../js/ui/calendar.js:143
#: ../js/ui/calendar.js:146
msgctxt "list thursday"
msgid "Th"
msgstr "Kt"
#. Translators: Event list abbreviation for Friday */
#: ../js/ui/calendar.js:145
#: ../js/ui/calendar.js:148
msgctxt "list friday"
msgid "F"
msgstr "Pn"
#. Translators: Event list abbreviation for Saturday */
#: ../js/ui/calendar.js:147
#: ../js/ui/calendar.js:150
msgctxt "list saturday"
msgid "S"
msgstr "Št"
#: ../js/ui/calendar.js:390
msgid "calendar:MY"
msgstr "calendar:YM"
#: ../js/ui/calendar.js:450
#: ../js/ui/calendar.js:453
msgid "Previous month"
msgstr "Ankstesnis mėnuo"
#: ../js/ui/calendar.js:460
#: ../js/ui/calendar.js:463
msgid "Next month"
msgstr "Kitas mėnuo"
#. Translators: Text to show if there are no events */
#: ../js/ui/calendar.js:772
#: ../js/ui/calendar.js:775
msgid "Nothing Scheduled"
msgstr "Nieko nesuplanuota"
#. Translators: Shown on calendar heading when selected day occurs on current year */
#: ../js/ui/calendar.js:790
#: ../js/ui/calendar.js:793
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d d."
#. Translators: Shown on calendar heading when selected day occurs on different year */
#: ../js/ui/calendar.js:793
#: ../js/ui/calendar.js:796
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %Y m. %B %d d."
#: ../js/ui/calendar.js:804
#: ../js/ui/calendar.js:807
msgid "Today"
msgstr "Šiandien"
#: ../js/ui/calendar.js:808
#: ../js/ui/calendar.js:811
msgid "Tomorrow"
msgstr "Rytoj"
#: ../js/ui/calendar.js:819
#: ../js/ui/calendar.js:822
msgid "This week"
msgstr "Šią savaitę"
#: ../js/ui/calendar.js:827
#: ../js/ui/calendar.js:830
msgid "Next week"
msgstr "Kitą savaitę"
#: ../js/ui/components/automountManager.js:90
#: ../js/ui/components/automountManager.js:91
msgid "External drive connected"
msgstr "Prijungta išorinė laikmena"
#: ../js/ui/components/automountManager.js:101
#: ../js/ui/components/automountManager.js:102
msgid "External drive disconnected"
msgstr "Atjungta išorinė laikmena"
@ -724,77 +724,77 @@ msgid "Mute"
msgstr "Nutildyti"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:955
#: ../js/ui/components/telepathyClient.js:958
msgid "%H%M"
msgstr "%H%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 24h format. i.e. "Yesterday, 14:30" */
#: ../js/ui/components/telepathyClient.js:962
#: ../js/ui/components/telepathyClient.js:965
msgid "Yesterday, %H%M"
msgstr "Vakar, %H:%M"
#. Translators: this is the week day name followed by a time
#. string in 24h format. i.e. "Monday, 14:30" */
#: ../js/ui/components/telepathyClient.js:969
#: ../js/ui/components/telepathyClient.js:972
msgid "%A, %H%M"
msgstr "%A, %H%M"
#. Translators: this is the month name and day number
#. followed by a time string in 24h format.
#. i.e. "May 25, 14:30" */
#: ../js/ui/components/telepathyClient.js:976
#: ../js/ui/components/telepathyClient.js:979
msgid "%B %d, %H%M"
msgstr "%B %d, %H%M"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 24h format.
#. i.e. "May 25 2012, 14:30" */
#: ../js/ui/components/telepathyClient.js:982
#: ../js/ui/components/telepathyClient.js:985
msgid "%B %d %Y, %H%M"
msgstr "%Y %m %d, %H%M"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:991
#: ../js/ui/components/telepathyClient.js:994
msgid "%l%M %p"
msgstr "%l%M %p"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:998
#: ../js/ui/components/telepathyClient.js:1001
msgid "Yesterday, %l%M %p"
msgstr "Vakar, %l%M %p"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1005
#: ../js/ui/components/telepathyClient.js:1008
msgid "%A, %l%M %p"
msgstr "%A, %l%M %p"
#. Translators: this is the month name and day number
#. followed by a time string in 12h format.
#. i.e. "May 25, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1012
#: ../js/ui/components/telepathyClient.js:1015
msgid "%B %d, %l%M %p"
msgstr "%B %d, %l%M %p"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 12h format.
#. i.e. "May 25 2012, 2:30 pm"*/
#: ../js/ui/components/telepathyClient.js:1018
#: ../js/ui/components/telepathyClient.js:1021
msgid "%B %d %Y, %l%M %p"
msgstr "%Y %B %d, %l%M %p"
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:1051
#: ../js/ui/components/telepathyClient.js:1054
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s nuo šiol vadinasi %s"
#. translators: argument is a room name like
#. * room@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1154
#: ../js/ui/components/telepathyClient.js:1158
#, javascript-format
msgid "Invitation to %s"
msgstr "Kvietimas į %s"
@ -802,38 +802,38 @@ msgstr "Kvietimas į %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example. */
#: ../js/ui/components/telepathyClient.js:1162
#: ../js/ui/components/telepathyClient.js:1166
#, javascript-format
msgid "%s is inviting you to join %s"
msgstr "%s jus kviečia prisijungti prie %s"
#: ../js/ui/components/telepathyClient.js:1164
#: ../js/ui/components/telepathyClient.js:1199
#: ../js/ui/components/telepathyClient.js:1233
#: ../js/ui/components/telepathyClient.js:1291
#: ../js/ui/components/telepathyClient.js:1168
#: ../js/ui/components/telepathyClient.js:1203
#: ../js/ui/components/telepathyClient.js:1237
#: ../js/ui/components/telepathyClient.js:1295
msgid "Decline"
msgstr "Atmesti"
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1296
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1243
#: ../js/ui/components/telepathyClient.js:1300
msgid "Accept"
msgstr "Priimti"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1189
#: ../js/ui/components/telepathyClient.js:1193
#, javascript-format
msgid "Video call from %s"
msgstr "Vaizdo skambutis nuo %s"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1192
#: ../js/ui/components/telepathyClient.js:1196
#, javascript-format
msgid "Call from %s"
msgstr "Skambutis nuo %s"
#. translators: this is a button label (verb), not a noun */
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
msgid "Answer"
msgstr "Atsiliepti"
@ -842,110 +842,110 @@ msgstr "Atsiliepti"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#. */
#: ../js/ui/components/telepathyClient.js:1227
#: ../js/ui/components/telepathyClient.js:1231
#, javascript-format
msgid "%s is sending you %s"
msgstr "%s jums siunčia %s"
#. To translators: The parameter is the contact's alias */
#: ../js/ui/components/telepathyClient.js:1256
#: ../js/ui/components/telepathyClient.js:1260
#, javascript-format
msgid "%s would like permission to see when you are online"
msgstr "%s pageidauja matyti, kai esate prisijungę prie interneto"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid "Network error"
msgstr "Tinklo klaida"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Authentication failed"
msgstr "Nepavyko patvirtinti tapatybės"
#: ../js/ui/components/telepathyClient.js:1346
#: ../js/ui/components/telepathyClient.js:1350
msgid "Encryption error"
msgstr "Šifravimo klaida"
#: ../js/ui/components/telepathyClient.js:1348
#: ../js/ui/components/telepathyClient.js:1352
msgid "Certificate not provided"
msgstr "Liudijimas nepateiktas"
#: ../js/ui/components/telepathyClient.js:1350
#: ../js/ui/components/telepathyClient.js:1354
msgid "Certificate untrusted"
msgstr "Liudijimas nepatikimas"
#: ../js/ui/components/telepathyClient.js:1352
#: ../js/ui/components/telepathyClient.js:1356
msgid "Certificate expired"
msgstr "Liudijimo galiojimas pasibaigęs"
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
msgid "Certificate not activated"
msgstr "Liudijimas neaktyvuotas"
#: ../js/ui/components/telepathyClient.js:1356
#: ../js/ui/components/telepathyClient.js:1360
msgid "Certificate hostname mismatch"
msgstr "Liudijimo serverio vardo nesutapimas"
#: ../js/ui/components/telepathyClient.js:1358
#: ../js/ui/components/telepathyClient.js:1362
msgid "Certificate fingerprint mismatch"
msgstr "Liudijimo piršto atspaudo nesutapimas"
#: ../js/ui/components/telepathyClient.js:1360
#: ../js/ui/components/telepathyClient.js:1364
msgid "Certificate self-signed"
msgstr "Liudijimas pačių pasirašytas"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1366
msgid "Status is set to offline"
msgstr "Nustatyta atsijungimo būsena"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Encryption is not available"
msgstr "Šifravimas negalimas"
#: ../js/ui/components/telepathyClient.js:1366
#: ../js/ui/components/telepathyClient.js:1370
msgid "Certificate is invalid"
msgstr "Liudijimas netinkamas"
#: ../js/ui/components/telepathyClient.js:1368
#: ../js/ui/components/telepathyClient.js:1372
msgid "Connection has been refused"
msgstr "Ryšys atmestas"
#: ../js/ui/components/telepathyClient.js:1370
#: ../js/ui/components/telepathyClient.js:1374
msgid "Connection can't be established"
msgstr "Nepavyko užmegzti ryšio"
#: ../js/ui/components/telepathyClient.js:1372
#: ../js/ui/components/telepathyClient.js:1376
msgid "Connection has been lost"
msgstr "Ryšys nutrūko"
#: ../js/ui/components/telepathyClient.js:1374
#: ../js/ui/components/telepathyClient.js:1378
msgid "This account is already connected to the server"
msgstr "Ši paskyra jau prijungta prie serverio"
#: ../js/ui/components/telepathyClient.js:1376
#: ../js/ui/components/telepathyClient.js:1380
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Ryšys pakeistas nauju ryšiu naudojant tą patį išteklių"
#: ../js/ui/components/telepathyClient.js:1378
#: ../js/ui/components/telepathyClient.js:1382
msgid "The account already exists on the server"
msgstr "Tokia paskyra serveryje jau yra"
#: ../js/ui/components/telepathyClient.js:1380
#: ../js/ui/components/telepathyClient.js:1384
msgid "Server is currently too busy to handle the connection"
msgstr "Šiuo metu serveris per daug užimtas šiai užklausai apdoroti"
#: ../js/ui/components/telepathyClient.js:1382
#: ../js/ui/components/telepathyClient.js:1386
msgid "Certificate has been revoked"
msgstr "Liudijimas atšauktas"
#: ../js/ui/components/telepathyClient.js:1384
#: ../js/ui/components/telepathyClient.js:1388
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Liudijimui naudojamas nesaugus šifravimo algoritmas arba jis kriptografiškai "
"silpnas"
#: ../js/ui/components/telepathyClient.js:1386
#: ../js/ui/components/telepathyClient.js:1390
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -953,22 +953,22 @@ msgstr ""
"Serverio liudijimo ilgis arba liudijimų eilės dydis viršija kriptografijos "
"bibliotekos apribojimus"
#: ../js/ui/components/telepathyClient.js:1388
#: ../js/ui/components/telepathyClient.js:1392
msgid "Internal error"
msgstr "Vidinė klaida"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1398
#: ../js/ui/components/telepathyClient.js:1402
#, javascript-format
msgid "Unable to connect to %s"
msgstr "Nepavyksta prisijungti prie %s"
#: ../js/ui/components/telepathyClient.js:1403
#: ../js/ui/components/telepathyClient.js:1407
msgid "View account"
msgstr "Rodyti paskyrą"
#: ../js/ui/components/telepathyClient.js:1440
#: ../js/ui/components/telepathyClient.js:1444
msgid "Unknown reason"
msgstr "Nežinoma priežastis"
@ -984,22 +984,22 @@ msgstr "Paleisti programas"
msgid "Dash"
msgstr "Paleidimo sritis"
#: ../js/ui/dateMenu.js:91
#: ../js/ui/dateMenu.js:97
msgid "Open Calendar"
msgstr "Atverti kalendorių"
#: ../js/ui/dateMenu.js:95
#: ../js/ui/dateMenu.js:101
msgid "Open Clocks"
msgstr "Atverti laikrodžius"
#: ../js/ui/dateMenu.js:102
#: ../js/ui/dateMenu.js:108
msgid "Date & Time Settings"
msgstr "Datos ir laiko nustatymai"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#. */
#: ../js/ui/dateMenu.js:192
#: ../js/ui/dateMenu.js:205
msgid "%A %B %e, %Y"
msgstr "%A, %Y m. %B %d d."
@ -1128,13 +1128,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:618
#: ../js/ui/endSessionDialog.js:619
#, javascript-format
msgid "%s (remote)"
msgstr "%s (nutolęs)"
#. Translators: Console here refers to a tty like a VT console */
#: ../js/ui/endSessionDialog.js:621
#: ../js/ui/endSessionDialog.js:622
#, javascript-format
msgid "%s (console)"
msgstr "%s (komandų eilutė)"
@ -1148,7 +1148,7 @@ msgstr "Įdiegti"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Parsiųsti ir įdiegti „%s“ iš extensions.gnome.org?"
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
msgid "Keyboard"
msgstr "Klaviatūra"
@ -1236,16 +1236,16 @@ msgstr "Nėra pranešimų"
msgid "Message Tray"
msgstr "Pranešimų juosta"
#: ../js/ui/messageTray.js:2962
#: ../js/ui/messageTray.js:2967
msgid "System Information"
msgstr "Sistemos informacija"
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
msgctxt "program"
msgid "Unknown"
msgstr "Nežinoma"
#: ../js/ui/overviewControls.js:483 ../js/ui/screenShield.js:151
#: ../js/ui/overviewControls.js:488 ../js/ui/screenShield.js:151
#, javascript-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1279,7 +1279,7 @@ msgstr "Užverti"
msgid "Activities"
msgstr "Apžvalga"
#: ../js/ui/panel.js:914
#: ../js/ui/panel.js:915
msgid "Top Bar"
msgstr "Viršutinė juosta"
@ -1291,7 +1291,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Įveskite komandą"
#: ../js/ui/runDialog.js:114
#: ../js/ui/runDialog.js:114 ../js/ui/windowMenu.js:117
msgid "Close"
msgstr "Užverti"
@ -1309,7 +1309,7 @@ msgstr[0] "%d naujas pranešimas"
msgstr[1] "%d nauji pranešimai"
msgstr[2] "%d naujų pranešimų"
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Užrakinti"
@ -1317,19 +1317,19 @@ msgstr "Užrakinti"
msgid "GNOME needs to lock the screen"
msgstr "GNOME aplinkai reikia užrakinti ekraną"
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
msgid "Unable to lock"
msgstr "Nepavyksta užrakinti"
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
msgid "Lock was blocked by an application"
msgstr "Programa užblokavo užrakinimą"
#: ../js/ui/search.js:603
#: ../js/ui/search.js:606
msgid "Searching…"
msgstr "Ieškoma…"
#: ../js/ui/search.js:649
#: ../js/ui/search.js:652
msgid "No results."
msgstr "Nerasta atitikmenų."
@ -1393,11 +1393,11 @@ msgstr "Pasikartojantieji klavišai"
msgid "Mouse Keys"
msgstr "Pelės mygtukai"
#: ../js/ui/status/accessibility.js:143
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Didelis kontrastas"
#: ../js/ui/status/accessibility.js:192
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Didelis tekstas"
@ -1407,8 +1407,8 @@ msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
#: ../js/ui/status/rfkill.js:105
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:86
#: ../js/ui/status/rfkill.js:114
msgid "Turn Off"
msgstr "Išjungti"
@ -1441,12 +1441,10 @@ msgid "Location"
msgstr "Vieta"
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
#| msgid "Disabled"
msgid "Disable"
msgstr "Išjungti"
#: ../js/ui/status/location.js:165
#| msgid "Enabled"
msgid "Enable"
msgstr "Įjungti"
@ -1470,37 +1468,37 @@ msgstr "Prisijungta"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu) */
#: ../js/ui/status/network.js:426
msgid "unmanaged"
msgstr "nevaldomas"
msgid "Unmanaged"
msgstr "Nevaldomas"
#: ../js/ui/status/network.js:428
msgid "disconnecting..."
msgstr "atsijungiama..."
msgid "Disconnecting"
msgstr "Atsijungiama"
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "jungiamasi..."
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Jungiamasi"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "reikia patvirtinti tapatybę"
#: ../js/ui/status/network.js:437
msgid "Authentication required"
msgstr "Reikia patvirtinti tapatybę"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
#: ../js/ui/status/network.js:445
msgid "firmware missing"
msgid "Firmware missing"
msgstr "Trūksta integruotos programinės įrangos (firmware)"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage */
#: ../js/ui/status/network.js:449
msgid "unavailable"
msgstr "nepasiekiamas"
msgid "Unavailable"
msgstr "Nepasiekiamas"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "nepavyko prisijungti"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Nepavyko prisijungti"
#: ../js/ui/status/network.js:467
msgid "Wired Settings"
@ -1554,7 +1552,7 @@ msgstr "Pasirinkite tinklą"
msgid "No Networks"
msgstr "Nėra tinklų"
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:112
msgid "Use hardware switch to turn off"
msgstr "Išjungimui naudoti aparatinį jungiklį"
@ -1574,11 +1572,20 @@ msgstr "Įjungti"
msgid "Hotspot Active"
msgstr "Prieigos taškas aktyvus"
#: ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Jungiamasi"
#: ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "jungiamasi..."
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "reikia patvirtinti tapatybę"
#: ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "nepavyko prisijungti"
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:89
msgid "Network Settings"
msgstr "Tinklo nustatymai"
@ -1594,10 +1601,6 @@ msgstr "VPN"
msgid "Network Manager"
msgstr "Tinklo valdymas"
#: ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Nepavyko prisijungti"
#: ../js/ui/status/network.js:1647
msgid "Activation of network connection failed"
msgstr "Tinklo ryšio nepavyko aktyvuoti"
@ -1632,31 +1635,31 @@ msgstr "UPS"
msgid "Battery"
msgstr "Baterija"
#: ../js/ui/status/rfkill.js:82
#: ../js/ui/status/rfkill.js:83
msgid "Airplane Mode"
msgstr "Skrydžio veiksena"
#: ../js/ui/status/rfkill.js:84
#: ../js/ui/status/rfkill.js:85
msgid "On"
msgstr "Įjungta"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Keisti naudotoją"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Atsijungti"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Padėties užrakinimas"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Užmigdyti"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Išjungti"
@ -1693,22 +1696,22 @@ msgstr "Ieškoti"
msgid "“%s” is ready"
msgstr "„%s“ yra pasirengusi"
#: ../js/ui/windowManager.js:56
#: ../js/ui/windowManager.js:57
msgid "Do you want to keep these display settings?"
msgstr "Ar nori įrašyti šiuos vaizduoklio nustatymus?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:75
#: ../js/ui/windowManager.js:76
msgid "Revert Settings"
msgstr "Grąžinti nustatymus"
#: ../js/ui/windowManager.js:79
#: ../js/ui/windowManager.js:80
msgid "Keep Changes"
msgstr "Įrašyti pakeitimus"
#: ../js/ui/windowManager.js:97
#: ../js/ui/windowManager.js:99
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -1716,6 +1719,46 @@ msgstr[0] "Pakeitimai bus grąžinti po %d sekundės"
msgstr[1] "Pakeitimai bus grąžinti po %d sekundžių"
msgstr[2] "Pakeitimai bus grąžinti po %d sekundžių"
#: ../js/ui/windowMenu.js:33
msgid "Minimize"
msgstr "Sumažinti"
#: ../js/ui/windowMenu.js:40
msgid "Unmaximize"
msgstr "Grąžinti iš išdidinimo"
#: ../js/ui/windowMenu.js:44
msgid "Maximize"
msgstr "Išdidinti"
#: ../js/ui/windowMenu.js:51
msgid "Move"
msgstr "Perkelti"
#: ../js/ui/windowMenu.js:57
msgid "Resize"
msgstr "Keisti dydį"
#: ../js/ui/windowMenu.js:64
msgid "Move Titlebar Onscreen"
msgstr "Perkelti pavadinimo juostą į ekraną"
#: ../js/ui/windowMenu.js:69
msgid "Always on Top"
msgstr "Visada viršuje"
#: ../js/ui/windowMenu.js:86
msgid "Always on Visible Workspace"
msgstr "Visada matomame darbalaukyje"
#: ../js/ui/windowMenu.js:103
msgid "Move to Workspace Up"
msgstr "Perkelti į aukščiau esantį darbalaukį"
#: ../js/ui/windowMenu.js:108
msgid "Move to Workspace Down"
msgstr "Perkelti į žemiau esantį darbalaukį"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Evolution kalendorius"
@ -1773,6 +1816,6 @@ msgstr "Slaptažodžiai nesutampa."
msgid "Password cannot be blank"
msgstr "Slaptažodis negali būti tuščias"
#: ../src/shell-polkit-authentication-agent.c:343
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Naudotojas užvėrė tapatybės patvirtinimo dialogą"

View File

@ -10,19 +10,21 @@
# Gabriel F. Vilar <cogumm@gmail.com>, 2011.
# Adorilson Bezerra <adorilson@gmail.com>, 2011, 2014.
# Djavan Fagundes <djavan@comum.org>, 2012.
# Enrico Nicoletto <liverig@gmail.com>, 2013, 2014.
# Juan Diego Martins da Costa Cruz <juan.martins@ifrn.edu.br>, 2013.
# Fábio Nogueira <fnogueira@gnome.org>, 2014.
# Rafael Ferreira <rafael.f.f1@gmail.com>, 2013, 2014.
# Enrico Nicoletto <liverig@gmail.com>, 2013, 2014.
# Georges Basile Stavracas Neto <georges.stavracas@gmail.com>, 2014.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2014-03-27 18:23+0000\n"
"PO-Revision-Date: 2014-03-27 15:29-0300\n"
"Last-Translator: Antonio Fernandes C. Neto <fernandesn@gnome.org>\n"
"POT-Creation-Date: 2014-05-19 11:46+0000\n"
"PO-Revision-Date: 2014-05-19 16:48-0300\n"
"Last-Translator: Georges Basile Stavracas Neto <georges.stavracas@gmail."
"com>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
@ -356,25 +358,25 @@ msgstr "Escolher sessão"
msgid "Not listed?"
msgstr "Não está listado?"
#: ../js/gdm/loginDialog.js:611
#: ../js/gdm/loginDialog.js:616
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(ex.: usuário ou %s)"
#: ../js/gdm/loginDialog.js:616 ../js/ui/components/networkAgent.js:262
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
#: ../js/ui/components/networkAgent.js:280
msgid "Username: "
msgstr "Nome de usuário: "
#: ../js/gdm/loginDialog.js:917
#: ../js/gdm/loginDialog.js:924
msgid "Login Window"
msgstr "Janela de sessão"
#: ../js/gdm/util.js:322
#: ../js/gdm/util.js:323
msgid "Authentication error"
msgstr "Erro de autenticação"
#: ../js/gdm/util.js:452
#: ../js/gdm/util.js:453
msgid "(or swipe finger)"
msgstr "(ou deslize o dedo)"
@ -391,30 +393,34 @@ msgstr "Não foi possível analisar comando:"
msgid "Execution of “%s” failed:"
msgstr "A execução de \"%s\" falhou:"
#: ../js/ui/appDisplay.js:636
#: ../js/ui/appDisplay.js:640
msgid "Frequently used applications will appear here"
msgstr "Aplicativos usados frequentemente vão aparecer aqui"
#: ../js/ui/appDisplay.js:747
#: ../js/ui/appDisplay.js:751
msgid "Frequent"
msgstr "Frequente"
#: ../js/ui/appDisplay.js:754
#: ../js/ui/appDisplay.js:758
msgid "All"
msgstr "Todos"
#: ../js/ui/appDisplay.js:1566
#: ../js/ui/appDisplay.js:1571
msgid "New Window"
msgstr "Nova janela"
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1593 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "Remover dos favoritos"
#: ../js/ui/appDisplay.js:1594
#: ../js/ui/appDisplay.js:1599
msgid "Add to Favorites"
msgstr "Adicionar aos favoritos"
#: ../js/ui/appDisplay.js:1608
msgid "Show Details"
msgstr "Mostrar detalhes"
#: ../js/ui/appFavorites.js:87
#, javascript-format
msgid "%s has been added to your favorites."
@ -425,8 +431,8 @@ msgstr "%s foi adicionado aos seus favoritos."
msgid "%s has been removed from your favorites."
msgstr "%s foi removido dos seus favoritos."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
#: ../js/ui/status/system.js:334
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Configurações"
@ -437,14 +443,14 @@ msgstr "Alterar plano de fundo…"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#. */
#: ../js/ui/calendar.js:64
#: ../js/ui/calendar.js:67
msgctxt "event list time"
msgid "All Day"
msgstr "Dia todo"
#. Translators: Shown in calendar event list, if 24h format,
#. \u2236 is a ratio character, similar to : */
#: ../js/ui/calendar.js:70
#: ../js/ui/calendar.js:73
msgctxt "event list time"
msgid "%H%M"
msgstr "%H%M"
@ -452,7 +458,7 @@ msgstr "%H%M"
#. Translators: Shown in calendar event list, if 12h format,
#. \u2236 is a ratio character, similar to : and \u2009 is
#. a thin space */
#: ../js/ui/calendar.js:79
#: ../js/ui/calendar.js:82
msgctxt "event list time"
msgid "%l%M%p"
msgstr "%l%M%p"
@ -462,43 +468,43 @@ msgstr "%l%M%p"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#. */
#: ../js/ui/calendar.js:110
#: ../js/ui/calendar.js:113
msgctxt "grid sunday"
msgid "S"
msgstr "D"
#. Translators: Calendar grid abbreviation for Monday */
#: ../js/ui/calendar.js:112
#: ../js/ui/calendar.js:115
msgctxt "grid monday"
msgid "M"
msgstr "S"
#. Translators: Calendar grid abbreviation for Tuesday */
#: ../js/ui/calendar.js:114
#: ../js/ui/calendar.js:117
msgctxt "grid tuesday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Wednesday */
#: ../js/ui/calendar.js:116
#: ../js/ui/calendar.js:119
msgctxt "grid wednesday"
msgid "W"
msgstr "Q"
#. Translators: Calendar grid abbreviation for Thursday */
#: ../js/ui/calendar.js:118
#: ../js/ui/calendar.js:121
msgctxt "grid thursday"
msgid "T"
msgstr "Q"
#. Translators: Calendar grid abbreviation for Friday */
#: ../js/ui/calendar.js:120
#: ../js/ui/calendar.js:123
msgctxt "grid friday"
msgid "F"
msgstr "S"
#. Translators: Calendar grid abbreviation for Saturday */
#: ../js/ui/calendar.js:122
#: ../js/ui/calendar.js:125
msgctxt "grid saturday"
msgid "S"
msgstr "S"
@ -509,97 +515,93 @@ msgstr "S"
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
#. * both be 'T').
#. */
#: ../js/ui/calendar.js:135
#: ../js/ui/calendar.js:138
msgctxt "list sunday"
msgid "Su"
msgstr "Dom"
#. Translators: Event list abbreviation for Monday */
#: ../js/ui/calendar.js:137
#: ../js/ui/calendar.js:140
msgctxt "list monday"
msgid "M"
msgstr "Seg"
#. Translators: Event list abbreviation for Tuesday */
#: ../js/ui/calendar.js:139
#: ../js/ui/calendar.js:142
msgctxt "list tuesday"
msgid "T"
msgstr "Ter"
#. Translators: Event list abbreviation for Wednesday */
#: ../js/ui/calendar.js:141
#: ../js/ui/calendar.js:144
msgctxt "list wednesday"
msgid "W"
msgstr "Qua"
#. Translators: Event list abbreviation for Thursday */
#: ../js/ui/calendar.js:143
#: ../js/ui/calendar.js:146
msgctxt "list thursday"
msgid "Th"
msgstr "Qui"
#. Translators: Event list abbreviation for Friday */
#: ../js/ui/calendar.js:145
#: ../js/ui/calendar.js:148
msgctxt "list friday"
msgid "F"
msgstr "Sex"
#. Translators: Event list abbreviation for Saturday */
#: ../js/ui/calendar.js:147
#: ../js/ui/calendar.js:150
msgctxt "list saturday"
msgid "S"
msgstr "Sab"
#: ../js/ui/calendar.js:390
msgid "calendar:MY"
msgstr "calendar:MY"
#: ../js/ui/calendar.js:450
#: ../js/ui/calendar.js:453
msgid "Previous month"
msgstr "Mês anterior"
#: ../js/ui/calendar.js:460
#: ../js/ui/calendar.js:463
msgid "Next month"
msgstr "Próximo mês"
#. Translators: Text to show if there are no events */
#: ../js/ui/calendar.js:772
#: ../js/ui/calendar.js:775
msgid "Nothing Scheduled"
msgstr "Nada agendado"
#. Translators: Shown on calendar heading when selected day occurs on current year */
#: ../js/ui/calendar.js:790
#: ../js/ui/calendar.js:793
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#. Translators: Shown on calendar heading when selected day occurs on different year */
#: ../js/ui/calendar.js:793
#: ../js/ui/calendar.js:796
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d de %B de %Y"
#: ../js/ui/calendar.js:804
#: ../js/ui/calendar.js:807
msgid "Today"
msgstr "Hoje"
#: ../js/ui/calendar.js:808
#: ../js/ui/calendar.js:811
msgid "Tomorrow"
msgstr "Amanhã"
#: ../js/ui/calendar.js:819
#: ../js/ui/calendar.js:822
msgid "This week"
msgstr "Esta semana"
#: ../js/ui/calendar.js:827
#: ../js/ui/calendar.js:830
msgid "Next week"
msgstr "Próxima semana"
#: ../js/ui/components/automountManager.js:90
#: ../js/ui/components/automountManager.js:91
msgid "External drive connected"
msgstr "Unidade externa conectada"
#: ../js/ui/components/automountManager.js:101
#: ../js/ui/components/automountManager.js:102
msgid "External drive disconnected"
msgstr "Unidade externa desconectada"
@ -744,77 +746,77 @@ msgid "Mute"
msgstr "Sem áudio"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:955
#: ../js/ui/components/telepathyClient.js:958
msgid "%H%M"
msgstr "%H%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 24h format. i.e. "Yesterday, 14:30" */
#: ../js/ui/components/telepathyClient.js:962
#: ../js/ui/components/telepathyClient.js:965
msgid "Yesterday, %H%M"
msgstr "Ontem, %H%M"
#. Translators: this is the week day name followed by a time
#. string in 24h format. i.e. "Monday, 14:30" */
#: ../js/ui/components/telepathyClient.js:969
#: ../js/ui/components/telepathyClient.js:972
msgid "%A, %H%M"
msgstr "%A, %H%M"
#. Translators: this is the month name and day number
#. followed by a time string in 24h format.
#. i.e. "May 25, 14:30" */
#: ../js/ui/components/telepathyClient.js:976
#: ../js/ui/components/telepathyClient.js:979
msgid "%B %d, %H%M"
msgstr "%d de %B, %H%M"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 24h format.
#. i.e. "May 25 2012, 14:30" */
#: ../js/ui/components/telepathyClient.js:982
#: ../js/ui/components/telepathyClient.js:985
msgid "%B %d %Y, %H%M"
msgstr "%d de %B de %Y, %H%M"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:991
#: ../js/ui/components/telepathyClient.js:994
msgid "%l%M %p"
msgstr "%l%M %p"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:998
#: ../js/ui/components/telepathyClient.js:1001
msgid "Yesterday, %l%M %p"
msgstr "Ontem, %l%M %p"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1005
#: ../js/ui/components/telepathyClient.js:1008
msgid "%A, %l%M %p"
msgstr "%A, %l%M %p"
#. Translators: this is the month name and day number
#. followed by a time string in 12h format.
#. i.e. "May 25, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1012
#: ../js/ui/components/telepathyClient.js:1015
msgid "%B %d, %l%M %p"
msgstr "%d de %B, %l%M %p"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 12h format.
#. i.e. "May 25 2012, 2:30 pm"*/
#: ../js/ui/components/telepathyClient.js:1018
#: ../js/ui/components/telepathyClient.js:1021
msgid "%B %d %Y, %l%M %p"
msgstr "%d de %B de %Y, %l%M %p"
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:1051
#: ../js/ui/components/telepathyClient.js:1054
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s agora é conhecido como %s"
#. translators: argument is a room name like
#. * room@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1154
#: ../js/ui/components/telepathyClient.js:1158
#, javascript-format
msgid "Invitation to %s"
msgstr "Convite para %s"
@ -822,38 +824,38 @@ msgstr "Convite para %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example. */
#: ../js/ui/components/telepathyClient.js:1162
#: ../js/ui/components/telepathyClient.js:1166
#, javascript-format
msgid "%s is inviting you to join %s"
msgstr "%s está convidando você para participar de %s"
#: ../js/ui/components/telepathyClient.js:1164
#: ../js/ui/components/telepathyClient.js:1199
#: ../js/ui/components/telepathyClient.js:1233
#: ../js/ui/components/telepathyClient.js:1290
#: ../js/ui/components/telepathyClient.js:1168
#: ../js/ui/components/telepathyClient.js:1203
#: ../js/ui/components/telepathyClient.js:1237
#: ../js/ui/components/telepathyClient.js:1295
msgid "Decline"
msgstr "Recusar"
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1295
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1243
#: ../js/ui/components/telepathyClient.js:1300
msgid "Accept"
msgstr "Aceitar"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1189
#: ../js/ui/components/telepathyClient.js:1193
#, javascript-format
msgid "Video call from %s"
msgstr "Chamada de vídeo para %s"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1192
#: ../js/ui/components/telepathyClient.js:1196
#, javascript-format
msgid "Call from %s"
msgstr "Chamada de %s"
#. translators: this is a button label (verb), not a noun */
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
msgid "Answer"
msgstr "Atender"
@ -862,110 +864,110 @@ msgstr "Atender"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#. */
#: ../js/ui/components/telepathyClient.js:1227
#: ../js/ui/components/telepathyClient.js:1231
#, javascript-format
msgid "%s is sending you %s"
msgstr "%s está enviando %s"
#. To translators: The parameter is the contact's alias */
#: ../js/ui/components/telepathyClient.js:1256
#: ../js/ui/components/telepathyClient.js:1260
#, javascript-format
msgid "%s would like permission to see when you are online"
msgstr "%s quer permissão para vê-lo quando conectado"
#: ../js/ui/components/telepathyClient.js:1341
#: ../js/ui/components/telepathyClient.js:1346
msgid "Network error"
msgstr "Erro de rede"
#: ../js/ui/components/telepathyClient.js:1343
#: ../js/ui/components/telepathyClient.js:1348
msgid "Authentication failed"
msgstr "Falha de autenticação"
#: ../js/ui/components/telepathyClient.js:1345
#: ../js/ui/components/telepathyClient.js:1350
msgid "Encryption error"
msgstr "Erro de criptografia"
#: ../js/ui/components/telepathyClient.js:1347
#: ../js/ui/components/telepathyClient.js:1352
msgid "Certificate not provided"
msgstr "Certificado não fornecido"
#: ../js/ui/components/telepathyClient.js:1349
#: ../js/ui/components/telepathyClient.js:1354
msgid "Certificate untrusted"
msgstr "Certificado não confiável"
#: ../js/ui/components/telepathyClient.js:1351
#: ../js/ui/components/telepathyClient.js:1356
msgid "Certificate expired"
msgstr "Certificado expirado"
#: ../js/ui/components/telepathyClient.js:1353
#: ../js/ui/components/telepathyClient.js:1358
msgid "Certificate not activated"
msgstr "Certificado não ativado"
#: ../js/ui/components/telepathyClient.js:1355
#: ../js/ui/components/telepathyClient.js:1360
msgid "Certificate hostname mismatch"
msgstr "Máquina do certificado não confere"
#: ../js/ui/components/telepathyClient.js:1357
#: ../js/ui/components/telepathyClient.js:1362
msgid "Certificate fingerprint mismatch"
msgstr "Impressão digital do certificado não confere"
#: ../js/ui/components/telepathyClient.js:1359
#: ../js/ui/components/telepathyClient.js:1364
msgid "Certificate self-signed"
msgstr "Certificado auto-assinado"
#: ../js/ui/components/telepathyClient.js:1361
#: ../js/ui/components/telepathyClient.js:1366
msgid "Status is set to offline"
msgstr "O status está definido como desconectado."
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1368
msgid "Encryption is not available"
msgstr "Criptografia não disponível"
#: ../js/ui/components/telepathyClient.js:1365
#: ../js/ui/components/telepathyClient.js:1370
msgid "Certificate is invalid"
msgstr "O certificado é inválido"
#: ../js/ui/components/telepathyClient.js:1367
#: ../js/ui/components/telepathyClient.js:1372
msgid "Connection has been refused"
msgstr "A conexão foi recusada"
#: ../js/ui/components/telepathyClient.js:1369
#: ../js/ui/components/telepathyClient.js:1374
msgid "Connection can't be established"
msgstr "A conexão não pode ser estabelecida"
#: ../js/ui/components/telepathyClient.js:1371
#: ../js/ui/components/telepathyClient.js:1376
msgid "Connection has been lost"
msgstr "Conexão perdida"
#: ../js/ui/components/telepathyClient.js:1373
#: ../js/ui/components/telepathyClient.js:1378
msgid "This account is already connected to the server"
msgstr "Esta conta já está conectada ao servidor"
#: ../js/ui/components/telepathyClient.js:1375
#: ../js/ui/components/telepathyClient.js:1380
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "A conexão foi substituída por uma nova conexão usando o mesmo recurso"
#: ../js/ui/components/telepathyClient.js:1377
#: ../js/ui/components/telepathyClient.js:1382
msgid "The account already exists on the server"
msgstr "A conta já existe no servidor"
#: ../js/ui/components/telepathyClient.js:1379
#: ../js/ui/components/telepathyClient.js:1384
msgid "Server is currently too busy to handle the connection"
msgstr "O servidor está atualmente muito ocupado para controlar a conexão"
#: ../js/ui/components/telepathyClient.js:1381
#: ../js/ui/components/telepathyClient.js:1386
msgid "Certificate has been revoked"
msgstr "O certificado foi revogado"
#: ../js/ui/components/telepathyClient.js:1383
#: ../js/ui/components/telepathyClient.js:1388
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"O certificado usa um algoritmo de cifragem inseguro ou é criptograficamente "
"fraco"
#: ../js/ui/components/telepathyClient.js:1385
#: ../js/ui/components/telepathyClient.js:1390
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -973,22 +975,22 @@ msgstr ""
"O comprimento do certificado do servidor, ou a profundidade da cadeia do "
"certificado excedeu os limites impostos pela biblioteca de criptografia"
#: ../js/ui/components/telepathyClient.js:1387
#: ../js/ui/components/telepathyClient.js:1392
msgid "Internal error"
msgstr "Erro interno"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1397
#: ../js/ui/components/telepathyClient.js:1402
#, javascript-format
msgid "Unable to connect to %s"
msgstr "Não foi possível conectar-se a %s"
#: ../js/ui/components/telepathyClient.js:1402
#: ../js/ui/components/telepathyClient.js:1407
msgid "View account"
msgstr "Visualizar conta"
#: ../js/ui/components/telepathyClient.js:1439
#: ../js/ui/components/telepathyClient.js:1444
msgid "Unknown reason"
msgstr "Razão desconhecida"
@ -1004,23 +1006,23 @@ msgstr "Mostrar aplicativos"
msgid "Dash"
msgstr "Dash"
#: ../js/ui/dateMenu.js:91
#: ../js/ui/dateMenu.js:97
msgid "Open Calendar"
msgstr "Abrir agenda"
#: ../js/ui/dateMenu.js:95
#: ../js/ui/dateMenu.js:101
msgid "Open Clocks"
msgstr "Abrir relógios"
# O "&" foi inserido como "e" para versão 3.8.0 no gnome-control-center
#: ../js/ui/dateMenu.js:102
#: ../js/ui/dateMenu.js:108
msgid "Date & Time Settings"
msgstr "Configurações de data & hora"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#. */
#: ../js/ui/dateMenu.js:192
#: ../js/ui/dateMenu.js:205
msgid "%A %B %e, %Y"
msgstr "%A, %e de %B de %Y"
@ -1145,13 +1147,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:618
#: ../js/ui/endSessionDialog.js:619
#, javascript-format
msgid "%s (remote)"
msgstr "%s (remoto)"
#. Translators: Console here refers to a tty like a VT console */
#: ../js/ui/endSessionDialog.js:621
#: ../js/ui/endSessionDialog.js:622
#, javascript-format
msgid "%s (console)"
msgstr "%s (console)"
@ -1165,7 +1167,7 @@ msgstr "Instalar"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Baixar e instalar \"%s\" de extensions.gnome.org?"
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
msgid "Keyboard"
msgstr "Teclado"
@ -1253,16 +1255,16 @@ msgstr "Sem mensagens"
msgid "Message Tray"
msgstr "Área de notificação"
#: ../js/ui/messageTray.js:2962
#: ../js/ui/messageTray.js:2967
msgid "System Information"
msgstr "Informações do sistema"
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
msgctxt "program"
msgid "Unknown"
msgstr "Desconhecido"
#: ../js/ui/overviewControls.js:483 ../js/ui/screenShield.js:151
#: ../js/ui/overviewControls.js:488 ../js/ui/screenShield.js:151
#, javascript-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1295,7 +1297,7 @@ msgstr "Sair"
msgid "Activities"
msgstr "Atividades"
#: ../js/ui/panel.js:914
#: ../js/ui/panel.js:915
msgid "Top Bar"
msgstr "Barra superior"
@ -1307,7 +1309,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Digite um comando"
#: ../js/ui/runDialog.js:114
#: ../js/ui/runDialog.js:114 ../js/ui/windowMenu.js:117
msgid "Close"
msgstr "Fechar"
@ -1324,7 +1326,7 @@ msgid_plural "%d new notifications"
msgstr[0] "%d nova notificação"
msgstr[1] "%d novas notificações"
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:345
msgid "Lock"
msgstr "Bloquear"
@ -1332,19 +1334,19 @@ msgstr "Bloquear"
msgid "GNOME needs to lock the screen"
msgstr "GNOME precisa bloquear a tela"
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
msgid "Unable to lock"
msgstr "Não foi possível bloquear"
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
msgid "Lock was blocked by an application"
msgstr "O bloqueio foi impedido por um aplicativo"
#: ../js/ui/search.js:603
#: ../js/ui/search.js:606
msgid "Searching…"
msgstr "Pesquisando…"
#: ../js/ui/search.js:649
#: ../js/ui/search.js:652
msgid "No results."
msgstr "Nenhum resultado."
@ -1408,11 +1410,11 @@ msgstr "Teclas de repercussão"
msgid "Mouse Keys"
msgstr "Teclas do mouse"
#: ../js/ui/status/accessibility.js:143
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Alto contraste"
#: ../js/ui/status/accessibility.js:192
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Texto grande"
@ -1422,8 +1424,8 @@ msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
#: ../js/ui/status/rfkill.js:105
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:86
#: ../js/ui/status/rfkill.js:114
msgid "Turn Off"
msgstr "Desligar"
@ -1479,40 +1481,41 @@ msgstr "Off"
msgid "Connected"
msgstr "Conectado"
# Não gerenciável para transmitir a idéia que o Networkmanager não consegue gerenciar o dispositivo --Enrico
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu) */
#: ../js/ui/status/network.js:426
msgid "unmanaged"
msgstr "não gerenciado"
msgid "Unmanaged"
msgstr "Não gerenciável"
#: ../js/ui/status/network.js:428
msgid "disconnecting..."
msgstr "desconectando..."
msgid "Disconnecting"
msgstr "Desconectando"
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "conectando..."
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Conectando"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "autenticação necessária"
#: ../js/ui/status/network.js:437
msgid "Authentication required"
msgstr "Autenticação necessária"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
#: ../js/ui/status/network.js:445
msgid "firmware missing"
msgstr "firmware faltando"
msgid "Firmware missing"
msgstr "Firmware em falta"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage */
#: ../js/ui/status/network.js:449
msgid "unavailable"
msgstr "indisponível"
msgid "Unavailable"
msgstr "Indisponível"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "conexão falhou"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Falha de conexão"
#: ../js/ui/status/network.js:467
msgid "Wired Settings"
@ -1566,7 +1569,7 @@ msgstr "Selecione uma rede"
msgid "No Networks"
msgstr "Nenhuma rede"
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:112
msgid "Use hardware switch to turn off"
msgstr "Usar alternador de hardware para desligar"
@ -1586,11 +1589,20 @@ msgstr "Ligar"
msgid "Hotspot Active"
msgstr "Ponto de acesso ativo"
#: ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Conectando"
#: ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "conectando..."
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "autenticação necessária"
#: ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "conexão falhou"
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:89
msgid "Network Settings"
msgstr "Configurações de rede"
@ -1606,10 +1618,6 @@ msgstr "VPN"
msgid "Network Manager"
msgstr "Gerenciador de rede"
#: ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Falha de conexão"
#: ../js/ui/status/network.js:1647
msgid "Activation of network connection failed"
msgstr "Falha ao ativar a conexão da rede"
@ -1646,31 +1654,31 @@ msgstr "No-break"
msgid "Battery"
msgstr "Bateria"
#: ../js/ui/status/rfkill.js:82
#: ../js/ui/status/rfkill.js:83
msgid "Airplane Mode"
msgstr "Modo avião"
#: ../js/ui/status/rfkill.js:84
#: ../js/ui/status/rfkill.js:85
msgid "On"
msgstr "On"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:317
msgid "Switch User"
msgstr "Alternar usuário"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:322
msgid "Log Out"
msgstr "Encerrar sessão"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:341
msgid "Orientation Lock"
msgstr "Bloqueio da orientação"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:349
msgid "Suspend"
msgstr "Suspender"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:352
msgid "Power Off"
msgstr "Desligar"
@ -1707,28 +1715,68 @@ msgstr "Pesquisar"
msgid "“%s” is ready"
msgstr "\"%s\" está pronto"
#: ../js/ui/windowManager.js:56
#: ../js/ui/windowManager.js:57
msgid "Do you want to keep these display settings?"
msgstr "Você deseja manter essas configurações de exibição?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:75
#: ../js/ui/windowManager.js:76
msgid "Revert Settings"
msgstr "Reverter configurações"
#: ../js/ui/windowManager.js:79
#: ../js/ui/windowManager.js:80
msgid "Keep Changes"
msgstr "Manter alterações"
#: ../js/ui/windowManager.js:97
#: ../js/ui/windowManager.js:99
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
msgstr[0] "Alterações nas configurações serão revertidas em %d segundo"
msgstr[1] "Alterações nas configurações serão revertidas em %d segundos"
#: ../js/ui/windowMenu.js:33
msgid "Minimize"
msgstr "Minimizar"
#: ../js/ui/windowMenu.js:40
msgid "Unmaximize"
msgstr "Restaurar"
#: ../js/ui/windowMenu.js:44
msgid "Maximize"
msgstr "Maximizar"
#: ../js/ui/windowMenu.js:51
msgid "Move"
msgstr "Mover"
#: ../js/ui/windowMenu.js:57
msgid "Resize"
msgstr "Redimensionar"
#: ../js/ui/windowMenu.js:64
msgid "Move Titlebar Onscreen"
msgstr "Mover barra de título na tela"
#: ../js/ui/windowMenu.js:69
msgid "Always on Top"
msgstr "Sempre no topo"
#: ../js/ui/windowMenu.js:86
msgid "Always on Visible Workspace"
msgstr "Sempre na área de trabalho visível"
#: ../js/ui/windowMenu.js:103
msgid "Move to Workspace Up"
msgstr "Mover para a área de trabalho acima"
#: ../js/ui/windowMenu.js:108
msgid "Move to Workspace Down"
msgstr "Mover para a área de trabalho abaixo"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Agenda do Evolution"
@ -1784,10 +1832,13 @@ msgstr "As senhas não coincidem."
msgid "Password cannot be blank"
msgstr "A senha não pode estar em branco"
#: ../src/shell-polkit-authentication-agent.c:343
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "O diálogo de autenticação foi descartado pelo usuário"
#~ msgid "calendar:MY"
#~ msgstr "calendar:MY"
#~ msgid "<b>%A</b>, <b>%H:%M</b>"
#~ msgstr "<b>%A</b>, <b>%H:%M</b>"

1316
po/ro.po

File diff suppressed because it is too large Load Diff

192
po/sr.po
View File

@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2014-04-14 15:36+0000\n"
"PO-Revision-Date: 2014-04-14 19:31+0200\n"
"POT-Creation-Date: 2014-03-22 20:38+0000\n"
"PO-Revision-Date: 2014-03-23 11:08+0200\n"
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <gnom@prevod.org>\n"
"Language: sr\n"
@ -80,10 +80,16 @@ msgstr ""
"коришћењем „Alt-F2“ прозорчета."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
#| msgid "Uuids of extensions to enable"
msgid "UUIDs of extensions to enable"
msgstr "ЈУИБ-ови проширења за укључивање"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
#| 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 DBus methods on org.gnome.Shell."
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 "
@ -92,8 +98,8 @@ msgid ""
msgstr ""
"Проширења Гномове шкољке имају ЈУИБ вредност; овај кључ исписује проширења "
"која треба учитавати. Свако проширење које жели бити учитано мора бити на "
"списку. Такође можете да управљате овим списком користећи начине Д-"
"магистрале „Укључи проширење“ и „Искључи проширење“ на „org.gnome.Shell“."
"списку. Такође можете да управљате овим списком користећи начине "
"Д-магистрале „Укључи проширење“ и „Искључи проширење“ на „org.gnome.Shell“."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
msgid "Disables the validation of extension version compatibility"
@ -130,10 +136,14 @@ msgid "History for the looking glass dialog"
msgstr "Историјат прозорчета огледала"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
#| msgid "Always show the 'Log out' menuitem in the user menu."
msgid "Always show the 'Log out' menu item in the user menu."
msgstr "Увек приказује ставку изборника „Одјави ме“ у изборнику корисника."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
#| msgid ""
#| "This key overrides the automatic hiding of the 'Log out' menuitem in "
#| "single-user, single-session situations."
msgid ""
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
"user, single-session situations."
@ -231,12 +241,12 @@ msgid ""
"using network resources (albeit with street-level accuracy at best)."
msgstr ""
"Подешава највећи ниво тачности места коју програми могу да користе. Исправне "
"могућности су „off“ (искључује праћење места), „country“ (држава), "
"„city“ (град), „neighborhood“ (комшилук), „street“ (улица), и „exact“ (тачно "
"обично захтева ГПС пријемник). Имајте на уму да ће ово одлучити шта ће "
"„Гео индиција“ дозволити програмима само да виде и да могу пронаћи "
"корисниково место на своју руку користећи изворишта мреже (мада са тачношћу "
"на нивоу улице у најбољем случају)."
"могућности су „off“ (искључује праћење места), „country“ (држава), „city“ "
"(град), „neighborhood“ (комшилук), „street“ (улица), и „exact“ (тачно "
"обично захтева ГПС пријемник). Имајте на уму да ће ово одлучити шта ће „Гео "
"индиција“ дозволити програмима само да виде и да могу пронаћи корисниково "
"место на своју руку користећи изворишта мреже (мада са тачношћу на нивоу "
"улице у најбољем случају)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "The application icon mode."
@ -325,25 +335,25 @@ msgctxt "button"
msgid "Sign In"
msgstr "Пријави ме"
#: ../js/gdm/loginDialog.js:271
#: ../js/gdm/loginDialog.js:270
msgid "Choose Session"
msgstr "Изабери сесију"
#: ../js/gdm/loginDialog.js:431
#: ../js/gdm/loginDialog.js:430
msgid "Not listed?"
msgstr "Није на списку?"
#: ../js/gdm/loginDialog.js:614
#: ../js/gdm/loginDialog.js:608
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(нпр., корисник или %s)"
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
#: ../js/ui/components/networkAgent.js:280
msgid "Username: "
msgstr "Корисничко име: "
#: ../js/gdm/loginDialog.js:920
#: ../js/gdm/loginDialog.js:884
msgid "Login Window"
msgstr "Прозор за пријављивање"
@ -365,30 +375,31 @@ msgstr "Не могу да обрадим наредбу:"
#: ../js/misc/util.js:156
#, javascript-format
#| msgid "Execution of '%s' failed:"
msgid "Execution of “%s” failed:"
msgstr "Није успело извршавање „%s“:"
#: ../js/ui/appDisplay.js:636
#: ../js/ui/appDisplay.js:629
msgid "Frequently used applications will appear here"
msgstr "Често коришћени програми ће се појавити овде"
#: ../js/ui/appDisplay.js:747
#: ../js/ui/appDisplay.js:740
msgid "Frequent"
msgstr "Често"
#: ../js/ui/appDisplay.js:754
#: ../js/ui/appDisplay.js:747
msgid "All"
msgstr "Све"
#: ../js/ui/appDisplay.js:1566
#: ../js/ui/appDisplay.js:1555
msgid "New Window"
msgstr "Нови прозор"
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1577 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "Уклони из омиљених"
#: ../js/ui/appDisplay.js:1594
#: ../js/ui/appDisplay.js:1583
msgid "Add to Favorites"
msgstr "Додај у омиљене"
@ -636,6 +647,9 @@ msgstr "Бежична мрежа захтева потврђивање иден
#: ../js/ui/components/networkAgent.js:312
#, javascript-format
#| msgid ""
#| "Passwords or encryption keys are required to access the wireless network "
#| "'%s'."
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"“%s”."
@ -672,6 +686,7 @@ msgstr "Лозинка мобилне широкопојасне мреже"
#: ../js/ui/components/networkAgent.js:339
#, javascript-format
#| msgid "A password is required to connect to '%s'."
msgid "A password is required to connect to “%s”."
msgstr "Потребна је лозинка за повезивање на „%s“."
@ -721,18 +736,23 @@ msgstr "Утишај"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:955
#| msgctxt "event list time"
#| msgid "%H%M"
msgid "%H%M"
msgstr "%H%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 24h format. i.e. "Yesterday, 14:30" */
#: ../js/ui/components/telepathyClient.js:962
#| msgid "<b>Yesterday</b>, <b>%H:%M</b>"
msgid "Yesterday, %H%M"
msgstr "Јуче, %H:%M"
#. Translators: this is the week day name followed by a time
#. string in 24h format. i.e. "Monday, 14:30" */
#: ../js/ui/components/telepathyClient.js:969
#| msgctxt "event list time"
#| msgid "%H%M"
msgid "%A, %H%M"
msgstr "%A, %H%M"
@ -740,6 +760,8 @@ msgstr "%A, %H%M"
#. followed by a time string in 24h format.
#. i.e. "May 25, 14:30" */
#: ../js/ui/components/telepathyClient.js:976
#| msgctxt "event list time"
#| msgid "%H%M"
msgid "%B %d, %H%M"
msgstr "%d. %B, %H%M"
@ -752,6 +774,8 @@ msgstr "%d. %B %Y., %H:%M"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:991
#| msgctxt "event list time"
#| msgid "%l%M%p"
msgid "%l%M %p"
msgstr "%l%M%p"
@ -764,6 +788,8 @@ msgstr "Јуче, %l:%M %p"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1005
#| msgctxt "event list time"
#| msgid "%l%M%p"
msgid "%A, %l%M %p"
msgstr "%A, %l%M %p"
@ -771,6 +797,8 @@ msgstr "%A, %l%M %p"
#. followed by a time string in 12h format.
#. i.e. "May 25, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1012
#| msgctxt "event list time"
#| msgid "%l%M%p"
msgid "%B %d, %l%M %p"
msgstr "%d. %B, %l%M %p"
@ -806,13 +834,13 @@ msgstr "%s вас позива да се придружите „%s“"
#: ../js/ui/components/telepathyClient.js:1164
#: ../js/ui/components/telepathyClient.js:1199
#: ../js/ui/components/telepathyClient.js:1233
#: ../js/ui/components/telepathyClient.js:1291
#: ../js/ui/components/telepathyClient.js:1290
msgid "Decline"
msgstr "Одбиј"
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1296
#: ../js/ui/components/telepathyClient.js:1295
msgid "Accept"
msgstr "Прихвати"
@ -849,98 +877,98 @@ msgstr "%s вам шаље „%s“"
msgid "%s would like permission to see when you are online"
msgstr "%s тражи одобрење да види када сте на вези"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1341
msgid "Network error"
msgstr "Грешка мреже"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1343
msgid "Authentication failed"
msgstr "Потврђивање идентитета није успело"
#: ../js/ui/components/telepathyClient.js:1346
#: ../js/ui/components/telepathyClient.js:1345
msgid "Encryption error"
msgstr "Грешка шифровања"
#: ../js/ui/components/telepathyClient.js:1348
#: ../js/ui/components/telepathyClient.js:1347
msgid "Certificate not provided"
msgstr "Уверење није прослеђено"
#: ../js/ui/components/telepathyClient.js:1350
#: ../js/ui/components/telepathyClient.js:1349
msgid "Certificate untrusted"
msgstr "Уверење није поверљиво"
#: ../js/ui/components/telepathyClient.js:1352
#: ../js/ui/components/telepathyClient.js:1351
msgid "Certificate expired"
msgstr "Уверење је истекло"
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1353
msgid "Certificate not activated"
msgstr "Уверење није активирано"
#: ../js/ui/components/telepathyClient.js:1356
#: ../js/ui/components/telepathyClient.js:1355
msgid "Certificate hostname mismatch"
msgstr "Назив домаћина уверења се не поклапа"
#: ../js/ui/components/telepathyClient.js:1358
#: ../js/ui/components/telepathyClient.js:1357
msgid "Certificate fingerprint mismatch"
msgstr "Отисак уверења се не поклапа"
#: ../js/ui/components/telepathyClient.js:1360
#: ../js/ui/components/telepathyClient.js:1359
msgid "Certificate self-signed"
msgstr "Уверење је самопотписано"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1361
msgid "Status is set to offline"
msgstr "Стање је постављено на „неповезан“"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1363
msgid "Encryption is not available"
msgstr "Шифровање није доступно"
#: ../js/ui/components/telepathyClient.js:1366
#: ../js/ui/components/telepathyClient.js:1365
msgid "Certificate is invalid"
msgstr "Уверење није исправно"
#: ../js/ui/components/telepathyClient.js:1368
#: ../js/ui/components/telepathyClient.js:1367
msgid "Connection has been refused"
msgstr "Веза је одбијена"
#: ../js/ui/components/telepathyClient.js:1370
#: ../js/ui/components/telepathyClient.js:1369
msgid "Connection can't be established"
msgstr "Веза не може бити успостављена"
#: ../js/ui/components/telepathyClient.js:1372
#: ../js/ui/components/telepathyClient.js:1371
msgid "Connection has been lost"
msgstr "Веза је изгубљена"
#: ../js/ui/components/telepathyClient.js:1374
#: ../js/ui/components/telepathyClient.js:1373
msgid "This account is already connected to the server"
msgstr "Овај налог је већ повезан са сервером"
#: ../js/ui/components/telepathyClient.js:1376
#: ../js/ui/components/telepathyClient.js:1375
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Веза је замењена новом везом користећи исти ресурс"
#: ../js/ui/components/telepathyClient.js:1378
#: ../js/ui/components/telepathyClient.js:1377
msgid "The account already exists on the server"
msgstr "Овај налог већ постоји на серверу"
#: ../js/ui/components/telepathyClient.js:1380
#: ../js/ui/components/telepathyClient.js:1379
msgid "Server is currently too busy to handle the connection"
msgstr "Сервер је тренутно превише заузет да би руковао везом"
#: ../js/ui/components/telepathyClient.js:1382
#: ../js/ui/components/telepathyClient.js:1381
msgid "Certificate has been revoked"
msgstr "Уверење је опозвано"
#: ../js/ui/components/telepathyClient.js:1384
#: ../js/ui/components/telepathyClient.js:1383
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Уверење користи несигуран алгоритам шифровања или је криптографски слабо"
#: ../js/ui/components/telepathyClient.js:1386
#: ../js/ui/components/telepathyClient.js:1385
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -948,22 +976,22 @@ msgstr ""
"Дужина уверења сервера, или дубина ланца уверења сервера, премашује границе "
"које је задала библиотека шифровања"
#: ../js/ui/components/telepathyClient.js:1388
#: ../js/ui/components/telepathyClient.js:1387
msgid "Internal error"
msgstr "Унутрашња грешка"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1398
#: ../js/ui/components/telepathyClient.js:1397
#, javascript-format
msgid "Unable to connect to %s"
msgstr "Не могу да се повежем са „%s“"
#: ../js/ui/components/telepathyClient.js:1403
#: ../js/ui/components/telepathyClient.js:1402
msgid "View account"
msgstr "Види налог"
#: ../js/ui/components/telepathyClient.js:1440
#: ../js/ui/components/telepathyClient.js:1439
msgid "Unknown reason"
msgstr "Непознат разлог"
@ -1100,6 +1128,8 @@ msgstr[3] ""
"Систем ће се сам поново покренути и инсталирати ажурирања за %d секунду."
#: ../js/ui/endSessionDialog.js:129
#| msgctxt "button"
#| msgid "Restart & Install"
msgctxt "button"
msgid "Restart &amp; Install"
msgstr "Поново покрени и инсталирај"
@ -1117,7 +1147,8 @@ msgstr "Искључи након инсталирања освежења"
#: ../js/ui/endSessionDialog.js:315
msgid "Running on battery power: please plug in before installing updates."
msgstr ""
"Напајате се са батерије: прикључите мрежно напајање пре инсталирања освежења."
"Напајате се са батерије: прикључите мрежно напајање пре инсталирања "
"освежења."
#: ../js/ui/endSessionDialog.js:332
msgid "Some applications are busy or have unsaved work."
@ -1145,6 +1176,7 @@ msgstr "Инсталирај"
#: ../js/ui/extensionDownloader.js:204
#, javascript-format
#| msgid "Download and install '%s' from extensions.gnome.org?"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Да преузмем и да инсталирам „%s“ са „extensions.gnome.org“-а?"
@ -1170,8 +1202,7 @@ msgstr "Сакриј грешке"
msgid "Show Errors"
msgstr "Прикажите грешке"
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
#: ../js/ui/status/location.js:167
#: ../js/ui/lookingGlass.js:716
msgid "Enabled"
msgstr "Укључено"
@ -1179,8 +1210,8 @@ msgstr "Укључено"
#. because it's disabled by rfkill (airplane mode) */
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
#: ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "Искључено"
@ -1331,7 +1362,7 @@ msgstr "Неки програм је блокирао закључавање"
msgid "Searching…"
msgstr "Тражим…"
#: ../js/ui/search.js:649
#: ../js/ui/search.js:646
msgid "No results."
msgstr "Нема одговарајућих резултата."
@ -1407,7 +1438,8 @@ msgstr "Велики текст"
msgid "Bluetooth"
msgstr "Блутут"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/location.js:60
#: ../js/ui/status/location.js:167 ../js/ui/status/network.js:151
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
#: ../js/ui/status/rfkill.js:105
@ -1440,33 +1472,30 @@ msgid "Show Keyboard Layout"
msgstr "Покажи распоред тастатуре"
#: ../js/ui/status/location.js:53
#| msgid "Notifications"
msgid "Location"
msgstr "Место"
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
#| msgid "Disabled"
msgid "Disable"
msgstr "Искључи"
#: ../js/ui/status/location.js:59 ../js/ui/status/location.js:166
#: ../js/ui/status/rfkill.js:84
msgid "On"
msgstr "Укљ."
#: ../js/ui/status/location.js:165
#| msgid "Enabled"
msgid "Enable"
#: ../js/ui/status/location.js:163 ../js/ui/status/network.js:420
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
msgid "Off"
msgstr "Искљ."
#: ../js/ui/status/location.js:164 ../js/ui/status/network.js:1234
msgid "Turn On"
msgstr "Укључи"
#: ../js/ui/status/location.js:167
msgid "In Use"
msgstr "У употреби"
#: ../js/ui/status/network.js:74
msgid "<unknown>"
msgstr "<непознато>"
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
#: ../js/ui/status/network.js:1464
msgid "Off"
msgstr "Искљ."
#: ../js/ui/status/network.js:422
#| msgid "Connect"
msgid "Connected"
msgstr "Повезан"
@ -1506,6 +1535,7 @@ msgid "connection failed"
msgstr "повезивање није успело"
#: ../js/ui/status/network.js:467
#| msgid "Wi-Fi Settings"
msgid "Wired Settings"
msgstr "Подешавања жичане везе"
@ -1522,6 +1552,7 @@ msgid "Use as Internet connection"
msgstr "Користи као Интернет везу"
#: ../js/ui/status/network.js:776
#| msgid "Airplane Mode"
msgid "Airplane Mode is On"
msgstr "Режим у авиону је укључен"
@ -1530,10 +1561,12 @@ msgid "Wi-Fi is disabled when airplane mode is on."
msgstr "Бежична веза је искључена када је укључен режим у авиону."
#: ../js/ui/status/network.js:778
#| msgid "Airplane Mode"
msgid "Turn Off Airplane Mode"
msgstr "Искључи режим у авиону"
#: ../js/ui/status/network.js:787
#| msgid "Wi-Fi Settings"
msgid "Wi-Fi is Off"
msgstr "Бежична веза је искључена"
@ -1542,6 +1575,7 @@ msgid "Wi-Fi needs to be turned on in order to connect to a network."
msgstr "Бежична веза треба бити укључена да бисте се повезали на мрежу."
#: ../js/ui/status/network.js:789
#| msgid "Turn On"
msgid "Turn On Wi-Fi"
msgstr "Укључи бежичну везу"
@ -1569,15 +1603,12 @@ msgstr "Изабери мрежу"
msgid "Wi-Fi Settings"
msgstr "Подешавања бежичне везе"
#: ../js/ui/status/network.js:1234
msgid "Turn On"
msgstr "Укључи"
#: ../js/ui/status/network.js:1251
msgid "Hotspot Active"
msgstr "Врућа тачка је радна"
#: ../js/ui/status/network.js:1254
#| msgid "Connect"
msgid "Connecting"
msgstr "Повезујем се"
@ -1586,6 +1617,7 @@ msgid "Network Settings"
msgstr "Подешавања мреже"
#: ../js/ui/status/network.js:1435
#| msgid "Settings"
msgid "VPN Settings"
msgstr "ВПН подешавања"
@ -1639,10 +1671,6 @@ msgstr "Батерија"
msgid "Airplane Mode"
msgstr "Режим у авиону"
#: ../js/ui/status/rfkill.js:84
msgid "On"
msgstr "Укљ."
#: ../js/ui/status/system.js:314
msgid "Switch User"
msgstr "Промени корисника"
@ -1693,6 +1721,7 @@ msgstr "Тражи"
#: ../js/ui/windowAttentionHandler.js:19
#, javascript-format
#| msgid "'%s' is ready"
msgid "“%s” is ready"
msgstr "„%s“ је спреман"
@ -1768,6 +1797,7 @@ msgstr "Исписује могуће режиме"
#: ../src/shell-app.c:666
#, c-format
#| msgid "Failed to launch '%s'"
msgid "Failed to launch “%s”"
msgstr "Нисам успео да покренем „%s“"

View File

@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2014-04-14 15:36+0000\n"
"PO-Revision-Date: 2014-04-14 19:31+0200\n"
"POT-Creation-Date: 2014-03-22 20:38+0000\n"
"PO-Revision-Date: 2014-03-23 11:08+0200\n"
"Last-Translator: Miroslav Nikolić <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <gnom@prevod.org>\n"
"Language: sr\n"
@ -80,10 +80,16 @@ msgstr ""
"korišćenjem „Alt-F2“ prozorčeta."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
#| msgid "Uuids of extensions to enable"
msgid "UUIDs of extensions to enable"
msgstr "JUIB-ovi proširenja za uključivanje"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
#| 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 DBus methods on org.gnome.Shell."
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 "
@ -92,8 +98,8 @@ msgid ""
msgstr ""
"Proširenja Gnomove školjke imaju JUIB vrednost; ovaj ključ ispisuje proširenja "
"koja treba učitavati. Svako proširenje koje želi biti učitano mora biti na "
"spisku. Takođe možete da upravljate ovim spiskom koristeći načine D-"
"magistrale „Uključi proširenje“ i „Isključi proširenje“ na „org.gnome.Shell“."
"spisku. Takođe možete da upravljate ovim spiskom koristeći načine "
"D-magistrale „Uključi proširenje“ i „Isključi proširenje“ na „org.gnome.Shell“."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
msgid "Disables the validation of extension version compatibility"
@ -130,10 +136,14 @@ msgid "History for the looking glass dialog"
msgstr "Istorijat prozorčeta ogledala"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
#| msgid "Always show the 'Log out' menuitem in the user menu."
msgid "Always show the 'Log out' menu item in the user menu."
msgstr "Uvek prikazuje stavku izbornika „Odjavi me“ u izborniku korisnika."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
#| msgid ""
#| "This key overrides the automatic hiding of the 'Log out' menuitem in "
#| "single-user, single-session situations."
msgid ""
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
"user, single-session situations."
@ -231,12 +241,12 @@ msgid ""
"using network resources (albeit with street-level accuracy at best)."
msgstr ""
"Podešava najveći nivo tačnosti mesta koju programi mogu da koriste. Ispravne "
"mogućnosti su „off“ (isključuje praćenje mesta), „country“ (država), "
"„city“ (grad), „neighborhood“ (komšiluk), „street“ (ulica), i „exact“ (tačno "
"obično zahteva GPS prijemnik). Imajte na umu da će ovo odlučiti šta će "
"„Geo indicija“ dozvoliti programima samo da vide i da mogu pronaći "
"korisnikovo mesto na svoju ruku koristeći izvorišta mreže (mada sa tačnošću "
"na nivou ulice u najboljem slučaju)."
"mogućnosti su „off“ (isključuje praćenje mesta), „country“ (država), „city“ "
"(grad), „neighborhood“ (komšiluk), „street“ (ulica), i „exact“ (tačno "
"obično zahteva GPS prijemnik). Imajte na umu da će ovo odlučiti šta će „Geo "
"indicija“ dozvoliti programima samo da vide i da mogu pronaći korisnikovo "
"mesto na svoju ruku koristeći izvorišta mreže (mada sa tačnošću na nivou "
"ulice u najboljem slučaju)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "The application icon mode."
@ -325,25 +335,25 @@ msgctxt "button"
msgid "Sign In"
msgstr "Prijavi me"
#: ../js/gdm/loginDialog.js:271
#: ../js/gdm/loginDialog.js:270
msgid "Choose Session"
msgstr "Izaberi sesiju"
#: ../js/gdm/loginDialog.js:431
#: ../js/gdm/loginDialog.js:430
msgid "Not listed?"
msgstr "Nije na spisku?"
#: ../js/gdm/loginDialog.js:614
#: ../js/gdm/loginDialog.js:608
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(npr., korisnik ili %s)"
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
#: ../js/ui/components/networkAgent.js:280
msgid "Username: "
msgstr "Korisničko ime: "
#: ../js/gdm/loginDialog.js:920
#: ../js/gdm/loginDialog.js:884
msgid "Login Window"
msgstr "Prozor za prijavljivanje"
@ -365,30 +375,31 @@ msgstr "Ne mogu da obradim naredbu:"
#: ../js/misc/util.js:156
#, javascript-format
#| msgid "Execution of '%s' failed:"
msgid "Execution of “%s” failed:"
msgstr "Nije uspelo izvršavanje „%s“:"
#: ../js/ui/appDisplay.js:636
#: ../js/ui/appDisplay.js:629
msgid "Frequently used applications will appear here"
msgstr "Često korišćeni programi će se pojaviti ovde"
#: ../js/ui/appDisplay.js:747
#: ../js/ui/appDisplay.js:740
msgid "Frequent"
msgstr "Često"
#: ../js/ui/appDisplay.js:754
#: ../js/ui/appDisplay.js:747
msgid "All"
msgstr "Sve"
#: ../js/ui/appDisplay.js:1566
#: ../js/ui/appDisplay.js:1555
msgid "New Window"
msgstr "Novi prozor"
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1577 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "Ukloni iz omiljenih"
#: ../js/ui/appDisplay.js:1594
#: ../js/ui/appDisplay.js:1583
msgid "Add to Favorites"
msgstr "Dodaj u omiljene"
@ -636,6 +647,9 @@ msgstr "Bežična mreža zahteva potvrđivanje identiteta"
#: ../js/ui/components/networkAgent.js:312
#, javascript-format
#| msgid ""
#| "Passwords or encryption keys are required to access the wireless network "
#| "'%s'."
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"“%s”."
@ -672,6 +686,7 @@ msgstr "Lozinka mobilne širokopojasne mreže"
#: ../js/ui/components/networkAgent.js:339
#, javascript-format
#| msgid "A password is required to connect to '%s'."
msgid "A password is required to connect to “%s”."
msgstr "Potrebna je lozinka za povezivanje na „%s“."
@ -721,18 +736,23 @@ msgstr "Utišaj"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:955
#| msgctxt "event list time"
#| msgid "%H%M"
msgid "%H%M"
msgstr "%H%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 24h format. i.e. "Yesterday, 14:30" */
#: ../js/ui/components/telepathyClient.js:962
#| msgid "<b>Yesterday</b>, <b>%H:%M</b>"
msgid "Yesterday, %H%M"
msgstr "Juče, %H:%M"
#. Translators: this is the week day name followed by a time
#. string in 24h format. i.e. "Monday, 14:30" */
#: ../js/ui/components/telepathyClient.js:969
#| msgctxt "event list time"
#| msgid "%H%M"
msgid "%A, %H%M"
msgstr "%A, %H%M"
@ -740,6 +760,8 @@ msgstr "%A, %H%M"
#. followed by a time string in 24h format.
#. i.e. "May 25, 14:30" */
#: ../js/ui/components/telepathyClient.js:976
#| msgctxt "event list time"
#| msgid "%H%M"
msgid "%B %d, %H%M"
msgstr "%d. %B, %H%M"
@ -752,6 +774,8 @@ msgstr "%d. %B %Y., %H:%M"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:991
#| msgctxt "event list time"
#| msgid "%l%M%p"
msgid "%l%M %p"
msgstr "%l%M%p"
@ -764,6 +788,8 @@ msgstr "Juče, %l:%M %p"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1005
#| msgctxt "event list time"
#| msgid "%l%M%p"
msgid "%A, %l%M %p"
msgstr "%A, %l%M %p"
@ -771,6 +797,8 @@ msgstr "%A, %l%M %p"
#. followed by a time string in 12h format.
#. i.e. "May 25, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1012
#| msgctxt "event list time"
#| msgid "%l%M%p"
msgid "%B %d, %l%M %p"
msgstr "%d. %B, %l%M %p"
@ -806,13 +834,13 @@ msgstr "%s vas poziva da se pridružite „%s“"
#: ../js/ui/components/telepathyClient.js:1164
#: ../js/ui/components/telepathyClient.js:1199
#: ../js/ui/components/telepathyClient.js:1233
#: ../js/ui/components/telepathyClient.js:1291
#: ../js/ui/components/telepathyClient.js:1290
msgid "Decline"
msgstr "Odbij"
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1296
#: ../js/ui/components/telepathyClient.js:1295
msgid "Accept"
msgstr "Prihvati"
@ -849,98 +877,98 @@ msgstr "%s vam šalje „%s“"
msgid "%s would like permission to see when you are online"
msgstr "%s traži odobrenje da vidi kada ste na vezi"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1341
msgid "Network error"
msgstr "Greška mreže"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1343
msgid "Authentication failed"
msgstr "Potvrđivanje identiteta nije uspelo"
#: ../js/ui/components/telepathyClient.js:1346
#: ../js/ui/components/telepathyClient.js:1345
msgid "Encryption error"
msgstr "Greška šifrovanja"
#: ../js/ui/components/telepathyClient.js:1348
#: ../js/ui/components/telepathyClient.js:1347
msgid "Certificate not provided"
msgstr "Uverenje nije prosleđeno"
#: ../js/ui/components/telepathyClient.js:1350
#: ../js/ui/components/telepathyClient.js:1349
msgid "Certificate untrusted"
msgstr "Uverenje nije poverljivo"
#: ../js/ui/components/telepathyClient.js:1352
#: ../js/ui/components/telepathyClient.js:1351
msgid "Certificate expired"
msgstr "Uverenje je isteklo"
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1353
msgid "Certificate not activated"
msgstr "Uverenje nije aktivirano"
#: ../js/ui/components/telepathyClient.js:1356
#: ../js/ui/components/telepathyClient.js:1355
msgid "Certificate hostname mismatch"
msgstr "Naziv domaćina uverenja se ne poklapa"
#: ../js/ui/components/telepathyClient.js:1358
#: ../js/ui/components/telepathyClient.js:1357
msgid "Certificate fingerprint mismatch"
msgstr "Otisak uverenja se ne poklapa"
#: ../js/ui/components/telepathyClient.js:1360
#: ../js/ui/components/telepathyClient.js:1359
msgid "Certificate self-signed"
msgstr "Uverenje je samopotpisano"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1361
msgid "Status is set to offline"
msgstr "Stanje je postavljeno na „nepovezan“"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1363
msgid "Encryption is not available"
msgstr "Šifrovanje nije dostupno"
#: ../js/ui/components/telepathyClient.js:1366
#: ../js/ui/components/telepathyClient.js:1365
msgid "Certificate is invalid"
msgstr "Uverenje nije ispravno"
#: ../js/ui/components/telepathyClient.js:1368
#: ../js/ui/components/telepathyClient.js:1367
msgid "Connection has been refused"
msgstr "Veza je odbijena"
#: ../js/ui/components/telepathyClient.js:1370
#: ../js/ui/components/telepathyClient.js:1369
msgid "Connection can't be established"
msgstr "Veza ne može biti uspostavljena"
#: ../js/ui/components/telepathyClient.js:1372
#: ../js/ui/components/telepathyClient.js:1371
msgid "Connection has been lost"
msgstr "Veza je izgubljena"
#: ../js/ui/components/telepathyClient.js:1374
#: ../js/ui/components/telepathyClient.js:1373
msgid "This account is already connected to the server"
msgstr "Ovaj nalog je već povezan sa serverom"
#: ../js/ui/components/telepathyClient.js:1376
#: ../js/ui/components/telepathyClient.js:1375
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Veza je zamenjena novom vezom koristeći isti resurs"
#: ../js/ui/components/telepathyClient.js:1378
#: ../js/ui/components/telepathyClient.js:1377
msgid "The account already exists on the server"
msgstr "Ovaj nalog već postoji na serveru"
#: ../js/ui/components/telepathyClient.js:1380
#: ../js/ui/components/telepathyClient.js:1379
msgid "Server is currently too busy to handle the connection"
msgstr "Server je trenutno previše zauzet da bi rukovao vezom"
#: ../js/ui/components/telepathyClient.js:1382
#: ../js/ui/components/telepathyClient.js:1381
msgid "Certificate has been revoked"
msgstr "Uverenje je opozvano"
#: ../js/ui/components/telepathyClient.js:1384
#: ../js/ui/components/telepathyClient.js:1383
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Uverenje koristi nesiguran algoritam šifrovanja ili je kriptografski slabo"
#: ../js/ui/components/telepathyClient.js:1386
#: ../js/ui/components/telepathyClient.js:1385
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -948,22 +976,22 @@ msgstr ""
"Dužina uverenja servera, ili dubina lanca uverenja servera, premašuje granice "
"koje je zadala biblioteka šifrovanja"
#: ../js/ui/components/telepathyClient.js:1388
#: ../js/ui/components/telepathyClient.js:1387
msgid "Internal error"
msgstr "Unutrašnja greška"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1398
#: ../js/ui/components/telepathyClient.js:1397
#, javascript-format
msgid "Unable to connect to %s"
msgstr "Ne mogu da se povežem sa „%s“"
#: ../js/ui/components/telepathyClient.js:1403
#: ../js/ui/components/telepathyClient.js:1402
msgid "View account"
msgstr "Vidi nalog"
#: ../js/ui/components/telepathyClient.js:1440
#: ../js/ui/components/telepathyClient.js:1439
msgid "Unknown reason"
msgstr "Nepoznat razlog"
@ -1100,6 +1128,8 @@ msgstr[3] ""
"Sistem će se sam ponovo pokrenuti i instalirati ažuriranja za %d sekundu."
#: ../js/ui/endSessionDialog.js:129
#| msgctxt "button"
#| msgid "Restart & Install"
msgctxt "button"
msgid "Restart &amp; Install"
msgstr "Ponovo pokreni i instaliraj"
@ -1117,7 +1147,8 @@ msgstr "Isključi nakon instaliranja osveženja"
#: ../js/ui/endSessionDialog.js:315
msgid "Running on battery power: please plug in before installing updates."
msgstr ""
"Napajate se sa baterije: priključite mrežno napajanje pre instaliranja osveženja."
"Napajate se sa baterije: priključite mrežno napajanje pre instaliranja "
"osveženja."
#: ../js/ui/endSessionDialog.js:332
msgid "Some applications are busy or have unsaved work."
@ -1145,6 +1176,7 @@ msgstr "Instaliraj"
#: ../js/ui/extensionDownloader.js:204
#, javascript-format
#| msgid "Download and install '%s' from extensions.gnome.org?"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Da preuzmem i da instaliram „%s“ sa „extensions.gnome.org“-a?"
@ -1170,8 +1202,7 @@ msgstr "Sakrij greške"
msgid "Show Errors"
msgstr "Prikažite greške"
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
#: ../js/ui/status/location.js:167
#: ../js/ui/lookingGlass.js:716
msgid "Enabled"
msgstr "Uključeno"
@ -1179,8 +1210,8 @@ msgstr "Uključeno"
#. because it's disabled by rfkill (airplane mode) */
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
#: ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "Isključeno"
@ -1331,7 +1362,7 @@ msgstr "Neki program je blokirao zaključavanje"
msgid "Searching…"
msgstr "Tražim…"
#: ../js/ui/search.js:649
#: ../js/ui/search.js:646
msgid "No results."
msgstr "Nema odgovarajućih rezultata."
@ -1407,7 +1438,8 @@ msgstr "Veliki tekst"
msgid "Bluetooth"
msgstr "Blutut"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/location.js:60
#: ../js/ui/status/location.js:167 ../js/ui/status/network.js:151
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
#: ../js/ui/status/rfkill.js:105
@ -1440,33 +1472,30 @@ msgid "Show Keyboard Layout"
msgstr "Pokaži raspored tastature"
#: ../js/ui/status/location.js:53
#| msgid "Notifications"
msgid "Location"
msgstr "Mesto"
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
#| msgid "Disabled"
msgid "Disable"
msgstr "Isključi"
#: ../js/ui/status/location.js:59 ../js/ui/status/location.js:166
#: ../js/ui/status/rfkill.js:84
msgid "On"
msgstr "Uklj."
#: ../js/ui/status/location.js:165
#| msgid "Enabled"
msgid "Enable"
#: ../js/ui/status/location.js:163 ../js/ui/status/network.js:420
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
msgid "Off"
msgstr "Isklj."
#: ../js/ui/status/location.js:164 ../js/ui/status/network.js:1234
msgid "Turn On"
msgstr "Uključi"
#: ../js/ui/status/location.js:167
msgid "In Use"
msgstr "U upotrebi"
#: ../js/ui/status/network.js:74
msgid "<unknown>"
msgstr "<nepoznato>"
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
#: ../js/ui/status/network.js:1464
msgid "Off"
msgstr "Isklj."
#: ../js/ui/status/network.js:422
#| msgid "Connect"
msgid "Connected"
msgstr "Povezan"
@ -1506,6 +1535,7 @@ msgid "connection failed"
msgstr "povezivanje nije uspelo"
#: ../js/ui/status/network.js:467
#| msgid "Wi-Fi Settings"
msgid "Wired Settings"
msgstr "Podešavanja žičane veze"
@ -1522,6 +1552,7 @@ msgid "Use as Internet connection"
msgstr "Koristi kao Internet vezu"
#: ../js/ui/status/network.js:776
#| msgid "Airplane Mode"
msgid "Airplane Mode is On"
msgstr "Režim u avionu je uključen"
@ -1530,10 +1561,12 @@ msgid "Wi-Fi is disabled when airplane mode is on."
msgstr "Bežična veza je isključena kada je uključen režim u avionu."
#: ../js/ui/status/network.js:778
#| msgid "Airplane Mode"
msgid "Turn Off Airplane Mode"
msgstr "Isključi režim u avionu"
#: ../js/ui/status/network.js:787
#| msgid "Wi-Fi Settings"
msgid "Wi-Fi is Off"
msgstr "Bežična veza je isključena"
@ -1542,6 +1575,7 @@ msgid "Wi-Fi needs to be turned on in order to connect to a network."
msgstr "Bežična veza treba biti uključena da biste se povezali na mrežu."
#: ../js/ui/status/network.js:789
#| msgid "Turn On"
msgid "Turn On Wi-Fi"
msgstr "Uključi bežičnu vezu"
@ -1569,15 +1603,12 @@ msgstr "Izaberi mrežu"
msgid "Wi-Fi Settings"
msgstr "Podešavanja bežične veze"
#: ../js/ui/status/network.js:1234
msgid "Turn On"
msgstr "Uključi"
#: ../js/ui/status/network.js:1251
msgid "Hotspot Active"
msgstr "Vruća tačka je radna"
#: ../js/ui/status/network.js:1254
#| msgid "Connect"
msgid "Connecting"
msgstr "Povezujem se"
@ -1586,6 +1617,7 @@ msgid "Network Settings"
msgstr "Podešavanja mreže"
#: ../js/ui/status/network.js:1435
#| msgid "Settings"
msgid "VPN Settings"
msgstr "VPN podešavanja"
@ -1639,10 +1671,6 @@ msgstr "Baterija"
msgid "Airplane Mode"
msgstr "Režim u avionu"
#: ../js/ui/status/rfkill.js:84
msgid "On"
msgstr "Uklj."
#: ../js/ui/status/system.js:314
msgid "Switch User"
msgstr "Promeni korisnika"
@ -1693,6 +1721,7 @@ msgstr "Traži"
#: ../js/ui/windowAttentionHandler.js:19
#, javascript-format
#| msgid "'%s' is ready"
msgid "“%s” is ready"
msgstr "„%s“ je spreman"
@ -1768,6 +1797,7 @@ msgstr "Ispisuje moguće režime"
#: ../src/shell-app.c:666
#, c-format
#| msgid "Failed to launch '%s'"
msgid "Failed to launch “%s”"
msgstr "Nisam uspeo da pokrenem „%s“"

218
po/tg.po
View File

@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: Tajik Gnome\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2014-04-08 20:00+0000\n"
"PO-Revision-Date: 2014-04-09 11:36+0500\n"
"POT-Creation-Date: 2014-04-25 07:23+0000\n"
"PO-Revision-Date: 2014-04-25 16:51+0500\n"
"Last-Translator: Victor Ibragimov <victor.ibragimov@gmail.com>\n"
"Language-Team: \n"
"Language: tg\n"
@ -344,25 +344,25 @@ msgstr "Интихоби ҷаласа"
msgid "Not listed?"
msgstr "Вуҷуд надора?"
#: ../js/gdm/loginDialog.js:614
#: ../js/gdm/loginDialog.js:616
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(масалан, корбар ё %s)"
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
#: ../js/ui/components/networkAgent.js:280
msgid "Username: "
msgstr "Номи корбар:"
#: ../js/gdm/loginDialog.js:920
#: ../js/gdm/loginDialog.js:924
msgid "Login Window"
msgstr "Равзанаи воридшавӣ"
#: ../js/gdm/util.js:322
#: ../js/gdm/util.js:323
msgid "Authentication error"
msgstr "Хатои санҷиши ҳаққоният"
#: ../js/gdm/util.js:452
#: ../js/gdm/util.js:453
msgid "(or swipe finger)"
msgstr "(ё бо ангут ламс кунед)"
@ -391,15 +391,15 @@ msgstr "Роиҷ"
msgid "All"
msgstr "Ҳама"
#: ../js/ui/appDisplay.js:1566
#: ../js/ui/appDisplay.js:1567
msgid "New Window"
msgstr "Равзанаи нав"
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
#: ../js/ui/appDisplay.js:1589 ../js/ui/dash.js:285
msgid "Remove from Favorites"
msgstr "Тоза кардан аз Баргузидаҳо"
#: ../js/ui/appDisplay.js:1594
#: ../js/ui/appDisplay.js:1595
msgid "Add to Favorites"
msgstr "Илова кардан ба Баргузидаҳо"
@ -413,7 +413,7 @@ msgstr "%s ба баргузидаҳои шумо илова шудааст."
msgid "%s has been removed from your favorites."
msgstr "%s аз баргузидаҳои шумо тоза шудааст."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
#: ../js/ui/status/system.js:334
msgid "Settings"
msgstr "Танзимот"
@ -583,11 +583,11 @@ msgstr "Ҳафтаи ҷорӣ"
msgid "Next week"
msgstr "Ҳафтаи навбатӣ"
#: ../js/ui/components/automountManager.js:90
#: ../js/ui/components/automountManager.js:91
msgid "External drive connected"
msgstr "Диски берунӣ васл шудааст"
#: ../js/ui/components/automountManager.js:101
#: ../js/ui/components/automountManager.js:102
msgid "External drive disconnected"
msgstr "Диски берунӣ ҷудо шудааст"
@ -732,77 +732,77 @@ msgid "Mute"
msgstr "Бесадо кардан"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:955
#: ../js/ui/components/telepathyClient.js:958
msgid "%H%M"
msgstr "%H%M"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 24h format. i.e. "Yesterday, 14:30" */
#: ../js/ui/components/telepathyClient.js:962
#: ../js/ui/components/telepathyClient.js:965
msgid "Yesterday, %H%M"
msgstr "Дирӯз, %H%M"
#. Translators: this is the week day name followed by a time
#. string in 24h format. i.e. "Monday, 14:30" */
#: ../js/ui/components/telepathyClient.js:969
#: ../js/ui/components/telepathyClient.js:972
msgid "%A, %H%M"
msgstr "%A, %H%M"
#. Translators: this is the month name and day number
#. followed by a time string in 24h format.
#. i.e. "May 25, 14:30" */
#: ../js/ui/components/telepathyClient.js:976
#: ../js/ui/components/telepathyClient.js:979
msgid "%B %d, %H%M"
msgstr "%B %d, %H%M"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 24h format.
#. i.e. "May 25 2012, 14:30" */
#: ../js/ui/components/telepathyClient.js:982
#: ../js/ui/components/telepathyClient.js:985
msgid "%B %d %Y, %H%M"
msgstr "%B %d %Y, %H%M"
#. Translators: Time in 24h format */
#: ../js/ui/components/telepathyClient.js:991
#: ../js/ui/components/telepathyClient.js:994
msgid "%l%M %p"
msgstr "%l%M %p"
#. Translators: this is the word "Yesterday" followed by a
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:998
#: ../js/ui/components/telepathyClient.js:1001
msgid "Yesterday, %l%M %p"
msgstr "Дирӯз, %l%M %p"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1005
#: ../js/ui/components/telepathyClient.js:1008
msgid "%A, %l%M %p"
msgstr "%A, %l%M %p"
#. Translators: this is the month name and day number
#. followed by a time string in 12h format.
#. i.e. "May 25, 2:30 pm" */
#: ../js/ui/components/telepathyClient.js:1012
#: ../js/ui/components/telepathyClient.js:1015
msgid "%B %d, %l%M %p"
msgstr "%B %d, %l%M %p"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 12h format.
#. i.e. "May 25 2012, 2:30 pm"*/
#: ../js/ui/components/telepathyClient.js:1018
#: ../js/ui/components/telepathyClient.js:1021
msgid "%B %d %Y, %l%M %p"
msgstr "%B %d %Y, %l%M %p"
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:1051
#: ../js/ui/components/telepathyClient.js:1054
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s аллакой бо номи %s номида мешавад"
#. translators: argument is a room name like
#. * room@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1154
#: ../js/ui/components/telepathyClient.js:1158
#, javascript-format
msgid "Invitation to %s"
msgstr "Даъватнома барои to %s"
@ -810,38 +810,38 @@ msgstr "Даъватнома барои to %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example. */
#: ../js/ui/components/telepathyClient.js:1162
#: ../js/ui/components/telepathyClient.js:1166
#, javascript-format
msgid "%s is inviting you to join %s"
msgstr "%s шуморо барои ҳамроҳ шудан ба %s даъват мекунад"
#: ../js/ui/components/telepathyClient.js:1164
#: ../js/ui/components/telepathyClient.js:1199
#: ../js/ui/components/telepathyClient.js:1233
#: ../js/ui/components/telepathyClient.js:1291
#: ../js/ui/components/telepathyClient.js:1168
#: ../js/ui/components/telepathyClient.js:1203
#: ../js/ui/components/telepathyClient.js:1237
#: ../js/ui/components/telepathyClient.js:1295
msgid "Decline"
msgstr "Рад кардан"
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1296
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1243
#: ../js/ui/components/telepathyClient.js:1300
msgid "Accept"
msgstr "Қабул кардан"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1189
#: ../js/ui/components/telepathyClient.js:1193
#, javascript-format
msgid "Video call from %s"
msgstr "Занги видеоӣ аз %s"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1192
#: ../js/ui/components/telepathyClient.js:1196
#, javascript-format
msgid "Call from %s"
msgstr "Занг аз %s"
#. translators: this is a button label (verb), not a noun */
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
msgid "Answer"
msgstr "Ҷавоб"
@ -850,110 +850,110 @@ msgstr "Ҷавоб"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#. */
#: ../js/ui/components/telepathyClient.js:1227
#: ../js/ui/components/telepathyClient.js:1231
#, javascript-format
msgid "%s is sending you %s"
msgstr "%s ба шумо %s-ро мефиристад"
#. To translators: The parameter is the contact's alias */
#: ../js/ui/components/telepathyClient.js:1256
#: ../js/ui/components/telepathyClient.js:1260
#, javascript-format
msgid "%s would like permission to see when you are online"
msgstr "%s аз шумо иҷозат мепурсад, ки тавонад шуморо дар онлайн бинад"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid "Network error"
msgstr "Хатои шабака"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Authentication failed"
msgstr "Санҷиши ҳаққоният қатъ шудааст."
#: ../js/ui/components/telepathyClient.js:1346
#: ../js/ui/components/telepathyClient.js:1350
msgid "Encryption error"
msgstr "Хатои рамзгузорӣ"
#: ../js/ui/components/telepathyClient.js:1348
#: ../js/ui/components/telepathyClient.js:1352
msgid "Certificate not provided"
msgstr "Гувоҳинома таъмин нашудааст"
#: ../js/ui/components/telepathyClient.js:1350
#: ../js/ui/components/telepathyClient.js:1354
msgid "Certificate untrusted"
msgstr "Гувоҳиномаи беэътибор"
#: ../js/ui/components/telepathyClient.js:1352
#: ../js/ui/components/telepathyClient.js:1356
msgid "Certificate expired"
msgstr "Гувоҳинома аз мӯҳлаташ гузашт"
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
msgid "Certificate not activated"
msgstr "Гувоҳинома фаъол нашудааст"
#: ../js/ui/components/telepathyClient.js:1356
#: ../js/ui/components/telepathyClient.js:1360
msgid "Certificate hostname mismatch"
msgstr "Номувофиқати гувоҳиномаи номи мизоҷон"
#: ../js/ui/components/telepathyClient.js:1358
#: ../js/ui/components/telepathyClient.js:1362
msgid "Certificate fingerprint mismatch"
msgstr "Номувофиқати гувоҳиномаи нақши ангуштон"
#: ../js/ui/components/telepathyClient.js:1360
#: ../js/ui/components/telepathyClient.js:1364
msgid "Certificate self-signed"
msgstr "Гувоҳиномаи худимзошуда"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1366
msgid "Status is set to offline"
msgstr "Вазъият ба \"офлайн\" гузаштааст"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Encryption is not available"
msgstr "Рамзгузорӣ дастрас нест"
#: ../js/ui/components/telepathyClient.js:1366
#: ../js/ui/components/telepathyClient.js:1370
msgid "Certificate is invalid"
msgstr "Гувоҳинома нодуруст аст"
#: ../js/ui/components/telepathyClient.js:1368
#: ../js/ui/components/telepathyClient.js:1372
msgid "Connection has been refused"
msgstr "Пайваст рад карда шудааст"
#: ../js/ui/components/telepathyClient.js:1370
#: ../js/ui/components/telepathyClient.js:1374
msgid "Connection can't be established"
msgstr "Пайвастшавӣ имконнопазир аст"
#: ../js/ui/components/telepathyClient.js:1372
#: ../js/ui/components/telepathyClient.js:1376
msgid "Connection has been lost"
msgstr "Пайваст гум шудааст"
#: ../js/ui/components/telepathyClient.js:1374
#: ../js/ui/components/telepathyClient.js:1378
msgid "This account is already connected to the server"
msgstr "Ин ҳисоб аллакай ба сервер пайваст шудааст"
#: ../js/ui/components/telepathyClient.js:1376
#: ../js/ui/components/telepathyClient.js:1380
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Пайваст тавассути сарчашмаи якхела бо пайвасти нав ҷойиваз карда шуд"
#: ../js/ui/components/telepathyClient.js:1378
#: ../js/ui/components/telepathyClient.js:1382
msgid "The account already exists on the server"
msgstr "Ҳисоб дар сервер аллакай мавҷуд аст"
#: ../js/ui/components/telepathyClient.js:1380
#: ../js/ui/components/telepathyClient.js:1384
msgid "Server is currently too busy to handle the connection"
msgstr "Барои коркарди ин пайваст сервер дар айни ҳол хеле машғул мебошад"
#: ../js/ui/components/telepathyClient.js:1382
#: ../js/ui/components/telepathyClient.js:1386
msgid "Certificate has been revoked"
msgstr "Гувоҳинома лағв карда шуд"
#: ../js/ui/components/telepathyClient.js:1384
#: ../js/ui/components/telepathyClient.js:1388
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Гувоҳинома алгоритми хатарноки рамзро истифода мебарад, ё ки рамзгузории "
"суст дорад"
#: ../js/ui/components/telepathyClient.js:1386
#: ../js/ui/components/telepathyClient.js:1390
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -961,22 +961,22 @@ msgstr ""
"Дарозии гувоҳиномаи сервер, ё ки чуқурии занҷири гувоҳиномаи сервер, аз "
"маҳдудиятҳое, ки бо китобхонаи рамзгузорӣ таъин шудаанд, дарозтар мебошад"
#: ../js/ui/components/telepathyClient.js:1388
#: ../js/ui/components/telepathyClient.js:1392
msgid "Internal error"
msgstr "Хатогии дохилӣ"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1398
#: ../js/ui/components/telepathyClient.js:1402
#, javascript-format
msgid "Unable to connect to %s"
msgstr "Пайвастшавӣ ба %s имконнопазир аст"
#: ../js/ui/components/telepathyClient.js:1403
#: ../js/ui/components/telepathyClient.js:1407
msgid "View account"
msgstr "Намоиш додани ҳисоб"
#: ../js/ui/components/telepathyClient.js:1440
#: ../js/ui/components/telepathyClient.js:1444
msgid "Unknown reason"
msgstr "Сабаби номаълум"
@ -1132,13 +1132,13 @@ msgid "Other users are logged in."
msgstr "Корбарони дигар ворид шудаанд."
#. Translators: Remote here refers to a remote session, like a ssh login */
#: ../js/ui/endSessionDialog.js:618
#: ../js/ui/endSessionDialog.js:619
#, javascript-format
msgid "%s (remote)"
msgstr "%s (дурдаст)"
#. Translators: Console here refers to a tty like a VT console */
#: ../js/ui/endSessionDialog.js:621
#: ../js/ui/endSessionDialog.js:622
#, javascript-format
msgid "%s (console)"
msgstr "%s (консол)"
@ -1152,7 +1152,7 @@ msgstr "Насб кардан"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "“%s”-ро аз extensions.gnome.org боргирӣ ва насб мекунед?"
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
msgid "Keyboard"
msgstr "Клавиатура"
@ -1240,11 +1240,11 @@ msgstr "Ягон паём нест"
msgid "Message Tray"
msgstr "Қуттии паёмҳо"
#: ../js/ui/messageTray.js:2962
#: ../js/ui/messageTray.js:2967
msgid "System Information"
msgstr "Маълумоти система"
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
msgctxt "program"
msgid "Unknown"
msgstr "Номаълум"
@ -1282,7 +1282,7 @@ msgstr "Баромад"
msgid "Activities"
msgstr "Фаъолиятҳо"
#: ../js/ui/panel.js:914
#: ../js/ui/panel.js:915
msgid "Top Bar"
msgstr "Панели боло"
@ -1319,19 +1319,19 @@ msgstr "Қулф кардан"
msgid "GNOME needs to lock the screen"
msgstr "GNOME бояд экранро қулф кунад"
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
msgid "Unable to lock"
msgstr "Қулф карда намешавад"
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
msgid "Lock was blocked by an application"
msgstr "Қулф аз тарави барнома баста шудааст"
#: ../js/ui/search.js:603
#: ../js/ui/search.js:606
msgid "Searching…"
msgstr "Ҷустуҷӯ рафта истодааст..."
#: ../js/ui/search.js:649
#: ../js/ui/search.js:652
msgid "No results."
msgstr "Ягон натиҷа нест."
@ -1395,11 +1395,11 @@ msgstr "Тугмаҳои ҷастухез"
msgid "Mouse Keys"
msgstr "Тугмаҳои муш"
#: ../js/ui/status/accessibility.js:143
#: ../js/ui/status/accessibility.js:144
msgid "High Contrast"
msgstr "Контрасти баланд"
#: ../js/ui/status/accessibility.js:192
#: ../js/ui/status/accessibility.js:193
msgid "Large Text"
msgstr "Матни бузург"
@ -1442,12 +1442,10 @@ msgid "Location"
msgstr "Ҷойгиршавӣ"
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
#| msgid "Disabled"
msgid "Disable"
msgstr "Ғайрифаъол кардан"
#: ../js/ui/status/location.js:165
#| msgid "Enabled"
msgid "Enable"
msgstr "Фаъол кардан"
@ -1471,37 +1469,42 @@ msgstr "Пайваст шудааст"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu) */
#: ../js/ui/status/network.js:426
msgid "unmanaged"
msgstr "идоранашуда"
#| msgid "unmanaged"
msgid "Unmanaged"
msgstr "Идоранашуда"
#: ../js/ui/status/network.js:428
msgid "disconnecting..."
msgstr "қатъ кардани пайваст..."
#| msgid "disconnecting..."
msgid "Disconnecting"
msgstr "Пайваст қатъ шуда истодааст"
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "пайвастшавӣ..."
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Пайвастшавӣ"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "санҷиши ҳаққоният лозим аст"
#: ../js/ui/status/network.js:437
#| msgid "authentication required"
msgid "Authentication required"
msgstr "Санҷиши ҳаққоният лозим аст"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
#: ../js/ui/status/network.js:445
msgid "firmware missing"
msgstr "нармафзори дарунсохт вуҷуд надорад"
#| msgid "firmware missing"
msgid "Firmware missing"
msgstr "Нармафзори дарунсохт вуҷуд надорад"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage */
#: ../js/ui/status/network.js:449
msgid "unavailable"
msgstr "дастнорас"
#| msgid "unavailable"
msgid "Unavailable"
msgstr "Дастнорас"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "пайваст қатъ шудааст"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Пайваст қатъ шудааст"
#: ../js/ui/status/network.js:467
msgid "Wired Settings"
@ -1575,9 +1578,18 @@ msgstr "Фаъол кардан"
msgid "Hotspot Active"
msgstr "Hotspot фаъол аст"
#: ../js/ui/status/network.js:1254
msgid "Connecting"
msgstr "Пайвастшавӣ"
#: ../js/ui/status/network.js:1362
msgid "connecting..."
msgstr "пайвастшавӣ..."
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:1365
msgid "authentication required"
msgstr "санҷиши ҳаққоният лозим аст"
#: ../js/ui/status/network.js:1367
msgid "connection failed"
msgstr "пайваст қатъ шудааст"
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
msgid "Network Settings"
@ -1595,10 +1607,6 @@ msgstr "VPN"
msgid "Network Manager"
msgstr "Мудири шабака"
#: ../js/ui/status/network.js:1646
msgid "Connection failed"
msgstr "Пайваст қатъ шудааст"
#: ../js/ui/status/network.js:1647
msgid "Activation of network connection failed"
msgstr "Фаъолсозии пайвасти шабака қатъ шудааст."
@ -1709,7 +1717,7 @@ msgstr "Барқарор кардани тағйирот"
msgid "Keep Changes"
msgstr "Нигоҳ доштани тағйирот"
#: ../js/ui/windowManager.js:97
#: ../js/ui/windowManager.js:98
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -1772,7 +1780,7 @@ msgstr "Паролҳо мувофиқат намекунанд."
msgid "Password cannot be blank"
msgstr "Парол бояд холӣ набошад"
#: ../src/shell-polkit-authentication-agent.c:343
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Равзанаи гуфтугӯи санҷиши ҳакконият бо корбар бекор карда шуд"

926
po/tr.po

File diff suppressed because it is too large Load Diff

View File

@ -33,10 +33,6 @@ bin_SCRIPTS += gnome-shell-extension-tool gnome-shell-perf-tool
EXTRA_DIST += gnome-shell-extension-tool.in gnome-shell-perf-tool.in
bin_PROGRAMS = gnome-shell gnome-shell-extension-prefs
if HAVE_MUTTER_WAYLAND
bin_PROGRAMS += gnome-shell-wayland
endif HAVE_MUTTER_WAYLAND
generated_script_substitutions = \
-e "s|@bindir[@]|$(bindir)|g" \
-e "s|@datadir[@]|$(datadir)|g" \
@ -76,10 +72,6 @@ privlibdir = $(pkglibdir)
privlib_LTLIBRARIES = libgnome-shell-js.la libgnome-shell-menu.la libgnome-shell.la
noinst_LTLIBRARIES += libgnome-shell-base.la
if HAVE_MUTTER_WAYLAND
privlib_LTLIBRARIES += libgnome-shell-wayland.la
endif HAVE_MUTTER_WAYLAND
shell_built_sources = \
shell-enum-types.h \
shell-enum-types.c
@ -197,21 +189,6 @@ gnome_shell_CPPFLAGS = \
gnome_shell_LDADD = libgnome-shell.la libgnome-shell-js.la $(GNOME_SHELL_LIBS) $(MUTTER_LIBS)
gnome_shell_DEPENDENCIES = libgnome-shell.la
if HAVE_MUTTER_WAYLAND
libgnome_shell_wayland_la_SOURCES = $(libgnome_shell_sources)
nodist_libgnome_shell_wayland_la_SOURCES = $(libgnome_shell_built_sources)
gnome_shell_wayland_SOURCES = main.c
gnome_shell_wayland_CPPFLAGS = \
-DHAVE_WAYLAND \
-DMUTTER_TYPELIB_DIR=\"$(MUTTER_WAYLAND_TYPELIB_DIR)\" \
$(MUTTER_WAYLAND_CFLAGS) \
$(gnome_shell_cflags)
gnome_shell_wayland_LDADD = libgnome-shell-wayland.la libgnome-shell-js.la $(GNOME_SHELL_LIBS) $(MUTTER_WAYLAND_LIBS)
gnome_shell_wayland_DEPENDENCIES = libgnome-shell-wayland.la
endif HAVE_MUTTER_WAYLAND
gnome_shell_extension_prefs_SOURCES = \
gnome-shell-extension-prefs.c \
$(NULL)
@ -323,12 +300,6 @@ libgnome_shell_la_LDFLAGS = $(libgnome_shell_ldflags)
libgnome_shell_la_LIBADD = $(GNOME_SHELL_LIBS) $(MUTTER_LIBS) libgnome-shell-base.la
libgnome_shell_la_CPPFLAGS = $(MUTTER_CFLAGS) $(gnome_shell_cflags)
if HAVE_MUTTER_WAYLAND
libgnome_shell_wayland_la_LDFLAGS = $(libgnome_shell_ldflags)
libgnome_shell_wayland_la_LIBADD = $(MUTTER_WAYLAND_LIBS) libgnome-shell-base.la
libgnome_shell_wayland_la_CPPFLAGS = $(MUTTER_WAYLAND_CFLAGS) -DHAVE_WAYLAND $(gnome_shell_cflags)
endif HAVE_MUTTER_WAYLAND
ShellMenu-0.1.gir: libgnome-shell-menu.la
ShellMenu_0_1_gir_INCLUDES = Gio-2.0
ShellMenu_0_1_gir_CFLAGS = $(libgnome_shell_menu_la_CPPFLAGS) -I $(srcdir)
@ -354,11 +325,7 @@ if HAVE_NETWORKMANAGER
Shell_0_1_gir_INCLUDES += NetworkManager-1.0 NMClient-1.0
endif
Shell_0_1_gir_CFLAGS = $(libgnome_shell_la_CPPFLAGS) -I $(srcdir)
# Hack! we use PROGRAM instead of LIBS so that the soname is not included
# in the typelib. This way the symbols will be resolved with the libgnome-shell
# linked against the executable (which will be libgnome-shell-wayland for
# gnome-shell-wayland)
Shell_0_1_gir_PROGRAM = $(builddir)/gnome-shell
Shell_0_1_gir_LIBS = libgnome-shell.la
Shell_0_1_gir_FILES = $(libgnome_shell_la_gir_sources)
Shell_0_1_gir_SCANNERFLAGS = \
--include-uninstalled=$(builddir)/St-1.0.gir \

View File

@ -369,6 +369,7 @@ backend_died_cb (EClient *client, CalendarSourceData *source_data)
source_data->timeout_id = g_timeout_add_seconds (2, backend_restart,
source_data);
g_source_set_name_by_id (source_data->timeout_id, "[gnome-shell] backend_restart");
}
static void

View File

@ -537,6 +537,7 @@ app_schedule_changed (App *app)
app->changed_timeout_id = g_timeout_add (2000,
on_app_schedule_changed_cb,
app);
g_source_set_name_by_id (app->changed_timeout_id, "[gnome-shell] on_app_schedule_changed_cb");
}
}

View File

@ -6,6 +6,8 @@
#include <gjs/gjs.h>
#include <glib/gi18n.h>
#include "shell-js.h"
int
main (int argc, char *argv[])
{
@ -34,7 +36,6 @@ main (int argc, char *argv[])
return 1;
}
if (!gjs_context_eval (context,
"const Main = imports.extensionPrefs.main; Main.main(ARGV);",
-1,

View File

@ -73,7 +73,11 @@ static void gnome_shell_plugin_show_tile_preview (MetaPlugin *plugin,
MetaRectangle *tile_rect,
int tile_monitor);
static void gnome_shell_plugin_hide_tile_preview (MetaPlugin *plugin);
static void gnome_shell_plugin_show_window_menu (MetaPlugin *plugin,
MetaWindow *window,
MetaWindowMenuType menu,
int x,
int y);
static gboolean gnome_shell_plugin_xevent_filter (MetaPlugin *plugin,
XEvent *event);
@ -140,6 +144,7 @@ gnome_shell_plugin_class_init (GnomeShellPluginClass *klass)
plugin_class->show_tile_preview = gnome_shell_plugin_show_tile_preview;
plugin_class->hide_tile_preview = gnome_shell_plugin_hide_tile_preview;
plugin_class->show_window_menu = gnome_shell_plugin_show_window_menu;
plugin_class->xevent_filter = gnome_shell_plugin_xevent_filter;
plugin_class->keybinding_filter = gnome_shell_plugin_keybinding_filter;
@ -303,6 +308,16 @@ gnome_shell_plugin_hide_tile_preview (MetaPlugin *plugin)
_shell_wm_hide_tile_preview (get_shell_wm ());
}
static void
gnome_shell_plugin_show_window_menu (MetaPlugin *plugin,
MetaWindow *window,
MetaWindowMenuType menu,
int x,
int y)
{
_shell_wm_show_window_menu (get_shell_wm (), window, menu, x, y);
}
static gboolean
gnome_shell_plugin_xevent_filter (MetaPlugin *plugin,
XEvent *xev)
@ -326,10 +341,8 @@ gnome_shell_plugin_xevent_filter (MetaPlugin *plugin,
}
#endif
#ifdef HAVE_WAYLAND
if (meta_is_wayland_compositor ())
return FALSE;
#endif
/*
* Pass the event to shell-global for XDND

View File

@ -76,6 +76,7 @@ ensure_autoquit_on (void)
autoquit_id =
g_timeout_add_seconds (AUTOQUIT_TIMEOUT,
autoquit_timeout_cb, NULL);
g_source_set_name_by_id (autoquit_id, "[gnome-shell] autoquit_timeout_cb");
}
typedef struct {

View File

@ -590,6 +590,7 @@ shell_mime_sniffer_sniff_async (ShellMimeSniffer *self,
self->priv->watchdog_id =
g_timeout_add (WATCHDOG_TIMEOUT,
watchdog_timeout_reached_cb, self);
g_source_set_name_by_id (self->priv->watchdog_id, "[gnome-shell] watchdog_timeout_reached_cb");
start_loading_file (self);
}

View File

@ -567,6 +567,7 @@ ensure_queued_save (ShellAppUsage *self)
if (self->save_id != 0)
return;
self->save_id = g_timeout_add_seconds (SAVE_APPS_TIMEOUT_SECONDS, idle_save_application_usage, self);
g_source_set_name_by_id (self->save_id, "[gnome-shell] idle_save_application_usage");
}
/* Clean up apps we see rarely.

View File

@ -286,7 +286,33 @@ shell_global_init (ShellGlobal *global)
if (shell_js)
{
int i, j;
search_path = g_strsplit (shell_js, ":", -1);
/* The naive g_strsplit above will split 'resource:///foo/bar' into 'resource',
* '///foo/bar'. Combine these back together by looking for a literal 'resource'
* in the array. */
for (i = 0, j = 0; search_path[i];)
{
char *out;
if (strcmp (search_path[i], "resource") == 0 && search_path[i + 1] != NULL)
{
out = g_strconcat (search_path[i], ":", search_path[i + 1], NULL);
g_free (search_path[i]);
g_free (search_path[i + 1]);
i += 2;
}
else
{
out = search_path[i];
i += 1;
}
search_path[j++] = out;
}
search_path[j] = NULL; /* NULL-terminate the now possibly shorter array */
}
else
{
@ -885,7 +911,6 @@ _shell_global_set_plugin (ShellGlobal *global,
global->stage = CLUTTER_STAGE (meta_get_stage_for_screen (global->meta_screen));
#ifdef HAVE_WAYLAND
if (meta_is_wayland_compositor ())
{
/* When Mutter is acting as its own display server then the
@ -907,7 +932,6 @@ _shell_global_set_plugin (ShellGlobal *global,
global->stage_xwindow = None;
}
else
#endif
{
global->stage_xwindow = clutter_x11_get_stage_window (global->stage);
global->ibus_window = gdk_x11_window_foreign_new_for_display (global->gdk_display,
@ -1436,9 +1460,12 @@ schedule_leisure_functions (ShellGlobal *global)
* in another thread.
*/
if (!global->leisure_function_id)
global->leisure_function_id = g_idle_add_full (G_PRIORITY_LOW,
run_leisure_functions,
global, NULL);
{
global->leisure_function_id = g_idle_add_full (G_PRIORITY_LOW,
run_leisure_functions,
global, NULL);
g_source_set_name_by_id (global->leisure_function_id, "[gnome-shell] run_leisure_functions");
}
}
/**

View File

@ -75,12 +75,13 @@ on_timeout (gpointer data)
}
static void
establish_timeout ()
establish_timeout (void)
{
if (timeout_id != 0)
g_source_remove (timeout_id);
timeout_id = g_timeout_add (opt_idle_timeout * 1000, on_timeout, NULL);
g_source_set_name_by_id (timeout_id, "[gnome-shell] on_timeout");
}
static void

View File

@ -223,6 +223,7 @@ shell_perf_log_set_enabled (ShellPerfLog *perf_log,
perf_log->statistics_timeout_id = g_timeout_add (STATISTIC_COLLECTION_INTERVAL_MS,
statistics_timeout,
perf_log);
g_source_set_name_by_id (perf_log->statistics_timeout_id, "[gnome-shell] statistics_timeout");
}
else
{

View File

@ -300,11 +300,14 @@ on_request_cancelled (GCancellable *cancellable,
gpointer user_data)
{
AuthRequest *request = user_data;
guint id;
/* post-pone to idle to handle GCancellable deadlock in
*
* https://bugzilla.gnome.org/show_bug.cgi?id=642968
*/
g_idle_add (handle_cancelled_in_idle, request);
id = g_idle_add (handle_cancelled_in_idle, request);
g_source_set_name_by_id (id, "[gnome-shell] handle_cancelled_in_idle");
}
static void

View File

@ -78,7 +78,10 @@ shell_recorder_src_update_memory_used (ShellRecorderSrc *src,
g_mutex_lock (src->mutex);
src->memory_used += delta;
if (src->memory_used_update_idle == 0)
src->memory_used_update_idle = g_idle_add (shell_recorder_src_memory_used_update_idle, src);
{
src->memory_used_update_idle = g_idle_add (shell_recorder_src_memory_used_update_idle, src);
g_source_set_name_by_id (src->memory_used_update_idle, "[gnome-shell] shell_recorder_src_memory_used_update_idle");
}
g_mutex_unlock (src->mutex);
}

View File

@ -311,6 +311,7 @@ recorder_add_redraw_timeout (ShellRecorder *recorder)
recorder->redraw_timeout = g_timeout_add (MAXIMUM_PAUSE_TIME,
recorder_redraw_timeout,
recorder);
g_source_set_name_by_id (recorder->redraw_timeout, "[gnome-shell] recorder_redraw_timeout");
}
}
@ -533,8 +534,11 @@ recorder_queue_redraw (ShellRecorder *recorder)
* we need to queue a "low priority redraw" after timeline updates
*/
if (recorder->state == RECORDER_STATE_RECORDING && recorder->redraw_idle == 0)
recorder->redraw_idle = g_idle_add_full (CLUTTER_PRIORITY_REDRAW + 1,
recorder_idle_redraw, recorder, NULL);
{
recorder->redraw_idle = g_idle_add_full (CLUTTER_PRIORITY_REDRAW + 1,
recorder_idle_redraw, recorder, NULL);
g_source_set_name_by_id (recorder->redraw_idle, "[gnome-shell] recorder_idle_redraw");
}
}
static void
@ -720,9 +724,12 @@ static void
recorder_add_update_pointer_timeout (ShellRecorder *recorder)
{
if (!recorder->update_pointer_timeout)
recorder->update_pointer_timeout = g_timeout_add (UPDATE_POINTER_TIME,
recorder_update_pointer_timeout,
recorder);
{
recorder->update_pointer_timeout = g_timeout_add (UPDATE_POINTER_TIME,
recorder_update_pointer_timeout,
recorder);
g_source_set_name_by_id (recorder->update_pointer_timeout, "[gnome-shell] recorder_update_pointer_timeout");
}
}
static void
@ -1336,9 +1343,12 @@ recorder_pipeline_on_memory_used_changed (ShellRecorderSrc *src,
return;
if (recorder->update_memory_used_timeout == 0)
recorder->update_memory_used_timeout = g_timeout_add (UPDATE_MEMORY_USED_DELAY,
recorder_update_memory_used_timeout,
recorder);
{
recorder->update_memory_used_timeout = g_timeout_add (UPDATE_MEMORY_USED_DELAY,
recorder_update_memory_used_timeout,
recorder);
g_source_set_name_by_id (recorder->update_memory_used_timeout, "[gnome-shell] recorder_update_memory_used_timeout");
}
}
static void

View File

@ -530,26 +530,15 @@ shell_screenshot_screenshot_window (ShellScreenshot *screenshot,
window_actor = CLUTTER_ACTOR (meta_window_get_compositor_private (window));
clutter_actor_get_position (window_actor, &actor_x, &actor_y);
if (include_frame || !meta_window_get_frame (window))
{
meta_window_get_outer_rect (window, &rect);
meta_window_get_frame_rect (window, &rect);
screenshot_data->screenshot_area.x = rect.x;
screenshot_data->screenshot_area.y = rect.y;
if (!include_frame)
meta_window_frame_rect_to_client_rect (window, &rect, &rect);
clip.x = rect.x - (gint) actor_x;
clip.y = rect.y - (gint) actor_y;
}
else
{
rect = *meta_window_get_rect (window);
screenshot_data->screenshot_area.x = (gint) actor_x + rect.x;
screenshot_data->screenshot_area.y = (gint) actor_y + rect.y;
clip.x = rect.x;
clip.y = rect.y;
}
screenshot_data->screenshot_area.x = rect.x;
screenshot_data->screenshot_area.y = rect.y;
clip.x = rect.x - (gint) actor_x;
clip.y = rect.y - (gint) actor_y;
clip.width = screenshot_data->screenshot_area.width = rect.width;
clip.height = screenshot_data->screenshot_area.height = rect.height;

View File

@ -40,6 +40,11 @@ void _shell_wm_show_tile_preview (ShellWM *wm,
MetaRectangle *tile_rect,
int tile_monitor);
void _shell_wm_hide_tile_preview (ShellWM *wm);
void _shell_wm_show_window_menu (ShellWM *wm,
MetaWindow *window,
MetaWindowMenuType menu,
int x,
int y);
gboolean _shell_wm_filter_keybinding (ShellWM *wm,
MetaKeyBinding *binding);

View File

@ -28,6 +28,7 @@ enum
KILL_WINDOW_EFFECTS,
SHOW_TILE_PREVIEW,
HIDE_TILE_PREVIEW,
SHOW_WINDOW_MENU,
FILTER_KEYBINDING,
CONFIRM_DISPLAY_CHANGE,
@ -135,6 +136,13 @@ shell_wm_class_init (ShellWMClass *klass)
0,
NULL, NULL, NULL,
G_TYPE_NONE, 0);
shell_wm_signals[SHOW_WINDOW_MENU] =
g_signal_new ("show-window-menu",
G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST,
0, NULL, NULL, NULL,
G_TYPE_NONE, 4,
META_TYPE_WINDOW, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT);
shell_wm_signals[FILTER_KEYBINDING] =
g_signal_new ("filter-keybinding",
G_TYPE_FROM_CLASS (klass),
@ -288,6 +296,15 @@ _shell_wm_hide_tile_preview (ShellWM *wm)
g_signal_emit (wm, shell_wm_signals[HIDE_TILE_PREVIEW], 0);
}
void
_shell_wm_show_window_menu (ShellWM *wm,
MetaWindow *window,
MetaWindowMenuType menu,
int x,
int y)
{
g_signal_emit (wm, shell_wm_signals[SHOW_WINDOW_MENU], 0, window, menu, x, y);
}
void
_shell_wm_minimize (ShellWM *wm,

View File

@ -94,6 +94,9 @@ st_box_layout_child_get_property (GObject *object,
break;
case CLUTTER_BOX_ALIGNMENT_END:
align = ST_ALIGN_END;
break;
default:
g_assert_not_reached ();
}
g_value_set_enum (value, align);
break;
@ -138,6 +141,9 @@ st_box_layout_child_set_property (GObject *object,
break;
case ST_ALIGN_END:
align = CLUTTER_BOX_ALIGNMENT_END;
break;
default:
g_assert_not_reached ();
}
g_object_set (meta, g_param_spec_get_name (pspec), align, NULL);
break;

View File

@ -599,8 +599,10 @@ st_entry_key_press_event (ClutterActor *actor,
didn't handle them */
/* paste */
if ((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_v)
if (((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_KEY_v) ||
((event->modifier_state & CLUTTER_SHIFT_MASK)
&& event->keyval == CLUTTER_KEY_Insert))
{
StClipboard *clipboard;

View File

@ -692,6 +692,7 @@ trough_paging_cb (StScrollBar *self)
PAGING_INITIAL_REPEAT_TIMEOUT,
(GSourceFunc) trough_paging_cb,
self);
g_source_set_name_by_id (self->priv->paging_source_id, "[gnome-shell] trough_paging_cb");
}
else if (self->priv->paging_event_no == 1)
{
@ -703,6 +704,7 @@ trough_paging_cb (StScrollBar *self)
PAGING_SUBSEQUENT_REPEAT_TIMEOUT,
(GSourceFunc) trough_paging_cb,
self);
g_source_set_name_by_id (self->priv->paging_source_id, "[gnome-shell] trough_paging_cb");
}
else
{

View File

@ -21,6 +21,8 @@
#include "config.h"
#define COGL_ENABLE_EXPERIMENTAL_API /* for cogl_framebuffer_allocate */
#include "st-texture-cache.h"
#include "st-private.h"
#include <gtk/gtk.h>
@ -1197,7 +1199,7 @@ load_sliced_image (GSimpleAsyncResult *result,
if (!g_file_get_contents (data->path, &buffer, &length, NULL))
goto out;
if (!gdk_pixbuf_loader_write (loader, buffer, length, NULL))
if (!gdk_pixbuf_loader_write (loader, (const guchar *) buffer, length, NULL))
goto out;
if (!gdk_pixbuf_loader_close (loader, NULL))

View File

@ -246,12 +246,15 @@ static void
on_icon_theme_changed (StTextureCache *cache,
StThemeContext *context)
{
guint id;
/* Note that an icon theme change isn't really a change of the StThemeContext;
* the style information has changed. But since the style factors into the
* icon_name => icon lookup, faking a theme context change is a good way
* to force users such as StIcon to look up icons again.
*/
g_idle_add ((GSourceFunc) changed_idle, context);
id = g_idle_add ((GSourceFunc) changed_idle, context);
g_source_set_name_by_id (id, "[gnome-shell] changed_idle");
}
/**

View File

@ -1443,6 +1443,9 @@ st_widget_reactive_notify (StWidget *widget,
st_widget_remove_style_pseudo_class (widget, "insensitive");
else
st_widget_add_style_pseudo_class (widget, "insensitive");
if (widget->priv->track_hover)
st_widget_sync_hover(widget);
}
static void
@ -1727,7 +1730,7 @@ st_widget_sync_hover (StWidget *widget)
device_manager = clutter_device_manager_get_default ();
pointer = clutter_device_manager_get_device (device_manager, VIRTUAL_CORE_POINTER_ID);
pointer_actor = clutter_input_device_get_pointer_actor (pointer);
if (pointer_actor)
if (pointer_actor && clutter_actor_get_reactive (CLUTTER_ACTOR (widget)))
st_widget_set_hover (widget, clutter_actor_contains (CLUTTER_ACTOR (widget), pointer_actor));
else
st_widget_set_hover (widget, FALSE);

View File

@ -24,7 +24,7 @@ function do_action_state_change(action) {
}
function main() {
Gtk.init(null, null);
Gtk.init(null);
Gdk.set_program_class('test-gjsgapp');
let app = new Gtk.Application({ application_id: 'org.gnome.Shell.GtkApplicationTest' });

View File

@ -230,7 +230,11 @@ if test "x$system" = xFedora ; then
if test ! "x$missing" = x; then
echo -n "Installing packages ... "
gpk-install-package-name $missing
missing_str=
for pkg in $missing ; do
missing_str="$missing_str${missing_str:+,}\"$pkg\""
done
gdbus call -e -d org.freedesktop.PackageKit -o /org/freedesktop/PackageKit -m org.freedesktop.PackageKit.Modify.InstallPackageNames 0 "[$missing_str]" "hide-finished,show-warnings"
echo "done"
fi
fi

View File

@ -18,7 +18,7 @@
# Only rebuild modules that have changed
build_policy = 'updated'
moduleset = 'gnome-apps-3.12'
moduleset = 'gnome-apps-3.14'
modules = [ 'meta-gnome-core-shell' ]