Compare commits

..

119 Commits

Author SHA1 Message Date
45797a977b app-system: Add back StartupWMClass matching
While unfortunate that we still have to scan all apps with get_all(),
support for this feature will be short-lived, so hopefully we can drop
it in the future as new apps adapt to the desktop file / app ID
recommendations.

For now, simply scan all desktop IDs.
2013-10-02 18:22:28 -04:00
884b94233e app-system: Put back support for the installed-changed signal
Use the new GAppInfoMonitor that Ryan added to glib to know when the
set of apps has changed.
2013-10-02 18:22:27 -04:00
74d3e3139f app-system: Lazily create ShellApps for apps we care about
Rather than create all ShellApps up-front, create them lazily. We really
had no reason to do this before as we were scanning GMenu to get all the
apps, but doing this can remove a need for get_all, which is slow and
memory-hungry.
2013-10-02 18:22:27 -04:00
77b5385cc3 appDisplay: Use the desktop file index for app searching
Rather than scanning all apps for searching, use Ryan's new desktop
file index and the glib support APIs for app searching instead of our
own system.
2013-10-02 18:22:27 -04:00
d749d646be appDisplay: Use a proper string key for the app search provider
We were always sort of cheating when we used objects as the search ID.
Since the new desktop file index will return us a list of desktop file
IDs, just use those as IDs instead.
2013-10-02 18:22:27 -04:00
fa8224d7b5 app-system: Remove use of gnome-menus internally
We want to transition to a system in the future where we have a desktop
file cache. As we no longer differentiate categories or similar, it no
longer makes sense to have app visibility based on categories. Thus,
we no longer need to use gnome-menus to list all apps. The potential
issue here is reloading all desktop files when new files are created,
but this can be dealt with individually.

The "All Applications" view still uses gnome-menus.

https://bugzilla.gnome.org/show_bug.cgi?id=698486
2013-10-02 18:22:27 -04:00
f687197ccc appDisplay: Ignore the NoDisplay flag for directories
This makes us match the native app search.

https://bugzilla.gnome.org/show_bug.cgi?id=698486
2013-10-02 18:22:15 -04:00
28a6aefb6c app-system: Remove visible_id_to_app
Since appDisplay.js makes its own GMenu tree, it's not necessary
anymore. This does mean that searches will show apps in NoDisplay
categories, but that's an obscure enough edge case not to matter.

https://bugzilla.gnome.org/show_bug.cgi?id=698486
2013-10-02 18:22:15 -04:00
96c2a90e11 app-system: Remove lookup_app_for_path
It's absurdly silly. Just modify the one place that uses it
to be better.

https://bugzilla.gnome.org/show_bug.cgi?id=698486
2013-10-02 18:22:15 -04:00
63cf46e49b app-system: Remove known_vendor_prefixes
This does remove support for legacy prefixed app infos with
subdirs, but since we want to remove support for the menu spec,
let's not even bother.

https://bugzilla.gnome.org/show_bug.cgi?id=698486
2013-10-02 18:22:15 -04:00
200a9ef1af app-system: Remove get_tree
Make clients construct their own gmenu tree if they need it.

https://bugzilla.gnome.org/show_bug.cgi?id=698486
2013-10-02 18:22:08 -04:00
6050ca6e0c app-system: Map wmclass to ID rather than apps
This makes the refcounting and memory management easier to understand.
2013-10-02 18:22:08 -04:00
8bd7db9227 app-system: Don't use gmenu_tree_entry_get_desktop_app_info
It's a broken method when it comes to giving us a useful GDesktopAppInfo,
and it's hard to fix libgmenu properly, so simply recreate the app info
using the desktop file ID that libgmenu has.
2013-10-02 18:22:07 -04:00
982feb85c1 app: Port to be based on GDesktopAppInfo
We weren't using the GMenuTreeEntry for anything special anymore,
so remove it.

https://bugzilla.gnome.org/show_bug.cgi?id=698486
2013-10-02 18:14:18 -04:00
f165cc23c0 app-system: Remove lookup_app_by_tree_entry
We want to move away from gnome-menus eventually, so the simple
utility method isn't really worth keeping around. Reimplement it
in the one place that uses it.

https://bugzilla.gnome.org/show_bug.cgi?id=698486
2013-10-02 17:39:36 -04:00
8737b06559 loginDialog: MessageType is now in GdmUtil
https://bugzilla.gnome.org/show_bug.cgi?id=709286
2013-10-02 13:58:09 -04:00
15ab285174 layout: Use monitor index when adding bg managers
Don't assume that this._bgManagers.push() (i.e adding to the end) is always
correct.

On startup we call _createPrimaryBackground which passes in the primary index
which may not be 0.
2013-10-02 15:58:22 +02:00
3a4782cc64 app-system: Fix some enum warnings
https://bugzilla.gnome.org/show_bug.cgi?id=698486
2013-10-02 09:49:03 -04:00
0256a6d47b app: Use g_variant_lookup instead of dict iteration 2013-10-02 09:49:02 -04:00
8b0e846e0e background: Disconnect settings signal handler on destroy
We connect to the changed signal in _init() but never actually disconnect from
it. The callback has a reference to "this" which results into the background
object not getting garbage collected.

Fix that leaks by disconnecting in _destroy()

https://bugzilla.gnome.org/show_bug.cgi?id=709263
2013-10-02 15:43:30 +02:00
41acb5d3cc Updated Czech translation 2013-10-02 09:56:45 +02:00
a2f9b8ea9b workspacesView: Remove dead code 2013-10-01 18:41:26 -04:00
6237a1c505 workspace: Remove unused leftover constant
from the window zooming days
2013-10-01 18:41:26 -04:00
7c08db0b0f [l10n] Updated Italian translation. 2013-10-01 19:22:11 +02:00
df1270ac49 Updated Danish translation 2013-10-01 19:10:05 +02:00
46edc053d4 overview: Add cover pane directly to overviewGroup
The cover pane is used to block events during transitions, but as
workspaces don't share the same container as other overview elements,
they are currently excempt from the event blocking.
Move the cover pane to the top-level overview container instead.

https://bugzilla.gnome.org/show_bug.cgi?id=709034
2013-10-01 17:16:51 +02:00
908046c31a [l10n] Updated Estonian translation 2013-10-01 17:14:01 +03:00
8380c79875 network: Update the network indicator when the VPN state changes 2013-10-01 10:25:46 -04:00
8a4879a96a Updated Traditional Chinese translation(Hong Kong and Taiwan) 2013-09-30 19:40:48 +08:00
cdf1a77f08 Updated Spanish translation 2013-09-30 12:00:58 +02:00
3f9857ccbd Assamese translation updated 2013-09-30 13:32:07 +05:30
1d65a31420 Updated Lithuanian translation 2013-09-29 20:33:17 +03:00
dafdf0838a Updated Slovak translation 2013-09-29 17:41:47 +01:00
f9cf135f68 update Punjabi Translaiton 2013-09-29 05:26:34 -05:00
a1878e54c9 Updated Norwegian bokmål translation 2013-09-29 11:29:08 +02:00
95e5d899a9 Updated Basque language 2013-09-29 10:53:34 +02:00
ee8321df67 Updated Slovenian translation 2013-09-28 21:49:04 +02:00
4918213e68 Tajik translation updated 2013-09-28 19:39:12 +05:00
ed7f349fc6 Updated Galician translations 2013-09-28 16:25:15 +02:00
2888f22a24 Updated Norwegian bokmål translation 2013-09-28 14:53:19 +02:00
fcb217f681 Updated Brazilian Portuguese translation 2013-09-28 05:16:53 -03:00
9ffa9fe1a8 Updated Galician translations 2013-09-27 21:38:08 +02:00
905020c507 Updated Slovak translation 2013-09-27 17:40:35 +01:00
02f5500641 theme: Make indicators checked&active like checked 2013-09-27 17:06:26 +02:00
465af55d6e theme: Add hover/active states to indicators
Until now we had the same svg for hover, active and checked
states in the pagination indicators. Just differentiate between
them using differents svg.

svg files provided by Jakub Steiner

https://bugzilla.gnome.org/show_bug.cgi?id=708852
2013-09-27 15:50:28 +02:00
80a3bb85aa overview: Ignore dragEnd while the animation is still in progress
Moving the mouse fast enough during xdnd will trigger a xdnd-leave event
because the input shape is not updated until after the animation is done.

So simply ignore the leave events while the animation is in progress.

https://bugzilla.gnome.org/show_bug.cgi?id=708887
2013-09-27 12:54:22 +02:00
ea26bd3003 Updated Latvian translation 2013-09-26 23:30:59 +03:00
508a511d2a Revert "overviewControls: Don't allow appearing controls to "pop in""
This reverts commit e31693bbee.

This doesn't properly adjust the allocation, leading to an unbalanced
overview where things aren't centered properly. Just revert for now,
and we'll rethink this next cycle.
2013-09-26 16:20:06 -04:00
2d80cb71db searchDisplay: Scroll results when the user focuses a provider icon
Otherwise, it seems odd to highlight results the user can't see
simply by pressing down a lot.

https://bugzilla.gnome.org/show_bug.cgi?id=708868
2013-09-26 15:17:29 -04:00
e31693bbee overviewControls: Don't allow appearing controls to "pop in"
When coming back from search or apps, the workspace thumbnails and dash
don't slide in but "pop in". This is because of bad timing: when slideIn
is called, we immediately start the translation animation, and it
completes before by the time we fade the new page in.

Fix this by calling slideIn and slideOut at two different times: we now
slide out when the old page with our controls is fading out, and slide in
when the new page with our controls is fading in.

https://bugzilla.gnome.org/show_bug.cgi?id=708340
2013-09-26 13:39:20 -04:00
fb561f10a7 network: Make sure to set the signal icon at dialog item construction time
We forgot to set it here; it would be updated if there was changes in the
signal, but not when it was created.

https://bugzilla.gnome.org/show_bug.cgi?id=708442
2013-09-26 11:06:42 -04:00
0c57d53e03 Update Esperanto translation 2013-09-26 09:09:37 -04:00
3b1b9f589b SystemMenu: wait for a completed paint before switching VT
Activating the GDM login screen switches VT and causes X to freeze
event processing (because it lost the drm master), so must make
sure to have painted the lock screen at least once before proceeding,
or the user can go back and see the unlocked desktop.

https://bugzilla.gnome.org/show_bug.cgi?id=708051
2013-09-26 10:46:42 +02:00
ac8d39acf4 Updated Lithuanian translation 2013-09-25 23:22:27 +03:00
664e795217 [l10n]Updated Turkish translation 2013-09-25 21:16:28 +03:00
82bf323f63 Updated German translation 2013-09-25 15:25:31 +02:00
547ac85113 Updated Basque language 2013-09-25 11:17:01 +02:00
46e0e4430d Bump version to 3.10.0.1
Update NEWS.
2013-09-24 16:04:57 -04:00
609a31ea46 loginManager: fix versionCompare function
It's important to compare the version components as integers,
not strings, so "10" evaulates as greater than "5"

This fixes the login screen in gnome 3.10.

https://bugzilla.gnome.org/show_bug.cgi?id=708691
2013-09-24 14:22:09 -04:00
3e99eb10d1 Updated Norwegian bokmål translation 2013-09-24 19:38:41 +02:00
b9d935af0c ActivitiesButton: close the dummy menu when activating the button
We need to close the menu to make sure that any grabs held by
the PopupMenuManager are released, and events are properly delivered.

https://bugzilla.gnome.org/show_bug.cgi?id=707852
2013-09-24 16:28:31 +02:00
31d3e82aa8 Updated Czech translation 2013-09-24 16:10:40 +02:00
dfdc17197b Punjabi Translation updated by Aman 2013-09-24 07:54:25 -05:00
62b965b4b7 Updated Spanish translation 2013-09-24 14:39:14 +02:00
ba221abea5 Updated Belarusian translation. 2013-09-24 15:03:09 +03:00
aa026c7134 Updated Traditional Chinese translation(Hong Kong and Taiwan) 2013-09-24 19:13:45 +08:00
496cfff97a Assamese translation updated 2013-09-24 14:25:28 +05:30
ccaa7f5f3e Updated Russian translation 2013-09-24 12:18:45 +04:00
f492d21c70 Update Kazakh translation 2013-09-24 06:37:02 +06:00
1983541f8c Bump version to 3.10.0
Update NEWS.
2013-09-23 23:33:14 +02:00
e4cb3672b9 Updated Galician translations 2013-09-23 22:24:36 +02:00
a06a78a9c1 aggregate-menu: Increase width
Add 20px more width to make longer strings (translations) fit better.

https://bugzilla.gnome.org/show_bug.cgi?id=708472
2013-09-23 22:23:46 +02:00
2ba91ad837 Updated Slovenian translation 2013-09-23 21:18:03 +02:00
66eb3ea723 Updated Polish translation 2013-09-23 20:38:24 +02:00
d30e992b20 Updated Polish translation 2013-09-23 20:35:58 +02:00
c6a342563f Updated Danish translation 2013-09-23 19:43:15 +02:00
fd584eda05 l10n: Update Japanese translation 2013-09-24 00:01:51 +09:00
4301506590 Updated Hebrew translation
Signed-off-by: Yosef Or Boczko <yoseforb@gmail.com>
2013-09-23 17:59:51 +03:00
88f7c3a970 Updated Indonesian translation 2013-09-23 21:25:49 +07:00
f21a9f0cc2 [l10n] Updated Italian translation. 2013-09-23 16:21:33 +02:00
2233c2e618 Updated Brazilian Portuguese translation 2013-09-23 10:56:43 -03:00
6264419bd4 Update French translation 2013-09-23 15:48:18 +02:00
b62effb8fa add missing translation markers around string in schema 2013-09-23 15:35:06 +02:00
c8a07dd612 messageTray: Fix condition for adding the tray to CtrlAltTab
With the current condition, we wrongly add the message tray to
CtrlAltTab if we start up locked or as greeter.

https://bugzilla.gnome.org/show_bug.cgi?id=708380
2013-09-23 13:32:17 +02:00
02c99e4b25 authPrompt: Clear _queryingService on verification failure
A conversation is finished after failing, and we are expecting a new
one to be started shortly after. However if we encounter an existing
reference to a previously set _queryingService, we will clear the
password entry, which might already contain a partially typed password
at that point. The behavior does make sense in the case of conflicting
conversations, but in the failure case it is both unexpected and
annoying, so clear _queryingService early to prevent this.

https://bugzilla.gnome.org/show_bug.cgi?id=708186
2013-09-23 13:32:17 +02:00
1242a16265 keyring: Don't unregister the prompt when disabled
gnome-keyring provides a fallback in case our builtin prompt fails
to register, so keyring dialogs may still pop up even when they
are supposed to be disabled.
Instead, keep the prompt registered but cancel requests immediately
while disabled.

https://bugzilla.gnome.org/show_bug.cgi?id=708187
2013-09-23 13:32:17 +02:00
a89fd17b8e shell: Make KeyringPrompt.cancel() callable from signal handlers
gcr/gnome-keyring don't handle the case where prompt_password_async()/
prompt_confirm_async() return their result from within the function
very well (or rather: break badly). Calling gcr_prompt_close() instead
is safe, but to avoid these kind of errors in the future, modify
shell_keyring_prompt_cancel() to work as expected in this case.

https://bugzilla.gnome.org/show_bug.cgi?id=708187
2013-09-23 13:32:17 +02:00
3d5e7bd6f1 Updated Indonesian translation 2013-09-23 09:40:56 +07:00
cefcb89487 Updated Portuguese translation 2013-09-22 23:50:24 +01:00
005272bde9 bluetooth: Actually add the menu item to the bluetooth menu
https://bugzilla.gnome.org/show_bug.cgi?id=708541
2013-09-22 22:22:49 +02:00
491e60e4f2 Updated Galician translations 2013-09-22 19:49:52 +02:00
e5f72fd302 Updated Hebrew translation 2013-09-22 13:58:19 +03:00
5f21b100b8 Updated Ukrainian 2013-09-22 11:28:53 +03:00
1a4c7629c5 Translate 'suspend' as 'pauzestand' for consistency 2013-09-21 23:27:43 +02:00
d21734ee47 Updated Dutch translation 2013-09-21 23:04:37 +02:00
e140e2c367 Updated Latvian translatio 2013-09-21 21:53:36 +03:00
7ced1f5b54 focusCaretTracker: Lower AT-SPI's timeout values
Have AT-SPI calls time out after 250ms, to mitigate the effect of a
deadlock when querying another application that is trying to query
gnome-shell.

https://bugzilla.gnome.org/show_bug.cgi?id=708387
2013-09-21 04:51:42 -05:00
54b028ee3e Updated Ukrainian 2013-09-21 11:42:12 +03:00
703336e1ea Updated Esperanto translation 2013-09-21 09:54:37 +02:00
9e936252ae Updated Polish translation 2013-09-20 17:44:36 +02:00
fc71a0f081 Updated Polish translation 2013-09-20 17:29:48 +02:00
86c72fa15d Updated Traditional Chinese translation(Hong Kong and Taiwan) 2013-09-20 13:43:49 +08:00
6ba5af1e9e Updated Romanian Translation 2013-09-19 21:54:35 +02:00
33a4f59cfb popupMenu: Center the labels in submenu items
https://bugzilla.gnome.org/show_bug.cgi?id=708330
2013-09-19 12:40:43 -04:00
39134f0d9b networkAgent: Don't allow ellipsization of Password label
We don't want password entries to grow when entering more characters
that fit the available width; as labels' ClutterText ellipsizes by
default, the password labels allow entries to grow by shrinking.
Setting the appropriate ellipsize mode fixes this.

https://bugzilla.gnome.org/show_bug.cgi?id=708324
2013-09-19 07:53:57 +02:00
30e7440851 keyring: Don't allow ellipsization of Password label
We don't want the password entry to grow when entering more characters
that fit the available width; as labels' ClutterText ellipsizes by
default, the password label allows the entry to grow by shrinking.
Setting the appropriate ellipsize mode fixes this.

https://bugzilla.gnome.org/show_bug.cgi?id=708324
2013-09-19 07:53:57 +02:00
be1a7bac7c networkAgent: Port to ClutterTableLayout
We don't make use of any functionality StTable provides over
ClutterTableLayout, so port all users to the Clutter layout
in order to remove our own copy of the code.

https://bugzilla.gnome.org/show_bug.cgi?id=703833
2013-09-19 07:53:57 +02:00
fb52a93a28 keyring: Port to ClutterTableLayout
We don't make use of any functionality StTable provides over
ClutterTableLayout, so port all users to the Clutter layout
in order to remove our own copy of the code.

https://bugzilla.gnome.org/show_bug.cgi?id=703833
2013-09-19 07:53:56 +02:00
efdf1ff755 main: Close runDialog as necessary on session mode changes
We already do this for looking glass, but it makes even less sense
for the normal run dialog - if a mode sets runDialog to false, the
intention is to not allow executing aribitrary commands.

https://bugzilla.gnome.org/show_bug.cgi?id=708218
2013-09-19 07:53:56 +02:00
2c00dad211 network: Make sure to resync when the activating connection changes
Otherwise, we may be left with a stale activating connection if a
connection is activating, but doesn't fully activate for whatever
reason.

https://bugzilla.gnome.org/show_bug.cgi?id=708322
2013-09-18 17:15:01 -04:00
c23786c73e St: Fix fade effect
Commit 4095a58eb9 introduced a
regression, since we have to take into account four cases,
top, bottom, right, and left, and that can't be merged into
two like that commit did.
So fix it to make fade effect works again.

https://bugzilla.gnome.org/show_bug.cgi?id=708256
2013-09-18 20:01:49 +02:00
7f1b07b76f Revert "Background: Drop "saturation" related source"
This reverts commit 2f35ad6e65.
2013-09-18 13:54:54 +02:00
2f35ad6e65 Background: Drop "saturation" related source
"saturation" was removed from MetaBackground in mutter with
https://git.gnome.org/browse/mutter/commit/?id=0e589061
2013-09-18 13:49:35 +02:00
159c7d34c7 l10n: Update Japanese translation 2013-09-18 20:41:47 +09:00
fe8e990ed7 Punjabi Translation updated by Aman 2013-09-17 22:08:46 -05:00
1fb9b18cb6 Updated Belarusian translation. 2013-09-17 22:46:22 +03:00
5c2586127b Update gvc
A translator accidentally undid this.
2013-09-17 11:54:44 -04:00
661b266b45 Updated Esperanto translation
Reviewed by Ken Price
2013-09-17 10:11:50 -04:00
98af044196 Updated Romanian Translation 2013-09-17 09:55:18 +02:00
73 changed files with 10110 additions and 11790 deletions

39
NEWS
View File

