Compare commits

..

126 Commits

Author SHA1 Message Date
832240a80b shell-global: import environment from $XDG_RUNTIME_DIR/gnome/environment
environment variables are normally propagated from parent to child, but
they're used to convey information that's typically scoped to the
session. gnome-shell needs to know about environment variables that
are set in the session after it's already been started.

gnome-session now exports its environment to
$XDG_RUNTIME_DIR/gnome/environment so that programs in the session can
pick up on the latest environment variables.

This commit changes gnome-shell to propagate the gnome-session's latest
environment when launching new children.
2015-09-16 21:14:48 -04:00
629f408fe5 Bump version to 3.17.92
Update NEWS.
2015-09-16 17:20:30 +02:00
86c6ab3c01 Updated Italian translation 2015-09-15 11:34:41 +00:00
4a6ff94701 Updated Czech translation 2015-09-14 16:04:24 +02:00
e480b08d58 Updated Japanese translation 2015-09-14 00:20:39 +09:00
caf53861d1 Updated Kazakh translation 2015-09-12 16:08:38 +00:00
d0480648ba Updated Persian translation 2015-09-11 23:55:57 +04:30
eb8cfe799f Finnish translation update 2015-09-10 18:46:33 +03:00
b9f2541880 Updated Norwegian bokmål translation. 2015-09-07 19:31:59 +02:00
bde9b08bfe Updated Norwegian bokmål translation. 2015-09-07 19:29:28 +02:00
8a4c862633 background: fix a race condition when loading several animations
When loading several animations at the same time, the last call
overrides the result for all of them.

This commit caches all animations separately based on the source's
schemas.

https://bugzilla.gnome.org/show_bug.cgi?id=741453
2015-09-07 06:51:42 +02:00
785c90f4b8 background: fix indentation 2015-09-07 06:49:55 +02:00
dd6a11e4c7 Updated German translation 2015-09-05 19:42:18 +00:00
64e9503adb Updated Korean translation 2015-09-06 02:06:45 +09:00
36c885bf34 style: Update from sass 2015-09-04 19:15:42 +02:00
ad7cde805d style: Update high-contrast theme
This was missed in fa0e54edbb ...
2015-09-04 18:56:11 +02:00
2c2c67f4dc Fix accidental gnome-shell-sass downgrade
... from commit 030a22d795.
2015-09-04 18:46:11 +02:00
cc4f8dfab0 Updated Kazakh translation 2015-09-04 15:51:16 +00:00
0fb13608c5 Bump version to 3.17.91
Update NEWS.
2015-09-03 15:54:26 +02:00
09dbe17da0 loginDialog: Limit user list to the available height
We currently will always allocate the user list's preferred size, so it
will grow indefinitely and never scroll; limit the height instead to
get the desired scrolling behavior when necessary.

https://bugzilla.gnome.org/show_bug.cgi?id=754525
2015-09-03 15:45:39 +02:00
fdd347c9aa po: Update French translation (remove "à large bande") 2015-09-01 11:11:38 +02:00
572095515b Updated French translation 2015-09-01 08:17:16 +00:00
f2d4aa0822 authPrompt: hide/stop spinner after verfiication completes
When the user successfully types their password, we should hide
the spinner from the button well right away, so it doesn't
consume resources until reset (which may happen significantly later
if the user is vt switched away)

https://bugzilla.gnome.org/show_bug.cgi?id=753891
2015-08-31 15:24:27 -04:00
030a22d795 authPrompt: stop spinner after its hidden
The code previously tried to stop spinner after it was hidden, but
due to an incorrect check was only stoppig it after it was shown.

Also, it was only stopping after hiding due to an animation, and
failing to stop it in the non-animated case.

This left the spinner hidden and running while VT switched away
from the login screen, only stopping when the auth prompt was
reset when switching back.

https://bugzilla.gnome.org/show_bug.cgi?id=753891
2015-08-31 15:19:26 -04:00
c70afcdb44 Updated Hungarian translation 2015-08-31 17:42:42 +00:00
526d6c03b8 Updated Hebrew translation 2015-08-30 21:17:10 +03:00
261b55300d Punjabi Translation updated 2015-08-30 09:28:47 -05:00
e13bfd9a17 Updated Greek translation 2015-08-30 12:04:22 +03:00
e096d18bac Updated Hebrew translation 2015-08-27 23:49:12 +03:00
9460f0e4f3 Updated Dutch translation Master 3.18 2015-08-26 16:45:43 +02:00
e6591f52ac Updated Galician translations 2015-08-26 00:34:43 +02:00
07e3d1fd5c Updated Galician translations 2015-08-26 00:10:39 +02:00
1fbc6b24c8 Updated Turkish translation 2015-08-25 20:05:27 +00:00
982777be94 Updated Chinese (Taiwan) translation 2015-08-25 13:00:33 +00:00
6610a34ad0 Updated Spanish translation 2015-08-25 11:30:58 +02:00
bfa8a0441a Updated Spanish translation 2015-08-25 11:05:27 +02:00
7723622ec7 Updated Portuguese translation 2015-08-25 05:18:36 +00:00
6bcc8c70ef Updated Polish translation 2015-08-24 15:32:49 +02:00
d114d5f95a Fixes to Catalan translation 2015-08-21 18:25:30 +02:00
b5c734da42 Updated Slovak translation 2015-08-21 08:43:23 +00:00
2077bb94c1 Updated Russian translation 2015-08-20 19:58:12 +00:00
65a4ee7fb4 Updated Lithuanian translation 2015-08-20 22:37:07 +03:00
debf293298 Update Catalan translation 2015-08-20 19:25:14 +02:00
a0df3e7d1e network: Unify capitalization in newly changed strings
After fa0e54edbb some strings were inconsistent.
2015-08-20 17:07:46 +02:00
0d67c2d164 Updated Slovak translation 2015-08-20 12:29:10 +00:00
682bd7b622 Bump version to 3.17.90
Update NEWS.
2015-08-20 13:53:36 +02:00
fa0e54edbb status: Refine system status menu
* switch to a one-column layout (and adjust strings/widths
   accordingly
 * remove separator before system menu
 * add link to account settings to user submenu for consistency

https://bugzilla.gnome.org/show_bug.cgi?id=751377
2015-08-20 13:53:36 +02:00
5a0b209663 build: Bump EDS requirement to 3.17.2
In conjunction with 444fa2e0ab
2015-08-11 16:58:22 +02:00
7e8859fd0e Updated Brazilian Portuguese translation 2015-08-10 23:32:43 +00:00
444fa2e0ab calendar-server: Adjust to EDS service version bump 2015-08-10 17:30:38 +02:00
a31455b921 Updated Turkish translation 2015-08-09 17:03:20 +00:00
ac0213a516 viewSelector: Make the compose key focus the search entry
This way composed characters can be used to start searches.

https://bugzilla.gnome.org/show_bug.cgi?id=753320
2015-08-07 15:34:34 +02:00
45a6e2c305 viewSelector: Make backspace focus the search entry
Commit fb0cf64536 regressed this because
there's no unicode character for backspace.

https://bugzilla.gnome.org/show_bug.cgi?id=753319
2015-08-07 15:34:34 +02:00
11cbd396c0 calendar: Tweak message list style
* make icons smaller
 * use small font size in body
 * add some spacing between secondary item and title

https://bugzilla.gnome.org/show_bug.cgi?id=749958
2015-08-05 17:34:11 +02:00
a343445cd2 calendar: Vertically center message icon rather than top-align it
... as requested by the designers.

https://bugzilla.gnome.org/show_bug.cgi?id=749958
2015-08-05 17:33:19 +02:00
be3d62487c calendar: Minor cleanup
Add a constant for the icon size used in message list entries rather
than hardcoding it twice.

https://bugzilla.gnome.org/show_bug.cgi?id=749958
2015-08-05 17:33:19 +02:00
58905bd01a telepathyClient: Use protocol-specific policy
Since commit 79c04c93e4, we launch Polari instead of Empathy when
activating a chat notification for an IRC channel. It therefore makes
sense to follow Polari's notification policy for those notifications
rather than Empathy's.

https://bugzilla.gnome.org/show_bug.cgi?id=752881
2015-08-05 17:22:10 +02:00
08506eac2d gdm: clear user verifier when finished with it
We only need the user verifier for the purpose of user verification.
Once it's complete we should clear it so it doesn't get in the way
later.

This fixes a bug introduced in commit 3c8c5a5570 that leads to the
user session crashing when the login screen is reactivated.

https://bugzilla.gnome.org/show_bug.cgi?id=753181
2015-08-05 09:40:17 -04:00
02c6b0374d gdm: make user list fade-in on vt switch more reliable
We fade out the authentication prompt when a user successfully
logs into a user session. We reset it and fade it back in when
the user switches back to the login screen VT.

The problem is, we only fade it back in if the auth prompt status is
VERIFICATION_SUCCEEDED.  It's possible for it to be NOT_VERIFYING
if the authprompt gets reset for some other reason in the interim.

This commit changes the check to be more precise. We now only skip
the fade-in, if we're already faded in, and we only skip the reset if
we're already reset.

https://bugzilla.gnome.org/show_bug.cgi?id=753181
2015-08-05 09:40:15 -04:00
0722c06275 modalDialog: Match gtk+ buttons style
Follow the design we have in gtk+ for buttons dialogs,
which are at the bottom and they expand full width, having
the same amount of space for each one.

Also, since this removes any space for non-button widgets
in the button area, move the spinner present in the auth prompt
dialog next to the password entry.

https://bugzilla.gnome.org/show_bug.cgi?id=746108
2015-08-05 14:44:47 +02:00
17a4044d97 data: Revert accidental submodule change 2015-08-05 14:24:42 +02:00
27a7194634 spinner: use a 60fps spinner
- sync with gtk+ and provide a fluid spinner

https://bugzilla.gnome.org/show_bug.cgi?id=753064
2015-08-05 13:44:32 +02:00
d73f560bcc Update Catalan translation 2015-08-02 22:43:05 +02:00
e92f43b83e shell: Fix C99'ism 2015-07-31 20:26:47 +02:00
fed79ce4e6 appDisplay: Handle non-UTF8 filename encodings more gracefully
It may be 2015, but users still stumble upon the occasional .desktop
file that uses a filename encoding other than UTF-8. We currently
fail quite spectacularly in that case by not displaying any apps at
all - handle this case more gracefully, by only filtering out the
offending apps.

https://bugzilla.gnome.org/show_bug.cgi?id=651503
2015-07-31 16:52:42 +02:00
fc45cf03bf windowMenu: Use CHECK ornament rather than DOT
The dot suggests a radio action, while the items are actually toggles;
in the app menu we use checkmarks in that case, so do the same here.
2015-07-30 18:11:43 +02:00
efde11a0f3 theme: Make menu ornament slightly wider
The existing width works well enough for a narrow character like the dot,
but doesn't leave any whitespace for a wider one like the checkmark.

https://bugzilla.gnome.org/show_bug.cgi?id=741366
2015-07-30 17:31:33 +02:00
fb951ff9b5 Updated Norwegian bokmål translation. 2015-07-30 11:36:32 +02:00
f5865e895e magnifier: Avoid caret/focus viewport changes while the pointer moves
If there's a caret or focus move we should delay it until the pointer
is stationary for a little while so as to avoid jittery and spurious
viewport movements.

https://bugzilla.gnome.org/show_bug.cgi?id=752138
2015-07-27 18:04:44 +02:00
b8c2d4c6c7 Updated Czech translation 2015-07-24 22:04:34 +02:00
778ad49ab4 authPrompt: allow cancellation before verification starts
The user should be allowed to cancel if verification hasn't
started yet and they're typing in their username. This
commit changes the authPrompt cancel function to not
ignore such requests.

https://bugzilla.gnome.org/show_bug.cgi?id=752739
2015-07-24 09:44:24 -04:00
fe7dd1305f authPrompt: don't allow next if entry is empty
Normally the user isn't allowed to proceed passed
the username question until they've filled it in.
To ensure this, the authprompt code desensitizes
the next button when the number of characters change to
zero.

Unfortunately it fails to desensitize the next button
up front when the entry starts out empty.

This commit addresses that bug.

https://bugzilla.gnome.org/show_bug.cgi?id=752739
2015-07-24 09:44:23 -04:00
378a3df5ea authPrompt: set next button to next when asking for username
If the next button ever gets set to Sign In, it won't
get reset to next until the next question asked by pam.

This commit ensures it gets reset to Next when asking
for the username.

https://bugzilla.gnome.org/show_bug.cgi?id=752739
2015-07-24 09:44:21 -04:00
e63b81d69c keyboard: Don't watch D-Bus services we won't use
ff1b76f4c7 made gnome-shell stop looking
at the org.gnome.SettingsDaemon.Cursor service's property values, but we
still monitored the service itself.

https://bugzilla.gnome.org/show_bug.cgi?id=752779
2015-07-23 15:07:10 +02:00
c2fa2cdd8a Bump version to 3.17.4
Update NEWS.
2015-07-23 12:48:58 +02:00
6f215427f8 overview: Move comment 2015-07-23 12:43:28 +02:00
67ed4e0570 overview: Remove unused variable 2015-07-23 12:42:45 +02:00
8a15178557 Update Aragonese translation 2015-07-23 12:16:58 +02:00
f3ecfab378 windowManager: Add TouchpadWorkspaceSwitchAction
This object (not really a Clutter.GestureAction) sets up a captured-event
handler, which exclusively looks for 4 finger touchpad swipes, emitting
an ::activated signal under the same terms than WorkspaceSwitchAction.

https://bugzilla.gnome.org/show_bug.cgi?id=752250
2015-07-22 21:19:51 +02:00
804563d5b2 windowManager: refactor WorkspaceSwitchAction callback into separate function
This will be used by the touchpad-specific "action" too, so put it in a
shared place.

https://bugzilla.gnome.org/show_bug.cgi?id=752250
2015-07-22 21:19:33 +02:00
c3e5d983b9 st: Replace deprecated key symbols 2015-07-22 16:00:56 +02:00
d21edcfed5 st: Replace deprecated macros 2015-07-22 16:00:55 +02:00
9b69a45eee Update gvc submodule to the latest commit from master
This avoids unnecessary calls to match_card_port_with_existing_device()
when connecting to a bluetooth device from the shell's top panel.

https://bugzilla.gnome.org/show_bug.cgi?id=752675
2015-07-21 16:11:01 +01:00
7424ee755a shell-app: Stay consistent about application states
When the last interesting window of an app-backed window is removed,
we'll transition it back to STOPPED, but we transition the state and
send out the signal before we clear the running state.

This means that any listeners to the state-changed signal might
encounter a window-backed app that has a running state, but no
windows. If they call, e.g. shell_app_get_name, while in this state,
they'll encounter an assertion fail.
2015-07-16 17:09:39 -07:00
ff664fd1d8 shell-app: Track the starting state correctly
Apps that are starting might have uninteresting windows like splash
screens pop up and then go away (like LibreOffice), even when
startup-notification hasn't completed yet. In those cases, we don't
want to transition the app back to stopped -- it should remain in
the running state.
2015-07-16 15:21:57 -07:00
fd3f03580d gdm: unconditionally cancel auth user verifier on reset
We currently only cancel the user verifier on reset if
verifying, but that means we don't properly cancel it when
asking for a username at the Not Listed screen.

The object already handles getting called when there is
nothing to cancel, so just cancel it unconditionally.

https://bugzilla.gnome.org/show_bug.cgi?id=752438
2015-07-16 09:41:39 -04:00
a09150846a Updated Hebrew translation 2015-07-16 13:29:05 +03:00
f2a9c55637 Fix translator comment
https://bugzilla.gnome.org/show_bug.cgi?id=659969
2015-07-15 22:43:23 +02:00
eaa3f83e46 Add translator comment
https://bugzilla.gnome.org/show_bug.cgi?id=659969
2015-07-15 12:37:37 +02:00
e786cc1454 Updated Spanish translation 2015-07-13 10:35:40 +02:00
cd0c632fcb theme: make app icons less fuzzy
- force 16x16px
- re-render SASS brings in some changes from
  gnome-shell-sass

https://bugzilla.gnome.org/show_bug.cgi?id=747932
2015-07-08 18:09:46 +02:00
d5f248cb82 Updated Slovenian translation 2015-07-08 15:47:02 +02:00
6a800abe06 Updated Friulian translation 2015-07-06 13:13:04 +00:00
fe265554a7 windowManager: Connect to size-changed signal
Whoops, forgot this one.
2015-07-05 23:10:51 -07:00
7305466765 Adapt to new size-change API
We don't implement any maximize transitions (yet??), but we still have
the skeleton there. Let's keep it up to date.
2015-07-05 23:09:24 -07:00
9ac55a98f1 Updated Portuguese translation 2015-07-04 05:40:46 +00:00
a1149fb6ad build: Bump GIO requirement
... for g_settings_schema_list_keys().

https://bugzilla.gnome.org/show_bug.cgi?id=751921
2015-07-03 22:42:37 +02:00
dfc4cc4aaf windowManager: Handle missing overrides settings
shell_global_get_overrides_settings() may return %NULL in case of
custom shell modes (i.e. not the default and classic ones); while
this is not officially encouraged, we should still handle it rather
than throw an error.

https://bugzilla.gnome.org/show_bug.cgi?id=751921
2015-07-03 22:25:29 +02:00
ef7541291b Updated German translation 2015-07-03 17:25:53 +00:00
248a3e6b7e Bump version to 3.17.3
Update NEWS.
2015-07-02 14:07:14 +02:00
6b1e381750 windowAttentionHandler: Fix whitespace 2015-07-01 19:14:13 +02:00
feaf6108f9 windowAttentionHandler: Allow extensions to disconnect the signal
That way extensions can easily disable / remove the "is ready"
notification.

https://bugzilla.gnome.org/show_bug.cgi?id=748846
2015-07-01 19:04:21 +02:00
9ad104585d Updated Portuguese translation 2015-06-29 22:26:47 +00:00
7c44af3616 osdMonitorLabeler: avoid tweening the labels
The control center will call this method when the configuration dialog
for a display opens/closes, which will cause the same labels to quickly
fade out and in again, looking like it's flickering.

This commit fixes the issue by removing the tweens altogether.

https://bugzilla.gnome.org/show_bug.cgi?id=751599
2015-06-29 14:57:03 -07:00
0599bf41b0 Updated Slovak translation 2015-06-29 10:41:59 +00:00
eac303f84c app-system: Improve StartupWMClass heuristics
Our StartUpWMClass heuristics use a StartupWMClass -> .desktop ID
mapping built from the list of all installed applications. In case
of multiple .desktop files setting the same StartupWMClass, we
currently simply pick the last one returned by g_app_info_get_all (),
which can be a bit surprising:
A window with WM_CLASS 'emacs', launched through a .desktop file
named 'emacs.desktop' with a StartupWMClass of 'emacs' maps to ...
'emacsclient.desktop'!
Make this case a bit less random by preferring the app info whose
ID matches the StartupWMClass.

https://bugzilla.gnome.org/show_bug.cgi?id=751541
2015-06-26 19:21:46 +02:00
7bdd1c625c AllView: prevent accessing a NULL effect
In some cases we might be allocated a size such that
this._grid.topPadding and this._grid.bottomPadding are both 0 which
means that the ScrollView fade effect gets removed. In that case don't
try to access the effect since it will be NULL.

https://bugzilla.gnome.org/show_bug.cgi?id=750714
2015-06-26 18:09:17 +02:00
0003760fd9 gdm: fix banner allocation computation
The code to figure how how much room that banner had was wrong.
This commit fixes it.

https://bugzilla.gnome.org/show_bug.cgi?id=751517
2015-06-25 16:04:14 -04:00
eafb8c8e38 Updated Tajik translation 2015-06-25 05:43:44 +00:00
60c8105559 Updated Russian translation 2015-06-23 21:29:03 +00:00
54626c6f7e Updated Hungarian translation 2015-06-23 11:13:06 +00:00
cca528a630 windowMenu: Reinstate left/right window movement
The menu items to move a window to the left/right workspaces were
removed when the window menu was implemented in GNOME Shell.  This
is OK for the default vertical layout but not for alternatives.

https://bugzilla.gnome.org/show_bug.cgi?id=751344
2015-06-22 17:57:01 -07:00
530193a3a2 windowManager: Replace deprecated g_settings_list_keys() 2015-06-19 14:05:32 +02:00
52e3149040 main: Replace deprecated g_settings_list_keys() 2015-06-19 14:05:32 +02:00
ad297ea9dc main: Fix a memory leak
We are pointlessly calling g_settings_list_keys() twice, without
freeing the result from the first call.
2015-06-19 14:05:32 +02:00
2015fc97dc shell-recorder-src: rework queue handling
Use our own locking and queue instead of async_queue.
Implement unlock and unlock_stop to make the create function return
FLUSHING. This is important to be able to pause the pipeline after some
error occured in the pipeline.
Implement start/stop to clear the queue and its state.
2015-06-16 09:03:30 +02:00
35889a0f7d Update configure.ac to check for libsystemd
https://bugzilla.gnome.org/show_bug.cgi?id=751016
2015-06-15 22:02:54 +02:00
dcd84a4b53 Updated German translation 2015-06-13 18:07:18 +00:00
01374989b1 messageTray: Remove _fixMarkup() function
Commit 053e54f944 copied it to calendar, and since commit 15e42c4d5,
the original is no longer used.
2015-06-11 14:41:34 +02:00
f300462003 tests: Remove format test
The format() function was moved to gjs a long time ago.
2015-06-11 14:33:21 +02:00
1e4da1b99c Updated Russian translation 2015-06-09 23:10:55 +00:00
e1de6cb98d Updated Turkish translation 2015-06-09 17:11:52 +00:00
59a18c4ead ShellKeyringPrompt: Strip out mnemonics indicators from labels
Currently GNOME Shell doesn't support mnemonics and prompters may
send labels with it.

Remove the mnemonics indicator for now.

Signed-off-by: Stef Walter <stefw@redhat.com>
 * Fixed style issue

https://bugzilla.gnome.org/show_bug.cgi?id=750465
2015-06-09 11:45:47 +02:00
b881e4b62a Updated Greek translation 2015-06-08 10:36:16 +03:00
7060ae077b Updated Swedish translation 2015-06-05 09:33:07 +00:00
a7b0910566 Revert "Revert "keyboard: Handle touch events""
And make these only handled on wayland. There's a plethora of issues
around touch passive grab and touch/pointer doubly handling to use
these right away on X11, so we stick to single-touch/pointer there.

This reverts commit 032a688a72.

https://bugzilla.gnome.org/show_bug.cgi?id=750287
2015-06-02 17:57:55 +02:00
89 changed files with 14910 additions and 11058 deletions

79
NEWS
View File

@ -1,3 +1,82 @@
3.17.92
=======
* Fix race when loading multiple background animations [Josselin; #741453]
Contributors:
Michael Biebl, Josselin Mouette, Florian Müllner
Translations:
Baurzhan Muftakhidinov [kk], Changwoo Ryu [ko], Christian Kirbach [de],
Kjartan Maraas [nb], Jiri Grönroos [fi], Arash Mousavi [fa],
Jiro Matsuzawa [ja], Marek Černocký [cs], Milo Casagrande [it]
3.17.91
=======
* Fix login screen spinner causing wakeups while VT-switched away
[Ray, Rui; #753891]
* Fix scrolling of user list on login screen [Florian; #754525]
Contributors:
Piotr Drąg, Rui Matos, Florian Müllner, Ray Strode
Translations:
Dušan Kazik [sk], Jordi Mas [ca], Aurimas Černius [lt], Stas Solovey [ru],
Piotr Drąg [pl], Pedro Albuquerque [pt], Daniel Mustieles [es],
Chao-Hsiung Liao [zh_TW], Muhammet Kara [tr], Fran Dieguez [gl],
Hannie Dumoleyn [nl], Yosef Or Boczko [he], Tom Tryfonidis [el],
A S Alam [pa], Balázs Úr [hu], Alexandre Franke [fr], Frédéric Péters [fr]
3.17.90
=======
* Avoid caret/focus viewport changes during pointer movement [Rui; #752138]
* Match GTK+'s modal dialogs for system modal dialogs [Carlos; #746108]
* Refine message list style [Florian; #749958]
* Fix type-ahead behavior for backspace and compose key [Rui; #753319, #753320]
* Refine the system status menu [Florian; #751377]
* Misc. bug fixes and cleanups [Bastien, Ray, Florian, Jakub; #752779, #752739,
#741366, #651503, #753064, #753181, #752881]
Contributors:
Rui Matos, Florian Müllner, Bastien Nocera, Carlos Soriano, Jakub Steiner,
Ray Strode, Rico Tzschichholz
Translations:
Marek Černocký [cs], Kjartan Maraas [nb], Jordi Mas [ca], Muhammet Kara [tr],
Enrico Nicoletto [pt_BR]
3.17.4
======
* Fix fuzziness of app menu icon [Jakub; #747932]
* Implement 4 finger swipe gesture for touchpads [Carlos; #752250]
* Misc. bug fixes [Florian, Alexandre, Piotr, Ray, Mario; #751921, #659969,
#752438, #752675]
Contributors:
Piotr Drąg, Alexandre Franke, Carlos Garnacho, Florian Müllner,
Mario Sanchez Prada, Jakub Steiner, Jasper St. Pierre, Ray Strode
Translations:
Benjamin Steinwender [de], Pedro Albuquerque [pt], Fabio Tomat [fur],
Matej Urbančič [sl], Daniel Mustieles [es], Yosef Or Boczko [he],
Daniel Martinez [an]
3.17.3
======
* Handle touch events in OSK on wayland [Rui; #750287]
* Reinstate left/right movement to window menu [Ron; #751344]
* Allow extensions to disable "Window is ready" notification [Adel; #748846]
* Misc. bug fixes [Watson, Michael, Ray, Rui, Florian, Cosimo; #750465,
#751016, #751517, #750714, #751541, #751599]
Contributors:
Michael Biebl, Cosimo Cecchi, Adel Gadllah, Rui Matos, Florian Müllner,
Ray Strode, Wim Taymans, Ron Yorston, Watson Yuuma Sato
Translations:
Sebastian Rasmussen [sv], Dimitris Spingos [el], Muhammet Kara [tr],
Stas Solovey [ru], Benjamin Steinwender [de], Balázs Úr [hu],
Victor Ibragimov [tg], Dušan Kazik [sk], Pedro Albuquerque [pt]
3.17.2
======
* Remove StTable widget [Florian; #703833]

View File

@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.17.2],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[3.17.92],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_SRCDIR([src/shell-global.c])
@ -63,8 +63,8 @@ AC_ARG_ENABLE([systemd],
[enable_systemd=$enableval],
[enable_systemd=auto])
AS_IF([test x$enable_systemd != xno], [
AC_MSG_CHECKING([for libsystemd-journal])
PKG_CHECK_EXISTS([libsystemd-journal],
AC_MSG_CHECKING([for libsystemd])
PKG_CHECK_EXISTS([libsystemd],
[have_systemd=yes
AC_DEFINE([HAVE_SYSTEMD], [1], [Define if we have systemd])],
[have_systemd=no])
@ -74,13 +74,13 @@ AS_IF([test x$enable_systemd != xno], [
AC_MSG_RESULT($enable_systemd)
CLUTTER_MIN_VERSION=1.21.5
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
GOBJECT_INTROSPECTION_MIN_VERSION=1.45.4
GJS_MIN_VERSION=1.39.0
MUTTER_MIN_VERSION=3.17.2
MUTTER_MIN_VERSION=3.17.92
GTK_MIN_VERSION=3.15.0
GIO_MIN_VERSION=2.37.0
GIO_MIN_VERSION=2.45.3
LIBECAL_MIN_VERSION=3.5.3
LIBEDATASERVER_MIN_VERSION=3.13.90
LIBEDATASERVER_MIN_VERSION=3.17.2
TELEPATHY_GLIB_MIN_VERSION=0.17.5
POLKIT_MIN_VERSION=0.100
STARTUP_NOTIFICATION_MIN_VERSION=0.11
@ -106,7 +106,7 @@ SHARED_PCS="gio-unix-2.0 >= $GIO_MIN_VERSION
polkit-agent-1 >= $POLKIT_MIN_VERSION
gcr-base-3 >= $GCR_MIN_VERSION"
if test x$have_systemd = xyes; then
SHARED_PCS="${SHARED_PCS} libsystemd-journal"
SHARED_PCS="${SHARED_PCS} libsystemd"
fi
PKG_CHECK_MODULES(GNOME_SHELL, $SHARED_PCS)

View File

@ -51,6 +51,7 @@
</key>
<key name="looking-glass-history" type="as">
<default>[]</default>
<!-- Translators: looking glass is a debugger and inspector tool, see https://live.gnome.org/GnomeShell/LookingGlass -->
<_summary>History for the looking glass dialog</_summary>
</key>
<key name="always-show-log-out" type="b">

View File

@ -37,14 +37,13 @@ stage {
icon-shadow: 0 1px black; }
.button:focus {
color: #eeeeec;
border-color: #215d9c;
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black; }
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.button:insensitive {
color: #7f7f7f;
color: gray;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(62, 67, 68, 0.7);
background-color: rgba(62, 67, 69, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
@ -52,9 +51,46 @@ stage {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button {
border-right-width: 1px;
color: #eeeeec;
background-color: #2e3436;
border-color: rgba(0, 0, 0, 0.7);
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
padding: 12px; }
.modal-dialog-linked-button:insensitive {
color: gray;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(62, 67, 69, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button:active {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button:focus {
color: #eeeeec;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.modal-dialog-linked-button:first-child {
border-radius: 0px 0px 0px 6px; }
.modal-dialog-linked-button:last-child {
border-right-width: 0px;
border-radius: 0px 0px 6px 0px; }
.modal-dialog-linked-button:first-child:last-child {
border-right-width: 0px;
border-radius: 0px 0px 6px 6px; }
/* Entries */
StEntry {
@ -71,8 +107,8 @@ StEntry {
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
border-color: rgba(166, 166, 166, 0.5); }
StEntry:insensitive {
color: #7f7f7f;
border-color: #0d0d0d;
color: gray;
border-color: #0e0e0e;
box-shadow: none; }
StEntry StIcon.capslock-warning {
icon-size: 16px;
@ -95,10 +131,10 @@ StScrollBar {
background-color: transparent; }
StScrollBar StButton#vhandle, StScrollBar StButton#hhandle {
border-radius: 8px;
background-color: #000;
background-color: #999999;
margin: 3px; }
StScrollBar StButton#vhandle:hover, StScrollBar StButton#hhandle:hover {
background-color: #1a1a1a; }
background-color: #cccccc; }
StScrollBar StButton#vhandle:active, StScrollBar StButton#hhandle:active {
background-color: #215d9c; }
@ -106,7 +142,7 @@ StScrollBar {
.slider {
height: 1em;
-slider-height: 0.3em;
-slider-background-color: #0d0d0d;
-slider-background-color: #0e0e0e;
-slider-border-color: black;
-slider-active-background-color: #215d9c;
-slider-active-border-color: #184472;
@ -160,10 +196,11 @@ StScrollBar {
background-color: white; }
.modal-dialog {
border-radius: 5px;
border-radius: 9px;
color: #eeeeec;
background-color: rgba(23, 25, 26, 0.95);
border: 3px solid rgba(238, 238, 236, 0.5);
border: 3px solid rgba(238, 238, 236, 0.5); }
.modal-dialog .modal-dialog-content-box {
padding: 24px; }
.modal-dialog .run-dialog-entry {
width: 20em;
@ -179,10 +216,6 @@ StScrollBar {
color: #d6d6d1;
padding-bottom: .4em; }
.button-dialog-button-box {
spacing: 18px;
padding-top: 48px; }
.show-processes-dialog-subject,
.mount-question-dialog-subject,
.end-session-dialog-subject {
@ -411,7 +444,7 @@ StScrollBar {
.popup-menu-ornament {
text-align: right;
width: 1em; }
width: 1.2em; }
.popup-menu-boxpointer,
.candidate-popup-boxpointer {
@ -702,7 +735,7 @@ StScrollBar {
border-left-width: 1px; }
.calendar-nonwork-day {
color: #7f7f7f; }
color: gray; }
.calendar-today {
font-weight: bold;
@ -754,7 +787,12 @@ StScrollBar {
padding: 8px 8px 8px 0px; }
.message-icon-bin > StIcon {
icon-size: 48px; }
icon-size: 32px; }
.message-secondary-bin:ltr {
padding-left: 8px; }
.message-secondary-bin:rtl {
padding-right: 8px; }
.message-secondary-bin {
color: #999999; }
@ -763,14 +801,20 @@ StScrollBar {
icon-size: 16px; }
.message-title {
font-weight: bold; }
font-weight: bold;
font-size: 1.1em; }
.message-content {
padding: 8px; }
padding: 8px;
font-size: .9em; }
.system-switch-user-submenu-icon {
icon-size: 24px;
border: 1px solid rgba(255, 255, 255, 0.4); }
.system-switch-user-submenu-icon.user-icon {
icon-size: 20px;
padding: 0 2px; }
.system-switch-user-submenu-icon.default-icon {
icon-size: 16px;
padding: 0 4px; }
#appMenu {
spinner-image: url("resource:///org/gnome/shell/theme/process-working.svg");
@ -834,7 +878,8 @@ StScrollBar {
min-width: 470px; }
.nm-dialog-content {
spacing: 20px; }
spacing: 20px;
padding: 24px; }
.nm-dialog-header-hbox {
spacing: 10px; }
@ -1016,7 +1061,7 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: none;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.app-view-control:first-child {
@ -1335,10 +1380,9 @@ StScrollBar {
color: white; }
.keyboard-key:focus {
color: #eeeeec;
border-color: #215d9c;
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black; }
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.keyboard-key:hover, .keyboard-key:checked {
color: white;
border-color: rgba(0, 0, 0, 0.7);
@ -1350,7 +1394,7 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: none;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.keyboard-key:grayed {
@ -1443,13 +1487,13 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #1c5187;
box-shadow: none;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.login-dialog .modal-dialog-button:default:insensitive {
color: #7f7f7f;
color: gray;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(62, 67, 68, 0.7);
background-color: rgba(62, 67, 69, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }

View File

@ -37,14 +37,13 @@ stage {
icon-shadow: 0 1px black; }
.button:focus {
color: #eeeeec;
border-color: #215d9c;
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black; }
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.button:insensitive {
color: #939695;
color: #949796;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(66, 71, 73, 0.7);
background-color: rgba(66, 72, 73, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
@ -52,9 +51,46 @@ stage {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button {
border-right-width: 1px;
color: #eeeeec;
background-color: #2e3436;
border-color: rgba(0, 0, 0, 0.7);
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
padding: 12px; }
.modal-dialog-linked-button:insensitive {
color: #949796;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(66, 72, 73, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button:active {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.modal-dialog-linked-button:focus {
color: #eeeeec;
text-shadow: 0 1px black;
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.modal-dialog-linked-button:first-child {
border-radius: 0px 0px 0px 6px; }
.modal-dialog-linked-button:last-child {
border-right-width: 0px;
border-radius: 0px 0px 6px 0px; }
.modal-dialog-linked-button:first-child:last-child {
border-right-width: 0px;
border-radius: 0px 0px 6px 6px; }
/* Entries */
StEntry {
@ -71,8 +107,8 @@ StEntry {
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
border-color: rgba(154, 154, 142, 0.5); }
StEntry:insensitive {
color: #939695;
border-color: #323636;
color: #949796;
border-color: #333636;
box-shadow: none; }
StEntry StIcon.capslock-warning {
icon-size: 16px;
@ -95,10 +131,10 @@ StScrollBar {
background-color: transparent; }
StScrollBar StButton#vhandle, StScrollBar StButton#hhandle {
border-radius: 8px;
background-color: #393f3f;
background-color: #a6a8a7;
margin: 3px; }
StScrollBar StButton#vhandle:hover, StScrollBar StButton#hhandle:hover {
background-color: #515a5a; }
background-color: #cacbc9; }
StScrollBar StButton#vhandle:active, StScrollBar StButton#hhandle:active {
background-color: #215d9c; }
@ -106,7 +142,7 @@ StScrollBar {
.slider {
height: 1em;
-slider-height: 0.3em;
-slider-background-color: #323636;
-slider-background-color: #333636;
-slider-border-color: #1c1f1f;
-slider-active-background-color: #215d9c;
-slider-active-border-color: #184472;
@ -160,10 +196,11 @@ StScrollBar {
background-color: white; }
.modal-dialog {
border-radius: 5px;
border-radius: 9px;
color: #eeeeec;
background-color: rgba(23, 25, 26, 0.95);
border: 3px solid rgba(238, 238, 236, 0.5);
border: 3px solid rgba(238, 238, 236, 0.5); }
.modal-dialog .modal-dialog-content-box {
padding: 24px; }
.modal-dialog .run-dialog-entry {
width: 20em;
@ -179,10 +216,6 @@ StScrollBar {
color: #d6d6d1;
padding-bottom: .4em; }
.button-dialog-button-box {
spacing: 18px;
padding-top: 48px; }
.show-processes-dialog-subject,
.mount-question-dialog-subject,
.end-session-dialog-subject {
@ -411,7 +444,7 @@ StScrollBar {
.popup-menu-ornament {
text-align: right;
width: 1em; }
width: 1.2em; }
.popup-menu-boxpointer,
.candidate-popup-boxpointer {
@ -702,7 +735,7 @@ StScrollBar {
border-left-width: 1px; }
.calendar-nonwork-day {
color: #939695; }
color: #949796; }
.calendar-today {
font-weight: bold;
@ -754,7 +787,12 @@ StScrollBar {
padding: 8px 8px 8px 0px; }
.message-icon-bin > StIcon {
icon-size: 48px; }
icon-size: 32px; }
.message-secondary-bin:ltr {
padding-left: 8px; }
.message-secondary-bin:rtl {
padding-right: 8px; }
.message-secondary-bin {
color: #8e8e80; }
@ -763,14 +801,20 @@ StScrollBar {
icon-size: 16px; }
.message-title {
font-weight: bold; }
font-weight: bold;
font-size: 1.1em; }
.message-content {
padding: 8px; }
padding: 8px;
font-size: .9em; }
.system-switch-user-submenu-icon {
icon-size: 24px;
border: 1px solid rgba(238, 238, 236, 0.4); }
.system-switch-user-submenu-icon.user-icon {
icon-size: 20px;
padding: 0 2px; }
.system-switch-user-submenu-icon.default-icon {
icon-size: 16px;
padding: 0 4px; }
#appMenu {
spinner-image: url("resource:///org/gnome/shell/theme/process-working.svg");
@ -779,7 +823,7 @@ StScrollBar {
color: transparent; }
.aggregate-menu {
width: 360px; }
width: 280px; }
.aggregate-menu .popup-menu-icon {
padding: 0 4px; }
@ -834,7 +878,8 @@ StScrollBar {
min-width: 470px; }
.nm-dialog-content {
spacing: 20px; }
spacing: 20px;
padding: 24px; }
.nm-dialog-header-hbox {
spacing: 10px; }
@ -1016,7 +1061,7 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: none;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.app-view-control:first-child {
@ -1335,10 +1380,9 @@ StScrollBar {
color: white; }
.keyboard-key:focus {
color: #eeeeec;
border-color: #215d9c;
box-shadow: inset 0 1px #454f52;
text-shadow: 0 1px black;
icon-shadow: 0 1px black; }
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.keyboard-key:hover, .keyboard-key:checked {
color: white;
border-color: rgba(0, 0, 0, 0.7);
@ -1350,7 +1394,7 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #222728;
box-shadow: none;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.keyboard-key:grayed {
@ -1443,13 +1487,13 @@ StScrollBar {
color: white;
border-color: rgba(0, 0, 0, 0.7);
background-color: #1c5187;
box-shadow: none;
box-shadow: inset 0 0 black;
text-shadow: none;
icon-shadow: none; }
.login-dialog .modal-dialog-button:default:insensitive {
color: #939695;
color: #949796;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(66, 71, 73, 0.7);
background-color: rgba(66, 72, 73, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 98 KiB

View File

@ -14,7 +14,7 @@ const ShellEntry = imports.ui.shellEntry;
const Tweener = imports.ui.tweener;
const UserWidget = imports.ui.userWidget;
const DEFAULT_BUTTON_WELL_ICON_SIZE = 24;
const DEFAULT_BUTTON_WELL_ICON_SIZE = 16;
const DEFAULT_BUTTON_WELL_ANIMATION_DELAY = 1.0;
const DEFAULT_BUTTON_WELL_ANIMATION_TIME = 0.3;
@ -258,6 +258,7 @@ const AuthPrompt = new Lang.Class({
},
_onVerificationComplete: function() {
this.setActorInDefaultButtonWell(null);
this.verificationStatus = AuthPromptStatus.VERIFICATION_SUCCEEDED;
this.cancelButton.reactive = false;
},
@ -281,6 +282,12 @@ const AuthPrompt = new Lang.Class({
if (oldActor)
Tweener.removeTweens(oldActor);
let wasSpinner;
if (oldActor == this._spinner.actor)
wasSpinner = true;
else
wasSpinner = false;
let isSpinner;
if (actor == this._spinner.actor)
isSpinner = true;
@ -290,6 +297,11 @@ const AuthPrompt = new Lang.Class({
if (this._defaultButtonWellActor != actor && oldActor) {
if (!animate) {
oldActor.opacity = 0;
if (wasSpinner) {
if (this._spinner)
this._spinner.stop();
}
} else {
Tweener.addTween(oldActor,
{ opacity: 0,
@ -298,7 +310,7 @@ const AuthPrompt = new Lang.Class({
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
if (isSpinner) {
if (wasSpinner) {
if (this._spinner)
this._spinner.stop();
}
@ -401,7 +413,7 @@ const AuthPrompt = new Lang.Class({
},
updateSensitivity: function(sensitive) {
this._updateNextButtonSensitivity(sensitive);
this._updateNextButtonSensitivity(sensitive && this._entry.text.length > 0);
this._entry.reactive = sensitive;
this._entry.clutter_text.editable = sensitive;
},
@ -432,8 +444,9 @@ const AuthPrompt = new Lang.Class({
let oldStatus = this.verificationStatus;
this.verificationStatus = AuthPromptStatus.NOT_VERIFYING;
this.cancelButton.reactive = true;
this.nextButton.label = _("Next");
if (oldStatus == AuthPromptStatus.VERIFYING)
if (this._userVerifier)
this._userVerifier.cancel();
this._queryingService = null;
@ -488,6 +501,7 @@ const AuthPrompt = new Lang.Class({
finish: function(onComplete) {
if (!this._userVerifier.hasPendingMessages) {
this._userVerifier.clear();
onComplete();
return;
}
@ -495,12 +509,13 @@ const AuthPrompt = new Lang.Class({
let signalId = this._userVerifier.connect('no-more-messages',
Lang.bind(this, function() {
this._userVerifier.disconnect(signalId);
this._userVerifier.clear();
onComplete();
}));
},
cancel: function() {
if (this.verificationStatus == AuthPromptStatus.NOT_VERIFYING || this.verificationStatus == AuthPromptStatus.VERIFICATION_SUCCEEDED) {
if (this.verificationStatus == AuthPromptStatus.VERIFICATION_SUCCEEDED) {
return;
}
this.reset();

View File

@ -535,6 +535,9 @@ const LoginDialog = new Lang.Class({
let centerX = dialogBox.x1 + (dialogBox.x2 - dialogBox.x1) / 2;
let centerY = dialogBox.y1 + (dialogBox.y2 - dialogBox.y1) / 2;
natWidth = Math.min(natWidth, dialogBox.x2 - dialogBox.x1);
natHeight = Math.min(natHeight, dialogBox.y2 - dialogBox.y1);
actorBox.x1 = Math.floor(centerX - natWidth / 2);
actorBox.y1 = Math.floor(centerY - natHeight / 2);
actorBox.x2 = actorBox.x1 + natWidth;
@ -584,7 +587,14 @@ const LoginDialog = new Lang.Class({
// try a different layout, or if we have what extra space we
// can hand out
if (bannerAllocation) {
let leftOverYSpace = dialogHeight - bannerHeight - authPromptHeight - logoHeight;
let bannerSpace;
if (authPromptAllocation)
bannerSpace = authPromptAllocation.y1 - bannerAllocation.y1;
else
bannerSpace = 0;
let leftOverYSpace = bannerSpace - bannerHeight;
if (leftOverYSpace > 0) {
// First figure out how much left over space is up top
@ -867,7 +877,7 @@ const LoginDialog = new Lang.Class({
},
_loginScreenSessionActivated: function() {
if (this._authPrompt.verificationStatus != AuthPrompt.AuthPromptStatus.VERIFICATION_SUCCEEDED)
if (this.actor.opacity == 255 && this._authPrompt.verificationStatus == AuthPrompt.AuthPromptStatus.NOT_VERIFYING)
return;
Tweener.addTween(this.actor,
@ -884,6 +894,7 @@ const LoginDialog = new Lang.Class({
},
onUpdateScope: this,
onComplete: function() {
if (this._authPrompt.verificationStatus != AuthPrompt.AuthPromptStatus.NOT_VERIFYING)
this._authPrompt.reset();
},
onCompleteScope: this });

View File

@ -7,7 +7,7 @@ const St = imports.gi.St;
const Signals = imports.signals;
const Atk = imports.gi.Atk;
const ANIMATED_ICON_UPDATE_TIMEOUT = 100;
const ANIMATED_ICON_UPDATE_TIMEOUT = 14;
const Animation = new Lang.Class({
Name: 'Animation',

View File

@ -500,6 +500,11 @@ const AllView = new Lang.Class({
_loadApps: function() {
let apps = Gio.AppInfo.get_all().filter(function(appInfo) {
try {
let id = appInfo.get_id(); // catch invalid file encodings
} catch(e) {
return false;
}
return appInfo.should_show();
}).map(function(app) {
return app.get_id();
@ -753,6 +758,7 @@ const AllView = new Lang.Class({
let fadeOffset = Math.min(this._grid.topPadding,
this._grid.bottomPadding);
this._scrollView.update_fade_effect(fadeOffset, 0);
if (fadeOffset > 0)
this._scrollView.get_effect('fade').fade_edges = true;
if (this._availWidth != availWidth || this._availHeight != availHeight || oldNPages != this._grid.nPages()) {
@ -1060,7 +1066,7 @@ const AppSearchProvider = new Lang.Class({
getInitialResultSet: function(terms, callback, cancellable) {
let query = terms.join(' ');
let groups = Gio.DesktopAppInfo.search(query);
let groups = Shell.AppSystem.search(query);
let usage = Shell.AppUsage.get_default();
let results = [];
groups.forEach(function(group) {
@ -1289,7 +1295,10 @@ const FolderIcon = new Lang.Class({
if (!_listsIntersect(folderCategories, appCategories))
return;
addAppId(appInfo.get_id());
try {
addAppId(appInfo.get_id()); // catch invalid file encodings
} catch(e) {
}
});
this.actor.visible = this.view.getAllItems().length > 0;

View File

@ -144,6 +144,7 @@ const BackgroundCache = new Lang.Class({
this._pendingFileLoads = [];
this._fileMonitors = {};
this._backgroundSources = {};
this._animations = {};
},
monitorFile: function(file) {
@ -162,12 +163,13 @@ const BackgroundCache = new Lang.Class({
getAnimation: function(params) {
params = Params.parse(params, { file: null,
settingsSchema: null,
onLoaded: null });
if (_fileEqual0(this._animationFile, params.file)) {
if (this._animations[params.settingsSchema] && _fileEqual0(this._animationFile, params.file)) {
if (params.onLoaded) {
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
params.onLoaded(this._animation);
params.onLoaded(this._animations[params.settingsSchema]);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] params.onLoaded');
@ -178,12 +180,11 @@ const BackgroundCache = new Lang.Class({
let animation = new Animation({ file: params.file });
animation.load(Lang.bind(this, function() {
this._animationFile = params.file;
this._animation = animation;
this._animations[params.settingsSchema] = animation;
if (params.onLoaded) {
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
params.onLoaded(this._animation);
params.onLoaded(this._animations[params.settingsSchema]);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] params.onLoaded');
@ -403,6 +404,7 @@ const Background = new Lang.Class({
_loadAnimation: function(file) {
this._cache.getAnimation({ file: file,
settingsSchema: this._settings.schema_id,
onLoaded: Lang.bind(this, function(animation) {
this._animation = animation;

View File

@ -24,6 +24,8 @@ const MSECS_IN_DAY = 24 * 60 * 60 * 1000;
const SHOW_WEEKDATE_KEY = 'show-weekdate';
const ELLIPSIS_CHAR = '\u2026';
const MESSAGE_ICON_SIZE = 32;
const MESSAGE_ANIMATION_TIME = 0.1;
const DEFAULT_EXPAND_LINES = 6;
@ -976,7 +978,6 @@ const Message = new Lang.Class({
this._iconBin = new St.Bin({ style_class: 'message-icon-bin',
y_expand: true,
visible: false });
this._iconBin.set_y_align(Clutter.ActorAlign.START);
hbox.add_actor(this._iconBin);
let contentBox = new St.BoxLayout({ style_class: 'message-content',
@ -1240,9 +1241,10 @@ const NotificationMessage = new Lang.Class({
_getIcon: function() {
if (this.notification.gicon)
return new St.Icon({ gicon: this.notification.gicon, icon_size: 48 });
return new St.Icon({ gicon: this.notification.gicon,
icon_size: MESSAGE_ICON_SIZE });
else
return this.notification.source.createIcon(48);
return this.notification.source.createIcon(MESSAGE_ICON_SIZE);
},
_onUpdated: function(n, clear) {

View File

@ -9,9 +9,15 @@ const Gio = imports.gi.Gio;
const GObject = imports.gi.GObject;
const Gcr = imports.gi.Gcr;
const Animation = imports.ui.animation;
const ModalDialog = imports.ui.modalDialog;
const ShellEntry = imports.ui.shellEntry;
const CheckBox = imports.ui.checkBox;
const Tweener = imports.ui.tweener;
const WORK_SPINNER_ICON_SIZE = 16;
const WORK_SPINNER_ANIMATION_DELAY = 1.0;
const WORK_SPINNER_ANIMATION_TIME = 0.3;
const KeyringDialog = new Lang.Class({
Name: 'KeyringDialog',
@ -58,27 +64,47 @@ const KeyringDialog = new Lang.Class({
{ y_fill: true,
y_align: St.Align.START });
this._workSpinner = null;
this._controlTable = null;
this._cancelButton = this.addButton({ label: '',
action: Lang.bind(this, this._onCancelButton),
key: Clutter.Escape },
{ expand: true, x_fill: false, x_align: St.Align.START });
this.placeSpinner({ expand: false,
x_fill: false,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.MIDDLE });
key: Clutter.Escape });
this._continueButton = this.addButton({ label: '',
action: Lang.bind(this, this._onContinueButton),
default: true },
{ expand: false, x_fill: false, x_align: St.Align.END });
default: true });
this.prompt.bind_property('cancel-label', this._cancelButton, 'label', GObject.BindingFlags.SYNC_CREATE);
this.prompt.bind_property('continue-label', this._continueButton, 'label', GObject.BindingFlags.SYNC_CREATE);
},
_setWorking: function(working) {
if (!this._workSpinner)
return;
Tweener.removeTweens(this._workSpinner.actor);
if (working) {
this._workSpinner.play();
Tweener.addTween(this._workSpinner.actor,
{ opacity: 255,
delay: WORK_SPINNER_ANIMATION_DELAY,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear'
});
} else {
Tweener.addTween(this._workSpinner.actor,
{ opacity: 0,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
if (this._workSpinner)
this._workSpinner.stop();
}
});
}
},
_buildControlTable: function() {
let layout = new Clutter.GridLayout({ orientation: Clutter.Orientation.VERTICAL });
let table = new St.Widget({ style_class: 'keyring-dialog-control-table',
@ -101,15 +127,22 @@ const KeyringDialog = new Lang.Class({
ShellEntry.addContextMenu(this._passwordEntry, { isPassword: true });
this._passwordEntry.clutter_text.connect('activate', Lang.bind(this, this._onPasswordActivate));
let spinnerIcon = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/process-working.svg');
this._workSpinner = new Animation.AnimatedIcon(spinnerIcon, WORK_SPINNER_ICON_SIZE);
this._workSpinner.actor.opacity = 0;
if (rtl) {
layout.attach(this._passwordEntry, 0, row, 1, 1);
layout.attach(label, 1, row, 1, 1);
layout.attach(this._workSpinner.actor, 0, row, 1, 1);
layout.attach(this._passwordEntry, 1, row, 1, 1);
layout.attach(label, 2, row, 1, 1);
} else {
layout.attach(label, 0, row, 1, 1);
layout.attach(this._passwordEntry, 1, row, 1, 1);
layout.attach(this._workSpinner.actor, 2, row, 1, 1);
}
row++;
} else {
this._workSpinner = null;
this._passwordEntry = null;
}
@ -178,7 +211,7 @@ const KeyringDialog = new Lang.Class({
this._continueButton.can_focus = sensitive;
this._continueButton.reactive = sensitive;
this.setWorking(!sensitive);
this._setWorking(!sensitive);
},
_ensureOpen: function() {

View File

@ -13,13 +13,19 @@ const Mainloop = imports.mainloop;
const Polkit = imports.gi.Polkit;
const PolkitAgent = imports.gi.PolkitAgent;
const Animation = imports.ui.animation;
const Components = imports.ui.components;
const ModalDialog = imports.ui.modalDialog;
const ShellEntry = imports.ui.shellEntry;
const UserWidget = imports.ui.userWidget;
const Tweener = imports.ui.tweener;
const DIALOG_ICON_SIZE = 48;
const WORK_SPINNER_ICON_SIZE = 16;
const WORK_SPINNER_ANIMATION_DELAY = 1.0;
const WORK_SPINNER_ANIMATION_TIME = 0.3;
const AuthenticationDialog = new Lang.Class({
Name: 'AuthenticationDialog',
Extends: ModalDialog.ModalDialog,
@ -136,6 +142,13 @@ const AuthenticationDialog = new Lang.Class({
this._passwordEntry.clutter_text.connect('activate', Lang.bind(this, this._onEntryActivate));
this._passwordBox.add(this._passwordEntry,
{ expand: true });
let spinnerIcon = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/process-working.svg');
this._workSpinner = new Animation.AnimatedIcon(spinnerIcon, WORK_SPINNER_ICON_SIZE);
this._workSpinner.actor.opacity = 0;
this._passwordBox.add(this._workSpinner.actor);
this.setInitialKeyFocus(this._passwordEntry);
this._passwordBox.hide();
@ -165,17 +178,10 @@ const AuthenticationDialog = new Lang.Class({
this._cancelButton = this.addButton({ label: _("Cancel"),
action: Lang.bind(this, this.cancel),
key: Clutter.Escape },
{ expand: true, x_fill: false, x_align: St.Align.START });
this.placeSpinner({ expand: false,
x_fill: false,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.MIDDLE });
key: Clutter.Escape });
this._okButton = this.addButton({ label: _("Authenticate"),
action: Lang.bind(this, this._onAuthenticateButtonPressed),
default: true },
{ expand: false, x_fill: false, x_align: St.Align.END });
default: true });
this._doneEmitted = false;
@ -183,6 +189,30 @@ const AuthenticationDialog = new Lang.Class({
this._cookie = cookie;
},
_setWorking: function(working) {
Tweener.removeTweens(this._workSpinner.actor);
if (working) {
this._workSpinner.play();
Tweener.addTween(this._workSpinner.actor,
{ opacity: 255,
delay: WORK_SPINNER_ANIMATION_DELAY,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear'
});
} else {
Tweener.addTween(this._workSpinner.actor,
{ opacity: 0,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
if (this._workSpinner)
this._workSpinner.stop();
}
});
}
},
performAuthentication: function() {
this.destroySession();
this._session = new PolkitAgent.Session({ identity: this._identityToAuth,
@ -229,7 +259,7 @@ const AuthenticationDialog = new Lang.Class({
this._okButton.can_focus = sensitive;
this._okButton.reactive = sensitive;
this.setWorking(!sensitive);
this._setWorking(!sensitive);
},
_onEntryActivate: function() {

View File

@ -303,6 +303,8 @@ const ChatSource = new Lang.Class({
},
_createPolicy: function() {
if (this._account.protocol_name == 'irc')
return new MessageTray.NotificationApplicationPolicy('org.gnome.Polari');
return new MessageTray.NotificationApplicationPolicy('empathy');
},

View File

@ -24,9 +24,6 @@ const KEYBOARD_TYPE = 'keyboard-type';
const A11Y_APPLICATIONS_SCHEMA = 'org.gnome.desktop.a11y.applications';
const SHOW_KEYBOARD = 'screen-keyboard-enabled';
const CURSOR_BUS_NAME = 'org.gnome.SettingsDaemon.Cursor';
const CURSOR_OBJECT_PATH = '/org/gnome/SettingsDaemon/Cursor';
const CARIBOU_BUS_NAME = 'org.gnome.Caribou.Daemon';
const CARIBOU_OBJECT_PATH = '/org/gnome/Caribou/Daemon';
@ -114,6 +111,35 @@ const Key = new Lang.Class({
key.release();
return Clutter.EVENT_PROPAGATE;
}));
button.connect('touch-event', Lang.bind(this,
function (actor, event) {
let device = event.get_device();
let sequence = event.get_event_sequence();
// We only handle touch events here on wayland. On X11
// we do get emulated pointer events, which already works
// for single-touch cases. Besides, the X11 passive touch grab
// set up by Mutter will make us see first the touch events
// and later the pointer events, so it will look like two
// unrelated series of events, we want to avoid double handling
// in these cases.
if (!Meta.is_wayland_compositor())
return Clutter.EVENT_PROPAGATE;
if (!this._touchPressed &&
event.type() == Clutter.EventType.TOUCH_BEGIN) {
device.sequence_grab(sequence, actor);
this._touchPressed = true;
key.press();
} else if (this._touchPressed &&
event.type() == Clutter.EventType.TOUCH_END &&
device.sequence_get_grabbed_actor(sequence) == actor) {
device.sequence_ungrab(sequence);
this._touchPressed = false;
key.release();
}
return Clutter.EVENT_PROPAGATE;
}));
return button;
},
@ -178,9 +204,6 @@ const Keyboard = new Lang.Class({
this._keyboardSettings.connect('changed', Lang.bind(this, this._sync));
this._a11yApplicationsSettings = new Gio.Settings({ schema_id: A11Y_APPLICATIONS_SCHEMA });
this._a11yApplicationsSettings.connect('changed', Lang.bind(this, this._sync));
this._watchNameId = Gio.bus_watch_name(Gio.BusType.SESSION, CURSOR_BUS_NAME, 0,
Lang.bind(this, this._sync),
Lang.bind(this, this._sync));
this._daemonProxy = null;
this._lastDeviceId = null;

View File

@ -4,6 +4,7 @@ const Atspi = imports.gi.Atspi;
const Clutter = imports.gi.Clutter;
const GDesktopEnums = imports.gi.GDesktopEnums;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Lang = imports.lang;
@ -22,6 +23,8 @@ const MOUSE_POLL_FREQUENCY = 50;
const CROSSHAIRS_CLIP_SIZE = [100, 100];
const NO_CHANGE = 0.0;
const POINTER_REST_TIME = 1000; // milliseconds
// Settings
const APPLICATIONS_SCHEMA = 'org.gnome.desktop.a11y.applications';
const SHOW_KEY = 'screen-magnifier-enabled';
@ -709,6 +712,9 @@ const ZoomRegion = new Lang.Class({
this._xCaret = 0;
this._yCaret = 0;
this._pointerIdleMonitor = Meta.IdleMonitor.get_for_device(Meta.VIRTUAL_CORE_POINTER_ID);
this._scrollContentsTimerId = 0;
Main.layoutManager.connect('monitors-changed',
Lang.bind(this, this._monitorsChanged));
this._focusCaretTracker.connect('caret-moved',
@ -1068,6 +1074,26 @@ const ZoomRegion = new Lang.Class({
return this._isMouseOverRegion();
},
_clearScrollContentsTimer: function() {
if (this._scrollContentsTimerId != 0) {
Mainloop.source_remove(this._scrollContentsTimerId);
this._scrollContentsTimerId = 0;
}
},
_scrollContentsToDelayed: function(x, y) {
if (this._pointerIdleMonitor.get_idletime() >= POINTER_REST_TIME) {
this.scrollContentsTo(x, y);
return;
}
this._clearScrollContentsTimer();
this._scrollContentsTimerId = Mainloop.timeout_add(POINTER_REST_TIME, Lang.bind(this, function() {
this._scrollContentsToDelayed(x, y);
return GLib.SOURCE_REMOVE;
}));
},
/**
* scrollContentsTo:
* Shift the contents of the magnified view such it is centered on the given
@ -1076,6 +1102,8 @@ const ZoomRegion = new Lang.Class({
* @y: The y-coord of the point to center on.
*/
scrollContentsTo: function(x, y) {
this._clearScrollContentsTimer();
this._followingCursor = false;
this._changeROI({ xCenter: x,
yCenter: y });
@ -1381,7 +1409,7 @@ const ZoomRegion = new Lang.Class({
else if (this._caretTrackingMode == GDesktopEnums.MagnifierCaretTrackingMode.CENTERED)
[xCaret, yCaret] = this._centerFromPointCentered(xCaret, yCaret);
this.scrollContentsTo(xCaret, yCaret);
this._scrollContentsToDelayed(xCaret, yCaret);
},
_centerFromFocusPosition: function() {
@ -1395,7 +1423,7 @@ const ZoomRegion = new Lang.Class({
else if (this._focusTrackingMode == GDesktopEnums.MagnifierFocusTrackingMode.CENTERED)
[xFocus, yFocus] = this._centerFromPointCentered(xFocus, yFocus);
this.scrollContentsTo(xFocus, yFocus);
this._scrollContentsToDelayed(xFocus, yFocus);
},
_centerFromPointPush: function(xPoint, yPoint) {

View File

@ -69,26 +69,6 @@ const Urgency = {
CRITICAL: 3
};
function _fixMarkup(text, allowMarkup) {
if (allowMarkup) {
// Support &amp;, &quot;, &apos;, &lt; and &gt;, escape all other
// occurrences of '&'.
let _text = text.replace(/&(?!amp;|quot;|apos;|lt;|gt;)/g, '&amp;');
// Support <b>, <i>, and <u>, escape anything else
// so it displays as raw markup.
_text = _text.replace(/<(?!\/?[biu]>)/g, '&lt;');
try {
Pango.parse_markup(_text, -1, '');
return _text;
} catch (e) {}
}
// !allowMarkup, or invalid markup
return GLib.markup_escape_text(text, -1);
}
const FocusGrabber = new Lang.Class({
Name: 'FocusGrabber',

View File

@ -14,7 +14,6 @@ const Atk = imports.gi.Atk;
const Params = imports.misc.params;
const Animation = imports.ui.animation;
const Layout = imports.ui.layout;
const Lightbox = imports.ui.lightbox;
const Main = imports.ui.main;
@ -23,10 +22,6 @@ const Tweener = imports.ui.tweener;
const OPEN_AND_CLOSE_TIME = 0.1;
const FADE_OUT_DIALOG_TIME = 1.0;
const WORK_SPINNER_ICON_SIZE = 24;
const WORK_SPINNER_ANIMATION_DELAY = 1.0;
const WORK_SPINNER_ANIMATION_TIME = 0.3;
const State = {
OPENED: 0,
CLOSED: 1,
@ -79,6 +74,8 @@ const ModalDialog = new Lang.Class({
this._group.add_actor(this._backgroundBin);
this.dialogLayout = new St.BoxLayout({ style_class: 'modal-dialog',
x_align: Clutter.ActorAlign.CENTER,
y_align: Clutter.ActorAlign.CENTER,
vertical: true });
// modal dialogs are fixed width and grow vertically; set the request
// mode accordingly so wrapped labels are handled correctly during
@ -100,7 +97,8 @@ const ModalDialog = new Lang.Class({
this.backgroundStack.add_actor(this.dialogLayout);
this.contentLayout = new St.BoxLayout({ vertical: true });
this.contentLayout = new St.BoxLayout({ vertical: true,
style_class: "modal-dialog-content-box" });
this.dialogLayout.add(this.contentLayout,
{ expand: true,
x_fill: true,
@ -108,8 +106,7 @@ const ModalDialog = new Lang.Class({
x_align: St.Align.MIDDLE,
y_align: St.Align.START });
this.buttonLayout = new St.BoxLayout({ style_class: 'modal-dialog-button-box',
vertical: false });
this.buttonLayout = new St.Widget ({ layout_manager: new Clutter.BoxLayout ({ homogeneous:true }) });
this.dialogLayout.add(this.buttonLayout,
{ x_align: St.Align.MIDDLE,
y_align: St.Align.END });
@ -118,8 +115,6 @@ const ModalDialog = new Lang.Class({
this._initialKeyFocus = this.dialogLayout;
this._initialKeyFocusDestroyId = 0;
this._savedKeyFocus = null;
this._workSpinner = null;
},
destroy: function() {
@ -147,16 +142,12 @@ const ModalDialog = new Lang.Class({
else
x_alignment = St.Align.MIDDLE;
this.addButton(buttonInfo, { expand: true,
x_fill: false,
y_fill: false,
x_align: x_alignment,
y_align: St.Align.MIDDLE });
this.addButton(buttonInfo);
}
},
addButton: function(buttonInfo, layoutInfo) {
let label = buttonInfo['label'];
addButton: function(buttonInfo) {
let label = buttonInfo['label']
let action = buttonInfo['action'];
let key = buttonInfo['key'];
let isDefault = buttonInfo['default'];
@ -170,10 +161,12 @@ const ModalDialog = new Lang.Class({
else
keys = [];
let button = new St.Button({ style_class: 'modal-dialog-button button',
let button = new St.Button({ style_class: 'modal-dialog-linked-button',
button_mask: St.ButtonMask.ONE | St.ButtonMask.THREE,
reactive: true,
can_focus: true,
x_expand: true,
y_expand: true,
label: label });
button.connect('clicked', action);
@ -188,47 +181,11 @@ const ModalDialog = new Lang.Class({
for (let i in keys)
this._buttonKeys[keys[i]] = buttonInfo;
this.buttonLayout.add(button, layoutInfo);
this.buttonLayout.add_actor(button);
return button;
},
placeSpinner: function(layoutInfo) {
let spinnerIcon = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/process-working.svg');
this._workSpinner = new Animation.AnimatedIcon(spinnerIcon, WORK_SPINNER_ICON_SIZE);
this._workSpinner.actor.opacity = 0;
this._workSpinner.actor.show();
this.buttonLayout.add(this._workSpinner.actor, layoutInfo);
},
setWorking: function(working) {
if (!this._workSpinner)
return;
Tweener.removeTweens(this._workSpinner.actor);
if (working) {
this._workSpinner.play();
Tweener.addTween(this._workSpinner.actor,
{ opacity: 255,
delay: WORK_SPINNER_ANIMATION_DELAY,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear'
});
} else {
Tweener.addTween(this._workSpinner.actor,
{ opacity: 0,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
if (this._workSpinner)
this._workSpinner.stop();
}
});
}
},
_onKeyPressEvent: function(object, event) {
this._pressedKey = event.get_key_symbol();
return Clutter.EVENT_PROPAGATE;

View File

@ -15,8 +15,7 @@ const OsdMonitorLabel = new Lang.Class({
Name: 'OsdMonitorLabel',
_init: function(monitor, label) {
this._actor = new St.Widget({ opacity: 0,
x_expand: true,
this._actor = new St.Widget({ x_expand: true,
y_expand: true });
this._monitor = monitor;
@ -34,10 +33,6 @@ const OsdMonitorLabel = new Lang.Class({
this._position();
Meta.disable_unredirect_for_screen(global.screen);
Tweener.addTween(this._actor,
{ opacity: 255,
time: FADE_TIME,
transition: 'easeOutQuad' });
},
_position: function() {
@ -52,15 +47,8 @@ const OsdMonitorLabel = new Lang.Class({
},
destroy: function() {
Tweener.addTween(this._actor,
{ opacity: 0,
time: FADE_TIME,
transition: 'easeOutQuad',
onComplete: Lang.bind(this, function() {
this._actor.destroy();
Meta.enable_unredirect_for_screen(global.screen);
})
});
}
});

View File

@ -107,13 +107,6 @@ const Overview = new Lang.Class({
this._overviewCreated = true;
// The main Background actors are inside global.window_group which are
// hidden when displaying the overview, so we create a new
// one. Instances of this class share a single CoglTexture behind the
// scenes which allows us to show the background with different
// rendering options without duplicating the texture data.
let monitor = Main.layoutManager.primaryMonitor;
let layout = new Clutter.BinLayout();
this._stack = new Clutter.Actor({ layout_manager: layout });
this._stack.add_constraint(new LayoutManager.MonitorConstraint({ primary: true }));
@ -128,6 +121,11 @@ const Overview = new Lang.Class({
y_expand: true });
this._overview._delegate = this;
// The main Background actors are inside global.window_group which are
// hidden when displaying the overview, so we create a new
// one. Instances of this class share a single CoglTexture behind the
// scenes which allows us to show the background with different
// rendering options without duplicating the texture data.
this._backgroundGroup = new Meta.BackgroundGroup();
Main.layoutManager.overviewGroup.add_child(this._backgroundGroup);
this._bgManagers = [];

View File

@ -25,12 +25,12 @@ const RemoteMenu = imports.ui.remoteMenu;
const Main = imports.ui.main;
const Tweener = imports.ui.tweener;
const PANEL_ICON_SIZE = 24;
const APP_MENU_ICON_MARGIN = 2;
const PANEL_ICON_SIZE = 16;
const APP_MENU_ICON_MARGIN = 0;
const BUTTON_DND_ACTIVATION_TIMEOUT = 250;
const SPINNER_ANIMATION_TIME = 0.2;
const SPINNER_ANIMATION_TIME = 1.0;
// To make sure the panel corners blend nicely with the panel,
// we draw background and borders the same way, e.g. drawing
@ -697,7 +697,6 @@ const AggregateMenu = new Lang.Class({
this.menu.addMenuItem(this._location.menu);
this.menu.addMenuItem(this._rfkill.menu);
this.menu.addMenuItem(this._power.menu);
this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
this.menu.addMenuItem(this._system.menu);
},
});

View File

@ -1059,11 +1059,6 @@ const PopupSubMenuMenuItem = new Lang.Class({
let expander = new St.Bin({ style_class: 'popup-menu-item-expander' });
this.actor.add(expander, { expand: true });
this.status = new St.Label({ style_class: 'popup-status-menu-item',
y_expand: true,
y_align: Clutter.ActorAlign.CENTER });
this.actor.add_child(this.status);
this._triangle = arrowIcon(St.Side.RIGHT);
this._triangle.pivot_point = new Clutter.Point({ x: 0.5, y: 0.6 });

View File

@ -46,7 +46,7 @@ const Indicator = new Lang.Class({
// The Bluetooth menu only appears when Bluetooth is in use,
// so just statically build it with a "Turn Off" menu item.
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Bluetooth"), true);
this._item = new PopupMenu.PopupSubMenuMenuItem('', true);
this._item.icon.icon_name = 'bluetooth-active-symbolic';
this._item.menu.addAction(_("Turn Off"), Lang.bind(this, function() {
this._proxy.BluetoothAirplaneMode = true;
@ -101,8 +101,9 @@ const Indicator = new Lang.Class({
this._item.actor.visible = this._proxy.BluetoothHasAirplaneMode && !this._proxy.BluetoothAirplaneMode;
if (nDevices > 0)
this._item.status.text = ngettext("%d Connected Device", "%d Connected Devices", nDevices).format(nDevices);
/* Translators: this is the number of connected bluetooth devices */
this._item.label.text = ngettext("%d Connected", "%d Connected", nDevices).format(nDevices);
else
this._item.status.text = _("Not Connected");
this._item.label.text = _("Not In Use");
},
});

View File

@ -62,13 +62,13 @@ const Indicator = new Lang.Class({
this._indicator = this._addIndicator();
this._indicator.icon_name = 'find-location-symbolic';
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Location"), true);
this._item = new PopupMenu.PopupSubMenuMenuItem('', true);
this._item.icon.icon_name = 'find-location-symbolic';
this._agent = Gio.DBusExportedObject.wrapJSObject(AgentIface, this);
this._agent.export(Gio.DBus.system, '/org/freedesktop/GeoClue2/Agent');
this._item.status.text = _("Enabled");
this._item.label.text = _("Location Enabled");
this._onOffAction = this._item.menu.addAction(_("Disable"), Lang.bind(this, this._onOnOffAction));
this._item.menu.addSettingsAction(_("Privacy Settings"), 'gnome-privacy-panel.desktop');
@ -173,10 +173,11 @@ const Indicator = new Lang.Class({
_updateMenuLabels: function() {
if (this._settings.get_boolean(ENABLED)) {
this._item.status.text = this._indicator.visible ? _("In Use") : _("Enabled");
this._item.label.text = this._indicator.visible ? _("Location In Use")
: _("Location Enabled");
this._onOffAction.label.text = _("Disable");
} else {
this._item.status.text = _("Disabled");
this._item.label.text = _("Location Disabled");
this._onOffAction.label.text = _("Enable");
}
},

View File

@ -257,16 +257,8 @@ const NMConnectionSection = new Lang.Class({
this._radioSection.actor.visible = (nItems > 1);
this._labelSection.actor.visible = (nItems == 1);
this.item.status.text = this._getStatus();
this.item.label.text = this._getStatus();
this.item.icon.icon_name = this._getMenuIcon();
// desc can be undefined at cold-plug, before we called
// NMGtk.disambiguate_device_names() at least once
let desc = this._getDescription();
if (desc)
this.item.label.text = desc;
else
this.item.label.text = '';
},
_getMenuIcon: function() {
@ -355,6 +347,7 @@ const NMConnectionDevice = new Lang.Class({
this.parent(client);
this._device = device;
this._settings = settings;
this._description = '';
this._autoConnectItem = this.item.menu.addAction(_("Connect"), Lang.bind(this, this._autoConnect));
this._deactivateItem = this._radioSection.addAction(_("Turn Off"), Lang.bind(this, this.deactivateConnection));
@ -454,38 +447,44 @@ const NMConnectionDevice = new Lang.Class({
switch(this._device.state) {
case NetworkManager.DeviceState.DISCONNECTED:
return _("Off");
/* Translators: %s is a network identifier */
return _("%s Off").format(this._getDescription());
case NetworkManager.DeviceState.ACTIVATED:
return _("Connected");
/* Translators: %s is a network identifier */
return _("%s Connected").format(this._getDescription());
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");
under NetworkManager's control (and thus cannot be used in the menu);
%s is a network identifier */
return _("%s Unmanaged").format(this._getDescription());
case NetworkManager.DeviceState.DEACTIVATING:
return _("Disconnecting");
/* Translators: %s is a network identifier */
return _("%s Disconnecting").format(this._getDescription());
case NetworkManager.DeviceState.PREPARE:
case NetworkManager.DeviceState.CONFIG:
case NetworkManager.DeviceState.IP_CONFIG:
case NetworkManager.DeviceState.IP_CHECK:
case NetworkManager.DeviceState.SECONDARIES:
return _("Connecting");
/* Translators: %s is a network identifier */
return _("%s Connecting").format(this._getDescription());
case NetworkManager.DeviceState.NEED_AUTH:
/* Translators: this is for network connections that require some kind of key or password */
return _("Authentication required");
/* Translators: this is for network connections that require some kind of key or password; %s is a network identifier */
return _("%s Requires Authentication").format(this._getDescription());
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
// or may not updated when we receive state-changed).
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");
module, which is missing; %s is a network identifier */
return _("Firmware Missing For %s").format(this._getDescription());
}
/* 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");
is disabled by rfkill, or it has no coverage; %s is a network identifier */
return _("%s Unavailable").format(this._getDescription());
case NetworkManager.DeviceState.FAILED:
return _("Connection failed");
/* Translators: %s is a network identifier */
return _("%s Connection Failed").format(this._getDescription());
default:
log('Device state invalid, is %d'.format(this._device.state));
return 'invalid';
@ -585,11 +584,12 @@ const NMDeviceModem = new Lang.Class({
_getStatus: function() {
if (!this._client.wwan_hardware_enabled)
return _("Hardware Disabled");
/* Translators: %s is a network identifier */
return _("%s Hardware Disabled").format(this._getDescription());
else if (!this._client.wwan_enabled)
/* Translators: this is for a network device that cannot be activated
because it's disabled by rfkill (airplane mode) */
return _("Disabled");
because it's disabled by rfkill (airplane mode); %s is a network identifier */
return _("%s Disabled").format(this._getDescription());
else if (this._device.state == NetworkManager.DeviceState.ACTIVATED &&
this._mobileDevice && this._mobileDevice.operator_name)
return this._mobileDevice.operator_name;
@ -877,7 +877,7 @@ const NMWirelessDialog = new Lang.Class({
y_align: Clutter.ActorAlign.CENTER });
let file = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/process-working.svg');
this._noNetworksSpinner = new Animation.AnimatedIcon(file, 24, 24);
this._noNetworksSpinner = new Animation.AnimatedIcon(file, 16, 16);
this._noNetworksBox.add_actor(this._noNetworksSpinner.actor);
this._noNetworksBox.add_actor(new St.Label({ style_class: 'no-networks-label',
text: _("No Networks") }));
@ -917,10 +917,7 @@ const NMWirelessDialog = new Lang.Class({
key: Clutter.Escape });
this._connectButton = this.addButton({ action: Lang.bind(this, this._connect),
label: _("Connect"),
key: Clutter.Return },
{ expand: true,
x_fill: false,
x_align: St.Align.END });
key: Clutter.Return });
},
_connect: function() {
@ -1282,9 +1279,8 @@ const NMDeviceWireless = new Lang.Class({
this._toggleItem.label.text = this._client.wireless_enabled ? _("Turn Off") : _("Turn On");
this._toggleItem.actor.visible = this._client.wireless_hardware_enabled;
this.item.status.text = this._getStatus();
this.item.icon.icon_name = this._getMenuIcon();
this.item.label.text = this._description;
this.item.label.text = this._getStatus();
},
setDeviceDescription: function(desc) {
@ -1296,18 +1292,23 @@ const NMDeviceWireless = new Lang.Class({
let ap = this._device.active_access_point;
if (this._isHotSpotMaster())
return _("Hotspot Active");
/* Translators: %s is a network identifier */
return _("%s Hotspot Active").format(this._description);
else if (this._device.state >= NetworkManager.DeviceState.PREPARE &&
this._device.state < NetworkManager.DeviceState.ACTIVATED)
return _("Connecting");
/* Translators: %s is a network identifier */
return _("%s Connecting").format(this._description);
else if (ap)
return ssidToLabel(ap.get_ssid());
else if (!this._client.wireless_hardware_enabled)
return _("Hardware Disabled");
/* Translators: %s is a network identifier */
return _("%s Hardware Disabled").format(this._description);
else if (!this._client.wireless_enabled)
return _("Off");
/* Translators: %s is a network identifier */
return _("%s Off").format(this._description);
else if (this._device.state == NetworkManager.DeviceState.DISCONNECTED)
return _("Not Connected");
/* Translators: %s is a network identifier */
return _("%s Not Connected").format(this._description);
else
return '';
},
@ -1509,7 +1510,7 @@ const NMVPNSection = new Lang.Class({
return item.getName();
}
return _("Off");
return _("VPN Off");
},
_getMenuIcon: function() {

View File

@ -112,12 +112,6 @@ const Indicator = new Lang.Class({
this._item.icon.icon_name = icon;
// The status label
this._item.status.text = this._getStatus();
// The sub-menu heading
if (this._proxy.Type == UPower.DeviceKind.UPS)
this._item.label.text = _("UPS");
else
this._item.label.text = _("Battery");
this._item.label.text = this._getStatus();
},
});

View File

@ -85,9 +85,8 @@ const Indicator = new Lang.Class({
// The menu only appears when airplane mode is on, so just
// statically build it as if it was on, rather than dynamically
// changing the menu contents.
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Airplane Mode"), true);
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Airplane Mode On"), true);
this._item.icon.icon_name = 'airplane-mode-symbolic';
this._item.status.text = _("On");
this._offItem = this._item.menu.addAction(_("Turn Off"), Lang.bind(this, function() {
this._manager.airplaneMode = false;
}));

View File

@ -251,8 +251,14 @@ const Indicator = new Lang.Class({
let file = Gio.File.new_for_path(iconFile);
let gicon = new Gio.FileIcon({ file: file });
this._switchUserSubMenu.icon.gicon = gicon;
this._switchUserSubMenu.icon.add_style_class_name('user-icon');
this._switchUserSubMenu.icon.remove_style_class_name('default-icon');
} else {
this._switchUserSubMenu.icon.icon_name = 'avatar-default-symbolic';
this._switchUserSubMenu.icon.add_style_class_name('default-icon');
this._switchUserSubMenu.icon.remove_style_class_name('user-icon');
}
},
@ -344,6 +350,9 @@ const Indicator = new Lang.Class({
this._switchUserSubMenu.menu.addMenuItem(item);
this._logoutItem = item;
this._switchUserSubMenu.menu.addSettingsAction(_("Account Settings"),
'gnome-user-accounts-panel.desktop');
this._user.connect('notify::is-loaded', Lang.bind(this, this._updateSwitchUserSubMenu));
this._user.connect('changed', Lang.bind(this, this._updateSwitchUserSubMenu));

View File

@ -465,6 +465,12 @@ const ViewSelector = new Lang.Class({
},
_shouldTriggerSearch: function(symbol) {
if (symbol == Clutter.Multi_key)
return true;
if (symbol == Clutter.BackSpace && this._searchActive)
return true;
let unicode = Clutter.keysym_to_unicode(symbol);
if (unicode == 0)
return false;
@ -472,7 +478,7 @@ const ViewSelector = new Lang.Class({
if (getTermsForSearchString(String.fromCharCode(unicode)).length > 0)
return true;
return symbol == Clutter.BackSpace && this._searchActive;
return false;
},
startSearch: function(event) {

View File

@ -11,7 +11,8 @@ const WindowAttentionHandler = new Lang.Class({
_init : function() {
this._tracker = Shell.WindowTracker.get_default();
global.display.connect('window-demands-attention', Lang.bind(this, this._onWindowDemandsAttention));
this._windowDemandsAttentionId = global.display.connect('window-demands-attention',
Lang.bind(this, this._onWindowDemandsAttention));
},
_getTitleAndBanner: function(app, window) {

View File

@ -19,8 +19,6 @@ const Tweener = imports.ui.tweener;
const WindowMenu = imports.ui.windowMenu;
const SHELL_KEYBINDINGS_SCHEMA = 'org.gnome.shell.keybindings';
const MAXIMIZE_WINDOW_ANIMATION_TIME = 0.15;
const UNMAXIMIZE_WINDOW_ANIMATION_TIME = 0.15;
const MINIMIZE_WINDOW_ANIMATION_TIME = 0.2;
const SHOW_WINDOW_ANIMATION_TIME = 0.15;
const DIALOG_SHOW_WINDOW_ANIMATION_TIME = 0.1;
@ -83,12 +81,10 @@ const DisplayChangeDialog = new Lang.Class({
*/
this._cancelButton = this.addButton({ label: _("Revert Settings"),
action: Lang.bind(this, this._onFailure),
key: Clutter.Escape },
{ expand: true, x_fill: false, x_align: St.Align.START });
key: Clutter.Escape });
this._okButton = this.addButton({ label: _("Keep Changes"),
action: Lang.bind(this, this._onSuccess),
default: true },
{ expand: false, x_fill: false, x_align: St.Align.END });
default: true });
this._timeoutId = Mainloop.timeout_add(ONE_SECOND, Lang.bind(this, this._tick));
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._tick');
@ -217,7 +213,8 @@ const WorkspaceTracker = new Lang.Class({
_getWorkspaceSettings: function() {
let settings = global.get_overrides_settings();
if (settings.list_keys().indexOf('dynamic-workspaces') > -1)
if (settings &&
settings.settings_schema.list_keys().indexOf('dynamic-workspaces') > -1)
return settings;
return new Gio.Settings({ schema_id: 'org.gnome.mutter' });
},
@ -478,6 +475,62 @@ const TilePreview = new Lang.Class({
}
});
const TouchpadWorkspaceSwitchAction = new Lang.Class({
Name: 'TouchpadWorkspaceSwitchAction',
_init: function(actor) {
this._dx = 0;
this._dy = 0;
actor.connect('captured-event', Lang.bind(this, this._handleEvent));
},
_checkActivated: function() {
const MOTION_THRESHOLD = 50;
let allowedModes = Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW;
let dir;
if ((allowedModes & Main.actionMode) == 0)
return;
if (this._dy < -MOTION_THRESHOLD)
dir = Meta.MotionDirection.DOWN;
else if (this._dy > MOTION_THRESHOLD)
dir = Meta.MotionDirection.UP;
else if (this._dx < -MOTION_THRESHOLD)
dir = Meta.MotionDirection.RIGHT;
else if (this._dx > MOTION_THRESHOLD)
dir = Meta.MotionDirection.LEFT;
else
return;
this.emit('activated', dir);
},
_handleEvent: function(actor, event) {
if (event.type() != Clutter.EventType.TOUCHPAD_SWIPE)
return Clutter.EVENT_PROPAGATE;
if (event.get_gesture_swipe_finger_count() != 4)
return Clutter.EVENT_PROPAGATE;
if (event.get_gesture_phase() == Clutter.TouchpadGesturePhase.UPDATE) {
let [dx, dy] = event.get_gesture_motion_delta(event);
this._dx += dx;
this._dy += dy;
} else {
if (event.get_gesture_phase() == Clutter.TouchpadGesturePhase.END)
this._checkActivated();
this._dx = 0;
this._dy = 0;
}
return Clutter.EVENT_STOP;
}
});
Signals.addSignalMethods(TouchpadWorkspaceSwitchAction.prototype);
const WorkspaceSwitchAction = new Lang.Class({
Name: 'WorkspaceSwitchAction',
Extends: Clutter.SwipeAction,
@ -623,8 +676,6 @@ const WindowManager = new Lang.Class({
this._minimizing = [];
this._unminimizing = [];
this._maximizing = [];
this._unmaximizing = [];
this._mapping = [];
this._destroying = [];
this._movingWindow = null;
@ -639,8 +690,6 @@ const WindowManager = new Lang.Class({
this._shellwm.connect('kill-switch-workspace', Lang.bind(this, this._switchWorkspaceDone));
this._shellwm.connect('kill-window-effects', Lang.bind(this, function (shellwm, actor) {
this._minimizeWindowDone(shellwm, actor);
this._maximizeWindowDone(shellwm, actor);
this._unmaximizeWindowDone(shellwm, actor);
this._mapWindowDone(shellwm, actor);
this._destroyWindowDone(shellwm, actor);
}));
@ -651,8 +700,7 @@ const WindowManager = new Lang.Class({
this._shellwm.connect('show-window-menu', Lang.bind(this, this._showWindowMenu));
this._shellwm.connect('minimize', Lang.bind(this, this._minimizeWindow));
this._shellwm.connect('unminimize', Lang.bind(this, this._unminimizeWindow));
this._shellwm.connect('maximize', Lang.bind(this, this._maximizeWindow));
this._shellwm.connect('unmaximize', Lang.bind(this, this._unmaximizeWindow));
this._shellwm.connect('size-change', Lang.bind(this, this._sizeChangeWindow));
this._shellwm.connect('map', Lang.bind(this, this._mapWindow));
this._shellwm.connect('destroy', Lang.bind(this, this._destroyWindow));
this._shellwm.connect('filter-keybinding', Lang.bind(this, this._filterKeybinding));
@ -872,15 +920,22 @@ const WindowManager = new Lang.Class({
false, -1, 1);
let gesture = new WorkspaceSwitchAction();
gesture.connect('activated', Lang.bind(this, function(action, direction) {
let newWs = global.screen.get_active_workspace().get_neighbor(direction);
this.actionMoveWorkspace(newWs);
}));
gesture.connect('activated', Lang.bind(this, this._actionSwitchWorkspace));
global.stage.add_action(gesture);
// This is not a normal Clutter.GestureAction, doesn't need add_action()
gesture = new TouchpadWorkspaceSwitchAction(global.stage);
gesture.connect('activated', Lang.bind(this, this._actionSwitchWorkspace));
gesture = new AppSwitchAction();
gesture.connect('activated', Lang.bind(this, this._switchApp));
global.stage.add_action(gesture);
},
_actionSwitchWorkspace: function(action, direction) {
let newWs = global.screen.get_active_workspace().get_neighbor(direction);
this.actionMoveWorkspace(newWs);
},
_lookupIndex: function (windows, metaWindow) {
@ -1162,22 +1217,8 @@ const WindowManager = new Lang.Class({
}
},
_maximizeWindow : function(shellwm, actor, targetX, targetY, targetWidth, targetHeight) {
shellwm.completed_maximize(actor);
},
_maximizeWindowDone : function(shellwm, actor) {
},
_maximizeWindowOverwrite : function(shellwm, actor) {
},
_unmaximizeWindow : function(shellwm, actor, targetX, targetY, targetWidth, targetHeight) {
shellwm.completed_unmaximize(actor);
},
_unmaximizeWindowDone : function(shellwm, actor) {
_sizeChangeWindow : function(shellwm, actor, whichChange, oldFrameRect, oldBufferRect) {
shellwm.completed_size_change(actor);
},
_hasAttachedDialogs: function(window, ignoreWindow) {

View File

@ -74,7 +74,7 @@ const WindowMenu = new Lang.Class({
window.make_above();
}));
if (window.is_above())
item.setOrnament(PopupMenu.Ornament.DOT);
item.setOrnament(PopupMenu.Ornament.CHECK);
if (window.get_maximized() == Meta.MaximizeFlags.BOTH ||
type == Meta.WindowType.DOCK ||
type == Meta.WindowType.DESKTOP ||
@ -93,7 +93,7 @@ const WindowMenu = new Lang.Class({
window.stick();
}));
if (isSticky)
item.setOrnament(PopupMenu.Ornament.DOT);
item.setOrnament(PopupMenu.Ornament.CHECK);
if (window.is_always_on_all_workspaces())
item.setSensitive(false);
@ -101,13 +101,22 @@ const WindowMenu = new Lang.Class({
if (!isSticky) {
let workspace = window.get_workspace();
let idx = workspace.index();
if (idx > 0) {
if (workspace != workspace.get_neighbor(Meta.MotionDirection.LEFT)) {
this.addAction(_("Move to Workspace Left"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.LEFT));
}));
}
if (workspace != workspace.get_neighbor(Meta.MotionDirection.RIGHT)) {
this.addAction(_("Move to Workspace Right"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.RIGHT));
}));
}
if (workspace != workspace.get_neighbor(Meta.MotionDirection.UP)) {
this.addAction(_("Move to Workspace Up"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.UP));
}));
}
if (idx < nWorkspaces) {
if (workspace != workspace.get_neighbor(Meta.MotionDirection.DOWN)) {
this.addAction(_("Move to Workspace Down"), Lang.bind(this, function(event) {
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.DOWN));
}));

295
po/an.po
View File

@ -9,24 +9,23 @@ 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: 2015-03-17 12:39+0000\n"
"PO-Revision-Date: 2015-03-17 19:50+0100\n"
"Last-Translator: Daniel Martinez <entaltoaragon@gmail.com>\n"
"POT-Creation-Date: 2015-07-23 08:08+0000\n"
"PO-Revision-Date: 2015-04-28 08:40+0200\n"
"Last-Translator: Daniel <entaltoaragon@gmail.com>\n"
"Language-Team: Aragonés <softaragones@googlegroups.com>\n"
"Language: an\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Gtranslator 2.91.6\n"
"X-Generator: Pootle 2.5.1.1\n"
"X-POOTLE-MTIME: 1430206804.000000\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
msgstr "Sistema"
#: ../data/50-gnome-shell-system.xml.in.h:2
#| msgid "%d new notification"
#| msgid_plural "%d new notifications"
msgid "Show the notification list"
msgstr "Amostrar a lista de notificacions"
@ -136,17 +135,18 @@ msgstr "Indiz de l'anvista seleccionada actual en o selector d'aplicacion."
msgid "History for command (Alt-F2) dialog"
msgstr "Historico d'o dialogo de comandos (Alt+F2)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
#. Translators: looking glass is a debugger and inspector tool, see https://live.gnome.org/GnomeShell/LookingGlass
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "History for the looking glass dialog"
msgstr "Historico d'o dialogo de \"looking glass\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid "Always show the 'Log out' menu item in the user menu."
msgstr ""
"Amostrar siempre l'elemento de menú \"Trancar sesión\" en o menú de "
"l'usuario."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid ""
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
"user, single-session situations."
@ -154,14 +154,14 @@ msgstr ""
"Ista clau sobrescribe a ocultación automatica de l'elemento de menú "
"\"Trancar sesión\" en situacions d'un solo usuario u d'una sola sesión."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr ""
"Indica si se debe recordar a clau ta amontar sistemas de fichers remotos u "
"zifraus"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid ""
"The shell will request a password when an encrypted device or a remote "
"filesystem is mounted. If the password can be saved for future use a "
@ -173,81 +173,79 @@ msgstr ""
"s'amostrará a caixeta \"Remerar clau\". Ista clau estableix a valor "
"predeterminada d'a caixeta."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Show the week date in the calendar"
msgstr "Amostrar a calendata d'a semana en o calendario"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Si ye cierta, amuestra a calendata de semana ISO en o calandario."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Asociación de teclas ta ubrir o menú de l'aplicación"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Asociación de teclas ta ubrir o menú de l'aplicación."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Asociación de teclas ta la vista \"Amostrar aplicacions\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Asociación de teclas ta ubrir la vista \"Amostrar aplicacions\" de la vista "
"d'actividatz."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Asociación de teclas ta l'anvista cheneral"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Asociación de teclas ta ubrir l'anvista d'actividatz"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#| msgid "Keybinding to toggle the visibility of the message tray"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr ""
"Asociación de teclas ta cambiar a visibilidat d'a lista de notificacions"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#| msgid "Keybinding to toggle the visibility of the message tray."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
"Asociación de teclas ta cambiar a visibilidat d'a lista de notificacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Asociación de teclas ta dar o foco a la notificación activa"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Asociación de teclas ta dar o foco a la notificación activa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Asociación de teclas que pausan y continan todas as execucions de «tweens», "
"ta propositos de depuraci'on"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Que teclau usar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "O tipo de teclau que usar."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Selector de limite ta l'aria de treballo actual."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -256,21 +254,21 @@ msgstr ""
"finestras en l'aria de treballo actual. D'atra man, s'incluirán todas as "
"aplicacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "O modo d'icono de l'aplicación."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
"only' (shows only the application icon) or 'both'."
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-only' "
"(shows only the application icon) or 'both'."
msgstr ""
"Configura cómo s'amuestran as finestras en o selector. Os valore posibles "
"son \"thumbnail-only\" (amuestra una miniatura d'a finestra), \"app-icon-only"
"\" (solament amuestra l'icono de l'aplicación) u \"both\"."
"son \"thumbnail-only\" (amuestra una miniatura d'a finestra), \"app-icon-"
"only\" (solament amuestra l'icono de l'aplicación) u \"both\"."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -278,31 +276,31 @@ msgstr ""
"Si en ye verdadero, nomás s'amostrarán en o selector finestras de l'aria de "
"treballo actual. D'atra man, s'incluirán todas as finestras."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Acoplar un dialogo modal a la finestra pai"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Ista clau sobrescribe a clau en org.gnome.mutter en executar GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Activar o mosaico en os bordes en arrocegar finestras a os bordes d'a "
"finestra"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "As arias de treballo se chestionan dinámicamente"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Arias de treballo solament en a pantalla prencipal"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Retardo en cambiar o foco d'o churi dica que o puntero deixa de mover-se"
@ -311,12 +309,12 @@ msgstr ""
msgid "Network Login"
msgstr "Encetar sesión en o rete"
#: ../js/extensionPrefs/main.js:123
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "I habió una error en lanzar o diálogo de preferencias ta %s:"
#: ../js/extensionPrefs/main.js:155
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Extensions de GNOME Shell"
@ -327,39 +325,39 @@ msgstr "Extensions de GNOME Shell"
msgid "Cancel"
msgstr "Cancelar"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
msgid "Next"
msgstr "Siguient"
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Desbloquiar"
#: ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Encetar sesión"
#: ../js/gdm/loginDialog.js:280
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Esleyir a sesión"
#: ../js/gdm/loginDialog.js:420
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "No ye en a lista?"
#: ../js/gdm/loginDialog.js:829
#: ../js/gdm/loginDialog.js:847
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(eix., usuario u %s)"
#: ../js/gdm/loginDialog.js:834 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Nombre d'usuario:"
msgstr "Nombre d'usuario: "
#: ../js/gdm/loginDialog.js:1169
#: ../js/gdm/loginDialog.js:1180
msgid "Login Window"
msgstr "Finestra d'inicio de sesión"
@ -452,31 +450,31 @@ msgstr "%d de %B de %Y, %l%M %"
msgid "Web Authentication Redirect"
msgstr "Rendrecera ta autentiación web"
#: ../js/ui/appDisplay.js:792
#: ../js/ui/appDisplay.js:789
msgid "Frequently used applications will appear here"
msgstr "As aplicaciones usadas freqüentment amaneixerán aquí"
#: ../js/ui/appDisplay.js:912
#: ../js/ui/appDisplay.js:909
msgid "Frequent"
msgstr "Freqüent"
#: ../js/ui/appDisplay.js:919
#: ../js/ui/appDisplay.js:916
msgid "All"
msgstr "Todas"
#: ../js/ui/appDisplay.js:1850
#: ../js/ui/appDisplay.js:1845
msgid "New Window"
msgstr "Finestra nueva"
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
#: ../js/ui/appDisplay.js:1873 ../js/ui/dash.js:289
msgid "Remove from Favorites"
msgstr "Sacar d'os favoritos"
#: ../js/ui/appDisplay.js:1884
#: ../js/ui/appDisplay.js:1879
msgid "Add to Favorites"
msgstr "Anyadir a os favoritos"
#: ../js/ui/appDisplay.js:1894
#: ../js/ui/appDisplay.js:1889
msgid "Show Details"
msgstr "Amostrar detalles"
@ -490,15 +488,19 @@ msgstr "S'ha anyadiu %s a os suyos favoritos."
msgid "%s has been removed from your favorites."
msgstr "S'ha sacau %s d'os suyos favoritos"
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Configuración"
#: ../js/ui/backgroundMenu.js:21
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Cambiar o fondo…"
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Preferencias de pantalla"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:357
msgid "Settings"
msgstr "Configuración"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@ -551,54 +553,53 @@ msgctxt "grid saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:563
#: ../js/ui/calendar.js:564
msgid "Previous month"
msgstr "Mes anterior"
#: ../js/ui/calendar.js:573
#: ../js/ui/calendar.js:574
msgid "Next month"
msgstr "Mes siguient"
#: ../js/ui/calendar.js:780
#: ../js/ui/calendar.js:781
msgid "Week %V"
msgstr "Semana %V"
#. 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:1182
#: ../js/ui/calendar.js:1187
msgctxt "event list time"
msgid "All Day"
msgstr "Tot o diya"
#: ../js/ui/calendar.js:1288
#: ../js/ui/calendar.js:1289
msgid "Clear section"
msgstr "Limpiar a sección"
#: ../js/ui/calendar.js:1515
#: ../js/ui/calendar.js:1516
msgid "Events"
msgstr "Eventos"
#: ../js/ui/calendar.js:1524
#: ../js/ui/calendar.js:1525
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#: ../js/ui/calendar.js:1528
#: ../js/ui/calendar.js:1529
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d de %B de %Y"
#: ../js/ui/calendar.js:1613
#: ../js/ui/calendar.js:1614
msgid "Notifications"
msgstr "Notificacions"
#: ../js/ui/calendar.js:1764
#| msgid "Notifications"
#: ../js/ui/calendar.js:1765
msgid "No Notifications"
msgstr "No i hai notificacions"
#: ../js/ui/calendar.js:1767
#: ../js/ui/calendar.js:1768
msgid "No Events"
msgstr "No i hai eventos"
@ -634,23 +635,23 @@ msgstr "Connectar"
#: ../js/ui/components/networkAgent.js:293
#: ../js/ui/components/networkAgent.js:303
msgid "Password: "
msgstr "Clau de paso:"
msgstr "Clau de paso: "
#: ../js/ui/components/networkAgent.js:238
msgid "Key: "
msgstr "Clau:"
msgstr "Clau: "
#: ../js/ui/components/networkAgent.js:277
msgid "Identity: "
msgstr "Identidat:"
msgstr "Identidat: "
#: ../js/ui/components/networkAgent.js:279
msgid "Private key password: "
msgstr "Clau d'a clau privada:"
msgstr "Clau d'a clau privada: "
#: ../js/ui/components/networkAgent.js:291
msgid "Service: "
msgstr "Servicio:"
msgstr "Servicio: "
#: ../js/ui/components/networkAgent.js:320
#: ../js/ui/components/networkAgent.js:658
@ -661,8 +662,8 @@ msgstr "O ret sin cordón requiere autenticación"
#: ../js/ui/components/networkAgent.js:659
#, javascript-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"%s”."
"Passwords or encryption keys are required to access the wireless network "
"%s”."
msgstr ""
"S'amenesten claus u claus de zifrau ta accedir a o ret inalambrico\"%s\"."
@ -673,7 +674,7 @@ msgstr "Autenticación 802.1X cableada"
#: ../js/ui/components/networkAgent.js:327
msgid "Network name: "
msgstr "Nombre d'o ret:"
msgstr "Nombre d'o ret: "
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:666
@ -733,7 +734,7 @@ msgstr "Prebe atra vegada."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:768
#: ../js/ui/components/telepathyClient.js:757
#, javascript-format
msgid "%s is now known as %s"
msgstr "Agora %s se dice %s"
@ -742,11 +743,11 @@ msgstr "Agora %s se dice %s"
msgid "Windows"
msgstr "Finestras"
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
msgid "Show Applications"
msgstr "Amostrar aplicacions"
#: ../js/ui/dash.js:453
#: ../js/ui/dash.js:449
msgid "Dash"
msgstr "Tablero"
@ -754,7 +755,6 @@ msgstr "Tablero"
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#. */
#: ../js/ui/dateMenu.js:73
#| msgid "%A %B %e, %Y"
msgid "%B %e %Y"
msgstr "%B %e %Y"
@ -763,7 +763,6 @@ msgstr "%B %e %Y"
#. * date, e.g. "Tuesday February 17 2015".
#. */
#: ../js/ui/dateMenu.js:80
#| msgid "%A %B %e, %Y"
msgid "%A %B %e %Y"
msgstr "%A %e de %B de %Y"
@ -772,7 +771,6 @@ msgid "Add world clocks…"
msgstr "Adhibir reloches d'o mundo…"
#: ../js/ui/dateMenu.js:161
#| msgid "Open Clocks"
msgid "World Clocks"
msgstr "Reloches d'o mundo"
@ -916,17 +914,16 @@ msgstr "Instalar"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Descargar y instalar \"%s\" dende extensions.gnome.org?"
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:580
#: ../js/ui/keyboard.js:747 ../js/ui/status/keyboard.js:713
msgid "Keyboard"
msgstr "Teclau"
#. translators: 'Hide' is a verb */
#: ../js/ui/legacyTray.js:64
#| msgid "Hide Text"
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Amagar servilla"
#: ../js/ui/legacyTray.js:104
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Iconos d'estau"
@ -982,7 +979,7 @@ msgstr "Veyer fuent"
msgid "Web Page"
msgstr "Pachina web"
#: ../js/ui/messageTray.js:2133
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Informacion d'o sistema"
@ -1024,7 +1021,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Introducir un comando"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Trancar"
@ -1052,27 +1049,27 @@ msgid_plural "%d new notifications"
msgstr[0] "%d notificación nueva"
msgstr[1] "%d notificacions nuevas"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
msgid "Lock"
msgstr "Blocar"
#: ../js/ui/screenShield.js:668
#: ../js/ui/screenShield.js:684
msgid "GNOME needs to lock the screen"
msgstr "GNOME ameneste blocar a pantalla"
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "No se podió blocar"
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Una aplicación impidió o bloqueyo"
#: ../js/ui/search.js:616
#: ../js/ui/search.js:617
msgid "Searching…"
msgstr "Mirando…"
#: ../js/ui/search.js:618
#: ../js/ui/search.js:619
msgid "No results."
msgstr "No se troboron resultaus."
@ -1136,11 +1133,11 @@ msgstr "Refuso de teclas"
msgid "Mouse Keys"
msgstr "Teclas d'o ratet"
#: ../js/ui/status/accessibility.js:144
#: ../js/ui/status/accessibility.js:167
msgid "High Contrast"
msgstr "Contraste alto"
#: ../js/ui/status/accessibility.js:193
#: ../js/ui/status/accessibility.js:202
msgid "Large Text"
msgstr "Texto gran"
@ -1174,7 +1171,7 @@ msgstr "No connectau"
msgid "Brightness"
msgstr "Brilo"
#: ../js/ui/status/keyboard.js:603
#: ../js/ui/status/keyboard.js:736
msgid "Show Keyboard Layout"
msgstr "Amostrar a distribución d'o teclau"
@ -1385,23 +1382,23 @@ msgstr "Modo avión"
msgid "On"
msgstr "Enchegau"
#: ../js/ui/status/system.js:317
#: ../js/ui/status/system.js:337
msgid "Switch User"
msgstr "Cambear d'usuario"
#: ../js/ui/status/system.js:322
#: ../js/ui/status/system.js:342
msgid "Log Out"
msgstr "Trancar sesion"
#: ../js/ui/status/system.js:341
#: ../js/ui/status/system.js:361
msgid "Orientation Lock"
msgstr "Bloqueyo d'Orientación"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:369
msgid "Suspend"
msgstr "Suspender"
#: ../js/ui/status/system.js:352
#: ../js/ui/status/system.js:372
msgid "Power Off"
msgstr "Amortar"
@ -1433,27 +1430,27 @@ msgstr "Aplicacions"
msgid "Search"
msgstr "Mirar"
#: ../js/ui/windowAttentionHandler.js:19
#: ../js/ui/windowAttentionHandler.js:20
#, javascript-format
msgid "“%s” is ready"
msgstr "\"%s\" ye parau"
#: ../js/ui/windowManager.js:65
#: ../js/ui/windowManager.js:63
msgid "Do you want to keep these display settings?"
msgstr "Quiers mantener istas opcions de pantalla?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:84
#: ../js/ui/windowManager.js:82
msgid "Revert Settings"
msgstr "Revertir as opcions"
#: ../js/ui/windowManager.js:88
#: ../js/ui/windowManager.js:86
msgid "Keep Changes"
msgstr "Mantener os cambeos"
#: ../js/ui/windowManager.js:107
#: ../js/ui/windowManager.js:105
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -1462,7 +1459,7 @@ msgstr[1] "Os cambeos d'as opcions serán revertius en %d segundos"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:599
#: ../js/ui/windowManager.js:660
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@ -1499,14 +1496,48 @@ msgstr "Siempre veyible"
msgid "Always on Visible Workspace"
msgstr "Siempre en l'aria de treballo veyible"
#: ../js/ui/windowMenu.js:106
#: ../js/ui/windowMenu.js:105
#, fuzzy
#| msgid "Move to Workspace Up"
msgid "Move to Workspace Left"
msgstr "Mover a l'aria de treballo d'a cucha"
#: ../js/ui/windowMenu.js:110
#, fuzzy
#| msgid "Move to Workspace Up"
msgid "Move to Workspace Right"
msgstr "Mover a l'aria de treballo d'a dreita"
#: ../js/ui/windowMenu.js:115
msgid "Move to Workspace Up"
msgstr "Mover ta l'aria de treballo d'alto"
#: ../js/ui/windowMenu.js:111
#: ../js/ui/windowMenu.js:120
msgid "Move to Workspace Down"
msgstr "Mover ta l'aria de treballo d'abaixo"
#: ../js/ui/windowMenu.js:136
#, fuzzy
#| msgid "Move to Workspace Up"
msgid "Move to Monitor Up"
msgstr "Mover a la pantalla d'alto"
#: ../js/ui/windowMenu.js:142
#, fuzzy
#| msgid "Move to Workspace Down"
msgid "Move to Monitor Down"
msgstr "Mover a la pantalla d'abaixo"
#: ../js/ui/windowMenu.js:148
#, fuzzy
msgid "Move to Monitor Left"
msgstr "Mover a la pantalla d'a cucha"
#: ../js/ui/windowMenu.js:154
#, fuzzy
msgid "Move to Monitor Right"
msgstr "Mover a la pantalla d'a dreita"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Calandario d'Evolution"
@ -1561,11 +1592,11 @@ msgstr "Desconoxiu"
msgid "Failed to launch “%s”"
msgstr "Ha fallau en aventar \"%s\""
#: ../src/shell-keyring-prompt.c:714
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "As claus de paso no coinciden."
#: ../src/shell-keyring-prompt.c:722
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "A clau de paso no puede estar vueda"
@ -1803,14 +1834,6 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "The maximum accuracy level of location."
#~ msgstr "O maximo libel de precisión d'ubicación."
#~| msgid ""
#~| "Configures the maximum level of location accuracy applications are "
#~| "allowed to see. Valid options are 'off' (disable location tracking), "
#~| "'country', 'city', 'neighborhood', 'street', and 'exact' (typically "
#~| "requires GPS receiver). Please keep in mind that this only controls what "
#~| "Geoclue will allow applications to see and they can find user's location "
#~| "on their own using network resources (albeit with street-level accuracy "
#~| "at best)."
#~ msgid ""
#~ "Configures the maximum level of location accuracy applications are "
#~ "allowed to see. Valid options are 'off' (disable location tracking), "
@ -1822,8 +1845,8 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgstr ""
#~ "Configura o ran maximo de precisión d'ubicación que as aplicacions "
#~ "pueden veyer. As opcions validas son 'off' (seguimiento d'ubicación "
#~ "desenchegau), 'country', 'city', 'neighborhood', 'street', and "
#~ "'exact' (typicament requier GPS "
#~ "desenchegau), 'country', 'city', 'neighborhood', 'street', and 'exact' "
#~ "(typicament requier GPS "
#~ msgid "Arrangement of buttons on the titlebar"
#~ msgstr "Orden d'os botons en a barra de titol"
@ -1968,7 +1991,6 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "Session…"
#~ msgstr "Sesión…"
#~| msgid "Power Off"
#~ msgid "Power"
#~ msgstr "Enerchía"
@ -2132,11 +2154,9 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "%d%%"
#~ msgstr "%d%%"
#~| msgid "AC adapter"
#~ msgid "AC Adapter"
#~ msgstr "Adaptador de corrient"
#~| msgid "Laptop battery"
#~ msgid "Laptop Battery"
#~ msgstr "Bateria d'o portatil"
@ -2149,11 +2169,9 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "PDA"
#~ msgstr "PDA"
#~| msgid "Cell phone"
#~ msgid "Cell Phone"
#~ msgstr "Telefono movil"
#~| msgid "Media player"
#~ msgid "Media Player"
#~ msgstr "Reproductor multimeya"
@ -2163,7 +2181,6 @@ msgstr "L'usuario refusó o dialogo d'autenticación"
#~ msgid "Computer"
#~ msgstr "Equipo"
#~| msgid "Unknown"
#~ msgctxt "device"
#~ msgid "Unknown"
#~ msgstr "Desconoxiu"

524
po/ca.po

File diff suppressed because it is too large Load Diff

453
po/cs.po

File diff suppressed because it is too large Load Diff

620
po/de.po

File diff suppressed because it is too large Load Diff

521
po/el.po

File diff suppressed because it is too large Load Diff

506
po/es.po

File diff suppressed because it is too large Load Diff

1650
po/fa.po

File diff suppressed because it is too large Load Diff

631
po/fi.po

File diff suppressed because it is too large Load Diff

1105
po/fr.po

File diff suppressed because it is too large Load Diff

1066
po/fur.po

File diff suppressed because it is too large Load Diff

516
po/gl.po

File diff suppressed because it is too large Load Diff

495
po/he.po

File diff suppressed because it is too large Load Diff

491
po/hu.po

File diff suppressed because it is too large Load Diff

518
po/it.po

File diff suppressed because it is too large Load Diff

503
po/ja.po

File diff suppressed because it is too large Load Diff

517
po/kk.po

File diff suppressed because it is too large Load Diff

507
po/ko.po

File diff suppressed because it is too large Load Diff

541
po/lt.po

File diff suppressed because it is too large Load Diff

424
po/nb.po
View File

@ -9,9 +9,9 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell 3.17.x\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-14 15:38+0200\n"
"PO-Revision-Date: 2015-05-14 15:39+0200\n"
"Last-Translator: Åka Sikrom <a4NOSPAMPLEASETHANKYOU@hush.com>\n"
"POT-Creation-Date: 2015-09-07 19:22+0200\n"
"PO-Revision-Date: 2015-09-07 19:31+0200\n"
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
"Language-Team: Norwegian bokmål <i18n-nb@lister.ping.uio.no>\n"
"Language: Norwegian bokmål\n"
"MIME-Version: 1.0\n"
@ -131,15 +131,16 @@ msgstr "Indeks for valgt visning i programvelgeren."
msgid "History for command (Alt-F2) dialog"
msgstr "Historikk for kommandodialog (Alt-F2)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
#. Translators: looking glass is a debugger and inspector tool, see https://live.gnome.org/GnomeShell/LookingGlass
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "History for the looking glass dialog"
msgstr "Historikk for forstørrelsesglass-dialogen"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid "Always show the 'Log out' menu item in the user menu."
msgstr "Alltid vis menyoppføringen «Logg ut» i brukermenyen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid ""
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
"user, single-session situations."
@ -147,12 +148,12 @@ msgstr ""
"Denne nøkkelen overstyrer skjuling av menyoppføringen «Logg ut» i "
"situasjonen én bruker, én sesjon."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr "Om passord til eksterne eller krypterte filsystemer skal huskes."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid ""
"The shell will request a password when an encrypted device or a remote "
"filesystem is mounted. If the password can be saved for future use a "
@ -164,76 +165,76 @@ msgstr ""
"avkryssingsboks med teksten «Husk passord». Denne nøkkelen bestemmer "
"standardverdien for avkryssingsboksen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Show the week date in the calendar"
msgstr "Vis ukedato/ukenummer i kalender"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Viser ISO-ukedato i kalenderen hvis «true»."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Tastaturbinding som åpner programmenyen"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Tastaturbinding som åpner programmenyen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Tastaturbinding som åpner visningen «Vis programmer»"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Tastaturbinding som åpner visningen «Vis programmer» i aktivitetsoversikten."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Tastaturbinding som åpner oversikten"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Tastaturbinding som åpner aktivitetsoversikten."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Tastaturbinding som slår av/på visning av varslingsliste"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Tastaturbinding som slår av/på visning av varslingsliste."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Tastaturbinding som fokuserer aktiv varsling"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Tastaturbinding som fokuserer aktiv varsling."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Hurtigtast som stanser og fortsetter pågående bevegelser til "
"feilsøkingsformål"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Tastatur som skal brukes"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Type tastatur som skal brukes."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Begrens programveksling til gjeldende arbeidsområde."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -242,11 +243,11 @@ msgstr ""
"gjeldende arbeidsområder som vises i programveksleren. I motsatt fall kan du "
"veksle mellom programmer på tvers av arbeidsområder."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Ikonmodus for programmet."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -256,7 +257,7 @@ msgstr ""
"valgalternativer er «thumbnail-only» (viser miniatyrbilde av vinduet), «app-"
"icon-only» (viser bare programikonet) og «both» (viser begge forannevnte)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -265,30 +266,30 @@ msgstr ""
"arbeidsområder som vises i programveksleren. I motsatt fall vises vinduer "
"fra alle arbeidsområder."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Fest modal dialog til opphavsvinduet"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Denne nøkkelen overstyrer nøkkelen i org.gnome.mutter når GNOME Shell kjøres."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Del opp skjermkantene i fliser når brukeren drar og slipper vinduer på dem"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Arbeidsområder håndteres dynamisk"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Arbeidsområder vises kun på hovedskjerm"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Utsett fokusendringer i musmodus til peker slutter å bevege seg"
@ -306,13 +307,14 @@ msgid "GNOME Shell Extensions"
msgstr "Utvidelser for GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:166 ../js/ui/endSessionDialog.js:452
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Avbryt"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Neste"
@ -339,7 +341,7 @@ msgstr "Ikke listet?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:840
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(f.eks. bruker eller %s)"
@ -347,12 +349,12 @@ msgstr "(f.eks. bruker eller %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:845 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Brukernavn: "
#: ../js/gdm/loginDialog.js:1173
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Innloggingsvindu"
@ -460,31 +462,31 @@ msgstr "%d %B %Y, %H.%M"
msgid "Web Authentication Redirect"
msgstr "Omdirigering av autentisering på nett"
#: ../js/ui/appDisplay.js:788
#: ../js/ui/appDisplay.js:794
msgid "Frequently used applications will appear here"
msgstr "Ofte brukte programmer vises her"
#: ../js/ui/appDisplay.js:908
#: ../js/ui/appDisplay.js:914
msgid "Frequent"
msgstr "Ofte"
#: ../js/ui/appDisplay.js:915
#: ../js/ui/appDisplay.js:921
msgid "All"
msgstr "Alle"
#: ../js/ui/appDisplay.js:1844
#: ../js/ui/appDisplay.js:1853
msgid "New Window"
msgstr "Nytt vindu"
#: ../js/ui/appDisplay.js:1872 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1881 ../js/ui/dash.js:289
msgid "Remove from Favorites"
msgstr "Fjern fra favoritter"
#: ../js/ui/appDisplay.js:1878
#: ../js/ui/appDisplay.js:1887
msgid "Add to Favorites"
msgstr "Legg til i favoritter"
#: ../js/ui/appDisplay.js:1888
#: ../js/ui/appDisplay.js:1897
msgid "Show Details"
msgstr "Vis detaljer"
@ -507,12 +509,12 @@ msgid "Display Settings"
msgstr "Innstillinger for skjerm"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:334
#: ../js/ui/status/system.js:366
msgid "Settings"
msgstr "Innstillinger"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:53
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -522,94 +524,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "S"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "M"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "O"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:90
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:92
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "F"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:94
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "L"
#: ../js/ui/calendar.js:564
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Forrige måned"
#: ../js/ui/calendar.js:574
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Neste måned"
#: ../js/ui/calendar.js:781
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Uke %V"
#. 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:1187
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Hele dagen"
#: ../js/ui/calendar.js:1289
#: ../js/ui/calendar.js:1291
msgid "Clear section"
msgstr "Tøm seksjon"
#: ../js/ui/calendar.js:1516
#: ../js/ui/calendar.js:1518
msgid "Events"
msgstr "Hendelser"
#: ../js/ui/calendar.js:1525
#: ../js/ui/calendar.js:1527
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A %B %d"
#: ../js/ui/calendar.js:1529
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A %B %d, %Y"
#: ../js/ui/calendar.js:1614
#: ../js/ui/calendar.js:1616
msgid "Notifications"
msgstr "Varslinger"
#: ../js/ui/calendar.js:1765
#: ../js/ui/calendar.js:1767
msgid "No Notifications"
msgstr "Ingen varslinger"
#: ../js/ui/calendar.js:1768
#: ../js/ui/calendar.js:1770
msgid "No Events"
msgstr "Ingen hendelser"
@ -626,16 +628,16 @@ msgstr "Ekstern stasjon koblet fra"
msgid "Open with %s"
msgstr "Åpne med %s"
#: ../js/ui/components/keyring.js:94 ../js/ui/components/polkitAgent.js:285
#: ../js/ui/components/keyring.js:120 ../js/ui/components/polkitAgent.js:315
msgid "Password:"
msgstr "Passord:"
#: ../js/ui/components/keyring.js:120
#: ../js/ui/components/keyring.js:153
msgid "Type again:"
msgstr "Skriv på nytt:"
#: ../js/ui/components/networkAgent.js:140 ../js/ui/status/network.js:277
#: ../js/ui/status/network.js:359 ../js/ui/status/network.js:919
#: ../js/ui/components/networkAgent.js:140 ../js/ui/status/network.js:269
#: ../js/ui/status/network.js:352 ../js/ui/status/network.js:919
msgid "Connect"
msgstr "Koble til"
@ -721,19 +723,19 @@ msgstr "Nettverkspassord for mobilt bredbånd"
msgid "A password is required to connect to “%s”."
msgstr "Du må oppgi et passord for å koble til «%s»."
#: ../js/ui/components/networkAgent.js:647 ../js/ui/status/network.js:1657
#: ../js/ui/components/networkAgent.js:647 ../js/ui/status/network.js:1658
msgid "Network Manager"
msgstr "Nettverkshåndtering"
#: ../js/ui/components/polkitAgent.js:54
#: ../js/ui/components/polkitAgent.js:60
msgid "Authentication Required"
msgstr "Autentisering kreves"
#: ../js/ui/components/polkitAgent.js:96
#: ../js/ui/components/polkitAgent.js:102
msgid "Administrator"
msgstr "Administrator"
#: ../js/ui/components/polkitAgent.js:175
#: ../js/ui/components/polkitAgent.js:182
msgid "Authenticate"
msgstr "Autentiser"
@ -741,13 +743,13 @@ msgstr "Autentiser"
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/components/polkitAgent.js:271 ../js/ui/shellMountOperation.js:383
#: ../js/ui/components/polkitAgent.js:301 ../js/ui/shellMountOperation.js:383
msgid "Sorry, that didn't work. Please try again."
msgstr "Beklager, det virket ikke. Prøv igjen."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s er nå kjent som %s"
@ -929,7 +931,7 @@ msgstr "Installer"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Vil du laste ned og installere «%s» fra extensions.gnome.org?"
#: ../js/ui/keyboard.js:718 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:741 ../js/ui/status/keyboard.js:713
msgid "Keyboard"
msgstr "Tastatur"
@ -960,17 +962,13 @@ msgstr "Skjul feil"
msgid "Show Errors"
msgstr "Vis feil"
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:71
#: ../js/ui/status/location.js:176
#: ../js/ui/lookingGlass.js:716
msgid "Enabled"
msgstr "Slått på"
#. Translators: this is for a network device that cannot be activated
#. because it's disabled by rfkill (airplane mode)
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:179
#: ../js/ui/status/network.js:592 ../src/gvc/gvc-mixer-control.c:1830
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "Slått av"
@ -994,7 +992,7 @@ msgstr "Vis kildekode"
msgid "Web Page"
msgstr "Nettside"
#: ../js/ui/messageTray.js:1506
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Systeminformasjon"
@ -1002,7 +1000,7 @@ msgstr "Systeminformasjon"
msgid "Undo"
msgstr "Angre"
#: ../js/ui/overview.js:124
#: ../js/ui/overview.js:117
msgid "Overview"
msgstr "Oversikt"
@ -1010,7 +1008,7 @@ msgstr "Oversikt"
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters.
#: ../js/ui/overview.js:246
#: ../js/ui/overview.js:244
msgid "Type to search…"
msgstr "Skriv for å søke …"
@ -1024,7 +1022,7 @@ msgstr "Avslutt"
msgid "Activities"
msgstr "Aktiviteter"
#: ../js/ui/panel.js:755
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Topp-panel"
@ -1041,7 +1039,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Skriv inn en kommando"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:153
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Lukk"
@ -1069,7 +1067,7 @@ msgid_plural "%d new notifications"
msgstr[0] "%d ny varsling"
msgstr[1] "%d nye varslinger"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:374
msgid "Lock"
msgstr "Lås"
@ -1168,16 +1166,10 @@ msgstr "Høy kontrast"
msgid "Large Text"
msgstr "Stor tekst"
#. The Bluetooth menu only appears when Bluetooth is in use,
#. so just statically build it with a "Turn Off" menu item.
#: ../js/ui/status/bluetooth.js:49
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:360 ../js/ui/status/network.js:1282
#: ../js/ui/status/network.js:1393 ../js/ui/status/rfkill.js:91
#: ../js/ui/status/rfkill.js:118
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Slå av"
@ -1185,16 +1177,17 @@ msgstr "Slå av"
msgid "Bluetooth Settings"
msgstr "Bluetooth-innstillinger"
#: ../js/ui/status/bluetooth.js:104
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d tilkoblet enhet"
msgstr[1] "%d tilkoblede enheter"
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d koblet til"
msgstr[1] "%d koblet til"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1310
msgid "Not Connected"
msgstr "Ikke koblet til"
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Ikke i bruk"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
@ -1204,11 +1197,11 @@ msgstr "Lysstyrke"
msgid "Show Keyboard Layout"
msgstr "Vis tastaturutforming"
#: ../js/ui/status/location.js:65
msgid "Location"
msgstr "Plassering"
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Plassering slått på"
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:177
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Slå av"
@ -1217,10 +1210,14 @@ msgid "Privacy Settings"
msgstr "Innstillinger for personvern"
#: ../js/ui/status/location.js:176
msgid "In Use"
msgstr "I bruk"
msgid "Location In Use"
msgstr "Plassering i bruk"
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Plassering slått av"
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Slå på"
@ -1228,61 +1225,84 @@ msgstr "Slå på"
msgid "<unknown>"
msgstr "<ukjent>"
#: ../js/ui/status/network.js:457 ../js/ui/status/network.js:1308
#: ../js/ui/status/network.js:1512
msgid "Off"
msgstr "Av"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1308
#, javascript-format
msgid "%s Off"
msgstr "%s av"
#: ../js/ui/status/network.js:459
msgid "Connected"
msgstr "Koblet til"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:454
#, javascript-format
msgid "%s Connected"
msgstr "%s koblet til"
#. 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:463
msgid "Unmanaged"
msgstr "Håndteres ikke"
#. under NetworkManager's control (and thus cannot be used in the menu);
#. %s is a network identifier
#: ../js/ui/status/network.js:459
#, javascript-format
msgid "%s Unmanaged"
msgstr "%s håndteres ikke"
#: ../js/ui/status/network.js:465
msgid "Disconnecting"
msgstr "Kobler fra"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:462
#, javascript-format
msgid "%s Disconnecting"
msgstr "%s kobler fra"
#: ../js/ui/status/network.js:471 ../js/ui/status/network.js:1302
msgid "Connecting"
msgstr "Kobler til"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
#, javascript-format
msgid "%s Connecting"
msgstr "%s kobler til"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:474
msgid "Authentication required"
msgstr "Denne tilkoblingen krever autentisering"
#. Translators: this is for network connections that require some kind of key or password; %s is a network identifier
#: ../js/ui/status/network.js:472
#, javascript-format
msgid "%s Requires Authentication"
msgstr "%s krever autentisering"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:482
msgid "Firmware missing"
msgstr "Fastvare mangler"
#. module, which is missing; %s is a network identifier
#: ../js/ui/status/network.js:480
#, javascript-format
msgid "Firmware Missing For %s"
msgstr "Fastvare mangler for %s"
#. 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:486
msgid "Unavailable"
msgstr "Ikke tilgjengelig"
#. is disabled by rfkill, or it has no coverage; %s is a network identifier
#: ../js/ui/status/network.js:484
#, javascript-format
msgid "%s Unavailable"
msgstr "%s er ikke tilgjengelig"
#: ../js/ui/status/network.js:488 ../js/ui/status/network.js:1696
msgid "Connection failed"
msgstr "Tilkobling mislyktes"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:487
#, javascript-format
msgid "%s Connection Failed"
msgstr "%s tilkobling mislyktes"
#: ../js/ui/status/network.js:504
#: ../js/ui/status/network.js:503
msgid "Wired Settings"
msgstr "Innstillinger for trådbundet nettverk"
#: ../js/ui/status/network.js:546 ../js/ui/status/network.js:624
#: ../js/ui/status/network.js:545 ../js/ui/status/network.js:624
msgid "Mobile Broadband Settings"
msgstr "Innstillinger for mobilt bredbånd"
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1306
msgid "Hardware Disabled"
msgstr "Maskinvare slått av"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1305
#, javascript-format
msgid "%s Hardware Disabled"
msgstr "%s maskinvare slått av"
#. Translators: this is for a network device that cannot be activated
#. because it's disabled by rfkill (airplane mode); %s is a network identifier
#: ../js/ui/status/network.js:592
#, javascript-format
msgid "%s Disabled"
msgstr "%s slått av"
#: ../js/ui/status/network.js:632
msgid "Use as Internet connection"
@ -1324,52 +1344,68 @@ msgstr "Velg et nettverk"
msgid "No Networks"
msgstr "Ingen nettverk"
#: ../js/ui/status/network.js:904 ../js/ui/status/rfkill.js:116
#: ../js/ui/status/network.js:904 ../js/ui/status/rfkill.js:115
msgid "Use hardware switch to turn off"
msgstr "Bruk maskinvarebryter til å slå av"
#: ../js/ui/status/network.js:1174
#: ../js/ui/status/network.js:1171
msgid "Select Network"
msgstr "Velg nettverk"
#: ../js/ui/status/network.js:1180
#: ../js/ui/status/network.js:1177
msgid "Wi-Fi Settings"
msgstr "Innstillinger"
#: ../js/ui/status/network.js:1282
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Slå på"
#: ../js/ui/status/network.js:1299
msgid "Hotspot Active"
msgstr "Trådløst aksesspunkt aktivt"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
msgid "%s Hotspot Active"
msgstr "%s aksesspunkt aktivt"
#: ../js/ui/status/network.js:1410
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1311
#, javascript-format
msgid "%s Not Connected"
msgstr "%s ikke koblet til"
#: ../js/ui/status/network.js:1411
msgid "connecting..."
msgstr "kobler til …"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:1413
#: ../js/ui/status/network.js:1414
msgid "authentication required"
msgstr "autentisering kreves"
#: ../js/ui/status/network.js:1415
#: ../js/ui/status/network.js:1416
msgid "connection failed"
msgstr "tilkobling mislyktes"
#: ../js/ui/status/network.js:1481 ../js/ui/status/rfkill.js:94
#: ../js/ui/status/network.js:1482 ../js/ui/status/rfkill.js:93
msgid "Network Settings"
msgstr "Innstillinger for nettverk"
#: ../js/ui/status/network.js:1483
#: ../js/ui/status/network.js:1484
msgid "VPN Settings"
msgstr "Innstillinger for VPN"
#: ../js/ui/status/network.js:1502
#: ../js/ui/status/network.js:1503
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1513
msgid "VPN Off"
msgstr "VPN av"
#: ../js/ui/status/network.js:1697
msgid "Connection failed"
msgstr "Tilkobling mislyktes"
#: ../js/ui/status/network.js:1698
msgid "Activation of network connection failed"
msgstr "Aktivering av nettverkstilkobling mislyktes"
@ -1399,42 +1435,34 @@ msgstr "%d:%02d gjenstår (%d%%)"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d:%02d til batteriet er fullt (%d%%)"
#: ../js/ui/status/power.js:119
msgid "UPS"
msgstr "UPS"
#: ../js/ui/status/power.js:121
msgid "Battery"
msgstr "Batteri"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
#. changing the menu contents.
#: ../js/ui/status/rfkill.js:88
msgid "Airplane Mode"
msgstr "Flymodus"
msgid "Airplane Mode On"
msgstr "Flymodus er slått på"
#: ../js/ui/status/rfkill.js:90
msgid "On"
msgstr "På"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:343
msgid "Switch User"
msgstr "Bytt bruker"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:348
msgid "Log Out"
msgstr "Logg ut"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:353
msgid "Account Settings"
msgstr "Innstillinger for konto"
#: ../js/ui/status/system.js:370
msgid "Orientation Lock"
msgstr "Lås for orientering"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:378
msgid "Suspend"
msgstr "Hvilemodus"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:381
msgid "Power Off"
msgstr "Slå av"
@ -1466,27 +1494,27 @@ msgstr "Programmer"
msgid "Search"
msgstr "Søk"
#: ../js/ui/windowAttentionHandler.js:19
#: ../js/ui/windowAttentionHandler.js:20
#, javascript-format
msgid "“%s” is ready"
msgstr "«%s» er klar"
#: ../js/ui/windowManager.js:65
#: ../js/ui/windowManager.js:63
msgid "Do you want to keep these display settings?"
msgstr "Vil du beholde disse skjerminnstillingene?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#.
#: ../js/ui/windowManager.js:84
#: ../js/ui/windowManager.js:82
msgid "Revert Settings"
msgstr "Forkast innstillinger"
#: ../js/ui/windowManager.js:88
#: ../js/ui/windowManager.js:85
msgid "Keep Changes"
msgstr "Behold endringer"
#: ../js/ui/windowManager.js:107
#: ../js/ui/windowManager.js:103
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -1495,7 +1523,7 @@ msgstr[1] "Endringer i innstillingene forkastes om %d sekunder"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height.
#: ../js/ui/windowManager.js:613
#: ../js/ui/windowManager.js:658
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@ -1532,27 +1560,35 @@ msgstr "Alltid øverst"
msgid "Always on Visible Workspace"
msgstr "Alltid på synlig arbeidsområde"
#: ../js/ui/windowMenu.js:106
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Gå til arbeidsområdet til venstre"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Gå til arbeidsområdet til høyre"
#: ../js/ui/windowMenu.js:115
msgid "Move to Workspace Up"
msgstr "Gå til arbeidsområdet over"
#: ../js/ui/windowMenu.js:111
#: ../js/ui/windowMenu.js:120
msgid "Move to Workspace Down"
msgstr "Gå til arbeidsområdet under"
#: ../js/ui/windowMenu.js:127
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "Flytt til skjermen over"
#: ../js/ui/windowMenu.js:133
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Flytt til skjermen under"
#: ../js/ui/windowMenu.js:139
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Flytt til skjermen til venstre"
#: ../js/ui/windowMenu.js:145
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Flytt til skjermen til høyre"
@ -1608,11 +1644,11 @@ msgstr "Ukjent"
msgid "Failed to launch “%s”"
msgstr "Klarte ikke å starte «%s»"
#: ../src/shell-keyring-prompt.c:714
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Passordene er ikke like."
#: ../src/shell-keyring-prompt.c:722
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Passordet kan ikke være tomt"

509
po/nl.po

File diff suppressed because it is too large Load Diff

556
po/pa.po

File diff suppressed because it is too large Load Diff

534
po/pl.po

File diff suppressed because it is too large Load Diff

837
po/pt.po

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
# Portuguese translations for gnome-shell package.
# Copyright (C) 2014 THE gnome-shell'S COPYRIGHT HOLDER
# Copyright (C) 2015 THE gnome-shell'S COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell package.
# Og Maciel <ogmaciel@gnome.org>, 2009.
# Rodrigo Flores <mail@rodrigoflores.org>, 2009.
@ -16,21 +16,22 @@
# Georges Basile Stavracas Neto <georges.stavracas@gmail.com>, 2014.
# Enrico Nicoletto <liverig@gmail.com>, 2013, 2014, 2015.
# Felipe Braga <fbobraga@gmail.com>, 2015.
#
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: 2015-05-01 20:03+0000\n"
"PO-Revision-Date: 2015-05-01 21:38-0200\n"
"Last-Translator: Felipe Braga <fbobraga@gmail.com>\n"
"POT-Creation-Date: 2015-08-10 20:07+0000\n"
"PO-Revision-Date: 2015-08-10 20:38-0300\n"
"Last-Translator: Enrico Nicoletto <liverig@gmail.com>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Virtaal 0.7.1\n"
"X-Generator: Poedit 1.6.4\n"
"X-Project-Style: gnome\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
@ -151,15 +152,16 @@ msgstr ""
msgid "History for command (Alt-F2) dialog"
msgstr "Histórico do diálogo de comandos (Alt-F2)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
#. Translators: looking glass is a debugger and inspector tool, see https://live.gnome.org/GnomeShell/LookingGlass
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "History for the looking glass dialog"
msgstr "Histórico do diálogo do shell looking glass"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid "Always show the 'Log out' menu item in the user menu."
msgstr "Sempre mostrar o item de menu \"Encerrar sessão\" no menu de usuário."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid ""
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
"user, single-session situations."
@ -168,14 +170,14 @@ msgstr ""
"sessão\" quando houver somente um usuário, em situações de somente uma "
"sessão."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr ""
"Se lembra ou não as senhas para montar sistemas de arquivos criptografados "
"ou remotos"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid ""
"The shell will request a password when an encrypted device or a remote "
"filesystem is mounted. If the password can be saved for future use a "
@ -187,79 +189,79 @@ msgstr ""
"posterior, a caixa de seleção 'Lembrar senha' estará presente. Esta chave "
"ajusta o estado padrão da caixa de seleção."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Show the week date in the calendar"
msgstr "Mostrar o número da semana na agenda"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Se verdadeiro, exibe o número da semana na agenda."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Atalho de teclado para abrir um menu de aplicativo"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Atalho de teclado para abrir um menu de aplicativo."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Atalho de teclado para abrir a visualização \"Mostrar aplicativos\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Atalho de teclado para abrir a visualização \"Mostrar aplicativos\" do "
"panorama de atividades."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Atalho de teclado para abrir o panorama"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Atalho de teclado para abrir o panorama de atividades."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Atalho de teclado para alternar a visibilidade da lista de notificação"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
"Atalho de teclado para alternar a visibilidade da lista de notificação."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Atalho de teclado para ativar a notificação ativa"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Atalho de teclado para ativar a notificação ativa."
# Tween pode significar uma contração de Between ou se referir a um termo "in-between" usado em animação gráfica. -- Enrico
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Atalho de teclado que pausa e continua todos os intermediários em execução, "
"a fim de depuração"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Qual teclado usar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "O tipo do teclado para usar."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Limitar o alternador ao espaço de trabalho atual."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -268,11 +270,11 @@ msgstr ""
"janelas no espaço de trabalho atual. Caso contrário, todos os aplicativos "
"serão incluídos."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "O modo ícone do aplicativo."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -282,7 +284,7 @@ msgstr ""
"válidas são 'thumbnail-only' (mostra uma miniatura da janela), 'app-icon-"
"only' (mostra apenas o ícone do aplicativo) ou 'both'."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -290,31 +292,31 @@ msgstr ""
"Se verdadeiro, o alternador mostrará somente as janelas do espaço de "
"trabalho atual. Caso contrário, todos as janelas serão incluídas."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Anexar diálogo modal à janela pai"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Esta chave sobrescreve a chave em org.gnome.mutter ao executar o Shell do "
"GNOME."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Habilitar contorno ladrilhado ao arrastar janelas sobre as bordas da tela"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Espaços de trabalho são gerenciados dinamicamente"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Espaços de trabalho apenas no monitor primário"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Atrasar foco altera o modo do mouse até o ponteiro parar de mover"
@ -332,13 +334,14 @@ msgid "GNOME Shell Extensions"
msgstr "Extensões do Shell do GNOME"
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:166 ../js/ui/endSessionDialog.js:452
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Cancelar"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:435
msgid "Next"
msgstr "Próximo"
@ -360,17 +363,17 @@ msgstr "Escolher sessão"
msgid "Not listed?"
msgstr "Não está listado?"
#: ../js/gdm/loginDialog.js:840
#: ../js/gdm/loginDialog.js:847
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(ex.: usuário ou %s)"
#: ../js/gdm/loginDialog.js:845 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Nome de usuário: "
#: ../js/gdm/loginDialog.js:1173
#: ../js/gdm/loginDialog.js:1181
msgid "Login Window"
msgstr "Janela de sessão"
@ -463,31 +466,31 @@ msgstr "%d de %B de %Y, %l%M %p"
msgid "Web Authentication Redirect"
msgstr "Redirecionamento para autenticação web"
#: ../js/ui/appDisplay.js:788
#: ../js/ui/appDisplay.js:794
msgid "Frequently used applications will appear here"
msgstr "Aplicativos usados frequentemente vão aparecer aqui"
#: ../js/ui/appDisplay.js:908
#: ../js/ui/appDisplay.js:914
msgid "Frequent"
msgstr "Frequente"
#: ../js/ui/appDisplay.js:915
#: ../js/ui/appDisplay.js:921
msgid "All"
msgstr "Todos"
#: ../js/ui/appDisplay.js:1844
#: ../js/ui/appDisplay.js:1853
msgid "New Window"
msgstr "Nova janela"
#: ../js/ui/appDisplay.js:1872 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1881 ../js/ui/dash.js:289
msgid "Remove from Favorites"
msgstr "Remover dos favoritos"
#: ../js/ui/appDisplay.js:1878
#: ../js/ui/appDisplay.js:1887
msgid "Add to Favorites"
msgstr "Adicionar aos favoritos"
#: ../js/ui/appDisplay.js:1888
#: ../js/ui/appDisplay.js:1897
msgid "Show Details"
msgstr "Mostrar detalhes"
@ -506,17 +509,16 @@ msgid "Change Background…"
msgstr "Alterar plano de fundo…"
#: ../js/ui/backgroundMenu.js:21
#| msgid "Privacy Settings"
msgid "Display Settings"
msgstr "Configurações de exibição"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:334
#: ../js/ui/status/system.js:357
msgid "Settings"
msgstr "Configurações"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -526,94 +528,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#. */
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "D"
#. Translators: Calendar grid abbreviation for Monday */
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "S"
#. Translators: Calendar grid abbreviation for Tuesday */
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Wednesday */
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "Q"
#. Translators: Calendar grid abbreviation for Thursday */
#: ../js/ui/calendar.js:90
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "Q"
#. Translators: Calendar grid abbreviation for Friday */
#: ../js/ui/calendar.js:92
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "S"
#. Translators: Calendar grid abbreviation for Saturday */
#: ../js/ui/calendar.js:94
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:564
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Mês anterior"
#: ../js/ui/calendar.js:574
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Próximo mês"
#: ../js/ui/calendar.js:781
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Semana %V"
#. 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:1187
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Dia todo"
#: ../js/ui/calendar.js:1289
#: ../js/ui/calendar.js:1291
msgid "Clear section"
msgstr "Limpar seção"
#: ../js/ui/calendar.js:1516
#: ../js/ui/calendar.js:1518
msgid "Events"
msgstr "Eventos"
#: ../js/ui/calendar.js:1525
#: ../js/ui/calendar.js:1527
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#: ../js/ui/calendar.js:1529
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d de %B de %Y"
#: ../js/ui/calendar.js:1614
#: ../js/ui/calendar.js:1616
msgid "Notifications"
msgstr "Notificações"
#: ../js/ui/calendar.js:1765
#: ../js/ui/calendar.js:1767
msgid "No Notifications"
msgstr "Nenhuma notificação"
#: ../js/ui/calendar.js:1768
#: ../js/ui/calendar.js:1770
msgid "No Events"
msgstr "Nenhum evento"
@ -630,11 +632,11 @@ msgstr "Unidade externa desconectada"
msgid "Open with %s"
msgstr "Abrir com %s"
#: ../js/ui/components/keyring.js:94 ../js/ui/components/polkitAgent.js:285
#: ../js/ui/components/keyring.js:120 ../js/ui/components/polkitAgent.js:315
msgid "Password:"
msgstr "Senha:"
#: ../js/ui/components/keyring.js:120
#: ../js/ui/components/keyring.js:153
msgid "Type again:"
msgstr "Digite novamente:"
@ -723,19 +725,19 @@ msgstr "Senha da rede de banda larga móvel"
msgid "A password is required to connect to “%s”."
msgstr "Uma senha é necessária para se conectar a \"%s\""
#: ../js/ui/components/networkAgent.js:647 ../js/ui/status/network.js:1657
#: ../js/ui/components/networkAgent.js:647 ../js/ui/status/network.js:1654
msgid "Network Manager"
msgstr "Gerenciador de rede"
#: ../js/ui/components/polkitAgent.js:54
#: ../js/ui/components/polkitAgent.js:60
msgid "Authentication Required"
msgstr "Autenticação necessária"
#: ../js/ui/components/polkitAgent.js:96
#: ../js/ui/components/polkitAgent.js:102
msgid "Administrator"
msgstr "Administrador"
#: ../js/ui/components/polkitAgent.js:175
#: ../js/ui/components/polkitAgent.js:182
msgid "Authenticate"
msgstr "Autenticação"
@ -743,13 +745,13 @@ msgstr "Autenticação"
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance. */
#: ../js/ui/components/polkitAgent.js:271 ../js/ui/shellMountOperation.js:383
#: ../js/ui/components/polkitAgent.js:301 ../js/ui/shellMountOperation.js:383
msgid "Sorry, that didn't work. Please try again."
msgstr "Desculpe, isto não funcionou. Por favor, tente novamente."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s agora é conhecido como %s"
@ -930,7 +932,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:718 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:741 ../js/ui/status/keyboard.js:713
msgid "Keyboard"
msgstr "Teclado"
@ -995,7 +997,7 @@ msgstr "Ver fonte"
msgid "Web Page"
msgstr "Página web"
#: ../js/ui/messageTray.js:1504
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Informações do sistema"
@ -1003,7 +1005,7 @@ msgstr "Informações do sistema"
msgid "Undo"
msgstr "Desfazer"
#: ../js/ui/overview.js:124
#: ../js/ui/overview.js:117
msgid "Overview"
msgstr "Panorama"
@ -1011,7 +1013,7 @@ msgstr "Panorama"
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters. */
#: ../js/ui/overview.js:246
#: ../js/ui/overview.js:244
msgid "Type to search…"
msgstr "Digite para pesquisar…"
@ -1037,7 +1039,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Digite um comando"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:153
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Fechar"
@ -1065,19 +1067,19 @@ msgid_plural "%d new notifications"
msgstr[0] "%d nova notificação"
msgstr[1] "%d novas notificações"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
msgid "Lock"
msgstr "Bloquear"
#: ../js/ui/screenShield.js:668
#: ../js/ui/screenShield.js:684
msgid "GNOME needs to lock the screen"
msgstr "GNOME precisa bloquear a tela"
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "Não foi possível bloquear"
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "O bloqueio foi impedido por um aplicativo"
@ -1162,8 +1164,8 @@ msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:360 ../js/ui/status/network.js:1282
#: ../js/ui/status/network.js:1393 ../js/ui/status/rfkill.js:91
#: ../js/ui/status/network.js:360 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1390 ../js/ui/status/rfkill.js:91
#: ../js/ui/status/rfkill.js:118
msgid "Turn Off"
msgstr "Desligar"
@ -1179,7 +1181,7 @@ msgid_plural "%d Connected Devices"
msgstr[0] "%d dispositivo conectado"
msgstr[1] "%d dispositivos conectados"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1310
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1307
msgid "Not Connected"
msgstr "Não conectado"
@ -1215,8 +1217,8 @@ msgstr "Habilitar"
msgid "<unknown>"
msgstr "<desconhecido>"
#: ../js/ui/status/network.js:457 ../js/ui/status/network.js:1308
#: ../js/ui/status/network.js:1512
#: ../js/ui/status/network.js:457 ../js/ui/status/network.js:1305
#: ../js/ui/status/network.js:1509
msgid "Off"
msgstr "Off"
@ -1235,7 +1237,7 @@ msgstr "Não gerenciável"
msgid "Disconnecting"
msgstr "Desconectando"
#: ../js/ui/status/network.js:471 ../js/ui/status/network.js:1302
#: ../js/ui/status/network.js:471 ../js/ui/status/network.js:1299
msgid "Connecting"
msgstr "Conectando"
@ -1256,7 +1258,7 @@ msgstr "Firmware em falta"
msgid "Unavailable"
msgstr "Indisponível"
#: ../js/ui/status/network.js:488 ../js/ui/status/network.js:1696
#: ../js/ui/status/network.js:488 ../js/ui/status/network.js:1693
msgid "Connection failed"
msgstr "Falha de conexão"
@ -1268,7 +1270,7 @@ msgstr "Configurações da rede cabeada"
msgid "Mobile Broadband Settings"
msgstr "Configurações de banda larga móvel"
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1303
msgid "Hardware Disabled"
msgstr "Hardware desabilitado"
@ -1316,48 +1318,48 @@ msgstr "Nenhuma rede"
msgid "Use hardware switch to turn off"
msgstr "Usar alternador de hardware para desligar"
#: ../js/ui/status/network.js:1174
#: ../js/ui/status/network.js:1171
msgid "Select Network"
msgstr "Selecione a rede"
#: ../js/ui/status/network.js:1180
#: ../js/ui/status/network.js:1177
msgid "Wi-Fi Settings"
msgstr "Configurações de Wi-Fi"
#: ../js/ui/status/network.js:1282
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Ligar"
#: ../js/ui/status/network.js:1299
#: ../js/ui/status/network.js:1296
msgid "Hotspot Active"
msgstr "Ponto de acesso ativo"
#: ../js/ui/status/network.js:1410
#: ../js/ui/status/network.js:1407
msgid "connecting..."
msgstr "conectando..."
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:1413
#: ../js/ui/status/network.js:1410
msgid "authentication required"
msgstr "autenticação necessária"
#: ../js/ui/status/network.js:1415
#: ../js/ui/status/network.js:1412
msgid "connection failed"
msgstr "conexão falhou"
#: ../js/ui/status/network.js:1481 ../js/ui/status/rfkill.js:94
#: ../js/ui/status/network.js:1478 ../js/ui/status/rfkill.js:94
msgid "Network Settings"
msgstr "Configurações de rede"
#: ../js/ui/status/network.js:1483
#: ../js/ui/status/network.js:1480
msgid "VPN Settings"
msgstr "Configurações de VPN"
#: ../js/ui/status/network.js:1502
#: ../js/ui/status/network.js:1499
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1697
#: ../js/ui/status/network.js:1694
msgid "Activation of network connection failed"
msgstr "Falha ao ativar a conexão da rede"
@ -1401,23 +1403,23 @@ msgstr "Modo avião"
msgid "On"
msgstr "On"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:337
msgid "Switch User"
msgstr "Alternar usuário"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:342
msgid "Log Out"
msgstr "Encerrar sessão"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:361
msgid "Orientation Lock"
msgstr "Bloqueio da orientação"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:369
msgid "Suspend"
msgstr "Suspender"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:372
msgid "Power Off"
msgstr "Desligar"
@ -1449,27 +1451,27 @@ msgstr "Aplicativos"
msgid "Search"
msgstr "Pesquisar"
#: ../js/ui/windowAttentionHandler.js:19
#: ../js/ui/windowAttentionHandler.js:20
#, javascript-format
msgid "“%s” is ready"
msgstr "\"%s\" está pronto"
#: ../js/ui/windowManager.js:65
#: ../js/ui/windowManager.js:63
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:84
#: ../js/ui/windowManager.js:82
msgid "Revert Settings"
msgstr "Reverter configurações"
#: ../js/ui/windowManager.js:88
#: ../js/ui/windowManager.js:85
msgid "Keep Changes"
msgstr "Manter alterações"
#: ../js/ui/windowManager.js:107
#: ../js/ui/windowManager.js:103
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -1478,7 +1480,7 @@ msgstr[1] "Alterações nas configurações serão revertidas em %d segundos"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:613
#: ../js/ui/windowManager.js:658
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@ -1515,29 +1517,37 @@ msgstr "Sempre no topo"
msgid "Always on Visible Workspace"
msgstr "Sempre na área de trabalho visível"
#: ../js/ui/windowMenu.js:106
#: ../js/ui/windowMenu.js:105
#| msgid "Move to Workspace Up"
msgid "Move to Workspace Left"
msgstr "Mover para a área de trabalho esquerda"
#: ../js/ui/windowMenu.js:110
#| msgid "Move to Workspace Up"
msgid "Move to Workspace Right"
msgstr "Mover para a área de trabalho direita"
#: ../js/ui/windowMenu.js:115
msgid "Move to Workspace Up"
msgstr "Mover para a área de trabalho acima"
#: ../js/ui/windowMenu.js:111
#: ../js/ui/windowMenu.js:120
msgid "Move to Workspace Down"
msgstr "Mover para a área de trabalho abaixo"
#: ../js/ui/windowMenu.js:127
#| msgid "Move to Workspace Up"
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "Mover para o monitor acima"
#: ../js/ui/windowMenu.js:133
#| msgid "Move to Workspace Down"
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Mover para o monitor abaixo"
#: ../js/ui/windowMenu.js:139
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Mover para o monitor à esquerda"
#: ../js/ui/windowMenu.js:145
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Mover para o monitor à direita"
@ -1593,11 +1603,11 @@ msgstr "Desconhecido"
msgid "Failed to launch “%s”"
msgstr "Erro ao lançar \"%s\""
#: ../src/shell-keyring-prompt.c:714
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "As senhas não coincidem."
#: ../src/shell-keyring-prompt.c:722
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "A senha não pode estar em branco"
@ -1802,100 +1812,3 @@ msgstr "O diálogo de autenticação foi descartado pelo usuário"
#~ msgid "Open Calendar"
#~ msgstr "Abrir agenda"
# O "&" foi inserido como "e" para versão 3.8.0 no gnome-control-center
#~ msgid "Date & Time Settings"
#~ msgstr "Configurações de data & hora"
#~ msgid "Open"
#~ msgstr "Abrir"
#~ msgid "Remove"
#~ msgstr "Remover"
#~ msgid "Clear Messages"
#~ msgstr "Sem mensagens"
#~ msgid "Notification Settings"
#~ msgstr "Configurações de notificação"
#~ msgid "Tray Menu"
#~ msgstr "Menu de notificação"
#~ msgid "No Messages"
#~ msgstr "Sem mensagens"
#~ msgid "Message Tray"
#~ msgstr "Área de notificação"
#~ msgid "Captive Portal"
#~ msgstr "Portal cativo"
#~ msgid "The maximum accuracy level of location."
#~ msgstr "O nível máximo de precisão de local."
#~ msgid ""
#~ "Configures the maximum level of location accuracy applications are "
#~ "allowed to see. Valid options are 'off' (disable location tracking), "
#~ "'country', 'city', 'neighborhood', 'street', and 'exact' (typically "
#~ "requires GPS receiver). Please keep in mind that this only controls what "
#~ "GeoClue will allow applications to see and they can find user's location "
#~ "on their own using network resources (albeit with street-level accuracy "
#~ "at best)."
#~ msgstr ""
#~ "Configura o nível máximo de precisão de local a que os aplicativos com "
#~ "permissão podem ver. Opções válidas são \"off\" (desabilita o "
#~ "rastreamento de local), \"country\", \"city\", \"neighborhood\", \"street"
#~ "\" e \"exact\" (geralmente necessita de receptor de GPS). Por gentileza, "
#~ "tenha em mente que estes são os únicos controles que o GeoClue permitirá "
#~ "aos aplicativos observarem e eles podem localizar o local do usuário por "
#~ "si só, usando recursos de rede (apesar de na melhor hipótese usarem "
#~ "precisão à nível de rua)."
#~ msgid "Arrangement of buttons on the titlebar"
#~ msgstr "Organização dos botões na barra de título"
#~ msgid ""
#~ "This key overrides the key in org.gnome.desktop.wm.preferences when "
#~ "running GNOME Shell."
#~ msgstr ""
#~ "Esta chave sobrescreve a chave em org.gnome.desktop.wm.preferences ao "
#~ "executar o Shell do GNOME."
#~ msgid "Extension"
#~ msgstr "Extensão"
#~ msgid "Select an extension to configure using the combobox above."
#~ msgstr ""
#~ "Selecione uma extensão para configurar usando a caixa de seleção abaixo."
#~ msgid "calendar:MY"
#~ msgstr "calendar:MY"
#~ msgid "<b>%A</b>, <b>%H:%M</b>"
#~ msgstr "<b>%A</b>, <b>%H:%M</b>"
#~ msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
#~ msgstr "<b>%d</b> de <b>%B</b>, às <b>%H:%M</b>"
#~ msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
#~ msgstr "<b>%d</b> de <b>%B</b> de <b>%Y</b>, às <b>%H:%M</b> "
#~ msgid "List of categories that should be displayed as folders"
#~ msgstr "Lista de categorias que devem ser exibidas como pastas"
#~ msgid ""
#~ "Each category name in this list will be represented as folder in the "
#~ "application view, rather than being displayed inline in the main view."
#~ msgstr ""
#~ "Cada nome de categoria nesta lista será representado como uma pasta na "
#~ "visão do aplicativo, ao invés de ser exibido incorporado à visão "
#~ "principal."
#~ msgctxt "event list time"
#~ msgid "%H\\u2236%M"
#~ msgstr "%H\\u2236%M"
#~ msgctxt "event list time"
#~ msgid "%l\\u2236%M\\u2009%p"
#~ msgstr "%l\\u2236%M\\u2009%p"

511
po/ru.po

File diff suppressed because it is too large Load Diff

459
po/sk.po
View File

@ -8,8 +8,8 @@ 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: 2015-05-13 08:05+0000\n"
"PO-Revision-Date: 2015-05-13 10:52+0100\n"
"POT-Creation-Date: 2015-08-21 08:12+0000\n"
"PO-Revision-Date: 2015-08-21 10:43+0200\n"
"Last-Translator: Dušan Kazik <prescott66@gmail.com>\n"
"Language-Team: Slovak <gnome-sk-list@gnome.org>\n"
"Language: sk\n"
@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-DamnedLies-Scope: partial\n"
"X-Generator: Poedit 1.7.5\n"
"X-Generator: Poedit 1.8.4\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -120,135 +120,136 @@ msgid "History for command (Alt-F2) dialog"
msgstr "História dialógového okna príkazov (Alt-F2)"
# * https://live.gnome.org/GnomeShell/LookingGlass
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
#. Translators: looking glass is a debugger and inspector tool, see https://live.gnome.org/GnomeShell/LookingGlass
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "History for the looking glass dialog"
msgstr "História dialógového okna integrovaného odlaďovača"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid "Always show the 'Log out' menu item in the user menu."
msgstr "Vždy zobraziť položku „Odhlásiť sa“ v ponuke používateľa."
# description
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "This key overrides the automatic hiding of the 'Log out' menu item in single-user, single-session situations."
msgstr "Tento kľúč preváži automatické skrývanie položky „Odhlásiť sa“ v situáciách s jedným používateľom alebo jednou reláciou."
# summary
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "Whether to remember password for mounting encrypted or remote filesystems"
msgstr "Určiť, či bude zapamätané heslo pre pripojenie zašifrovaných alebo prenosných súborových systémov"
# description
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "The shell will request a password when an encrypted device or a remote filesystem is mounted. If the password can be saved for future use a 'Remember Password' checkbox will be present. This key sets the default state of the checkbox."
msgstr "Shell bude po pripojení zašifrovaného alebo prenosného súborového systému požadovať heslo. Ak bude možné toto heslo uložiť pre neskoršie použitie, zobrazí sa zaškrtávacie pole „Zapamätať heslo“. Tento kľúč nastaví predvolený stav zaškrtávacieho poľa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Show the week date in the calendar"
msgstr "Zobraziť čísla týždňov v kalendári"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Ak je true, zobrazí v kalendári poradie dní v týždni podľa štandardu ISO."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Klávesová skratka na otvorenie ponuky aplikácií"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Klávesová skratka na otvorenie ponuky aplikácií."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Klávesová skratka na otvorenie pohľadu „Zobraziť aplikácie“"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "Klávesová skratka na otvorenie pohľadu „Zobraziť aplikácie“ v prehľade aktivít."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Klávesová skratka na otvorenie prehľadu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Klávesová skratka na otvorenie prehľadu aktivít."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Klávesová skratka na prepnutie viditeľnosti zoznamu s oznámeniami"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Klávesová skratka na prepnutie viditeľnosti zoznamu s oznámeniami."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Klávesová skratka na zameranie aktívnych oznámení"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Klávesová skratka, s ktorou sa zamerá na aktívne oznámenia."
# summary
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr "Klávesová skratka, ktorá pozastaví a znovu spustí všetky animácie(tween), pre ladiace účely"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Ktorú klávesnicu používať"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Typ klávesnice, ktorá sa má používať."
# summary
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Obmedziť prepínač na aktuálny pracovný priestor."
# desc
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid "If true, only applications that have windows on the current workspace are shown in the switcher. Otherwise, all applications are included."
msgstr "Ak je true, iba aplikácie, ktoré majú okná na aktuálnom pracovnom priestore budú zobrazené v prepínači. Inak budú zahrnuté všetky aplikácie."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Režim ikonizácie aplikácií."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid "Configures how the windows are shown in the switcher. Valid possibilities are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-only' (shows only the application icon) or 'both'."
msgstr "Konfiguruje, ako sa majú zobraziť okná v prepínači. Platné možnosti sú „thumbnail-only“ (zobrazí miniatúru okna), „app-icon-only“ (zobrazí iba ikonu aplikácie) alebo „both“ (zobrazí oboje)."
# desc
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid "If true, only windows from the current workspace are shown in the switcher. Otherwise, all windows are included."
msgstr "Ak je true, iba okná z aktuálneho pracovného priestoru budú zobrazené v prepínači. Inak budú zahrnuté všetky okná."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Pripojiť modálne dialógové okno k rodičovskému oknu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid "This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr "Tento kľúč preváži kľúč v org.gnome.mutter po spustení Shellu prostredia GNOME."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Povoliť natiahnutie k okraju pri pustení okien na okrajoch obrazovky"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Pracovné priestory sú spravované dynamicky"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Pracovné priestory sú iba na primárnom monitore"
# summary
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Oneskoriť pohyb zamerania v režime myši, až kým sa ukazovateľ nezastaví"
@ -265,11 +266,11 @@ msgstr "Vyskytla sa chyba pri načítavaní dialógového okna nastavení pre %s
msgid "GNOME Shell Extensions"
msgstr "Rozšírenia pre Shell prostredia GNOME"
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145 ../js/ui/components/polkitAgent.js:166 ../js/ui/endSessionDialog.js:452 ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399 ../js/ui/status/network.js:916
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145 ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452 ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399 ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Zrušiť"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215 ../js/gdm/authPrompt.js:435
msgid "Next"
msgstr "Ďalej"
@ -292,16 +293,16 @@ msgstr "Vybrať reláciu"
msgid "Not listed?"
msgstr "Nie ste v zozname?"
#: ../js/gdm/loginDialog.js:840
#: ../js/gdm/loginDialog.js:847
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(napr., používateľ alebo %s)"
#: ../js/gdm/loginDialog.js:845 ../js/ui/components/networkAgent.js:271 ../js/ui/components/networkAgent.js:289
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271 ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Používateľské meno: "
#: ../js/gdm/loginDialog.js:1173
#: ../js/gdm/loginDialog.js:1181
msgid "Login Window"
msgstr "Prihlasovacie okno"
@ -400,31 +401,31 @@ msgstr "%d. %B %Y, %l:%M %p"
msgid "Web Authentication Redirect"
msgstr "Presmerovanie webového overenia totožnosti"
#: ../js/ui/appDisplay.js:788
#: ../js/ui/appDisplay.js:794
msgid "Frequently used applications will appear here"
msgstr "Tu sa objavia často používané aplikácie"
#: ../js/ui/appDisplay.js:908
#: ../js/ui/appDisplay.js:914
msgid "Frequent"
msgstr "Často používané"
#: ../js/ui/appDisplay.js:915
#: ../js/ui/appDisplay.js:921
msgid "All"
msgstr "Všetky"
#: ../js/ui/appDisplay.js:1844
#: ../js/ui/appDisplay.js:1853
msgid "New Window"
msgstr "Nové okno"
#: ../js/ui/appDisplay.js:1872 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1881 ../js/ui/dash.js:289
msgid "Remove from Favorites"
msgstr "Odstrániť z obľúbených"
#: ../js/ui/appDisplay.js:1878
#: ../js/ui/appDisplay.js:1887
msgid "Add to Favorites"
msgstr "Pridať do obľúbených"
#: ../js/ui/appDisplay.js:1888
#: ../js/ui/appDisplay.js:1897
msgid "Show Details"
msgstr "Zobraziť podrobnosti"
@ -446,12 +447,12 @@ msgstr "Zmeniť pozadie…"
msgid "Display Settings"
msgstr "Nastavenia displeja"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650 ../js/ui/status/system.js:334
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650 ../js/ui/status/system.js:366
msgid "Settings"
msgstr "Nastavenia"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -464,94 +465,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#. */
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "N"
#. Translators: Calendar grid abbreviation for Monday */
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "P"
#. Translators: Calendar grid abbreviation for Tuesday */
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "U"
#. Translators: Calendar grid abbreviation for Wednesday */
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "S"
#. Translators: Calendar grid abbreviation for Thursday */
#: ../js/ui/calendar.js:90
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "Š"
#. Translators: Calendar grid abbreviation for Friday */
#: ../js/ui/calendar.js:92
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "P"
#. Translators: Calendar grid abbreviation for Saturday */
#: ../js/ui/calendar.js:94
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:564
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Predchádzajúci mesiac"
#: ../js/ui/calendar.js:574
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Nasledujúci mesiac"
#: ../js/ui/calendar.js:781
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "%V. týždeň"
#. 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:1187
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Celý deň"
#: ../js/ui/calendar.js:1289
#: ../js/ui/calendar.js:1291
msgid "Clear section"
msgstr "Vymazať úsek"
#: ../js/ui/calendar.js:1516
#: ../js/ui/calendar.js:1518
msgid "Events"
msgstr "Udalosti"
#: ../js/ui/calendar.js:1525
#: ../js/ui/calendar.js:1527
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e. %B"
#: ../js/ui/calendar.js:1529
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e. %B %Y"
#: ../js/ui/calendar.js:1614
#: ../js/ui/calendar.js:1616
msgid "Notifications"
msgstr "Oznámenia"
#: ../js/ui/calendar.js:1765
#: ../js/ui/calendar.js:1767
msgid "No Notifications"
msgstr "Žiadne oznámenia"
#: ../js/ui/calendar.js:1768
#: ../js/ui/calendar.js:1770
msgid "No Events"
msgstr "Žiadne udalosti"
@ -569,15 +570,15 @@ msgstr "Externá jednotka bola odpojená"
msgid "Open with %s"
msgstr "Otvoriť pomocou programu %s"
#: ../js/ui/components/keyring.js:94 ../js/ui/components/polkitAgent.js:285
#: ../js/ui/components/keyring.js:120 ../js/ui/components/polkitAgent.js:315
msgid "Password:"
msgstr "Heslo:"
#: ../js/ui/components/keyring.js:120
#: ../js/ui/components/keyring.js:153
msgid "Type again:"
msgstr "Zadajte znovu:"
#: ../js/ui/components/networkAgent.js:140 ../js/ui/status/network.js:277 ../js/ui/status/network.js:359 ../js/ui/status/network.js:919
#: ../js/ui/components/networkAgent.js:140 ../js/ui/status/network.js:269 ../js/ui/status/network.js:352 ../js/ui/status/network.js:919
msgid "Connect"
msgstr "Pripojiť"
@ -643,20 +644,20 @@ msgstr "Heslo k mobilnej širokopásmovej sieti"
msgid "A password is required to connect to “%s”."
msgstr "Na pripojenie k „%s“ sa požaduje heslo."
#: ../js/ui/components/networkAgent.js:647 ../js/ui/status/network.js:1657
#: ../js/ui/components/networkAgent.js:647 ../js/ui/status/network.js:1658
msgid "Network Manager"
msgstr "Správca siete"
#: ../js/ui/components/polkitAgent.js:54
#: ../js/ui/components/polkitAgent.js:60
msgid "Authentication Required"
msgstr "Požaduje sa overenie totožnosti"
# PŠ: ináč toto je riadna hlúposť, keďže sa pýta heslo používateľa "root"
#: ../js/ui/components/polkitAgent.js:96
#: ../js/ui/components/polkitAgent.js:102
msgid "Administrator"
msgstr "Správca"
#: ../js/ui/components/polkitAgent.js:175
#: ../js/ui/components/polkitAgent.js:182
msgid "Authenticate"
msgstr "Overiť totožnosť"
@ -664,13 +665,13 @@ msgstr "Overiť totožnosť"
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance. */
#: ../js/ui/components/polkitAgent.js:271 ../js/ui/shellMountOperation.js:383
#: ../js/ui/components/polkitAgent.js:301 ../js/ui/shellMountOperation.js:383
msgid "Sorry, that didn't work. Please try again."
msgstr "Prepáčte, ale nezabralo to. Skúste to, prosím, znova."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:757
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
msgstr "Kontakt %s odteraz vystupuje ako %s"
@ -850,7 +851,7 @@ msgstr "Inštalovať"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Stiahnuť a nainštalovať „%s“ z extensions.gnome.org?"
#: ../js/ui/keyboard.js:718 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:741 ../js/ui/status/keyboard.js:713
msgid "Keyboard"
msgstr "Klávesnica"
@ -881,15 +882,13 @@ msgstr "Skryť chyby"
msgid "Show Errors"
msgstr "Zobraziť chyby"
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:71 ../js/ui/status/location.js:176
#: ../js/ui/lookingGlass.js:716
msgid "Enabled"
msgstr "Povolené"
#. Translators: this is for a network device that cannot be activated
#. because it's disabled by rfkill (airplane mode) */
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:179 ../js/ui/status/network.js:592 ../src/gvc/gvc-mixer-control.c:1830
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "Zakázané"
@ -914,7 +913,7 @@ msgstr "Zobraziť zdroj"
msgid "Web Page"
msgstr "Webová stránka"
#: ../js/ui/messageTray.js:1504
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Informácie o systéme"
@ -922,7 +921,7 @@ msgstr "Informácie o systéme"
msgid "Undo"
msgstr "Vrátiť"
#: ../js/ui/overview.js:124
#: ../js/ui/overview.js:117
msgid "Overview"
msgstr "Prehľad"
@ -931,7 +930,7 @@ msgstr "Prehľad"
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters. */
#: ../js/ui/overview.js:246
#: ../js/ui/overview.js:244
msgid "Type to search…"
msgstr "Zadajte text na vyhľadanie…"
@ -945,7 +944,7 @@ msgstr "Ukončiť"
msgid "Activities"
msgstr "Aktivity"
#: ../js/ui/panel.js:755
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Horná lišta"
@ -957,7 +956,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Zadajte príkaz"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:153
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Zavrieť"
@ -990,19 +989,19 @@ msgstr[0] "%d nové oznámenie"
msgstr[1] "%d nové oznámenia"
msgstr[2] "%d nových oznámení"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:374
msgid "Lock"
msgstr "Uzamknúť"
#: ../js/ui/screenShield.js:668
#: ../js/ui/screenShield.js:684
msgid "GNOME needs to lock the screen"
msgstr "Prostredie GNOME vyžaduje uzamknutie obrazovky"
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "Nepodarilo sa uzamknúť obrazovku"
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Uzamknutie bolo zablokované aplikáciou"
@ -1085,11 +1084,7 @@ msgstr "Vysoký kontrast"
msgid "Large Text"
msgstr "Veľký text"
#: ../js/ui/status/bluetooth.js:49
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178 ../js/ui/status/network.js:360 ../js/ui/status/network.js:1282 ../js/ui/status/network.js:1393 ../js/ui/status/rfkill.js:91 ../js/ui/status/rfkill.js:118
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178 ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279 ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90 ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Vypnúť"
@ -1097,17 +1092,18 @@ msgstr "Vypnúť"
msgid "Bluetooth Settings"
msgstr "Nastavenia Bluetooth"
#: ../js/ui/status/bluetooth.js:104
#. Translators: this is the number of connected bluetooth devices */
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d pripojené zariadenie"
msgstr[1] "%d pripojené zariadenia"
msgstr[2] "%d pripojených zariadení"
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d pripojené"
msgstr[1] "%d pripojené"
msgstr[2] "%d pripojených"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1310
msgid "Not Connected"
msgstr "Nepripojené"
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Nepoužíva sa"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
@ -1118,11 +1114,11 @@ msgstr "Jas"
msgid "Show Keyboard Layout"
msgstr "Zobraziť rozloženie klávesnice"
#: ../js/ui/status/location.js:65
msgid "Location"
msgstr "Poloha"
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Poloha povolená"
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:177
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Zakázať"
@ -1131,10 +1127,14 @@ msgid "Privacy Settings"
msgstr "Nastavenia súkromia"
#: ../js/ui/status/location.js:176
msgid "In Use"
msgstr "Používa sa"
msgid "Location In Use"
msgstr "Poloha sa používa"
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Poloha zakázaná"
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Povoliť"
@ -1143,61 +1143,84 @@ msgstr "Povoliť"
msgid "<unknown>"
msgstr "<neznáme>"
# DK: pripojenie, zariadenie
#: ../js/ui/status/network.js:457 ../js/ui/status/network.js:1308 ../js/ui/status/network.js:1512
msgid "Off"
msgstr "Vypnuté"
#. Translators: %s is a network identifier */
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1308
#, javascript-format
msgid "%s Off"
msgstr "%s vypnuté"
#: ../js/ui/status/network.js:459
msgid "Connected"
msgstr "Pripojené"
#. Translators: %s is a network identifier */
#: ../js/ui/status/network.js:454
#, javascript-format
msgid "%s Connected"
msgstr "%s pripojené"
#. 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:463
msgid "Unmanaged"
msgstr "Nespravované"
#. under NetworkManager's control (and thus cannot be used in the menu);
#. %s is a network identifier */
#: ../js/ui/status/network.js:459
#, javascript-format
msgid "%s Unmanaged"
msgstr "%s nespravované"
#: ../js/ui/status/network.js:465
msgid "Disconnecting"
msgstr "Odpája sa"
#. Translators: %s is a network identifier */
#: ../js/ui/status/network.js:462
#, javascript-format
msgid "%s Disconnecting"
msgstr "Odpája sa %s"
#: ../js/ui/status/network.js:471 ../js/ui/status/network.js:1302
msgid "Connecting"
msgstr "Pripája sa"
#. Translators: %s is a network identifier */
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
#, javascript-format
msgid "%s Connecting"
msgstr "Pripája sa %s"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:474
msgid "Authentication required"
msgstr "Požaduje sa overenie totožnosti"
#. Translators: this is for network connections that require some kind of key or password; %s is a network identifier */
#: ../js/ui/status/network.js:472
#, javascript-format
msgid "%s Requires Authentication"
msgstr "%s vyžaduje overenie totožnosti"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
#: ../js/ui/status/network.js:482
msgid "Firmware missing"
msgstr "Chýba firmvér"
#. module, which is missing; %s is a network identifier */
#: ../js/ui/status/network.js:480
#, javascript-format
msgid "Firmware Missing For %s"
msgstr "Chýba firmvér pre %s"
#. 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:486
msgid "Unavailable"
msgstr "Nedostupné"
#. is disabled by rfkill, or it has no coverage; %s is a network identifier */
#: ../js/ui/status/network.js:484
#, javascript-format
msgid "%s Unavailable"
msgstr "%s nedostupné"
#: ../js/ui/status/network.js:488 ../js/ui/status/network.js:1696
msgid "Connection failed"
msgstr "Pripojenie zlyhalo"
#. Translators: %s is a network identifier */
#: ../js/ui/status/network.js:487
#, javascript-format
msgid "%s Connection Failed"
msgstr "Pripojenie %s zlyhalo"
#: ../js/ui/status/network.js:504
#: ../js/ui/status/network.js:503
msgid "Wired Settings"
msgstr "Nastavenia drôtovej siete"
#: ../js/ui/status/network.js:546 ../js/ui/status/network.js:624
#: ../js/ui/status/network.js:545 ../js/ui/status/network.js:624
msgid "Mobile Broadband Settings"
msgstr "Nastavenia mobilnej širokopásmovej siete"
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1306
msgid "Hardware Disabled"
msgstr "Hardvér zakázaný"
#. Translators: %s is a network identifier */
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1305
#, javascript-format
msgid "%s Hardware Disabled"
msgstr "Hardvér %s zakázaný"
#. Translators: this is for a network device that cannot be activated
#. because it's disabled by rfkill (airplane mode); %s is a network identifier */
#: ../js/ui/status/network.js:592
#, javascript-format
msgid "%s Disabled"
msgstr "%s zakázané"
#: ../js/ui/status/network.js:632
msgid "Use as Internet connection"
@ -1239,53 +1262,69 @@ msgstr "Vyberte sieť"
msgid "No Networks"
msgstr "Žiadne siete"
#: ../js/ui/status/network.js:904 ../js/ui/status/rfkill.js:116
#: ../js/ui/status/network.js:904 ../js/ui/status/rfkill.js:115
msgid "Use hardware switch to turn off"
msgstr "Na vypnutie použite hardvérový prepínač"
# item menu
#: ../js/ui/status/network.js:1174
#: ../js/ui/status/network.js:1171
msgid "Select Network"
msgstr "Vybrať sieť"
#: ../js/ui/status/network.js:1180
#: ../js/ui/status/network.js:1177
msgid "Wi-Fi Settings"
msgstr "Nastavenia siete Wi-Fi"
#: ../js/ui/status/network.js:1282
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Zapnúť"
#: ../js/ui/status/network.js:1299
msgid "Hotspot Active"
msgstr "Hotspot aktívny"
#. Translators: %s is a network identifier */
#: ../js/ui/status/network.js:1296
#, javascript-format
msgid "%s Hotspot Active"
msgstr "Hotspot %s aktívny"
#: ../js/ui/status/network.js:1410
#. Translators: %s is a network identifier */
#: ../js/ui/status/network.js:1311
#, javascript-format
msgid "%s Not Connected"
msgstr "%s nepripojené"
#: ../js/ui/status/network.js:1411
msgid "connecting..."
msgstr "pripája sa…"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:1413
#: ../js/ui/status/network.js:1414
msgid "authentication required"
msgstr "požaduje sa overenie totožnosti"
#: ../js/ui/status/network.js:1415
#: ../js/ui/status/network.js:1416
msgid "connection failed"
msgstr "pripojenie zlyhalo"
#: ../js/ui/status/network.js:1481 ../js/ui/status/rfkill.js:94
#: ../js/ui/status/network.js:1482 ../js/ui/status/rfkill.js:93
msgid "Network Settings"
msgstr "Nastavenia siete"
#: ../js/ui/status/network.js:1483
#: ../js/ui/status/network.js:1484
msgid "VPN Settings"
msgstr "Nastavenia VPN"
#: ../js/ui/status/network.js:1502
#: ../js/ui/status/network.js:1503
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1513
msgid "VPN Off"
msgstr "Pripojenie VPN vypnuté"
#: ../js/ui/status/network.js:1697
msgid "Connection failed"
msgstr "Pripojenie zlyhalo"
#: ../js/ui/status/network.js:1698
msgid "Activation of network connection failed"
msgstr "Aktivácia pripojenia k sieti zlyhala"
@ -1311,41 +1350,32 @@ msgstr "%d:%02d Zostáva (%d%%)"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d:%02d Do plného nabitia (%d%%)"
#: ../js/ui/status/power.js:119
msgid "UPS"
msgstr "Záložný zdroj UPS"
#: ../js/ui/status/power.js:121
msgid "Battery"
msgstr "Batéria"
#: ../js/ui/status/rfkill.js:88
msgid "Airplane Mode"
msgstr "Režim v lietadle"
msgid "Airplane Mode On"
msgstr "Režim v lietadle zapnutý"
# režim v lietadle
#: ../js/ui/status/rfkill.js:90
msgid "On"
msgstr "Zapnutý"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:343
msgid "Switch User"
msgstr "Prepnúť používateľa"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:348
msgid "Log Out"
msgstr "Odhlásiť sa"
#: ../js/ui/status/system.js:353
msgid "Account Settings"
msgstr "Nastavenia účtu"
# action button
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:370
msgid "Orientation Lock"
msgstr "Uzamknutie orientácie"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:378
msgid "Suspend"
msgstr "Uspať"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:381
msgid "Power Off"
msgstr "Vypnúť"
@ -1379,27 +1409,27 @@ msgstr "Hľadať"
# %s je totiž titulok okna
# informacna bublina
#: ../js/ui/windowAttentionHandler.js:19
#: ../js/ui/windowAttentionHandler.js:20
#, javascript-format
msgid "“%s” is ready"
msgstr "Program „%s“ je pripravený"
#: ../js/ui/windowManager.js:65
#: ../js/ui/windowManager.js:63
msgid "Do you want to keep these display settings?"
msgstr "Chcete ponechať tieto nastavenia displeja?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:84
#: ../js/ui/windowManager.js:82
msgid "Revert Settings"
msgstr "Vrátiť nastavenia"
#: ../js/ui/windowManager.js:88
#: ../js/ui/windowManager.js:85
msgid "Keep Changes"
msgstr "Uchovať zmeny"
#: ../js/ui/windowManager.js:107
#: ../js/ui/windowManager.js:103
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -1409,7 +1439,7 @@ msgstr[2] "Zmeny nastavení budú vrátené za %d sekúnd"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:613
#: ../js/ui/windowManager.js:658
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@ -1444,29 +1474,37 @@ msgstr "Vždy navrchu"
#: ../js/ui/windowMenu.js:89
msgid "Always on Visible Workspace"
msgstr "Vždy vo viditeľnom priestore"
msgstr "Vždy vo viditeľnom pracovnom priestore"
#: ../js/ui/windowMenu.js:106
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Presunúť do ľavého pracovného priestoru"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Presunúť do pravého pracovného priestoru"
#: ../js/ui/windowMenu.js:115
msgid "Move to Workspace Up"
msgstr "Presunúť do vyššieho priestoru"
msgstr "Presunúť do vyššieho pracovného priestoru"
#: ../js/ui/windowMenu.js:111
#: ../js/ui/windowMenu.js:120
msgid "Move to Workspace Down"
msgstr "Presunúť do nižšieho priestoru"
msgstr "Presunúť do nižšieho pracovného priestoru"
#: ../js/ui/windowMenu.js:127
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "Presunúť na monitor vyššie"
#: ../js/ui/windowMenu.js:133
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Presunúť na monitor nižšie"
#: ../js/ui/windowMenu.js:139
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Presunúť na monitor vľavo"
#: ../js/ui/windowMenu.js:145
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Presunúť na monitor vpravo"
@ -1524,11 +1562,11 @@ msgstr "Neznámy"
msgid "Failed to launch “%s”"
msgstr "Zlyhalo spustenie „%s“"
#: ../src/shell-keyring-prompt.c:714
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Heslá sa nezhodujú."
#: ../src/shell-keyring-prompt.c:722
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Heslo nemôže byť prázdne"
@ -1537,6 +1575,35 @@ msgstr "Heslo nemôže byť prázdne"
msgid "Authentication dialog was dismissed by the user"
msgstr "Dialógové okno overenia totožnosti bolo zatvorené používateľom"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "%d pripojené zariadenie"
#~ msgstr[1] "%d pripojené zariadenia"
#~ msgstr[2] "%d pripojených zariadení"
# DK: pripojenie, zariadenie
#~ msgid "Off"
#~ msgstr "Vypnuté"
#~ msgid "Authentication required"
#~ msgstr "Požaduje sa overenie totožnosti"
#~ msgid "UPS"
#~ msgstr "Záložný zdroj UPS"
#~ msgid "Battery"
#~ msgstr "Batéria"
#~ msgid "Airplane Mode"
#~ msgstr "Režim v lietadle"
# režim v lietadle
#~ msgid "On"
#~ msgstr "Zapnutý"
#~ msgctxt "event list time"
#~ msgid "%H%M"
#~ msgstr "%H%M"

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: 2015-05-10 08:30+0000\n"
"PO-Revision-Date: 2015-05-10 20:54+0100\n"
"POT-Creation-Date: 2015-07-08 08:07+0000\n"
"PO-Revision-Date: 2015-07-08 15:46+0100\n"
"Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
"Language: sl\n"
@ -340,17 +340,17 @@ msgstr "Izbor seje"
msgid "Not listed?"
msgstr "Ali je ni na seznamu?"
#: ../js/gdm/loginDialog.js:840
#: ../js/gdm/loginDialog.js:847
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(na primer, uporabnika ali %s)"
#: ../js/gdm/loginDialog.js:845 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Uporabniško ime: "
#: ../js/gdm/loginDialog.js:1173
#: ../js/gdm/loginDialog.js:1180
msgid "Login Window"
msgstr "Prijavno okno"
@ -443,31 +443,31 @@ msgstr "%B %d %Y, %l%M %p"
msgid "Web Authentication Redirect"
msgstr "Preusmeritev spletnega overjanja"
#: ../js/ui/appDisplay.js:788
#: ../js/ui/appDisplay.js:789
msgid "Frequently used applications will appear here"
msgstr "Pogosto uporabljeni programi bodo prikazani tu"
#: ../js/ui/appDisplay.js:908
#: ../js/ui/appDisplay.js:909
msgid "Frequent"
msgstr "Pogosto"
#: ../js/ui/appDisplay.js:915
#: ../js/ui/appDisplay.js:916
msgid "All"
msgstr "Vse"
#: ../js/ui/appDisplay.js:1844
#: ../js/ui/appDisplay.js:1845
msgid "New Window"
msgstr "Novo okno"
#: ../js/ui/appDisplay.js:1872 ../js/ui/dash.js:289
#: ../js/ui/appDisplay.js:1873 ../js/ui/dash.js:289
msgid "Remove from Favorites"
msgstr "Odstrani iz priljubljenih"
#: ../js/ui/appDisplay.js:1878
#: ../js/ui/appDisplay.js:1879
msgid "Add to Favorites"
msgstr "Dodaj med priljubljene"
#: ../js/ui/appDisplay.js:1888
#: ../js/ui/appDisplay.js:1889
msgid "Show Details"
msgstr "Pokaži besedilo"
@ -490,7 +490,7 @@ msgid "Display Settings"
msgstr "Nastavitve zaslona"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:334
#: ../js/ui/status/system.js:357
msgid "Settings"
msgstr "Nastavitve"
@ -920,7 +920,7 @@ msgstr "Namesti"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Prejmi in namesti “%s” preko povezave na extensions.gnome.org?"
#: ../js/ui/keyboard.js:718 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:747 ../js/ui/status/keyboard.js:713
msgid "Keyboard"
msgstr "Tipkovnica"
@ -985,7 +985,7 @@ msgstr "Poglej vir"
msgid "Web Page"
msgstr "Spletna stran"
#: ../js/ui/messageTray.js:1504
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Podrobnosti sistema"
@ -1027,7 +1027,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Vnos ukaza"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:153
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Zapri"
@ -1059,19 +1059,19 @@ msgstr[1] "%d novo obvestilo"
msgstr[2] "%d novi obvestili"
msgstr[3] "%d nova obvestila"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
msgid "Lock"
msgstr "Zakleni"
#: ../js/ui/screenShield.js:668
#: ../js/ui/screenShield.js:684
msgid "GNOME needs to lock the screen"
msgstr "Zakleniti je treba zaslon"
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "Zaklep ni mogoč"
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Zaklep je preprečil program"
@ -1394,23 +1394,23 @@ msgstr "Način letala"
msgid "On"
msgstr "Povezano"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:337
msgid "Switch User"
msgstr "Preklopi uporabnika"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:342
msgid "Log Out"
msgstr "Odjava"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:361
msgid "Orientation Lock"
msgstr "Zaklep položaja"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:369
msgid "Suspend"
msgstr "Zaustavi"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:372
msgid "Power Off"
msgstr "Izklop"
@ -1442,27 +1442,27 @@ msgstr "Programi"
msgid "Search"
msgstr "Poišči"
#: ../js/ui/windowAttentionHandler.js:19
#: ../js/ui/windowAttentionHandler.js:20
#, javascript-format
msgid "“%s” is ready"
msgstr "“%s” storitev je pripravljena"
#: ../js/ui/windowManager.js:65
#: ../js/ui/windowManager.js:63
msgid "Do you want to keep these display settings?"
msgstr "Ali želite ohraniti te nastavitve zaslona?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#. */
#: ../js/ui/windowManager.js:84
#: ../js/ui/windowManager.js:82
msgid "Revert Settings"
msgstr "Povrni nastavitve"
#: ../js/ui/windowManager.js:88
#: ../js/ui/windowManager.js:86
msgid "Keep Changes"
msgstr "Sledi spremembam"
#: ../js/ui/windowManager.js:107
#: ../js/ui/windowManager.js:105
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
@ -1473,7 +1473,7 @@ msgstr[3] "Spremembe nastavitev bodo povrnjene v %d sekundah."
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:613
#: ../js/ui/windowManager.js:604
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@ -1510,27 +1510,35 @@ msgstr "Vedno na vrhu"
msgid "Always on Visible Workspace"
msgstr "Vedno na dejavni delovni površini"
#: ../js/ui/windowMenu.js:106
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Premakni na delovno površino na levi"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Premakni na delovno površino na desni"
#: ../js/ui/windowMenu.js:115
msgid "Move to Workspace Up"
msgstr "Premakni na zgornjo delovno površino"
#: ../js/ui/windowMenu.js:111
#: ../js/ui/windowMenu.js:120
msgid "Move to Workspace Down"
msgstr "Premakni na spodnjo delovno površino"
#: ../js/ui/windowMenu.js:127
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "\t"
#: ../js/ui/windowMenu.js:133
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Premakni na zaslon spodaj"
#: ../js/ui/windowMenu.js:139
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Premakni na zaslon levo"
#: ../js/ui/windowMenu.js:145
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Premakni na zaslon desno"
@ -1590,11 +1598,11 @@ msgstr "Neznano"
msgid "Failed to launch “%s”"
msgstr "Zaganjanje “%s” je spodletelo"
#: ../src/shell-keyring-prompt.c:714
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Gesli se ne skladata."
#: ../src/shell-keyring-prompt.c:722
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Geslo ne more biti prazno"

116
po/sv.po
View File

@ -12,16 +12,16 @@ 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: 2015-03-17 17:18+0000\n"
"PO-Revision-Date: 2015-03-17 19:13+0100\n"
"Last-Translator: Anders Jonsson <anders.jonsson@norsjovallen.se>\n"
"POT-Creation-Date: 2015-05-13 20:03+0000\n"
"PO-Revision-Date: 2015-05-14 12:13+0100\n"
"Last-Translator: Sebastian Rasmussen <sebras@gmail.com>\n"
"Language-Team: svenska <tp-sv@listor.tp-sv.se>\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.7.3\n"
"X-Generator: Poedit 1.7.6\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -298,12 +298,12 @@ msgstr "Fördröj fokusändringar i musläge tills pekare slutar röra sig"
msgid "Network Login"
msgstr "Nätverksinloggning"
#: ../js/extensionPrefs/main.js:123
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Det uppstod ett fel vid inläsning av inställningsdialogen för %s:"
#: ../js/extensionPrefs/main.js:155
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Tillägg för GNOME-skal"
@ -314,39 +314,39 @@ msgstr "Tillägg för GNOME-skal"
msgid "Cancel"
msgstr "Avbryt"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:217
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
msgid "Next"
msgstr "Nästa"
#: ../js/gdm/authPrompt.js:213 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Lås upp"
#: ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Logga in"
#: ../js/gdm/loginDialog.js:280
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Välj session"
#: ../js/gdm/loginDialog.js:420
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Inte listad?"
#: ../js/gdm/loginDialog.js:829
#: ../js/gdm/loginDialog.js:840
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(till exempel användare eller %s)"
#: ../js/gdm/loginDialog.js:834 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:845 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Användarnamn: "
#: ../js/gdm/loginDialog.js:1162
#: ../js/gdm/loginDialog.js:1173
msgid "Login Window"
msgstr "Inloggningsfönster"
@ -439,31 +439,31 @@ msgstr "%d %B %Y, %l%M%p"
msgid "Web Authentication Redirect"
msgstr "Omdirigering för webbautentisering"
#: ../js/ui/appDisplay.js:792
#: ../js/ui/appDisplay.js:788
msgid "Frequently used applications will appear here"
msgstr "Ofta använda program kommer visas här"
#: ../js/ui/appDisplay.js:912
#: ../js/ui/appDisplay.js:908
msgid "Frequent"
msgstr "Ofta använda"
#: ../js/ui/appDisplay.js:919
#: ../js/ui/appDisplay.js:915
msgid "All"
msgstr "Alla"
#: ../js/ui/appDisplay.js:1850
#: ../js/ui/appDisplay.js:1844
msgid "New Window"
msgstr "Nytt fönster"
#: ../js/ui/appDisplay.js:1878 ../js/ui/dash.js:291
#: ../js/ui/appDisplay.js:1872 ../js/ui/dash.js:289
msgid "Remove from Favorites"
msgstr "Ta bort från favoriter"
#: ../js/ui/appDisplay.js:1884
#: ../js/ui/appDisplay.js:1878
msgid "Add to Favorites"
msgstr "Lägg till som favorit"
#: ../js/ui/appDisplay.js:1894
#: ../js/ui/appDisplay.js:1888
msgid "Show Details"
msgstr "Visa detaljer"
@ -477,15 +477,19 @@ msgstr "%s har lagts till i dina favoriter."
msgid "%s has been removed from your favorites."
msgstr "%s har tagits bort från dina favoriter."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:337
msgid "Settings"
msgstr "Inställningar"
#: ../js/ui/backgroundMenu.js:21
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Ändra bakgrund…"
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Skärminställningar"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:334
msgid "Settings"
msgstr "Inställningar"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday). */
#: ../js/ui/calendar.js:53
msgctxt "calendar-no-work"
@ -553,7 +557,7 @@ msgstr "Vecka %V"
#. 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:1183
#: ../js/ui/calendar.js:1187
msgctxt "event list time"
msgid "All Day"
msgstr "Hela dagen"
@ -720,7 +724,7 @@ msgstr "Tyvärr, det fungerade inte. Försök igen."
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:728
#: ../js/ui/components/telepathyClient.js:757
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s är nu känd som %s"
@ -729,11 +733,11 @@ msgstr "%s är nu känd som %s"
msgid "Windows"
msgstr "Fönster"
#: ../js/ui/dash.js:252 ../js/ui/dash.js:293
#: ../js/ui/dash.js:250 ../js/ui/dash.js:291
msgid "Show Applications"
msgstr "Visa program"
#: ../js/ui/dash.js:453
#: ../js/ui/dash.js:449
msgid "Dash"
msgstr "Snabbstartspanel"
@ -901,16 +905,16 @@ msgstr "Installera"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "Hämta och installera ”%s” från extensions.gnome.org?"
#: ../js/ui/keyboard.js:714 ../js/ui/status/keyboard.js:724
#: ../js/ui/keyboard.js:718 ../js/ui/status/keyboard.js:713
msgid "Keyboard"
msgstr "Tangentbord"
#. translators: 'Hide' is a verb */
#: ../js/ui/legacyTray.js:64
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Dölj aktivitetsfält"
#: ../js/ui/legacyTray.js:104
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Statusikoner"
@ -966,7 +970,7 @@ msgstr "Visa källa"
msgid "Web Page"
msgstr "Webbsida"
#: ../js/ui/messageTray.js:1507
#: ../js/ui/messageTray.js:1504
msgid "System Information"
msgstr "Systeminformation"
@ -1008,7 +1012,7 @@ msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Ange ett kommando"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:120
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:153
msgid "Close"
msgstr "Stäng"
@ -1036,7 +1040,7 @@ msgid_plural "%d new notifications"
msgstr[0] "%d ny avisering"
msgstr[1] "%d nya aviseringar"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:345
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:342
msgid "Lock"
msgstr "Lås"
@ -1052,11 +1056,11 @@ msgstr "Kunde inte låsa"
msgid "Lock was blocked by an application"
msgstr "Låsning hindrades av ett program"
#: ../js/ui/search.js:616
#: ../js/ui/search.js:617
msgid "Searching…"
msgstr "Söker…"
#: ../js/ui/search.js:618
#: ../js/ui/search.js:619
msgid "No results."
msgstr "Inga sökträffar."
@ -1120,11 +1124,11 @@ msgstr "Studsande tangenter"
msgid "Mouse Keys"
msgstr "Mustangenter"
#: ../js/ui/status/accessibility.js:144
#: ../js/ui/status/accessibility.js:167
msgid "High Contrast"
msgstr "Hög kontrast"
#: ../js/ui/status/accessibility.js:193
#: ../js/ui/status/accessibility.js:202
msgid "Large Text"
msgstr "Stor text"
@ -1158,7 +1162,7 @@ msgstr "Ej ansluten"
msgid "Brightness"
msgstr "Ljusstyrka"
#: ../js/ui/status/keyboard.js:747
#: ../js/ui/status/keyboard.js:736
msgid "Show Keyboard Layout"
msgstr "Visa tangentbordslayout"
@ -1370,23 +1374,23 @@ msgstr "Flygplansläge"
msgid "On"
msgstr "På"
#: ../js/ui/status/system.js:317
#: ../js/ui/status/system.js:314
msgid "Switch User"
msgstr "Växla användare"
#: ../js/ui/status/system.js:322
#: ../js/ui/status/system.js:319
msgid "Log Out"
msgstr "Logga ut"
#: ../js/ui/status/system.js:341
#: ../js/ui/status/system.js:338
msgid "Orientation Lock"
msgstr "Skärmrotation"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:346
msgid "Suspend"
msgstr "Vänteläge"
#: ../js/ui/status/system.js:352
#: ../js/ui/status/system.js:349
msgid "Power Off"
msgstr "Stäng av"
@ -1447,7 +1451,7 @@ msgstr[1] "Inställningarna kommer återställas om %d sekunder"
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:599
#: ../js/ui/windowManager.js:613
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@ -1492,6 +1496,22 @@ msgstr "Flytta till arbetsyta ovan"
msgid "Move to Workspace Down"
msgstr "Flytta till arbetsyta nedan"
#: ../js/ui/windowMenu.js:127
msgid "Move to Monitor Up"
msgstr "Flytta till skärm uppåt"
#: ../js/ui/windowMenu.js:133
msgid "Move to Monitor Down"
msgstr "Flytta till skärm nedåt"
#: ../js/ui/windowMenu.js:139
msgid "Move to Monitor Left"
msgstr "Flytta till skärm åt vänster"
#: ../js/ui/windowMenu.js:145
msgid "Move to Monitor Right"
msgstr "Flytta till skärm åt höger"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
msgid "Evolution Calendar"
msgstr "Evolution-kalender"

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: 2015-05-04 19:54+0000\n"
"PO-Revision-Date: 2015-05-05 09:50+0500\n"
"POT-Creation-Date: 2015-06-24 20:04+0000\n"
"PO-Revision-Date: 2015-06-25 10:20+0500\n"
"Last-Translator: Victor Ibragimov <victor.ibragimov@gmail.com>\n"
"Language-Team: \n"
"Language: tg\n"
@ -495,7 +495,7 @@ msgid "Display Settings"
msgstr "Танзимоти дисплей"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:334
#: ../js/ui/status/system.js:357
msgid "Settings"
msgstr "Танзимот"
@ -914,7 +914,7 @@ msgstr "Насб кардан"
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "“%s”-ро аз extensions.gnome.org боргирӣ ва насб мекунед?"
#: ../js/ui/keyboard.js:718 ../js/ui/status/keyboard.js:713
#: ../js/ui/keyboard.js:747 ../js/ui/status/keyboard.js:713
msgid "Keyboard"
msgstr "Клавиатура"
@ -979,7 +979,7 @@ msgstr "Намоиш додани манбаъ"
msgid "Web Page"
msgstr "Саҳифаи веб"
#: ../js/ui/messageTray.js:1504
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Маълумоти система"
@ -1021,7 +1021,7 @@ msgstr "toggle-switch-us"
msgid "Enter a Command"
msgstr "Фармонеро ворид кунед"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:153
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Пӯшидан"
@ -1049,19 +1049,19 @@ msgid_plural "%d new notifications"
msgstr[0] "%d огоҳии нав"
msgstr[1] "%d огоҳии нав"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:342
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:365
msgid "Lock"
msgstr "Қулф кардан"
#: ../js/ui/screenShield.js:668
#: ../js/ui/screenShield.js:684
msgid "GNOME needs to lock the screen"
msgstr "GNOME бояд экранро қулф кунад"
#: ../js/ui/screenShield.js:795 ../js/ui/screenShield.js:1271
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "Қулф карда намешавад"
#: ../js/ui/screenShield.js:796 ../js/ui/screenShield.js:1272
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Қулф аз тарави барнома баста шудааст"
@ -1382,23 +1382,23 @@ msgstr "Ҳолати ҳавопаймо"
msgid "On"
msgstr "Фаъол"
#: ../js/ui/status/system.js:314
#: ../js/ui/status/system.js:337
msgid "Switch User"
msgstr "Таъвизи корбар"
#: ../js/ui/status/system.js:319
#: ../js/ui/status/system.js:342
msgid "Log Out"
msgstr "Баромад"
#: ../js/ui/status/system.js:338
#: ../js/ui/status/system.js:361
msgid "Orientation Lock"
msgstr "Қулфи самт"
#: ../js/ui/status/system.js:346
#: ../js/ui/status/system.js:369
msgid "Suspend"
msgstr "Таваққуф"
#: ../js/ui/status/system.js:349
#: ../js/ui/status/system.js:372
msgid "Power Off"
msgstr "Хомӯш кардан"
@ -1459,7 +1459,7 @@ msgstr[1] "Тағйироти танзимот баъд аз %d сония ба
#. Translators: This represents the size of a window. The first number is
#. * the width of the window and the second is the height. */
#: ../js/ui/windowManager.js:613
#: ../js/ui/windowManager.js:605
#, javascript-format
msgid "%d x %d"
msgstr "%d x %d"
@ -1496,27 +1496,35 @@ msgstr "Ҳамеша дар боло"
msgid "Always on Visible Workspace"
msgstr "Ҳамеша дар фазои кории намоён"
#: ../js/ui/windowMenu.js:106
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Интиқол додан ба фазои кории чап"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Интиқол додан ба фазои кории рост"
#: ../js/ui/windowMenu.js:115
msgid "Move to Workspace Up"
msgstr "Интиқол додан ба фазои кории боло"
#: ../js/ui/windowMenu.js:111
#: ../js/ui/windowMenu.js:120
msgid "Move to Workspace Down"
msgstr "Интиқол додан ба фазои кории поён"
#: ../js/ui/windowMenu.js:127
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
msgstr "Интиқол ба канори болои монитор"
#: ../js/ui/windowMenu.js:133
#: ../js/ui/windowMenu.js:142
msgid "Move to Monitor Down"
msgstr "Интиқол ба канори поёни монитор"
#: ../js/ui/windowMenu.js:139
#: ../js/ui/windowMenu.js:148
msgid "Move to Monitor Left"
msgstr "Интиқол ба канори чапи монитор"
#: ../js/ui/windowMenu.js:145
#: ../js/ui/windowMenu.js:154
msgid "Move to Monitor Right"
msgstr "Интиқол ба канори рости монитор"
@ -1573,11 +1581,11 @@ msgstr "Номаълум"
msgid "Failed to launch “%s”"
msgstr "Оғози “%s” қатъ шудааст"
#: ../src/shell-keyring-prompt.c:714
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Паролҳо мувофиқат намекунанд."
#: ../src/shell-keyring-prompt.c:722
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Парол бояд холӣ набошад"
@ -1806,7 +1814,7 @@ msgstr "Равзанаи гуфтугӯи санҷиши ҳакконият бо
#~ "маҳдудиятҳое, ки бо китобхонаи рамзгузорӣ таъин шудаанд, дарозтар мебошад"
#~ msgid "Internal error"
#~ msgstr "Хатогии дохилӣ"
#~ msgstr "Хатои дохилӣ"
#~ msgid "Unable to connect to %s"
#~ msgstr "Пайвастшавӣ ба %s имконнопазир аст"

528
po/tr.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -201,7 +201,7 @@ calendar_sources_init (CalendarSources *sources)
"/", "org.freedesktop.DBus",
"StartServiceByName",
g_variant_new ("(su)",
"org.gnome.evolution.dataserver.Sources4",
"org.gnome.evolution.dataserver.Sources5",
0),
NULL,
G_DBUS_CALL_FLAGS_NONE,

View File

@ -42,18 +42,11 @@ static void gnome_shell_plugin_minimize (MetaPlugin *plugin,
MetaWindowActor *actor);
static void gnome_shell_plugin_unminimize (MetaPlugin *plugin,
MetaWindowActor *actor);
static void gnome_shell_plugin_maximize (MetaPlugin *plugin,
static void gnome_shell_plugin_size_change (MetaPlugin *plugin,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height);
static void gnome_shell_plugin_unmaximize (MetaPlugin *plugin,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height);
MetaSizeChange which_change,
MetaRectangle *old_rect,
MetaRectangle *new_rect);
static void gnome_shell_plugin_map (MetaPlugin *plugin,
MetaWindowActor *actor);
static void gnome_shell_plugin_destroy (MetaPlugin *plugin,
@ -134,8 +127,7 @@ gnome_shell_plugin_class_init (GnomeShellPluginClass *klass)
plugin_class->map = gnome_shell_plugin_map;
plugin_class->minimize = gnome_shell_plugin_minimize;
plugin_class->unminimize = gnome_shell_plugin_unminimize;
plugin_class->maximize = gnome_shell_plugin_maximize;
plugin_class->unmaximize = gnome_shell_plugin_unmaximize;
plugin_class->size_change = gnome_shell_plugin_size_change;
plugin_class->destroy = gnome_shell_plugin_destroy;
plugin_class->switch_workspace = gnome_shell_plugin_switch_workspace;
@ -281,27 +273,13 @@ gnome_shell_plugin_unminimize (MetaPlugin *plugin,
}
static void
gnome_shell_plugin_maximize (MetaPlugin *plugin,
gnome_shell_plugin_size_change (MetaPlugin *plugin,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height)
MetaSizeChange which_change,
MetaRectangle *old_frame_rect,
MetaRectangle *old_buffer_rect)
{
_shell_wm_maximize (get_shell_wm (),
actor, x, y, width, height);
}
static void
gnome_shell_plugin_unmaximize (MetaPlugin *plugin,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height)
{
_shell_wm_unmaximize (get_shell_wm (),
actor, x, y, width, height);
_shell_wm_size_change (get_shell_wm (), actor, which_change, old_frame_rect, old_buffer_rect);
}
static void

Submodule src/gvc updated: e14dbe8aa6...fac3a900e5

View File

@ -174,19 +174,19 @@ shell_prefs_init (void)
{
ShellGlobal *global = shell_global_get ();
GSettings *settings = shell_global_get_overrides_settings (global);
char **keys, **k, *schema_id;
GSettingsSchema *schema;
char **keys, **k;
if (!settings)
return;
g_object_get (G_OBJECT (settings), "schema-id", &schema_id, NULL);
g_object_get (G_OBJECT (settings), "settings-schema", &schema, NULL);
keys = g_settings_list_keys (settings);
for (keys = k = g_settings_list_keys (settings); *k; k++)
meta_prefs_override_preference_schema (*k, schema_id);
for (keys = k = g_settings_schema_list_keys (schema); *k; k++)
meta_prefs_override_preference_schema (*k, g_settings_schema_get_id (schema));
g_strfreev (keys);
g_free (schema_id);
g_settings_schema_unref (schema);
}
static void

View File

@ -83,12 +83,18 @@ scan_startup_wm_class_to_id (ShellAppSystem *self)
for (l = apps; l != NULL; l = l->next)
{
GAppInfo *info = l->data;
const char *startup_wm_class, *id;
const char *startup_wm_class, *id, *old_id;
id = g_app_info_get_id (info);
startup_wm_class = g_desktop_app_info_get_startup_wm_class (G_DESKTOP_APP_INFO (info));
if (startup_wm_class != NULL)
if (startup_wm_class == NULL)
continue;
/* In case multiple .desktop files set the same StartupWMClass, prefer
* the one where ID and StartupWMClass match */
old_id = g_hash_table_lookup (priv->startup_wm_class_to_id, startup_wm_class);
if (old_id == NULL || strcmp (id, startup_wm_class) == 0)
g_hash_table_insert (priv->startup_wm_class_to_id,
g_strdup (startup_wm_class), g_strdup (id));
}
@ -377,3 +383,28 @@ shell_app_system_get_running (ShellAppSystem *self)
return ret;
}
/**
* shell_app_system_search:
* @search_string: the search string to use
*
* Wrapper around g_desktop_app_info_search() that replaces results that
* don't validate as UTF-8 with the empty string.
*
* Returns: (array zero-terminated=1) (element-type GStrv) (transfer full): a
* list of strvs. Free each item with g_strfreev() and free the outer
* list with g_free().
*/
char ***
shell_app_system_search (const char *search_string)
{
char ***results = g_desktop_app_info_search (search_string);
char ***groups, **ids;
for (groups = results; *groups; groups++)
for (ids = *groups; *ids; ids++)
if (!g_utf8_validate (*ids, -1, NULL))
**ids = '\0';
return results;
}

View File

@ -48,5 +48,6 @@ ShellApp *shell_app_system_lookup_desktop_wmclass (ShellAppSystem *s
const char *wmclass);
GSList *shell_app_system_get_running (ShellAppSystem *self);
char ***shell_app_system_search (const char *search_string);
#endif /* __SHELL_APP_SYSTEM_H__ */

View File

@ -828,10 +828,13 @@ shell_app_sync_running_state (ShellApp *app)
{
g_return_if_fail (app->running_state != NULL);
if (app->state != SHELL_APP_STATE_STARTING)
{
if (app->running_state->interesting_windows == 0)
shell_app_state_transition (app, SHELL_APP_STATE_STOPPED);
else if (app->state != SHELL_APP_STATE_STARTING)
else
shell_app_state_transition (app, SHELL_APP_STATE_RUNNING);
}
}
@ -1000,10 +1003,16 @@ _shell_app_remove_window (ShellApp *app,
if (!meta_window_is_skip_taskbar (window))
app->running_state->interesting_windows--;
shell_app_sync_running_state (app);
if (app->running_state && app->running_state->windows == NULL)
if (app->running_state->windows == NULL)
{
g_clear_pointer (&app->running_state, unref_running_state);
shell_app_state_transition (app, SHELL_APP_STATE_STOPPED);
}
else
{
shell_app_sync_running_state (app);
}
g_signal_emit (app, shell_app_signals[WINDOWS_CHANGED], 0);
}

View File

@ -59,7 +59,7 @@ shell_embedded_window_show (GtkWidget *widget)
/* Size is 0x0 if the GtkWindow is not shown */
clutter_actor_queue_relayout (CLUTTER_ACTOR (window->priv->actor));
if (CLUTTER_ACTOR_IS_REALIZED (window->priv->actor))
if (clutter_actor_is_realized (CLUTTER_ACTOR (window->priv->actor)))
gtk_widget_map (widget);
}
}
@ -166,7 +166,7 @@ _shell_embedded_window_set_actor (ShellEmbeddedWindow *window,
window->priv->actor = actor;
if (actor &&
CLUTTER_ACTOR_IS_MAPPED (actor) &&
clutter_actor_is_mapped (CLUTTER_ACTOR (actor)) &&
gtk_widget_get_visible (GTK_WIDGET (window)))
gtk_widget_map (GTK_WIDGET (window));
}

View File

@ -172,7 +172,7 @@ shell_generic_container_get_focus_chain (StWidget *widget)
child != NULL;
child = clutter_actor_get_next_sibling (child))
{
if (CLUTTER_ACTOR_IS_VISIBLE (child) &&
if (clutter_actor_is_visible (child) &&
!shell_generic_container_get_skip_paint (self, child))
focus_chain = g_list_prepend (focus_chain, child);
}
@ -273,7 +273,7 @@ shell_generic_container_get_paint_volume (ClutterActor *self,
{
const ClutterPaintVolume *child_volume;
if (!CLUTTER_ACTOR_IS_VISIBLE (child))
if (!clutter_actor_is_visible (child))
continue;
if (shell_generic_container_get_skip_paint (SHELL_GENERIC_CONTAINER (self), child))

View File

@ -1566,6 +1566,64 @@ shell_global_get_current_time (ShellGlobal *global)
return clutter_get_current_event_time ();
}
static void
import_session_environment_to_app_launch_context (ShellGlobal *global,
GAppLaunchContext *context)
{
char *environment_dir, *environment_filename;
GMappedFile *environment_file;
environment_dir = g_build_filename (g_get_user_runtime_dir (), "gnome", NULL);
environment_filename = g_build_filename (environment_dir, "environment", NULL);
g_free (environment_dir);
environment_file = g_mapped_file_new (environment_filename, FALSE, NULL);
g_free (environment_filename);
if (environment_file != NULL)
{
GVariant *environment_variant;
const char **environment;
int i = 0;
gconstpointer environment_data;
gsize environment_size;
environment_data = g_mapped_file_get_contents (environment_file);
environment_size = g_mapped_file_get_length (environment_file);
environment_variant = g_variant_new_from_data (G_VARIANT_TYPE_BYTESTRING_ARRAY,
environment_data,
environment_size,
FALSE,
NULL,
NULL);
environment = g_variant_get_bytestring_array (environment_variant, NULL);
if (environment != NULL)
{
for (i = 0; environment[i] != NULL; i++)
{
char **entry;
const char *key;
const char *value;
entry = g_strsplit (environment[i], "=", 2);
key = entry[0];
value = entry[1];
if (value != NULL)
g_app_launch_context_setenv (context, key, value);
g_free (entry);
}
g_free (environment);
}
g_variant_unref (environment_variant);
}
g_mapped_file_unref (environment_file);
}
/**
* shell_global_create_app_launch_context:
* @global: A #ShellGlobal
@ -1586,6 +1644,8 @@ shell_global_create_app_launch_context (ShellGlobal *global,
context = gdk_display_get_app_launch_context (global->gdk_display);
import_session_environment_to_app_launch_context (global, G_APP_LAUNCH_CONTEXT (context));
if (timestamp == 0)
timestamp = shell_global_get_current_time (global);
gdk_app_launch_context_set_timestamp (context, timestamp);

View File

@ -111,6 +111,34 @@ shell_keyring_prompt_init (ShellKeyringPrompt *self)
}
static gchar *
remove_mnemonics (const GValue *value)
{
const gchar mnemonic = '_';
gchar *stripped_label, *temp;
const gchar *label;
g_return_val_if_fail (value != NULL, NULL);
g_return_val_if_fail (G_VALUE_HOLDS_STRING (value), NULL);
label = g_value_get_string (value);
g_return_val_if_fail (label != NULL, NULL);
/* Stripped label will have the original label lenght at most */
stripped_label = temp = g_new (gchar, strlen(label) + 1);
g_assert (stripped_label != NULL);
while (*label != '\0')
{
if (*label == mnemonic)
label++;
*(temp++) = *(label++);
}
*temp = '\0';
return stripped_label;
}
static void
shell_keyring_prompt_set_property (GObject *obj,
guint prop_id,
@ -145,7 +173,7 @@ shell_keyring_prompt_set_property (GObject *obj,
break;
case PROP_CHOICE_LABEL:
g_free (self->choice_label);
self->choice_label = g_value_dup_string (value);
self->choice_label = remove_mnemonics (value);
if (!self->choice_label)
self->choice_label = g_strdup ("");
g_object_notify (obj, "choice-label");
@ -165,12 +193,12 @@ shell_keyring_prompt_set_property (GObject *obj,
break;
case PROP_CONTINUE_LABEL:
g_free (self->continue_label);
self->continue_label = g_value_dup_string (value);
self->continue_label = remove_mnemonics (value);
g_object_notify (obj, "continue-label");
break;
case PROP_CANCEL_LABEL:
g_free (self->cancel_label);
self->cancel_label = g_value_dup_string (value);
self->cancel_label = remove_mnemonics (value);
g_object_notify (obj, "cancel-label");
break;
case PROP_PASSWORD_ACTOR:

View File

@ -11,12 +11,15 @@ struct _ShellRecorderSrc
{
GstPushSrc parent;
GMutex mutex_data;
GMutex *mutex;
GMutex mutex;
GstCaps *caps;
GAsyncQueue *queue;
gboolean closed;
GMutex queue_lock;
GCond queue_cond;
GQueue *queue;
gboolean eos;
gboolean flushing;
guint memory_used;
guint memory_used_update_idle;
};
@ -32,9 +35,6 @@ enum {
PROP_MEMORY_USED
};
/* Special marker value once the source is closed */
#define RECORDER_QUEUE_END ((GstBuffer *)1)
#define shell_recorder_src_parent_class parent_class
G_DEFINE_TYPE(ShellRecorderSrc, shell_recorder_src, GST_TYPE_PUSH_SRC);
@ -44,9 +44,10 @@ shell_recorder_src_init (ShellRecorderSrc *src)
gst_base_src_set_format (GST_BASE_SRC (src), GST_FORMAT_TIME);
gst_base_src_set_live (GST_BASE_SRC (src), TRUE);
src->queue = g_async_queue_new ();
src->mutex = &src->mutex_data;
g_mutex_init (src->mutex);
src->queue = g_queue_new ();
g_mutex_init (&src->mutex);
g_mutex_init (&src->queue_lock);
g_cond_init (&src->queue_cond);
}
static gboolean
@ -54,9 +55,9 @@ shell_recorder_src_memory_used_update_idle (gpointer data)
{
ShellRecorderSrc *src = data;
g_mutex_lock (src->mutex);
g_mutex_lock (&src->mutex);
src->memory_used_update_idle = 0;
g_mutex_unlock (src->mutex);
g_mutex_unlock (&src->mutex);
g_object_notify (G_OBJECT (src), "memory-used");
@ -70,14 +71,14 @@ static void
shell_recorder_src_update_memory_used (ShellRecorderSrc *src,
int delta)
{
g_mutex_lock (src->mutex);
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);
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);
g_mutex_unlock (&src->mutex);
}
/* _negotiate() is called when we have to decide on a format. We
@ -93,6 +94,62 @@ shell_recorder_src_negotiate (GstBaseSrc * base_src)
return result;
}
static gboolean
shell_recorder_src_unlock (GstBaseSrc * base_src)
{
ShellRecorderSrc *src = SHELL_RECORDER_SRC (base_src);
g_mutex_lock (&src->queue_lock);
src->flushing = TRUE;
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
return TRUE;
}
static gboolean
shell_recorder_src_unlock_stop (GstBaseSrc * base_src)
{
ShellRecorderSrc *src = SHELL_RECORDER_SRC (base_src);
g_mutex_lock (&src->queue_lock);
src->flushing = FALSE;
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
return TRUE;
}
static gboolean
shell_recorder_src_start (GstBaseSrc * base_src)
{
ShellRecorderSrc *src = SHELL_RECORDER_SRC (base_src);
g_mutex_lock (&src->queue_lock);
src->flushing = FALSE;
src->eos = FALSE;
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
return TRUE;
}
static gboolean
shell_recorder_src_stop (GstBaseSrc * base_src)
{
ShellRecorderSrc *src = SHELL_RECORDER_SRC (base_src);
g_mutex_lock (&src->queue_lock);
src->flushing = TRUE;
src->eos = FALSE;
g_queue_foreach (src->queue, (GFunc) gst_buffer_unref, NULL);
g_queue_clear (src->queue);
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
return TRUE;
}
static gboolean
shell_recorder_src_send_event (GstElement * element, GstEvent * event)
{
@ -123,17 +180,29 @@ shell_recorder_src_create (GstPushSrc *push_src,
ShellRecorderSrc *src = SHELL_RECORDER_SRC (push_src);
GstBuffer *buffer;
if (src->closed)
return GST_FLOW_EOS;
g_mutex_lock (&src->queue_lock);
while (TRUE) {
/* int the flushing state we just return FLUSHING */
if (src->flushing) {
g_mutex_unlock (&src->queue_lock);
return GST_FLOW_FLUSHING;
}
buffer = g_async_queue_pop (src->queue);
buffer = g_queue_pop_head (src->queue);
if (buffer == RECORDER_QUEUE_END)
{
/* Returning UNEXPECTED here will cause a EOS message to be sent */
src->closed = TRUE;
/* we have a buffer, exit the loop to handle it */
if (buffer != NULL)
break;
/* no buffer, check EOS */
if (src->eos) {
g_mutex_unlock (&src->queue_lock);
return GST_FLOW_EOS;
}
/* wait for something to happen and try again */
g_cond_wait (&src->queue_cond, &src->queue_lock);
}
g_mutex_unlock (&src->queue_lock);
shell_recorder_src_update_memory_used (src,
- (int)(gst_buffer_get_size(buffer) / 1024));
@ -176,9 +245,11 @@ shell_recorder_src_finalize (GObject *object)
g_source_remove (src->memory_used_update_idle);
shell_recorder_src_set_caps (src, NULL);
g_async_queue_unref (src->queue);
g_queue_free_full (src->queue, (GDestroyNotify) gst_buffer_unref);
g_mutex_clear (src->mutex);
g_mutex_clear (&src->mutex);
g_mutex_clear (&src->queue_lock);
g_cond_clear (&src->queue_cond);
G_OBJECT_CLASS (shell_recorder_src_parent_class)->finalize (object);
}
@ -216,9 +287,9 @@ shell_recorder_src_get_property (GObject *object,
gst_value_set_caps (value, src->caps);
break;
case PROP_MEMORY_USED:
g_mutex_lock (src->mutex);
g_mutex_lock (&src->mutex);
g_value_set_uint (value, src->memory_used);
g_mutex_unlock (src->mutex);
g_mutex_unlock (&src->mutex);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@ -270,6 +341,10 @@ shell_recorder_src_class_init (ShellRecorderSrcClass *klass)
element_class->send_event = shell_recorder_src_send_event;
base_src_class->negotiate = shell_recorder_src_negotiate;
base_src_class->unlock = shell_recorder_src_unlock;
base_src_class->unlock_stop = shell_recorder_src_unlock_stop;
base_src_class->start = shell_recorder_src_start;
base_src_class->stop = shell_recorder_src_stop;
push_src_class->create = shell_recorder_src_create;
}
@ -292,7 +367,10 @@ shell_recorder_src_add_buffer (ShellRecorderSrc *src,
shell_recorder_src_update_memory_used (src,
(int)(gst_buffer_get_size(buffer) / 1024));
g_async_queue_push (src->queue, gst_buffer_ref (buffer));
g_mutex_lock (&src->queue_lock);
g_queue_push_tail (src->queue, gst_buffer_ref (buffer));
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
}
/**
@ -305,10 +383,13 @@ void
shell_recorder_src_close (ShellRecorderSrc *src)
{
/* We can't send a message to the source immediately or buffers that haven't
* been pushed yet will be discarded. Instead stick a marker onto our own
* queue to send an event once everything has been pushed.
* been pushed yet will be discarded. Instead mark ourselves EOS, which will
* make us send an event once everything has been pushed.
*/
g_async_queue_push (src->queue, RECORDER_QUEUE_END);
g_mutex_lock (&src->queue_lock);
src->eos = TRUE;
g_cond_signal (&src->queue_cond);
g_mutex_unlock (&src->queue_lock);
}
static gboolean

View File

@ -155,7 +155,7 @@ shell_stack_navigate_focus (StWidget *widget,
if (from && clutter_actor_contains (CLUTTER_ACTOR (widget), from))
return FALSE;
if (CLUTTER_ACTOR_IS_MAPPED (CLUTTER_ACTOR (widget)))
if (clutter_actor_is_mapped (CLUTTER_ACTOR (widget)))
{
clutter_actor_grab_key_focus (CLUTTER_ACTOR (widget));
return TRUE;

View File

@ -12,18 +12,11 @@ void _shell_wm_minimize (ShellWM *wm,
MetaWindowActor *actor);
void _shell_wm_unminimize (ShellWM *wm,
MetaWindowActor *actor);
void _shell_wm_maximize (ShellWM *wm,
void _shell_wm_size_change(ShellWM *wm,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height);
void _shell_wm_unmaximize (ShellWM *wm,
MetaWindowActor *actor,
gint x,
gint y,
gint width,
gint height);
MetaSizeChange which_change,
MetaRectangle *old_rect,
MetaRectangle *new_rect);
void _shell_wm_map (ShellWM *wm,
MetaWindowActor *actor);
void _shell_wm_destroy (ShellWM *wm,

View File

@ -4,6 +4,7 @@
#include <string.h>
#include <meta/meta-enum-types.h>
#include <meta/keybindings.h>
#include "shell-wm-private.h"
@ -20,8 +21,7 @@ enum
{
MINIMIZE,
UNMINIMIZE,
MAXIMIZE,
UNMAXIMIZE,
SIZE_CHANGE,
MAP,
DESTROY,
SWITCH_WORKSPACE,
@ -74,22 +74,14 @@ shell_wm_class_init (ShellWMClass *klass)
NULL, NULL, NULL,
G_TYPE_NONE, 1,
META_TYPE_WINDOW_ACTOR);
shell_wm_signals[MAXIMIZE] =
g_signal_new ("maximize",
shell_wm_signals[SIZE_CHANGE] =
g_signal_new ("size-change",
G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST,
0,
NULL, NULL, NULL,
G_TYPE_NONE, 5,
META_TYPE_WINDOW_ACTOR, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT);
shell_wm_signals[UNMAXIMIZE] =
g_signal_new ("unmaximize",
G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST,
0,
NULL, NULL, NULL,
G_TYPE_NONE, 5,
META_TYPE_WINDOW_ACTOR, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT);
G_TYPE_NONE, 4,
META_TYPE_WINDOW_ACTOR, META_TYPE_SIZE_CHANGE, META_TYPE_RECTANGLE, META_TYPE_RECTANGLE);
shell_wm_signals[MAP] =
g_signal_new ("map",
G_TYPE_FROM_CLASS (klass),
@ -220,32 +212,11 @@ shell_wm_completed_unminimize (ShellWM *wm,
meta_plugin_unminimize_completed (wm->plugin, actor);
}
/**
* shell_wm_completed_maximize:
* @wm: the ShellWM
* @actor: the MetaWindowActor actor
*
* The plugin must call this when it has completed a window maximize effect.
**/
void
shell_wm_completed_maximize (ShellWM *wm,
shell_wm_completed_size_change (ShellWM *wm,
MetaWindowActor *actor)
{
meta_plugin_maximize_completed (wm->plugin, actor);
}
/**
* shell_wm_completed_unmaximize:
* @wm: the ShellWM
* @actor: the MetaWindowActor actor
*
* The plugin must call this when it has completed a window unmaximize effect.
**/
void
shell_wm_completed_unmaximize (ShellWM *wm,
MetaWindowActor *actor)
{
meta_plugin_unmaximize_completed (wm->plugin, actor);
meta_plugin_size_change_completed (wm->plugin, actor);
}
/**
@ -359,25 +330,13 @@ _shell_wm_unminimize (ShellWM *wm,
}
void
_shell_wm_maximize (ShellWM *wm,
_shell_wm_size_change (ShellWM *wm,
MetaWindowActor *actor,
int target_x,
int target_y,
int target_width,
int target_height)
MetaSizeChange which_change,
MetaRectangle *old_frame_rect,
MetaRectangle *old_buffer_rect)
{
g_signal_emit (wm, shell_wm_signals[MAXIMIZE], 0, actor, target_x, target_y, target_width, target_height);
}
void
_shell_wm_unmaximize (ShellWM *wm,
MetaWindowActor *actor,
int target_x,
int target_y,
int target_width,
int target_height)
{
g_signal_emit (wm, shell_wm_signals[UNMAXIMIZE], 0, actor, target_x, target_y, target_width, target_height);
g_signal_emit (wm, shell_wm_signals[SIZE_CHANGE], 0, actor, which_change, old_frame_rect, old_buffer_rect);
}
void

View File

@ -31,9 +31,7 @@ void shell_wm_completed_minimize (ShellWM *wm,
MetaWindowActor *actor);
void shell_wm_completed_unminimize (ShellWM *wm,
MetaWindowActor *actor);
void shell_wm_completed_maximize (ShellWM *wm,
MetaWindowActor *actor);
void shell_wm_completed_unmaximize (ShellWM *wm,
void shell_wm_completed_size_change (ShellWM *wm,
MetaWindowActor *actor);
void shell_wm_completed_map (ShellWM *wm,
MetaWindowActor *actor);

View File

@ -101,7 +101,7 @@ st_bin_allocate (ClutterActor *self,
clutter_actor_set_allocation (self, box, flags);
if (priv->child && CLUTTER_ACTOR_IS_VISIBLE (priv->child))
if (priv->child && clutter_actor_is_visible (priv->child))
{
StThemeNode *theme_node = st_widget_get_theme_node (ST_WIDGET (self));
ClutterActorBox childbox;
@ -128,7 +128,7 @@ st_bin_get_preferred_width (ClutterActor *self,
st_theme_node_adjust_for_height (theme_node, &for_height);
if (priv->child == NULL || !CLUTTER_ACTOR_IS_VISIBLE (priv->child))
if (priv->child == NULL || !clutter_actor_is_visible (priv->child))
{
if (min_width_p)
*min_width_p = 0;
@ -157,7 +157,7 @@ st_bin_get_preferred_height (ClutterActor *self,
st_theme_node_adjust_for_width (theme_node, &for_width);
if (priv->child == NULL || !CLUTTER_ACTOR_IS_VISIBLE (priv->child))
if (priv->child == NULL || !clutter_actor_is_visible (priv->child))
{
if (min_height_p)
*min_height_p = 0;
@ -209,7 +209,7 @@ st_bin_navigate_focus (StWidget *widget,
if (from && clutter_actor_contains (bin_actor, from))
return FALSE;
if (CLUTTER_ACTOR_IS_MAPPED (bin_actor))
if (clutter_actor_is_mapped (bin_actor))
{
clutter_actor_grab_key_focus (bin_actor);
return TRUE;

View File

@ -304,7 +304,7 @@ st_entry_navigate_focus (StWidget *widget,
if (from == priv->entry)
return FALSE;
else if (st_widget_get_can_focus (widget) &&
CLUTTER_ACTOR_IS_MAPPED (priv->entry))
clutter_actor_is_mapped (priv->entry))
{
clutter_actor_grab_key_focus (priv->entry);
return TRUE;
@ -618,7 +618,7 @@ st_entry_key_press_event (ClutterActor *actor,
/* copy */
if ((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_c &&
&& event->keyval == CLUTTER_KEY_c &&
clutter_text_get_password_char ((ClutterText*) priv->entry) == 0)
{
StClipboard *clipboard;
@ -639,7 +639,7 @@ st_entry_key_press_event (ClutterActor *actor,
/* cut */
if ((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_x &&
&& event->keyval == CLUTTER_KEY_x &&
clutter_text_get_password_char ((ClutterText*) priv->entry) == 0)
{
StClipboard *clipboard;
@ -665,7 +665,7 @@ st_entry_key_press_event (ClutterActor *actor,
/* delete to beginning of line */
if ((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_u)
&& event->keyval == CLUTTER_KEY_u)
{
int pos = clutter_text_get_cursor_position ((ClutterText *)priv->entry);
clutter_text_delete_text ((ClutterText *)priv->entry, 0, pos);
@ -676,7 +676,7 @@ st_entry_key_press_event (ClutterActor *actor,
/* delete to end of line */
if ((event->modifier_state & CLUTTER_CONTROL_MASK)
&& event->keyval == CLUTTER_k)
&& event->keyval == CLUTTER_KEY_k)
{
ClutterTextBuffer *buffer = clutter_text_get_buffer ((ClutterText *)priv->entry);
int pos = clutter_text_get_cursor_position ((ClutterText *)priv->entry);

View File

@ -845,7 +845,7 @@ st_scroll_bar_notify_reactive (StScrollBar *self)
{
StScrollBarPrivate *priv = self->priv;
gboolean reactive = CLUTTER_ACTOR_IS_REACTIVE (self);
gboolean reactive = clutter_actor_get_reactive (CLUTTER_ACTOR (self));
clutter_actor_set_reactive (CLUTTER_ACTOR (priv->trough), reactive);
clutter_actor_set_reactive (CLUTTER_ACTOR (priv->handle), reactive);

View File

@ -313,7 +313,7 @@ get_scrollbar_width (StScrollView *scroll,
{
StScrollViewPrivate *priv = scroll->priv;
if (CLUTTER_ACTOR_IS_VISIBLE (priv->vscroll))
if (clutter_actor_is_visible (priv->vscroll))
{
gfloat min_size;
@ -331,7 +331,7 @@ get_scrollbar_height (StScrollView *scroll,
{
StScrollViewPrivate *priv = scroll->priv;
if (CLUTTER_ACTOR_IS_VISIBLE (priv->hscroll))
if (clutter_actor_is_visible (priv->hscroll))
{
gfloat min_size;

View File

@ -315,7 +315,7 @@ st_widget_texture_cache_changed (StTextureCache *cache,
*/
st_theme_node_paint_state_invalidate (current_paint_state (actor));
if (CLUTTER_ACTOR_IS_MAPPED (CLUTTER_ACTOR (actor)))
if (clutter_actor_is_mapped (CLUTTER_ACTOR (actor)))
clutter_actor_queue_redraw (CLUTTER_ACTOR (actor));
}
}
@ -537,7 +537,7 @@ st_widget_style_changed (StWidget *widget)
}
/* update the style only if we are mapped */
if (CLUTTER_ACTOR_IS_MAPPED (CLUTTER_ACTOR (widget)))
if (clutter_actor_is_mapped (CLUTTER_ACTOR (widget)))
st_widget_recompute_style (widget, old_theme_node);
if (old_theme_node)
@ -794,7 +794,7 @@ st_widget_get_paint_volume (ClutterActor *self,
{
const ClutterPaintVolume *child_volume;
if (!CLUTTER_ACTOR_IS_VISIBLE (child))
if (!clutter_actor_is_visible (child))
continue;
child_volume = clutter_actor_get_transformed_paint_volume (child, self);
@ -1926,7 +1926,7 @@ st_widget_real_navigate_focus (StWidget *widget,
{
if (!focus_child)
{
if (CLUTTER_ACTOR_IS_MAPPED (widget_actor))
if (clutter_actor_is_mapped (widget_actor))
{
/* Accept focus from outside */
clutter_actor_grab_key_focus (widget_actor);
@ -2847,7 +2847,7 @@ check_labels (StWidgetAccessible *widget_accessible,
*
* Gets a list of the focusable children of @widget, in "Tab"
* order. By default, this returns all visible
* (as in CLUTTER_ACTOR_IS_VISIBLE()) children of @widget.
* (as in clutter_actor_is_visible()) children of @widget.
*
* Returns: (element-type Clutter.Actor) (transfer container):
* @widget's focusable children

View File

@ -26,7 +26,6 @@ TEST_JS = \
testcommon/border-image.png \
testcommon/face-plain.png \
testcommon/ui.js \
unit/format.js \
unit/insertSorted.js \
unit/markup.js \
unit/jsParse.js \

View File

@ -1,36 +0,0 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
/*
* Test cases for the Format module
*/
const JsUnit = imports.jsUnit;
const assertEquals = JsUnit.assertEquals;
const assertRaises = JsUnit.assertRaises;
// We can't depend on environment.js to set up the String.prototype.format,
// because the tests run in one JS context, and the imports run in the GJS
// "load context" which has its own copy of the String class
const Format = imports.misc.format;
String.prototype.format = Format.format;
// Test common usage and %% handling
assertEquals("foo", "%s".format('foo'));
assertEquals("%s", "%%s".format('foo'));
assertEquals("%%s", "%%%%s".format('foo'));
assertEquals("foo 5", "%s %d".format('foo', 5));
assertEquals("8", "%d".format(8));
assertEquals("f", "%x".format(15));
assertEquals("2.58 6.96", "%f %.2f".format(2.58, 6.958));
// Test field width
assertEquals("007 foo", "%03d %4s".format(7, 'foo'));
assertEquals(" 2.58 06.96", "%5f %05.2f".format(2.58, 6.958));
assertEquals("cafe", "%2x".format(0xcafe));
assertEquals("foo", "%0s".format('foo'));
// Precision is only allowed for %f
assertRaises(function() { "%.2d".format(5.21) });
// Wrong conversion character ' '
assertRaises( function() { "%s is 50% done".format('foo') });

View File

@ -1,6 +1,6 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
// Test cases for MessageTray markup parsing
// Test cases for Calendar markup parsing
const JsUnit = imports.jsUnit;
const Pango = imports.gi.Pango;
@ -8,7 +8,7 @@ const Pango = imports.gi.Pango;
const Environment = imports.ui.environment;
Environment.init();
const MessageTray = imports.ui.messageTray;
const Calendar = imports.ui.calendar;
// Assert that @input, assumed to be markup, gets "fixed" to @output,
// which is valid markup. If @output is null, @input is expected to
@ -16,7 +16,7 @@ const MessageTray = imports.ui.messageTray;
function assertConverts(input, output) {
if (!output)
output = input;
let fixed = MessageTray._fixMarkup(input, true);
let fixed = Calendar._fixMarkup(input, true);
JsUnit.assertEquals(output, fixed);
let parsed = false;
@ -30,7 +30,7 @@ function assertConverts(input, output) {
// Assert that @input, assumed to be plain text, gets escaped to @output,
// which is valid markup.
function assertEscapes(input, output) {
let fixed = MessageTray._fixMarkup(input, false);
let fixed = Calendar._fixMarkup(input, false);
JsUnit.assertEquals(output, fixed);
let parsed = false;