@ -1,3 +1,42 @@
3.10.0.1
=========
* Fix login screen [Ray; #708691]
Contributors:
Ray Strode, Giovanni Campagna, Jasper St. Pierree
Translations:
Kjartan Maraas [nb], Marek Černocký [cs], A S Alam [pa], Daniel Mustieles [es],
Ihar Hrachyshka [be], Chao-Hsiung Liao [zh_HK], Nilamdyuti Goswami [as],
Yuri Myasoedov [ru], Baurzhan Muftakhidinov [kk]
3.10.0
======
* Fix fade effect in ScrollViews [Carlos; #708256]
* network: Resync when activating connection changes [Jasper; #708322]
* Close run dialog when the screen locks [Florian; #708218]
* Fix entry growing out of password dialogs [Florian; #708324, #703833]
* Vertically center labels in submenu items [Jasper; #708330]
* https://bugzilla.gnome.org/show_bug.cgi?id=708387 [Mike; #708387]
* Fix bluetooth icon not being added to status menu [Jasper; #708541]
* Fix GNOME 2 keyring dialogs appearing on lock screen [Florian; #708187]
* Fix passwords being cleared twice when authentication fails [Florian; #708186]
* Fix message tray appearing in a11y popup on login screen [Florian; #708380]
* Increase width of aggregate menu popup [Adel; #708472]
Contributors:
Adel Gadllah, Mike Gorse, Ryan Lortie, Florian Müllner, Frédéric Péters,
Carlos Soriano, Jasper St. Pierre, Rico Tzschichholz
Translations:
Daniel Șerbănescu [ro], Ryan Lortie [eo], Ihar Hrachyshka [be],
A S Alam [pa], Jiro Matsuzawa [ja], Chao-Hsiung Liao [zh_HK, zh_TW],
Piotr Drąg [pl], Kristjan SCHMIDT [eo], Daniel Korostil [uk],
Rūdolfs Mazurs [lv], Reinout van Schouwen [nl], Yosef Or Boczko [he],
Fran Diéguez [gl], António Lima [pt], Andika Triwidada [id],
Alexandre Franke [fr], Rafael Ferreira [pt_BR], Milo Casagrande [it],
Kenneth Nielsen [da], Matej Urbančič [sl]
3.9.92
======
* Don't show page indicators if there's only one page [Florian; #707363]

View File

@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.9.92],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[3.10.0.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_SRCDIR([src/shell-global.c])
@ -60,7 +60,7 @@ AM_CONDITIONAL(BUILD_RECORDER, $build_recorder)
CLUTTER_MIN_VERSION=1.13.4
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
GJS_MIN_VERSION=1.35.4
MUTTER_MIN_VERSION=3.9.92
MUTTER_MIN_VERSION=3.10.0
GTK_MIN_VERSION=3.7.9
GIO_MIN_VERSION=2.37.0
LIBECAL_MIN_VERSION=3.5.3
@ -70,7 +70,6 @@ POLKIT_MIN_VERSION=0.100
STARTUP_NOTIFICATION_MIN_VERSION=0.11
GCR_MIN_VERSION=3.7.5
GNOME_DESKTOP_REQUIRED_VERSION=3.7.90
GNOME_MENUS_REQUIRED_VERSION=3.5.3
NETWORKMANAGER_MIN_VERSION=0.9.8
PULSE_MIN_VERS=2.0
@ -80,7 +79,6 @@ SHARED_PCS="gio-unix-2.0 >= $GIO_MIN_VERSION
gtk+-3.0 >= $GTK_MIN_VERSION
atk-bridge-2.0
gjs-internals-1.0 >= $GJS_MIN_VERSION
libgnome-menu-3.0 >= $GNOME_MENUS_REQUIRED_VERSION
$recorder_modules
gdk-x11-3.0 libsoup-2.4
xtst

View File

@ -45,8 +45,10 @@ dist_theme_DATA = \
theme/message-tray-background.png \
theme/more-results.svg \
theme/noise-texture.png \
theme/page-indicator-active.svg \
theme/page-indicator-active.svg \
theme/page-indicator-inactive.svg \
theme/page-indicator-checked.svg \
theme/page-indicator-hover.svg \
theme/panel-button-border.svg \
theme/panel-button-highlight-narrow.svg \
theme/panel-button-highlight-wide.svg \

View File

@ -216,10 +216,10 @@
<key name="focus-change-on-pointer-rest" type="b">
<default>true</default>
<summary>Delay focus changes in mouse mode until the pointer stops moving</summary>
<description>
<_summary>Delay focus changes in mouse mode until the pointer stops moving</_summary>
<_description>
This key overrides the key in org.gnome.mutter when running GNOME Shell.
</description>
</_description>
</key>
</schema>
</schemalist>

View File

@ -642,7 +642,7 @@ StScrollBar StButton#vhandle:active {
}
.aggregate-menu {
width: 340px;
width: 360px;
}
.aggregate-menu .popup-menu-icon {
@ -950,11 +950,19 @@ StScrollBar StButton#vhandle:active {
background-image: url(page-indicator-inactive.svg);
}
.page-indicator:hover .page-indicator-icon,
.page-indicator:checked .page-indicator-icon {
.page-indicator:hover .page-indicator-icon {
background-image: url(page-indicator-hover.svg);
}
.page-indicator:active .page-indicator-icon {
background-image: url(page-indicator-active.svg);
}
.page-indicator:checked .page-indicator-icon,
.page-indicator:checked:active .page-indicator-icon {
background-image: url(page-indicator-checked.svg);
}
.no-frequent-applications-label {
font-size: 18pt;
color: #999999;

View File

@ -14,7 +14,7 @@
id="svg4703"
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="page-indicator-active.svg">
sodipodi:docname="page-indicator-pushed.svg">
<defs
id="defs4705" />
<sodipodi:namedview
@ -24,18 +24,22 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="22.197802"
inkscape:cx="2.1522887"
inkscape:cy="16.782904"
inkscape:zoom="31.392433"
inkscape:cx="1.0245308"
inkscape:cy="13.3715"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1920"
inkscape:window-height="1021"
inkscape:window-width="2560"
inkscape:window-height="1374"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1" />
inkscape:window-maximized="1">
<inkscape:grid
type="xygrid"
id="grid6140" />
</sodipodi:namedview>
<metadata
id="metadata4708">
<rdf:RDF>
@ -44,7 +48,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@ -54,14 +58,14 @@
inkscape:groupmode="layer"
transform="translate(0,2)">
<path
transform="matrix(0.72823872,0,0,0.8336417,-1512.2872,-525.55618)"
d="m 2099.9808,638.83099 c 0,5.29998 -4.9184,9.59645 -10.9854,9.59645 -6.0671,0 -10.9854,-4.29647 -10.9854,-9.59645 0,-5.29997 4.9183,-9.59645 10.9854,-9.59645 6.067,0 10.9854,4.29648 10.9854,9.59645 z"
transform="matrix(0.54617904,0,0,0.62523128,-1131.9904,-392.39214)"
d="m 2099.9808,638.83099 a 10.985409,9.5964489 0 1 1 -21.9708,0 10.985409,9.5964489 0 1 1 21.9708,0 z"
sodipodi:ry="9.5964489"
sodipodi:rx="10.985409"
sodipodi:cy="638.83099"
sodipodi:cx="2088.9954"
id="path4711"
style="fill:#fdffff;fill-opacity:0.94117647;stroke:none"
style="fill:#fdffff;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="18"
height="18"
id="svg4703"
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="page-indicator-active.svg">
<defs
id="defs4705" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="22.197802"
inkscape:cx="2.1522887"
inkscape:cy="16.782904"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1920"
inkscape:window-height="1021"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1" />
<metadata
id="metadata4708">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
transform="translate(0,2)">
<path
transform="matrix(0.72823872,0,0,0.8336417,-1512.2872,-525.55618)"
d="m 2099.9808,638.83099 c 0,5.29998 -4.9184,9.59645 -10.9854,9.59645 -6.0671,0 -10.9854,-4.29647 -10.9854,-9.59645 0,-5.29997 4.9183,-9.59645 10.9854,-9.59645 6.067,0 10.9854,4.29648 10.9854,9.59645 z"
sodipodi:ry="9.5964489"
sodipodi:rx="10.985409"
sodipodi:cy="638.83099"
sodipodi:cx="2088.9954"
id="path4711"
style="fill:#fdffff;fill-opacity:0.94117647;stroke:none"
sodipodi:type="arc" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="18"
height="18"
id="svg5266"
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="page-indicator-inactive.svg">
<defs
id="defs5268" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:zoom="11.313709"
inkscape:cx="-2.307566"
inkscape:cy="17.859535"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="2560"
inkscape:window-height="1374"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1" />
<metadata
id="metadata5271">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
transform="translate(0,2)">
<path
sodipodi:type="arc"
style="fill:none;fill-opacity:0;stroke:#ffffff;stroke-width:2.93356276000000005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="path5274"
sodipodi:cx="2088.9954"
sodipodi:cy="638.83099"
sodipodi:rx="10.985409"
sodipodi:ry="9.5964489"
d="m 2099.9808,638.83099 c 0,5.29998 -4.9184,9.59645 -10.9854,9.59645 -6.0671,0 -10.9854,-4.29647 -10.9854,-9.59645 0,-5.29997 4.9183,-9.59645 10.9854,-9.59645 6.067,0 10.9854,4.29648 10.9854,9.59645 z"
transform="matrix(0.63720887,0,0,0.72943648,-1322.1264,-458.98661)" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -25,14 +25,14 @@
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:zoom="11.313709"
inkscape:cx="13.381365"
inkscape:cx="-2.307566"
inkscape:cy="17.859535"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1920"
inkscape:window-height="1021"
inkscape:window-width="2560"
inkscape:window-height="1374"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1" />
@ -55,7 +55,7 @@
transform="translate(0,2)">
<path
sodipodi:type="arc"
style="fill:#ffffff;fill-opacity:0;stroke:#ffffff;stroke-width:2.93356276;stroke-miterlimit:4;stroke-opacity:0.39215686;stroke-dasharray:none"
style="fill:none;fill-opacity:0;stroke:#ffffff;stroke-width:2.93356276000000005;stroke-miterlimit:4;stroke-opacity:0.39215686000000000;stroke-dasharray:none"
id="path5274"
sodipodi:cx="2088.9954"
sodipodi:cy="638.83099"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -244,6 +244,7 @@ const AuthPrompt = new Lang.Class({
},
_onVerificationFailed: function() {
this._queryingService = null;
this.clear();
this.updateSensitivity(true);

View File

@ -619,7 +619,7 @@ const LoginDialog = new Lang.Class({
// Translators: this message is shown below the username entry field
// to clue the user in on how to login to the local network realm
this._authPrompt.setMessage(_("(e.g., user or %s)").format(hint), AuthPrompt.MessageType.HINT);
this._authPrompt.setMessage(_("(e.g., user or %s)").format(hint), GdmUtil.MessageType.HINT);
},
_askForUsernameAndBeginVerification: function() {

View File

@ -72,8 +72,10 @@ function versionCompare(required, reference) {
reference = reference.split('.');
for (let i = 0; i < required.length; i++) {
if (required[i] != reference[i])
return required[i] < reference[i];
let requiredInt = parseInt(required[i]);
let referenceInt = parseInt(reference[i]);
if (requiredInt != referenceInt)
return requiredInt < referenceInt;
}
return true;

View File

@ -55,13 +55,13 @@ function _loadCategory(dir, view) {
while ((nextType = iter.next()) != GMenu.TreeItemType.INVALID) {
if (nextType == GMenu.TreeItemType.ENTRY) {
let entry = iter.get_entry();
let app = appSystem.lookup_app_by_tree_entry(entry);
if (!entry.get_app_info().get_nodisplay())
let appInfo = entry.get_app_info();
let app = appSystem.lookup_app(entry.get_desktop_file_id());
if (appInfo.should_show())
view.addApp(app);
} else if (nextType == GMenu.TreeItemType.DIRECTORY) {
let itemDir = iter.get_directory();
if (!itemDir.get_is_nodisplay())
_loadCategory(itemDir, view);
_loadCategory(itemDir, view);
}
}
};
@ -691,8 +691,7 @@ const AppDisplay = new Lang.Class({
Name: 'AppDisplay',
_init: function() {
this._appSystem = Shell.AppSystem.get_default();
this._appSystem.connect('installed-changed', Lang.bind(this, function() {
Shell.AppSystem.get_default().connect('installed-changed', Lang.bind(this, function() {
Main.queueDeferredWork(this._allAppsWorkId);
}));
Main.overview.connect('showing', Lang.bind(this, function() {
@ -808,7 +807,8 @@ const AppDisplay = new Lang.Class({
view.removeAll();
let tree = this._appSystem.get_tree();
let tree = new GMenu.Tree({ menu_basename: "applications.menu" });
tree.load_sync();
let root = tree.get_root_directory();
let iter = root.iter();
@ -817,8 +817,6 @@ const AppDisplay = new Lang.Class({
while ((nextType = iter.next()) != GMenu.TreeItemType.INVALID) {
if (nextType == GMenu.TreeItemType.DIRECTORY) {
let dir = iter.get_directory();
if (dir.get_is_nodisplay())
continue;
if (folderCategories.indexOf(dir.get_menu_id()) != -1)
view.addFolder(dir);
@ -866,8 +864,8 @@ const AppSearchProvider = new Lang.Class({
getResultMetas: function(apps, callback) {
let metas = [];
for (let i = 0; i < apps.length; i++) {
let app = apps[i];
metas.push({ 'id': app,
let app = this._appSys.lookup_app(apps[i]);
metas.push({ 'id': app.get_id(),
'name': app.get_name(),
'createIcon': function(size) {
return app.create_icon_texture(size);
@ -877,15 +875,23 @@ const AppSearchProvider = new Lang.Class({
callback(metas);
},
_compareResults: function(a, b) {
let usage = Shell.AppUsage.get_default();
return usage.compare('', a, b);
},
getInitialResultSet: function(terms) {
this.searchSystem.setResults(this, this._appSys.initial_search(terms));
let query = terms.join(' ');
let results = Gio.DesktopAppInfo.search(query, Lang.bind(this, this._compareResults), MAX_COLUMNS);
this.searchSystem.setResults(this, results);
},
getSubsearchResultSet: function(previousResults, terms) {
this.searchSystem.setResults(this, this._appSys.subsearch(previousResults, terms));
this.getInitialResultSet(terms);
},
activateResult: function(app) {
activateResult: function(result) {
let app = this._appSys.lookup_app(result);
let event = Clutter.get_current_event();
let modifiers = event ? event.get_state() : 0;
let openNewWindow = modifiers & Clutter.ModifierType.CONTROL_MASK;
@ -905,7 +911,7 @@ const AppSearchProvider = new Lang.Class({
},
createResultObject: function (resultMeta, terms) {
let app = resultMeta['id'];
let app = this._appSys.lookup_app(resultMeta['id']);
return new AppIcon(app);
}
});

View File

@ -319,9 +319,9 @@ const Background = new Lang.Class({
this._cancellable = new Gio.Cancellable();
this.isLoaded = false;
this._settings.connect('changed', Lang.bind(this, function() {
this.emit('changed');
}));
this._settingsChangedSignalId = this._settings.connect('changed', Lang.bind(this, function() {
this.emit('changed');
}));
this._load();
},
@ -362,6 +362,10 @@ const Background = new Lang.Class({
this.actor.disconnect(this._destroySignalId);
this._destroySignalId = 0;
if (this._settingsChangedSignalId != 0)
this._settings.disconnect(this._settingsChangedSignalId);
this._settingsChangedSignalId = 0;
},
_setLoaded: function() {

View File

@ -80,23 +80,26 @@ const KeyringDialog = new Lang.Class({
},
_buildControlTable: function() {
let table = new St.Table({ style_class: 'keyring-dialog-control-table' });
let layout = new Clutter.TableLayout();
let table = new St.Widget({ style_class: 'keyring-dialog-control-table',
layout_manager: layout });
layout.hookup_style(table);
let row = 0;
if (this.prompt.password_visible) {
let label = new St.Label(({ style_class: 'prompt-dialog-password-label' }));
let label = new St.Label({ style_class: 'prompt-dialog-password-label' });
label.set_text(_("Password:"));
table.add(label, { row: row, col: 0,
x_expand: false, x_fill: true,
x_align: St.Align.START,
y_fill: false, y_align: St.Align.MIDDLE });
label.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
layout.pack(label, 0, row);
layout.child_set(label, { x_expand: false, y_fill: false,
x_align: Clutter.TableAlignment.START });
this._passwordEntry = new St.Entry({ style_class: 'prompt-dialog-password-entry',
text: '',
can_focus: true});
can_focus: true });
this._passwordEntry.clutter_text.set_password_char('\u25cf'); // ● U+25CF BLACK CIRCLE
ShellEntry.addContextMenu(this._passwordEntry, { isPassword: true });
this._passwordEntry.clutter_text.connect('activate', Lang.bind(this, this._onPasswordActivate));
table.add(this._passwordEntry, { row: row, col: 1, x_expand: true, x_fill: true, x_align: St.Align.START });
layout.pack(this._passwordEntry, 1, row);
row++;
} else {
this._passwordEntry = null;
@ -105,17 +108,16 @@ const KeyringDialog = new Lang.Class({
if (this.prompt.confirm_visible) {
var label = new St.Label(({ style_class: 'prompt-dialog-password-label' }));
label.set_text(_("Type again:"));
table.add(label, { row: row, col: 0,
x_expand: false, x_fill: true,
x_align: St.Align.START,
y_fill: false, y_align: St.Align.MIDDLE });
layout.pack(label, 0, row);
layout.child_set(label, { x_expand: false, y_fill: false,
x_align: Clutter.TableAlignment.START });
this._confirmEntry = new St.Entry({ style_class: 'prompt-dialog-password-entry',
text: '',
can_focus: true});
can_focus: true });
this._confirmEntry.clutter_text.set_password_char('\u25cf'); // ● U+25CF BLACK CIRCLE
ShellEntry.addContextMenu(this._confirmEntry, { isPassword: true });
this._confirmEntry.clutter_text.connect('activate', Lang.bind(this, this._onConfirmActivate));
table.add(this._confirmEntry, { row: row, col: 1, x_expand: true, x_fill: true, x_align: St.Align.START });
layout.pack(this._confirmEntry, 1, row);
row++;
} else {
this._confirmEntry = null;
@ -128,14 +130,14 @@ const KeyringDialog = new Lang.Class({
let choice = new CheckBox.CheckBox();
this.prompt.bind_property('choice-label', choice.getLabelActor(), 'text', GObject.BindingFlags.SYNC_CREATE);
this.prompt.bind_property('choice-chosen', choice.actor, 'checked', GObject.BindingFlags.SYNC_CREATE | GObject.BindingFlags.BIDIRECTIONAL);
table.add(choice.actor, { row: row, col: 1, x_expand: false, x_fill: true, x_align: St.Align.START });
layout.pack(choice.actor, 1, row);
row++;
}
let warning = new St.Label({ style_class: 'prompt-dialog-error-label' });
warning.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
warning.clutter_text.line_wrap = true;
table.add(warning, { row: row, col: 1, x_expand: false, x_fill: false, x_align: St.Align.START });
layout.pack(warning, 1, row);
this.prompt.bind_property('warning-visible', warning, 'visible', GObject.BindingFlags.SYNC_CREATE);
this.prompt.bind_property('warning', warning, 'text', GObject.BindingFlags.SYNC_CREATE);
@ -221,27 +223,50 @@ const KeyringDialog = new Lang.Class({
},
});
const KeyringDummyDialog = new Lang.Class({
Name: 'KeyringDummyDialog',
_init: function() {
this.prompt = new Shell.KeyringPrompt();
this.prompt.connect('show-password',
Lang.bind(this, this._cancelPrompt));
this.prompt.connect('show-confirm', Lang.bind(this,
this._cancelPrompt));
},
_cancelPrompt: function() {
this.prompt.cancel();
}
});
const KeyringPrompter = new Lang.Class({
Name: 'KeyringPrompter',
_init: function() {
this._prompter = new Gcr.SystemPrompter();
this._prompter.connect('new-prompt', function(prompter) {
let dialog = new KeyringDialog();
return dialog.prompt;
});
this._prompter.connect('new-prompt', Lang.bind(this,
function() {
let dialog = this._enabled ? new KeyringDialog()
: new KeyringDummyDialog();
return dialog.prompt;
}));
this._dbusId = null;
this._registered = false;
this._enabled = false;
},
enable: function() {
this._prompter.register(Gio.DBus.session);
this._dbusId = Gio.DBus.session.own_name('org.gnome.keyring.SystemPrompter',
Gio.BusNameOwnerFlags.ALLOW_REPLACEMENT, null, null);
if (!this._registered) {
this._prompter.register(Gio.DBus.session);
this._dbusId = Gio.DBus.session.own_name('org.gnome.keyring.SystemPrompter',
Gio.BusNameOwnerFlags.ALLOW_REPLACEMENT, null, null);
this._registered = true;
}
this._enabled = true;
},
disable: function() {
this._prompter.unregister(false);
Gio.DBus.session.unown_name(this._dbusId);
this._enabled = false;
}
});

View File

@ -72,13 +72,18 @@ const NetworkSecretDialog = new Lang.Class({
expand: true });
}
let secretTable = new St.Table({ style_class: 'network-dialog-secret-table' });
let layout = new Clutter.TableLayout();
let secretTable = new St.Widget({ style_class: 'network-dialog-secret-table',
layout_manager: layout });
layout.hookup_style(secretTable);
let initialFocusSet = false;
let pos = 0;
for (let i = 0; i < this._content.secrets.length; i++) {
let secret = this._content.secrets[i];
let label = new St.Label({ style_class: 'prompt-dialog-password-label',
text: secret.label });
label.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
let reactive = secret.key != null;
@ -111,11 +116,10 @@ const NetworkSecretDialog = new Lang.Class({
} else
secret.valid = true;
secretTable.add(label, { row: pos, col: 0,
x_expand: false, x_fill: true,
x_align: St.Align.START,
y_fill: false, y_align: St.Align.MIDDLE });
secretTable.add(secret.entry, { row: pos, col: 1, x_expand: true, x_fill: true, y_align: St.Align.END });
layout.pack(label, 0, pos);
layout.child_set(label, { x_expand: false, y_fill: false,
x_align: Clutter.TableAlignment.START });
layout.pack(secret.entry, 1, pos);
pos++;
if (secret.password)

View File

@ -33,6 +33,7 @@ const FocusCaretTracker = new Lang.Class({
_init: function() {
Atspi.init();
Atspi.set_timeout(250, 250);
this._atspiListener = Atspi.EventListener.new(Lang.bind(this, this._onChanged));
},

View File

@ -362,7 +362,7 @@ const LayoutManager = new Lang.Class({
BackgroundMenu.addBackgroundMenu(bgManager.background.actor);
}));
this._bgManagers.push(bgManager);
this._bgManagers[monitorIndex] = bgManager;
return bgManager.background;
},

View File

@ -90,8 +90,12 @@ function _sessionUpdated() {
Shell.KeyBindingMode.OVERVIEW,
sessionMode.hasRunDialog ? openRunDialog : null);
if (!sessionMode.hasRunDialog && lookingGlass)
lookingGlass.close();
if (!sessionMode.hasRunDialog) {
if (runDialog)
runDialog.close();
if (lookingGlass)
lookingGlass.close();
}
}
function start() {

View File

@ -1805,8 +1805,9 @@ const MessageTray = new Lang.Class({
},
_sessionUpdated: function() {
if ((Main.sessionMode.isLocked || Main.sessionMode.isGreeter) && this._inCtrlAltTab) {
Main.ctrlAltTabManager.removeGroup(this._summary);
if (Main.sessionMode.isLocked || Main.sessionMode.isGreeter) {
if (this._inCtrlAltTab)
Main.ctrlAltTabManager.removeGroup(this._summary);
this._inCtrlAltTab = false;
} else if (!this._inCtrlAltTab) {
Main.ctrlAltTabManager.addGroup(this._summary, _("Message Tray"), 'user-available-symbolic',

View File

@ -148,7 +148,7 @@ const Overview = new Lang.Class({
// Dash elements, or mouseover handlers in the workspaces.
this._coverPane = new Clutter.Actor({ opacity: 0,
reactive: true });
this._stack.add_actor(this._coverPane);
Main.layoutManager.overviewGroup.add_child(this._coverPane);
this._coverPane.connect('event', Lang.bind(this, function (actor, event) { return true; }));
this._stack.add_actor(this._overview);
@ -313,6 +313,9 @@ const Overview = new Lang.Class({
},
_onDragEnd: function(time) {
if (this.animationInProgress)
return;
this._inXdndDrag = false;
// In case the drag was canceled while in the overview

View File

@ -611,6 +611,7 @@ const ActivitiesButton = new Lang.Class({
_onButtonRelease: function() {
Main.overview.toggle();
this.menu.close();
},
_onKeyRelease: function(actor, event) {

View File

@ -948,14 +948,18 @@ const PopupSubMenuMenuItem = new Lang.Class({
this.actor.add_child(this.icon);
}
this.label = new St.Label({ text: text });
this.label = new St.Label({ text: text,
y_expand: true,
y_align: Clutter.ActorAlign.CENTER });
this.actor.add_child(this.label);
this.actor.label_actor = this.label;
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' });
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 = new St.Label({ text: '\u25B8',

View File

@ -214,8 +214,8 @@ const SearchResultsBase = new Lang.Class({
this.actor.hide();
},
_keyFocusIn: function(icon) {
this.emit('key-focus-in', icon);
_keyFocusIn: function(actor) {
this.emit('key-focus-in', actor);
},
_setMoreIconVisible: function(visible) {
@ -259,6 +259,7 @@ const ListSearchResults = new Lang.Class({
this._container = new St.BoxLayout({ style_class: 'search-section-content' });
this.providerIcon = new ProviderIcon(provider);
this.providerIcon.connect('key-focus-in', Lang.bind(this, this._keyFocusIn));
this.providerIcon.connect('clicked', Lang.bind(this,
function() {
provider.launchSearch(this._terms);
@ -404,8 +405,8 @@ const SearchResults = new Lang.Class({
return false;
},
_keyFocusIn: function(provider, icon) {
Util.ensureActorVisibleInScrollView(this._scrollView, icon);
_keyFocusIn: function(provider, actor) {
Util.ensureActorVisibleInScrollView(this._scrollView, actor);
},
createProviderDisplay: function(provider) {

View File

@ -31,6 +31,7 @@ const Indicator = new Lang.Class({
this._applet.killswitch_state = GnomeBluetooth.KillswitchState.SOFT_BLOCKED;
}));
this._item.menu.addSettingsAction(_("Bluetooth Settings"), 'gnome-bluetooth-panel.desktop');
this.menu.addMenuItem(this._item);
this._applet = new GnomeBluetoothApplet.Applet();
this._applet.connect('devices-changed', Lang.bind(this, this._sync));

View File

@ -547,18 +547,24 @@ const NMWirelessDialogItem = new Lang.Class({
this._signalIcon = new St.Icon({ style_class: 'nm-dialog-icon' });
this._icons.add_actor(this._signalIcon);
this._sync();
},
_sync: function() {
this._signalIcon.icon_name = this._getSignalIcon();
},
updateBestAP: function(ap) {
this._ap = ap;
this._signalIcon.icon_name = this._getIcon();
this._sync();
},
setActive: function(isActive) {
this._selectedIcon.opacity = isActive ? 255 : 0;
},
_getIcon: function() {
_getSignalIcon: function() {
if (this._ap.mode == NM80211Mode.ADHOC)
return 'network-workgroup-symbolic';
else
@ -1117,6 +1123,7 @@ const NMVPNConnectionItem = new Lang.Class({
this.emit('activation-failed', reason);
}
this.emit('icon-changed');
this.parent();
},
@ -1287,6 +1294,7 @@ const NMApplet = new Lang.Class({
this._client.connect('notify::networking-enabled', Lang.bind(this, this._syncNMState));
this._client.connect('notify::state', Lang.bind(this, this._syncNMState));
this._client.connect('notify::primary-connection', Lang.bind(this, this._syncMainConnection));
this._client.connect('notify::activating-connection', Lang.bind(this, this._syncMainConnection));
this._client.connect('notify::active-connections', Lang.bind(this, this._syncVPNConnections));
this._client.connect('device-added', Lang.bind(this, this._deviceAdded));
this._client.connect('device-removed', Lang.bind(this, this._deviceRemoved));

View File

@ -372,7 +372,11 @@ const Indicator = new Lang.Class({
Main.overview.hide();
if (Main.screenShield)
Main.screenShield.lock(false);
Gdm.goto_login_session_sync(null);
Clutter.threads_add_repaint_func_full(Clutter.RepaintFlags.POST_PAINT, function() {
Gdm.goto_login_session_sync(null);
return false;
});
},
_onQuitSessionActivate: function() {

View File

@ -20,8 +20,6 @@ const FOCUS_ANIMATION_TIME = 0.15;
const WINDOW_DND_SIZE = 256;
const SCROLL_SCALE_AMOUNT = 100 / 5;
const WINDOW_CLONE_MAXIMUM_SCALE = 0.7;
const LIGHTBOX_FADE_TIME = 0.1;

View File

@ -62,7 +62,6 @@ const WorkspacesView = new Lang.Class({
this._animating = false; // tweening
this._scrolling = false; // swipe-scrolling
this._animatingScroll = false; // programatically updating the adjustment
this._zoomOut = false; // zoom to a larger area
this._inDrag = false; // dragging a window
this._settings = new Gio.Settings({ schema: OVERRIDE_SCHEMA });
@ -168,14 +167,6 @@ const WorkspacesView = new Lang.Class({
this._workspaces[i].setActualGeometry(geom);
},
_lookupWorkspaceForMetaWindow: function (metaWindow) {
for (let i = 0; i < this._workspaces.length; i++) {
if (this._workspaces[i].containsMetaWindow(metaWindow))
return this._workspaces[i];
}
return null;
},
getActiveWorkspace: function() {
let active = global.screen.get_active_workspace_index();
return this._workspaces[active];
@ -433,10 +424,6 @@ const WorkspacesView = new Lang.Class({
this._workspaces[i].actor.y += dy;
}
},
_getWorkspaceIndexToRemove: function() {
return global.screen.get_active_workspace_index();
}
});
Signals.addSignalMethods(WorkspacesView.prototype);

443
po/as.po

File diff suppressed because it is too large Load Diff

162
po/be.po
View File

@ -5,7 +5,7 @@ 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: 2013-09-02 19:28+0000\n"
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
"PO-Revision-Date: 2012-10-16 12:05+0300\n"
"Last-Translator: Kasia Bondarava <kasia.bondarava@gmail.com>\n"
"Language-Team: Belarusian <i18n-bel-gnome@googlegroups.com>\n"
@ -47,6 +47,7 @@ msgid "GNOME Shell"
msgstr "Абалонка GNOME"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Кіраванне вокнамі і пуск праграм"
@ -59,6 +60,10 @@ msgstr "Настройкі пашырэння абалонкі GNOME"
msgid "Configure GNOME Shell Extensions"
msgstr "Настройкі пашырэнняў абалонкі GNOME"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "Абалонка GNOME (Wayland-кампазіцыя)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
msgstr ""
@ -258,6 +263,10 @@ msgstr "Дынамічнае кіраванне прасторамі працы"
msgid "Workspaces only on primary monitor"
msgstr "Прасторы працы толькі для асноўнага манітора"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Затрымліваць змяненне фокусу ў рэжыме мышы да спынення руху яе паказальніка"
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -273,10 +282,10 @@ msgstr ""
"Абярыце пашырэнне, каб настроіць графу з выплыўным спісам, якая знаходзіцца "
"вышэй."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
msgid "Cancel"
msgstr "Скасаваць"
@ -315,8 +324,8 @@ msgstr "(напр., карыстальнік ці %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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "Імя карыстальніка: "
@ -337,42 +346,42 @@ msgstr "Памылка ідэнтыфікацыі"
msgid "(or swipe finger)"
msgstr "(або правядзіце пальцам)"
#: ../js/misc/util.js:97
#: ../js/misc/util.js:98
msgid "Command not found"
msgstr "Загад не знойдзены"
#. Replace "Error invoking GLib.shell_parse_argv: " with
#. something nicer
#: ../js/misc/util.js:130
#: ../js/misc/util.js:131
msgid "Could not parse command:"
msgstr "Не ўдалося разабраць загад:"
#: ../js/misc/util.js:138
#: ../js/misc/util.js:139
#, c-format
msgid "Execution of '%s' failed:"
msgstr "Не ўдалося выканаць \"%s\":"
#: ../js/ui/appDisplay.js:578
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "Тут размешчаныя часта ўжываныя праграмы"
#: ../js/ui/appDisplay.js:694
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "Часта"
#: ../js/ui/appDisplay.js:701
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "Усе"
#: ../js/ui/appDisplay.js:1488
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "Новае акно"
#: ../js/ui/appDisplay.js:1491 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Выдаліць са спіса ўпадабанага"
#: ../js/ui/appDisplay.js:1492
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "Дадаць у спіс упадабанага"
@ -386,7 +395,8 @@ msgstr "%s дададзены ў ваш спіс упадабанага."
msgid "%s has been removed from your favorites."
msgstr "%s выдалены з вашага спіса ўпадабанага."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
#: ../js/ui/status/system.js:325
msgid "Settings"
msgstr "Настройкі"
@ -572,50 +582,50 @@ msgstr "Адкрыць у %s"
msgid "Eject"
msgstr "Выняць"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Пароль:"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "Паўтарыце пароль:"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
msgid "Connect"
msgstr "Злучыць"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "Пароль: "
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "Ключ: "
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "Ідэнтычнасць: "
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "Пароль да прыватнага ключа: "
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "Паслуга: "
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "Для бесправадной сеткі патрэбная ідэнтыфікацыя"
#: ../js/ui/components/networkAgent.js:305
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
@ -624,37 +634,37 @@ msgstr ""
"Для доступу да бесправадной сеткі \"%s\" патрэбны пароль або ключы "
"шыфравання."
#: ../js/ui/components/networkAgent.js:309
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "Правадная ідэнтыфікацыя 802.1X"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "Назва сеткі: "
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "DSL-ідэнтыфікацыя"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "Патрэбны PIN-код"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr ""
"Для прыстасавання для доступу да шырокапалоснай мабільнай сеткі патрэбны PIN-"
"код"
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN-код: "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "Пароль да шырокапалоснай мабільнай сеткі"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "Каб злучыцца з \"%s\", патрэбны пароль."
@ -916,7 +926,7 @@ msgstr "Праглядзець конт"
msgid "Unknown reason"
msgstr "Невядомая прычына"
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:96
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:100
msgid "Windows"
msgstr "Вокны"
@ -1068,7 +1078,7 @@ msgstr "Усталяваць"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Сцягнуць і ўсталяваць \"%s\" з extensions.gnome.org?"
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:334
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
msgid "Keyboard"
msgstr "Клавіятура"
@ -1144,11 +1154,11 @@ msgstr "Меню трэя"
msgid "No Messages"
msgstr "Апавяшчэнні адсутнічаюць"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "Абшар апавяшчэнняў"
#: ../js/ui/messageTray.js:2786
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "Сістэмная інфармацыя"
@ -1181,21 +1191,17 @@ msgstr "Агляд"
msgid "Type to search…"
msgstr "Увядзіце тэкст для пошуку..."
#: ../js/ui/panel.js:516
#: ../js/ui/panel.js:518
msgid "Quit"
msgstr "Выйсці"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:568
#: ../js/ui/panel.js:570
msgid "Activities"
msgstr "Заняткі"
#: ../js/ui/panel.js:805
msgid "Settings Menu"
msgstr "Меню настроек"
#: ../js/ui/panel.js:892
#: ../js/ui/panel.js:903
msgid "Top Bar"
msgstr "Верхняя панэль"
@ -1204,7 +1210,7 @@ msgstr "Верхняя панэль"
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:226
#: ../js/ui/popupMenu.js:233
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
@ -1234,7 +1240,7 @@ msgstr[2] "%d новых апавяшчэнняў"
msgid "Lock"
msgstr "Заблакіраваць"
#: ../js/ui/screenShield.js:703
#: ../js/ui/screenShield.js:704
msgid "GNOME needs to lock the screen"
msgstr "GNOME патрабуе блакіравання экрана"
@ -1245,11 +1251,11 @@ msgstr "GNOME патрабуе блакіравання экрана"
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
#: ../js/ui/screenShield.js:830 ../js/ui/screenShield.js:1296
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
msgid "Unable to lock"
msgstr "Не ўдалося заблакіраваць"
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
#: ../js/ui/screenShield.js:832 ../js/ui/screenShield.js:1298
msgid "Lock was blocked by an application"
msgstr "Блакіраванне стрымана праграмай"
@ -1331,9 +1337,9 @@ msgstr "Буйны тэкст"
#. 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1346,7 +1352,7 @@ msgstr "Выключыць"
msgid "Bluetooth Settings"
msgstr "Настройкі Bluetooth"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
@ -1354,73 +1360,73 @@ msgstr[0] "%d злучанае прыстасаванне"
msgstr[1] "%d злучаныя прыстасаванні"
msgstr[2] "%d злучаных прыстасаванняў"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "Запыт на ўпаўнаважанне ад %s"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Прыстасаванне %s хоча спарыцца з гэтым камп'ютарам"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "Дазволіць"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "Адмовіць"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Прыстасаванне %s хоча даступіцца да паслугі \"%s\""
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "Заўсёды даваць дазвол"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "Даць дазвол аднойчы"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "Адмовіць"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Пацвярджэнне спарвання з %s"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "Праверце, ці супадае пароль \"%06d\" з нумарам на прыстасаванні."
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "Супадае"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "Не супадае"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "Запыт на спарванне з %s"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr "Увядзіце PIN, які паказвае прыстасаванне."
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "Добра"
@ -1428,7 +1434,7 @@ msgstr "Добра"
msgid "Brightness"
msgstr "Яркасць"
#: ../js/ui/status/keyboard.js:404
#: ../js/ui/status/keyboard.js:403
msgid "Show Keyboard Layout"
msgstr "Паказаць раскладку"
@ -1504,15 +1510,15 @@ msgstr "Уключыць"
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1307
msgid "Network Manager"
msgstr "Сеткавы кіраўнік"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1346
msgid "Connection failed"
msgstr "Не ўдалося злучыцца"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1347
msgid "Activation of network connection failed"
msgstr "Не ўдалося ўключыць сеткавае злучэнне"
@ -1598,11 +1604,11 @@ msgstr "Увайсці іншым карыстальнікам"
msgid "Unlock Window"
msgstr "Акно блакіравання"
#: ../js/ui/viewSelector.js:100
#: ../js/ui/viewSelector.js:104
msgid "Applications"
msgstr "Праграмы"
#: ../js/ui/viewSelector.js:104
#: ../js/ui/viewSelector.js:108
msgid "Search"
msgstr "Пошук"

402
po/cs.po

File diff suppressed because it is too large Load Diff

196
po/da.po
View File

@ -17,8 +17,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2013-09-14 15:55+0200\n"
"PO-Revision-Date: 2013-09-14 10:23+0100\n"
"POT-Creation-Date: 2013-10-01 19:10+0200\n"
"PO-Revision-Date: 2013-10-01 19:06+0200\n"
"Last-Translator: Kris Thomsen <mail@kristhomsen.dk>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\n"
@ -274,6 +274,12 @@ msgstr "Arbejdsområder er håndteret dynamisk"
msgid "Workspaces only on primary monitor"
msgstr "Arbejdsområder kun på den primære skærm"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Forsink fokusændringer i musetilstand indtil pegeren holder op med at bevæge "
"sig"
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -288,10 +294,10 @@ msgid "Select an extension to configure using the combobox above."
msgstr ""
"Vælg en udvidelse at konfigurere ved hjælp af kombinationsboksen ovenfor."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:692
msgid "Cancel"
msgstr "Annullér"
@ -330,8 +336,8 @@ msgstr "(f.eks. bruger 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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "Brugernavn: "
@ -367,27 +373,27 @@ msgstr "Kunne ikke fortolke kommando:"
msgid "Execution of '%s' failed:"
msgstr "Kørsel af \"%s\" mislykkedes:"
#: ../js/ui/appDisplay.js:598
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "Ofte brugte programmer vil blive vist her"
#: ../js/ui/appDisplay.js:714
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "Ofte"
#: ../js/ui/appDisplay.js:721
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "Alle"
#: ../js/ui/appDisplay.js:1516
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "Nyt vindue"
#: ../js/ui/appDisplay.js:1519 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Fjern fra favoritter"
#: ../js/ui/appDisplay.js:1520
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "Føj til favoritter"
@ -401,7 +407,8 @@ msgstr "%s er blevet føjet til dine favoritter."
msgid "%s has been removed from your favorites."
msgstr "%s er blevet fjernet fra dine favoritter."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
#: ../js/ui/status/system.js:325
msgid "Settings"
msgstr "Indstillinger"
@ -587,50 +594,50 @@ msgstr "Åbn med %s"
msgid "Eject"
msgstr "Skub ud"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Adgangskode:"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "Indtast igen:"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:695
msgid "Connect"
msgstr "Forbind"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "Adgangskode: "
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "Nøgle: "
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "Identitet: "
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "Privatnøgle-adgangskode: "
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "Tjeneste: "
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "Godkendelse påkrævet af trådløst netværk"
#: ../js/ui/components/networkAgent.js:305
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
@ -639,35 +646,35 @@ msgstr ""
"Adgangskoder eller krypteringsnøgler er påkrævet for at få adgang til det "
"trådløse netværk \"%s\"."
#: ../js/ui/components/networkAgent.js:309
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "Trådet 802.1X-godkendelse"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "Netværksnavn: "
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "DSL-godkendelse"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "PIN-kode påkrævet"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr "PIN-kode er nødvendig for den mobile bredbåndsenhed"
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN: "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "Adgangskode til mobilt bredbåndsnetværk"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "En adgangskode er påkrævet for at forbinde til \"%s\"."
@ -1155,11 +1162,11 @@ msgstr "Menu for statusfelt"
msgid "No Messages"
msgstr "Ingen beskeder"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "Besked-statusfelt"
#: ../js/ui/messageTray.js:2787
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "Systeminformation"
@ -1201,11 +1208,7 @@ msgstr "Afslut"
msgid "Activities"
msgstr "Aktiviteter"
#: ../js/ui/panel.js:807
msgid "Settings Menu"
msgstr "Menu for indstillinger"
#: ../js/ui/panel.js:903
#: ../js/ui/panel.js:904
msgid "Top Bar"
msgstr "Toppanel"
@ -1262,11 +1265,11 @@ msgstr "Kunne ikke låse"
msgid "Lock was blocked by an application"
msgstr "Lås blev blokeret af et program"
#: ../js/ui/searchDisplay.js:447
#: ../js/ui/searchDisplay.js:448
msgid "Searching…"
msgstr "Søger…"
#: ../js/ui/searchDisplay.js:491
#: ../js/ui/searchDisplay.js:492
msgid "No results."
msgstr "Ingen resultater."
@ -1340,14 +1343,14 @@ 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
#: ../js/ui/status/network.js:1040 ../js/ui/status/rfkill.js:46
msgid "Turn Off"
msgstr "Sluk"
@ -1355,56 +1358,56 @@ msgstr "Sluk"
msgid "Bluetooth Settings"
msgstr "Indstillinger for Bluetooth"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d forbundet enhed"
msgstr[1] "%d forbundne enheder"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "Godkendelsesforespørgsel fra %s"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Enheden %s ønsker at blive parret med denne computer"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "Tillad"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "Nægt"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Enheden %s ønsker adgang til tjenesten \"%s\""
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "Giv altid adgang"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "Giv kun lov denne gang"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "Afvis"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Bekræftelse af parring for %s"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
@ -1413,24 +1416,24 @@ msgstr ""
"enheden."
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "Stemmer"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "Stemmer ikke"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "Forespørgsel om parring for %s"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr "Indtast PIN-koden nævnt på enheden."
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "O.k."
@ -1446,11 +1449,11 @@ msgstr "Vis tastaturlayout"
msgid "<unknown>"
msgstr "<ukendt>"
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1055
msgid "Off"
msgstr "Slukket"
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:961
#: ../js/ui/status/rfkill.js:49
msgid "Network Settings"
msgstr "Indstillinger for netværk"
@ -1465,12 +1468,12 @@ msgstr "ikke håndteret"
msgid "disconnecting..."
msgstr "frakobler..."
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1106
msgid "connecting..."
msgstr "forbinder..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1109
msgid "authentication required"
msgstr "godkendelse påkrævet"
@ -1486,43 +1489,43 @@ msgstr "firmware mangler"
msgid "unavailable"
msgstr "utilgængelig"
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1111
msgid "connection failed"
msgstr "forbindelse mislykkedes"
#: ../js/ui/status/network.js:654
#: ../js/ui/status/network.js:660
msgid "Wi-Fi Networks"
msgstr "Trådløse netværk"
#: ../js/ui/status/network.js:656
#: ../js/ui/status/network.js:662
msgid "Select a network"
msgstr "Vælg et netværk"
#: ../js/ui/status/network.js:680
#: ../js/ui/status/network.js:686
msgid "No Networks"
msgstr "Ingen netværk"
#: ../js/ui/status/network.js:949
#: ../js/ui/status/network.js:955
msgid "Select Network"
msgstr "Vælg netværk"
#: ../js/ui/status/network.js:1034
#: ../js/ui/status/network.js:1040
msgid "Turn On"
msgstr "Tænd"
#: ../js/ui/status/network.js:1167
#: ../js/ui/status/network.js:1174
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1314
msgid "Network Manager"
msgstr "Netværkshåndtering"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1353
msgid "Connection failed"
msgstr "Forbindelse mislykkedes"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1354
msgid "Activation of network connection failed"
msgstr "Aktivering af netværksforbindelse mislykkedes"
@ -1547,15 +1550,15 @@ msgstr "Udregner…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:77
#, c-format
#, fuzzy, c-format
msgid "%d\\u2236%02d Remaining (%d%%)"
msgstr "%d\\u2236%02d tilbage (%d%%)"
msgstr "%d%02d tilbage (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:82
#, c-format
#, fuzzy, c-format
msgid "%d\\u2236%02d Until Full (%d%%)"
msgstr "%d\\u2236%02d indtil fuld (%d%%)"
msgstr "%d%02d indtil fuld (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1716,6 +1719,31 @@ msgstr "Adgangskode må ikke være tom"
msgid "Authentication dialog was dismissed by the user"
msgstr "Godkendelsesdialogen blev afvist af brugeren"
#~ msgctxt "event list time"
#~ msgid "%H%M"
#~ msgstr "%H%M"
#~ msgctxt "event list time"
#~ msgid "%l%M%p"
#~ msgstr "%l%M%p"
# Dette her er kode for at skrive måned før år jvf. kommentar for samme streng i gtk+:
#
# Translate to calendar:YM if you want years to be displayed
# before months; otherwise translate to calendar:MY.
# Do *not* translate it to anything else, if it
# it isn't calendar:YM or calendar:MY it will not work.
#
# Note that the ordering described here is logical order, which is
# further influenced by BIDI ordering. Thus, if you have a default
# text direction of RTL and specify "calendar:YM", then the year
# will appear to the right of the month.
#~ msgid "calendar:MY"
#~ msgstr "calendar:MY"
#~ msgid "Settings Menu"
#~ msgstr "Menu for indstillinger"
#~ msgid "Screenshots"
#~ msgstr "Skærmbilleder"

142
po/de.po
View File

@ -18,18 +18,17 @@
msgid ""
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: 2013-09-12 17:36+0000\n"
"PO-Revision-Date: 2013-09-13 19:29+0100\n"
"Last-Translator: Benjamin Steinwender <b@stbe.at>\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2013-09-25 15:24+0200\n"
"PO-Revision-Date: 2013-09-25 15:25+0100\n"
"Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
"Language-Team: Deutsch <gnome-de@gnome.org>\n"
"Language: de_DE\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.5.7\n"
"X-Generator: Poedit 1.5.4\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -282,6 +281,11 @@ msgstr "Arbeitsflächen dynamisch verwalten"
msgid "Workspaces only on primary monitor"
msgstr "Arbeitsflächen nur auf dem primären Bildschirm"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Fokuswechsel im Mausmodus verzögern, bis sich der Zeiger nicht mehr bewegt."
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -295,10 +299,10 @@ msgstr "Erweiterung"
msgid "Select an extension to configure using the combobox above."
msgstr "Wählen Sie oben eine Erweiterung aus, die Sie konfigurieren wollen."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
msgid "Cancel"
msgstr "Abbrechen"
@ -337,8 +341,8 @@ msgstr "(z.B. Benutzer oder %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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "Benutzername:"
@ -374,27 +378,27 @@ msgstr "Befehl konnte nicht verarbeitet werden:"
msgid "Execution of '%s' failed:"
msgstr "Ausführung von »%s« ist gescheitert:"
#: ../js/ui/appDisplay.js:573
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "Häufig genutzte Anwendungen werden hier erscheinen"
#: ../js/ui/appDisplay.js:689
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "Häufig"
#: ../js/ui/appDisplay.js:696
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "Alle"
#: ../js/ui/appDisplay.js:1491
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "Neues Fenster"
#: ../js/ui/appDisplay.js:1494 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Aus Favoriten entfernen"
#: ../js/ui/appDisplay.js:1495
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "Zu Favoriten hinzufügen"
@ -408,7 +412,8 @@ msgstr "%s wurde zu Ihren Favoriten hinzugefügt"
msgid "%s has been removed from your favorites."
msgstr "%s wurde aus Ihren Favoriten entfernt"
#: ../js/ui/backgroundMenu.js:19 ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
#: ../js/ui/status/system.js:325
msgid "Settings"
msgstr "Einstellungen"
@ -597,50 +602,50 @@ msgstr "Öffnen mit %s"
msgid "Eject"
msgstr "Auswerfen"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Passwort:"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "Erneut eingeben:"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
msgid "Connect"
msgstr "Verbinden"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "Passwort:"
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "Schlüssel:"
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "Identität:"
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "Passwort für geheimen Schlüssel:"
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "Dienst:"
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "Legitimierung für Funknetzwerk wird benötigt"
#: ../js/ui/components/networkAgent.js:305
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
@ -649,35 +654,35 @@ msgstr ""
"Passwörter oder Schlüssel sind erforderlich, um auf das Funknetzwerk »%s« "
"zuzugreifen."
#: ../js/ui/components/networkAgent.js:309
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "Kabelgebundene 802.1X-Legitimierung"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "Netzwerkname:"
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "DSL-Legitimierung"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "PIN-Code ist erforderlich"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr "Für das mobile Breitbandgerät wird ein PIN-Code benötigt."
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN: "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "Passwort der mobilen Breitbandverbindung"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "Es wird ein Passwort benötigt, um sich mit »%s« zu verbinden."
@ -1169,11 +1174,11 @@ msgstr "Benachrichtigungsfeldmenü"
msgid "No Messages"
msgstr "Keine Nachrichten"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "Benachrichtigungsfeld"
#: ../js/ui/messageTray.js:2787
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "Systeminformationen"
@ -1215,11 +1220,7 @@ msgstr "Beenden"
msgid "Activities"
msgstr "Aktivitäten"
#: ../js/ui/panel.js:807
msgid "Settings Menu"
msgstr "Einstellungsmenü"
#: ../js/ui/panel.js:903
#: ../js/ui/panel.js:904
msgid "Top Bar"
msgstr "Oberes Panel"
@ -1357,9 +1358,9 @@ msgstr "Große Schrift"
#. 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1372,56 +1373,56 @@ msgstr "Ausschalten"
msgid "Bluetooth Settings"
msgstr "Bluetooth-Einstellungen"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d Verbundes Gerät"
msgstr[1] "%d Verbundene Geräte"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "Legitimierungsanfrage von %s"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Gerät »%s« möchte mit diesem Rechner gekoppelt werden"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "Erlauben"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "Verweigern"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Gerät »%s« bittet um Zugriff auf den Dienst »%s«"
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "Immer Zugriff gewähren"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "Nur dieses Mal gewähren"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "Abweisen"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Koppelungsbestätigung für %s"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
@ -1429,24 +1430,24 @@ msgstr ""
"Bitte bestätigen Sie, ob die PIN »%06d« mit der des Gerätes übereinstimmt."
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "Stimmt überein"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "Stimmt nicht überein"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "Koppelungsanfrage für %s"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr "Bitte geben Sie die auf dem Gerät angezeigte PIN ein."
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "OK"
@ -1530,15 +1531,15 @@ msgstr "Einschalten"
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1307
msgid "Network Manager"
msgstr "Netzwerk-Verwaltung"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1346
msgid "Connection failed"
msgstr "Verbindung gescheitert"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1347
msgid "Activation of network connection failed"
msgstr "Aktivierung der Netzwerkverbindung ist gescheitert"
@ -1734,6 +1735,9 @@ msgstr "Das Passwort darf nicht leer sein"
msgid "Authentication dialog was dismissed by the user"
msgstr "Der Dialog zur Legitimierung wurde vom Benutzer geschlossen"
#~ msgid "Settings Menu"
#~ msgstr "Einstellungsmenü"
#~ msgid ""
#~ "Internally used to store the last IM presence explicitly set by the user. "
#~ "The value here is from the TpConnectionPresenceType enumeration."

2921
po/eo.po

File diff suppressed because it is too large Load Diff

403
po/es.po

File diff suppressed because it is too large Load Diff

247
po/et.po
View File

@ -13,8 +13,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: 2013-09-11 19:26+0000\n"
"PO-Revision-Date: 2013-09-11 22:32+0300\n"
"POT-Creation-Date: 2013-09-30 11:41+0000\n"
"PO-Revision-Date: 2013-10-01 16:40+0300\n"
"Last-Translator: Mattias Põldaru <mahfiaz@gmail.com>\n"
"Language-Team: Estonian <>\n"
"Language: et\n"
@ -54,6 +54,9 @@ msgstr "GNOME Shelli laienduste eelistused"
msgid "Configure GNOME Shell Extensions"
msgstr "GNOME Shelli laienduste seadistamine"
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (waylandi komposiitor)"
msgid "Enable internal tools useful for developers and testers from Alt-F2"
msgstr ""
"Arendajate ja testijate jaoks sisemiste tööriistade lubamine Alt-F2 alt"
@ -212,12 +215,8 @@ msgstr "Tööalasid hallatakse dünaamiliselt"
msgid "Workspaces only on primary monitor"
msgstr "Tööalad peamisel monitoril"
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "%s jaoks eelistuste dialoogi laadimisel esines viga:"
msgid "Extension"
msgstr "Laiendus"
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Hiire all asuv aken saab fookuse alles hiire peatumisel"
msgid "Select an extension to configure using the combobox above."
msgstr "Vali seadistatav laiendus kasutades ülemist valikukasti."
@ -238,21 +237,12 @@ msgstr "Logi sisse"
msgid "Choose Session"
msgstr "Seansi valimine"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
msgid "Not listed?"
msgstr "Pole loendis?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#, c-format
msgid "(e.g., user or %s)"
msgstr "(nt 'user' või %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)
msgid "Username: "
msgstr "Kasutajanimi: "
@ -262,23 +252,15 @@ msgstr "Sisselogimisaken"
msgid "Authentication error"
msgstr "Viga autentimisel"
#. We don't show fingerprint messages directly since it's
#. not the main auth service. Instead we use the messages
#. as a cue to display our own message.
#. Translators: this message is shown below the password entry field
#. to indicate the user can swipe their finger instead
msgid "(or swipe finger)"
msgstr "(või libista näpp üle lugeja)"
msgid "Command not found"
msgstr "Käsku ei leitud"
#. Replace "Error invoking GLib.shell_parse_argv: " with
#. something nicer
msgid "Could not parse command:"
msgstr "Käsku pole võimalik analüüsida:"
#, c-format
msgid "Execution of '%s' failed:"
msgstr "'%s' käivitamine nurjus:"
@ -286,7 +268,7 @@ msgid "Frequently used applications will appear here"
msgstr "Siia ilmuvad tihti kasutatud rakendused"
msgid "Frequent"
msgstr "Sage"
msgstr "Tihti"
msgid "All"
msgstr "Kõik"
@ -300,11 +282,9 @@ msgstr "Eemalda lemmikutest"
msgid "Add to Favorites"
msgstr "Lisa lemmikutesse"
#, c-format
msgid "%s has been added to your favorites."
msgstr "%s lisati lemmikutesse."
#, c-format
msgid "%s has been removed from your favorites."
msgstr "%s eemaldati lemmikutest."
@ -316,59 +296,59 @@ msgstr "Muuda tausta…"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#. */
msgctxt "event list time"
msgid "All Day"
msgstr "Kogu päev"
#. Translators: Shown in calendar event list, if 24h format,
#. \u2236 is a ratio character, similar to :
#. \u2236 is a ratio character, similar to : */
msgctxt "event list time"
msgid "%H\\u2236%M"
msgstr "%H\\u2236%M"
msgid "%H%M"
msgstr "%H%M"
#. Translators: Shown in calendar event list, if 12h format,
#. \u2236 is a ratio character, similar to : and \u2009 is
#. a thin space
#. a thin space */
msgctxt "event list time"
msgid "%l\\u2236%M\\u2009%p"
msgstr "%l\\u2236%M\\u2009%p"
msgid "%l%M%p"
msgstr "%l%M%p"
#. Translators: Calendar grid abbreviation for Sunday.
#. *
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#. */
msgctxt "grid sunday"
msgid "S"
msgstr "P"
#. Translators: Calendar grid abbreviation for Monday
#. Translators: Calendar grid abbreviation for Monday */
msgctxt "grid monday"
msgid "M"
msgstr "E"
#. Translators: Calendar grid abbreviation for Tuesday
#. Translators: Calendar grid abbreviation for Tuesday */
msgctxt "grid tuesday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Wednesday
#. Translators: Calendar grid abbreviation for Wednesday */
msgctxt "grid wednesday"
msgid "W"
msgstr "K"
#. Translators: Calendar grid abbreviation for Thursday
#. Translators: Calendar grid abbreviation for Thursday */
msgctxt "grid thursday"
msgid "T"
msgstr "N"
#. Translators: Calendar grid abbreviation for Friday
#. Translators: Calendar grid abbreviation for Friday */
msgctxt "grid friday"
msgid "F"
msgstr "R"
#. Translators: Calendar grid abbreviation for Saturday
#. Translators: Calendar grid abbreviation for Saturday */
msgctxt "grid saturday"
msgid "S"
msgstr "L"
@ -378,57 +358,60 @@ msgstr "L"
#. * NOTE: These list abbreviations are normally not shown together
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
#. * both be 'T').
#.
#. */
msgctxt "list sunday"
msgid "Su"
msgstr "P"
#. Translators: Event list abbreviation for Monday
#. Translators: Event list abbreviation for Monday */
msgctxt "list monday"
msgid "M"
msgstr "E"
#. Translators: Event list abbreviation for Tuesday
#. Translators: Event list abbreviation for Tuesday */
msgctxt "list tuesday"
msgid "T"
msgstr "T"
#. Translators: Event list abbreviation for Wednesday
#. Translators: Event list abbreviation for Wednesday */
msgctxt "list wednesday"
msgid "W"
msgstr "K"
#. Translators: Event list abbreviation for Thursday
#. Translators: Event list abbreviation for Thursday */
msgctxt "list thursday"
msgid "Th"
msgstr "N"
#. Translators: Event list abbreviation for Friday
#. Translators: Event list abbreviation for Friday */
msgctxt "list friday"
msgid "F"
msgstr "R"
#. Translators: Event list abbreviation for Saturday
#. Translators: Event list abbreviation for Saturday */
msgctxt "list saturday"
msgid "S"
msgstr "L"
msgid "calendar:MY"
msgstr "Minu"
msgid "Previous month"
msgstr "Eelmine kuu"
msgid "Next month"
msgstr "Järgmine kuu"
#. Translators: Text to show if there are no events
#. Translators: Text to show if there are no events */
msgid "Nothing Scheduled"
msgstr "Ühtegi sündmust pole plaanitud"
#. Translators: Shown on calendar heading when selected day occurs on current year
#. Translators: Shown on calendar heading when selected day occurs on current year */
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d. %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#. Translators: Shown on calendar heading when selected day occurs on different year */
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d. %B %Y"
@ -454,7 +437,6 @@ msgstr "Väline ketas eemaldati"
msgid "Removable Devices"
msgstr "Eemaldatavad seadmed"
#, c-format
msgid "Open with %s"
msgstr "Ava programmiga %s"
@ -470,11 +452,9 @@ msgstr "Sisesta uuesti:"
msgid "Connect"
msgstr "Ühendu"
#. Cisco LEAP
msgid "Password: "
msgstr "Parool: "
#. static WEP
msgid "Key: "
msgstr "Võti: "
@ -490,7 +470,6 @@ msgstr "Teenus: "
msgid "Authentication required by wireless network"
msgstr "Juhtmeta võrgu jaoks on vajalik autentimine"
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"'%s'."
@ -518,7 +497,6 @@ msgstr "PIN: "
msgid "Mobile broadband network password"
msgstr "Mobiiliühenduse võrgu parool"
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "'%s' ühenduse loomiseks on vaja parooli."
@ -534,20 +512,16 @@ msgstr "Autendi"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#. * for instance. */
msgid "Sorry, that didn't work. Please try again."
msgstr "Kahjuks see ei sobinud. Palun proovi uuesti."
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
#. system-users for now as Empathy does.
msgid "Invitation"
msgstr "Kutse"
#. We got the TpContact
msgid "Call"
msgstr "Helista"
#. We got the TpContact
msgid "File Transfer"
msgstr "Failiülekanne"
@ -560,42 +534,35 @@ msgstr "Heli peale"
msgid "Mute"
msgstr "Heli maha"
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
#, no-c-format
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
msgstr "<b>Eile</b> <b>%H:%M</b>"
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30
#, no-c-format
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
msgid "<b>%A</b>, <b>%H:%M</b>"
msgstr "<b>%A</b>, <b>%H:%M</b>"
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"
#, no-c-format
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
msgstr "<b>%d. %B</b>, <b>%H:%M</b>"
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"
#, no-c-format
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
msgstr "<b>%d. %B %Y</b>, <b>%H:%M</b>"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#, c-format
#. IM name. */
msgid "%s is now known as %s"
msgstr "%s nimi on nüüd %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#, c-format
#. * room@jabber.org for example. */
msgid "Invitation to %s"
msgstr "Kutse: %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#, c-format
#. * for example. */
msgid "%s is inviting you to join %s"
msgstr "%s kutsub sind liituma: %s"
@ -605,17 +572,15 @@ msgstr "Keeldu"
msgid "Accept"
msgstr "Nõustu"
#. translators: argument is a contact name like Alice for example.
#, c-format
#. translators: argument is a contact name like Alice for example. */
msgid "Video call from %s"
msgstr "%s tahab alustada videokõnet"
#. translators: argument is a contact name like Alice for example.
#, c-format
#. translators: argument is a contact name like Alice for example. */
msgid "Call from %s"
msgstr "%s helistab"
#. translators: this is a button label (verb), not a noun
#. translators: this is a button label (verb), not a noun */
msgid "Answer"
msgstr "Vasta"
@ -623,13 +588,11 @@ msgstr "Vasta"
#. * the contact's alias and the second one is the
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#, c-format
#. */
msgid "%s is sending you %s"
msgstr "%s saadab sulle %s"
#. To translators: The parameter is the contact's alias
#, c-format
#. To translators: The parameter is the contact's alias */
msgid "%s would like permission to see when you are online"
msgstr "%s palub sinu luba, et näha, kui sa oled võrgus"
@ -713,8 +676,7 @@ msgid "Internal error"
msgstr "Sisemine viga"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#, c-format
#. * name@jabber.org for example. */
msgid "Unable to connect to %s"
msgstr "Pole võimalik ühenduda võrguga %s"
@ -730,8 +692,6 @@ msgstr "Aknad"
msgid "Show Applications"
msgstr "Rakenduste kuvamine"
#. Translators: this is the name of the dock/favorites area on
#. the left of the overview
msgid "Dash"
msgstr "Dokk"
@ -746,11 +706,10 @@ msgstr "Kuupäeva ja kella sätted"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#. */
msgid "%A %B %e, %Y"
msgstr "%A, %d. %B %Y"
#, c-format
msgctxt "title"
msgid "Log Out %s"
msgstr "%s väljalogimine"
@ -759,13 +718,11 @@ msgctxt "title"
msgid "Log Out"
msgstr "Väljalogimine"
#, c-format
msgid "%s will be logged out automatically in %d second."
msgid_plural "%s will be logged out automatically in %d seconds."
msgstr[0] "%s logitakse %d sekundi pärast automaatselt välja."
msgstr[1] "%s logitakse %d sekundi pärast automaatselt välja."
#, c-format
msgid "You will be logged out automatically in %d second."
msgid_plural "You will be logged out automatically in %d seconds."
msgstr[0] "Sind logitakse %d sekundi pärast automaatselt välja."
@ -779,7 +736,6 @@ msgctxt "title"
msgid "Power Off"
msgstr "Väljalülitamine"
#, c-format
msgid "The system will power off automatically in %d second."
msgid_plural "The system will power off automatically in %d seconds."
msgstr[0] "%d sekundi pärast lülitub süsteem automaatselt välja."
@ -797,7 +753,6 @@ msgctxt "title"
msgid "Restart"
msgstr "Taaskäivitamine"
#, c-format
msgid "The system will restart automatically in %d second."
msgid_plural "The system will restart automatically in %d seconds."
msgstr[0] "Süsteem taaskäivitub automaatselt %d sekundi pärast."
@ -807,7 +762,6 @@ msgctxt "title"
msgid "Restart & Install Updates"
msgstr "Taaskäivitamine ja uuenduste paigaldamine"
#, c-format
msgid "The system will automatically restart and install updates in %d second."
msgid_plural ""
"The system will automatically restart and install updates in %d seconds."
@ -824,20 +778,17 @@ msgstr "Mõned rakendused on tegevuses või on neis salvestamata asju."
msgid "Other users are logged in."
msgstr "Teised kasutajad on sisse logitud."
#. Translators: Remote here refers to a remote session, like a ssh login
#, c-format
#. Translators: Remote here refers to a remote session, like a ssh login */
msgid "%s (remote)"
msgstr "%s (kaugühendus)"
#. Translators: Console here refers to a tty like a VT console
#, c-format
#. Translators: Console here refers to a tty like a VT console */
msgid "%s (console)"
msgstr "%s (konsool)"
msgid "Install"
msgstr "Paigalda"
#, c-format
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Kas laadida alla ja paigaldada '%s' aadressilt extensions.gnome.org?"
@ -847,8 +798,7 @@ msgstr "Klaviatuur"
msgid "No extensions installed"
msgstr "Ühtegi laiendust pole paigaldatud"
#. Translators: argument is an extension UUID.
#, c-format
#. Translators: argument is an extension UUID. */
msgid "%s has not emitted any errors."
msgstr "%s ei ole väljastanud ühtegi veateadet."
@ -909,7 +859,6 @@ msgctxt "program"
msgid "Unknown"
msgstr "Tundmatu"
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "%d uus sõnum"
@ -924,7 +873,7 @@ msgstr "Ülevaade"
#. Translators: this is the text displayed
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters.
#. characters. */
msgid "Type to search…"
msgstr "Otsing…"
@ -932,21 +881,13 @@ msgid "Quit"
msgstr "Sulge"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#. in your language, you can use the word for "Overview". */
msgid "Activities"
msgstr "Tegevused"
msgid "Settings Menu"
msgstr "Sätete menüü"
msgid "Top Bar"
msgstr "Ülemine riba"
#. Translators: this MUST be either "toggle-switch-us"
#. (for toggle switches containing the English words
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
@ -957,11 +898,10 @@ msgid "Close"
msgstr "Sulge"
#. Translators: This is a time format for a date in
#. long format
#. long format */
msgid "%A, %B %d"
msgstr "%A, %d. %B"
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "%d uus märguanne"
@ -973,13 +913,6 @@ msgstr "Lukusta"
msgid "GNOME needs to lock the screen"
msgstr "GNOME peab ekraani lukustama"
#. We could not become modal, so we can't activate the
#. screenshield. The user is probably very upset at this
#. point, but any application using global grabs is broken
#. Just tell him to stop using this app
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
msgid "Unable to lock"
msgstr "Pole võimalik lukustada"
@ -1043,8 +976,6 @@ msgstr "Kõrgkontrastne"
msgid "Large Text"
msgstr "Suur tekst"
#. The Bluetooth menu only appears when Bluetooth is in use,
#. so just statically build it with a "Turn Off" menu item.
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1054,17 +985,14 @@ msgstr "Lülita välja"
msgid "Bluetooth Settings"
msgstr "Bluetoothi sätted"
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d ühendatud seade"
msgstr[1] "%d ühendatud seadet"
#, c-format
msgid "Authorization request from %s"
msgstr "Autoriseerimise päring seadmelt %s"
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Seade '%s' tahab selle arvutiga paarduda"
@ -1074,7 +1002,6 @@ msgstr "Luba"
msgid "Deny"
msgstr "Keela"
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Seade %s soovib ligipääsu teenusele '%s'"
@ -1087,24 +1014,21 @@ msgstr "Luba ainult seekord"
msgid "Reject"
msgstr "Lükka tagasi"
#. Translators: argument is the device short name
#, c-format
#. Translators: argument is the device short name */
msgid "Pairing confirmation for %s"
msgstr "Paardumise kinnitus seadmele %s"
#, c-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "Palun kontrolli, kas parool '%06d' kattub seadme parooliga."
#. Translators: this is the verb, not the noun
#. Translators: this is the verb, not the noun */
msgid "Matches"
msgstr "Kattub"
msgid "Does not match"
msgstr "Ei kattu"
#, c-format
msgid "Pairing request for %s"
msgstr "Seadmega %s paardumise päring"
@ -1117,9 +1041,6 @@ msgstr "Olgu"
msgid "Brightness"
msgstr "Heledus"
msgid "Show Keyboard Layout"
msgstr "Klaviatuuripaigutuse kuvamine"
msgid "<unknown>"
msgstr "<tundmatu>"
@ -1130,7 +1051,7 @@ msgid "Network Settings"
msgstr "Võrgusätted"
#. 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)
#. under NetworkManager's control (and thus cannot be used in the menu) */
msgid "unmanaged"
msgstr "pole hallatud"
@ -1140,17 +1061,17 @@ msgstr "ühenduse katkestamine..."
msgid "connecting..."
msgstr "ühendumine..."
#. Translators: this is for network connections that require some kind of key or password
#. Translators: this is for network connections that require some kind of key or password */
msgid "authentication required"
msgstr "vajalik on autentimine"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#. module, which is missing */
msgid "firmware missing"
msgstr "püsivara puudub"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#. is disabled by rfkill, or it has no coverage */
msgid "unavailable"
msgstr "pole saadaval"
@ -1193,25 +1114,15 @@ msgstr "Toitesätted..."
msgid "Fully Charged"
msgstr "Täiesti täis"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
msgid "Estimating…"
msgstr "Andmete kogumine…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#, c-format
msgid "%d\\u2236%02d Remaining (%d%%)"
msgstr "%d\\u2236%02d jäänud (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d jäänud (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#, c-format
msgid "%d\\u2236%02d Until Full (%d%%)"
msgstr "%d\\u2236%02d täitumiseni (%d%%)"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d täitumiseni (%d%%)"
#. 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.
msgid "Airplane Mode"
msgstr "Lennukirežiim"
@ -1254,7 +1165,6 @@ msgstr "Rakendused"
msgid "Search"
msgstr "Otsing"
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
"%s"
@ -1262,11 +1172,9 @@ msgstr ""
"Vabandust, tänaseks tarkuseteri pole:\n"
"%s"
#, c-format
msgid "%s the Oracle says"
msgstr "Oraakel %s ütleb"
#, c-format
msgid "'%s' is ready"
msgstr "'%s' on valmis"
@ -1275,14 +1183,13 @@ msgstr "Kas tahad säilitada need kuvasätted?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
#.
#. */
msgid "Revert Settings"
msgstr "Taasta sätted"
msgid "Keep Changes"
msgstr "Säilita muudatused"
#, c-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
msgstr[0] "Sätete muudatused ennistatakse %d sekundi pärast"
@ -1335,6 +1242,26 @@ msgstr "Parool ei saa olla tühi"
msgid "Authentication dialog was dismissed by the user"
msgstr "Kasutaja katkestas autentimisdialoogi"
#~ msgid "There was an error loading the preferences dialog for %s:"
#~ msgstr "%s jaoks eelistuste dialoogi laadimisel esines viga:"
#~ msgid "Extension"
#~ msgstr "Laiendus"
#~ 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"
#~ msgid "Show Keyboard Layout"
#~ msgstr "Klaviatuuripaigutuse kuvamine"
#~ msgid "Settings Menu"
#~ msgstr "Sätete menüü"
#~ msgid "Screenshots"
#~ msgstr "Ekraanipildid"

461
po/eu.po

File diff suppressed because it is too large Load Diff

132
po/fr.po
View File

@ -18,8 +18,8 @@ msgstr ""
"Project-Id-Version: gnome-shell master fr\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2013-09-13 20:04+0000\n"
"PO-Revision-Date: 2013-09-14 19:08+0200\n"
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
"PO-Revision-Date: 2013-09-23 15:47+0200\n"
"Last-Translator: Mathieu Stumpf <psychoslave@culture-libre.org>\n"
"Language-Team: français <gnomefr@traduc.org>\n"
"Language: \n"
@ -284,6 +284,10 @@ msgstr "Les espaces de travail sont gérés dynamiquement"
msgid "Workspaces only on primary monitor"
msgstr "Les espaces de travail sont uniquement sur l'écran principal"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Retarder les changements de focus en mode souris jusqu'à ce que le pointeur arrête de bouger"
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -301,10 +305,10 @@ msgstr ""
"Sélectionnez une extension à configurer en utilisant la boîte combinée ci-"
"dessus."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
msgid "Cancel"
msgstr "Annuler"
@ -343,8 +347,8 @@ msgstr "(par ex. utilisateur ou %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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "Nom d'utilisateur : "
@ -380,27 +384,27 @@ msgstr "Impossible d'analyser la commande :"
msgid "Execution of '%s' failed:"
msgstr "Exécution de « %s » impossible :"
#: ../js/ui/appDisplay.js:598
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "Les applications fréquemment utilisées apparaîtront ici"
#: ../js/ui/appDisplay.js:714
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "Fréquemment utilisées"
#: ../js/ui/appDisplay.js:721
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "Toutes"
#: ../js/ui/appDisplay.js:1516
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "Nouvelle fenêtre"
#: ../js/ui/appDisplay.js:1519 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Enlever des favoris"
#: ../js/ui/appDisplay.js:1520
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "Ajouter aux favoris"
@ -414,7 +418,8 @@ msgstr "%s a été ajouté à vos favoris."
msgid "%s has been removed from your favorites."
msgstr "%s a été supprimé de vos favoris."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
#: ../js/ui/status/system.js:325
msgid "Settings"
msgstr "Paramètres"
@ -621,50 +626,50 @@ msgstr "Ouvrir avec %s"
msgid "Eject"
msgstr "Éjecter"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Mot de passe :"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "Saisissez à nouveau :"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
msgid "Connect"
msgstr "Se connecter"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "Mot de passe : "
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "Clé : "
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "Identité : "
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "Mot de passe de la clé privée : "
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "Service : "
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "L'authentification est requise par le réseau sans fil"
#: ../js/ui/components/networkAgent.js:305
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
@ -673,35 +678,35 @@ msgstr ""
"Il faut un mot de passe ou une clé de chiffrement pour accéder au réseau "
"sans fil « %s »"
#: ../js/ui/components/networkAgent.js:309
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "Authentification filaire 802.1X"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "Nom du réseau : "
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "Authentification DSL"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "Code PIN requis"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr "Un code PIN est nécessaire pour les téléphones mobiles à large bande"
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN : "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "Mot de passe du téléphone mobile à large bande"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "Un mot de passe est requis pour se connecter à « %s »."
@ -1194,11 +1199,11 @@ msgstr "Menu du tiroir de messagerie"
msgid "No Messages"
msgstr "Aucun message"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "Tiroir de messagerie"
#: ../js/ui/messageTray.js:2787
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "Informations du système"
@ -1240,10 +1245,6 @@ msgstr "Quitter"
msgid "Activities"
msgstr "Activités"
#: ../js/ui/panel.js:807
msgid "Settings Menu"
msgstr "Menu des paramètres"
#: ../js/ui/panel.js:903
msgid "Top Bar"
msgstr "Barre supérieure"
@ -1379,9 +1380,9 @@ msgstr "Grand texte"
#. 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1394,56 +1395,56 @@ msgstr "Éteindre"
msgid "Bluetooth Settings"
msgstr "Paramètres Bluetooth"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d périphérique connecté"
msgstr[1] "%d périphériques connectés"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "Demande d'autorisation de « %s »"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Le périphérique « %s » souhaite se connecter à cet ordinateur"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "Autoriser"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "Refuser"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Le périphérique %s souhaite accéder au service « %s »"
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "Toujours accorder l'accès"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "Accorder l'accès cette fois uniquement"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "Refuser"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Confirmation de la demande de liaison pour « %s »"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
@ -1452,26 +1453,26 @@ msgstr ""
"du périphérique."
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "Correspond"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "Ne correspond pas"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "Demande de liaison pour « %s »"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr ""
"Veuillez saisir le numéro d'identification personnel (PIN) mentionné sur le "
"périphérique."
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "Valider"
@ -1555,15 +1556,15 @@ msgstr "Activer"
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1307
msgid "Network Manager"
msgstr "Gestionnaire de réseau"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1346
msgid "Connection failed"
msgstr "Échec de connexion"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1347
msgid "Activation of network connection failed"
msgstr "L'activation de la connexion réseau a échoué"
@ -1758,6 +1759,9 @@ msgstr "Le mot de passe ne peut pas être vide"
msgid "Authentication dialog was dismissed by the user"
msgstr "La fenêtre d'authentification a été écartée par l'utilisateur"
#~ msgid "Settings Menu"
#~ msgstr "Menu des paramètres"
#~ msgid "Screenshots"
#~ msgstr "Captures d'écran"

447
po/gl.po

File diff suppressed because it is too large Load Diff

399
po/he.po

File diff suppressed because it is too large Load Diff

165
po/id.po
View File

@ -10,8 +10,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: 2013-09-02 19:28+0000\n"
"PO-Revision-Date: 2013-09-10 13:06+0700\n"
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
"PO-Revision-Date: 2013-09-23 21:24+0700\n"
"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
"Language-Team: Indonesian <gnome@i15n.org>\n"
"Language: id\n"
@ -51,6 +51,7 @@ msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Manajemen jendela dan peluncuran aplikasi"
@ -63,6 +64,10 @@ msgstr "Preferensi Ekstensi GNOME Shell"
msgid "Configure GNOME Shell Extensions"
msgstr "Konfigurasi Ekstensi GNOME Shell"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (kompositor wayland)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
msgstr ""
@ -265,6 +270,11 @@ msgstr "Ruang kerja dikelola secara dinamis"
msgid "Workspaces only on primary monitor"
msgstr "Ruang kerja hanya pada monitor primer"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Tunda perubahan fokus dalam mode tetikus sampai penunjuk berhenti bergerak"
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -278,10 +288,10 @@ msgstr "Ekstensi"
msgid "Select an extension to configure using the combobox above."
msgstr "Pilih ekstensi yang ingin dikonfigurasi pada kotak di atas."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
msgid "Cancel"
msgstr "Batal"
@ -320,8 +330,8 @@ msgstr "(cth., pengguna dari %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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "Nama pengguna: "
@ -342,42 +352,42 @@ msgstr "Galat otentikasi"
msgid "(or swipe finger)"
msgstr "(atau gesekkan jari)"
#: ../js/misc/util.js:97
#: ../js/misc/util.js:98
msgid "Command not found"
msgstr "Perintah tidak ditemukan"
#. Replace "Error invoking GLib.shell_parse_argv: " with
#. something nicer
#: ../js/misc/util.js:130
#: ../js/misc/util.js:131
msgid "Could not parse command:"
msgstr "Tidak dapat mengurai perintah:"
#: ../js/misc/util.js:138
#: ../js/misc/util.js:139
#, c-format
msgid "Execution of '%s' failed:"
msgstr "Eksekusi '%s' gagal:"
#: ../js/ui/appDisplay.js:578
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "Aplikasi yang sering dipakai akan muncul di sini"
#: ../js/ui/appDisplay.js:694
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "Sering"
#: ../js/ui/appDisplay.js:701
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "Semua"
#: ../js/ui/appDisplay.js:1488
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "Jendela Baru"
#: ../js/ui/appDisplay.js:1491 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Hapus dari Favorit"
#: ../js/ui/appDisplay.js:1492
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "Tambah ke Favorit"
@ -391,7 +401,8 @@ msgstr "%s telah ditambahkan ke favorit Anda."
msgid "%s has been removed from your favorites."
msgstr "%s telah dihapus dari favorit Anda."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
#: ../js/ui/status/system.js:325
msgid "Settings"
msgstr "Pengaturan"
@ -577,50 +588,50 @@ msgstr "Buka dengan %s"
msgid "Eject"
msgstr "Keluarkan"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Sandi:"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "Ketik lagi:"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
msgid "Connect"
msgstr "Sambung"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "Sandi: "
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "Tombol: "
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "Identitas: "
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "Sandi kunci privat: "
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "Layanan: "
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "Otentikasi dibutuhkan oleh jaringan nirkabel"
#: ../js/ui/components/networkAgent.js:305
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
@ -629,35 +640,35 @@ msgstr ""
"Sandi atau kunci penyandian diperlukan untuk mengakses jaringan nirkabel "
"'%s'."
#: ../js/ui/components/networkAgent.js:309
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "Otentikasi 802.1X kabel"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "Nama jaringan: "
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "Otentikasi DSL"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "Perlu kode PIN"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr "Kode PIN dibutuhkan untuk perangkat data seluler"
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN: "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "Sandi jaringan data seluler"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "Sebuah kata sandi dibutuhkan untuk menyambung ke '%s'."
@ -922,7 +933,7 @@ msgstr "Tilik akun"
msgid "Unknown reason"
msgstr "Alasan yang tidak diketahui"
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:96
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:100
msgid "Windows"
msgstr "Jendela"
@ -1063,7 +1074,7 @@ msgstr "Pasang"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Unduh dan pasang '%s' dari extensions.gnome.org?"
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:334
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
msgid "Keyboard"
msgstr "Papan Ketik"
@ -1139,11 +1150,11 @@ msgstr "Menu Baki"
msgid "No Messages"
msgstr "Tiada Pesan"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "Baki Pesan"
#: ../js/ui/messageTray.js:2786
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "Informasi Sistem"
@ -1174,21 +1185,17 @@ msgstr "Gambaran"
msgid "Type to search…"
msgstr "Ketik untuk mencari…"
#: ../js/ui/panel.js:516
#: ../js/ui/panel.js:518
msgid "Quit"
msgstr "Keluar"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:568
#: ../js/ui/panel.js:570
msgid "Activities"
msgstr "Aktivitas"
#: ../js/ui/panel.js:805
msgid "Settings Menu"
msgstr "Menu Pengaturan"
#: ../js/ui/panel.js:892
#: ../js/ui/panel.js:903
msgid "Top Bar"
msgstr "Bar Atas"
@ -1198,7 +1205,7 @@ msgstr "Bar Atas"
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:226
#: ../js/ui/popupMenu.js:233
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
@ -1226,7 +1233,7 @@ msgstr[0] "%d pemberitahuan baru"
msgid "Lock"
msgstr "Kunci"
#: ../js/ui/screenShield.js:703
#: ../js/ui/screenShield.js:704
msgid "GNOME needs to lock the screen"
msgstr "GNOME perlu mengunci layar"
@ -1237,11 +1244,11 @@ msgstr "GNOME perlu mengunci layar"
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
#: ../js/ui/screenShield.js:830 ../js/ui/screenShield.js:1296
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
msgid "Unable to lock"
msgstr "Tak bisa mengunci"
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
#: ../js/ui/screenShield.js:832 ../js/ui/screenShield.js:1298
msgid "Lock was blocked by an application"
msgstr "Kunci diblokir oleh suatu aplikasi"
@ -1323,9 +1330,9 @@ msgstr "Teks Besar"
#. 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1338,55 +1345,55 @@ msgstr "Matikan"
msgid "Bluetooth Settings"
msgstr "Pengaturan Bluetooth"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d Perangkat Tersambung"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "Permintaan otorisasi dari %s"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Perangkat %s ingin berpasangan dengan komputer ini"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "Ijinkan"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "Tolak"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Perangkat %s ingin mengakses layanan '%s'"
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "Selalu berikan akses"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "Hanya untuk saat ini"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "Tolak"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Konfirmasi berpasangan untuk %s"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
@ -1394,24 +1401,24 @@ msgstr ""
"Harap konfirmasi apakah Passkey '%06d' sesuai dengan salah satu perangkat."
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "Cocok"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "Tidak cocok"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "Permintaan berpasangan untuk %s"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr "Ketikkan PIN yang disebutkan oleh perangkat."
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "Oke"
@ -1419,7 +1426,7 @@ msgstr "Oke"
msgid "Brightness"
msgstr "Kecerahan"
#: ../js/ui/status/keyboard.js:404
#: ../js/ui/status/keyboard.js:403
msgid "Show Keyboard Layout"
msgstr "Tampilkan Tata Letak Papan Tik"
@ -1495,15 +1502,15 @@ msgstr "Nyalakan"
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1307
msgid "Network Manager"
msgstr "Manajer Jaringan"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1346
msgid "Connection failed"
msgstr "Koneksi gagal"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1347
msgid "Activation of network connection failed"
msgstr "Aktivasi koneksi jaringan gagal"
@ -1589,11 +1596,11 @@ msgstr "Masuk sebagai pengguna lain"
msgid "Unlock Window"
msgstr "Buka Kunci Jendela"
#: ../js/ui/viewSelector.js:100
#: ../js/ui/viewSelector.js:104
msgid "Applications"
msgstr "Aplikasi"
#: ../js/ui/viewSelector.js:104
#: ../js/ui/viewSelector.js:108
msgid "Search"
msgstr "Cari"

395
po/it.po

File diff suppressed because it is too large Load Diff

167
po/ja.po
View File

@ -13,8 +13,8 @@ msgid ""
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: 2013-09-06 21:55+0000\n"
"PO-Revision-Date: 2013-09-07 22:28+0900\n"
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
"PO-Revision-Date: 2013-09-23 23:30+0900\n"
"Last-Translator: Jiro Matsuzawa <jmatsuzawa@gnome.org>\n"
"Language-Team: Japanese <gnome-translation@gnome.gr.jp>\n"
"Language: ja\n"
@ -52,6 +52,7 @@ msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "ウィンドウ管理とアプリケーションの起動"
@ -64,6 +65,10 @@ msgstr "GNOME Shell 拡張機能設定"
msgid "Configure GNOME Shell Extensions"
msgstr "GNOME Shell 拡張機能の設定を行います"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (Wayland コンポジター)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
msgstr "Alt-F2 から開発・テスト用の内部ツールを利用可能にする"
@ -212,6 +217,10 @@ msgstr "ワークスペースを動的に管理する"
msgid "Workspaces only on primary monitor"
msgstr "プライマリモニターのみワークスペースを切り替える"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "マウスモードにおけるフォーカス遷移をポインターが停止するまで遅延させる"
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -225,10 +234,10 @@ msgstr "拡張機能"
msgid "Select an extension to configure using the combobox above."
msgstr "設定する拡張機能を上部のコンボボックスから選択してください。"
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
msgid "Cancel"
msgstr "キャンセル"
@ -267,8 +276,8 @@ msgstr "(たとえば、user あるいは %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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "ユーザー名: "
@ -289,42 +298,42 @@ msgstr "認証エラー"
msgid "(or swipe finger)"
msgstr "(あるいは指でスワイプする)"
#: ../js/misc/util.js:97
#: ../js/misc/util.js:98
msgid "Command not found"
msgstr "コマンドが見つかりません"
#. Replace "Error invoking GLib.shell_parse_argv: " with
#. something nicer
#: ../js/misc/util.js:130
#: ../js/misc/util.js:131
msgid "Could not parse command:"
msgstr "次のコマンドは解析できません:"
#: ../js/misc/util.js:138
#: ../js/misc/util.js:139
#, c-format
msgid "Execution of '%s' failed:"
msgstr "'%s'の実行に失敗しました:"
#: ../js/ui/appDisplay.js:573
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "よく使うアプリケーションがここに表示されます"
#: ../js/ui/appDisplay.js:689
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "常用"
#: ../js/ui/appDisplay.js:696
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "すべて"
#: ../js/ui/appDisplay.js:1491
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "新しいウィンドウで開く"
#: ../js/ui/appDisplay.js:1494 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "お気に入りから削除"
#: ../js/ui/appDisplay.js:1495
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "お気に入りに追加"
@ -338,7 +347,8 @@ msgstr "%s をお気に入りに追加しました。"
msgid "%s has been removed from your favorites."
msgstr "%s をお気に入りから削除しました。"
#: ../js/ui/backgroundMenu.js:19 ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
#: ../js/ui/status/system.js:325
msgid "Settings"
msgstr "設定"
@ -524,83 +534,83 @@ msgstr "%s で開く"
msgid "Eject"
msgstr "取り出し"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "パスワード:"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "再入力:"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
msgid "Connect"
msgstr "接続"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "パスワード: "
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "キー: "
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "識別子: "
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "プライベートキーパスワード: "
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "サービス: "
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "無線ネットワークでは認証が要求されます"
#: ../js/ui/components/networkAgent.js:305
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid "Passwords or encryption keys are required to access the wireless network '%s'."
msgstr "無線ネットワーク '%s' にアクセスするにはパスワードか、または暗号化キーが必要です。"
#: ../js/ui/components/networkAgent.js:309
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "有線 802.1X の認証"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "ネットワーク名: "
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "DSL 認証"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "PIN コードが必要です"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr "モバイルブロードバンドデバイスには PIN コードが必要です"
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN 番号: "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "モバイルブロードバンドネットワークのパスワード"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "'%s' への接続にパスワードが必要です。"
@ -856,7 +866,7 @@ msgstr "アカウントを表示"
msgid "Unknown reason"
msgstr "原因不明"
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:96
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:100
msgid "Windows"
msgstr "ウィンドウ"
@ -994,7 +1004,7 @@ msgstr "インストール"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "extensions.gnome.org から '%s' をダウンロードしてインストールしますか?"
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:334
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
msgid "Keyboard"
msgstr "キーボード"
@ -1070,11 +1080,11 @@ msgstr "トレイメニュー"
msgid "No Messages"
msgstr "メッセージなし"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "メッセージトレイ"
#: ../js/ui/messageTray.js:2787
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "システム情報"
@ -1105,21 +1115,17 @@ msgstr "アクティビティ画面"
msgid "Type to search…"
msgstr "検索ワードを入力…"
#: ../js/ui/panel.js:516
#: ../js/ui/panel.js:518
msgid "Quit"
msgstr "終了"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:568
#: ../js/ui/panel.js:570
msgid "Activities"
msgstr "アクティビティ"
#: ../js/ui/panel.js:805
msgid "Settings Menu"
msgstr "設定メニュー"
#: ../js/ui/panel.js:901
#: ../js/ui/panel.js:903
msgid "Top Bar"
msgstr "トップバー"
@ -1128,7 +1134,7 @@ msgstr "トップバー"
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:226
#: ../js/ui/popupMenu.js:233
msgid "toggle-switch-us"
msgstr "toggle-switch-us"
@ -1156,7 +1162,7 @@ msgstr[0] "%d 件の新しい通知"
msgid "Lock"
msgstr "ロック"
#: ../js/ui/screenShield.js:703
#: ../js/ui/screenShield.js:704
msgid "GNOME needs to lock the screen"
msgstr "画面をロックする必要があります"
@ -1167,11 +1173,11 @@ msgstr "画面をロックする必要があります"
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
#: ../js/ui/screenShield.js:830 ../js/ui/screenShield.js:1296
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
msgid "Unable to lock"
msgstr "ロックできません"
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
#: ../js/ui/screenShield.js:832 ../js/ui/screenShield.js:1298
msgid "Lock was blocked by an application"
msgstr "アプリケーションによってロックがブロックされました"
@ -1253,9 +1259,9 @@ msgstr "大きな文字"
#. 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1268,78 +1274,78 @@ msgstr "オフにする"
msgid "Bluetooth Settings"
msgstr "Bluetooth の設定"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "接続デバイス: %d台"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "%s からアクセス許可の要求"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "デバイス %s がこのコンピューターとのペアリングを要求しています"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "許可"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "拒否"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "デバイス '%s' が サービス '%s' へのアクセスを要求しています"
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "許可"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "今回のみ許可"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "拒否"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "%s からペアリングの確認"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
msgid "Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "'%06d' がデバイスのパスキーと一致しているか確認してください。"
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "一致"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "不一致"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "%s からペアリングの要求"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr "デバイスの PIN コードを入力してください。"
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "OK"
@ -1347,7 +1353,7 @@ msgstr "OK"
msgid "Brightness"
msgstr "明るさ"
#: ../js/ui/status/keyboard.js:404
#: ../js/ui/status/keyboard.js:403
msgid "Show Keyboard Layout"
msgstr "キーボードレイアウトの表示"
@ -1423,15 +1429,15 @@ msgstr "オンにする"
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1307
msgid "Network Manager"
msgstr "ネットワークマネージャー"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1346
msgid "Connection failed"
msgstr "接続失敗"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1347
msgid "Activation of network connection failed"
msgstr "ネットワーク接続を有効にできません"
@ -1517,11 +1523,11 @@ msgstr "他のユーザーでログイン"
msgid "Unlock Window"
msgstr "ロック解除"
#: ../js/ui/viewSelector.js:100
#: ../js/ui/viewSelector.js:104
msgid "Applications"
msgstr "アプリケーション"
#: ../js/ui/viewSelector.js:104
#: ../js/ui/viewSelector.js:108
msgid "Search"
msgstr "検索"
@ -1622,6 +1628,9 @@ msgstr "パスワードを空白にすることはできません。"
msgid "Authentication dialog was dismissed by the user"
msgstr "認証ダイアログはユーザーに拒否されました"
#~ msgid "Settings Menu"
#~ msgstr "設定メニュー"
#~ msgid "Internally used to store the last IM presence explicitly set by the user. The value here is from the TpConnectionPresenceType enumeration."
#~ msgstr "ユーザーにより明示的に設定された最新の IM プレゼンスを保存するのに内部的に使用されます。ここは TpConnectionPresenceType 列挙型の値になります。"

122
po/kk.po
View File

@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: 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: 2013-09-14 18:10+0000\n"
"PO-Revision-Date: 2013-09-15 13:44+0600\n"
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
"PO-Revision-Date: 2013-09-24 06:33+0600\n"
"Last-Translator: Baurzhan Muftakhidinov <baurthefirst@gmail.com>\n"
"Language-Team: Kazakh <kk_KZ@googlegroups.com>\n"
"Language: kk\n"
@ -267,6 +267,10 @@ msgstr "Жұмыс орындары динамикалы түрде басқар
msgid "Workspaces only on primary monitor"
msgstr "Жұмыс орындар тек біріншілік мониторда"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Тышқан режиміндегі фокусты ауыстыру курсор тоқтағанша дейін кідірту"
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -280,10 +284,10 @@ msgstr "Кеңейту"
msgid "Select an extension to configure using the combobox above."
msgstr "Жоғарыдағы ашылмалы тізімнен баптау үшін кеңейтуді таңдаңыз."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
msgid "Cancel"
msgstr "Бас тарту"
@ -322,8 +326,8 @@ msgstr "(мыс., пайдаланушы не %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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "Пайдаланушы аты:"
@ -359,27 +363,27 @@ msgstr "Команданы талдау мүмкін емес:"
msgid "Execution of '%s' failed:"
msgstr "'%s' жөнелту сәтсіз:"
#: ../js/ui/appDisplay.js:598
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "Жиі қолданылатын қолданбалар осында көрінеді"
#: ../js/ui/appDisplay.js:714
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "Жиі"
#: ../js/ui/appDisplay.js:721
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "Барлық"
#: ../js/ui/appDisplay.js:1516
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "Жаңа терезе"
#: ../js/ui/appDisplay.js:1519 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Таңдамалылардан өшіру"
#: ../js/ui/appDisplay.js:1520
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "Таңдамалыларға қосу"
@ -580,85 +584,85 @@ msgstr "%s көмегімен ашу"
msgid "Eject"
msgstr "Шығару"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Пароль:"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "Қайтадан енгізіңіз:"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
msgid "Connect"
msgstr "Байланысу"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "Пароль:"
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "Кілт:"
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "Анықтағыш:"
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "Жеке кілт паролі:"
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "Қызмет:"
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "Сымсыз желісі аутентификацияны талап етеді"
#: ../js/ui/components/networkAgent.js:305
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"'%s'."
msgstr "'%s' сымсыз желісіне қатынау үшін парольдер не шифрлеу кілттері керек."
#: ../js/ui/components/networkAgent.js:309
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "Сымды 802.1X аутентификациясы"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "Желі аты:"
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "DSL аутентификациясы"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "PIN коды керек"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr "Сымсыз кеңжолақты құрылғы үшін PIN коды керек"
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN: "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "Сымсыз кеңжолақты желісінің паролі"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "'%s' үшін байланысты орнату үшін пароль керек."
@ -1139,11 +1143,11 @@ msgstr "Трей мәзірі"
msgid "No Messages"
msgstr "Хабарламалар жоқ"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "Жүйелік трей"
#: ../js/ui/messageTray.js:2787
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "Жүйелік ақпарат"
@ -1318,9 +1322,9 @@ msgstr "Үлкен мәтін"
#. 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1333,79 +1337,79 @@ msgstr "Сөндіру"
msgid "Bluetooth Settings"
msgstr "Bluetooth баптаулары"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d байланысқан құрылғы"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "%s жіберген авторизация сұранымы"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "%s құрылғысы бұл компьютермен пар болғысы кеп тұр"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "Рұқсат ету"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "Тайдыру"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "%s құрылғысы '%s' қызметін қатынағысы кеп тұр"
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "Әрқашан рұқсат ету"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "Тек осы ретке рұқсат ету"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "Болдырмау"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "%s жіберген парлау растауы"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "'%06d' кілт коды құрылғыдағы кодымен сәйкес келетінін растаңыз."
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "Сәйкес"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "Сәйкес емес"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "%s үшін парлау сұранымы"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr "Құрылғыда көрсетілген PIN кодын енгізіңіз."
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "ОК"
@ -1489,15 +1493,15 @@ msgstr "Іске қосу"
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1307
msgid "Network Manager"
msgstr "Желілер басқарушысы"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1346
msgid "Connection failed"
msgstr "Байланыс орнату сәтсіз"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1347
msgid "Activation of network connection failed"
msgstr "Желілік байланысты белсендіру сәтсіз"

383
po/lt.po

File diff suppressed because it is too large Load Diff

184
po/lv.po
View File

@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2013-09-02 19:28+0000\n"
"PO-Revision-Date: 2013-09-10 21:28+0300\n"
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
"PO-Revision-Date: 2013-09-26 23:29+0300\n"
"Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
"Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
"Language: lv\n"
@ -50,6 +50,7 @@ msgid "GNOME Shell"
msgstr "GNOME čaula"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Logu pārvaldība un lietotņu palaišana"
@ -62,6 +63,10 @@ msgstr "GNOME Shell paplašinājumu iestatījumi"
msgid "Configure GNOME Shell Extensions"
msgstr "Konfigurēt GNOME Shell paplašinājumus"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME čaula (wayland kompozitors)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
msgstr ""
@ -179,12 +184,10 @@ msgstr ""
"Taustiņu sasaiste, kas atver “Rādīt lietotnes” aktivitāšu pārskata skatu."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#| msgid "Keybinding to open the \"Show Applications\" view"
msgid "Keybinding to open the overview"
msgstr "Taustiņu sasaiste, kas atver pārskatu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#| msgid "Keybinding to open the \"Show Applications\" view"
msgid "Keybinding to open the Activities Overview."
msgstr "Taustiņu sasaiste, kas atver aktivitāšu pārskatu."
@ -259,6 +262,10 @@ msgstr "Darbvirsmas tiek pārvaldītas dinamiski"
msgid "Workspaces only on primary monitor"
msgstr "Darbvietas tikai uz galvenā monitora"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Peles režīmā aizkavēt fokusa izmaiņas, līdz rādītājs pārstāj kustēties"
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -272,10 +279,10 @@ msgstr "Paplašinājums"
msgid "Select an extension to configure using the combobox above."
msgstr "Izvēlieties konfigurējamo paplašinājumu no saraksta."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
msgid "Cancel"
msgstr "Atcelt"
@ -294,7 +301,6 @@ msgid "Sign In"
msgstr "Ierakstīties"
#: ../js/gdm/loginDialog.js:294
#| msgid "Switch Session"
msgid "Choose Session"
msgstr "Izvēlieties sesiju"
@ -315,8 +321,8 @@ msgstr "(piemēram, lietotājs vai %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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "Lietotājvārds: "
@ -337,42 +343,42 @@ msgstr "Autentifikācijas kļūda"
msgid "(or swipe finger)"
msgstr "(vai velciet pirkstu)"
#: ../js/misc/util.js:97
#: ../js/misc/util.js:98
msgid "Command not found"
msgstr "Komanda nav atrasta"
#. Replace "Error invoking GLib.shell_parse_argv: " with
#. something nicer
#: ../js/misc/util.js:130
#: ../js/misc/util.js:131
msgid "Could not parse command:"
msgstr "Neizdevās apstrādāt komandu:"
#: ../js/misc/util.js:138
#: ../js/misc/util.js:139
#, c-format
msgid "Execution of '%s' failed:"
msgstr "“%s” izpilde neizdevās:"
#: ../js/ui/appDisplay.js:578
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "Šeit parādīsies biežāk izmantotās lietotnes"
#: ../js/ui/appDisplay.js:694
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "Biežāk izmantotās"
#: ../js/ui/appDisplay.js:701
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "Visas"
#: ../js/ui/appDisplay.js:1488
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "Jauns logs"
#: ../js/ui/appDisplay.js:1491 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Izņemt no izlases"
#: ../js/ui/appDisplay.js:1492
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "Pievienot izlasei"
@ -386,7 +392,8 @@ msgstr "%s ir pievienots izlasei."
msgid "%s has been removed from your favorites."
msgstr "%s ir izņemts no izlases."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
#: ../js/ui/status/system.js:325
msgid "Settings"
msgstr "Iestatījumi"
@ -572,50 +579,50 @@ msgstr "Atvērt ar %s"
msgid "Eject"
msgstr "Izgrūst"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Parole:"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "Ierakstiet vēlreiz:"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
msgid "Connect"
msgstr "Savienot"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "Parole: "
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "Atslēga: "
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "Identitāte: "
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "Privātās atslēgas parole: "
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "Serviss: "
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "Bezvadu tīkls pieprasa autentifikāciju"
#: ../js/ui/components/networkAgent.js:305
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
@ -624,35 +631,35 @@ msgstr ""
"Lai piekļūtu bezvadu tīklam “%s”, ir nepieciešamas paroles vai šifrēšanas "
"atslēgas."
#: ../js/ui/components/networkAgent.js:309
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "Vadu 802.1X autentifikācija"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "Tīkla nosaukums: "
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "DSL autentifikācija"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "Nepieciešams PIN kods"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr "Mobilā platjoslas tīkla ierīcei ir vajadzīgs PIN kods"
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN: "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "Mobilās platjoslas tīkla parole"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "Lai savienotos ar “%s”, ir nepieciešama parole."
@ -918,7 +925,7 @@ msgstr "Skatīt kontu"
msgid "Unknown reason"
msgstr "Nezināms iemesls"
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:96
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:100
msgid "Windows"
msgstr "Logi"
@ -1020,15 +1027,12 @@ msgstr[1] "Sistēma tiks automātiski pārstartēta pēc %d sekundēm."
msgstr[2] "Sistēma tiks automātiski pārstartēta pēc %d sekundēm."
#: ../js/ui/endSessionDialog.js:112
#| msgid "Install Updates & Restart"
msgctxt "title"
msgid "Restart & Install Updates"
msgstr "Pārstartēt un instalēt atjauninājumus"
#: ../js/ui/endSessionDialog.js:114
#, c-format
#| msgid "The system will restart automatically in %d second."
#| msgid_plural "The system will restart automatically in %d seconds."
msgid "The system will automatically restart and install updates in %d second."
msgid_plural ""
"The system will automatically restart and install updates in %d seconds."
@ -1076,7 +1080,7 @@ msgstr "Instalēt"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Lejupielādēt un instalēt “%s” no extensions.gnome.org?"
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:334
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
msgid "Keyboard"
msgstr "Tastatūra"
@ -1152,11 +1156,11 @@ msgstr "Paplātes izvēlne"
msgid "No Messages"
msgstr "Nav ziņojumu"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "Ziņojumu paplāte"
#: ../js/ui/messageTray.js:2786
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "Sistēmas informācija"
@ -1189,22 +1193,17 @@ msgstr "Pārskats"
msgid "Type to search…"
msgstr "Rakstiet, lai meklētu…"
#: ../js/ui/panel.js:516
#: ../js/ui/panel.js:518
msgid "Quit"
msgstr "Iziet"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:568
#: ../js/ui/panel.js:570
msgid "Activities"
msgstr "Aktivitātes"
#: ../js/ui/panel.js:805
#| msgid "Settings"
msgid "Settings Menu"
msgstr "Iestatījumu izvēlne"
#: ../js/ui/panel.js:892
#: ../js/ui/panel.js:903
msgid "Top Bar"
msgstr "Augšējā josla"
@ -1213,7 +1212,7 @@ msgstr "Augšējā josla"
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:226
#: ../js/ui/popupMenu.js:233
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
@ -1243,7 +1242,7 @@ msgstr[2] "%d jaunu paziņojumu"
msgid "Lock"
msgstr "Bloķēt"
#: ../js/ui/screenShield.js:703
#: ../js/ui/screenShield.js:704
msgid "GNOME needs to lock the screen"
msgstr "GNOME vajag bloķēt ekrānu"
@ -1254,11 +1253,11 @@ msgstr "GNOME vajag bloķēt ekrānu"
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
#: ../js/ui/screenShield.js:830 ../js/ui/screenShield.js:1296
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
msgid "Unable to lock"
msgstr "Nevar bloķēt"
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
#: ../js/ui/screenShield.js:832 ../js/ui/screenShield.js:1298
msgid "Lock was blocked by an application"
msgstr "Lietotne neļāva bloķēt"
@ -1340,9 +1339,9 @@ msgstr "Liels teksts"
#. 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1355,83 +1354,81 @@ msgstr "Izslēgt"
msgid "Bluetooth Settings"
msgstr "Bluetooth iestatījumi"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
#| msgid "Connected (private)"
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d savienota ierīce"
msgstr[1] "%d savienotas ierīces"
msgstr[2] "%d savienotu ierīču"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "Autorizācijas pieprasījums no %s"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Ierīce %s prasa sapārošanu ar šo datoru"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "Atļaut"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "Liegt"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Ierīce %s prasa pieeju “%s” servisam"
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "Vienmēr piešķirt pieeju"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "Piešķirt tikai šoreiz"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "Noraidīt"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "%s pārošanas apstiprinājums"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
#| msgid "Please confirm whether the PIN '%06d' matches the one on the device."
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "Lūdzu, pārliecinieties, vai parole “%06d” sakrīt ar ierīces doto."
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "Sakrīt"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "Nesakrīt"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "%s pārošanas pieprasījums"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr "Lūdzu, ievadiet PIN, kas redzams uz ierīces."
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "Labi"
@ -1439,7 +1436,7 @@ msgstr "Labi"
msgid "Brightness"
msgstr "Gaišums"
#: ../js/ui/status/keyboard.js:404
#: ../js/ui/status/keyboard.js:403
msgid "Show Keyboard Layout"
msgstr "Rādīt tastatūras izkārtojumu"
@ -1448,7 +1445,6 @@ msgid "<unknown>"
msgstr "<nezināms>"
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
#| msgid "Offline"
msgid "Off"
msgstr "Izslēgts"
@ -1493,22 +1489,18 @@ msgid "connection failed"
msgstr "savienojums neizdevās"
#: ../js/ui/status/network.js:654
#| msgid "Network"
msgid "Wi-Fi Networks"
msgstr "Bezvadu tīkli"
#: ../js/ui/status/network.js:656
#| msgid "Enable networking"
msgid "Select a network"
msgstr "Izvēlieties tīklu"
#: ../js/ui/status/network.js:680
#| msgid "Network"
msgid "No Networks"
msgstr "Nav tīklu"
#: ../js/ui/status/network.js:949
#| msgid "Network"
msgid "Select Network"
msgstr "Izvēlieties tīklu"
@ -1520,15 +1512,15 @@ msgstr "Ieslēgt"
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1307
msgid "Network Manager"
msgstr "Tīkla pārvaldnieks"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1346
msgid "Connection failed"
msgstr "Neizdevās savienoties"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1347
msgid "Activation of network connection failed"
msgstr "Neizdevās tīkla savienojuma aktivēšana"
@ -1571,7 +1563,6 @@ msgid "Airplane Mode"
msgstr "Lidmašīnas režīms"
#: ../js/ui/status/rfkill.js:45
#| msgid "Open"
msgid "On"
msgstr "Ieslēgt"
@ -1615,11 +1606,11 @@ msgstr "Ierakstīties kā citam lietotājam"
msgid "Unlock Window"
msgstr "Atbloķēšanas logs"
#: ../js/ui/viewSelector.js:100
#: ../js/ui/viewSelector.js:104
msgid "Applications"
msgstr "Lietotnes"
#: ../js/ui/viewSelector.js:104
#: ../js/ui/viewSelector.js:108
msgid "Search"
msgstr "Meklēt"
@ -1650,7 +1641,6 @@ msgstr "Vai vēlaties paturēt šos displeja iestatījumus?"
#. to avoid ellipsizing the labels.
#.
#: ../js/ui/windowManager.js:75
#| msgid "Power Settings"
msgid "Revert Settings"
msgstr "Atgriezt iestatījumus"
@ -1727,6 +1717,10 @@ msgstr "Parole nevar būt tukša"
msgid "Authentication dialog was dismissed by the user"
msgstr "Lietotājs noraidīja autentifikācijas dialoglodziņu"
#~| msgid "Settings"
#~ msgid "Settings Menu"
#~ msgstr "Iestatījumu izvēlne"
#~ msgid "Screenshots"
#~ msgstr "Ekrānattēli"

197
po/nb.po
View File

@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell 3.9.x\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2013-09-08 11:22+0200\n"
"PO-Revision-Date: 2013-09-08 11:23+0200\n"
"POT-Creation-Date: 2013-09-29 11:27+0200\n"
"PO-Revision-Date: 2013-09-24 19:38+0200\n"
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
"Language-Team: Norwegian bokmål <i18n-nb@lister.ping.uio.no>\n"
"Language: \n"
@ -47,6 +47,7 @@ msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Vindushåndtering og oppstart av programmer"
@ -59,6 +60,10 @@ msgstr "Brukervalg for GNOME Shell utvidelser"
msgid "Configure GNOME Shell Extensions"
msgstr "Konfigurer utvidelser for GNOME Shell"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (wayland kompositør)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
msgstr "Aktiver interne verktøy for utviklere og testere fra Alt-F2"
@ -243,6 +248,10 @@ msgstr "Arbeidsområder håndteres dynamisk"
msgid "Workspaces only on primary monitor"
msgstr "Arbeidsområder vises kun på hovedskjerm"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -256,10 +265,10 @@ msgstr "Utvidelse"
msgid "Select an extension to configure using the combobox above."
msgstr "Velg en utvidelse som skal konfigureres med komboboksen over."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:692
msgid "Cancel"
msgstr "Avbryt"
@ -298,8 +307,8 @@ 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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "Brukernavn: "
@ -320,42 +329,42 @@ msgstr "Autentiseringsfeil"
msgid "(or swipe finger)"
msgstr "(eller dra finger)"
#: ../js/misc/util.js:97
#: ../js/misc/util.js:98
msgid "Command not found"
msgstr "Kommando ikke funnet"
#. Replace "Error invoking GLib.shell_parse_argv: " with
#. something nicer
#: ../js/misc/util.js:130
#: ../js/misc/util.js:131
msgid "Could not parse command:"
msgstr "Klarte ikke å lese kommando:"
#: ../js/misc/util.js:138
#: ../js/misc/util.js:139
#, c-format
msgid "Execution of '%s' failed:"
msgstr "Kjøring av «%s» feilet:"
#: ../js/ui/appDisplay.js:573
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "Ofte brukte programmer vil vises her"
#: ../js/ui/appDisplay.js:689
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "Ofte"
#: ../js/ui/appDisplay.js:696
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "Alle"
#: ../js/ui/appDisplay.js:1491
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "Nytt vindu"
#: ../js/ui/appDisplay.js:1494 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Fjern fra favoritter"
#: ../js/ui/appDisplay.js:1495
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "Legg til i favoritter"
@ -369,7 +378,8 @@ msgstr "%s ble lagt til i dine favoritter."
msgid "%s has been removed from your favorites."
msgstr "%s ble fjernet fra dine favoritter."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
#: ../js/ui/status/system.js:325
msgid "Settings"
msgstr "Innstillinger"
@ -555,50 +565,50 @@ msgstr "Åpne med %s"
msgid "Eject"
msgstr "Løs ut"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Passord:"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "Skriv på nytt:"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:695
msgid "Connect"
msgstr "Koble til"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "Passord: "
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "Nøkkel: "
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "Identitet: "
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "Passord for privat nøkkel: "
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "Tjeneste: "
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "Autentisering kreves av trådløst nettverk"
#: ../js/ui/components/networkAgent.js:305
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
@ -607,35 +617,35 @@ msgstr ""
"Passord eller krypteringsnøkler kreves for å koble til trådløst nettverk "
"«%s»."
#: ../js/ui/components/networkAgent.js:309
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "802.1X autentisering for trådbundet nettverk"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "Navn på nettverk: "
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "DSL-autentisering"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "PIN-kode kreves"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr "PIN-kode kreves for mobil bredbåndsenhet"
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN: "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "Nettverkspassord for mobilt bredbånd"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "Et passord kreves for å koble til «%s»."
@ -899,7 +909,7 @@ msgstr "Vis konto"
msgid "Unknown reason"
msgstr "Ukjent årsak"
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:96
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:100
msgid "Windows"
msgstr "Vinduer"
@ -1047,7 +1057,7 @@ msgstr "Installer"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Last ned og installer «%s» fra extensions.gnome.org?"
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:334
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
msgid "Keyboard"
msgstr "Tastatur"
@ -1123,11 +1133,11 @@ msgstr "Meny for varslingsområde"
msgid "No Messages"
msgstr "Ingen meldinger"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "Meldingstrau"
#: ../js/ui/messageTray.js:2787
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "Systeminformasjon"
@ -1159,21 +1169,17 @@ msgstr "Oversikt"
msgid "Type to search…"
msgstr "Skriv for å søke …"
#: ../js/ui/panel.js:516
#: ../js/ui/panel.js:518
msgid "Quit"
msgstr "Avslutt"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:568
#: ../js/ui/panel.js:570
msgid "Activities"
msgstr "Aktiviteter"
#: ../js/ui/panel.js:805
msgid "Settings Menu"
msgstr "Meny for innstillinger"
#: ../js/ui/panel.js:901
#: ../js/ui/panel.js:904
msgid "Top Bar"
msgstr "Topp-panel"
@ -1182,7 +1188,7 @@ msgstr "Topp-panel"
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:226
#: ../js/ui/popupMenu.js:233
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
@ -1211,7 +1217,7 @@ msgstr[1] "%d nye varslinger"
msgid "Lock"
msgstr "Lås"
#: ../js/ui/screenShield.js:703
#: ../js/ui/screenShield.js:704
msgid "GNOME needs to lock the screen"
msgstr "GNOME må låse skjermen"
@ -1222,19 +1228,19 @@ msgstr "GNOME må låse skjermen"
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
#: ../js/ui/screenShield.js:830 ../js/ui/screenShield.js:1296
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
msgid "Unable to lock"
msgstr "Kan ikke låse"
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
#: ../js/ui/screenShield.js:832 ../js/ui/screenShield.js:1298
msgid "Lock was blocked by an application"
msgstr "Låsing ble stoppet av et program"
#: ../js/ui/searchDisplay.js:447
#: ../js/ui/searchDisplay.js:448
msgid "Searching…"
msgstr "Søker …"
#: ../js/ui/searchDisplay.js:491
#: ../js/ui/searchDisplay.js:492
msgid "No results."
msgstr "Ingen resultater."
@ -1308,14 +1314,14 @@ 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
#: ../js/ui/status/network.js:1040 ../js/ui/status/rfkill.js:46
msgid "Turn Off"
msgstr "Slå av"
@ -1323,80 +1329,80 @@ msgstr "Slå av"
msgid "Bluetooth Settings"
msgstr "Innstillinger for Bluetooth"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d tilkoblet enhet"
msgstr[1] "%d tilkoblede enheter"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "Forespørsel om autorisering fra %s"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Enhet %s vil koble seg sammen med denne datamaskinen"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "Tillat"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "Nekt"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Enhet %s vil ha tilgang til tjenesten «%s»"
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "Alltid gi tilgang"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "Gi tilgang kun denne ene gangen"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "Avvis"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Bekreftelse for tilkobling for %s"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "Vennligst bekreft om passord «%06d» er lik den som brukes på enheten."
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "Stemmer overens"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "Stemmer ikke overens"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "Forespørsel om tilkobling for %s"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr "Vennligst oppgi PIN som oppgitt på enheten."
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "OK"
@ -1404,7 +1410,7 @@ msgstr "OK"
msgid "Brightness"
msgstr "Lysstyrke"
#: ../js/ui/status/keyboard.js:404
#: ../js/ui/status/keyboard.js:403
msgid "Show Keyboard Layout"
msgstr "Vis tastaturutforming"
@ -1412,11 +1418,11 @@ msgstr "Vis tastaturutforming"
msgid "<unknown>"
msgstr "<ukjent>"
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1055
msgid "Off"
msgstr "Av"
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:961
#: ../js/ui/status/rfkill.js:49
msgid "Network Settings"
msgstr "Innstillinger for nettverk"
@ -1431,12 +1437,12 @@ msgstr "ikke håndtert"
msgid "disconnecting..."
msgstr "kobler fra …"
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1106
msgid "connecting..."
msgstr "kobler til …"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1109
msgid "authentication required"
msgstr "autentisering kreves"
@ -1452,43 +1458,43 @@ msgstr "fastvare mangler"
msgid "unavailable"
msgstr "ikke tilgjengelig"
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1111
msgid "connection failed"
msgstr "tilkobling feilet"
#: ../js/ui/status/network.js:654
#: ../js/ui/status/network.js:660
msgid "Wi-Fi Networks"
msgstr "Wi-Fi nettverk"
#: ../js/ui/status/network.js:656
#: ../js/ui/status/network.js:662
msgid "Select a network"
msgstr "Velg et nettverk"
#: ../js/ui/status/network.js:680
#: ../js/ui/status/network.js:686
msgid "No Networks"
msgstr "Ingen nettverk"
#: ../js/ui/status/network.js:949
#: ../js/ui/status/network.js:955
msgid "Select Network"
msgstr "Velg nettverk"
#: ../js/ui/status/network.js:1034
#: ../js/ui/status/network.js:1040
msgid "Turn On"
msgstr "Slå på"
#: ../js/ui/status/network.js:1167
#: ../js/ui/status/network.js:1173
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1313
msgid "Network Manager"
msgstr "Nettverkshåndtering"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1352
msgid "Connection failed"
msgstr "Tilkobling feilet"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1353
msgid "Activation of network connection failed"
msgstr "Aktivering av nettverkstilkobling feilet"
@ -1574,11 +1580,11 @@ msgstr "Logg inn som en annen bruker"
msgid "Unlock Window"
msgstr "Lås opp vindu"
#: ../js/ui/viewSelector.js:100
#: ../js/ui/viewSelector.js:104
msgid "Applications"
msgstr "Programmer"
#: ../js/ui/viewSelector.js:104
#: ../js/ui/viewSelector.js:108
msgid "Search"
msgstr "Søk"
@ -1681,3 +1687,6 @@ msgstr "Passordet kan ikke være tomt"
#: ../src/shell-polkit-authentication-agent.c:343
msgid "Authentication dialog was dismissed by the user"
msgstr "Autentiseringsdialogen ble lukket av brukeren"
#~ msgid "Settings Menu"
#~ msgstr "Meny for innstillinger"

1530
po/nl.po

File diff suppressed because it is too large Load Diff

475
po/pa.po

File diff suppressed because it is too large Load Diff

412
po/pl.po

File diff suppressed because it is too large Load Diff

1693
po/pt.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

2678
po/ro.po

File diff suppressed because it is too large Load Diff

376
po/ru.po
View File

@ -13,19 +13,17 @@
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: 2013-09-14 20:54+0200\n"
"PO-Revision-Date: 2013-09-13 08:43+0600\n"
"Last-Translator: Dmitriy S. Seregin <dseregin@59.ru>\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2013-09-23 15:02+0000\n"
"PO-Revision-Date: 2013-09-24 12:18+0300\n"
"Last-Translator: Yuri Myasoedov <omerta13@yandex.ru>\n"
"Language-Team: русский <gnome-cyr@gnome.org>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.5.5\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.5.7\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -78,39 +76,24 @@ msgid "Enable internal tools useful for developers and testers from Alt-F2"
msgstr "Включить внутренние инструменты из Alt-F2 для разработчиков и тестеров"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:2
msgid ""
"Allows access to internal debugging and monitoring tools using the Alt-F2 "
"dialog."
msgstr ""
"Разрешает доступ к внутренней отладке и инструментам наблюдения, используя "
"диалог Alt-F2."
msgid "Allows access to internal debugging and monitoring tools using the Alt-F2 dialog."
msgstr "Разрешает доступ к внутренней отладке и инструментам наблюдения, используя диалог Alt-F2."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
msgid "Uuids of extensions to enable"
msgstr "Uuid включенных расширений"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
msgid ""
"GNOME Shell extensions have a uuid property; this key lists extensions which "
"should be loaded. Any extension that wants to be loaded needs to be in this "
"list. You can also manipulate this list with the EnableExtension and "
"DisableExtension DBus methods on org.gnome.Shell."
msgstr ""
"У расширений GNOME Shell есть свойство uuid; в этом ключе перечислены "
"расширения, которые должны быть загружены. Этим список также можно управлять "
"через методы DBus EnableExtension и DisableExtension сервиса org.gnome.Shell."
msgid "GNOME Shell extensions have a uuid property; this key lists extensions which should be loaded. Any extension that wants to be loaded needs to be in this list. You can also manipulate this list with the EnableExtension and DisableExtension DBus methods on org.gnome.Shell."
msgstr "У расширений GNOME Shell есть свойство uuid; в этом ключе перечислены расширения, которые должны быть загружены. Этим список также можно управлять через методы DBus EnableExtension и DisableExtension сервиса org.gnome.Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
msgid "List of desktop file IDs for favorite applications"
msgstr "Список идентификаторов desktop-файлов для избранных приложений"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:6
msgid ""
"The applications corresponding to these identifiers will be displayed in the "
"favorites area."
msgstr ""
"Приложения, соответствующие этих идентификаторам, будут показаны в области "
"избранных приложений."
msgid "The applications corresponding to these identifiers will be displayed in the favorites area."
msgstr "Приложения, соответствующие этих идентификаторам, будут показаны в области избранных приложений."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
msgid "List of categories that should be displayed as folders"
@ -118,12 +101,8 @@ msgstr "Список категорий, которые должны отобр
# Перевод лучше усечь, так он лучше воспринимается
#: ../data/org.gnome.shell.gschema.xml.in.in.h:8
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 ""
"Каждая категория из этого списка будет представлена в виде папки в режиме "
"просмотра приложений."
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 "Каждая категория из этого списка будет представлена в виде папки в режиме просмотра приложений."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
msgid "History for command (Alt-F2) dialog"
@ -138,31 +117,16 @@ msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Всегда показывать в меню пункт «Завершить сеанс»."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
msgid ""
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
"user, single-session situations."
msgstr ""
"Этот ключ переопределяет автоматическое скрытие пункта «Завершить сеанс» при "
"использовании одиночного сеанса."
msgid "This key overrides the automatic hiding of the 'Log out' menuitem in single-user, single-session situations."
msgstr "Этот ключ переопределяет автоматическое скрытие пункта «Завершить сеанс» при использовании одиночного сеанса."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr ""
"Запоминать ли пароль для подключения зашифрованных или удалённых файловых "
"систем"
msgid "Whether to remember password for mounting encrypted or remote filesystems"
msgstr "Запоминать ли пароль для подключения зашифрованных или удалённых файловых систем"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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 ""
"GNOME Shell запрашивает пароль при подключении зашифрованных или удалённых "
"файловых систем. Если пароль можно сохранить для последующего использования, "
"для этого действия будет доступна соответствующая флаговая кнопка. Этот ключ "
"устанавливает состояние по умолчание для этой флаговой кнопки."
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 "GNOME Shell запрашивает пароль при подключении зашифрованных или удалённых файловых систем. Если пароль можно сохранить для последующего использования, для этого действия будет доступна соответствующая флаговая кнопка. Этот ключ устанавливает состояние по умолчание для этой флаговой кнопки."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Show the week date in the calendar"
@ -185,8 +149,7 @@ msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Комбинация клавиш для перехода в режим просмотра приложений"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgid "Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "Комбинация клавиш для перехода в режим просмотра приложений."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
@ -226,42 +189,28 @@ msgid "The application icon mode."
msgstr "Режим значка приложения."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
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 ""
"Управляет способом отображения окон в переключателе. Доступные значения: "
"«thumbnail-only» (показывать миниатюру окна), «app-icon-only» (показывать "
"только значок приложения), «both» (показывать миниатюру и значок)."
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 "Управляет способом отображения окон в переключателе. Доступные значения: «thumbnail-only» (показывать миниатюру окна), «app-icon-only» (показывать только значок приложения), «both» (показывать миниатюру и значок)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Attach modal dialog to the parent window"
msgstr "Прикреплять модальное диалоговое окно к родительскому окну"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Этот ключ переопределяет ключ в org.gnome.mutter при запуске GNOME Shell."
msgid "This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr "Этот ключ переопределяет ключ в org.gnome.mutter при запуске GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Arrangement of buttons on the titlebar"
msgstr "Расположение кнопок в заголовке окна"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"Этот ключ переопределяет ключ в org.gnome.desktop.wm.preferences при запуске "
"GNOME Shell."
msgid "This key overrides the key in org.gnome.desktop.wm.preferences when running GNOME Shell."
msgstr "Этот ключ переопределяет ключ в org.gnome.desktop.wm.preferences при запуске GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Включить автоматическое изменение размеров окон при перемещении окон к краям "
"экрана"
msgstr "Включить автоматическое изменение размеров окон при перемещении окон к краям экрана"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid "Workspaces are managed dynamically"
@ -271,6 +220,10 @@ msgstr "Рабочие места управляются динамически"
msgid "Workspaces only on primary monitor"
msgstr "Рабочие места только на основном мониторе"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Задержка изменения фокуса в режиме мыши после остановки указателя"
#: ../js/extensionPrefs/main.js:125
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -284,18 +237,24 @@ msgstr "Расширение"
msgid "Select an extension to configure using the combobox above."
msgstr "Выберите расширение из выпадающего списка."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
#: ../js/gdm/authPrompt.js:145
#: ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161
#: ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195
#: ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:222
#: ../js/ui/status/network.js:686
msgid "Cancel"
msgstr "Отмена"
#: ../js/gdm/authPrompt.js:167 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:167
#: ../js/gdm/authPrompt.js:215
msgid "Next"
msgstr "Далее"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211
#: ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Разблокировать"
@ -326,8 +285,9 @@ msgstr "(например, пользователь или %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:627 ../js/ui/components/networkAgent.js:255
#: ../js/ui/components/networkAgent.js:273
#: ../js/gdm/loginDialog.js:627
#: ../js/ui/components/networkAgent.js:259
#: ../js/ui/components/networkAgent.js:277
msgid "Username: "
msgstr "Имя пользователя: "
@ -363,27 +323,28 @@ msgstr "Не удалось разобрать команду:"
msgid "Execution of '%s' failed:"
msgstr "Не удалось выполнить «%s»:"
#: ../js/ui/appDisplay.js:598
#: ../js/ui/appDisplay.js:596
msgid "Frequently used applications will appear here"
msgstr "Здесь появляются часто используемые приложения"
#: ../js/ui/appDisplay.js:714
#: ../js/ui/appDisplay.js:712
msgid "Frequent"
msgstr "Популярные"
#: ../js/ui/appDisplay.js:721
#: ../js/ui/appDisplay.js:719
msgid "All"
msgstr "Все"
#: ../js/ui/appDisplay.js:1516
#: ../js/ui/appDisplay.js:1514
msgid "New Window"
msgstr "Новое окно"
#: ../js/ui/appDisplay.js:1519 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1517
#: ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Удалить из избранного"
#: ../js/ui/appDisplay.js:1520
#: ../js/ui/appDisplay.js:1518
msgid "Add to Favorites"
msgstr "Добавить в избранное"
@ -397,7 +358,8 @@ msgstr "Приложение %s добавлено в избранное."
msgid "%s has been removed from your favorites."
msgstr "Приложение %s удалено из избранного."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
#: ../js/ui/backgroundMenu.js:19
#: ../js/ui/panel.js:807
#: ../js/ui/status/system.js:325
msgid "Settings"
msgstr "Параметры"
@ -584,86 +546,86 @@ msgstr "Открыть с помощью %s"
msgid "Eject"
msgstr "Извлечь"
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:91
#: ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Пароль:"
#: ../js/ui/components/keyring.js:107
#: ../js/ui/components/keyring.js:110
msgid "Type again:"
msgstr "Введите ещё раз:"
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
#: ../js/ui/components/networkAgent.js:131
#: ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275
#: ../js/ui/status/network.js:689
msgid "Connect"
msgstr "Соединиться"
#. Cisco LEAP
#: ../js/ui/components/networkAgent.js:218
#: ../js/ui/components/networkAgent.js:230
#: ../js/ui/components/networkAgent.js:257
#: ../js/ui/components/networkAgent.js:277
#: ../js/ui/components/networkAgent.js:287
#: ../js/ui/components/networkAgent.js:222
#: ../js/ui/components/networkAgent.js:234
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:281
#: ../js/ui/components/networkAgent.js:291
msgid "Password: "
msgstr "Пароль: "
#. static WEP
#: ../js/ui/components/networkAgent.js:223
#: ../js/ui/components/networkAgent.js:227
msgid "Key: "
msgstr "Ключ: "
#: ../js/ui/components/networkAgent.js:261
#: ../js/ui/components/networkAgent.js:265
msgid "Identity: "
msgstr "Идентичность: "
#: ../js/ui/components/networkAgent.js:263
#: ../js/ui/components/networkAgent.js:267
msgid "Private key password: "
msgstr "Пароль личного ключа: "
#: ../js/ui/components/networkAgent.js:275
#: ../js/ui/components/networkAgent.js:279
msgid "Service: "
msgstr "Служба: "
#: ../js/ui/components/networkAgent.js:304
#: ../js/ui/components/networkAgent.js:308
msgid "Authentication required by wireless network"
msgstr "Беспроводная сеть требует подтверждения подлинности"
#: ../js/ui/components/networkAgent.js:305
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"'%s'."
msgstr ""
"Для доступа к беспроводной сети «%s» требуются пароли или ключи шифрования."
#: ../js/ui/components/networkAgent.js:309
#, c-format
msgid "Passwords or encryption keys are required to access the wireless network '%s'."
msgstr "Для доступа к беспроводной сети «%s» требуются пароли или ключи шифрования."
#: ../js/ui/components/networkAgent.js:313
msgid "Wired 802.1X authentication"
msgstr "Аутентификация Wired 802.1X"
#: ../js/ui/components/networkAgent.js:311
#: ../js/ui/components/networkAgent.js:315
msgid "Network name: "
msgstr "Название сети: "
#: ../js/ui/components/networkAgent.js:316
#: ../js/ui/components/networkAgent.js:320
msgid "DSL authentication"
msgstr "Аутентификация DSL"
#: ../js/ui/components/networkAgent.js:323
#: ../js/ui/components/networkAgent.js:327
msgid "PIN code required"
msgstr "Требуется PIN-код"
#: ../js/ui/components/networkAgent.js:324
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code is needed for the mobile broadband device"
msgstr "Для широкополосного мобильного устройства требуется PIN-код "
#: ../js/ui/components/networkAgent.js:325
#: ../js/ui/components/networkAgent.js:329
msgid "PIN: "
msgstr "PIN-код: "
#: ../js/ui/components/networkAgent.js:331
#: ../js/ui/components/networkAgent.js:335
msgid "Mobile broadband network password"
msgstr "Пароль для мобильной широкополосной сети"
#: ../js/ui/components/networkAgent.js:332
#: ../js/ui/components/networkAgent.js:336
#, c-format
msgid "A password is required to connect to '%s'."
msgstr "Для подключения к «%s» требуется пароль."
@ -684,7 +646,8 @@ msgstr "Подтвердить"
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
#: ../js/ui/components/polkitAgent.js:266
#: ../js/ui/shellMountOperation.js:383
msgid "Sorry, that didn't work. Please try again."
msgstr "Не удалось подтвердить подлинность. Попробуйте снова."
@ -877,8 +840,7 @@ msgid "This account is already connected to the server"
msgstr "Эта учётная запись уже подключена к серверу"
#: ../js/ui/components/telepathyClient.js:1335
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgid "Connection has been replaced by a new connection using the same resource"
msgstr "Соединение было заменено новым, используя тот же источник"
#: ../js/ui/components/telepathyClient.js:1337
@ -887,27 +849,19 @@ msgstr "Учётная запись уже существует на серве
#: ../js/ui/components/telepathyClient.js:1339
msgid "Server is currently too busy to handle the connection"
msgstr ""
"Сервер в настоящее время сильно перегружен, чтобы обработать соединение"
msgstr "Сервер в настоящее время сильно перегружен, чтобы обработать соединение"
#: ../js/ui/components/telepathyClient.js:1341
msgid "Certificate has been revoked"
msgstr "Сертификат аннулирован"
#: ../js/ui/components/telepathyClient.js:1343
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Сертификат использует небезопасный алгоритм шифрования или он "
"криптографически нестоек"
msgid "Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr "Сертификат использует небезопасный алгоритм шифрования или он криптографически нестоек"
#: ../js/ui/components/telepathyClient.js:1345
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
msgstr ""
"Длина сертификата сервера, или глубина цепочки сертификатов сервера, "
"превышает пределы, установленные библиотекой криптографии"
msgid "The length of the server certificate, or the depth of the server certificate chain, exceed the limits imposed by the cryptography library"
msgstr "Длина сертификата сервера, или глубина цепочки сертификатов сервера, превышает пределы, установленные библиотекой криптографии"
#: ../js/ui/components/telepathyClient.js:1347
msgid "Internal error"
@ -928,11 +882,13 @@ msgstr "Показать учётную запись"
msgid "Unknown reason"
msgstr "Неизвестная причина"
#: ../js/ui/ctrlAltTab.js:29 ../js/ui/viewSelector.js:100
#: ../js/ui/ctrlAltTab.js:29
#: ../js/ui/viewSelector.js:100
msgid "Windows"
msgstr "Окна"
#: ../js/ui/dash.js:248 ../js/ui/dash.js:286
#: ../js/ui/dash.js:248
#: ../js/ui/dash.js:286
msgid "Show Applications"
msgstr "Показать приложения"
@ -976,10 +932,8 @@ msgstr "Выйти из системы"
#, c-format
msgid "%s will be logged out automatically in %d second."
msgid_plural "%s will be logged out automatically in %d seconds."
msgstr[0] ""
"Сеанс пользователя %s будет автоматически завершён через %d секунду."
msgstr[1] ""
"Сеанс пользователя %s будет автоматически завершён через %d секунды."
msgstr[0] "Сеанс пользователя %s будет автоматически завершён через %d секунду."
msgstr[1] "Сеанс пользователя %s будет автоматически завершён через %d секунды."
msgstr[2] "Сеанс пользователя %s будет автоматически завершён через %d секунд."
#: ../js/ui/endSessionDialog.js:70
@ -1008,7 +962,8 @@ msgstr[0] "Система будет автоматически выключен
msgstr[1] "Система будет автоматически выключена через %d секунды."
msgstr[2] "Система будет автоматически выключена через %d секунд."
#: ../js/ui/endSessionDialog.js:88 ../js/ui/endSessionDialog.js:104
#: ../js/ui/endSessionDialog.js:88
#: ../js/ui/endSessionDialog.js:104
msgctxt "button"
msgid "Restart"
msgstr "Перезапустить"
@ -1039,14 +994,10 @@ msgstr "Перезапустить и установить обновления"
#: ../js/ui/endSessionDialog.js:114
#, c-format
msgid "The system will automatically restart and install updates in %d second."
msgid_plural ""
"The system will automatically restart and install updates in %d seconds."
msgstr[0] ""
"Система автоматически перезапустится и установит обновления через %d секунду."
msgstr[1] ""
"Система автоматически перезапустится и установит обновления через %d секунды."
msgstr[2] ""
"Система автоматически перезапустится и установит обновления через %d секунд."
msgid_plural "The system will automatically restart and install updates in %d seconds."
msgstr[0] "Система автоматически перезапустится и установит обновления через %d секунду."
msgstr[1] "Система автоматически перезапустится и установит обновления через %d секунды."
msgstr[2] "Система автоматически перезапустится и установит обновления через %d секунд."
#: ../js/ui/endSessionDialog.js:119
msgctxt "button"
@ -1082,7 +1033,8 @@ msgstr "Установить"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Загрузить и установить расширение «%s» с extensions.gnome.org?"
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
#: ../js/ui/keyboard.js:619
#: ../js/ui/status/keyboard.js:333
msgid "Keyboard"
msgstr "Клавиатура"
@ -1100,7 +1052,8 @@ msgstr "%s не сообщал о каких-либо ошибках."
msgid "Hide Errors"
msgstr "Скрыть ошибки"
#: ../js/ui/lookingGlass.js:753 ../js/ui/lookingGlass.js:813
#: ../js/ui/lookingGlass.js:753
#: ../js/ui/lookingGlass.js:813
msgid "Show Errors"
msgstr "Показать ошибки"
@ -1110,7 +1063,8 @@ msgstr "Включено"
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:765 ../src/gvc/gvc-mixer-control.c:1830
#: ../js/ui/lookingGlass.js:765
#: ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "Выключено"
@ -1158,20 +1112,22 @@ msgstr "Меню панели"
msgid "No Messages"
msgstr "Нет сообщений"
#: ../js/ui/messageTray.js:1812
#: ../js/ui/messageTray.js:1813
msgid "Message Tray"
msgstr "Панель сообщений"
#: ../js/ui/messageTray.js:2787
#: ../js/ui/messageTray.js:2788
msgid "System Information"
msgstr "Системная информация"
#: ../js/ui/notificationDaemon.js:629 ../src/shell-app.c:396
#: ../js/ui/notificationDaemon.js:629
#: ../src/shell-app.c:396
msgctxt "program"
msgid "Unknown"
msgstr "Неизвестно"
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
#: ../js/ui/overviewControls.js:491
#: ../js/ui/screenShield.js:152
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1240,7 +1196,8 @@ msgstr[0] "%d новое уведомление"
msgstr[1] "%d новых уведомления"
msgstr[2] "%d новых уведомлений"
#: ../js/ui/screenShield.js:477 ../js/ui/status/system.js:333
#: ../js/ui/screenShield.js:477
#: ../js/ui/status/system.js:333
msgid "Lock"
msgstr "Заблокировать"
@ -1255,11 +1212,13 @@ msgstr "GNOME необходимо заблокировать экран"
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
#: ../js/ui/screenShield.js:831
#: ../js/ui/screenShield.js:1297
msgid "Unable to lock"
msgstr "Не удалось заблокировать"
#: ../js/ui/screenShield.js:832 ../js/ui/screenShield.js:1298
#: ../js/ui/screenShield.js:832
#: ../js/ui/screenShield.js:1298
msgid "Lock was blocked by an application"
msgstr "Блокировке помешало приложение"
@ -1341,14 +1300,19 @@ msgstr "Крупный текст"
#. 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:28 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
#: ../js/ui/status/bluetooth.js:28
#: ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100
#: ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164
#: ../js/ui/status/bluetooth.js:195
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
#: ../js/ui/status/bluetooth.js:30
#: ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:1034
#: ../js/ui/status/rfkill.js:46
msgid "Turn Off"
msgstr "Выключить"
@ -1356,7 +1320,7 @@ msgstr "Выключить"
msgid "Bluetooth Settings"
msgstr "Настроить Bluetooth"
#: ../js/ui/status/bluetooth.js:57
#: ../js/ui/status/bluetooth.js:58
#, c-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
@ -1364,73 +1328,74 @@ msgstr[0] "Подключено %d устройство"
msgstr[1] "Подключено %d устройства"
msgstr[2] "Подключено %d устройств"
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:101
#: ../js/ui/status/bluetooth.js:129
#, c-format
msgid "Authorization request from %s"
msgstr "Запрос авторизации от %s"
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#: ../js/ui/status/bluetooth.js:107
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Устройство %s пытается выполнить сопряжение с этим компьютером"
#: ../js/ui/status/bluetooth.js:108
#: ../js/ui/status/bluetooth.js:109
msgid "Allow"
msgstr "Разрешить"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:110
msgid "Deny"
msgstr "Отклонить"
#: ../js/ui/status/bluetooth.js:134
#: ../js/ui/status/bluetooth.js:135
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Устройство %s пытается получить доступ к службе «%s»"
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:137
msgid "Always grant access"
msgstr "Всегда предоставлять доступ"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:138
msgid "Grant this time only"
msgstr "Предоставить единовременно"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:139
msgid "Reject"
msgstr "Отклонить"
#. Translators: argument is the device short name
#: ../js/ui/status/bluetooth.js:165
#: ../js/ui/status/bluetooth.js:166
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Подтверждение на сопряжение с %s"
#: ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:173
#, c-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
msgid "Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "Подтвердите, совпадает ли ключ доступа «%06d» с кодом на устройстве."
#. Translators: this is the verb, not the noun
#: ../js/ui/status/bluetooth.js:175
#: ../js/ui/status/bluetooth.js:176
msgid "Matches"
msgstr "Совпадает"
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:177
msgid "Does not match"
msgstr "Не совпадает"
#: ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:196
#, c-format
msgid "Pairing request for %s"
msgstr "Запрос на сопряжение c %s"
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:204
msgid "Please enter the PIN mentioned on the device."
msgstr "Введите PIN-код указанный на устройстве."
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/bluetooth.js:221
msgid "OK"
msgstr "OK"
@ -1446,11 +1411,13 @@ msgstr "Показать раскладку клавиатуры"
msgid "<unknown>"
msgstr "<неизвестно>"
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
#: ../js/ui/status/network.js:203
#: ../js/ui/status/network.js:1049
msgid "Off"
msgstr "Выключена"
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
#: ../js/ui/status/network.js:276
#: ../js/ui/status/network.js:955
#: ../js/ui/status/rfkill.js:49
msgid "Network Settings"
msgstr "Настроить сеть"
@ -1465,12 +1432,14 @@ msgstr "не управляется"
msgid "disconnecting..."
msgstr "отключение…"
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
#: ../js/ui/status/network.js:372
#: ../js/ui/status/network.js:1100
msgid "connecting..."
msgstr "подключение…"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
#: ../js/ui/status/network.js:375
#: ../js/ui/status/network.js:1103
msgid "authentication required"
msgstr "требуется подтверждение подлинности"
@ -1486,7 +1455,8 @@ msgstr "отсутствует прошивка"
msgid "unavailable"
msgstr "недоступное"
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
#: ../js/ui/status/network.js:389
#: ../js/ui/status/network.js:1105
msgid "connection failed"
msgstr "сбой подключения"
@ -1514,15 +1484,15 @@ msgstr "Включить"
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1306
#: ../js/ui/status/network.js:1307
msgid "Network Manager"
msgstr "Диспетчер сети"
#: ../js/ui/status/network.js:1345
#: ../js/ui/status/network.js:1346
msgid "Connection failed"
msgstr "Сбой подключения"
#: ../js/ui/status/network.js:1346
#: ../js/ui/status/network.js:1347
msgid "Activation of network connection failed"
msgstr "Не удалось активировать сетевое подключение"
@ -1541,7 +1511,8 @@ msgstr "Полностью заряжена"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
#: ../js/ui/status/power.js:69
#: ../js/ui/status/power.js:86
msgid "Estimating…"
msgstr "Выполняется подсчёт…"
@ -1696,8 +1667,7 @@ msgstr "Режим, используемый GDM для окна входа в
#: ../src/main.c:365
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr ""
"Использовать для экрана входа в систему определённый режим, например «gdm»"
msgstr "Использовать для экрана входа в систему определённый режим, например «gdm»"
#: ../src/main.c:371
msgid "List possible modes"
@ -1932,6 +1902,7 @@ msgstr "Аутентификация отклонена пользователе
#~ msgstr "Сеть отключена"
#~ msgid "%d hour remaining"
#~ msgid_plural "%d hours remaining"
#~ msgstr[0] "Остался %d час"
#~ msgstr[1] "Осталось %d часа"
@ -1941,24 +1912,27 @@ msgstr "Аутентификация отклонена пользователе
#~ msgstr "Осталось %d %s %d %s"
#~ msgid "hour"
#~ msgid_plural "hours"
#~ msgstr[0] "час"
#~ msgstr[1] "часа"
#~ msgstr[2] "часов"
#~ msgid "minute"
#~ msgid_plural "minutes"
#~ msgstr[0] "минута"
#~ msgstr[1] "минуты"
#~ msgstr[2] "минут"
#~ msgid "%d minute remaining"
#~ msgid_plural "%d minutes remaining"
#~ msgstr[0] "Осталась %d минута"
#~ msgstr[1] "Осталось %d минуты"
#~ msgstr[2] "Осталось %d минут"
#~ msgctxt "percent of battery remaining"
#~ msgid "%d%%"
#~ msgstr "%d%%"
@ -1991,8 +1965,8 @@ msgstr "Аутентификация отклонена пользователе
#~ msgid "Computer"
#~ msgstr "Компьютер"
#~ msgctxt "device"
#~ msgid "Unknown"
#~ msgstr "Неизвестно"

519
po/sk.po

File diff suppressed because it is too large Load Diff

403
po/sl.po

File diff suppressed because it is too large Load Diff

406
po/tg.po

File diff suppressed because it is too large Load Diff

1477
po/tr.po

File diff suppressed because it is too large Load Diff

415
po/uk.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -12,9 +12,9 @@ G_BEGIN_DECLS
ShellApp* _shell_app_new_for_window (MetaWindow *window);
ShellApp* _shell_app_new (GMenuTreeEntry *entry);
ShellApp* _shell_app_new (GDesktopAppInfo *info);
void _shell_app_set_entry (ShellApp *app, GMenuTreeEntry *entry);
void _shell_app_set_app_info (ShellApp *app, GDesktopAppInfo *info);
void _shell_app_handle_startup_sequence (ShellApp *app, SnStartupSequence *sequence);

View File

@ -38,18 +38,12 @@ enum {
static guint signals[LAST_SIGNAL] = { 0 };
struct _ShellAppSystemPrivate {
GMenuTree *apps_tree;
GHashTable *running_apps;
GHashTable *visible_id_to_app;
GHashTable *id_to_app;
GHashTable *startup_wm_class_to_app;
GSList *known_vendor_prefixes;
GHashTable *startup_wm_class_to_id;
};
static void shell_app_system_finalize (GObject *object);
static void on_apps_tree_changed_cb (GMenuTree *tree, gpointer user_data);
G_DEFINE_TYPE(ShellAppSystem, shell_app_system, G_TYPE_OBJECT);
@ -77,10 +71,45 @@ static void shell_app_system_class_init(ShellAppSystemClass *klass)
g_type_class_add_private (gobject_class, sizeof (ShellAppSystemPrivate));
}
static void
scan_startup_wm_class_to_id (ShellAppSystem *self)
{
ShellAppSystemPrivate *priv = self->priv;
GList *apps, *l;
g_hash_table_remove_all (priv->startup_wm_class_to_id);
apps = g_app_info_get_all ();
for (l = apps; l != NULL; l = l->next)
{
GAppInfo *info = l->data;
const char *startup_wm_class, *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)
g_hash_table_insert (priv->startup_wm_class_to_id, (char *) startup_wm_class, (char *) id);
}
g_list_free_full (apps, g_object_unref);
}
static void
installed_changed (GAppInfoMonitor *monitor,
gpointer user_data)
{
ShellAppSystem *self = user_data;
scan_startup_wm_class_to_id (self);
g_signal_emit (self, signals[INSTALLED_CHANGED], 0, NULL);
}
static void
shell_app_system_init (ShellAppSystem *self)
{
ShellAppSystemPrivate *priv;
GAppInfoMonitor *monitor;
self->priv = priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
SHELL_TYPE_APP_SYSTEM,
@ -91,19 +120,11 @@ shell_app_system_init (ShellAppSystem *self)
NULL,
(GDestroyNotify)g_object_unref);
/* All the objects in this hash table are owned by id_to_app */
priv->visible_id_to_app = g_hash_table_new (g_str_hash, g_str_equal);
priv->startup_wm_class_to_id = g_hash_table_new (g_str_hash, g_str_equal);
priv->startup_wm_class_to_app = g_hash_table_new_full (g_str_hash, g_str_equal,
NULL,
(GDestroyNotify)g_object_unref);
/* We want to track NoDisplay apps, so we add INCLUDE_NODISPLAY. We'll
* filter NoDisplay apps out when showing them to the user. */
priv->apps_tree = gmenu_tree_new ("applications.menu", GMENU_TREE_FLAGS_INCLUDE_NODISPLAY);
g_signal_connect (priv->apps_tree, "changed", G_CALLBACK (on_apps_tree_changed_cb), self);
on_apps_tree_changed_cb (priv->apps_tree, self);
monitor = g_app_info_monitor_get ();
g_signal_connect (monitor, "changed", G_CALLBACK (installed_changed), self);
installed_changed (monitor, self);
}
static void
@ -112,313 +133,13 @@ shell_app_system_finalize (GObject *object)
ShellAppSystem *self = SHELL_APP_SYSTEM (object);
ShellAppSystemPrivate *priv = self->priv;
g_object_unref (priv->apps_tree);
g_hash_table_destroy (priv->running_apps);
g_hash_table_destroy (priv->id_to_app);
g_hash_table_destroy (priv->visible_id_to_app);
g_hash_table_destroy (priv->startup_wm_class_to_app);
g_slist_free_full (priv->known_vendor_prefixes, g_free);
priv->known_vendor_prefixes = NULL;
g_hash_table_destroy (priv->startup_wm_class_to_id);
G_OBJECT_CLASS (shell_app_system_parent_class)->finalize (object);
}
static char *
get_prefix_for_entry (GMenuTreeEntry *entry)
{
char *prefix = NULL, *file_prefix = NULL;
const char *id;
GFile *file;
char *name;
int i = 0;
id = gmenu_tree_entry_get_desktop_file_id (entry);
file = g_file_new_for_path (gmenu_tree_entry_get_desktop_file_path (entry));
name = g_file_get_basename (file);
if (!name)
{
g_object_unref (file);
return NULL;
}
for (i = 0; vendor_prefixes[i]; i++)
{
if (g_str_has_prefix (name, vendor_prefixes[i]))
{
file_prefix = g_strdup (vendor_prefixes[i]);
break;
}
}
while (strcmp (name, id) != 0)
{
char *t;
char *pname;
GFile *parent = g_file_get_parent (file);
if (!parent)
{
g_warn_if_reached ();
break;
}
pname = g_file_get_basename (parent);
if (!pname)
{
g_object_unref (parent);
break;
}
if (!g_strstr_len (id, -1, pname))
{
/* handle <LegacyDir prefix="..."> */
char *t;
size_t name_len = strlen (name);
size_t id_len = strlen (id);
char *t_id = g_strdup (id);
t_id[id_len - name_len] = '\0';
t = g_strdup(t_id);
g_free (prefix);
g_free (t_id);
g_free (name);
name = g_strdup (id);
prefix = t;
g_object_unref (file);
file = parent;
g_free (pname);
g_free (file_prefix);
file_prefix = NULL;
break;
}
t = g_strconcat (pname, "-", name, NULL);
g_free (name);
name = t;
t = g_strconcat (pname, "-", prefix, NULL);
g_free (prefix);
prefix = t;
g_object_unref (file);
file = parent;
g_free (pname);
}
if (file)
g_object_unref (file);
if (strcmp (name, id) == 0)
{
g_free (name);
if (file_prefix && !prefix)
return file_prefix;
if (file_prefix)
{
char *t = g_strconcat (prefix, "-", file_prefix, NULL);
g_free (prefix);
g_free (file_prefix);
prefix = t;
}
return prefix;
}
g_free (name);
g_free (prefix);
g_free (file_prefix);
g_return_val_if_reached (NULL);
}
static void
get_flattened_entries_recurse (GMenuTreeDirectory *dir,
GHashTable *entry_set)
{
GMenuTreeIter *iter = gmenu_tree_directory_iter (dir);
GMenuTreeItemType next_type;
while ((next_type = gmenu_tree_iter_next (iter)) != GMENU_TREE_ITEM_INVALID)
{
gpointer item = NULL;
switch (next_type)
{
case GMENU_TREE_ITEM_ENTRY:
{
GMenuTreeEntry *entry;
item = entry = gmenu_tree_iter_get_entry (iter);
/* Key is owned by entry */
g_hash_table_replace (entry_set,
(char*)gmenu_tree_entry_get_desktop_file_id (entry),
gmenu_tree_item_ref (entry));
}
break;
case GMENU_TREE_ITEM_DIRECTORY:
{
item = gmenu_tree_iter_get_directory (iter);
get_flattened_entries_recurse ((GMenuTreeDirectory*)item, entry_set);
}
break;
default:
break;
}
if (item != NULL)
gmenu_tree_item_unref (item);
}
gmenu_tree_iter_unref (iter);
}
static GHashTable *
get_flattened_entries_from_tree (GMenuTree *tree)
{
GHashTable *table;
GMenuTreeDirectory *root;
table = g_hash_table_new_full (g_str_hash, g_str_equal,
(GDestroyNotify) NULL,
(GDestroyNotify) gmenu_tree_item_unref);
root = gmenu_tree_get_root_directory (tree);
if (root != NULL)
get_flattened_entries_recurse (root, table);
gmenu_tree_item_unref (root);
return table;
}
static void
on_apps_tree_changed_cb (GMenuTree *tree,
gpointer user_data)
{
ShellAppSystem *self = SHELL_APP_SYSTEM (user_data);
GError *error = NULL;
GHashTable *new_apps;
GHashTableIter iter;
gpointer key, value;
g_assert (tree == self->priv->apps_tree);
g_hash_table_remove_all (self->priv->visible_id_to_app);
g_slist_free_full (self->priv->known_vendor_prefixes, g_free);
self->priv->known_vendor_prefixes = NULL;
if (!gmenu_tree_load_sync (self->priv->apps_tree, &error))
{
if (error)
{
g_warning ("Failed to load apps: %s", error->message);
g_error_free (error);
}
else
{
g_warning ("Failed to load apps");
}
return;
}
new_apps = get_flattened_entries_from_tree (self->priv->apps_tree);
g_hash_table_iter_init (&iter, new_apps);
while (g_hash_table_iter_next (&iter, &key, &value))
{
const char *id = key;
GMenuTreeEntry *entry = value;
GMenuTreeEntry *old_entry;
char *prefix;
ShellApp *app;
GDesktopAppInfo *info;
const char *startup_wm_class;
prefix = get_prefix_for_entry (entry);
if (prefix != NULL
&& !g_slist_find_custom (self->priv->known_vendor_prefixes, prefix,
(GCompareFunc)g_strcmp0))
self->priv->known_vendor_prefixes = g_slist_append (self->priv->known_vendor_prefixes,
prefix);
else
g_free (prefix);
app = g_hash_table_lookup (self->priv->id_to_app, id);
if (app != NULL)
{
/* We hold a reference to the original entry temporarily,
* because otherwise the hash table would be referencing
* potentially free'd memory until we replace it below with
* the new data.
*/
old_entry = shell_app_get_tree_entry (app);
gmenu_tree_item_ref (old_entry);
_shell_app_set_entry (app, entry);
g_object_ref (app); /* Extra ref, removed in _replace below */
}
else
{
old_entry = NULL;
app = _shell_app_new (entry);
}
/* Note that "id" is owned by app->entry. Since we're always
* setting a new entry, even if the app already exists in the
* hash table we need to replace the key so that the new id
* string is pointed to.
*/
g_hash_table_replace (self->priv->id_to_app, (char*)id, app);
if (!gmenu_tree_entry_get_is_nodisplay_recurse (entry))
g_hash_table_replace (self->priv->visible_id_to_app, (char*)id, app);
if (old_entry)
{
GDesktopAppInfo *old_info;
const gchar *old_startup_wm_class;
old_info = gmenu_tree_entry_get_app_info (old_entry);
old_startup_wm_class = g_desktop_app_info_get_startup_wm_class (old_info);
if (old_startup_wm_class)
g_hash_table_remove (self->priv->startup_wm_class_to_app, old_startup_wm_class);
}
info = gmenu_tree_entry_get_app_info (entry);
startup_wm_class = g_desktop_app_info_get_startup_wm_class (info);
if (startup_wm_class)
g_hash_table_replace (self->priv->startup_wm_class_to_app,
(char*)startup_wm_class, g_object_ref (app));
if (old_entry)
gmenu_tree_item_unref (old_entry);
}
/* Now iterate over the apps again; we need to unreference any apps
* which have been removed. The JS code may still be holding a
* reference; that's fine.
*/
g_hash_table_iter_init (&iter, self->priv->id_to_app);
while (g_hash_table_iter_next (&iter, &key, &value))
{
const char *id = key;
if (!g_hash_table_lookup (new_apps, id))
g_hash_table_iter_remove (&iter);
}
g_hash_table_destroy (new_apps);
g_signal_emit (self, signals[INSTALLED_CHANGED], 0);
}
/**
* shell_app_system_get_tree:
*
* Return Value: (transfer none): The #GMenuTree for apps
*/
GMenuTree *
shell_app_system_get_tree (ShellAppSystem *self)
{
return self->priv->apps_tree;
}
/**
* shell_app_system_get_default:
*
@ -446,61 +167,20 @@ ShellApp *
shell_app_system_lookup_app (ShellAppSystem *self,
const char *id)
{
return g_hash_table_lookup (self->priv->id_to_app, id);
}
/**
* shell_app_system_lookup_app_by_tree_entry:
* @system: a #ShellAppSystem
* @entry: a #GMenuTreeEntry
*
* Find a #ShellApp corresponding to a #GMenuTreeEntry.
*
* Return value: (transfer none): The #ShellApp for @entry, or %NULL if none
*/
ShellApp *
shell_app_system_lookup_app_by_tree_entry (ShellAppSystem *self,
GMenuTreeEntry *entry)
{
/* If we looked up directly in ->entry_to_app, we'd lose the
* override of running apps. Thus, indirect through the id.
*/
return shell_app_system_lookup_app (self, gmenu_tree_entry_get_desktop_file_id (entry));
}
/**
* shell_app_system_lookup_app_for_path:
* @system: a #ShellAppSystem
* @desktop_path: (type utf8): UTF-8 encoded absolute file name
*
* Find or create a #ShellApp corresponding to a given absolute file
* name which must be in the standard paths (XDG_DATA_DIRS). For
* files outside the datadirs, this function returns %NULL.
*
* Return value: (transfer none): The #ShellApp for id, or %NULL if none
*/
ShellApp *
shell_app_system_lookup_app_for_path (ShellAppSystem *system,
const char *desktop_path)
{
const char *basename;
const char *app_path;
ShellAppSystemPrivate *priv = self->priv;
ShellApp *app;
GDesktopAppInfo *info;
basename = g_strrstr (desktop_path, "/");
if (basename)
basename += 1;
else
basename = desktop_path;
app = g_hash_table_lookup (priv->id_to_app, id);
if (app)
return app;
app = shell_app_system_lookup_app (system, basename);
if (!app)
return NULL;
app_path = g_desktop_app_info_get_filename (shell_app_get_app_info (app));
if (strcmp (desktop_path, app_path) != 0)
info = g_desktop_app_info_new (id);
if (!info)
return NULL;
app = _shell_app_new (info);
g_hash_table_insert (priv->id_to_app, (char *) id, app);
return app;
}
@ -520,15 +200,15 @@ shell_app_system_lookup_heuristic_basename (ShellAppSystem *system,
const char *name)
{
ShellApp *result;
GSList *prefix;
const char *const *prefix;
result = shell_app_system_lookup_app (system, name);
if (result != NULL)
return result;
for (prefix = system->priv->known_vendor_prefixes; prefix; prefix = g_slist_next (prefix))
for (prefix = vendor_prefixes; *prefix != NULL; prefix++)
{
char *tmpid = g_strconcat ((char*)prefix->data, name, NULL);
char *tmpid = g_strconcat (*prefix, name, NULL);
result = shell_app_system_lookup_app (system, tmpid);
g_free (tmpid);
if (result != NULL)
@ -603,10 +283,16 @@ ShellApp *
shell_app_system_lookup_startup_wmclass (ShellAppSystem *system,
const char *wmclass)
{
const char *id;
if (wmclass == NULL)
return NULL;
return g_hash_table_lookup (system->priv->startup_wm_class_to_app, wmclass);
id = g_hash_table_lookup (system->priv->startup_wm_class_to_id, wmclass);
if (id == NULL)
return NULL;
return shell_app_system_lookup_app (system, id);
}
void
@ -618,6 +304,7 @@ _shell_app_system_notify_app_state_changed (ShellAppSystem *self,
switch (state)
{
case SHELL_APP_STATE_RUNNING:
case SHELL_APP_STATE_BUSY:
g_hash_table_insert (self->priv->running_apps, g_object_ref (app), NULL);
break;
case SHELL_APP_STATE_STARTING:
@ -660,136 +347,3 @@ shell_app_system_get_running (ShellAppSystem *self)
return ret;
}
static gint
compare_apps_by_usage (gconstpointer a,
gconstpointer b,
gpointer data)
{
ShellAppUsage *usage = shell_app_usage_get_default ();
ShellApp *app_a = (ShellApp*)a;
ShellApp *app_b = (ShellApp*)b;
return shell_app_usage_compare (usage, "", app_a, app_b);
}
static GSList *
sort_and_concat_results (ShellAppSystem *system,
GSList *prefix_matches,
GSList *substring_matches)
{
prefix_matches = g_slist_sort_with_data (prefix_matches,
compare_apps_by_usage,
system);
substring_matches = g_slist_sort_with_data (substring_matches,
compare_apps_by_usage,
system);
return g_slist_concat (prefix_matches, substring_matches);
}
/**
* normalize_terms:
* @terms: (element-type utf8): Input search terms
*
* Returns: (element-type utf8) (transfer full): Unicode-normalized and lowercased terms
*/
static GSList *
normalize_terms (GSList *terms)
{
GSList *normalized_terms = NULL;
GSList *iter;
for (iter = terms; iter; iter = iter->next)
{
const char *term = iter->data;
normalized_terms = g_slist_prepend (normalized_terms,
shell_util_normalize_casefold_and_unaccent (term));
}
return normalized_terms;
}
static GSList *
search_tree (ShellAppSystem *self,
GSList *terms,
GHashTable *apps)
{
GSList *prefix_results = NULL;
GSList *substring_results = NULL;
GSList *normalized_terms;
GHashTableIter iter;
gpointer key, value;
normalized_terms = normalize_terms (terms);
g_hash_table_iter_init (&iter, apps);
while (g_hash_table_iter_next (&iter, &key, &value))
{
ShellApp *app = value;
_shell_app_do_match (app, normalized_terms,
&prefix_results,
&substring_results);
}
g_slist_free_full (normalized_terms, g_free);
return sort_and_concat_results (self, prefix_results, substring_results);
}
/**
* shell_app_system_initial_search:
* @system: A #ShellAppSystem
* @terms: (element-type utf8): List of terms, logical AND
*
* Search through applications for the given search terms.
*
* Returns: (transfer container) (element-type ShellApp): List of applications
*/
GSList *
shell_app_system_initial_search (ShellAppSystem *self,
GSList *terms)
{
return search_tree (self, terms, self->priv->visible_id_to_app);
}
/**
* shell_app_system_subsearch:
* @system: A #ShellAppSystem
* @previous_results: (element-type ShellApp): List of previous results
* @terms: (element-type utf8): List of terms, logical AND
*
* Search through a previous result set; for more information, see
* js/ui/search.js. Note the value of @prefs must be
* the same as passed to shell_app_system_initial_search(). Note that returned
* strings are only valid until a return to the main loop.
*
* Returns: (transfer container) (element-type ShellApp): List of application identifiers
*/
GSList *
shell_app_system_subsearch (ShellAppSystem *system,
GSList *previous_results,
GSList *terms)
{
GSList *iter;
GSList *prefix_results = NULL;
GSList *substring_results = NULL;
GSList *normalized_terms = normalize_terms (terms);
previous_results = g_slist_reverse (previous_results);
for (iter = previous_results; iter; iter = iter->next)
{
ShellApp *app = iter->data;
_shell_app_do_match (app, normalized_terms,
&prefix_results,
&substring_results);
}
g_slist_free_full (normalized_terms, g_free);
/* Note that a shorter term might have matched as a prefix, but
when extended only as a substring, so we have to redo the
sort rather than reusing the existing ordering */
return sort_and_concat_results (system, prefix_results, substring_results);
}

View File

@ -5,8 +5,6 @@
#include <gio/gio.h>
#include <clutter/clutter.h>
#include <meta/window.h>
#define GMENU_I_KNOW_THIS_IS_UNSTABLE
#include <gmenu-tree.h>
#include "shell-app.h"
@ -39,14 +37,8 @@ struct _ShellAppSystemClass
GType shell_app_system_get_type (void) G_GNUC_CONST;
ShellAppSystem *shell_app_system_get_default (void);
GMenuTree *shell_app_system_get_tree (ShellAppSystem *system);
ShellApp *shell_app_system_lookup_app (ShellAppSystem *system,
const char *id);
ShellApp *shell_app_system_lookup_app_by_tree_entry (ShellAppSystem *system,
GMenuTreeEntry *entry);
ShellApp *shell_app_system_lookup_app_for_path (ShellAppSystem *system,
const char *desktop_path);
ShellApp *shell_app_system_lookup_heuristic_basename (ShellAppSystem *system,
const char *id);
@ -57,10 +49,4 @@ ShellApp *shell_app_system_lookup_desktop_wmclass (ShellAppSystem *s
GSList *shell_app_system_get_running (ShellAppSystem *self);
GSList *shell_app_system_initial_search (ShellAppSystem *system,
GSList *terms);
GSList *shell_app_system_subsearch (ShellAppSystem *system,
GSList *previous_results,
GSList *terms);
#endif /* __SHELL_APP_SYSTEM_H__ */

View File

@ -527,19 +527,19 @@ shell_app_usage_get_most_used (ShellAppUsage *self,
* shell_app_usage_compare:
* @self: the usage instance to request
* @context: Activity identifier
* @app_a: First app
* @app_b: Second app
* @id_a: ID of first app
* @id_b: ID of second app
*
* Compare @app_a and @app_b based on frequency of use.
* Compare @id_a and @id_b based on frequency of use.
*
* Returns: -1 if @app_a ranks higher than @app_b, 1 if @app_b ranks higher
* than @app_a, and 0 if both rank equally.
* Returns: -1 if @id_a ranks higher than @id_b, 1 if @id_b ranks higher
* than @id_a, and 0 if both rank equally.
*/
int
shell_app_usage_compare (ShellAppUsage *self,
const char *context,
ShellApp *app_a,
ShellApp *app_b)
const char *id_a,
const char *id_b)
{
GHashTable *usages;
UsageData *usage_a, *usage_b;
@ -548,8 +548,8 @@ shell_app_usage_compare (ShellAppUsage *self,
if (usages == NULL)
return 0;
usage_a = g_hash_table_lookup (usages, shell_app_get_id (app_a));
usage_b = g_hash_table_lookup (usages, shell_app_get_id (app_b));
usage_a = g_hash_table_lookup (usages, id_a);
usage_b = g_hash_table_lookup (usages, id_b);
if (usage_a == NULL && usage_b == NULL)
return 0;

View File

@ -31,8 +31,8 @@ GSList *shell_app_usage_get_most_used (ShellAppUsage *usage,
const char *context);
int shell_app_usage_compare (ShellAppUsage *self,
const char *context,
ShellApp *app_a,
ShellApp *app_b);
const char *id_a,
const char *id_b);
G_END_DECLS

View File

@ -53,7 +53,7 @@ typedef struct {
* SECTION:shell-app
* @short_description: Object representing an application
*
* This object wraps a #GMenuTreeEntry, providing methods and signals
* This object wraps a #GDesktopAppInfo, providing methods and signals
* primarily useful for running applications.
*/
struct _ShellApp
@ -64,7 +64,7 @@ struct _ShellApp
ShellAppState state;
GMenuTreeEntry *entry; /* If NULL, this app is backed by one or more
GDesktopAppInfo *info; /* If NULL, this app is backed by one or more
* MetaWindow. For purposes of app title
* etc., we use the first window added,
* because it's most likely to be what we
@ -137,15 +137,15 @@ shell_app_get_property (GObject *gobject,
const char *
shell_app_get_id (ShellApp *app)
{
if (app->entry)
return gmenu_tree_entry_get_desktop_file_id (app->entry);
if (app->info)
return g_app_info_get_id (G_APP_INFO (app->info));
return app->window_id_string;
}
static MetaWindow *
window_backed_app_get_window (ShellApp *app)
{
g_assert (app->entry == NULL);
g_assert (app->info == NULL);
g_assert (app->running_state);
g_assert (app->running_state->windows);
return app->running_state->windows->data;
@ -194,10 +194,10 @@ shell_app_create_icon_texture (ShellApp *app,
ret = NULL;
if (app->entry == NULL)
if (app->info == NULL)
return window_backed_app_get_icon (app, size);
icon = g_app_info_get_icon (G_APP_INFO (gmenu_tree_entry_get_app_info (app->entry)));
icon = g_app_info_get_icon (G_APP_INFO (app->info));
if (icon != NULL)
ret = st_texture_cache_load_gicon (st_texture_cache_get_default (), NULL, icon, size);
@ -245,7 +245,7 @@ shell_app_create_faded_icon_cpu (StTextureCache *cache,
info = NULL;
icon = g_app_info_get_icon (G_APP_INFO (gmenu_tree_entry_get_app_info (app->entry)));
icon = g_app_info_get_icon (G_APP_INFO (app->info));
if (icon != NULL)
{
info = gtk_icon_theme_lookup_by_gicon (gtk_icon_theme_get_default (),
@ -347,7 +347,7 @@ shell_app_get_faded_icon (ShellApp *app, int size, ClutterTextDirection directio
* property tracking bits, and this helps us visually distinguish
* app-tracked from not.
*/
if (!app->entry)
if (!app->info)
return window_backed_app_get_icon (app, size);
/* Use icon: prefix so that we get evicted from the cache on
@ -384,8 +384,8 @@ shell_app_get_faded_icon (ShellApp *app, int size, ClutterTextDirection directio
const char *
shell_app_get_name (ShellApp *app)
{
if (app->entry)
return g_app_info_get_name (G_APP_INFO (gmenu_tree_entry_get_app_info (app->entry)));
if (app->info)
return g_app_info_get_name (G_APP_INFO (app->info));
else
{
MetaWindow *window = window_backed_app_get_window (app);
@ -401,8 +401,8 @@ shell_app_get_name (ShellApp *app)
const char *
shell_app_get_description (ShellApp *app)
{
if (app->entry)
return g_app_info_get_description (G_APP_INFO (gmenu_tree_entry_get_app_info (app->entry)));
if (app->info)
return g_app_info_get_description (G_APP_INFO (app->info));
else
return NULL;
}
@ -417,7 +417,7 @@ shell_app_get_description (ShellApp *app)
gboolean
shell_app_is_window_backed (ShellApp *app)
{
return app->entry == NULL;
return app->info == NULL;
}
typedef struct {
@ -653,6 +653,7 @@ shell_app_activate_full (ShellApp *app,
case SHELL_APP_STATE_STARTING:
break;
case SHELL_APP_STATE_RUNNING:
case SHELL_APP_STATE_BUSY:
shell_app_activate_window (app, NULL, timestamp);
break;
}
@ -669,7 +670,7 @@ void
shell_app_open_new_window (ShellApp *app,
int workspace)
{
g_return_if_fail (app->entry != NULL);
g_return_if_fail (app->info != NULL);
/* Here we just always launch the application again, even if we know
* it was already running. For most applications this
@ -864,25 +865,24 @@ _shell_app_new_for_window (MetaWindow *window)
}
ShellApp *
_shell_app_new (GMenuTreeEntry *info)
_shell_app_new (GDesktopAppInfo *info)
{
ShellApp *app;
app = g_object_new (SHELL_TYPE_APP, NULL);
_shell_app_set_entry (app, info);
_shell_app_set_app_info (app, info);
return app;
}
void
_shell_app_set_entry (ShellApp *app,
GMenuTreeEntry *entry)
_shell_app_set_app_info (ShellApp *app,
GDesktopAppInfo *info)
{
if (app->entry != NULL)
gmenu_tree_item_unref (app->entry);
app->entry = gmenu_tree_item_ref (entry);
g_clear_object (&app->info);
app->info = g_object_ref (info);
if (app->name_collation_key != NULL)
g_free (app->name_collation_key);
app->name_collation_key = g_utf8_collate_key (shell_app_get_name (app), -1);
@ -960,10 +960,8 @@ application_properties_changed (GDBusConnection *connection,
{
ShellApp *app = user_data;
GVariant *changed_properties;
GVariantIter iter;
gboolean busy = FALSE;
const gchar *key, *interface_name_for_signal;
GVariant *value;
const gchar *interface_name_for_signal;
g_variant_get (parameters,
"(&s@a{sv}as)",
@ -974,19 +972,7 @@ application_properties_changed (GDBusConnection *connection,
if (g_strcmp0 (interface_name_for_signal, "org.gtk.Application") != 0)
return;
g_variant_iter_init (&iter, changed_properties);
while (g_variant_iter_next (&iter, "{&sv}", &key, &value))
{
if (g_strcmp0 (key, "Busy") != 0)
{
g_variant_unref (value);
continue;
}
busy = g_variant_get_boolean (value);
g_variant_unref (value);
break;
}
g_variant_lookup (changed_properties, "Busy", "b", &busy);
if (busy)
shell_app_state_transition (app, SHELL_APP_STATE_BUSY);
@ -1201,7 +1187,6 @@ shell_app_launch (ShellApp *app,
char **startup_id,
GError **error)
{
GDesktopAppInfo *gapp;
GdkAppLaunchContext *context;
gboolean ret;
ShellGlobal *global;
@ -1211,7 +1196,7 @@ shell_app_launch (ShellApp *app,
if (startup_id)
*startup_id = NULL;
if (app->entry == NULL)
if (app->info == NULL)
{
MetaWindow *window = window_backed_app_get_window (app);
/* We can't pass URIs into a window; shouldn't hit this
@ -1237,8 +1222,7 @@ shell_app_launch (ShellApp *app,
gdk_app_launch_context_set_timestamp (context, timestamp);
gdk_app_launch_context_set_desktop (context, workspace);
gapp = gmenu_tree_entry_get_app_info (app->entry);
ret = g_desktop_app_info_launch_uris_as_manager (gapp, uris,
ret = g_desktop_app_info_launch_uris_as_manager (app->info, uris,
G_APP_LAUNCH_CONTEXT (context),
G_SPAWN_SEARCH_PATH | G_SPAWN_DO_NOT_REAP_CHILD,
NULL, NULL,
@ -1258,21 +1242,7 @@ shell_app_launch (ShellApp *app,
GDesktopAppInfo *
shell_app_get_app_info (ShellApp *app)
{
if (app->entry)
return gmenu_tree_entry_get_app_info (app->entry);
return NULL;
}
/**
* shell_app_get_tree_entry:
* @app: a #ShellApp
*
* Returns: (transfer none): The #GMenuTreeEntry for this app, or %NULL if backed by a window
*/
GMenuTreeEntry *
shell_app_get_tree_entry (ShellApp *app)
{
return app->entry;
return app->info;
}
static void
@ -1387,24 +1357,22 @@ shell_app_init_search_data (ShellApp *app)
const char *exec;
const char * const *keywords;
char *normalized_exec;
GDesktopAppInfo *appinfo;
appinfo = gmenu_tree_entry_get_app_info (app->entry);
name = g_app_info_get_name (G_APP_INFO (appinfo));
name = g_app_info_get_name (G_APP_INFO (app->info));
app->casefolded_name = shell_util_normalize_casefold_and_unaccent (name);
generic_name = g_desktop_app_info_get_generic_name (appinfo);
generic_name = g_desktop_app_info_get_generic_name (app->info);
if (generic_name)
app->casefolded_generic_name = shell_util_normalize_casefold_and_unaccent (generic_name);
else
app->casefolded_generic_name = NULL;
exec = g_app_info_get_executable (G_APP_INFO (appinfo));
exec = g_app_info_get_executable (G_APP_INFO (app->info));
normalized_exec = shell_util_normalize_casefold_and_unaccent (exec);
app->casefolded_exec = trim_exec_line (normalized_exec);
g_free (normalized_exec);
keywords = g_desktop_app_info_get_keywords (appinfo);
keywords = g_desktop_app_info_get_keywords (app->info);
if (keywords)
{
@ -1525,16 +1493,14 @@ _shell_app_do_match (ShellApp *app,
GSList **substring_results)
{
ShellAppSearchMatch match;
GAppInfo *appinfo;
g_assert (app != NULL);
/* Skip window-backed apps */
appinfo = (GAppInfo*)shell_app_get_app_info (app);
if (appinfo == NULL)
if (app->info == NULL)
return;
/* Skip not-visible apps */
if (!g_app_info_should_show (appinfo))
if (!g_app_info_should_show (G_APP_INFO (app->info)))
return;
match = _shell_app_match_search_terms (app, terms);
@ -1563,11 +1529,7 @@ shell_app_dispose (GObject *object)
{
ShellApp *app = SHELL_APP (object);
if (app->entry)
{
gmenu_tree_item_unref (app->entry);
app->entry = NULL;
}
g_clear_object (&app->info);
if (app->running_state)
{

View File

@ -4,9 +4,8 @@
#include <clutter/clutter.h>
#include <gio/gio.h>
#include <gio/gdesktopappinfo.h>
#include <meta/window.h>
#define GMENU_I_KNOW_THIS_IS_UNSTABLE
#include <gmenu-tree.h>
G_BEGIN_DECLS
@ -39,7 +38,6 @@ GType shell_app_get_type (void) G_GNUC_CONST;
const char *shell_app_get_id (ShellApp *app);
GMenuTreeEntry *shell_app_get_tree_entry (ShellApp *app);
GDesktopAppInfo *shell_app_get_app_info (ShellApp *app);
ClutterActor *shell_app_create_icon_texture (ShellApp *app, int size);

View File

@ -771,6 +771,6 @@ shell_keyring_prompt_cancel (ShellKeyringPrompt *self)
self->async_result = NULL;
self->mode = PROMPTING_NONE;
g_simple_async_result_complete (res);
g_simple_async_result_complete_in_idle (res);
g_object_unref (res);
}

View File

@ -844,6 +844,7 @@ ShellApp *
shell_startup_sequence_get_app (ShellStartupSequence *sequence)
{
const char *appid;
char *basename;
ShellAppSystem *appsys;
ShellApp *app;
@ -851,8 +852,10 @@ shell_startup_sequence_get_app (ShellStartupSequence *sequence)
if (!appid)
return NULL;
basename = g_path_get_basename (appid);
appsys = shell_app_system_get_default ();
app = shell_app_system_lookup_app_for_path (appsys, appid);
app = shell_app_system_lookup_app (appsys, basename);
g_free (basename);
return app;
}

View File

@ -142,11 +142,13 @@ st_scroll_view_fade_paint_target (ClutterOffscreenEffect *effect)
st_adjustment_get_values (self->vadjustment, &value, &lower, &upper, NULL, NULL, &page_size);
value = (value - lower) / (upper - page_size - lower);
clutter_shader_effect_set_uniform (shader, "fade_edges_v", G_TYPE_INT, 1, self->fade_edges ? value >= 0.0 : value > 0.0);
clutter_shader_effect_set_uniform (shader, "fade_edges_top", G_TYPE_INT, 1, self->fade_edges ? value >= 0.0 : value > 0.0);
clutter_shader_effect_set_uniform (shader, "fade_edges_bottom", G_TYPE_INT, 1, self->fade_edges ? value <= 1.0 : value < 1.0);
st_adjustment_get_values (self->hadjustment, &value, &lower, &upper, NULL, NULL, &page_size);
value = (value - lower) / (upper - page_size - lower);
clutter_shader_effect_set_uniform (shader, "fade_edges_h", G_TYPE_INT, 1, self->fade_edges ? value >= 0.0 : value > 0.0);
clutter_shader_effect_set_uniform (shader, "fade_edges_left", G_TYPE_INT, 1, self->fade_edges ? value >= 0.0 : value > 0.0);
clutter_shader_effect_set_uniform (shader, "fade_edges_right", G_TYPE_INT, 1, self->fade_edges ? value <= 1.0 : value < 1.0);
clutter_shader_effect_set_uniform (shader, "vfade_offset", G_TYPE_FLOAT, 1, self->vfade_offset);
clutter_shader_effect_set_uniform (shader, "hfade_offset", G_TYPE_FLOAT, 1, self->hfade_offset);

View File

@ -22,8 +22,10 @@ uniform float height;
uniform float width;
uniform float vfade_offset;
uniform float hfade_offset;
uniform bool fade_edges_h;
uniform bool fade_edges_v;
uniform bool fade_edges_top;
uniform bool fade_edges_right;
uniform bool fade_edges_bottom;
uniform bool fade_edges_left;
uniform vec2 fade_area_topleft;
uniform vec2 fade_area_bottomright;
@ -44,10 +46,10 @@ void main ()
float ratio = 1.0;
float fade_bottom_start = fade_area_bottomright[1] - vfade_offset;
float fade_right_start = fade_area_bottomright[0] - hfade_offset;
bool fade_top = y < vfade_offset && fade_edges_v;
bool fade_bottom = y > fade_bottom_start && fade_edges_v;
bool fade_left = x < hfade_offset && fade_edges_h;
bool fade_right = x > fade_right_start && fade_edges_h;
bool fade_top = y < vfade_offset && fade_edges_top;
bool fade_bottom = y > fade_bottom_start && fade_edges_bottom;
bool fade_left = x < hfade_offset && fade_edges_left;
bool fade_right = x > fade_right_start && fade_edges_right;
float vfade_scale = height / vfade_offset;
if (fade_top) {