Compare commits

..

105 Commits

Author SHA1 Message Date
6718b69f53 Bump version to 3.6.3
Update NEWS
2013-02-13 19:01:56 +01:00
7e0f84c7ce ScreenShield: try harder to become modal, and catch failures
The screenshield was not checking the return value of pushModal(), meaning
that it believed it was fully locked when it was not. Later, calling
popModal() would fail, causing an exception and blocking the unlock.
Now we do nothing for user initiated actions, and fail with an explanatory
message at idle time.

https://bugzilla.gnome.org/show_bug.cgi?id=689106
2013-02-13 18:36:23 +01:00
450db05b55 MessageTray: fix reentrancy problem in hideNotificationCompleted
Hiding notificationWidget with a telepathy notification causes
unfocused to be emitted, which causes a reentrant updateState.
If another notification is queued, it is shown before the old
one is cleared.

https://bugzilla.gnome.org/show_bug.cgi?id=683986
2013-02-10 00:00:34 +01:00
5be206f0f4 MessageTray: remove all tweens when tweening for state parameters
MessageTray._tween sets the state variable to the in-progress value,
so it must be sure that at the end of the animation the value will
be the corresponding final and nothing else will happen in between.

https://bugzilla.gnome.org/show_bug.cgi?id=683986
2013-02-10 00:00:34 +01:00
c3706faeb6 MessageTray: restore opacity when expanding a notification
MessageTray tweens both opacity and y to hide or show _notificationWidget,
but only y when expanding it. This means that an existing tween to hide
the notification will continue running, clearing the notification state.
If the hiding one completes before the showing one, the onComplete handler
will throw an exception (because the notification was nullified) and
therefore break the state tracking.

https://bugzilla.gnome.org/show_bug.cgi?id=683986
2013-02-10 00:00:34 +01:00
537297a6de MessageTray: fix reentrancy when calling out to the grab helper
Similar to 683546. I'm not sure where this bug lives, but let's make
the code robust.

https://bugzilla.gnome.org/show_bug.cgi?id=683986
2013-02-10 00:00:34 +01:00
1635caca8b Update French translation 2013-02-08 17:20:13 +01:00
85a5e5dcae [l10n] Update Japanese translation 2013-02-06 23:32:52 +09:00
586f16735e [l10n] remove obsolet message. 2013-02-06 23:32:52 +09:00
f00a9c9646 [l10n] remove location from ja.po 2013-02-06 23:32:52 +09:00
57d6fec65e Really use the right getter
Doh, it is actually a uint, not an int.
2013-01-17 18:07:51 +01:00
d339d2db09 Use the right getter
org.gnome.desktop.screensaver lock-delay is an integer, not
a boolean, so don't use get_bool() on it.

https://bugzilla.gnome.org/show_bug.cgi?id=691170
2013-01-17 18:07:51 +01:00
4b8891b37a Updated Uyghur translation
Signed-off-by: Gheyret Kenji <gheyret@gmail.com>
2013-01-04 22:27:11 +09:00
09cdfff8fd Updated Hungarian translation 2012-12-31 18:12:53 +01:00
db1aea2109 ScreenShield: honor lock-delay GSettings key
org.gnome.desktop.screensaver.lock-delay contains the grace period
of the screensaver: if deactivated within that many seconds from the
start of the idle period, the shell should not prompt for a password.
This setting correspond to the "Lock screen after" combo in screen
and privacy panels.

https://bugzilla.gnome.org/show_bug.cgi?id=690766
2012-12-28 13:45:15 +01:00
d7c28b10a6 Updated Brazilian Portuguese Translation 2012-12-27 04:04:56 -02:00
2fd4e28655 Updated Bengali India Translation 2012-12-10 18:26:41 +05:30
5d18d84684 Updated Tamil translation 2012-12-09 14:36:37 +05:30
be4a5eefd5 Updated Kannada Translations 2012-12-07 16:11:34 +05:30
e9cf272c9b Updated Kannada Translations 2012-12-07 15:38:18 +05:30
6e3c2cce95 hindi translation update to coorect one entrie as per FUEL guidelines 2012-11-30 14:57:04 +05:30
76837d4666 Updated Telugu Translations 2012-11-28 16:41:02 +05:30
3e3a2eeba9 Updated Telugu Translations 2012-11-28 16:36:29 +05:30
93d52ecf48 Updated Indonesian translation 2012-11-26 19:53:36 +07:00
78ba4c1871 Updated Malayalam translations 2012-11-26 15:02:15 +05:30
9a70fc0604 Assamese translation updated 2012-11-23 17:22:01 +05:30
58dd868e6c hindi translation update 2012-11-23 14:40:20 +05:30
2192b81e40 Updated Dutch translation 2012-11-22 13:39:39 +01:00
38066f73dc Updated Dutch translation 2012-11-22 13:37:51 +01:00
283da8931e Updated Marathi Translations 2012-11-22 13:40:05 +05:30
4007f5d36e Block cancellation of the unlock dialog when dragging
Pressing esc while the mouse is down should not make the curtain fall,
otherwise a gray screen results.

https://bugzilla.gnome.org/show_bug.cgi?id=686800

Conflicts:
	js/ui/screenShield.js
	js/ui/unlockDialog.js
2012-11-21 12:38:58 +01:00
a2b8b969bd shell-recorder-src: Set frame duration
We where not setting a duration for the frames, which caused the resulting videos to
have a broken header.

Fix that by making the source a live source and setting the correct frame duration.

https://bugzilla.gnome.org/show_bug.cgi?id=688487
2012-11-19 19:30:33 +01:00
52f966ba7b [l10n] Updated Estonian translation 2012-11-19 16:44:39 +02:00
8f1282ea6a Revert "st-theme-node-drawing: Group multiple cogl_rectangle calls"
This reverts commit 4fa914af31.

Pushed to wrong branch.
2012-11-16 19:27:40 +01:00
2839670719 Revert "recorder: Remove dead code"
This reverts commit 0397a77713.

Pushed to wrong branch.
2012-11-16 19:27:18 +01:00
4fa914af31 st-theme-node-drawing: Group multiple cogl_rectangle calls
Calling cogl_rectangles is more efficent then using multiple cogl_rectangle calls.

https://bugzilla.gnome.org/show_bug.cgi?id=688475
2012-11-16 19:24:50 +01:00
0397a77713 recorder: Remove dead code
This calls are nops (we already called them a few lines above)
so just remove them.
2012-11-16 19:24:03 +01:00
8461f44048 Bump version to 3.6.2
Update NEWS
2012-11-12 22:02:39 +01:00
c32f13e0f6 Update .gitignore 2012-11-12 21:17:37 +01:00
7e8d6f23c2 loginDialog: support disable-user-list key
In some deployments showing a user list at the login
screen is undesirable.

GDM's fallback login screen has a configuration key:

org.gnome.login-screen disable-user-list false

that causes the user-list to get hidden.

This commit adds similar functionality to the normal,
shell-based login screen.

Based on a series of patches by Marius Rieder.

https://bugzilla.gnome.org/show_bug.cgi?id=660660
2012-11-12 14:09:25 -05:00
f4377138f1 loginDialog: hide session list until username is entered
Right now when a user clicks "Not Listed?" they end up
seeing a session list that gets reset after they enter their
username.

This commit hides the session list until the username has
been entered.

https://bugzilla.gnome.org/show_bug.cgi?id=660660
2012-11-12 13:43:16 -05:00
dcbdae85eb loginDialog: don't rely on PAM to ask for a username
For the "Not Listed?" case we will need to be able
to identify when the user has entered their username.

Once we have a way of tracking when the username is
entered, we can then defer showing the session list
too early, before the user can reliably pick a
session.

This username tracking will also be important for
implementing a disable-user-list configuration key.
If the config key gets toggled off at runtime, we'll
need to know if we're at a disruptive part of
the authentication process or not, so we know whether
we can can expose the user list right away, or wait
until the authentication conversation finishes.

Right now, we pass null in for an initial username,
and let the PAM machinery ask the user, which means we
have no good way of knowing when the username is entered.

This commit changes the "Not Listed?" code to ask the
user their username up front, before starting the PAM
conversation in much the same way we do if the user
picks a user from the user list.

https://bugzilla.gnome.org/show_bug.cgi?id=660660
2012-11-12 13:43:10 -05:00
980c3290de shell-screen-grabber.c: Fix PBO path for big-endian machines
GL_BGRA/GL_UNSIGNED_BYTE only properly represents the Cairo pixel
format for little-endian machines. On big endian machines we need to use
GL_BGRA/GL_UNSIGNED_INT_8_8_8_8_REV. That would also work for little-
endian, but for minimum disruption we keep using the old version on
little endian.

https://bugzilla.gnome.org/show_bug.cgi?id=685915
2012-11-12 19:09:59 +01:00
2acb129505 loginDialog: Fix yet another StIconType removal fallout
https://bugzilla.gnome.org/show_bug.cgi?id=688181
2012-11-12 18:46:33 +01:00
09b897369d loginDialog: Remove the correct focus root from ctrl-alt-tab
Commit 3abfcda8b5 fixed the focus root passed to addGroup(),
but left the one in removeGroup() unchanged.

https://bugzilla.gnome.org/show_bug.cgi?id=688181
2012-11-12 18:46:33 +01:00
68e011d4cb polkitAgent: Expand password entry to the full width
Due to an oversight, the width of the password entry is currently
determined by the length of the message description. Fix the flags
so that the entry spans the entire width of the dialog.

https://bugzilla.gnome.org/show_bug.cgi?id=684810
2012-11-12 17:40:11 +01:00
f4cc2474bd dash: Disable animations during overview transitions
When updating the dash, we already avoid all animations while the
overview is hidden. However, as we are using Main.queueDeferredWork(),
updates may be deferred up to ~20 seconds while the overview is hidden.
If the overview is entered before a queued update has taken place, it
will be run immediately on map - as the overview is visible by then,
this means animating any outstanding changes.
Work around this by skipping animations during overview transitions as
well.

https://bugzilla.gnome.org/show_bug.cgi?id=686530
2012-11-12 17:40:11 +01:00
01b2f596a2 messageTray: Hide summary notification immediately when closing the tray
When the summary notification is open when the tray is closed, we end
up with two concurrent animations: the notification fading out, and the
tray moving away from underneath it. Sliding out the tray should be the
primary transition here, so hide the notification immediately to not
draw the user's attention away from it.

https://bugzilla.gnome.org/show_bug.cgi?id=686888
2012-11-12 13:48:12 +01:00
423d8ab5ec messageTray: Hide notification close button immediately on click
Having the close button move away from under the pointer after
clicking it is confusing and distracts from the main transition,
which is hiding the notification. Just hide it immediately.

https://bugzilla.gnome.org/show_bug.cgi?id=682237
2012-11-12 13:48:12 +01:00
5fb355ba2d messageTray: Don't destroy the notification when clicking on the close button
Clicking on the close button should simply hide the notification.

https://bugzilla.gnome.org/show_bug.cgi?id=682237
2012-11-12 13:48:12 +01:00
c16f9ba7c4 messageTray: Only hide the notification stack on clicking close
Rather than destroying the entire source, which is unintuitive, simply
close the notification. Removing the entire source is still possible
by right-clicking on the summary item and choosing "Remove".

https://bugzilla.gnome.org/show_bug.cgi?id=682237
2012-11-12 13:48:12 +01:00
972267e215 messageTray: make SummaryItem._closeButton public
Use this to show/hide the close button instead of closeButtonVisible.

https://bugzilla.gnome.org/show_bug.cgi?id=682237
2012-11-12 13:48:12 +01:00
678d3623ed ScreenShield: fix code to detect missing unlock dialog
If the session mode has no locking support, screenshield had code to
unlock automatically, but it did so by checking the return value of
the constructor, instead of checking if the constructor was actually
callable, so it would get a TypeError before reaching the check.

https://bugzilla.gnome.org/show_bug.cgi?id=687708
2012-11-11 19:20:15 +01:00
1a86dd9df3 ScreenShield: don't rely on gnome-session to hide the lightbox
If we lock before the user becomes active again, gnome-session will never
change presence from IDLE, and thus we'll never hide the lightbox.
Instead, install our own idle monitor.

https://bugzilla.gnome.org/show_bug.cgi?id=687020
2012-11-11 19:19:31 +01:00
f7423967b6 power: indicate 1 hour remaining correctly
Before 60 minutes remaining were displayed
as "0 minutes" now it is "1 hour".

https://bugzilla.gnome.org/show_bug.cgi?id=687958
2012-11-09 17:18:16 +01:00
ec1a13a325 UnlockDialog: clear the password on failure
It is wrong, and the user can't correct it because it's obfuscated.
Just let him type it again.

https://bugzilla.gnome.org/show_bug.cgi?id=687132
2012-11-08 19:00:17 -05:00
d7adfe9bf1 ShellUserVerifier: fix fail counter
If it is updated after checking, it counts the number of failures
not including the current one, so it allows one extra attempt. Instead,
by updating it before checking, we get the expected result of dropping the
curtain at the third password.

https://bugzilla.gnome.org/show_bug.cgi?id=687132
2012-11-08 19:00:09 -05:00
26026ecf10 LoginDialog: clear previous auth failed messages when trying again
When the user has the entered the password for the second time
and clicked OK, clear messages from the previous attempt, so any
new failure is shown clearly.

https://bugzilla.gnome.org/show_bug.cgi?id=687132
2012-11-08 19:00:00 -05:00
6ff09f8bf9 Updated Spanish translation 2012-11-08 12:40:17 +01:00
ced93003fb [l10n] Updated German translation 2012-11-06 20:11:27 +01:00
c05605f27c a11y: fixing a regression with the accessible name at dash items
After some changes, the tooltip label at the dash is not available
until it is visually shown. As this is not anymore a reliable
source of accessible name, we just set the accessible name
with the string used on that label.

https://bugzilla.gnome.org/show_bug.cgi?id=686583
2012-11-06 10:05:11 +01:00
d8c5cc3b52 Add a --disable-man configure option
OSTree doesn't have DocBook stylesheets, so generating
man pages from xml causes build failures there.
2012-11-05 23:39:32 -05:00
25ddcab9bf Use the same xsltproc parameters as other modules
Using the same parameters makes sure that the generated man
pages look more or less uniform.
2012-11-05 23:33:38 -05:00
11f79d1bd4 Some updates to the man page
Mention relevant files, and how gnome-shell gets started
in the session.

https://bugzilla.gnome.org/show_bug.cgi?id=680601
2012-11-05 19:33:38 -05:00
d046ba597f Convert man page to Docbook
This make it easier to update the content and to transform
the man page into other output formats, like HTML.

https://bugzilla.gnome.org/show_bug.cgi?id=680601
2012-11-05 19:33:26 -05:00
d11b1a0ac8 Updated gujarati file 2012-11-05 12:23:42 +05:30
dc43ff4c29 Updated Czech translation 2012-11-04 20:00:17 +01:00
c2fc886053 Updated Russian translation 2012-11-04 20:49:07 +04:00
c0ae60ee50 update Punjabi Translation for package 2012-11-04 09:27:16 +05:30
6cf694d6c9 [l10n] Updated Catalan translation 2012-11-03 16:22:50 +01:00
4f6cc5fa08 Updated Serbian translation 2012-11-03 09:09:07 +01:00
99b768ec54 telepathyClient: Fix auto-scroll to bottom
Instead of keeping track of the old adjustment.upper keep track of the
old adjustment.value that corresponded to the bottom scroll position.

This fixes the integrated chatview not always scrolling to the bottom
by removing the assumption that page_size is constant between updates,
which is not the case as the view is presented in various different ways.

https://bugzilla.gnome.org/show_bug.cgi?id=686571
2012-11-02 16:25:31 +01:00
23db99b96a Updated Belarusian translation. 2012-11-02 15:12:10 +03:00
e54b3ecbe6 Updated Norwegian bokmål translation 2012-11-02 08:10:33 +01:00
9ce1c18529 Updated Lithuanian translation 2012-11-01 15:24:18 +02:00
cc5dce7e36 Updated Galician translations 2012-11-01 11:21:58 +01:00
e429b222c9 Updated Polish translation 2012-10-31 19:14:46 +01:00
3079565eb5 Updated Slovenian translation 2012-10-31 18:58:12 +01:00
a618c41e7b Add a setting to force the 'Log out' menuitem
I've heard quite a bit of feedback from people who want to log out,
even if they are the sole user on their system. It doesn't seem worth
alienating them over this; so add a setting to make the 'Log out' item
always show up.
https://bugzilla.gnome.org/show_bug.cgi?id=686057
2012-10-31 12:48:11 -04:00
b9851e3127 Show 'Log out' in more situations
When the current user is a remote account, or a we are logged in
as root, we should always show 'Log out'.

https://bugzilla.gnome.org/show_bug.cgi?id=686736
2012-10-31 12:45:33 -04:00
eb3b68a4d1 calendar: Drop unnecessary libedataserverui dependency
The libedataserverui dependency is a relic of the old E-D-S API.
As of 3.6.0, E-D-S now centralizes authentication prompts so clients
don't have to display their own.  This also allows trading the GTK+
main loop for a plain GMainLoop in gnome-shell-calendar-server.c.

https://bugzilla.gnome.org/show_bug.cgi?id=687189

(cherry picked from commit 29714922ea)
2012-10-30 14:55:00 -04:00
8ca914638e NetworkAgent: cancel requests when disabling component
When the NetworkAgent is disabled (for example because the lock screen
is being activated), cancel all modal dialogs.

https://bugzilla.gnome.org/show_bug.cgi?id=685239
2012-10-30 16:38:05 +01:00
d1242e9ae7 App search: Match GenericName too
This is making shell search results more useful in many cases,
such as 'web', 'browser', spreadsheet'.
https://bugzilla.gnome.org/show_bug.cgi?id=687121
2012-10-29 11:52:50 -04:00
16e22017f2 Updated gujarati file 2012-10-29 12:39:58 +05:30
b7442137ab message-tray: Restore Fittsability of summary items
The reactive area of tray items should extend to the screen edge. This
regressed when implementing the new tray design, make it work again.

https://bugzilla.gnome.org/show_bug.cgi?id=686474
2012-10-26 16:31:42 +02:00
123d6e1ef6 panelMenu: Fix exception when destroying menuless button
There's explicit API to create PanelMenu.Buttons with no menu, so
guard against this case in destroy().

https://bugzilla.gnome.org/show_bug.cgi?id=686763
2012-10-26 15:50:31 +02:00
dca925e40b screenShield: Tweak curtain animation timings
Rationale:
 - Getting something out of the way should be quick;

 - Very few things in the real world move linearly so, linear
   animations, especially for something as big and visible as this,
   felt too artificial;

 - Moving the curtain out should start slower to make it feel like
   having weight (it fills the whole screen after all) but quickly
   accelerate towards the end to make it snappy too.

https://bugzilla.gnome.org/show_bug.cgi?id=686745
2012-10-26 13:03:36 +02:00
a598b06496 messageTray: Fix close button position in RTL locales
https://bugzilla.gnome.org/show_bug.cgi?id=686879
2012-10-25 22:53:05 +02:00
98686e5f7b style: Adjust close button overlap
After changing the button size, we need to adjust the x-offset by
1px (apparently the y-offset already assumed the correct size).
2012-10-25 22:53:05 +02:00
a7f61753a7 style: Fix close button size
The image is actually 32px, so we end up with a slightly fuzzy
button when scaling up to 34px. Don't do that.

Spotted by lamefun.xOr<at>gmail.com

https://bugzilla.gnome.org/show_bug.cgi?id=686574
2012-10-25 22:53:05 +02:00
8df790a069 po: Enforce RTL in fa/ug for messages that might end up as LTR
See commit 70dbfb9a56.

https://bugzilla.gnome.org/show_bug.cgi?id=686630
2012-10-25 20:14:30 +02:00
d845c8eed0 messageTray: Fix lightbox
Commit 448517032e accidentally reverted the condition for showing
the lightbox. Fix that.

https://bugzilla.gnome.org/show_bug.cgi?id=686728
2012-10-24 09:04:10 +02:00
40efe6c324 popupMenu: Overwrite ongoing animations when calling close repeatedly
Currently close() is a no-op when the menu has already been closed.
However, repeated calls could pass different animation parameters.
For instance in the user menu, we try to hide the menu immediately
before locking the screen, to avoid the popup jumping across the
screen while fading out - as we do this from the corresponding
item's activate handler, the closing is still animated if the menu's
own handler (which requests a full animation) is run first.
Fix this by changing close() to overwrite ongoing animations before
bailing out early.

https://bugzilla.gnome.org/show_bug.cgi?id=686484
2012-10-24 09:04:10 +02:00
70dbfb9a56 po: Enforce RTL in he for messages that might end up as LTR
As the messages start with a string placeholder that might be
untranslated, we need an explicit mark to ensure that the string
does not end up as LTR.

https://bugzilla.gnome.org/show_bug.cgi?id=686630
2012-10-23 22:23:45 +02:00
5e5bc71064 workspacesView: Fix updating when number of workspaces changes
Ouch. This went unnoticed for a long time as by default (using
dynamic workspaces) only one workspace is added at a time, which
happens to work fine.

https://bugzilla.gnome.org/show_bug.cgi?id=686487
2012-10-23 18:28:05 +02:00
0ee977080d workspacesView: Fix typo
We want to check for a setting, not the existence of a function.

https://bugzilla.gnome.org/show_bug.cgi?id=686487
2012-10-23 18:28:05 +02:00
05295e5564 Updated Greek translation 2012-10-23 15:41:07 +03:00
837ea2d589 Telepathy: Set empathy-chat as prefered handler when delegating channels
https://bugzilla.gnome.org/show_bug.cgi?id=686296
2012-10-23 12:38:36 +02:00
4e58026e10 screenShield: explicitly load gnome-screensaver in fallback mode.
When running gnome-shell from lightDM, gnome-screensaver is no
longer auto-loaded. As a result the dbus calls for Lock user etc
will fail.

https://bugzilla.gnome.org/show_bug.cgi?id=683060
Bug-Ubuntu: https://launchpad.net/bugs/1064354
2012-10-22 11:22:32 -04:00
87504ea720 userMenu: Hide menu immediately before suspending
The same logic as for commit 1f30670c1d applies to the case
where we lock the screen before suspending - we don't want the
menu to jump to the opposite screen side to fade out, so remove
the animation altogether.

https://bugzilla.gnome.org/show_bug.cgi?id=686484
2012-10-19 19:10:52 +02:00
c28540b4df [l10n] Updated Estonian translation 2012-10-19 10:34:41 +03:00
1892457fcf Updated slovak translation 2012-10-18 21:11:00 +02:00
38611eafa2 ScreenShield: implement o.g.ScreenSaver.GetActiveTime
Part of the old gnome-screensaver interface, returns the number of seconds
that the screensaver has been active for.

https://bugzilla.gnome.org/show_bug.cgi?id=686064
2012-10-18 15:31:42 +02:00
4a4e5f3893 runDialog: Use a symbolic icon
Another fallout from the St.IconType changes

https://bugzilla.gnome.org/show_bug.cgi?id=686233
2012-10-17 19:06:02 +02:00
e2dae6b995 Updated Japanese translation 2012-10-16 23:30:17 +09:00
122 changed files with 11181 additions and 11091 deletions

121
NEWS
View File

@ -1,95 +1,52 @@
3.7.2
3.6.3
=====
* Enforce RTL in he for messages that might end up as LTR [Florian; #686630]
* gdm: Move logo into the panel [Florian; #685852]
* Hide notifications when closed button is clicked [Jasper, Florian; #682237]
* recorder: Set frame duration to fix broken video headers [Adel; #688487]
* Block cancellation of unlock dialog during drags [Giovanni; #686800]
* Honor lock-delay GSettings key [Giovanni, Matthias; #690766, #691170]
* Fix reentrancy problem causing the tray to disappear [Giovanni; #683986]
Contributors:
Giovanni Campagna, Matthias Clasen, Adel Gadllah,
Translations:
Mattias Põldaru [et], Sandeep Sheshrao Shedmake [mr], Wouter Bolsterlee [nl],
Rajesh Ranjan [hi], Nilamdyuti Goswami [as], Ani Peter [ml],
Andika Triwidada [id], Krishnababu Krothapalli [te], Shankar Prasad [kn],
Dr.T.Vasudevan [ta], Runa Bhattacharjee [bn_IN], Rafael Ferreira [pt_BR],
Balázs Úr [hu], Gheyret Kenji [ug], Yasumichi Akahoshi [ja], Yoji TOYODA [ja],
Alexandre Franke [fr]
3.6.2
=====
* Implement org.gnome.ScreenSaver.GetActiveTime [Giovanni; #686064]
* Explicitly load gnome-screensaver when not running GDM [Tim; #683060]
* Set Empathy as preferred handler when delegating channels [Xavier; #686296]
* Tweak screenShield animations [Rui; #686745]
* Restore Fittsability of summary items in message tray [Florian; #686474]
* Save screencasts as recent item [Ray; #680647]
* overview: Resize window captions on content change [Giovanni, Alex; #620874]
* App search: Match GenericName too [Matthias; #687121]
* runDialog: Better match style of other modal dialogs [Florian, Allan; #687127]
* Improve the button insensitive style [Stéphane; #687110]
* network: Don't use a global switch for all VPN connections [Giovanni; #682929]
* appMenu: Update on icon theme changes [Florian; #687224]
* Show 'Log out' in more situations [Matthias; #686736]
* Add a setting to force the 'Log out' menuitem [Matthias; #686057]
* overview: Improve styling of search box [Stéphane; #686479]
* Implement 'disable-user-list' in login screen [Ray; #660660]
* Add setting to force log out menuitem [Matthias; #686057]
* Fix auto-scroll to bottom in chat notifications [Sjoerd; #686571]
* Show feedback notifications when user is busy [Stéphane; #662900]
* Disable login button when there is no input [Stéphane; #687112]
* Use non-linear overview shade for background [Giovanni, Pierre-Eric; #669798]
* Reduce blocking in compositor thread [Simon, Jasper; #687465]
* network: new country-specific type to gather providers [Aleksander; #687356]
* Update man page [Matthias; #680601]
* st-entry: Change the pointer cursor on enter/leave events [Thomas; #687130]
* screenShield: Blur and desaturate the background [Giovanni, Cosimo; #682536]
* Change height of chat notifications to have more context [Carlos; #665255]
* screenShield: Account for motion velocity when hiding [Giovanni; #682537]
* screenShield: hide the cursor while the lock screen is on [Giovanni; #682535]
* Support remote search provider settings [Cosimo; #687491]
* unlockDialog: Improve label of confirmation button [Stéphane; #687656]
* userMenu: Rename "System Settings" item to "Settings" [Elad; #687738]
* messageTray: Add keybinding to focus current notification [Stéphane; #652082]
* Remove shell-screen-grabber [Neil; #685915]
* main: Stop using Metacity's keybinding files [Florian; #687672]
* Bluetooth: Remove ObexFTP functionality [Bastien; #688160]
* a11y: Also set WM theme when HighContrast is switched on [Cosimo; #688256]
* network: Rework multiple NIC support [Giovanni; #677142]
* Rework keybindings to allow selective blocking/processing [Florian; #688202]
* recorder: Show indicator on primary monitor [Adel; #688470]
* recorder: Set frame duration to fix broken video headers [Adel; #688487]
* Misc. bugfixes and cleanups [Florian, Jasper, Giovanni, Matthew, Stéphane,
Allan, Daiki, Owen, Alejandro, Jean-François, Cosimo, Sebastian, Adel, Alban;
#686484, #686728, #686805, #686574, #686763, #682428, #687132, #685239,
#687189, #687226, #658091, #670687, #687457, #687242, #687287, #687020,
#686583, #661194, #687491, #657315, #687958, #683986, #688089, #687708,
#686530, #684810, #688181, #688475, #688557, #688507, #638351]
* Hide notifications when closed button is clicked [Jasper, Florian; #682237]
* Fix screenshots on Big Endian [Owen; #685915]
* Implement 'disable-user-list' in login screen [Ray; #660660]
* Misc bugfixes [Jasper, Florian, Giovanni, Matthew, Matthias, Alejandro,
Sebastian; #686233, #686484, #686487, #686630, #686728, #686574, #686574,
#686574, #686879, #686763, #685239, #687189, #686736, #686583, #687132,
#687958, #687020, #687708, #686888, #686530, #684810, #688181]
Contributors:
Elad Alfassa, Matthew Barnes, Alban Browaeys, Giovanni Campagna,
Cosimo Cecchi, Matthias Clasen, Allan Day, Stéphane Démurget,
Jean-François Fortin Tam, Adel Gadllah, Alex Hultman, Sebastian Keller,
Rui Matos, Simon McVittie, Aleksander Morgado, Florian Müllner,
Bastien Nocera, Pierre-Eric Pelloux-Prayer, Alejandro Piñeiro, Neil Roberts,
Sjoerd Simons, Carlos Soriano Sánchez, Jasper St. Pierre, Ray Strode,
Owen Taylor, Daiki Ueno, Thomas Wood
Matthew Barnes, Giovanni Campagna, Xavier Claessens, Matthias Clasen,
Sebastian Keller, Tim Lunn, Rui Matos, Florian Müllner, Alejandro Piñeiro,
Sjoerd Simons, Jasper St. Pierre, Ray Strode, Owen Taylor
Translations:
Dušan Kazik [sk], Pavol Klačanský [sk], Piotr Drąg [pl], Yuri Myasoedov [ru],
Marek Černocký [cs], Kjartan Maraas [nb], Wolfgang Stöggl [de],
Yaron Shahrabani [he], Fran Diéguez [gl], Mattias Põldaru [et]
3.7.1
=====
* Add shortcut to open application view directly [Jeremy; #685738]
* Expose '<Super>F10' shortcut in System Settings [Florian; #672909]
* Clean up timestamp format in chat notifications [Carlos; #680989]
* loginScreen: Add support for 'disable-restart-buttons' [Florian; #686247]
* Update textures automatically on file changes [Florian; #679268]
* Implement org.gnome.ScreenSaver.GetActiveTime [Giovanni; #686064]
* Add missing translations for GSetting schema [Giovanni; #686413]
* Hide workspace switcher completely when it's not necessary [Seif; #686483]
* Explicitly load gnome-screensaver when not running GDM [Tim; #683060]
* Port to GnomeIdleMonitor [Jasper; #682224]
* Set Empathy as preferred handler when delegating channels [Xavier; #686296]
* Allow testing GDM login dialog from the session [Giovanni; #683725]
* Use all available space for windows in window picker [Jasper, Pierre-Eric;
#582650]
* Use logind for suspend if available [Florian; #686482]
* Misc. fixes and cleanups [Jasper, Florian, Adel, Rui; #677426, #680426,
#686233, #686241, #686318, #686240, #686484, #686002, #684650, #686487]
Contributors:
Jeremy Bicha, Giovanni Campagna, Xavier Claessens, Adel Gadllah, Seif Lotfy,
Tim Lunn, Rui Matos, Florian Müllner, Pierre-Eric Pelloux-Prayer,
Carlos Soriano, Jasper St. Pierre
Translations:
Andika Triwidada [id], Matej Urbančič [sl], Ihar Hrachyshka [be],
Daniel Mustieles [es], Fran Diéguez [gl], Takayuki KUSANO [ja],
Мирослав Николић [sr, sr@latin], Dušan Kazik [sk], Tom Tryfonidis [el]
Takayuki KUSANO [ja], Dušan Kazik [sk], Mattias Põldaru [et],
Tom Tryfonidis [el], Sweta Kothari [gu], Matej Urbančič [sl], Piotr Drąg [pl],
Fran Diéguez [gl], Aurimas Černius [lt], Kjartan Maraas [nb],
Ihar Hrachyshka [be], Мирослав Николић [sr, sr@latin], Gil Forcada [ca],
A S Alam [pa], Yuri Myasoedov [ru], Marek Černocký [cs], Sweta Kothari [gu],
Wolfgang Stöggl [de], Daniel Mustieles [es]
3.6.1
=====

View File

@ -153,6 +153,8 @@ NP_Initialize(NPNetscapeFuncs *pfuncs, NPPluginFuncs *plugin)
/* global initialization routine, called once when plugin
is loaded */
g_type_init ();
g_debug ("plugin loaded");
memcpy (&funcs, pfuncs, sizeof (funcs));

View File

@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.7.2],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[3.6.3],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_SRCDIR([src/shell-global.c])
@ -54,7 +54,7 @@ AC_MSG_CHECKING([for GStreamer (needed for recording functionality)])
if $PKG_CONFIG --exists gstreamer-1.0 '>=' $GSTREAMER_MIN_VERSION ; then
AC_MSG_RESULT(yes)
build_recorder=true
recorder_modules="gstreamer-1.0 gstreamer-base-1.0 x11 gtk+-3.0"
recorder_modules="gstreamer-1.0 gstreamer-base-1.0 x11"
PKG_CHECK_MODULES(TEST_SHELL_RECORDER, $recorder_modules clutter-1.0 xfixes gl)
else
AC_MSG_RESULT(no)
@ -65,9 +65,9 @@ AM_CONDITIONAL(BUILD_RECORDER, $build_recorder)
CLUTTER_MIN_VERSION=1.11.11
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
GJS_MIN_VERSION=1.33.2
MUTTER_MIN_VERSION=3.7.2
MUTTER_MIN_VERSION=3.6.2
GTK_MIN_VERSION=3.3.9
GIO_MIN_VERSION=2.35.0
GIO_MIN_VERSION=2.31.6
LIBECAL_MIN_VERSION=3.5.3
LIBEDATASERVER_MIN_VERSION=3.5.3
LIBEDATASERVERUI_MIN_VERSION=3.5.3
@ -76,9 +76,8 @@ TELEPATHY_LOGGER_MIN_VERSION=0.2.4
POLKIT_MIN_VERSION=0.100
STARTUP_NOTIFICATION_MIN_VERSION=0.11
GCR_MIN_VERSION=3.3.90
GNOME_DESKTOP_REQUIRED_VERSION=3.7.1
GNOME_DESKTOP_REQUIRED_VERSION=3.5.1
GNOME_MENUS_REQUIRED_VERSION=3.5.3
NETWORKMANAGER_MIN_VERSION=0.9.7
# Collect more than 20 libraries for a prize!
PKG_CHECK_MODULES(GNOME_SHELL, gio-unix-2.0 >= $GIO_MIN_VERSION
@ -99,9 +98,9 @@ PKG_CHECK_MODULES(GNOME_SHELL, gio-unix-2.0 >= $GIO_MIN_VERSION
telepathy-glib >= $TELEPATHY_GLIB_MIN_VERSION
telepathy-logger-0.2 >= $TELEPATHY_LOGGER_MIN_VERSION
polkit-agent-1 >= $POLKIT_MIN_VERSION xfixes
libnm-glib libnm-util >= $NETWORKMANAGER_MIN_VERSION
libnm-gtk >= $NETWORKMANAGER_MIN_VERSION
gnome-keyring-1 gcr-3 >= $GCR_MIN_VERSION)
libnm-glib libnm-util gnome-keyring-1
gcr-3 >= $GCR_MIN_VERSION
gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION)
PKG_CHECK_MODULES(SHELL_PERF_HELPER, gtk+-3.0 gio-2.0)
@ -123,10 +122,10 @@ CFLAGS=$saved_CFLAGS
LIBS=$saved_LIBS
PKG_CHECK_MODULES(GNOME_SHELL_JS, gio-2.0 gjs-internals-1.0 >= $GJS_MIN_VERSION)
PKG_CHECK_MODULES(ST, clutter-1.0 gtk+-3.0 libcroco-0.6 >= 0.6.8 x11)
PKG_CHECK_MODULES(ST, clutter-1.0 gtk+-3.0 libcroco-0.6 >= 0.6.2 x11)
PKG_CHECK_MODULES(TRAY, gtk+-3.0)
PKG_CHECK_MODULES(GVC, libpulse libpulse-mainloop-glib gobject-2.0)
PKG_CHECK_MODULES(DESKTOP_SCHEMAS, gsettings-desktop-schemas >= 3.7.2)
PKG_CHECK_MODULES(DESKTOP_SCHEMAS, gsettings-desktop-schemas >= 3.5.4)
AC_MSG_CHECKING([for bluetooth support])
PKG_CHECK_EXISTS([gnome-bluetooth-1.0 >= 3.1.0],

View File

@ -8,14 +8,5 @@
<KeyListEntry name="toggle-message-tray"
_description="Show the message tray"/>
<KeyListEntry name="focus-active-notification"
_description="Focus the active notification"/>
<KeyListEntry name="toggle-application-view"
_description="Show all applications"/>
<KeyListEntry name="open-application-menu"
_description="Open the application menu"/>
</KeyListEntries>

View File

@ -54,9 +54,7 @@ keys_in_files = \
$(NULL)
keys_DATA = $(keys_in_files:.xml.in=.xml)
gsettings_SCHEMAS = \
org.gnome.shell.gschema.xml \
org.gnome.shell-foo.gschema.xml
gsettings_SCHEMAS = org.gnome.shell.gschema.xml
@INTLTOOL_XML_NOMERGE_RULE@
@ -83,8 +81,7 @@ EXTRA_DIST = \
$(menu_DATA) \
$(convert_DATA) \
$(keys_in_files) \
org.gnome.shell.gschema.xml.in.in \
org.gnome.shell-foo.gschema.xml.in.in
org.gnome.shell.gschema.xml.in.in
CLEANFILES = \
gnome-shell.desktop.in \
@ -94,6 +91,4 @@ CLEANFILES = \
$(gsettings_SCHEMAS) \
gschemas.compiled \
org.gnome.shell.gschema.valid \
org.gnome.shell.gschema.xml.in \
org.gnome.shell-foo.gschema.valid \
org.gnome.shell-foo.gschema.xml.in
org.gnome.shell.gschema.xml.in

View File

@ -1,13 +0,0 @@
<schemalist>
<schema id="org.gnome.shell-foo.overrides" path="/org/gnome/shell-foo/overrides/"
gettext-domain="@GETTEXT_PACKAGE@">
<key name="button-layout" type="s">
<default>":minimize,close"</default>
<_summary>Arrangement of buttons on the titlebar</_summary>
<_description>
This key overrides the key in org.gnome.desktop.wm.preferences when
running GNOME Shell in Foo mode.
</_description>
</key>
</schema>
</schemalist>

View File

@ -65,11 +65,6 @@ value here is from the GsmPresenceStatus enumeration.</_summary>
menuitem in single-user, single-session situations.
</_description>
</key>
<key name="show-full-name" type="b">
<default>true</default>
<_summary>Show full name in the user menu</_summary>
<_description>Whether the users full name is shown in the user menu or not.</_description>
</key>
<child name="calendar" schema="org.gnome.shell.calendar"/>
<child name="recorder" schema="org.gnome.shell.recorder"/>
<child name="keybindings" schema="org.gnome.shell.keybindings"/>
@ -96,14 +91,6 @@ value here is from the GsmPresenceStatus enumeration.</_summary>
Keybinding to open the application menu.
</_description>
</key>
<key name="toggle-application-view" type="as">
<default>["&lt;Super&gt;a"]</default>
<_summary>Keybinding to open the "Show Applications" view</_summary>
<_description>
Keybinding to open the "Show Applications" view of the Activities
Overview.
</_description>
</key>
<key name="toggle-message-tray" type="as">
<default>["&lt;Super&gt;m"]</default>
<_summary>Keybinding to toggle the visibility of the message tray</_summary>
@ -111,13 +98,6 @@ value here is from the GsmPresenceStatus enumeration.</_summary>
Keybinding to toggle the visibility of the message tray.
</_description>
</key>
<key name="focus-active-notification" type="as">
<default>["&lt;Super&gt;n"]</default>
<_summary>Keybinding to focus the active notification</_summary>
<_description>
Keybinding to focus the active notification.
</_description>
</key>
<key name="toggle-recording" type="as">
<default><![CDATA[['<Control><Shift><Alt>r']]]></default>
<_summary>Keybinding to toggle the screen recorder</_summary>
@ -176,48 +156,47 @@ value here is from the GsmPresenceStatus enumeration.</_summary>
</key>
</schema>
<schema id="org.gnome.shell.overrides" path="/org/gnome/shell/overrides/"
gettext-domain="@GETTEXT_PACKAGE@">
<schema id="org.gnome.shell.overrides" path="/org/gnome/shell/overrides/">
<key name="attach-modal-dialogs" type="b">
<default>true</default>
<_summary>Attach modal dialog to the parent window</_summary>
<_description>
<summary>Attach modal dialog to the parent window</summary>
<description>
This key overrides the key in org.gnome.mutter when running
GNOME Shell.
</_description>
</description>
</key>
<key name="button-layout" type="s">
<default>":close"</default>
<_summary>Arrangement of buttons on the titlebar</_summary>
<_description>
<summary>Arrangement of buttons on the titlebar</summary>
<description>
This key overrides the key in org.gnome.desktop.wm.preferences when
running GNOME Shell.
</_description>
</description>
</key>
<key name="edge-tiling" type="b">
<default>true</default>
<_summary>Enable edge tiling when dropping windows on screen edges</_summary>
<_description>
<summary>Enable edge tiling when dropping windows on screen edges</summary>
<description>
This key overrides the key in org.gnome.mutter when running GNOME Shell.
</_description>
</description>
</key>
<key name="dynamic-workspaces" type="b">
<default>true</default>
<_summary>Workspaces are managed dynamically</_summary>
<_description>
<summary>Workspaces are managed dynamically</summary>
<description>
This key overrides the key in org.gnome.mutter when running GNOME Shell.
</_description>
</description>
</key>
<key name="workspaces-only-on-primary" type="b">
<default>true</default>
<_summary>Workspaces only on primary monitor</_summary>
<_description>
<summary>Workspaces only on primary monitor</summary>
<description>
This key overrides the key in org.gnome.mutter when running GNOME Shell.
</_description>
</description>
</key>
<key name="focus-change-on-pointer-rest" type="b">

View File

@ -39,6 +39,7 @@ stage {
/* small */
.app-well-menu,
.contact-details-status,
.run-dialog-label,
.run-dialog-error-label {
font-size: 9pt;
}
@ -310,7 +311,7 @@ StScrollBar StButton#vhandle:active {
.notification-icon-button:focus,
.hotplug-notification-item:focus,
.modal-dialog-button:focus {
border-width: 2px;
border: 2px solid #8b8b8b;
}
.dash-search-button:active,
@ -325,20 +326,17 @@ StScrollBar StButton#vhandle:active {
background-gradient-end: rgba(255, 255, 255, 0.2);
}
.notification-button:insensitive,
.notification-icon-button:insensitive,
.modal-dialog-button:insensitive {
border-color: #666666;
.notification-button:insensitive {
color: #9f9f9f;
background-gradient-direction: none;
background-color: rgba(102, 102, 102, 0.15);
}
/* Entries */
#searchEntry,
.notification StEntry,
.modal-dialog StEntry {
.login-dialog-prompt-entry,
.prompt-dialog-password-entry {
color: rgb(64, 64, 64);
caret-color: rgb(64, 64, 64);
font-size: 12pt;
@ -348,7 +346,6 @@ StScrollBar StButton#vhandle:active {
}
#searchEntry,
.run-dialog-entry,
.notification StEntry {
border: 2px solid rgba(245,245,245,0.2);
background-gradient-start: rgba(5,5,6,0.1);
@ -361,7 +358,8 @@ StScrollBar StButton#vhandle:active {
#searchEntry:focus,
#searchEntry:hover,
.notification StEntry:focus,
.modal-dialog StEntry {
.login-dialog-prompt-entry,
.prompt-dialog-password-entry {
border: 2px solid rgb(136,138,133);
background-gradient-start: rgb(200,200,200);
background-gradient-end: white;
@ -370,17 +368,12 @@ StScrollBar StButton#vhandle:active {
}
.notification StEntry:focus,
.modal-dialog StEntry:focus {
.prompt-dialog-password-entry:focus,
.login-dialog-prompt-entry:focus {
border: 2px solid #3465a4;
}
#searchEntry {
border-color: rgba(245,245,245,0.3);
color: rgb(192, 192, 192);
caret-color: rgb(192, 192, 192);
}
#searchEntry:hover {
color: rgb(128, 128, 128);
caret-color: rgb(128, 128, 128);
}
@ -393,7 +386,8 @@ StScrollBar StButton#vhandle:active {
}
.notification StEntry,
.modal-dialog StEntry {
.prompt-dialog-password-entry,
.login-dialog-prompt-entry {
border-radius: 5px;
padding: 4px 4px;
}
@ -405,13 +399,11 @@ StScrollBar StButton#vhandle:active {
padding: 0 4px;
}
.modal-dialog StEntry:insensitive {
border-color: #666666;
color: #9f9f9f;
border: 2px solid #9f9f9f;
background-gradient-direction: none;
background-color: rgba(102, 102, 102, 0.15);
box-shadow: inset 0 0 rgba(0,0,0,1.0);
.login-dialog-prompt-entry:insensitive {
color: rgba(0,0,0,0.7);
border: 2px solid #565656;
background-gradient-start: rgb(200,200,200);
background-gradient-end: rgb(210,210,210);
}
/* Panel */
@ -420,18 +412,6 @@ StScrollBar StButton#vhandle:active {
background-color: black;
font-weight: bold;
height: 1.86em;
transition-duration: 250;
}
#panel.lock-screen {
height: 2em;
background-color: rgba(0,0,0,0.3);
}
#panel.unlock-screen,
#panel.login-screen {
height: 2em;
background-color: transparent;
}
#panelLeft, #panelCenter {
@ -467,13 +447,6 @@ StScrollBar StButton#vhandle:active {
-panel-corner-border-color: rgba(255,255,255,0.8);
}
.panel-corner.lock-screen,
.panel-corner.unlock-screen,
.panel-corner.login-screen {
-panel-corner-background-color: transparent;
-panel-corner-border-color: transparent;
}
#appMenu {
spacing: 4px;
}
@ -506,24 +479,6 @@ StScrollBar StButton#vhandle:active {
transition-duration: 100;
}
#panel.unlock-screen .panel-button,
#panel.lock-screen .panel-button,
#panel.login-screen .panel-button {
color: #e6e6e6;
}
#panel.unlock-screen .panel-button:hover,
#panel.lock-screen .panel-button:hover,
#panel.login-screen .panel-button:hover,
#panel.unlock-screen .panel-button:active,
#panel.lock-screen .panel-button:active,
#panel.login-screen .panel-button:active,
#panel.unlock-screen .panel-button:focus,
#panel.lock-screen .panel-button:focus,
#panel.login-screen .panel-button:focus {
color: white;
}
.panel-button:hover {
color: white;
text-shadow: black 0px 2px 2px;
@ -596,6 +551,7 @@ StScrollBar StButton#vhandle:active {
}
.status-chooser-combo.popup-combo-menu {
background-color: rgba(0,0,0,0.7);
padding: .4em 0em;
border-radius: 4px;
border: 1px solid #5f5f5f;
@ -613,7 +569,7 @@ StScrollBar StButton#vhandle:active {
/* Overview */
#overview {
spacing: 40px;
spacing: 12px;
}
.window-caption {
@ -654,7 +610,6 @@ StScrollBar StButton#vhandle:active {
border-radius: 8px;
padding: 4px 12px;
-shell-caption-spacing: 12px;
border: 2px solid rgba(0, 0, 0, 0);
}
.window-close, .notification-close {
@ -665,16 +620,7 @@ StScrollBar StButton#vhandle:active {
}
.window-close {
-shell-close-overlap: 16px;
}
.window-caption:hover {
border: 2px solid rgba(255, 255, 255, 0);
}
.window-clone-border {
border: 4px solid rgba(255, 255, 255, 0.5);
border-radius: 4px;
-shell-close-overlap: 20px;
}
.notification-close {
@ -687,25 +633,13 @@ StScrollBar StButton#vhandle:active {
* adjust down 8px */
-shell-close-overlap-x: 14px;
-shell-close-overlap-y: -12px;
}
.notification-close:rtl {
/* as above, but starting out in the top left of the
* notification. */
-shell-close-overlap-x: -14px;
-shell-close-overlap-y: 12px;
}
.window-close:rtl {
-st-background-image-shadow: 2px 2px 6px rgba(0,0,0,0.5);
}
.window-picker {
-horizontal-spacing: 40px;
-vertical-spacing: 40px;
}
/* Dash */
#dash {
@ -743,11 +677,6 @@ StScrollBar StButton#vhandle:active {
.search-entry-icon {
icon-size: 1em;
color: #c0c0c0;
}
#searchEntry:hover .search-entry-icon,
#searchEntry:focus .search-entry-icon {
color: #8d8f8a;
}
@ -1271,12 +1200,6 @@ StScrollBar StButton#vhandle:active {
outline: 1px solid rgba(128, 128, 128, 0.3);
}
.no-messages-label {
font-family: cantarell, sans-serif;
font-size: 11pt;
color: #999999;
}
.notification {
border-radius: 10px 10px 0px 0px;
background: rgba(0,0,0,0.8);
@ -1310,7 +1233,7 @@ StScrollBar StButton#vhandle:active {
}
.summary-boxpointer {
-arrow-border-radius: 15px;
-arrow-border-radius: 8px;
-arrow-background-color: rgba(0,0,0,0.8);
-arrow-base: 36px;
-arrow-rise: 18px;
@ -1331,8 +1254,8 @@ StScrollBar StButton#vhandle:active {
.summary-notification-stack-scrollview {
max-height: 18em;
padding-top: 8px;
padding-bottom: 8px;
padding-top: 6px;
padding-bottom: 6px;
}
.summary-notification-stack-scrollview:ltr {
@ -1487,10 +1410,6 @@ StScrollBar StButton#vhandle:active {
padding-right: 4px;
}
.chat-notification-scrollview{
max-height: 22em;
}
.subscription-message {
font-style: italic;
}
@ -1705,26 +1624,35 @@ StScrollBar StButton#vhandle:active {
padding: 4px 32px 5px;
}
.modal-dialog-button:insensitive {
color: rgb(60, 60, 60);
}
.modal-dialog-button:focus {
padding: 3px 31px 4px;
}
/* Run Dialog */
.run-dialog-label {
font-size: 12pt;
font-weight: bold;
color: #999999;
padding-bottom: .4em;
}
.run-dialog-error-box {
padding-top: 15px;
spacing: 5px;
}
.modal-dialog .run-dialog-entry {
width: 20em;
.run-dialog-entry {
font-weight: bold;
width: 23em;
selection-background-color: white;
selected-color: black;
}
.run-dialog {
border-radius: 16px;
padding-right: 21px;
padding-left: 21px;
padding-bottom: 15px;
padding-top: 15px;
}
.lightbox {
@ -2184,7 +2112,7 @@ StScrollBar StButton#vhandle:active {
font-weight: bold;
text-align: left;
padding-left: 15px;
text-shadow: black 0px 4px 3px 0px;
text-shadow: black 4px 4px 3px 0px;
}
.login-dialog-prompt-layout {
@ -2250,24 +2178,24 @@ StScrollBar StButton#vhandle:active {
height: .75em;
}
.login-dialog .modal-dialog-button-box {
spacing: 3px;
}
.login-dialog .modal-dialog-button {
border: 1px solid #666666;
border-radius: 5px;
padding: 3px 18px;
}
.login-dialog .modal-dialog-button:focus {
padding: 2px 17px;
border: 2px solid #8b8b8b;
}
.login-dialog .modal-dialog-button:default {
background-gradient-start: #6793c4;
background-gradient-end: #335d8f;
background-gradient-direction: vertical;
border-color: #16335d;
padding: 2px 17px;
border: 2px solid #16335d;
}
.login-dialog .modal-dialog-button:default:focus {
@ -2285,13 +2213,6 @@ StScrollBar StButton#vhandle:active {
background-gradient-end: #74a0d0;
}
.login-dialog .modal-dialog-button:default:insensitive {
border-color: #666666;
color: #9f9f9f;
background-gradient-direction: none;
background-color: rgba(102, 102, 102, 0.15);
}
.login-dialog-message-warning {
color: orange;
}

View File

@ -39,19 +39,13 @@ const GdmUtil = imports.gdm.util;
const Lightbox = imports.ui.lightbox;
const Main = imports.ui.main;
const ModalDialog = imports.ui.modalDialog;
const Panel = imports.ui.panel;
const PanelMenu = imports.ui.panelMenu;
const Tweener = imports.ui.tweener;
const UserMenu = imports.ui.userMenu;
const _RESIZE_ANIMATION_TIME = 0.25;
const _SCROLL_ANIMATION_TIME = 0.5;
const _TIMED_LOGIN_IDLE_THRESHOLD = 5.0;
const _LOGO_ICON_HEIGHT = 16;
const WORK_SPINNER_ICON_SIZE = 24;
const WORK_SPINNER_ANIMATION_DELAY = 1.0;
const WORK_SPINNER_ANIMATION_TIME = 0.3;
const _LOGO_ICON_NAME_SIZE = 48;
let _loginDialog = null;
@ -88,36 +82,6 @@ function _smoothlyResizeActor(actor, width, height) {
return hold;
}
const LogoMenuButton = new Lang.Class({
Name: 'LogoMenuButton',
Extends: PanelMenu.Button,
_init: function() {
this.parent(0.0, null, true);
this._settings = new Gio.Settings({ schema: GdmUtil.LOGIN_SCREEN_SCHEMA });
this._settings.connect('changed::' + GdmUtil.LOGO_KEY,
Lang.bind(this, this._updateLogo));
this._iconBin = new St.Bin();
this.actor.add_actor(this._iconBin);
this._updateLogo();
},
_updateLogo: function() {
let path = this._settings.get_string(GdmUtil.LOGO_KEY);
let icon = null;
if (path) {
let file = Gio.file_new_for_path(path);
let cache = St.TextureCache.get_default();
icon = cache.load_uri_async(file.get_uri(), -1, _LOGO_ICON_HEIGHT);
}
this._iconBin.set_child(icon);
}
});
const UserListItem = new Lang.Class({
Name: 'UserListItem',
@ -609,14 +573,6 @@ const SessionList = new Lang.Class({
this.close();
},
updateSensitivity: function(sensitive) {
this._button.reactive = sensitive;
this._button.can_focus = sensitive;
for (let id in this._items)
this._items[id].actor.reactive = sensitive;
},
setActiveSession: function(sessionId) {
if (sessionId == this._activeSessionId)
return;
@ -673,7 +629,6 @@ const LoginDialog = new Lang.Class({
this.parent({ shellReactive: true,
styleClass: 'login-dialog',
parentActor: parentActor,
keybindingMode: Main.KeybindingMode.LOGIN_SCREEN,
shouldFadeIn: false });
this.connect('destroy',
Lang.bind(this, this._onDestroy));
@ -683,22 +638,19 @@ const LoginDialog = new Lang.Class({
this._userManager = AccountsService.UserManager.get_default()
this._greeterClient = new Gdm.Client();
if (GLib.getenv('GDM_GREETER_TEST') != '1') {
this._greeter = this._greeterClient.get_greeter_sync(null);
this._greeter = this._greeterClient.get_greeter_sync(null);
this._greeter.connect('default-session-name-changed',
Lang.bind(this, this._onDefaultSessionChanged));
this._greeter.connect('default-session-name-changed',
Lang.bind(this, this._onDefaultSessionChanged));
this._greeter.connect('session-opened',
Lang.bind(this, this._onSessionOpened));
this._greeter.connect('timed-login-requested',
Lang.bind(this, this._onTimedLoginRequested));
}
this._greeter.connect('session-opened',
Lang.bind(this, this._onSessionOpened));
this._greeter.connect('timed-login-requested',
Lang.bind(this, this._onTimedLoginRequested));
this._userVerifier = new GdmUtil.ShellUserVerifier(this._greeterClient);
this._userVerifier.connect('ask-question', Lang.bind(this, this._askQuestion));
this._userVerifier.connect('show-message', Lang.bind(this, this._showMessage));
this._userVerifier.connect('verification-failed', Lang.bind(this, this._verificationFailed));
this._userVerifier.connect('reset', Lang.bind(this, this._reset));
this._userVerifier.connect('show-login-hint', Lang.bind(this, this._showLoginHint));
this._userVerifier.connect('hide-login-hint', Lang.bind(this, this._hideLoginHint));
@ -706,6 +658,8 @@ const LoginDialog = new Lang.Class({
this._settings = new Gio.Settings({ schema: GdmUtil.LOGIN_SCREEN_SCHEMA });
this._settings.connect('changed::' + GdmUtil.LOGO_KEY,
Lang.bind(this, this._updateLogo));
this._settings.connect('changed::' + GdmUtil.BANNER_MESSAGE_KEY,
Lang.bind(this, this._updateBanner));
this._settings.connect('changed::' + GdmUtil.BANNER_MESSAGE_TEXT_KEY,
@ -713,6 +667,10 @@ const LoginDialog = new Lang.Class({
this._settings.connect('changed::' + GdmUtil.DISABLE_USER_LIST_KEY,
Lang.bind(this, this._updateDisableUserList));
this._logoBox = new St.Bin({ style_class: 'login-dialog-logo-box' });
this.contentLayout.add(this._logoBox);
this._updateLogo();
this._bannerLabel = new St.Label({ style_class: 'login-dialog-banner',
text: '' });
this.contentLayout.add(this._bannerLabel);
@ -750,7 +708,6 @@ const LoginDialog = new Lang.Class({
x_align: St.Align.START });
this._promptEntry = new St.Entry({ style_class: 'login-dialog-prompt-entry',
can_focus: true });
this._promptEntryTextChangedId = 0;
this._promptBox.add(this._promptEntry,
{ expand: true,
x_fill: true,
@ -764,9 +721,6 @@ const LoginDialog = new Lang.Class({
this._promptLoginHint.hide();
this._promptBox.add(this._promptLoginHint);
this._signInButton = null;
this._workSpinner = null;
this._sessionList = new SessionList();
this._sessionList.connect('session-activated',
Lang.bind(this, function(list, sessionId) {
@ -829,8 +783,22 @@ const LoginDialog = new Lang.Class({
this._disableUserList = disableUserList;
if (!this._verifyingUser)
this._reset();
this._reset();
}
},
_updateLogo: function() {
this._logoBox.child = null;
let path = this._settings.get_string(GdmUtil.LOGO_KEY);
if (path) {
let file = Gio.file_new_for_path(path);
let uri = file.get_uri();
let textureCache = St.TextureCache.get_default();
this._logoBox.child = textureCache.load_uri_async(uri, -1, _LOGO_ICON_NAME_SIZE);
}
},
_updateBanner: function() {
@ -846,7 +814,6 @@ const LoginDialog = new Lang.Class({
},
_reset: function() {
this._updateSensitivity(true);
this._promptMessage.hide();
this._user = null;
this._verifyingUser = false;
@ -857,13 +824,6 @@ const LoginDialog = new Lang.Class({
this._showUserList();
},
_verificationFailed: function() {
this._promptEntry.text = '';
this._updateSensitivity(true);
this._setWorking(false);
},
_onDefaultSessionChanged: function(client, sessionId) {
this._sessionList.setActiveSession(sessionId);
},
@ -931,15 +891,28 @@ const LoginDialog = new Lang.Class({
return batch.run();
},
_showPrompt: function(forSecret) {
_showPrompt: function() {
let hold = new Batch.Hold();
let cancelButtonInfo = { action: Lang.bind(this, this.cancel),
label: _("Cancel"),
key: Clutter.Escape };
let okButtonInfo = { action: Lang.bind(this, function() {
hold.release();
}),
label: C_("button", "Sign In"),
default: true };
let buttons = [];
if (!this._disableUserList || this._verifyingUser)
buttons.push(cancelButtonInfo);
buttons.push(okButtonInfo);
let tasks = [function() {
return this._fadeInPrompt();
},
function() {
this._prepareDialog(forSecret, hold);
this.setButtons(buttons);
},
hold];
@ -949,86 +922,17 @@ const LoginDialog = new Lang.Class({
return batch.run();
},
_prepareDialog: function(forSecret, hold) {
this._workSpinner = new Panel.AnimatedIcon('process-working.svg', WORK_SPINNER_ICON_SIZE);
this._workSpinner.actor.opacity = 0;
this._workSpinner.actor.show();
this.buttonLayout.visible = true;
this.clearButtons();
if (!this._disableUserList || this._verifyingUser)
this.addButton({ action: Lang.bind(this, this.cancel),
label: _("Cancel"),
key: Clutter.Escape },
{ expand: true,
x_fill: false,
y_fill: false,
x_align: St.Align.START,
y_align: St.Align.MIDDLE });
this.buttonLayout.add(this._workSpinner.actor,
{ expand: false,
x_fill: false,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.MIDDLE });
this._signInButton = this.addButton({ action: Lang.bind(this, function() {
hold.release();
}),
label: forSecret ? C_("button", "Sign In") : _("Next"),
default: true },
{ expand: false,
x_fill: false,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.MIDDLE });
this._updateSignInButtonSensitivity(this._promptEntry.text.length > 0);
this._promptEntryTextChangedId =
this._promptEntry.clutter_text.connect('text-changed',
Lang.bind(this, function() {
this._updateSignInButtonSensitivity(this._promptEntry.text.length > 0);
}));
},
_updateSensitivity: function(sensitive) {
this._promptEntry.reactive = sensitive;
this._promptEntry.clutter_text.editable = sensitive;
this._sessionList.updateSensitivity(sensitive);
this._updateSignInButtonSensitivity(sensitive);
},
_updateSignInButtonSensitivity: function(sensitive) {
if (this._signInButton) {
this._signInButton.reactive = sensitive;
this._signInButton.can_focus = sensitive;
}
},
_hidePrompt: function() {
this.setButtons([]);
if (this._promptEntryTextChangedId > 0) {
this._promptEntry.clutter_text.disconnect(this._promptEntryTextChangedId);
this._promptEntryTextChangedId = 0;
}
let tasks = [function() {
this._setWorking(false);
return GdmUtil.fadeOutActor(this._promptBox);
},
function() {
this._promptLoginHint.hide();
this._updateSensitivity(true);
this._promptEntry.reactive = true;
this._promptEntry.set_text('');
this.clearButtons();
this._workSpinner = null;
this._signInButton = null;
}];
let batch = new Batch.ConsecutiveBatch(this, tasks);
@ -1036,46 +940,18 @@ const LoginDialog = new Lang.Class({
return batch.run();
},
_setWorking: function(working) {
if (!this._workSpinner)
return;
if (working) {
this._workSpinner.play();
Tweener.addTween(this._workSpinner.actor,
{ opacity: 255,
delay: WORK_SPINNER_ANIMATION_DELAY,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear'
});
} else {
Tweener.addTween(this._workSpinner.actor,
{ opacity: 0,
time: WORK_SPINNER_ANIMATION_TIME,
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
this._workSpinner.stop();
}
});
}
},
_askQuestion: function(verifier, serviceName, question, passwordChar) {
this._promptLabel.set_text(question);
this._promptEntry.set_text('');
this._promptEntry.clutter_text.set_password_char(passwordChar);
let tasks = [function() {
return this._showPrompt(!!passwordChar);
},
let tasks = [this._showPrompt,
function() {
let text = this._promptEntry.get_text();
this._updateSensitivity(false);
this._setWorking(true);
this._userVerifier.answerQuery(serviceName, text);
let _text = this._promptEntry.get_text();
this._promptEntry.reactive = false;
this._userVerifier.answerQuery(serviceName, _text);
}];
let batch = new Batch.ConsecutiveBatch(this, tasks);
@ -1241,7 +1117,8 @@ const LoginDialog = new Lang.Class({
},
new Batch.ConcurrentBatch(this, [this._fadeOutTitleLabel,
this._fadeOutNotListedButton]),
this._fadeOutNotListedButton,
this._fadeOutLogo]),
function() {
return this._askForUsernameAndLogIn();
@ -1251,11 +1128,20 @@ const LoginDialog = new Lang.Class({
batch.run();
},
_fadeInLogo: function() {
return GdmUtil.fadeInActor(this._logoBox);
},
_fadeOutLogo: function() {
return GdmUtil.fadeOutActor(this._logoBox);
},
_showUserList: function() {
let tasks = [this._hidePrompt,
new Batch.ConcurrentBatch(this, [this._fadeInTitleLabel,
this._fadeInNotListedButton]),
this._fadeInNotListedButton,
this._fadeInLogo]),
function() {
this._sessionList.close();
@ -1323,7 +1209,8 @@ const LoginDialog = new Lang.Class({
},
new Batch.ConcurrentBatch(this, [this._fadeOutTitleLabel,
this._fadeOutNotListedButton]),
this._fadeOutNotListedButton,
this._fadeOutLogo]),
function() {
return this._userList.shrinkToNaturalHeight();

View File

@ -18,12 +18,11 @@
* 02111-1307, USA.
*/
const Gio = imports.gi.Gio;
const Lang = imports.lang;
const UPowerGlib = imports.gi.UPowerGlib;
const LoginManager = imports.misc.loginManager;
const GdmUtil = imports.gdm.util;
const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
@ -34,15 +33,16 @@ const PowerMenuButton = new Lang.Class({
_init: function() {
/* Translators: accessible name of the power menu in the login screen */
this.parent('system-shutdown-symbolic', _("Power"));
this._upClient = new UPowerGlib.Client();
this._loginManager = LoginManager.getLoginManager();
this._settings = new Gio.Settings({ schema: GdmUtil.LOGIN_SCREEN_SCHEMA });
this._settings.connect('changed::disable-restart-buttons',
Lang.bind(this, this._updateVisibility));
this._createSubMenu();
this._upClient.connect('notify::can-suspend',
Lang.bind(this, this._updateHaveSuspend));
this._updateHaveSuspend();
// ConsoleKit doesn't send notifications when shutdown/reboot
// are disabled, so we update the menu item each time the menu opens
this.menu.connect('open-state-changed', Lang.bind(this,
@ -50,17 +50,15 @@ const PowerMenuButton = new Lang.Class({
if (open) {
this._updateHaveShutdown();
this._updateHaveRestart();
this._updateHaveSuspend();
}
}));
this._updateHaveShutdown();
this._updateHaveRestart();
this._updateHaveSuspend();
},
_updateVisibility: function() {
let shouldBeVisible = (this._haveSuspend || this._haveShutdown || this._haveRestart);
this.actor.visible = shouldBeVisible && !this._settings.get_boolean('disable-restart-buttons');
this.actor.visible = shouldBeVisible;
},
_updateHaveShutdown: function() {
@ -80,11 +78,9 @@ const PowerMenuButton = new Lang.Class({
},
_updateHaveSuspend: function() {
this._loginManager.canSuspend(Lang.bind(this, function(result) {
this._haveSuspend = result;
this._suspendItem.actor.visible = this._haveSuspend;
this._updateVisibility();
}));
this._haveSuspend = this._upClient.get_can_suspend();
this._suspendItem.actor.visible = this._haveSuspend;
this._updateVisibility();
},
_createSubMenu: function() {
@ -107,10 +103,8 @@ const PowerMenuButton = new Lang.Class({
},
_onActivateSuspend: function() {
if (!this._haveSuspend)
return;
this._loginManager.suspend();
if (this._haveSuspend)
this._upClient.suspend_sync(null);
},
_onActivateRestart: function() {

View File

@ -3,9 +3,7 @@
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const Lang = imports.lang;
const Mainloop = imports.mainloop;
const Shell = imports.gi.Shell;
const UPowerGlib = imports.gi.UPowerGlib;
const SystemdLoginManagerIface = <interface name='org.freedesktop.login1.Manager'>
<method name='PowerOff'>
@ -14,18 +12,12 @@ const SystemdLoginManagerIface = <interface name='org.freedesktop.login1.Manager
<method name='Reboot'>
<arg type='b' direction='in'/>
</method>
<method name='Suspend'>
<arg type='b' direction='in'/>
</method>
<method name='CanPowerOff'>
<arg type='s' direction='out'/>
</method>
<method name='CanReboot'>
<arg type='s' direction='out'/>
</method>
<method name='CanSuspend'>
<arg type='s' direction='out'/>
</method>
</interface>;
const SystemdLoginSessionIface = <interface name='org.freedesktop.login1.Session'>
@ -131,25 +123,12 @@ const LoginManagerSystemd = new Lang.Class({
});
},
canSuspend: function(asyncCallback) {
this._proxy.CanSuspendRemote(function(result, error) {
if (error)
asyncCallback(false);
else
asyncCallback(result[0] != 'no');
});
},
powerOff: function() {
this._proxy.PowerOffRemote(true);
},
reboot: function() {
this._proxy.RebootRemote(true);
},
suspend: function() {
this._proxy.SuspendRemote(true);
}
});
@ -160,7 +139,6 @@ const LoginManagerConsoleKit = new Lang.Class({
this._proxy = new ConsoleKitManager(Gio.DBus.system,
'org.freedesktop.ConsoleKit',
'/org/freedesktop/ConsoleKit/Manager');
this._upClient = new UPowerGlib.Client();
},
// Having this function is a bit of a hack since the Systemd and ConsoleKit
@ -208,22 +186,12 @@ const LoginManagerConsoleKit = new Lang.Class({
});
},
canSuspend: function(asyncCallback) {
Mainloop.idle_add(Lang.bind(this, function() {
asyncCallback(this._upClient.get_can_suspend());
return false;
}));
},
powerOff: function() {
this._proxy.StopRemote();
},
reboot: function() {
this._proxy.RestartRemote();
},
suspend: function() {
this._upClient.suspend_sync(null);
}
});

View File

@ -46,70 +46,8 @@ let _providersTable;
function _getProvidersTable() {
if (_providersTable)
return _providersTable;
return _providersTable = Shell.mobile_providers_parse(null,null);
}
function findProviderForMCCMNC(table, needle) {
let needlemcc = needle.substring(0, 3);
let needlemnc = needle.substring(3, needle.length);
let name2, name3;
for (let iter in table) {
let country = table[iter];
let providers = country.get_providers();
// Search through each country's providers
for (let i = 0; i < providers.length; i++) {
let provider = providers[i];
// Search through MCC/MNC list
let list = provider.get_gsm_mcc_mnc();
for (let j = 0; j < list.length; j++) {
let mccmnc = list[j];
// Match both 2-digit and 3-digit MNC; prefer a
// 3-digit match if found, otherwise a 2-digit one.
if (mccmnc.mcc != needlemcc)
continue; // MCC was wrong
if (!name3 && needle.length == 6 && needlemnc == mccmnc.mnc)
name3 = provider.name;
if (!name2 && needlemnc.substring(0, 2) == mccmnc.mnc.substring(0, 2))
name2 = provider.name;
if (name2 && name3)
break;
}
}
}
return name3 || name2 || null;
}
function findProviderForSid(table, sid) {
if (sid == 0)
return null;
// Search through each country
for (let iter in table) {
let country = table[iter];
let providers = country.get_providers();
// Search through each country's providers
for (let i = 0; i < providers.length; i++) {
let provider = providers[i];
let cdma_sid = provider.get_cdma_sid();
// Search through CDMA SID list
for (let j = 0; j < cdma_sid.length; j++) {
if (cdma_sid[j] == sid)
return provider.name;
}
}
}
return null;
let [providers, countryCodes] = Shell.mobile_providers_parse();
return _providersTable = providers;
}
const ModemGsm = new Lang.Class({
@ -153,29 +91,64 @@ const ModemGsm = new Lang.Class({
},
_findOperatorName: function(name, opCode) {
if (name) {
if (name && name.length != 0 && (name.length > 6 || name.length < 5)) {
// this looks like a valid name, i.e. not an MCCMNC (that some
// devices return when not yet connected
return name;
}
if (isNaN(parseInt(name))) {
// name is definitely not a MCCMNC, so it may be a name
// after all; return that
return name;
}
if (name.length != 0 && (name.length > 6 || name.length < 5)) {
// this looks like a valid name, i.e. not an MCCMNC (that some
// devices return when not yet connected
return name;
}
if (isNaN(parseInt(name))) {
// name is definitely not a MCCMNC, so it may be a name
// after all; return that
return name;
}
let needle;
if ((name == null || name.length == 0) && opCode)
if (name.length == 0 && opCode)
needle = opCode;
else if (name.length == 6 || name.length == 5)
needle = name;
else // nothing to search
return null;
return this._findProviderForMCCMNC(needle);
},
_findProviderForMCCMNC: function(needle) {
let table = _getProvidersTable();
return findProviderForMCCMNC(table, needle);
let needlemcc = needle.substring(0, 3);
let needlemnc = needle.substring(3, needle.length);
let name2, name3;
for (let iter in table) {
let providers = table[iter];
// Search through each country's providers
for (let i = 0; i < providers.length; i++) {
let provider = providers[i];
// Search through MCC/MNC list
let list = provider.get_gsm_mcc_mnc();
for (let j = 0; j < list.length; j++) {
let mccmnc = list[j];
// Match both 2-digit and 3-digit MNC; prefer a
// 3-digit match if found, otherwise a 2-digit one.
if (mccmnc.mcc != needlemcc)
continue; // MCC was wrong
if (!name3 && needle.length == 6 && needlemnc == mccmnc.mnc)
name3 = provider.name;
if (!name2 && needlemnc.substring(0, 2) == mccmnc.mnc.substring(0, 2))
name2 = provider.name;
if (name2 && name3)
break;
}
}
}
return name3 || name2 || null;
}
});
Signals.addSignalMethods(ModemGsm.prototype);
@ -216,14 +189,39 @@ const ModemCdma = new Lang.Class({
this.operator_name = null;
} else {
let [bandClass, band, id] = result;
if (name.length > 0) {
let table = _getProvidersTable();
this.operator_name = findProviderForSid(table, id);
} else
if (name.length > 0)
this.operator_name = this._findProviderForSid(id);
else
this.operator_name = null;
}
this.emit('notify::operator-name');
}));
},
_findProviderForSid: function(sid) {
if (sid == 0)
return null;
let table = _getProvidersTable();
// Search through each country
for (let iter in table) {
let providers = table[iter];
// Search through each country's providers
for (let i = 0; i < providers.length; i++) {
let provider = providers[i];
let cdma_sid = provider.get_cdma_sid();
// Search through CDMA SID list
for (let j = 0; j < cdma_sid.length; j++) {
if (cdma_sid[j] == sid)
return provider.name;
}
}
}
return null;
}
});
Signals.addSignalMethods(ModemCdma.prototype);

View File

@ -159,6 +159,86 @@ function killall(processName) {
}
}
// This was ported from network-manager-applet
// Copyright 2007 - 2011 Red Hat, Inc.
// Author: Dan Williams <dcbw@redhat.com>
const _IGNORED_WORDS = [
'Semiconductor',
'Components',
'Corporation',
'Communications',
'Company',
'Corp.',
'Corp',
'Co.',
'Inc.',
'Inc',
'Incorporated',
'Ltd.',
'Limited.',
'Intel',
'chipset',
'adapter',
'[hex]',
'NDIS',
'Module'
];
const _IGNORED_PHRASES = [
'Multiprotocol MAC/baseband processor',
'Wireless LAN Controller',
'Wireless LAN Adapter',
'Wireless Adapter',
'Network Connection',
'Wireless Cardbus Adapter',
'Wireless CardBus Adapter',
'54 Mbps Wireless PC Card',
'Wireless PC Card',
'Wireless PC',
'PC Card with XJACK(r) Antenna',
'Wireless cardbus',
'Wireless LAN PC Card',
'Technology Group Ltd.',
'Communication S.p.A.',
'Business Mobile Networks BV',
'Mobile Broadband Minicard Composite Device',
'Mobile Communications AB',
'(PC-Suite Mode)'
];
function fixupPCIDescription(desc) {
desc = desc.replace(/[_,]/, ' ');
/* Attempt to shorten ID by ignoring certain phrases */
for (let i = 0; i < _IGNORED_PHRASES.length; i++) {
let item = _IGNORED_PHRASES[i];
let pos = desc.indexOf(item);
if (pos != -1) {
let before = desc.substring(0, pos);
let after = desc.substring(pos + item.length, desc.length);
desc = before + after;
}
}
/* Attmept to shorten ID by ignoring certain individual words */
let words = desc.split(' ');
let out = [ ];
for (let i = 0; i < words.length; i++) {
let item = words[i];
// skip empty items (that come out from consecutive spaces)
if (item.length == 0)
continue;
if (_IGNORED_WORDS.indexOf(item) == -1) {
out.push(item);
}
}
return out.join(' ');
}
// lowerBound:
// @array: an array or array-like object, already sorted
// according to @cmp

View File

@ -172,7 +172,7 @@ const AltTabPopup = new Lang.Class({
if (!Main.pushModal(this.actor)) {
// Probably someone else has a pointer grab, try again with keyboard only
if (!Main.pushModal(this.actor, { options: Meta.ModalOptions.POINTER_ALREADY_GRABBED })) {
if (!Main.pushModal(this.actor, global.get_current_time(), Meta.ModalOptions.POINTER_ALREADY_GRABBED)) {
return false;
}
}

View File

@ -216,16 +216,6 @@ const ViewByCategories = new Lang.Class({
},
_addCategory: function(name, index, dir) {
let apps;
if (dir != null) {
apps = [];
this._loadCategory(dir, apps);
if (apps.length == 0)
return;
}
let button = new St.Button({ label: GLib.markup_escape_text (name, -1),
style_class: 'app-filter',
x_align: St.Align.START,
@ -235,9 +225,12 @@ const ViewByCategories = new Lang.Class({
this._selectCategory(index);
}));
var apps;
if (dir == null) {
this._allCategoryButton = button;
} else {
apps = [];
this._loadCategory(dir, apps);
this._categories.push({ apps: apps,
name: name,
button: button });
@ -486,6 +479,7 @@ const AppWellIcon = new Lang.Class({
Lang.bind(this,
this._onStateChanged));
this._onStateChanged();
this.isMenuUp = false;
},
_onDestroy: function() {
@ -567,8 +561,7 @@ const AppWellIcon = new Lang.Class({
this._menuManager.addMenu(this._menu);
}
this.emit('menu-state-changed', true);
this.isMenuUp = true;
this.actor.set_hover(true);
this._menu.popup();
@ -585,7 +578,7 @@ const AppWellIcon = new Lang.Class({
_onMenuPoppedDown: function() {
this.actor.sync_hover();
this.emit('menu-state-changed', false);
this.isMenuUp = false;
},
_onActivate: function (event) {

View File

@ -84,12 +84,9 @@ const AppFavorites = new Lang.Class({
let app = Shell.AppSystem.get_default().lookup_app(appId);
Main.overview.setMessage(_("%s has been added to your favorites.").format(app.get_name()),
{ forFeedback: true,
undoCallback: Lang.bind(this, function () {
this._removeFavorite(appId);
})
});
Main.overview.setMessage(_("%s has been added to your favorites.").format(app.get_name()), Lang.bind(this, function () {
this._removeFavorite(appId);
}));
},
addFavorite: function(appId) {
@ -119,11 +116,9 @@ const AppFavorites = new Lang.Class({
return;
Main.overview.setMessage(_("%s has been removed from your favorites.").format(app.get_name()),
{ forFeedback: true,
undoCallback: Lang.bind(this, function () {
this._addFavorite(appId, pos);
})
});
Lang.bind(this, function () {
this._addFavorite(appId, pos);
}));
}
});
Signals.addSignalMethods(AppFavorites.prototype);

View File

@ -270,9 +270,8 @@ const DBusEventSource = new Lang.Class({
this._loadEvents(false);
},
_onEventsReceived: function(results, error) {
_onEventsReceived: function([appointments]) {
let newEvents = [];
let appointments = results ? results[0] : null;
if (appointments != null) {
for (let n = 0; n < appointments.length; n++) {
let a = appointments[n];

View File

@ -45,12 +45,14 @@ function isMountRootHidden(root) {
}
function isMountNonLocal(mount) {
// If the mount doesn't have an associated volume, that means it's
// an uninteresting filesystem. Most devices that we care about will
// have a mount, like media players and USB sticks.
// If the mount doesn't have an associated volume, that means it could
// be a remote filesystem. For certain kinds of local filesystems,
// like digital cameras and music players, there's no associated
// gvfs volume, so err on the side of caution and assume it's a local
// filesystem to allow the prompt.
let volume = mount.get_volume();
if (volume == null)
return true;
return false;
return (volume.get_identifier("class") == "network");
}
@ -544,8 +546,9 @@ const AutorunTransientSource = new Lang.Class({
this.notify(this._notification);
},
getIcon: function() {
return this.mount.get_icon();
createIcon: function(size) {
return new St.Icon({ gicon: this.mount.get_icon(),
icon_size: size });
}
});

View File

@ -598,7 +598,7 @@ const NetworkAgent = new Lang.Class({
},
enable: function() {
this._native.auto_register = true;
this._native.register();
},
disable: function() {
@ -612,7 +612,6 @@ const NetworkAgent = new Lang.Class({
this._vpnRequests[requestId].cancel(true);
this._vpnRequests = { };
this._native.auto_register = false;
this._native.unregister();
},

View File

@ -1,6 +1,5 @@
const Lang = imports.lang;
const Main = imports.ui.main;
const Gio = imports.gi.Gio;
const Meta = imports.gi.Meta;
@ -17,16 +16,13 @@ const Recorder = new Lang.Class({
},
enable: function() {
Main.wm.addKeybinding('toggle-recording',
this._bindingSettings,
Meta.KeyBindingFlags.NONE,
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._toggleRecorder));
global.display.add_keybinding('toggle-recording',
this._bindingSettings,
Meta.KeyBindingFlags.NONE, Lang.bind(this, this._toggleRecorder));
},
disable: function() {
Main.wm.removeKeybinding('toggle-recording');
global.display.remove_keybinding('toggle-recording');
},
_ensureRecorder: function() {
@ -45,7 +41,7 @@ const Recorder = new Lang.Class({
recorder.set_framerate(this._recorderSettings.get_int('framerate'));
/* Translators: this is a filename used for screencast recording */
// xgettext:no-c-format
recorder.set_file_template(_("Screencast from %d %t") + '.' + this._recorderSettings.get_string('file-extension'));
recorder.set_filename(_("Screencast from %d %t") + '.' + this._recorderSettings.get_string('file-extension'));
let pipeline = this._recorderSettings.get_string('pipeline');
if (!pipeline.match(/^\s*$/))

View File

@ -383,12 +383,25 @@ const TelepathyClient = new Lang.Class({
}
/* Display notification to ask user to accept/reject request */
let source = this._ensureAppSource();
let source = this._ensureSubscriptionSource();
let notif = new SubscriptionRequestNotification(source, contact);
source.notify(notif);
},
_ensureSubscriptionSource: function() {
if (this._subscriptionSource == null) {
this._subscriptionSource = new MessageTray.Source(_("Subscription request"),
'gtk-dialog-question');
Main.messageTray.add(this._subscriptionSource);
this._subscriptionSource.connect('destroy', Lang.bind(this, function () {
this._subscriptionSource = null;
}));
}
return this._subscriptionSource;
},
_accountConnectionStatusNotifyCb: function(account) {
let connectionError = account.connection_error;
@ -402,7 +415,7 @@ const TelepathyClient = new Lang.Class({
return;
/* Display notification that account failed to connect */
let source = this._ensureAppSource();
let source = this._ensureAccountSource();
notif = new AccountNotification(source, account, connectionError);
this._accountNotifications[account.get_object_path()] = notif;
@ -412,16 +425,17 @@ const TelepathyClient = new Lang.Class({
source.notify(notif);
},
_ensureAppSource: function() {
if (this._appSource == null) {
this._appSource = new MessageTray.Source(_("Chat"), 'empathy');
Main.messageTray.add(this._appSource);
this._appSource.connect('destroy', Lang.bind(this, function () {
this._appSource = null;
_ensureAccountSource: function() {
if (this._accountSource == null) {
this._accountSource = new MessageTray.Source(_("Connection error"),
'gtk-dialog-error');
Main.messageTray.add(this._accountSource);
this._accountSource.connect('destroy', Lang.bind(this, function () {
this._accountSource = null;
}));
}
return this._appSource;
return this._accountSource;
}
});
@ -495,42 +509,51 @@ const ChatSource = new Lang.Class({
this._notification.appendAliasChange(oldAlias, newAlias);
},
getIcon: function() {
createIcon: function(size) {
this._iconBox = new St.Bin({ style_class: 'avatar-box' });
this._iconBox._size = size;
let textureCache = St.TextureCache.get_default();
let file = this._contact.get_avatar_file();
if (file) {
return new Gio.FileIcon({ file: file });
let uri = file.get_uri();
this._iconBox.child = textureCache.load_uri_async(uri, this._iconBox._size, this._iconBox._size);
} else {
return new Gio.ThemedIcon({ name: 'avatar-default' });
this._iconBox.child = new St.Icon({ icon_name: 'avatar-default',
icon_size: this._iconBox._size });
}
return this._iconBox;
},
getSecondaryIcon: function() {
let iconName;
createSecondaryIcon: function() {
let iconBox = new St.Bin();
iconBox.child = new St.Icon({ style_class: 'secondary-icon' });
let presenceType = this._contact.get_presence_type();
switch (presenceType) {
case Tp.ConnectionPresenceType.AVAILABLE:
iconName = 'user-available';
iconBox.child.icon_name = 'user-available';
break;
case Tp.ConnectionPresenceType.BUSY:
iconName = 'user-busy';
iconBox.child.icon_name = 'user-busy';
break;
case Tp.ConnectionPresenceType.OFFLINE:
iconName = 'user-offline';
iconBox.child.icon_name = 'user-offline';
break;
case Tp.ConnectionPresenceType.HIDDEN:
iconName = 'user-invisible';
iconBox.child.icon_name = 'user-invisible';
break;
case Tp.ConnectionPresenceType.AWAY:
iconName = 'user-away';
iconBox.child.icon_name = 'user-away';
break;
case Tp.ConnectionPresenceType.EXTENDED_AWAY:
iconName = 'user-idle';
iconBox.child.icon_name = 'user-idle';
break;
default:
iconName = 'user-offline';
iconBox.child.icon_name = 'user-offline';
}
return new Gio.ThemedIcon({ name: iconName });
return iconBox;
},
_updateAvatarIcon: function() {
@ -712,7 +735,7 @@ const ChatSource = new Lang.Class({
title = GLib.markup_escape_text(this.title, -1);
this._notification.update(this._notification.title, null, { customContent: true, secondaryGIcon: this.getSecondaryIcon() });
this._notification.update(this._notification.title, null, { customContent: true, secondaryIcon: this.createSecondaryIcon() });
if (message)
msg += ' <i>(' + GLib.markup_escape_text(message, -1) + ')</i>';
@ -730,7 +753,8 @@ const ChatSource = new Lang.Class({
_ackMessages: function() {
// Don't clear our messages here, tp-glib will send a
// 'pending-message-removed' for each one.
this._channel.ack_all_pending_messages_async(null);
this._channel.ack_all_pending_messages_async(Lang.bind(this, function(src, result) {
this._channel.ack_all_pending_messages_finish(result);}));
}
});
@ -739,7 +763,7 @@ const ChatNotification = new Lang.Class({
Extends: MessageTray.Notification,
_init: function(source) {
this.parent(source, source.title, null, { customContent: true, secondaryGIcon: source.getSecondaryIcon() });
this.parent(source, source.title, null, { customContent: true, secondaryIcon: source.createSecondaryIcon() });
this.setResident(true);
this._responseEntry = new St.Entry({ style_class: 'chat-response',
@ -764,7 +788,6 @@ const ChatNotification = new Lang.Class({
// force a scroll to the bottom if things change while we were at the
// bottom
this._oldMaxScrollValue = this._scrollArea.vscroll.adjustment.value;
this._scrollArea.add_style_class_name('chat-notification-scrollview');
this._scrollArea.vscroll.adjustment.connect('changed', Lang.bind(this, function(adjustment) {
if (adjustment.value == this._oldMaxScrollValue)
this.scrollTo(St.Side.BOTTOM);
@ -920,32 +943,24 @@ const ChatNotification = new Lang.Class({
let format;
// Show only the hour if date is on today
if(daysAgo < 1){
format = "<b>%H:%M</b>";
}
// Show the word "Yesterday" and time if date is on yesterday
else if(daysAgo <2){
/* Translators: this is a time format string followed by the word "Yesterday". i.e. "14:30 on Yesterday"*/
// xgettext:no-c-format
format = _("<b>%H:%M</b> on Yesterday");
}
// Show a week day and time if date is in the last week
else if (daysAgo < 7) {
/* Translators: this is a time format string followed by a week day name. i.e. "14:30 on Monday*/
if (daysAgo < 1 || (daysAgo < 7 && now.getDay() != date.getDay())) {
/* Translators: this is a time format string followed by a date.
If applicable, replace %X with a strftime format valid for your
locale, without seconds. */
// xgettext:no-c-format
format = _("<b>%H:%M</b> on <b>%A</b>");
format = _("Sent at <b>%X</b> on <b>%A</b>");
} else if (date.getYear() == now.getYear()) {
/* Translators: this is a time format in the style of "14:30 on Wednesday, May 25",
shown when you get a chat message in the same year */
/* Translators: this is a time format in the style of "Wednesday, May 25",
shown when you get a chat message in the same year. */
// xgettext:no-c-format
format = _("<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>");
format = _("Sent on <b>%A</b>, <b>%B %d</b>");
} else {
/* Translators: this is a time format in the style of "14:30 on Wednesday, May 25, 2012",
shown when you get a chat message in a different year */
/* Translators: this is a time format in the style of "Wednesday, May 25, 2012",
shown when you get a chat message in a different year. */
// xgettext:no-c-format
format = _("<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>, %Y");
format = _("Sent on <b>%A</b>, <b>%B %d</b>, %Y");
}
return date.toLocaleFormat(format);
@ -958,7 +973,8 @@ const ChatNotification = new Lang.Class({
let timeLabel = this._append({ body: this._formatTimestamp(lastMessageDate),
group: 'meta',
styles: ['chat-meta-message'],
childProps: { expand: true, x_fill: false },
childProps: { expand: true, x_fill: false,
x_align: St.Align.END },
noTimestamp: true,
timestamp: lastMessageTime });
@ -1059,8 +1075,9 @@ const ApproverSource = new Lang.Class({
this.parent();
},
getIcon: function() {
return this._gicon;
createIcon: function(size) {
return new St.Icon({ gicon: this._gicon,
icon_size: size });
}
});
@ -1121,7 +1138,7 @@ const AudioVideoNotification = new Lang.Class({
this.parent(source, title, null, { customContent: true });
this.setResident(true);
this.addButton('reject', _("Decline"));
this.addButton('reject', _("Reject"));
/* translators: this is a button label (verb), not a noun */
this.addButton('answer', _("Answer"));
@ -1338,16 +1355,26 @@ const AccountNotification = new Lang.Class({
this.parent(source,
/* translators: argument is the account name, like
* name@jabber.org for example. */
_("Unable to connect to %s").format(account.get_display_name()),
this._getMessage(connectionError));
_("Connection to %s failed").format(account.get_display_name()),
null, { customContent: true });
this._label = new St.Label();
this.addActor(this._label);
this._updateMessage(connectionError);
this._account = account;
this.addButton('view', _("View account"));
this.addButton('reconnect', _("Reconnect"));
this.addButton('edit', _("Edit account"));
this.connect('action-invoked', Lang.bind(this, function(self, action) {
switch (action) {
case 'view':
case 'reconnect':
// If it fails again, a new notification should pop up with the
// new error.
account.reconnect_async(null);
break;
case 'edit':
let cmd = '/usr/bin/empathy-accounts'
+ ' --select-account=%s'
.format(account.get_path_suffix());
@ -1373,19 +1400,19 @@ const AccountNotification = new Lang.Class({
if (status == Tp.ConnectionStatus.CONNECTED) {
this.destroy();
} else if (status == Tp.ConnectionStatus.DISCONNECTED) {
this.update(this.title, this._getMessage(account.connection_error));
this._updateMessage(account.connection_error);
}
}));
},
_getMessage: function(connectionError) {
_updateMessage: function(connectionError) {
let message;
if (connectionError in _connectionErrorMessages) {
message = _connectionErrorMessages[connectionError];
} else {
message = _("Unknown reason");
}
return message;
this._label.set_text(message);
},
destroy: function() {

View File

@ -23,7 +23,8 @@ const DASH_ITEM_HOVER_TIMEOUT = 300;
function getAppFromSource(source) {
if (source instanceof AppDisplay.AppWellIcon) {
return source.app;
let appSystem = Shell.AppSystem.get_default();
return appSystem.lookup_app(source.getId());
} else if (source.metaWindow) {
let tracker = Shell.WindowTracker.get_default();
return tracker.get_window_app(source.metaWindow);
@ -491,51 +492,34 @@ const Dash = new Lang.Class({
},
_createAppItem: function(app) {
let appIcon = new AppDisplay.AppWellIcon(app,
let display = new AppDisplay.AppWellIcon(app,
{ setSizeManually: true,
showLabel: false });
appIcon._draggable.connect('drag-begin',
display._draggable.connect('drag-begin',
Lang.bind(this, function() {
appIcon.actor.opacity = 50;
display.actor.opacity = 50;
}));
appIcon._draggable.connect('drag-end',
display._draggable.connect('drag-end',
Lang.bind(this, function() {
appIcon.actor.opacity = 255;
display.actor.opacity = 255;
}));
appIcon.connect('menu-state-changed',
Lang.bind(this, function(appIcon, opened) {
this._itemMenuStateChanged(item, opened);
}));
let item = new DashItemContainer();
item.setChild(appIcon.actor);
item.setChild(display.actor);
// Override default AppWellIcon label_actor, now the
// accessible_name is set at DashItemContainer.setLabelText
appIcon.actor.label_actor = null;
display.actor.label_actor = null;
item.setLabelText(app.get_name());
appIcon.icon.setIconSize(this.iconSize);
display.icon.setIconSize(this.iconSize);
this._hookUpLabel(item);
return item;
},
_itemMenuStateChanged: function(item, opened) {
// When the menu closes, it calls sync_hover, which means
// that the notify::hover handler does everything we need to.
if (opened) {
if (this._showLabelTimeoutId > 0) {
Mainloop.source_remove(this._showLabelTimeoutId);
this._showLabelTimeoutId = 0;
}
item.hideLabel();
}
},
_onHover: function (item) {
if (item.child.get_hover()) {
if (item.child.get_hover() && !item.child._delegate.isMenuUp) {
if (this._showLabelTimeoutId == 0) {
let timeout = this._labelShowing ? 0 : DASH_ITEM_HOVER_TIMEOUT;
this._showLabelTimeoutId = Mainloop.timeout_add(timeout,

View File

@ -105,7 +105,7 @@ const restartDialogContent = {
endDescription: _("Restarting the system."),
confirmButtons: [{ signal: 'ConfirmedReboot',
label: C_("button", "Restart") }],
iconName: 'view-refresh-symbolic',
iconName: 'system-shutdown-symbolic',
iconStyleClass: 'end-session-dialog-shutdown-icon'
};

View File

@ -126,7 +126,11 @@ function logExtensionError(uuid, error) {
let message = '' + error;
extension.state = ExtensionState.ERROR;
if (error.state)
extension.state = error.state;
else
extension.state = ExtensionState.ERROR;
if (!extension.errors)
extension.errors = [];
@ -141,16 +145,18 @@ function loadExtension(extension) {
extension.state = ExtensionState.ERROR;
if (ExtensionUtils.isOutOfDate(extension)) {
extension.state = ExtensionState.OUT_OF_DATE;
let error = new Error('extension is not compatible with current GNOME Shell and/or GJS version');
error.state = ExtensionState.OUT_OF_DATE;
throw error;
}
let enabled = enabledExtensions.indexOf(extension.uuid) != -1;
if (enabled) {
initExtension(extension.uuid);
if (extension.state == ExtensionState.DISABLED)
enableExtension(extension.uuid);
} else {
let enabled = enabledExtensions.indexOf(extension.uuid) != -1;
if (enabled) {
initExtension(extension.uuid);
if (extension.state == ExtensionState.DISABLED)
enableExtension(extension.uuid);
} else {
extension.state = ExtensionState.INITIALIZED;
}
extension.state = ExtensionState.INITIALIZED;
}
_signals.emit('extension-state-changed', extension);

View File

@ -23,7 +23,6 @@ function _navigateActor(actor) {
// GrabHelper:
// @owner: the actor that owns the GrabHelper
// @params: optional parameters to pass to Main.pushModal()
//
// Creates a new GrabHelper object, for dealing with keyboard and pointer grabs
// associated with a set of actors.
@ -35,9 +34,8 @@ function _navigateActor(actor) {
const GrabHelper = new Lang.Class({
Name: 'GrabHelper',
_init: function(owner, params) {
_init: function(owner) {
this._owner = owner;
this._modalParams = params;
this._grabStack = [];
@ -167,7 +165,7 @@ const GrabHelper = new Lang.Class({
_takeModalGrab: function() {
let firstGrab = (this._modalCount == 0);
if (firstGrab) {
if (!Main.pushModal(this._owner, this._modalParams))
if (!Main.pushModal(this._owner))
return false;
this._capturedEventId = global.stage.connect('captured-event', Lang.bind(this, this._onCapturedEvent));

View File

@ -20,6 +20,25 @@ const KEYBOARD_TYPE = 'keyboard-type';
const A11Y_APPLICATIONS_SCHEMA = 'org.gnome.desktop.a11y.applications';
const SHOW_KEYBOARD = 'screen-keyboard-enabled';
// Key constants taken from Antler
// FIXME: ought to be moved into libcaribou
const PRETTY_KEYS = {
'BackSpace': '\u232b',
'space': ' ',
'Return': '\u23ce',
'Caribou_Prefs': '\u2328',
'Caribou_ShiftUp': '\u2b06',
'Caribou_ShiftDown': '\u2b07',
'Caribou_Emoticons': '\u263a',
'Caribou_Symbols': '123',
'Caribou_Symbols_More': '{#*',
'Caribou_Alpha': 'Abc',
'Tab': 'Tab',
'Escape': 'Esc',
'Control_L': 'Ctrl',
'Alt_L': 'Alt'
};
const CaribouKeyboardIface = <interface name='org.gnome.Caribou.Keyboard'>
<method name='Show'>
<arg type='u' direction='in' />
@ -79,7 +98,17 @@ const Key = new Lang.Class({
},
_makeKey: function () {
let label = GLib.markup_escape_text(this._key.label, -1);
let label = this._key.name;
if (label.length > 1) {
let pretty = PRETTY_KEYS[label];
if (pretty)
label = pretty;
else
label = this._getUnichar(this._key);
}
label = GLib.markup_escape_text(label, -1);
let button = new St.Button ({ label: label,
style_class: 'keyboard-key' });
@ -251,7 +280,7 @@ const Keyboard = new Lang.Class({
this._focusNotifyId = global.stage.connect('notify::key-focus', Lang.bind(this, this._onKeyFocusChanged));
if (show)
this.show(Main.layoutManager.focusIndex);
this.show();
else
this._createSource();
},
@ -375,7 +404,7 @@ const Keyboard = new Lang.Class({
if (!this._enableKeyboard)
return;
let monitor = Main.layoutManager.keyboardMonitor;
let monitor = Main.layoutManager.bottomMonitor;
let maxHeight = monitor.height / 3;
this.actor.width = monitor.width;
@ -462,9 +491,9 @@ const Keyboard = new Lang.Class({
actor._extended_keys || actor.extended_key;
},
show: function (monitor) {
Main.layoutManager.keyboardIndex = monitor;
show: function () {
this._redraw();
Main.layoutManager.showKeyboard();
this._destroySource();
},
@ -512,7 +541,7 @@ const Keyboard = new Lang.Class({
if (timestamp != Clutter.CURRENT_TIME)
this._timestamp = timestamp;
this.show(Main.layoutManager.focusIndex);
this.show();
},
Hide: function(timestamp) {
@ -566,7 +595,6 @@ const KeyboardSource = new Lang.Class({
},
open: function() {
// Show the OSK below the message tray
this._keyboard.show(Main.layoutManager.bottomIndex);
this._keyboard.show();
}
});

View File

@ -103,9 +103,8 @@ const LayoutManager = new Lang.Class({
this.monitors = [];
this.primaryMonitor = null;
this.primaryIndex = -1;
this._keyboardIndex = -1;
this._hotCorners = [];
this._background = null;
this._rootPixmap = null;
this._leftPanelBarrier = 0;
this._rightPanelBarrier = 0;
this._trayBarrier = 0;
@ -129,6 +128,8 @@ const LayoutManager = new Lang.Class({
this.trayBox = new St.Widget({ name: 'trayBox',
layout_manager: new Clutter.BinLayout() });
this.addChrome(this.trayBox);
this.trayBox.connect('allocation-changed',
Lang.bind(this, this._updateTrayBarrier));
this.keyboardBox = new St.BoxLayout({ name: 'keyboardBox',
reactive: true,
@ -241,8 +242,9 @@ const LayoutManager = new Lang.Class({
this.panelBox.set_position(this.primaryMonitor.x, this.primaryMonitor.y);
this.panelBox.set_size(this.primaryMonitor.width, -1);
if (this.keyboardIndex < 0)
this.keyboardIndex = this.primaryIndex;
this.keyboardBox.set_position(this.bottomMonitor.x,
this.bottomMonitor.y + this.bottomMonitor.height);
this.keyboardBox.set_size(this.bottomMonitor.width, -1);
this.trayBox.set_position(this.bottomMonitor.x,
this.bottomMonitor.y + this.bottomMonitor.height);
@ -278,6 +280,22 @@ const LayoutManager = new Lang.Class({
}
},
_updateTrayBarrier: function() {
let monitor = this.bottomMonitor;
if (this._trayBarrier)
global.destroy_pointer_barrier(this._trayBarrier);
if (Main.messageTray) {
this._trayBarrier =
global.create_pointer_barrier(monitor.x + monitor.width, monitor.y + monitor.height - Main.messageTray.actor.height,
monitor.x + monitor.width, monitor.y + monitor.height,
4 /* BarrierNegativeX */);
} else {
this._trayBarrier = 0;
}
},
_monitorsChanged: function() {
this._updateMonitors();
this._updateBoxes();
@ -305,42 +323,6 @@ const LayoutManager = new Lang.Class({
return this.monitors[index];
},
get keyboardMonitor() {
return this.monitors[this.keyboardIndex];
},
get focusIndex() {
let i = Main.layoutManager.primaryIndex;
if (global.stage_input_mode == Shell.StageInputMode.FOCUSED ||
global.stage_input_mode == Shell.StageInputMode.FULLSCREEN) {
let focusActor = global.stage.key_focus;
if (focusActor)
i = this._chrome.findIndexForActor(focusActor);
} else {
let focusWindow = global.display.focus_window;
if (focusWindow)
i = this._chrome.findIndexForWindow(focusWindow.get_compositor_private());
}
return i;
},
get focusMonitor() {
return this.monitors[this.focusIndex];
},
set keyboardIndex(v) {
this._keyboardIndex = v;
this.keyboardBox.set_position(this.keyboardMonitor.x,
this.keyboardMonitor.y + this.keyboardMonitor.height);
this.keyboardBox.set_size(this.keyboardMonitor.width, -1);
},
get keyboardIndex() {
return this._keyboardIndex;
},
_startupAnimation: function() {
this.panelBox.anchor_y = this.panelBox.height;
@ -351,30 +333,30 @@ const LayoutManager = new Lang.Class({
// to the greeter. Otherwise, we'll just animate the panel,
// as usual.
if (Main.sessionMode.isGreeter) {
this._background = Meta.BackgroundActor.new_for_screen(global.screen);
if (this._background != null) {
Main.uiGroup.add_actor(this._background);
Tweener.addTween(this._background,
this._rootPixmap = global.create_xrootpmap_texture();
if (this._rootPixmap != null) {
Main.uiGroup.add_actor(this._rootPixmap);
Tweener.addTween(this._rootPixmap,
{ opacity: 0,
time: PLYMOUTH_TRANSITION_TIME,
transition: 'linear',
onComplete: this._fadeBackgroundComplete,
onComplete: this._fadeRootpmapComplete,
onCompleteScope: this });
plymouthTransitionRunning = true;
}
}
if (!plymouthTransitionRunning)
this._fadeBackgroundComplete();
this._fadeRootpmapComplete();
},
_fadeBackgroundComplete: function() {
_fadeRootpmapComplete: function() {
// Don't animate the strut
this._chrome.freezeUpdateRegions();
if (this._background != null) {
this._background.destroy();
this._background = null;
if (this._rootPixmap != null) {
this._rootPixmap.destroy();
this._rootPixmap = null;
}
Tweener.addTween(this.panelBox,
@ -399,14 +381,11 @@ const LayoutManager = new Lang.Class({
onComplete: this._showKeyboardComplete,
onCompleteScope: this
});
if (this.keyboardIndex == this.bottomIndex) {
Tweener.addTween(this.trayBox,
{ anchor_y: this.keyboardBox.height,
time: KEYBOARD_ANIMATION_TIME,
transition: 'easeOutQuad'
});
}
Tweener.addTween(this.trayBox,
{ anchor_y: this.keyboardBox.height,
time: KEYBOARD_ANIMATION_TIME,
transition: 'easeOutQuad'
});
this.emit('keyboard-visible-changed', true);
},
@ -418,8 +397,7 @@ const LayoutManager = new Lang.Class({
this._keyboardHeightNotifyId = this.keyboardBox.connect('notify::height', Lang.bind(this, function () {
this.keyboardBox.anchor_y = this.keyboardBox.height;
if (this.keyboardIndex == this.bottomIndex)
this.trayBox.anchor_y = this.keyboardBox.height;
this.trayBox.anchor_y = this.keyboardBox.height;
}));
},
@ -435,14 +413,11 @@ const LayoutManager = new Lang.Class({
onComplete: this._hideKeyboardComplete,
onCompleteScope: this
});
if (this.keyboardIndex == this.bottomIndex) {
Tweener.addTween(this.trayBox,
{ anchor_y: 0,
time: immediate ? 0 : KEYBOARD_ANIMATION_TIME,
transition: 'easeOutQuad'
});
}
Tweener.addTween(this.trayBox,
{ anchor_y: 0,
time: immediate ? 0 : KEYBOARD_ANIMATION_TIME,
transition: 'easeOutQuad'
});
this.emit('keyboard-visible-changed', false);
},
@ -506,7 +481,7 @@ const LayoutManager = new Lang.Class({
},
findMonitorForActor: function(actor) {
return this.monitors[this._chrome.findIndexForActor(actor)];
return this._chrome.findMonitorForActor(actor);
}
});
Signals.addSignalMethods(LayoutManager.prototype);
@ -855,7 +830,6 @@ const Chrome = new Lang.Class({
_relayout: function() {
this._monitors = this._layoutManager.monitors;
this._primaryIndex = this._layoutManager.primaryIndex;
this._primaryMonitor = this._layoutManager.primaryMonitor;
this._updateFullscreen();
@ -871,47 +845,32 @@ const Chrome = new Lang.Class({
let monitor = this._monitors[i];
if (cx >= monitor.x && cx < monitor.x + monitor.width &&
cy >= monitor.y && cy < monitor.y + monitor.height)
return i;
return monitor;
}
// If the center is not on a monitor, return the first overlapping monitor
for (let i = 0; i < this._monitors.length; i++) {
let monitor = this._monitors[i];
if (x + w > monitor.x && x < monitor.x + monitor.width &&
y + h > monitor.y && y < monitor.y + monitor.height)
return i;
return monitor;
}
// otherwise on no monitor
return -1;
return null;
},
findIndexForWindow: function(window) {
let i = this._findMonitorForRect(window.x, window.y, window.width, window.height);
if (i >= 0)
return i;
return this._primaryIndex; // Not on any monitor, pretend its on the primary
_findMonitorForWindow: function(window) {
return this._findMonitorForRect(window.x, window.y, window.width, window.height);
},
// This call guarantees that we return some monitor to simplify usage of it
// In practice all tracked actors should be visible on some monitor anyway
findIndexForActor: function(actor) {
findMonitorForActor: function(actor) {
let [x, y] = actor.get_transformed_position();
let [w, h] = actor.get_transformed_size();
let i = this._findMonitorForRect(x, y, w, h);
if (i >= 0)
return i;
return this._primaryIndex; // Not on any monitor, pretend its on the primary
},
findMonitorForWindow: function(window) {
let i = this._findMonitorForRect(window.x, window.y, window.width, window.height);
if (i >= 0)
return this._monitors[i];
else
return null;
},
findMonitorForActor: function(actor) {
return this._monitors[this.findIndexForActor(actor)];
let monitor = this._findMonitorForRect(x, y, w, h);
if (monitor)
return monitor;
return this._primaryMonitor; // Not on any monitor, pretend its on the primary
},
_queueUpdateRegions: function() {
@ -959,7 +918,7 @@ const Chrome = new Lang.Class({
continue;
if (layer == Meta.StackLayer.FULLSCREEN) {
let monitor = this.findMonitorForWindow(window);
let monitor = this._findMonitorForWindow(window);
if (monitor)
monitor.inFullscreen = true;
}
@ -976,7 +935,7 @@ const Chrome = new Lang.Class({
}
// Or whether it is monitor sized
let monitor = this.findMonitorForWindow(window);
let monitor = this._findMonitorForWindow(window);
if (monitor &&
window.x <= monitor.x &&
window.x + window.width >= monitor.x + monitor.width &&

View File

@ -1129,7 +1129,7 @@ const LookingGlass = new Lang.Class({
if (this._open)
return;
if (!Main.pushModal(this._entry, { keybindingMode: Main.KeybindingMode.LOOKING_GLASS }))
if (!Main.pushModal(this._entry))
return;
this._notebook.selectIndex(0);

View File

@ -20,7 +20,6 @@ const Keyboard = imports.ui.keyboard;
const MessageTray = imports.ui.messageTray;
const Overview = imports.ui.overview;
const Panel = imports.ui.panel;
const Params = imports.misc.params;
const RunDialog = imports.ui.runDialog;
const Layout = imports.ui.layout;
const LookingGlass = imports.ui.lookingGlass;
@ -40,18 +39,6 @@ const Util = imports.misc.util;
const OVERRIDES_SCHEMA = 'org.gnome.shell.overrides';
const DEFAULT_BACKGROUND_COLOR = Clutter.Color.from_pixel(0x2e3436ff);
const KeybindingMode = {
NONE: 0, // block all keybindings
NORMAL: 1 << 0, // window mode
OVERVIEW: 1 << 1,
LOCK_SCREEN: 1 << 2,
UNLOCK_SCREEN: 1 << 3,
LOGIN_SCREEN: 1 << 4,
MESSAGE_TRAY: 1 << 5,
SYSTEM_MODAL: 1 << 6,
LOOKING_GLASS: 1 << 7
};
let componentManager = null;
let panel = null;
let overview = null;
@ -68,7 +55,6 @@ let shellDBusService = null;
let shellMountOpDBusService = null;
let screenSaverDBus = null;
let modalCount = 0;
let keybindingMode = KeybindingMode.NORMAL;
let modalActorFocusStack = [];
let uiGroup = null;
let magnifier = null;
@ -83,17 +69,7 @@ let _overridesSettings = null;
let background = null;
function _sessionUpdated() {
wm.setCustomKeybindingHandler('panel-main-menu',
KeybindingMode.NORMAL |
KeybindingMode.OVERVIEW,
sessionMode.hasOverview ? Lang.bind(overview, overview.toggle) : null);
wm.allowKeybinding('overlay-key', KeybindingMode.NORMAL |
KeybindingMode.OVERVIEW);
wm.setCustomKeybindingHandler('panel-run-dialog',
KeybindingMode.NORMAL |
KeybindingMode.OVERVIEW,
sessionMode.hasRunDialog ? openRunDialog : null);
Meta.keybindings_set_custom_handler('panel-run-dialog', sessionMode.hasRunDialog ? openRunDialog : null);
if (sessionMode.isGreeter)
screenShield.showDialog();
}
@ -109,8 +85,6 @@ function start() {
Gio.DesktopAppInfo.set_desktop_env('GNOME');
sessionMode = new SessionMode.SessionMode();
Meta.prefs_override_preference_schema(sessionMode.buttonLayout[0], sessionMode.buttonLayout[1]);
shellDBusService = new ShellDBus.GnomeShell();
shellMountOpDBusService = new ShellMountOperation.GnomeShellMountOpHandler();
@ -181,7 +155,9 @@ function start() {
global.screen.override_workspace_layout(Meta.ScreenCorner.TOPLEFT,
false, -1, 1);
Meta.keybindings_set_custom_handler('panel-main-menu', Lang.bind(overview, overview.toggle));
global.display.connect('overlay-key', Lang.bind(overview, overview.toggle));
sessionMode.connect('update', _sessionUpdated);
_sessionUpdated();
@ -191,6 +167,8 @@ function start() {
_startDate = new Date();
global.stage.connect('captured-event', _globalKeyPressHandler);
log('GNOME Shell started at ' + _startDate);
let perfModuleName = GLib.getenv("SHELL_PERF_MODULE");
@ -487,6 +465,80 @@ function getWindowActorsForWorkspace(workspaceIndex) {
});
}
// This function encapsulates hacks to make certain global keybindings
// work even when we are in one of our modes where global keybindings
// are disabled with a global grab. (When there is a global grab, then
// all key events will be delivered to the stage, so ::captured-event
// on the stage can be used for global keybindings.)
function _globalKeyPressHandler(actor, event) {
if (modalCount == 0)
return false;
if (event.type() != Clutter.EventType.KEY_PRESS)
return false;
if (!sessionMode.allowKeybindingsWhenModal) {
if (modalCount > (overview.visible ? 1 : 0))
return false;
}
let symbol = event.get_key_symbol();
let keyCode = event.get_key_code();
let ignoredModifiers = global.display.get_ignored_modifier_mask();
let modifierState = event.get_state() & ~ignoredModifiers;
// This relies on the fact that Clutter.ModifierType is the same as Gdk.ModifierType
let action = global.display.get_keybinding_action(keyCode, modifierState);
if (action == Meta.KeyBindingAction.SWITCH_PANELS) {
ctrlAltTabManager.popup(modifierState & Clutter.ModifierType.SHIFT_MASK,
modifierState);
return true;
}
switch (action) {
// left/right would effectively act as synonyms for up/down if we enabled them;
// but that could be considered confusing; we also disable them in the main view.
//
// case Meta.KeyBindingAction.WORKSPACE_LEFT:
// if (!sessionMode.hasWorkspaces)
// return false;
//
// wm.actionMoveWorkspaceLeft();
// return true;
// case Meta.KeyBindingAction.WORKSPACE_RIGHT:
// if (!sessionMode.hasWorkspaces)
// return false;
//
// wm.actionMoveWorkspaceRight();
// return true;
case Meta.KeyBindingAction.WORKSPACE_UP:
if (!sessionMode.hasWorkspaces)
return false;
wm.actionMoveWorkspace(Meta.MotionDirection.UP);
return true;
case Meta.KeyBindingAction.WORKSPACE_DOWN:
if (!sessionMode.hasWorkspaces)
return false;
wm.actionMoveWorkspace(Meta.MotionDirection.DOWN);
return true;
case Meta.KeyBindingAction.PANEL_RUN_DIALOG:
case Meta.KeyBindingAction.COMMAND_2:
if (!sessionMode.hasRunDialog)
return false;
openRunDialog();
return true;
case Meta.KeyBindingAction.PANEL_MAIN_MENU:
case Meta.KeyBindingAction.OVERLAY_KEY:
overview.hide();
return true;
}
return false;
}
function _findModal(actor) {
for (let i = 0; i < modalActorFocusStack.length; i++) {
if (modalActorFocusStack[i].actor == actor)
@ -502,7 +554,7 @@ function isInModalStack(actor) {
/**
* pushModal:
* @actor: #ClutterActor which will be given keyboard focus
* @params: optional parameters
* @timestamp: optional timestamp
*
* Ensure we are in a mode where all keyboard and mouse input goes to
* the stage, and focus @actor. Multiple calls to this function act in
@ -513,27 +565,21 @@ function isInModalStack(actor) {
* modal stack returns to this actor, reset the focus to the actor
* which was focused at the time pushModal() was invoked.
*
* @params may be used to provide the following parameters:
* - timestamp: used to associate the call with a specific user initiated
* event. If not provided then the value of
* global.get_current_time() is assumed.
* @timestamp is optionally used to associate the call with a specific user
* initiated event. If not provided then the value of
* global.get_current_time() is assumed.
*
* - options: Meta.ModalOptions flags to indicate that the pointer is
* already grabbed
*
* - keybindingMode: used to set the current Main.KeybindingMode to filter
* global keybindings; the default of NONE will filter
* out all keybindings
* @options: optional Meta.ModalOptions flags to indicate that the
* pointer is alrady grabbed
*
* Returns: true iff we successfully acquired a grab or already had one
*/
function pushModal(actor, params) {
params = Params.parse(params, { timestamp: global.get_current_time(),
options: 0,
keybindingMode: KeybindingMode.NONE });
function pushModal(actor, timestamp, options) {
if (timestamp == undefined)
timestamp = global.get_current_time();
if (modalCount == 0) {
if (!global.begin_modal(params.timestamp, params.options)) {
if (!global.begin_modal(timestamp, options ? options : 0)) {
log('pushModal: invocation of begin_modal failed');
return false;
}
@ -560,10 +606,8 @@ function pushModal(actor, params) {
modalActorFocusStack.push({ actor: actor,
focus: curFocus,
destroyId: actorDestroyId,
focusDestroyId: curFocusDestroyId,
keybindingMode: keybindingMode });
focusDestroyId: curFocusDestroyId });
keybindingMode = params.keybindingMode;
global.stage.set_key_focus(actor);
return true;
}
@ -590,7 +634,6 @@ function popModal(actor, timestamp) {
global.stage.set_key_focus(null);
global.end_modal(timestamp);
global.set_stage_input_mode(Shell.StageInputMode.NORMAL);
keybindingMode = KeybindingMode.NORMAL;
throw new Error('incorrect pop');
}
@ -603,7 +646,6 @@ function popModal(actor, timestamp) {
if (focusIndex == modalActorFocusStack.length - 1) {
if (record.focus)
record.focus.disconnect(record.focusDestroyId);
keybindingMode = record.keybindingMode;
global.stage.set_key_focus(record.focus);
} else {
let t = modalActorFocusStack[modalActorFocusStack.length - 1];
@ -613,7 +655,6 @@ function popModal(actor, timestamp) {
for (let i = modalActorFocusStack.length - 1; i > focusIndex; i--) {
modalActorFocusStack[i].focus = modalActorFocusStack[i - 1].focus;
modalActorFocusStack[i].focusDestroyId = modalActorFocusStack[i - 1].focusDestroyId;
modalActorFocusStack[i].keybindingMode = modalActorFocusStack[i - 1].keybindingMode;
}
}
modalActorFocusStack.splice(focusIndex, 1);
@ -624,7 +665,6 @@ function popModal(actor, timestamp) {
global.end_modal(timestamp);
global.set_stage_input_mode(Shell.StageInputMode.NORMAL);
Meta.enable_unredirect_for_screen(global.screen);
keybindingMode = KeybindingMode.NORMAL;
}
function createLookingGlass() {

View File

@ -4,7 +4,6 @@ const Clutter = imports.gi.Clutter;
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const Gtk = imports.gi.Gtk;
const GnomeDesktop = imports.gi.GnomeDesktop;
const Atk = imports.gi.Atk;
const Lang = imports.lang;
const Mainloop = imports.mainloop;
@ -36,6 +35,8 @@ const LONGER_SUMMARY_TIMEOUT = 4;
const HIDE_TIMEOUT = 0.2;
const LONGER_HIDE_TIMEOUT = 0.6;
const NOTIFICATION_ICON_SIZE = 24;
// We delay hiding of the tray if the mouse is within MOUSE_LEFT_ACTOR_THRESHOLD
// range from the point where it left the tray.
const MOUSE_LEFT_ACTOR_THRESHOLD = 20;
@ -142,9 +143,14 @@ const URLHighlighter = new Lang.Class({
let url = this._urls[urlId].url;
if (url.indexOf(':') == -1)
url = 'http://' + url;
Gio.app_info_launch_default_for_uri(url, global.create_app_launch_context());
return true;
try {
Gio.app_info_launch_default_for_uri(url, global.create_app_launch_context());
return true;
} catch (e) {
// TODO: remove this after gnome 3 release
Util.spawn(['gvfs-open', url]);
return true;
}
}
return false;
}));
@ -236,8 +242,13 @@ function makeCloseButton() {
closeButton.connect('style-changed', function() {
let themeNode = closeButton.get_theme_node();
closeButton.translation_x = themeNode.get_length('-shell-close-overlap-x');
closeButton.translation_y = themeNode.get_length('-shell-close-overlap-y');
// libcroco doesn't support negative units
let direction = closeButton.get_text_direction() == Clutter.TextDirection.RTL ? -1 : 1;
closeButton.translation_x = direction * themeNode.get_length('-shell-close-overlap-x');
// libcroco doesn't support negative units
closeButton.translation_y = -themeNode.get_length('-shell-close-overlap-y');
});
return closeButton;
@ -283,12 +294,9 @@ function makeCloseButton() {
// If @params contains a 'body' parameter, then that text will be added to
// the content area (as with addBody()).
//
// By default, the icon shown is the same as the source's.
// However, if @params contains a 'gicon' parameter, the passed in gicon
// will be used.
//
// You can add a secondary icon to the banner with 'secondaryGIcon'. There
// is no fallback for this icon.
// By default, the icon shown is created by calling
// source.createIcon(). However, if @params contains an 'icon'
// parameter, the passed in icon will be used.
//
// If @params contains a 'titleMarkup', 'bannerMarkup', or
// 'bodyMarkup' parameter with the value %true, then the corresponding
@ -303,8 +311,6 @@ function makeCloseButton() {
const Notification = new Lang.Class({
Name: 'Notification',
ICON_SIZE: 24,
IMAGE_SIZE: 125,
_init: function(source, title, banner, params) {
@ -314,7 +320,6 @@ const Notification = new Lang.Class({
this.resident = false;
// 'transient' is a reserved keyword in JS, so we have to use an alternate variable name
this.isTransient = false;
this.forFeedback = false;
this.expanded = false;
this.focused = false;
this.acknowledged = false;
@ -389,8 +394,8 @@ const Notification = new Lang.Class({
update: function(title, banner, params) {
params = Params.parse(params, { customContent: false,
body: null,
gicon: null,
secondaryGIcon: null,
icon: null,
secondaryIcon: null,
titleMarkup: false,
bannerMarkup: false,
bodyMarkup: false,
@ -400,12 +405,12 @@ const Notification = new Lang.Class({
let oldFocus = global.stage.key_focus;
if (this._icon && (params.gicon || params.clear)) {
if (this._icon && (params.icon || params.clear)) {
this._icon.destroy();
this._icon = null;
}
if (this._secondaryIcon && (params.secondaryGIcon || params.clear)) {
if (this._secondaryIcon && (params.secondaryIcon || params.clear)) {
this._secondaryIcon.destroy();
this._secondaryIcon = null;
}
@ -435,14 +440,8 @@ const Notification = new Lang.Class({
if (!this._scrollArea && !this._actionArea && !this._imageBin)
this._table.remove_style_class_name('multi-line-notification');
if (params.gicon) {
this._icon = new St.Icon({ gicon: params.gicon,
icon_size: this.ICON_SIZE });
} else {
this._icon = this.source.createIcon(this.ICON_SIZE);
}
if (this._icon) {
if (!this._icon) {
this._icon = params.icon || this.source.createIcon(NOTIFICATION_ICON_SIZE);
this._table.add(this._icon, { row: 0,
col: 0,
x_expand: false,
@ -451,10 +450,11 @@ const Notification = new Lang.Class({
y_align: St.Align.START });
}
if (params.secondaryGIcon) {
this._secondaryIcon = new St.Icon({ gicon: params.secondaryGIcon,
style_class: 'secondary-icon' });
this._bannerBox.add_actor(this._secondaryIcon);
if (!this._secondaryIcon) {
this._secondaryIcon = params.secondaryIcon;
if (this._secondaryIcon)
this._bannerBox.add_actor(this._secondaryIcon);
}
this.title = title;
@ -714,10 +714,6 @@ const Notification = new Lang.Class({
this.isTransient = isTransient;
},
setForFeedback: function(forFeedback) {
this.forFeedback = forFeedback;
},
setUseActionIcons: function(useIcons) {
this._useActionIcons = useIcons;
},
@ -1121,14 +1117,10 @@ const Source = new Lang.Class({
// Provides a sane default implementation, override if you need
// something more fancy.
createIcon: function(size) {
return new St.Icon({ gicon: this.getIcon(),
return new St.Icon({ icon_name: this.iconName,
icon_size: size });
},
getIcon: function() {
return new Gio.ThemedIcon({ name: this.iconName });
},
_ensureMainIcon: function() {
if (this._mainIcon)
return;
@ -1394,8 +1386,6 @@ const MessageTray = new Lang.Class({
y_expand: true,
x_expand: true,
layout_manager: new Clutter.BinLayout() });
this._notificationWidget.connect('key-release-event', Lang.bind(this, this._onNotificationKeyRelease));
this.actor.add_actor(this._notificationWidget);
this._notificationBin = new St.Bin({ y_expand: true });
@ -1445,16 +1435,15 @@ const MessageTray = new Lang.Class({
this._closeButton = makeCloseButton();
this._closeButton.hide();
this._closeButton.connect('clicked', Lang.bind(this, this._closeNotification));
this._closeButton.connect('clicked', Lang.bind(this, this._onCloseClicked));
this._notificationWidget.add_actor(this._closeButton);
this._idleMonitorBecameActiveId = 0;
this._idleMonitorWatchId = 0;
this._userActiveWhileNotificationShown = false;
this.idleMonitor = new GnomeDesktop.IdleMonitor();
this.idleMonitor = Shell.IdleMonitor.get();
this._grabHelper = new GrabHelper.GrabHelper(this.actor,
{ keybindingMode: Main.KeybindingMode.MESSAGE_TRAY });
this._grabHelper = new GrabHelper.GrabHelper(this.actor);
this._grabHelper.addActor(this._summaryBoxPointer.actor);
this._grabHelper.addActor(this.actor);
if (Main.panel.statusArea.activities)
@ -1471,7 +1460,6 @@ const MessageTray = new Lang.Class({
this._pointerInTray = false;
this._pointerInKeyboard = false;
this._keyboardVisible = false;
this._keyboardUnderMessageTray = false;
this._summaryState = State.HIDDEN;
this._pointerInSummary = false;
this._notificationClosed = false;
@ -1519,20 +1507,10 @@ const MessageTray = new Lang.Class({
Main.sessionMode.connect('updated', Lang.bind(this, this._sessionUpdated));
Main.wm.addKeybinding('toggle-message-tray',
new Gio.Settings({ schema: SHELL_KEYBINDINGS_SCHEMA }),
Meta.KeyBindingFlags.NONE,
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.MESSAGE_TRAY |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this.toggleAndNavigate));
Main.wm.addKeybinding('focus-active-notification',
new Gio.Settings({ schema: SHELL_KEYBINDINGS_SCHEMA }),
Meta.KeyBindingFlags.NONE,
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.MESSAGE_TRAY |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._expandActiveNotification));
global.display.add_keybinding('toggle-message-tray',
new Gio.Settings({ schema: SHELL_KEYBINDINGS_SCHEMA }),
Meta.KeyBindingFlags.NONE,
Lang.bind(this, this.toggleAndNavigate));
this._summaryItems = [];
this._chatSummaryItemsCount = 0;
@ -1544,29 +1522,13 @@ const MessageTray = new Lang.Class({
this._trayDwellUserTime = 0;
this._sessionUpdated();
this._updateNoMessagesLabel();
},
_updateNoMessagesLabel: function() {
if (this._summaryItems.length == 0 && !this._noMessages) {
this._noMessages = new St.Label({ text: _("No Messages"),
style_class: 'no-messages-label',
x_align: Clutter.ActorAlign.CENTER,
x_expand: true,
y_align: Clutter.ActorAlign.CENTER,
y_expand: true });
this.actor.add_actor(this._noMessages);
} else if (this._summaryItems.length > 0 && this._noMessages) {
this._noMessages.destroy();
this._noMessages = null;
}
},
_sessionUpdated: function() {
if (Main.sessionMode.isLocked || Main.sessionMode.isGreeter)
Main.ctrlAltTabManager.removeGroup(this._summary);
else
Main.ctrlAltTabManager.addGroup(this._summary, _("Message Tray"), 'user-available-symbolic',
Main.ctrlAltTabManager.addGroup(this._summary, _("Message Tray"), 'start-here-symbolic',
{ focusCallback: Lang.bind(this, this.toggleAndNavigate),
sortGroup: CtrlAltTab.SortGroup.BOTTOM });
this._updateState();
@ -1606,8 +1568,6 @@ const MessageTray = new Lang.Class({
},
_trayDwellTimeout: function() {
this._trayDwellTimeoutId = 0;
if (Main.modalCount > 0)
return false;
@ -1618,25 +1578,15 @@ const MessageTray = new Lang.Class({
if (currentUserTime != this._trayDwellUserTime)
return false;
this._trayDwellTimeoutId = 0;
this._traySummoned = true;
this._updateState();
return false;
},
_onNotificationKeyRelease: function(actor, event) {
let ignoredModifiers = global.display.get_ignored_modifier_mask();
let modifierState = event.get_state() & ~ignoredModifiers;
if (event.get_key_symbol() == Clutter.KEY_Escape && modifierState == 0) {
this._closeNotification();
return true;
}
return false;
},
_closeNotification: function() {
_onCloseClicked: function() {
if (this._notificationState == State.SHOWN) {
this._closeButton.hide();
this._notificationClosed = true;
@ -1704,8 +1654,6 @@ const MessageTray = new Lang.Class({
Meta.later_add(Meta.LaterType.BEFORE_REDRAW, Lang.bind(this, function() { this._updateState(); return false; }));
this.emit('summary-item-added', summaryItem);
this._updateNoMessagesLabel();
},
getSummaryItems: function() {
@ -1738,8 +1686,6 @@ const MessageTray = new Lang.Class({
summaryItemToRemove.actor.destroy();
this._updateNoMessagesLabel();
if (needUpdate)
this._updateState();
},
@ -1925,15 +1871,12 @@ const MessageTray = new Lang.Class({
},
_onKeyboardVisibleChanged: function(layoutManager, keyboardVisible) {
let keyboardUnderMessageTray = layoutManager.keyboardIndex == layoutManager.bottomIndex;
if (this._keyboardVisible == keyboardVisible &&
this._keyboardUnderMesssageTray == keyboardUnderMessageTray)
if (this._keyboardVisible == keyboardVisible)
return;
this._keyboardVisible = keyboardVisible;
this._keyboardUnderMessageTray = keyboardUnderMessageTray;
if (keyboardVisible && keyboardUnderMessageTray)
if (keyboardVisible)
this.actor.add_style_pseudo_class('keyboard');
else
this.actor.remove_style_pseudo_class('keyboard');
@ -2003,9 +1946,8 @@ const MessageTray = new Lang.Class({
// Notifications
let notificationQueue = this._notificationQueue;
let notificationUrgent = notificationQueue.length > 0 && notificationQueue[0].urgency == Urgency.CRITICAL;
let notificationForFeedback = notificationQueue.length > 0 && notificationQueue[0].forFeedback;
let notificationsLimited = this._busy || this._inFullscreen;
let notificationsPending = notificationQueue.length > 0 && (!notificationsLimited || notificationUrgent || notificationForFeedback) && Main.sessionMode.hasNotifications;
let notificationsPending = notificationQueue.length > 0 && (!notificationsLimited || notificationUrgent) && Main.sessionMode.hasNotifications;
let nextNotification = notificationQueue.length > 0 ? notificationQueue[0] : null;
let notificationPinned = this._pointerInTray && !this._pointerInSummary && !this._notificationRemoved;
let notificationExpanded = this._notification && this._notification.expanded;
@ -2037,7 +1979,8 @@ const MessageTray = new Lang.Class({
let summaryPinned = this._pointerInTray || summarySummoned || this._locked;
let summaryHovered = this._pointerInTray || this._pointerInSummary;
let notificationsVisible = this._notificationState != State.HIDDEN;
let notificationsVisible = (this._notificationState == State.SHOWING ||
this._notificationState == State.SHOWN);
let notificationsDone = !notificationsVisible && !notificationsPending;
let summaryOptionalInOverview = this._overviewVisible && !this._locked && !summaryHovered;
@ -2090,12 +2033,12 @@ const MessageTray = new Lang.Class({
this._desktopCloneState == State.SHOWN);
let desktopCloneShouldBeVisible = (trayShouldBeVisible &&
!this._overviewVisible &&
(!this._keyboardVisible || !this._keyboardUnderMessageTray));
!this._keyboardVisible);
if (!desktopCloneIsVisible && desktopCloneShouldBeVisible) {
this._showDesktopClone();
} else if (desktopCloneIsVisible && !desktopCloneShouldBeVisible) {
this._hideDesktopClone (this._keyboardVisible && this._keyboardUnderMessageTray);
this._hideDesktopClone (this._keyboardVisible);
}
},
@ -2212,29 +2155,23 @@ const MessageTray = new Lang.Class({
});
},
_onIdleMonitorBecameActive: function() {
this.idleMonitor.disconnect(this._idleMonitorBecameActiveId);
this._idleMonitorBecameActiveId = 0;
_onIdleMonitorWatch: function(monitor, id, userBecameIdle) {
this.idleMonitor.remove_watch(this._idleMonitorWatchId);
this._idleMonitorWatchId = 0;
if (!userBecameIdle)
this._updateNotificationTimeout(2000);
this._userActiveWhileNotificationShown = true;
this._updateNotificationTimeout(2000);
this._updateState();
},
_showNotification: function() {
this._notification = this._notificationQueue.shift();
let userIdle = this.idleMonitor.get_idletime() > IDLE_TIME;
if (userIdle) {
this._userActiveWhileNotificationShown = false;
this._idleMonitorBecameActiveId = this.idleMonitor.connect('became-active', Lang.bind(this, this._onIdleMonitorBecameActive));
} else {
this._userActiveWhileNotificationShown = true;
}
this._userActiveWhileNotificationShown = this.idleMonitor.get_idletime() <= IDLE_TIME;
this._idleMonitorWatchId = this.idleMonitor.add_watch(IDLE_TIME,
Lang.bind(this, this._onIdleMonitorWatch));
this._notificationClickedId = this._notification.connect('done-displaying',
Lang.bind(this, this._escapeTray));
this._notification.connect('unfocused', Lang.bind(this, function() {
this._notificationUnfocusedId = this._notification.connect('unfocused', Lang.bind(this, function() {
this._updateState();
}));
this._notificationBin.child = this._notification.actor;
@ -2356,18 +2293,12 @@ const MessageTray = new Lang.Class({
this._grabHelper.ungrab({ actor: this._notification.actor });
if (this._idleMonitorBecameActiveId) {
this.idleMonitor.disconnect(this._idleMonitorBecameActiveId);
this._idleMonitorBecameActiveId = 0;
}
if (this._notificationExpandedId) {
this._notification.disconnect(this._notificationExpandedId);
this._notificationExpandedId = 0;
}
if (this._notificationRemoved) {
Tweener.removeTweens(this._notificationWidget);
this._notificationWidget.y = this.actor.height;
this._notificationWidget.opacity = 0;
this._notificationState = State.HIDDEN;
@ -2386,26 +2317,22 @@ const MessageTray = new Lang.Class({
},
_hideNotificationCompleted: function() {
this._notificationRemoved = false;
this._notificationWidget.hide();
this._closeButton.hide();
this._pointerInTray = false;
this.actor.hover = false; // Clutter doesn't emit notify::hover when actors move
this._notificationBin.child = null;
this._notification.collapseCompleted();
this._notification.disconnect(this._notificationClickedId);
this._notificationClickedId = 0;
this._notification.disconnect(this._notificationUnfocusedId);
this._notificationUnfocusedId = 0;
let notification = this._notification;
this._notification = null;
if (notification.isTransient)
notification.destroy(NotificationDestroyedReason.EXPIRED);
},
_expandActiveNotification: function() {
if (!this._notification)
return;
this._expandNotification(false);
this._notificationRemoved = false;
this._closeButton.hide();
this._pointerInTray = false;
this.actor.hover = false; // Clutter doesn't emit notify::hover when actors move
this._notificationBin.child = null;
this._notificationWidget.hide();
},
_expandNotification: function(autoExpanding) {
@ -2432,7 +2359,9 @@ const MessageTray = new Lang.Class({
this._notificationWidget.y = expandedY;
} else if (this._notification.y != expandedY) {
// Tween also opacity here, to override a possible tween that's
// currently hiding the notification.
// currently hiding the notification. This will ensure that the
// notification is not removed when the onComplete handler for this
// one triggers.
this._tween(this._notificationWidget, '_notificationState', State.SHOWN,
{ y: expandedY,
opacity: 255,
@ -2494,7 +2423,6 @@ const MessageTray = new Lang.Class({
this._summaryBoxPointerItem.prepareNotificationStackForShowing();
} else if (this._clickedSummaryItemMouseButton == 3) {
this._summaryBoxPointer.bin.child = this._clickedSummaryItem.rightClickMenu;
this._summaryBoxPointerCloseClickedId = 0;
}
this._grabHelper.grab({ actor: this._summaryBoxPointer.bin.child,
@ -2601,10 +2529,8 @@ const MessageTray = new Lang.Class({
this._summaryBoxPointer.bin.child = null;
this._summaryBoxPointerItem.disconnect(this._summaryBoxPointerContentUpdatedId);
this._summaryBoxPointerContentUpdatedId = 0;
if (this._summaryBoxPointerCloseClickedId != 0) {
this._summaryBoxPointerItem.closeButton.disconnect(this._summaryBoxPointerCloseClickedId);
this._summaryBoxPointerCloseClickedId = 0;
}
this._summaryBoxPointerItem.closeButton.disconnect(this._summaryBoxPointerCloseClickedId);
this._summaryBoxPointerCloseClickedId = 0;
this._summaryBoxPointerItem.source.disconnect(this._sourceDoneDisplayingId);
this._summaryBoxPointerDoneDisplayingId = 0;

View File

@ -20,6 +20,7 @@ const Main = imports.ui.main;
const Tweener = imports.ui.tweener;
const OPEN_AND_CLOSE_TIME = 0.1;
const FADE_IN_BUTTONS_TIME = 0.33;
const FADE_OUT_DIALOG_TIME = 1.0;
const State = {
@ -37,12 +38,10 @@ const ModalDialog = new Lang.Class({
params = Params.parse(params, { shellReactive: false,
styleClass: null,
parentActor: Main.uiGroup,
keybindingMode: Main.KeybindingMode.SYSTEM_MODAL,
shouldFadeIn: true });
this.state = State.CLOSED;
this._hasModal = false;
this._keybindingMode = params.keybindingMode;
this._shellReactive = params.shellReactive;
this._shouldFadeIn = params.shouldFadeIn;
@ -58,7 +57,7 @@ const ModalDialog = new Lang.Class({
this._group.connect('destroy', Lang.bind(this, this._onGroupDestroy));
this._buttonKeys = {};
this._actionKeys = {};
this._group.connect('key-release-event', Lang.bind(this, this._onKeyReleaseEvent));
this._backgroundBin = new St.Bin();
@ -95,10 +94,10 @@ const ModalDialog = new Lang.Class({
x_align: St.Align.MIDDLE,
y_align: St.Align.START });
this.buttonLayout = new St.BoxLayout({ style_class: 'modal-dialog-button-box',
this._buttonLayout = new St.BoxLayout({ style_class: 'modal-dialog-button-box',
visible: false,
vertical: false });
this.dialogLayout.add(this.buttonLayout,
this.dialogLayout.add(this._buttonLayout,
{ expand: true,
x_align: St.Align.MIDDLE,
y_align: St.Align.END });
@ -113,17 +112,37 @@ const ModalDialog = new Lang.Class({
this._group.destroy();
},
clearButtons: function() {
this.buttonLayout.destroy_all_children();
this._buttonKeys = {};
setActionKey: function(key, action) {
this._actionKeys[key] = action;
},
setButtons: function(buttons) {
this.clearButtons();
this.buttonLayout.visible = (buttons.length > 0);
let hadChildren = this._buttonLayout.get_children() > 0;
this._buttonLayout.destroy_all_children();
this._actionKeys = {};
this._buttonLayout.visible = (buttons.length > 0);
for (let i = 0; i < buttons.length; i++) {
let buttonInfo = buttons[i];
let label = buttonInfo['label'];
let action = buttonInfo['action'];
let key = buttonInfo['key'];
let isDefault = buttonInfo['default'];
if (isDefault && !key) {
this._actionKeys[Clutter.KEY_KP_Enter] = action;
this._actionKeys[Clutter.KEY_ISO_Enter] = action;
key = Clutter.KEY_Return;
}
buttonInfo.button = new St.Button({ style_class: 'modal-dialog-button',
reactive: true,
can_focus: true,
label: label });
if (isDefault)
buttonInfo.button.add_style_pseudo_class('default');
let x_alignment;
if (buttons.length == 1)
@ -135,62 +154,43 @@ const ModalDialog = new Lang.Class({
else
x_alignment = St.Align.MIDDLE;
this.addButton(buttonInfo, { expand: true,
x_fill: false,
y_fill: false,
x_align: x_alignment,
y_align: St.Align.MIDDLE });
if (!this._initialKeyFocusDestroyId)
this._initialKeyFocus = buttonInfo.button;
this._buttonLayout.add(buttonInfo.button,
{ expand: true,
x_fill: false,
y_fill: false,
x_align: x_alignment,
y_align: St.Align.MIDDLE });
buttonInfo.button.connect('clicked', action);
if (key)
this._actionKeys[key] = action;
}
},
addButton: function(buttonInfo, layoutInfo) {
let label = buttonInfo['label'];
let action = buttonInfo['action'];
let key = buttonInfo['key'];
let isDefault = buttonInfo['default'];
// Fade in buttons if there weren't any before
if (!hadChildren && buttons.length > 0) {
this._buttonLayout.opacity = 0;
Tweener.addTween(this._buttonLayout,
{ opacity: 255,
time: FADE_IN_BUTTONS_TIME,
transition: 'easeOutQuad',
onComplete: Lang.bind(this, function() {
this.emit('buttons-set');
})
});
} else {
this.emit('buttons-set');
}
let keys;
if (key)
keys = [key];
else if (isDefault)
keys = [Clutter.KEY_Return, Clutter.KEY_KP_Enter, Clutter.KEY_ISO_Enter];
else
keys = [];
let button = new St.Button({ style_class: 'modal-dialog-button',
reactive: true,
can_focus: true,
label: label });
button.connect('clicked', action);
buttonInfo['button'] = button;
if (isDefault)
button.add_style_pseudo_class('default');
if (!this._initialKeyFocusDestroyId)
this._initialKeyFocus = button;
for (let i in keys)
this._buttonKeys[keys[i]] = buttonInfo;
this.buttonLayout.add(button, layoutInfo);
return button;
},
_onKeyReleaseEvent: function(object, event) {
let symbol = event.get_key_symbol();
let buttonInfo = this._buttonKeys[symbol];
let action = this._actionKeys[symbol];
if (!buttonInfo)
return false;
let button = buttonInfo['button'];
let action = buttonInfo['action'];
if (action && button.reactive) {
if (action) {
action();
return true;
}
@ -243,7 +243,7 @@ const ModalDialog = new Lang.Class({
if (this.state == State.OPENED || this.state == State.OPENING)
return true;
if (!this.pushModal({ timestamp: timestamp }))
if (!this.pushModal(timestamp))
return false;
this._fadeOpen(onPrimary);
@ -293,8 +293,7 @@ const ModalDialog = new Lang.Class({
pushModal: function (timestamp) {
if (this._hasModal)
return true;
if (!Main.pushModal(this._group, { timestamp: timestamp,
keybindingMode: this._keybindingMode }))
if (!Main.pushModal(this._group, timestamp))
return false;
this._hasModal = true;

View File

@ -356,10 +356,12 @@ const NotificationDaemon = new Lang.Class({
ndata.actions, ndata.hints, ndata.notification];
let gicon = this._iconForNotificationData(icon, hints);
let iconActor = new St.Icon({ gicon: gicon,
icon_size: MessageTray.NOTIFICATION_ICON_SIZE });
if (notification == null) {
notification = new MessageTray.Notification(source, summary, body,
{ gicon: gicon,
{ icon: iconActor,
bannerMarkup: true });
ndata.notification = notification;
notification.connect('destroy', Lang.bind(this,
@ -384,7 +386,7 @@ const NotificationDaemon = new Lang.Class({
this._emitActionInvoked(ndata.id, actionId);
}));
} else {
notification.update(summary, body, { gicon: gicon,
notification.update(summary, body, { icon: iconActor,
bannerMarkup: true,
clear: true });
}

View File

@ -23,29 +23,11 @@ const WorkspaceThumbnail = imports.ui.workspaceThumbnail;
// Time for initial animation going into Overview mode
const ANIMATION_TIME = 0.25;
// XXX -- grab this automatically. Hard to do.
const DASH_MAX_WIDTH = 96;
// We split the screen vertically between the dash and the view selector.
const DASH_SPLIT_FRACTION = 0.1;
const DND_WINDOW_SWITCH_TIMEOUT = 1250;
const GLSL_DIM_EFFECT_DECLARATIONS = '';
const GLSL_DIM_EFFECT_CODE = '\
vec2 dist = cogl_tex_coord_in[0].xy - vec2(0.5, 0.5); \
float elipse_radius = 0.5; \
/* from https://bugzilla.gnome.org/show_bug.cgi?id=669798: \
the alpha on the gradient goes from 165 at its darkest to 98 at its most transparent. */ \
float y = 165.0 / 255.0; \
float x = 98.0 / 255.0; \
/* interpolate darkening value, based on distance from screen center */ \
float val = min(length(dist), elipse_radius); \
float a = mix(x, y, val / elipse_radius); \
/* dim_factor varies from [1.0 -> 0.5] when overview is showing \
We use it to smooth value, then we clamp it to valid color interval */ \
a = clamp(a - cogl_color_in.r + 0.5, 0.0, 1.0); \
/* We\'re blending between: color and black color (obviously omitted in the equation) */ \
cogl_color_out.xyz = cogl_color_out.xyz * (1.0 - a); \
cogl_color_out.a = 1.0;';
const SwipeScrollDirection = {
NONE: 0,
HORIZONTAL: 1,
@ -75,14 +57,7 @@ const ShellInfo = new Lang.Class({
this._source.destroy();
},
setMessage: function(text, options) {
options = Params.parse(options, { undoCallback: null,
forFeedback: false
});
let undoCallback = options.undoCallback;
let forFeedback = options.forFeedback;
setMessage: function(text, undoCallback, undoLabel) {
if (this._source == null) {
this._source = new MessageTray.SystemNotificationSource();
this._source.connect('destroy', Lang.bind(this,
@ -96,7 +71,6 @@ const ShellInfo = new Lang.Class({
if (this._source.notifications.length == 0) {
notification = new MessageTray.Notification(this._source, text, null);
notification.setTransient(true);
notification.setForFeedback(forFeedback);
} else {
notification = this._source.notifications[0];
notification.update(text, null, { clear: true });
@ -104,8 +78,10 @@ const ShellInfo = new Lang.Class({
this._undoCallback = undoCallback;
if (undoCallback) {
notification.addButton('system-undo', _("Undo"));
notification.connect('action-invoked', Lang.bind(this, this._onUndoClicked));
notification.addButton('system-undo',
undoLabel ? undoLabel : _("Undo"));
notification.connect('action-invoked',
Lang.bind(this, this._onUndoClicked));
}
this._source.notify(notification);
@ -137,10 +113,6 @@ const Overview = new Lang.Class({
// scenes which allows us to show the background with different
// rendering options without duplicating the texture data.
this._background = Meta.BackgroundActor.new_for_screen(global.screen);
this._background.add_glsl_snippet(Meta.SnippetHook.FRAGMENT,
GLSL_DIM_EFFECT_DECLARATIONS,
GLSL_DIM_EFFECT_CODE,
false);
this._background.hide();
global.overlay_group.add_actor(this._background);
@ -261,16 +233,11 @@ const Overview = new Lang.Class({
this._viewSelector.removeSearchProvider(provider);
},
//
// options:
// - undoCallback (function): the callback to be called if undo support is needed
// - forFeedback (boolean): whether the message is for direct feedback of a user action
//
setMessage: function(text, options) {
setMessage: function(text, undoCallback, undoLabel) {
if (this.isDummy)
return;
this._shellInfo.setMessage(text, options);
this._shellInfo.setMessage(text, undoCallback, undoLabel);
},
_onDragBegin: function() {
@ -535,7 +502,7 @@ const Overview = new Lang.Class({
let searchX = (primary.width - searchWidth) / 2;
let searchY = contentY + this._spacing;
let dashWidth = DASH_MAX_WIDTH;
let dashWidth = Math.round(DASH_SPLIT_FRACTION * primary.width);
let dashY = searchY + searchHeight + this._spacing;
let dashX;
if (rtl) {
@ -591,7 +558,7 @@ const Overview = new Lang.Class({
if (this._shown)
return;
// Do this manually instead of using _syncInputMode, to handle failure
if (!Main.pushModal(this._group, { keybindingMode: Main.KeybindingMode.OVERVIEW }))
if (!Main.pushModal(this._group))
return;
this._modal = true;
this._animateVisible();
@ -655,7 +622,7 @@ const Overview = new Lang.Class({
});
Tweener.addTween(this._background,
{ dim_factor: 0.8,
{ dim_factor: 0.4,
time: ANIMATION_TIME,
transition: 'easeOutQuad'
});
@ -742,8 +709,7 @@ const Overview = new Lang.Class({
if (this._shown) {
if (!this._modal) {
if (Main.pushModal(this._group,
{ keybindingMode: Main.KeybindingMode.OVERVIEW }))
if (Main.pushModal(this._group))
this._modal = true;
else
this.hide();

View File

@ -75,41 +75,33 @@ function _unpremultiply(color) {
blue: blue, alpha: color.alpha });
};
const Animation = new Lang.Class({
Name: 'Animation',
_init: function(filename, width, height, speed) {
this.actor = new St.Bin();
const AnimatedIcon = new Lang.Class({
Name: 'AnimatedIcon',
_init: function(name, size) {
this.actor = new St.Bin({ visible: false });
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
this._speed = speed;
this.actor.connect('notify::visible', Lang.bind(this, this._onVisibleNotify));
this._isLoaded = false;
this._isPlaying = false;
this._timeoutId = 0;
this._frame = 0;
this._animations = St.TextureCache.get_default().load_sliced_image (filename, width, height,
Lang.bind(this, this._animationsLoaded));
this._animations = St.TextureCache.get_default().load_sliced_image (global.datadir + '/theme/' + name, size, size);
this.actor.set_child(this._animations);
},
play: function() {
if (this._isLoaded && this._timeoutId == 0) {
if (this._frame == 0)
this._showFrame(0);
this._timeoutId = Mainloop.timeout_add(this._speed, Lang.bind(this, this._update));
}
this._isPlaying = true;
},
stop: function() {
_disconnectTimeout: function() {
if (this._timeoutId > 0) {
Mainloop.source_remove(this._timeoutId);
this._timeoutId = 0;
}
},
this._isPlaying = false;
_onVisibleNotify: function() {
if (this.actor.visible)
this._timeoutId = Mainloop.timeout_add(ANIMATED_ICON_UPDATE_TIMEOUT, Lang.bind(this, this._update));
else
this._disconnectTimeout();
},
_showFrame: function(frame) {
@ -129,24 +121,8 @@ const Animation = new Lang.Class({
return true;
},
_animationsLoaded: function() {
this._isLoaded = true;
if (this._isPlaying)
this.play();
},
_onDestroy: function() {
this.stop();
}
});
const AnimatedIcon = new Lang.Class({
Name: 'AnimatedIcon',
Extends: Animation,
_init: function(name, size) {
this.parent(global.datadir + '/theme/' + name, size, size, ANIMATED_ICON_UPDATE_TIMEOUT);
this._disconnectTimeout();
}
});
@ -271,10 +247,6 @@ const AppMenuButton = new Lang.Class({
this._container.connect('get-preferred-height', Lang.bind(this, this._getContentPreferredHeight));
this._container.connect('allocate', Lang.bind(this, this._contentAllocate));
let textureCache = St.TextureCache.get_default();
textureCache.connect('icon-theme-changed',
Lang.bind(this, this._onIconThemeChanged));
this._iconBox = new Shell.Slicer({ name: 'appMenuIcon' });
this._iconBox.connect('style-changed',
Lang.bind(this, this._onIconBoxStyleChanged));
@ -301,7 +273,6 @@ const AppMenuButton = new Lang.Class({
this._spinner = new AnimatedIcon('process-working.svg',
PANEL_ICON_SIZE);
this._container.add_actor(this._spinner.actor);
this._spinner.actor.hide();
this._spinner.actor.lower_bottom();
let tracker = Shell.WindowTracker.get_default();
@ -361,15 +332,6 @@ const AppMenuButton = new Lang.Class({
this._updateIconBoxClip();
},
_onIconThemeChanged: function() {
if (this._iconBox.child == null)
return;
this._iconBox.child.destroy();
let icon = this._targetApp.get_faded_icon(2 * PANEL_ICON_SIZE);
this._iconBox.set_child(icon);
},
_updateIconBoxClip: function() {
let allocation = this._iconBox.allocation;
if (this._iconBottomClip > 0)
@ -392,7 +354,6 @@ const AppMenuButton = new Lang.Class({
transition: "easeOutQuad",
onCompleteScope: this,
onComplete: function() {
this._spinner.stop();
this._spinner.actor.opacity = 255;
this._spinner.actor.hide();
}
@ -402,7 +363,6 @@ const AppMenuButton = new Lang.Class({
startAnimation: function() {
this._stop = false;
this.actor.reactive = false;
this._spinner.play();
this._spinner.actor.show();
},
@ -890,13 +850,10 @@ const PanelCorner = new Lang.Class({
let backgroundColor = node.get_color('-panel-corner-background-color');
let borderColor = node.get_color('-panel-corner-border-color');
let noOverlap = borderColor.alpha == 0;
let offsetY = noOverlap ? borderWidth : 0;
let cr = this.actor.get_context();
cr.setOperator(Cairo.Operator.SOURCE);
cr.moveTo(0, offsetY);
cr.moveTo(0, 0);
if (this._side == St.Side.LEFT)
cr.arc(cornerRadius,
borderWidth + cornerRadius,
@ -905,7 +862,7 @@ const PanelCorner = new Lang.Class({
cr.arc(0,
borderWidth + cornerRadius,
cornerRadius, 3 * Math.PI / 2, 2 * Math.PI);
cr.lineTo(cornerRadius, offsetY);
cr.lineTo(cornerRadius, 0);
cr.closePath();
let savedPath = cr.copyPath();
@ -915,9 +872,6 @@ const PanelCorner = new Lang.Class({
Clutter.cairo_set_source_color(cr, over);
cr.fill();
if (noOverlap)
return;
let offset = borderWidth;
Clutter.cairo_set_source_color(cr, backgroundColor);
@ -947,7 +901,6 @@ const PANEL_ITEM_IMPLEMENTATIONS = {
'volume': imports.ui.status.volume.Indicator,
'battery': imports.ui.status.power.Indicator,
'lockScreen': imports.ui.status.lockScreenMenu.Indicator,
'logo': imports.gdm.loginDialog.LogoMenuButton,
'keyboard': imports.ui.status.keyboard.InputSourceIndicator,
'powerMenu': imports.gdm.powerMenu.PowerMenuButton,
'userMenu': imports.ui.userMenu.UserMenuButton
@ -972,10 +925,15 @@ const Panel = new Lang.Class({
reactive: true });
this.actor._delegate = this;
this._sessionStyle = null;
this.statusArea = {};
Main.overview.connect('shown', Lang.bind(this, function () {
this.actor.add_style_class_name('in-overview');
}));
Main.overview.connect('hiding', Lang.bind(this, function () {
this.actor.remove_style_class_name('in-overview');
}));
this.menuManager = new PopupMenu.PopupMenuManager(this);
this._leftBox = new St.BoxLayout({ name: 'panelLeft' });
@ -1004,7 +962,7 @@ const Panel = new Lang.Class({
this.actor.connect('button-press-event', Lang.bind(this, this._onButtonPress));
Main.layoutManager.panelBox.add(this.actor);
Main.ctrlAltTabManager.addGroup(this.actor, _("Top Bar"), 'emblem-system-symbolic',
Main.ctrlAltTabManager.addGroup(this.actor, _("Top Bar"), 'start-here-symbolic',
{ sortGroup: CtrlAltTab.SortGroup.TOP });
Main.sessionMode.connect('updated', Lang.bind(this, this._updatePanel));
@ -1161,13 +1119,6 @@ const Panel = new Lang.Class({
this._updateBox(panel.left, this._leftBox);
this._updateBox(panel.center, this._centerBox);
this._updateBox(panel.right, this._rightBox);
if (this._sessionStyle)
this._removeStyleClassName(this._sessionStyle);
this._sessionStyle = Main.sessionMode.panelStyle;
if (this._sessionStyle)
this._addStyleClassName(this._sessionStyle);
},
_initBox: function(elements, box) {
@ -1256,17 +1207,5 @@ const Panel = new Lang.Class({
this.statusArea[role] = indicator;
this._addToPanelBox(role, indicator, position, boxContainer);
return indicator;
},
_addStyleClassName: function(className) {
this.actor.add_style_class_name(className);
this._rightCorner.actor.add_style_class_name(className);
this._leftCorner.actor.add_style_class_name(className);
},
_removeStyleClassName: function(className) {
this.actor.remove_style_class_name(className);
this._rightCorner.actor.remove_style_class_name(className);
this._leftCorner.actor.remove_style_class_name(className);
}
});

View File

@ -2,7 +2,6 @@
const Lang = imports.lang;
const Mainloop = imports.mainloop;
const GnomeDesktop = imports.gi.GnomeDesktop;
const Shell = imports.gi.Shell;
// We stop polling if the user is idle for more than this amount of time
@ -41,9 +40,9 @@ const PointerWatcher = new Lang.Class({
Name: 'PointerWatcher',
_init: function() {
let idleMonitor = new GnomeDesktop.IdleMonitor();
idleMonitor.connect('became-active', Lang.bind(this, this._onIdleMonitorBecameActive));
idleMonitor.add_watch(IDLE_TIME, Lang.bind(this, this._onIdleMonitorBecameIdle));
let idleMonitor = Shell.IdleMonitor.get();
idleMonitor.add_watch(IDLE_TIME,
Lang.bind(this, this._onIdleMonitorWatch));
this._idle = idleMonitor.get_idletime() > IDLE_TIME;
this._watches = [];
this.pointerX = null;
@ -79,14 +78,11 @@ const PointerWatcher = new Lang.Class({
}
},
_onIdleMonitorBecameActive: function(monitor) {
this._idle = false;
this._updatePointer();
this._updateTimeout();
},
_onIdleMonitorWatch: function(monitor, id, userBecameIdle) {
this._idle = userBecameIdle;
if (!userBecameIdle)
this._updatePointer();
_onIdleMonitorBecameIdle: function(monitor) {
this._idle = true;
this._updateTimeout();
},

View File

@ -31,37 +31,20 @@ const SearchProviderIface = <interface name="org.gnome.Shell.SearchProvider">
var SearchProviderProxy = Gio.DBusProxy.makeProxyWrapper(SearchProviderIface);
function loadRemoteSearchProviders(addProviderCallback) {
let loadState = { loadedProviders: [],
objectPaths: {},
numLoading: 0,
addProviderCallback: addProviderCallback };
function loadRemoteSearchProviders(addProviderCallback) {
let dataDirs = GLib.get_system_data_dirs();
let loadedProviders = {};
for (let i = 0; i < dataDirs.length; i++) {
let path = GLib.build_filenamev([dataDirs[i], 'gnome-shell', 'search-providers']);
let dir = Gio.file_new_for_path(path);
dir.query_info_async('standard:type', Gio.FileQueryInfoFlags.NONE,
GLib.PRIORITY_DEFAULT, null,
function(object, res) {
let exists = false;
try {
object.query_info_finish(res);
exists = true;
} catch (e) {
}
if (!exists)
return;
loadState.numLoading++;
loadRemoteSearchProvidersFromDir(dir, loadState);
});
if (!dir.query_exists(null))
continue;
loadRemoteSearchProvidersFromDir(dir, loadedProviders, addProviderCallback);
}
};
function loadRemoteSearchProvidersFromDir(dir, loadState) {
function loadRemoteSearchProvidersFromDir(dir, loadedProviders, addProviderCallback) {
let dirPath = dir.get_path();
FileUtils.listDirAsync(dir, Lang.bind(this, function(files) {
for (let i = 0; i < files.length; i++) {
@ -77,13 +60,13 @@ function loadRemoteSearchProvidersFromDir(dir, loadState) {
if (!keyfile.has_group(KEY_FILE_GROUP))
continue;
let remoteProvider;
let remoteProvider, title;
try {
let group = KEY_FILE_GROUP;
let busName = keyfile.get_string(group, 'BusName');
let objectPath = keyfile.get_string(group, 'ObjectPath');
if (loadState.objectPaths[objectPath])
if (loadedProviders[objectPath])
continue;
let appInfo = null;
@ -91,93 +74,46 @@ function loadRemoteSearchProvidersFromDir(dir, loadState) {
let desktopId = keyfile.get_string(group, 'DesktopId');
appInfo = Gio.DesktopAppInfo.new(desktopId);
} catch (e) {
log('Ignoring search provider ' + path + ': missing DesktopId');
continue;
}
remoteProvider = new RemoteSearchProvider(appInfo,
let icon;
if (appInfo) {
icon = appInfo.get_icon();
title = appInfo.get_name();
} else {
let iconName = keyfile.get_string(group, 'Icon');
icon = new Gio.ThemedIcon({ name: iconName });
title = keyfile.get_locale_string(group, 'Title', null);
}
remoteProvider = new RemoteSearchProvider(title,
icon,
busName,
objectPath);
loadState.objectPaths[objectPath] = remoteProvider;
loadState.loadedProviders.push(remoteProvider);
loadedProviders[objectPath] = remoteProvider;
} catch(e) {
log('Failed to add search provider %s: %s'.format(path, e.toString()));
log('Failed to add search provider "%s": %s'.format(title, e.toString()));
continue;
}
}
remoteProvidersDirLoaded(loadState);
addProviderCallback(remoteProvider);
}
}));
};
function remoteProvidersDirLoaded(loadState) {
loadState.numLoading--;
if (loadState.numLoading > 0)
return;
let searchSettings = new Gio.Settings({ schema: Search.SEARCH_PROVIDERS_SCHEMA });
let sortOrder = searchSettings.get_strv('sort-order');
let numSorted = sortOrder.length;
loadState.loadedProviders.sort(
function(providerA, providerB) {
let idxA, idxB;
let appIdA, appIdB;
appIdA = providerA.appInfo.get_id();
appIdB = providerB.appInfo.get_id();
idxA = sortOrder.indexOf(appIdA);
idxB = sortOrder.indexOf(appIdB);
// if no provider is found in the order, use alphabetical order
if ((idxA == -1) && (idxB == -1))
return GLib.utf8_collate(providerA.title, providerB.title);
if (numSorted > 1) {
// if providerA is the last, it goes after everything
if ((idxA + 1) == numSorted)
return 1;
// if providerB is the last, it goes after everything
else if ((idxB + 1) == numSorted)
return -1;
}
// if providerA isn't found, it's sorted after providerB
if (idxA == -1)
return 1;
// if providerB isn't found, it's sorted after providerA
if (idxB == -1)
return -1;
// finally, if both providers are found, return their order in the list
return (idxA - idxB);
});
loadState.loadedProviders.forEach(
function(provider) {
loadState.addProviderCallback(provider);
});
}
const RemoteSearchProvider = new Lang.Class({
Name: 'RemoteSearchProvider',
Extends: Search.SearchProvider,
_init: function(appInfo, dbusName, dbusPath) {
_init: function(title, icon, dbusName, dbusPath) {
this._proxy = new SearchProviderProxy(Gio.DBus.session,
dbusName, dbusPath, Lang.bind(this, this._onProxyConstructed));
dbusName, dbusPath);
this.parent(appInfo.get_name().toUpperCase(), appInfo, true);
this.parent(title.toUpperCase());
this._cancellable = new Gio.Cancellable();
},
_onProxyConstructed: function(proxy) {
// Do nothing
},
createIcon: function(size, meta) {
if (meta['gicon']) {
return new St.Icon({ gicon: Gio.icon_new_for_string(meta['gicon']),

View File

@ -202,12 +202,11 @@ const RunDialog = new Lang.Class({
let label = new St.Label({ style_class: 'run-dialog-label',
text: _("Enter a Command") });
text: _("Please enter a command:") });
this.contentLayout.add(label, { y_align: St.Align.START });
let entry = new St.Entry({ style_class: 'run-dialog-entry',
can_focus: true });
let entry = new St.Entry({ style_class: 'run-dialog-entry' });
ShellEntry.addContextMenu(entry);
entry.label_actor = label;
@ -237,10 +236,6 @@ const RunDialog = new Lang.Class({
this._errorBox.hide();
this.setButtons([{ action: Lang.bind(this, this.close),
label: _("Close"),
key: Clutter.Escape }]);
this._pathCompleter = new Gio.FilenameCompleter();
this._commandCompleter = new CommandCompleter();
this._group.connect('notify::visible', Lang.bind(this._commandCompleter, this._commandCompleter.update));
@ -251,12 +246,20 @@ const RunDialog = new Lang.Class({
let symbol = e.get_key_symbol();
if (symbol == Clutter.Return || symbol == Clutter.KP_Enter) {
this.popModal();
this._run(o.get_text(),
e.get_state() & Clutter.ModifierType.CONTROL_MASK);
if (!this._commandError ||
!this.pushModal())
if (e.get_state() & Clutter.ModifierType.CONTROL_MASK)
this._run(o.get_text(), true);
else
this._run(o.get_text(), false);
if (!this._commandError)
this.close();
else {
if (!this.pushModal())
this.close();
}
return true;
}
if (symbol == Clutter.Escape) {
this.close();
return true;
}
if (symbol == Clutter.slash) {

View File

@ -9,6 +9,7 @@ const Lang = imports.lang;
const Mainloop = imports.mainloop;
const Meta = imports.gi.Meta;
const Signals = imports.signals;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const TweenerEquations = imports.tweener.equations;
@ -25,6 +26,7 @@ const Util = imports.misc.util;
const SCREENSAVER_SCHEMA = 'org.gnome.desktop.screensaver';
const LOCK_ENABLED_KEY = 'lock-enabled';
const LOCK_DELAY_KEY = 'lock-delay';
const CURTAIN_SLIDE_TIME = 0.3;
// fraction of screen height the arrow must reach before completing
@ -49,38 +51,6 @@ const SUMMARY_ICON_SIZE = 48;
const STANDARD_FADE_TIME = 10;
const SHORT_FADE_TIME = 0.3;
function sample(offx, offy) {
return 'texel += texture2D (sampler, tex_coord.st + pixel_step * ' +
'vec2 (' + offx + ',' + offy + '));\n'
}
const GLSL_BLUR_EFFECT_DECLARATIONS = ' \
uniform vec2 pixel_step;\n \
uniform float desaturation;\n \
vec4 apply_blur(in sampler2D sampler, in vec2 tex_coord) {\n \
vec4 texel;\n \
texel = texture2D (sampler, tex_coord.st);\n'
+ sample(-1.0, -1.0)
+ sample( 0.0, -1.0)
+ sample(+1.0, -1.0)
+ sample(-1.0, 0.0)
+ sample(+1.0, 0.0)
+ sample(-1.0, +1.0)
+ sample( 0.0, +1.0)
+ sample(+1.0, +1.0) + ' \
texel /= 9.0;\n \
return texel;\n \
}\n \
vec3 desaturate (const vec3 color)\n \
{\n \
const vec3 gray_conv = vec3 (0.299, 0.587, 0.114);\n \
vec3 gray = vec3 (dot (gray_conv, color));\n \
return vec3 (mix (color.rgb, gray, desaturation));\n \
}';
const GLSL_BLUR_EFFECT_CODE = ' \
cogl_texel = apply_blur(cogl_sampler, cogl_tex_coord.st);\n \
cogl_texel.rgb = desaturate(cogl_texel.rgb);\n';
const Clock = new Lang.Class({
Name: 'ScreenShieldClock',
@ -367,10 +337,6 @@ const Arrow = new Lang.Class({
}
});
function clamp(value, min, max) {
return Math.max(min, Math.min(max, value));
}
/**
* To test screen shield, make sure to kill gnome-screensaver.
*
@ -398,25 +364,13 @@ const ScreenShield = new Lang.Class({
Lang.bind(this, this._onLockScreenKeyRelease));
this._lockScreenGroup.connect('scroll-event',
Lang.bind(this, this._onLockScreenScroll));
Main.ctrlAltTabManager.addGroup(this._lockScreenGroup, _("Lock"), 'changes-prevent-symbolic');
this._lockScreenContents = new St.Widget({ layout_manager: new Clutter.BinLayout(),
name: 'lockScreenContents' });
this._lockScreenContents.add_constraint(new Layout.MonitorConstraint({ primary: true }));
let backgroundActor = Meta.BackgroundActor.new_for_screen(global.screen);
backgroundActor.add_glsl_snippet(Meta.SnippetHook.TEXTURE_LOOKUP,
GLSL_BLUR_EFFECT_DECLARATIONS,
GLSL_BLUR_EFFECT_CODE,
true);
backgroundActor.set_uniform_float('desaturation',
1, 1, [0.6]);
backgroundActor.connect('notify::size', function(actor) {
actor.set_uniform_float('pixel_step', 2, 1, [1/actor.width, 1/actor.height]);
});
this._background = new St.Bin({ style_class: 'screen-shield-background',
child: backgroundActor });
child: Meta.BackgroundActor.new_for_screen(global.screen) });
this._lockScreenGroup.add_actor(this._background);
this._lockScreenGroup.add_actor(this._lockScreenContents);
@ -435,11 +389,14 @@ const ScreenShield = new Lang.Class({
}
this._lockScreenContents.add_actor(this._arrowContainer);
this._dragAction = new Clutter.GestureAction();
this._dragAction.connect('gesture-begin', Lang.bind(this, this._onDragBegin));
this._dragAction.connect('gesture-progress', Lang.bind(this, this._onDragMotion));
this._dragAction.connect('gesture-end', Lang.bind(this, this._onDragEnd));
this._lockScreenGroup.add_action(this._dragAction);
let dragArea = new Clutter.Rect({ origin: new Clutter.Point({ x: 0, y: -global.screen_height, }),
size: new Clutter.Size({ width: global.screen_width,
height: global.screen_height }) });
let action = new Clutter.DragAction({ drag_axis: Clutter.DragAxis.Y_AXIS,
drag_area: dragArea });
action.connect('drag-begin', Lang.bind(this, this._onDragBegin));
action.connect('drag-end', Lang.bind(this, this._onDragEnd));
this._lockScreenGroup.add_action(action);
this._lockDialogGroup = new St.Widget({ x_expand: true,
y_expand: true,
@ -482,7 +439,21 @@ const ScreenShield = new Lang.Class({
fadeInTime: STANDARD_FADE_TIME,
fadeFactor: 1 });
this.idleMonitor = new GnomeDesktop.IdleMonitor();
this.idleMonitor = Shell.IdleMonitor.get();
},
_becomeModal: function() {
if (this._isModal)
return true;
this._isModal = Main.pushModal(this.actor);
if (this._isModal)
return true;
// We failed to get a pointer grab, it means that
// something else has it. Try with a keyboard grab only
this._isModal = Main.pushModal(this.actor, { options: Meta.ModalOptions.POINTER_ALREADY_GRABBED });
return this._isModal;
},
_onLockScreenKeyRelease: function(actor, event) {
@ -503,7 +474,7 @@ const ScreenShield = new Lang.Class({
symbol == Clutter.KEY_Return ||
symbol == Clutter.KEY_KP_Enter) {
this._ensureUnlockDialog(true, true);
this._hideLockScreen(true, 0);
this._hideLockScreen(true);
return true;
}
@ -526,7 +497,7 @@ const ScreenShield = new Lang.Class({
// 7 standard scrolls to lift up
if (this._lockScreenScrollCounter > 35) {
this._ensureUnlockDialog(false, true);
this._hideLockScreen(true, 0);
this._hideLockScreen(true);
}
return true;
@ -558,27 +529,12 @@ const ScreenShield = new Lang.Class({
Tweener.removeTweens(this._lockScreenGroup);
this._lockScreenState = MessageTray.State.HIDING;
this._ensureUnlockDialog(false, false);
return true;
},
_onDragMotion: function() {
let [origX, origY] = this._dragAction.get_press_coords(0);
let [currentX, currentY] = this._dragAction.get_motion_coords(0);
let newY = currentY - origY;
newY = clamp(newY, -global.stage.height, 0);
this._lockScreenGroup.y = newY;
return true;
},
_onDragEnd: function(action, actor, eventX, eventY, modifiers) {
if (this._lockScreenGroup.y < -(ARROW_DRAG_THRESHOLD * global.stage.height)) {
// Complete motion automatically
let [velocity, velocityX, velocityY] = this._dragAction.get_velocity(0);
this._hideLockScreen(true, -velocityY);
this._hideLockScreen(true);
this._ensureUnlockDialog(false, true);
} else {
// restore the lock screen to its original place
@ -618,9 +574,17 @@ const ScreenShield = new Lang.Class({
}
}
if (!this._isModal) {
Main.pushModal(this.actor, { keybindingMode: Main.KeybindingMode.LOCK_SCREEN });
this._isModal = true;
if (!this._becomeModal()) {
// 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
Main.notifyError("Unable to lock",
"Lock was blocked by an application");
return;
}
if (!this._isActive) {
@ -629,13 +593,23 @@ const ScreenShield = new Lang.Class({
if (this._activationTime == 0)
this._activationTime = GLib.get_monotonic_time();
this._becameActiveId = this.idleMonitor.connect('became-active', Lang.bind(this, function() {
this.idleMonitor.disconnect(this._becameActiveId);
// What we want is a negative transition to 0, so we install a watch for
// 1 second and trigger it if the idle_time becomes lower than that
// The correct fix will come in GNOME 3.8 with GnomeDesktop.IdleMonitor
this._becameActiveId = this.idleMonitor.add_watch(1000, Lang.bind(this, function() {
if (this.idleMonitor.get_idletime() >= 1000)
return;
this.idleMonitor.remove_watch(this._becameActiveId);
let lightboxWasShown = this._lightbox.shown;
this._lightbox.hide();
let shouldLock = lightboxWasShown && this._settings.get_boolean(LOCK_ENABLED_KEY);
// GLib.get_monotonic_time() returns microseconds, convert to seconds
let elapsedTime = (GLib.get_monotonic_time() - this._activationTime) / 1000000;
let shouldLock = lightboxWasShown &&
this._settings.get_boolean(LOCK_ENABLED_KEY) &&
(elapsedTime >= this._settings.get_uint(LOCK_DELAY_KEY));
if (shouldLock || this._isLocked) {
this.lock(false);
} else if (this._isActive) {
@ -652,9 +626,10 @@ const ScreenShield = new Lang.Class({
// Ensure that the stage window is mapped, before taking a grab
// otherwise X errors out
Meta.later_add(Meta.LaterType.BEFORE_REDRAW, Lang.bind(this, function() {
if (!this._isModal) {
Main.pushModal(this.actor);
this._isModal = true;
if (!this._becomeModal()) {
// In the login screen, this is a hard error. Fail-whale
log('Could not acquire modal grab for the login screen. Aborting login process.');
Meta.quit(Meta.ExitCode.ERROR);
}
return false;
@ -663,7 +638,7 @@ const ScreenShield = new Lang.Class({
this.actor.show();
this._isGreeter = Main.sessionMode.isGreeter;
this._ensureUnlockDialog(true, true);
this._hideLockScreen(false, 0);
this._hideLockScreen(false);
},
_bumpLockScreen: function() {
@ -681,21 +656,14 @@ const ScreenShield = new Lang.Class({
});
},
_hideLockScreen: function(animate, velocity) {
_hideLockScreen: function(animate) {
this._lockScreenState = MessageTray.State.HIDING;
if (animate) {
// Tween the lock screen out of screen
// if velocity is not specified (i.e. we come here from pressing ESC),
// use the same speed regardless of original position
// if velocity is specified, it's in pixels per milliseconds
// try to use the same speed regardless of original position
let h = global.stage.height;
let delta = (h + this._lockScreenGroup.y);
let min_velocity = global.stage.height / (CURTAIN_SLIDE_TIME * 1000);
velocity = Math.max(min_velocity, velocity);
let time = (delta / velocity) / 1000;
let time = CURTAIN_SLIDE_TIME * (h + this._lockScreenGroup.y) / h;
Tweener.removeTweens(this._lockScreenGroup);
Tweener.addTween(this._lockScreenGroup,
{ y: -h,
@ -712,8 +680,6 @@ const ScreenShield = new Lang.Class({
this._lockScreenGroup.hide();
}
global.stage.show_cursor();
if (Main.sessionMode.currentMode == 'lock-screen')
Main.sessionMode.popMode('lock-screen');
},
@ -806,16 +772,6 @@ const ScreenShield = new Lang.Class({
this._arrowAnimationId = Mainloop.timeout_add(6000, Lang.bind(this, this._animateArrows));
this._animateArrows();
let motionId = global.stage.connect('captured-event', function(stage, event) {
if (event.type() == Clutter.EventType.MOTION) {
global.stage.show_cursor();
global.stage.disconnect(motionId);
}
return false;
});
global.stage.hide_cursor();
this._lockScreenState = MessageTray.State.SHOWN;
this._lockScreenGroup.fixed_position_set = false;
this._lockScreenScrollCounter = 0;
@ -929,9 +885,11 @@ const ScreenShield = new Lang.Class({
},
lock: function(animate) {
if (!this._isModal) {
Main.pushModal(this.actor, { keybindingMode: Main.KeybindingMode.LOCK_SCREEN });
this._isModal = true;
// Warn the user if we can't become modal
if (!this._becomeModal()) {
Main.notifyError("Unable to lock",
"Lock was blocked by an application");
return;
}
if (this._activationTime == 0)

View File

@ -10,8 +10,6 @@ const Util = imports.misc.util;
const FileUtils = imports.misc.fileUtils;
const Main = imports.ui.main;
const SEARCH_PROVIDERS_SCHEMA = 'org.gnome.desktop.search-providers';
// Not currently referenced by the search API, but
// this enumeration can be useful for provider
// implementations.
@ -76,11 +74,9 @@ const SearchResultDisplay = new Lang.Class({
const SearchProvider = new Lang.Class({
Name: 'SearchProvider',
_init: function(title, appInfo, isRemoteProvider) {
_init: function(title) {
this.title = title;
this.appInfo = appInfo;
this.searchSystem = null;
this.isRemoteProvider = !!isRemoteProvider;
},
/**
@ -176,16 +172,12 @@ const SearchSystem = new Lang.Class({
_init: function() {
this._providers = [];
this._remoteProviders = [];
this.reset();
},
registerProvider: function (provider) {
provider.searchSystem = this;
this._providers.push(provider);
if (provider.isRemoteProvider)
this._remoteProviders.push(provider);
},
unregisterProvider: function (provider) {
@ -194,20 +186,12 @@ const SearchSystem = new Lang.Class({
return;
provider.searchSystem = null;
this._providers.splice(index, 1);
let remoteIndex = this._remoteProviders.indexOf(provider);
if (remoteIndex != -1)
this._remoteProviders.splice(index, 1);
},
getProviders: function() {
return this._providers;
},
getRemoteProviders: function() {
return this._remoteProviders;
},
getTerms: function() {
return this._previousTerms;
},

View File

@ -14,6 +14,7 @@ const _modes = {
showCalendarEvents: false,
allowSettings: false,
allowExtensions: false,
allowKeybindingsWhenModal: false,
hasRunDialog: false,
hasWorkspaces: false,
hasWindows: false,
@ -21,7 +22,6 @@ const _modes = {
isLocked: false,
isGreeter: false,
isPrimary: false,
buttonLayout: ['button-layout', 'org.gnome.shell.overrides'],
unlockDialog: null,
components: [],
panel: {
@ -29,22 +29,21 @@ const _modes = {
center: [],
right: []
},
panelStyle: null
},
'gdm': {
allowKeybindingsWhenModal: true,
hasNotifications: true,
isGreeter: true,
isPrimary: true,
unlockDialog: imports.gdm.loginDialog.LoginDialog,
components: ['polkitAgent'],
panel: {
left: ['logo'],
left: [],
center: ['dateMenu'],
right: ['a11y', 'display', 'keyboard',
'volume', 'battery', 'powerMenu']
},
panelStyle: 'login-screen'
}
},
'lock-screen': {
@ -57,7 +56,6 @@ const _modes = {
center: [],
right: ['lockScreen']
},
panelStyle: 'lock-screen'
},
'unlock-dialog': {
@ -69,7 +67,6 @@ const _modes = {
center: [],
right: ['a11y', 'keyboard', 'lockScreen']
},
panelStyle: 'unlock-screen'
},
'initial-setup': {
@ -102,29 +99,6 @@ const _modes = {
right: ['a11y', 'keyboard', 'volume', 'bluetooth',
'network', 'battery', 'userMenu']
}
},
'foo': {
hasOverview: true,
showCalendarEvents: true,
allowSettings: true,
allowExtensions: true,
hasRunDialog: true,
hasWorkspaces: true,
hasWindows: true,
hasNotifications: true,
isLocked: false,
isPrimary: true,
buttonLayout: ['button-layout', 'org.gnome.shell-foo.overrides'],
unlockDialog: imports.ui.unlockDialog.UnlockDialog,
components: ['networkAgent', 'polkitAgent', 'telepathyClient',
'keyring', 'recorder', 'autorunManager', 'automountManager'],
panel: {
left: ['activities', 'appMenu'],
center: ['dateMenu'],
right: ['a11y', 'keyboard', 'volume', 'bluetooth',
'network', 'battery', 'userMenu']
}
}
};

View File

@ -111,7 +111,7 @@ const GnomeShell = new Lang.Class({
},
_onScreenshotComplete: function(obj, result, area, flash, invocation) {
if (flash && result) {
if (flash) {
let flashspot = new Flashspot.Flashspot(area);
flashspot.fire();
}

View File

@ -27,7 +27,6 @@ const KEY_VISUAL_BELL = 'visual-bell';
const DESKTOP_INTERFACE_SCHEMA = 'org.gnome.desktop.interface';
const KEY_GTK_THEME = 'gtk-theme';
const KEY_ICON_THEME = 'icon-theme';
const KEY_WM_THEME = 'theme';
const KEY_TEXT_SCALING_FACTOR = 'text-scaling-factor';
const HIGH_CONTRAST_THEME = 'HighContrast';
@ -102,35 +101,28 @@ const ATIndicator = new Lang.Class({
},
_buildHCItem: function() {
let interfaceSettings = new Gio.Settings({ schema: DESKTOP_INTERFACE_SCHEMA });
let wmSettings = new Gio.Settings({ schema: WM_SCHEMA });
let gtkTheme = interfaceSettings.get_string(KEY_GTK_THEME);
let iconTheme = interfaceSettings.get_string(KEY_ICON_THEME);
let wmTheme = wmSettings.get_string(KEY_WM_THEME);
let settings = new Gio.Settings({ schema: DESKTOP_INTERFACE_SCHEMA });
let gtkTheme = settings.get_string(KEY_GTK_THEME);
let iconTheme = settings.get_string(KEY_ICON_THEME);
let hasHC = (gtkTheme == HIGH_CONTRAST_THEME);
let highContrast = this._buildItemExtended(
_("High Contrast"),
hasHC,
interfaceSettings.is_writable(KEY_GTK_THEME) &&
interfaceSettings.is_writable(KEY_ICON_THEME) &&
wmSettings.is_writable(KEY_WM_THEME),
settings.is_writable(KEY_GTK_THEME) && settings.is_writable(KEY_ICON_THEME),
function (enabled) {
if (enabled) {
interfaceSettings.set_string(KEY_GTK_THEME, HIGH_CONTRAST_THEME);
interfaceSettings.set_string(KEY_ICON_THEME, HIGH_CONTRAST_THEME);
wmSettings.set_string(KEY_WM_THEME, HIGH_CONTRAST_THEME);
settings.set_string(KEY_GTK_THEME, HIGH_CONTRAST_THEME);
settings.set_string(KEY_ICON_THEME, HIGH_CONTRAST_THEME);
} else if(!hasHC) {
interfaceSettings.set_string(KEY_GTK_THEME, gtkTheme);
interfaceSettings.set_string(KEY_ICON_THEME, iconTheme);
wmSettings.set_string(KEY_WM_THEME, wmTheme);
settings.set_string(KEY_GTK_THEME, gtkTheme);
settings.set_string(KEY_ICON_THEME, iconTheme);
} else {
interfaceSettings.reset(KEY_GTK_THEME);
interfaceSettings.reset(KEY_ICON_THEME);
wmSettings.reset(KEY_WM_THEME);
settings.reset(KEY_GTK_THEME);
settings.reset(KEY_ICON_THEME);
}
});
interfaceSettings.connect('changed::' + KEY_GTK_THEME, function() {
let value = interfaceSettings.get_string(KEY_GTK_THEME);
settings.connect('changed::' + KEY_GTK_THEME, function() {
let value = settings.get_string(KEY_GTK_THEME);
if (value == HIGH_CONTRAST_THEME) {
highContrast.setToggleState(true);
} else {
@ -138,16 +130,11 @@ const ATIndicator = new Lang.Class({
gtkTheme = value;
}
});
interfaceSettings.connect('changed::' + KEY_ICON_THEME, function() {
let value = interfaceSettings.get_string(KEY_ICON_THEME);
settings.connect('changed::' + KEY_ICON_THEME, function() {
let value = settings.get_string(KEY_ICON_THEME);
if (value != HIGH_CONTRAST_THEME)
iconTheme = value;
});
wmSettings.connect('changed::' + KEY_WM_THEME, function() {
let value = wmSettings.get_string(KEY_WM_THEME);
if (value != HIGH_CONTRAST_THEME)
wmTheme = value;
});
return highContrast;
},

View File

@ -239,6 +239,22 @@ const Indicator = new Lang.Class({
this._applet.send_to_address(device.bdaddr, device.alias);
}));
}
if (device.capabilities & GnomeBluetoothApplet.Capabilities.OBEX_FILE_TRANSFER) {
item.menu.addAction(_("Browse Files..."), Lang.bind(this, function(event) {
this._applet.browse_address(device.bdaddr, event.get_time(),
Lang.bind(this, function(applet, result) {
try {
applet.browse_address_finish(result);
} catch (e) {
this._ensureSource();
this._source.notify(new MessageTray.Notification(this._source,
_("Bluetooth"),
_("Error browsing device"),
{ body: _("The requested device cannot be browsed, error is '%s'").format(e) }));
}
}));
}));
}
switch (device.type) {
case GnomeBluetoothApplet.Type.KEYBOARD:
@ -353,7 +369,6 @@ const ConfirmNotification = new Lang.Class({
_init: function(source, applet, device_path, name, long_name, pin) {
this.parent(source,
_("Bluetooth"),
/* Translators: argument is the device short name */
_("Pairing confirmation for %s").format(name),
{ customContent: true });
this.setResident(true);
@ -363,7 +378,6 @@ const ConfirmNotification = new Lang.Class({
this.addBody(_("Device %s wants to pair with this computer").format(long_name));
this.addBody(_("Please confirm whether the PIN '%06d' matches the one on the device.").format(pin));
/* Translators: this is the verb, not the noun */
this.addButton('matches', _("Matches"));
this.addButton('does-not-match', _("Does not match"));

View File

@ -5,7 +5,6 @@ const Gio = imports.gi.Gio;
const Lang = imports.lang;
const NetworkManager = imports.gi.NetworkManager;
const NMClient = imports.gi.NMClient;
const NMGtk = imports.gi.NMGtk;
const Signals = imports.signals;
const St = imports.gi.St;
@ -140,6 +139,46 @@ const NMNetworkMenuItem = new Lang.Class({
}
});
const NMWiredSectionTitleMenuItem = new Lang.Class({
Name: 'NMWiredSectionTitleMenuItem',
Extends: PopupMenu.PopupSwitchMenuItem,
_init: function(label, params) {
params = params || { };
params.style_class = 'popup-subtitle-menu-item';
this.parent(label, false, params);
},
updateForDevice: function(device) {
if (device) {
this._device = device;
this.setStatus(device.getStatusLabel());
this.setToggleState(device.connected);
} else
this.setStatus('');
},
activate: function(event) {
this.parent(event);
if (!this._device) {
log('Section title activated when there is more than one device, should be non reactive');
return;
}
let newState = this._switch.state;
let ok;
if (newState)
ok = this._device.activate();
else
ok = this._device.deactivate();
if (!ok)
this._switch.setToggleState(false);
}
});
const NMWirelessSectionTitleMenuItem = new Lang.Class({
Name: 'NMWirelessSectionTitleMenuItem',
Extends: PopupMenu.PopupSwitchMenuItem,
@ -194,11 +233,20 @@ const NMWirelessSectionTitleMenuItem = new Lang.Class({
}
});
const NMConnectionBased = new Lang.Class({
Name: 'NMConnectionBased',
const NMDevice = new Lang.Class({
Name: 'NMDevice',
Abstract: true,
_init: function(connections) {
_init: function(client, device, connections) {
this.device = device;
if (device) {
this.device._delegate = this;
this._stateChangedId = this.device.connect('state-changed', Lang.bind(this, this._deviceStateChanged));
} else
this._stateChangedId = 0;
// protected
this._client = client;
this._connections = [ ];
for (let i = 0; i < connections.length; i++) {
if (!connections[i].get_uuid())
@ -216,115 +264,26 @@ const NMConnectionBased = new Lang.Class({
this._connections.push(obj);
}
this._connections.sort(this._connectionSortFunction);
},
checkConnection: function(connection) {
let pos = this._findConnection(connection.get_uuid());
let exists = pos != -1;
let valid = this.connectionValid(connection);
let similar = false;
if (exists) {
let existing = this._connections[pos];
// Check if connection changed name or id
similar = existing.name == connection.get_id() &&
existing.timestamp == connection._timestamp;
}
if (exists && valid && similar) {
// Nothing to do
return;
}
if (exists)
this.removeConnection(connection);
if (valid)
this.addConnection(connection);
},
addConnection: function(connection) {
// record the connection
let obj = {
connection: connection,
name: connection.get_id(),
uuid: connection.get_uuid(),
timestamp: connection._timestamp,
item: null,
};
Util.insertSorted(this._connections, obj, this._connectionSortFunction);
this._queueCreateSection();
},
removeConnection: function(connection) {
let pos = this._findConnection(connection.get_uuid());
if (pos == -1) {
// this connection was never added, nothing to do here
return;
}
let obj = this._connections[pos];
if (obj.item)
obj.item.destroy();
this._connections.splice(pos, 1);
if (this._connections.length <= 1) {
// We need to show the automatic connection again
// (or in the case of NMDeviceWired, we want to hide
// the only explicit connection)
this._queueCreateSection();
}
},
_findConnection: function(uuid) {
for (let i = 0; i < this._connections.length; i++) {
let obj = this._connections[i];
if (obj.uuid == uuid)
return i;
}
return -1;
},
_connectionSortFunction: function(one, two) {
if (one.timestamp == two.timestamp)
return GLib.utf8_collate(one.name, two.name);
return two.timestamp - one.timestamp;
},
});
Signals.addSignalMethods(NMConnectionBased.prototype);
const NMDevice = new Lang.Class({
Name: 'NMDevice',
Abstract: true,
Extends: NMConnectionBased,
_init: function(client, device, connections) {
this.device = device;
this.device._delegate = this;
this._stateChangedId = this.device.connect('state-changed', Lang.bind(this, this._deviceStateChanged));
// protected
this._client = client;
this.parent(connections);
this._activeConnection = null;
this._activeConnectionItem = null;
this._autoConnectionItem = null;
this._overflowItem = null;
this.statusItem = new PopupMenu.PopupSwitchMenuItem('', this.connected, { style_class: 'popup-subtitle-menu-item' });
this._statusChanged = this.statusItem.connect('toggled', Lang.bind(this, function(item, state) {
let ok;
if (state)
ok = this.activate();
else
ok = this.deactivate();
if (this.device) {
this.statusItem = new PopupMenu.PopupSwitchMenuItem(this._getDescription(), this.connected, { style_class: 'popup-subtitle-menu-item' });
this._statusChanged = this.statusItem.connect('toggled', Lang.bind(this, function(item, state) {
let ok;
if (state)
ok = this.activate();
else
ok = this.deactivate();
if (!ok)
item.setToggleState(!state);
}));
if (!ok)
item.setToggleState(!state);
}));
this._updateStatusItem();
this._updateStatusItem();
}
this.section = new PopupMenu.PopupMenuSection();
this._deferredWorkId = Main.initializeDeferredWork(this.section.actor, Lang.bind(this, this._createSection));
@ -393,10 +352,6 @@ const NMDevice = new Lang.Class({
return this.device.state == NetworkManager.DeviceState.ACTIVATED;
},
clearActiveConnection: function(activeConnection) {
this.setActiveConnection(null);
},
setActiveConnection: function(activeConnection) {
if (activeConnection == this._activeConnection)
// nothing to do
@ -414,13 +369,80 @@ const NMDevice = new Lang.Class({
this._queueCreateSection();
},
checkConnection: function(connection) {
let pos = this._findConnection(connection.get_uuid());
let exists = pos != -1;
let valid = this.connectionValid(connection);
let similar = false;
if (exists) {
let existing = this._connections[pos];
// Check if connection changed name or id
similar = existing.name == connection.get_id() &&
existing.timestamp == connection._timestamp;
}
if (exists && valid && similar) {
// Nothing to do
return;
}
if (exists)
this.removeConnection(connection);
if (valid)
this.addConnection(connection);
},
addConnection: function(connection) {
// record the connection
let obj = {
connection: connection,
name: connection.get_id(),
uuid: connection.get_uuid(),
timestamp: connection._timestamp,
item: null,
};
Util.insertSorted(this._connections, obj, this._connectionSortFunction);
this._clearSection();
this._queueCreateSection();
},
removeConnection: function(connection) {
let pos = this._findConnection(connection.get_uuid());
if (pos == -1) {
// this connection was never added, nothing to do here
return;
}
let obj = this._connections[pos];
if (obj.item)
obj.item.destroy();
this._connections.splice(pos, 1);
if (this._connections.length <= 1) {
// We need to show the automatic connection again
// (or in the case of NMDeviceWired, we want to hide
// the only explicit connection)
this._clearSection();
this._queueCreateSection();
}
},
connectionValid: function(connection) {
return this.device.connection_valid(connection);
},
_connectionSortFunction: function(one, two) {
if (one.timestamp == two.timestamp)
return GLib.utf8_collate(one.name, two.name);
return two.timestamp - one.timestamp;
},
setEnabled: function(enabled) {
// do nothing by default, we want to keep the conneciton list visible
// in the majority of cases (wired, wwan)
// in the majority of cases (wired, wwan, vpn)
},
getStatusLabel: function() {
@ -473,15 +495,20 @@ const NMDevice = new Lang.Class({
}
},
syncDescription: function() {
this.statusItem.label.text = this.device._description;
},
// protected
_createAutomaticConnection: function() {
throw new TypeError('Invoking pure virtual function NMDevice.createAutomaticConnection');
},
_findConnection: function(uuid) {
for (let i = 0; i < this._connections.length; i++) {
let obj = this._connections[i];
if (obj.uuid == uuid)
return i;
}
return -1;
},
_queueCreateSection: function() {
this._clearSection();
Main.queueDeferredWork(this._deferredWorkId);
@ -604,8 +631,29 @@ const NMDevice = new Lang.Class({
this.statusItem.setStatus(this.getStatusLabel());
this.emit('state-changed');
},
_getDescription: function() {
let dev_product = this.device.get_product();
let dev_vendor = this.device.get_vendor();
if (!dev_product || !dev_vendor)
return '';
let product = Util.fixupPCIDescription(dev_product);
let vendor = Util.fixupPCIDescription(dev_vendor);
let out = '';
// Another quick hack; if all of the fixed up vendor string
// is found in product, ignore the vendor.
if (product.indexOf(vendor) == -1)
out += vendor + ' ';
out += product;
return out;
}
});
Signals.addSignalMethods(NMDevice.prototype);
const NMDeviceWired = new Lang.Class({
Name: 'NMDeviceWired',
@ -813,6 +861,99 @@ const NMDeviceBluetooth = new Lang.Class({
this._clearSection();
this._queueCreateSection();
this._updateStatusItem();
},
_getDescription: function() {
return this.device.name || _("Bluetooth");
}
});
// Not a real device, but I save a lot code this way
const NMDeviceVPN = new Lang.Class({
Name: 'NMDeviceVPN',
Extends: NMDevice,
_init: function(client, device, connections) {
// Disable autoconnections
this._autoConnectionName = null;
this.category = NMConnectionCategory.VPN;
this.parent(client, null, connections);
},
connectionValid: function(connection) {
return connection._type == NetworkManager.SETTING_VPN_SETTING_NAME;
},
get empty() {
return this._connections.length == 0;
},
get connected() {
if (!this._activeConnection)
return false;
return this._activeConnection.vpn_state == NetworkManager.VPNConnectionState.ACTIVATED;
},
setActiveConnection: function(activeConnection) {
if (this._stateChangeId)
this._activeConnection.disconnect(this._stateChangeId);
this._stateChangeId = 0;
this.parent(activeConnection);
if (this._activeConnection)
this._stateChangeId = this._activeConnection.connect('vpn-state-changed',
Lang.bind(this, this._connectionStateChanged));
this.emit('state-changed');
},
_shouldShowConnectionList: function() {
return true;
},
deactivate: function() {
if (this._activeConnection)
this._client.deactivate_connection(this._activeConnection);
},
getStatusLabel: function() {
if (!this._activeConnection) // Same as DISCONNECTED
return null;
switch(this._activeConnection.vpn_state) {
case NetworkManager.VPNConnectionState.DISCONNECTED:
case NetworkManager.VPNConnectionState.ACTIVATED:
return null;
case NetworkManager.VPNConnectionState.PREPARE:
case NetworkManager.VPNConnectionState.CONNECT:
case NetworkManager.VPNConnectionState.IP_CONFIG_GET:
return _("connecting...");
case NetworkManager.VPNConnectionState.NEED_AUTH:
/* Translators: this is for network connections that require some kind of key or password */
return _("authentication required");
case NetworkManager.VPNConnectionState.FAILED:
return _("connection failed");
default:
log('VPN connection state invalid, is %d'.format(this.device.state));
return 'invalid';
}
},
_connectionStateChanged: function(connection, newstate, reason) {
if (newstate == NetworkManager.VPNConnectionState.FAILED) {
// FIXME: if we ever want to show something based on reason,
// we need to convert from NetworkManager.VPNConnectionStateReason
// to NetworkManager.DeviceStateReason
this.emit('activation-failed', reason);
}
// Differently from real NMDevices, there is no need to queue
// an update of the menu section, contents wouldn't change anyway
this.emit('state-changed');
}
});
@ -1416,151 +1557,6 @@ const NMDeviceWireless = new Lang.Class({
},
});
const NMVPNSection = new Lang.Class({
Name: 'NMVPNSection',
Extends: NMConnectionBased,
category: NMConnectionCategory.VPN,
_init: function(client, connections) {
this.parent(connections);
this._client = client;
this.section = new PopupMenu.PopupMenuSection();
this._deferredWorkId = Main.initializeDeferredWork(this.section.actor, Lang.bind(this, this._createSection));
},
get empty() {
return this._connections.length == 0;
},
connectionValid: function(connection) {
// filtering is done by NMApplet code
return true;
},
getStatusLabel: function(activeConnection) {
switch(activeConnection.vpn_state) {
case NetworkManager.VPNConnectionState.DISCONNECTED:
case NetworkManager.VPNConnectionState.ACTIVATED:
return null;
case NetworkManager.VPNConnectionState.PREPARE:
case NetworkManager.VPNConnectionState.CONNECT:
case NetworkManager.VPNConnectionState.IP_CONFIG_GET:
return _("connecting...");
case NetworkManager.VPNConnectionState.NEED_AUTH:
/* Translators: this is for network connections that require some kind of key or password */
return _("authentication required");
case NetworkManager.VPNConnectionState.FAILED:
return _("connection failed");
default:
log('VPN connection state invalid, is %d'.format(this.device.state));
return 'invalid';
}
},
clearActiveConnection: function(activeConnection) {
let pos = this._findConnection(activeConnection.uuid);
if (pos < 0)
return;
let obj = this._connections[pos];
obj.active.disconnect(obj.stateChangedId);
obj.active = null;
if (obj.item) {
obj.item.setToggleState(false);
obj.item.setStatus(null);
}
},
setActiveConnection: function(activeConnection) {
let pos = this._findConnection(activeConnection.uuid);
if (pos < 0)
return;
let obj = this._connections[pos];
obj.active = activeConnection;
obj.stateChangedId = obj.active.connect('vpn-state-changed',
Lang.bind(this, this._connectionStateChanged));
if (obj.item) {
obj.item.setToggleState(obj.active.vpn_state ==
NetworkManager.VPNConnectionState.ACTIVATED);
obj.item.setStatus(this.getStatusLabel(obj.active));
}
},
_queueCreateSection: function() {
this.section.removeAll();
Main.queueDeferredWork(this._deferredWorkId);
},
_createConnectionItem: function(obj) {
let menuItem = new PopupMenu.PopupSwitchMenuItem(obj.name, false,
{ style_class: 'popup-subtitle-menu-item' });
menuItem.connect('toggled', Lang.bind(this, function(menuItem) {
if (menuItem.state) {
this._client.activate_connection(obj.connection, null, null, null);
// Immediately go back to disconnected, until NM tells us to change
menuItem.setToggleState(false);
} else if (obj.active) {
this._client.deactivate_connection(obj.active);
}
}));
if (obj.active) {
menuItem.setToggleState(obj.active.vpn_state ==
NetworkManager.VPNConnectionState.ACTIVATED);
menuItem.setStatus(this.getStatusLabel(obj.active));
}
return menuItem;
},
_createSection: function() {
if (this._connections.length > 0) {
this.section.actor.show();
for(let j = 0; j < this._connections.length; ++j) {
let obj = this._connections[j];
obj.item = this._createConnectionItem(obj);
if (j >= NUM_VISIBLE_NETWORKS) {
if (!this._overflowItem) {
this._overflowItem = new PopupMenu.PopupSubMenuMenuItem(_("More..."));
this.section.addMenuItem(this._overflowItem);
}
this._overflowItem.menu.addMenuItem(obj.item);
} else
this.section.addMenuItem(obj.item);
}
} else {
this.section.actor.hide()
}
},
_connectionStateChanged: function(vpnConnection, newstate, reason) {
if (newstate == NetworkManager.VPNConnectionState.FAILED) {
// FIXME: if we ever want to show something based on reason,
// we need to convert from NetworkManager.VPNConnectionStateReason
// to NetworkManager.DeviceStateReason
this.emit('activation-failed', reason);
}
let pos = this._findConnection(vpnConnection.uuid);
if (pos >= 0) {
let obj = this._connections[pos];
if (obj.item) {
obj.item.setToggleState(vpnConnection.vpn_state ==
NetworkManager.VPNConnectionState.ACTIVATED);
obj.item.setStatus(this.getStatusLabel(vpnConnection));
}
} else {
log('Could not find connection for vpn-state-changed handler');
}
},
});
const NMApplet = new Lang.Class({
Name: 'NMApplet',
Extends: PanelMenu.SystemStatusButton,
@ -1593,14 +1589,15 @@ const NMApplet = new Lang.Class({
this._mobileUpdateId = 0;
this._mobileUpdateDevice = null;
this._nmDevices = [];
this._devices = { };
this._devices.wired = {
section: new PopupMenu.PopupMenuSection(),
devices: [ ],
item: new NMWiredSectionTitleMenuItem(_("Wired"))
};
this._devices.wired.section.addMenuItem(this._devices.wired.item);
this._devices.wired.section.actor.hide();
this.menu.addMenuItem(this._devices.wired.section);
this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
@ -1608,7 +1605,7 @@ const NMApplet = new Lang.Class({
this._devices.wireless = {
section: new PopupMenu.PopupMenuSection(),
devices: [ ],
item: this._makeToggleItem('wireless', _("Wi-Fi"))
item: this._makeToggleItem('wireless', _("Wireless"))
};
this._devices.wireless.section.addMenuItem(this._devices.wireless.item);
this._devices.wireless.section.actor.hide();
@ -1618,14 +1615,22 @@ const NMApplet = new Lang.Class({
this._devices.wwan = {
section: new PopupMenu.PopupMenuSection(),
devices: [ ],
item: this._makeToggleItem('wwan', _("Mobile broadband"))
};
this._devices.wwan.section.addMenuItem(this._devices.wwan.item);
this._devices.wwan.section.actor.hide();
this.menu.addMenuItem(this._devices.wwan.section);
this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
this._vpnSection = new NMVPNSection(this._client, this._connections);
this._vpnSection.connect('activation-failed', Lang.bind(this, this._onActivationFailed));
this.menu.addMenuItem(this._vpnSection.section);
this._devices.vpn = {
section: new PopupMenu.PopupMenuSection(),
device: this._makeWrapperDevice(NMDeviceVPN, null),
item: new NMWiredSectionTitleMenuItem(_("VPN Connections"))
};
this._devices.vpn.section.addMenuItem(this._devices.vpn.item);
this._devices.vpn.section.addMenuItem(this._devices.vpn.device.section);
this._devices.vpn.section.actor.hide();
this.menu.addMenuItem(this._devices.vpn.section);
this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
this.menu.addSettingsAction(_("Network Settings"), 'gnome-network-panel.desktop');
@ -1694,6 +1699,18 @@ const NMApplet = new Lang.Class({
},
_syncSectionTitle: function(category) {
if (category == NMConnectionCategory.VPN) {
// Special case VPN: it's only one device (and a fake one
// actually), and we don't show it if empty
let device = this._devices.vpn.device;
let section = this._devices.vpn.section;
let item = this._devices.vpn.item;
section.actor.visible = !device.empty;
item.updateForDevice(device);
return;
}
let devices = this._devices[category].devices;
let item = this._devices[category].item;
let section = this._devices[category].section;
@ -1701,23 +1718,16 @@ const NMApplet = new Lang.Class({
section.actor.hide();
else {
section.actor.show();
// Sync the relation between the section title
// item (the one with the airplane mode switch)
// and the individual device switches
if (item) {
if (devices.length == 1) {
let dev = devices[0];
dev.statusItem.actor.hide();
item.updateForDevice(dev);
} else {
devices.forEach(function(dev) {
dev.statusItem.actor.show();
});
// remove status text from the section title item
item.updateForDevice(null);
}
if (devices.length == 1) {
let dev = devices[0];
dev.statusItem.actor.hide();
item.updateForDevice(dev);
} else {
devices.forEach(function(dev) {
dev.statusItem.actor.show();
});
// remove status text from the section title item
item.updateForDevice(null);
}
}
},
@ -1725,9 +1735,8 @@ const NMApplet = new Lang.Class({
_readDevices: function() {
let devices = this._client.get_devices() || [ ];
for (let i = 0; i < devices.length; ++i) {
this._deviceAdded(this._client, devices[i], true);
this._deviceAdded(this._client, devices[i]);
}
this._syncDeviceNames();
},
_notifyForDevice: function(device, iconName, title, text, urgency) {
@ -1738,9 +1747,10 @@ const NMApplet = new Lang.Class({
or this._source will be cleared */
this._ensureSource();
let gicon = new Gio.ThemedIcon({ name: iconName });
let icon = new St.Icon({ icon_name: iconName,
icon_size: MessageTray.NOTIFICATION_ICON_SIZE });
device._notification = new MessageTray.Notification(this._source, title, text,
{ gicon: gicon });
{ icon: icon });
device._notification.setUrgency(urgency);
device._notification.setTransient(true);
device._notification.connect('destroy', function() {
@ -1749,20 +1759,17 @@ const NMApplet = new Lang.Class({
this._source.notify(device._notification);
},
_onActivationFailed: function(device, reason) {
// XXX: nm-applet has no special text depending on reason
// but I'm not sure of this generic message
this._notifyForDevice(device, 'network-error-symbolic',
_("Connection failed"),
_("Activation of network connection failed"),
MessageTray.Urgency.HIGH);
},
_makeWrapperDevice: function(wrapperClass, device) {
let wrapper = new wrapperClass(this._client, device, this._connections);
wrapper._activationFailedId = wrapper.connect('activation-failed',
Lang.bind(this, this._onActivationFailed));
wrapper._activationFailedId = wrapper.connect('activation-failed', Lang.bind(this, function(device, reason) {
// XXX: nm-applet has no special text depending on reason
// but I'm not sure of this generic message
this._notifyForDevice(device, 'network-error-symbolic',
_("Connection failed"),
_("Activation of network connection failed"),
MessageTray.Urgency.HIGH);
}));
wrapper._deviceStateChangedId = wrapper.connect('state-changed', Lang.bind(this, function(dev) {
this._syncSectionTitle(dev.category);
}));
@ -1775,18 +1782,7 @@ const NMApplet = new Lang.Class({
return wrapper;
},
_syncDeviceNames: function() {
let names = NMGtk.utils_disambiguate_device_names(this._nmDevices);
for (let i = 0; i < this._nmDevices.length; i++) {
let device = this._nmDevices[i];
if (device._description != names[i]) {
device._description = names[i];
device._delegate.syncDescription();
}
}
},
_deviceAdded: function(client, device, skipSyncDeviceNames) {
_deviceAdded: function(client, device) {
if (device._delegate) {
// already seen, not adding again
return;
@ -1797,14 +1793,10 @@ const NMApplet = new Lang.Class({
let section = this._devices[wrapper.category].section;
let devices = this._devices[wrapper.category].devices;
section.addMenuItem(wrapper.statusItem);
section.addMenuItem(wrapper.section);
section.addMenuItem(wrapper.section, 1);
section.addMenuItem(wrapper.statusItem, 1);
devices.push(wrapper);
this._nmDevices.push(device);
if (!skipSyncDeviceNames)
this._syncDeviceNames();
this._syncSectionTitle(wrapper.category);
}
},
@ -1822,10 +1814,6 @@ const NMApplet = new Lang.Class({
let pos = devices.indexOf(wrapper);
devices.splice(pos, 1);
pos = this._nmDevices.indexOf(device);
this._nmDevices.splice(pos, 1);
this._syncDeviceNames();
this._syncSectionTitle(wrapper.category)
},
@ -1864,7 +1852,7 @@ const NMApplet = new Lang.Class({
for (let i = 0; i < closedConnections.length; i++) {
let active = closedConnections[i];
if (active._primaryDevice) {
active._primaryDevice.clearActiveConnection(active);
active._primaryDevice.setActiveConnection(null);
active._primaryDevice = null;
}
if (active._inited) {
@ -1931,7 +1919,7 @@ const NMApplet = new Lang.Class({
}
}
} else
a._primaryDevice = this._vpnSection;
a._primaryDevice = this._devices.vpn.device
if (a._primaryDevice)
a._primaryDevice.setActiveConnection(a);
@ -2013,7 +2001,8 @@ const NMApplet = new Lang.Class({
let section = connection._section;
if (section == NMConnectionCategory.VPN) {
this._vpnSection.removeConnection(connection);
this._devices.vpn.device.removeConnection(connection);
this._syncSectionTitle(section);
} else if (section != NMConnectionCategory.INVALID) {
let devices = this._devices[section].devices;
for (let i = 0; i < devices.length; i++)
@ -2036,7 +2025,8 @@ const NMApplet = new Lang.Class({
if (section == NMConnectionCategory.INVALID)
return;
if (section == NMConnectionCategory.VPN) {
this._vpnSection.checkConnection(connection);
this._devices.vpn.device.checkConnection(connection);
this._syncSectionTitle(section);
} else {
let devices = this._devices[section].devices;
for (let i = 0; i < devices.length; i++) {
@ -2062,6 +2052,7 @@ const NMApplet = new Lang.Class({
this._syncSectionTitle(NMConnectionCategory.WIRED);
this._syncSectionTitle(NMConnectionCategory.WIRELESS);
this._syncSectionTitle(NMConnectionCategory.WWAN);
this._syncSectionTitle(NMConnectionCategory.VPN);
},
_syncNMState: function() {

View File

@ -5,7 +5,6 @@ const Clutter = imports.gi.Clutter;
const Gdm = imports.gi.Gdm;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const GnomeDesktop = imports.gi.GnomeDesktop;
const Gtk = imports.gi.Gtk;
const Lang = imports.lang;
const Signals = imports.signals;
@ -14,14 +13,12 @@ const St = imports.gi.St;
const Main = imports.ui.main;
const ModalDialog = imports.ui.modalDialog;
const Panel = imports.ui.panel;
const ShellEntry = imports.ui.shellEntry;
const Tweener = imports.ui.tweener;
const UserMenu = imports.ui.userMenu;
const Batch = imports.gdm.batch;
const GdmUtil = imports.gdm.util;
const LoginDialog = imports.gdm.loginDialog;
// The timeout before going back automatically to the lock screen (in seconds)
const IDLE_TIMEOUT = 2 * 60;
@ -115,7 +112,6 @@ const UnlockDialog = new Lang.Class({
_init: function(parentActor) {
this.parent({ shellReactive: true,
styleClass: 'login-dialog',
keybindingMode: Main.KeybindingMode.UNLOCK_SCREEN,
parentActor: parentActor
});
@ -153,9 +149,7 @@ const UnlockDialog = new Lang.Class({
this._promptEntry.clutter_text.set_password_char('\u25cf');
ShellEntry.addContextMenu(this._promptEntry, { isPassword: true });
this.setInitialKeyFocus(this._promptEntry);
this._promptEntry.clutter_text.connect('text-changed', Lang.bind(this, function() {
this._updateOkButtonSensitivity(this._promptEntry.text.length > 0);
}));
this._promptEntry.clutter_text.connect('activate', Lang.bind(this, this._doUnlock));
this._promptLayout.add(this._promptEntry,
{ expand: true,
@ -170,33 +164,16 @@ const UnlockDialog = new Lang.Class({
this._promptLoginHint.hide();
this.contentLayout.add_actor(this._promptLoginHint);
this._workSpinner = new Panel.AnimatedIcon('process-working.svg', LoginDialog.WORK_SPINNER_ICON_SIZE);
this._workSpinner.actor.opacity = 0;
this.allowCancel = false;
this.buttonLayout.visible = true;
this.addButton({ label: _("Cancel"),
action: Lang.bind(this, this._escape),
key: Clutter.KEY_Escape },
{ expand: true,
x_fill: false,
y_fill: false,
x_align: St.Align.START,
y_align: St.Align.MIDDLE });
this.buttonLayout.add(this._workSpinner.actor,
{ expand: false,
x_fill: false,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.MIDDLE });
this._okButton = this.addButton({ label: _("Unlock"),
action: Lang.bind(this, this._doUnlock),
default: true },
{ expand: false,
x_fill: false,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.MIDDLE });
let cancelButton = { label: _("Cancel"),
action: Lang.bind(this, this._escape),
key: Clutter.KEY_Escape };
this._okButton = { label: _("Unlock"),
action: Lang.bind(this, this._doUnlock),
default: true };
this.setButtons([cancelButton, this._okButton]);
this._updateSensitivity(true);
let otherUserLabel = new St.Label({ text: _("Log in as another user"),
style_class: 'login-dialog-not-listed-label' });
@ -211,8 +188,6 @@ const UnlockDialog = new Lang.Class({
{ x_align: St.Align.START,
x_fill: false });
this._updateSensitivity(true);
let batch = new Batch.Hold();
this._userVerifier.begin(this._userName, batch);
@ -221,45 +196,17 @@ const UnlockDialog = new Lang.Class({
return false;
}));
Main.ctrlAltTabManager.addGroup(this.dialogLayout, _("Unlock Window"), 'dialog-password-symbolic');
this._idleMonitor = new GnomeDesktop.IdleMonitor();
this._idleMonitor = Shell.IdleMonitor.get();
// this dialog is only created after user activity (curtain drag or
// escape key press), so the timeout will fire after IDLE_TIMEOUT seconds of inactivity
this._idleWatchId = this._idleMonitor.add_watch(IDLE_TIMEOUT * 1000, Lang.bind(this, this._escape));
},
_updateSensitivity: function(sensitive) {
this._promptEntry.reactive = sensitive;
this._promptEntry.clutter_text.editable = sensitive;
this._updateOkButtonSensitivity(sensitive && this._promptEntry.text.length > 0);
this._otherUserButton.reactive = sensitive;
this._otherUserButton.can_focus = sensitive;
},
_updateOkButtonSensitivity: function(sensitive) {
this._okButton.reactive = sensitive;
this._okButton.can_focus = sensitive;
},
_setWorking: function(working) {
if (working) {
this._workSpinner.play();
Tweener.addTween(this._workSpinner.actor,
{ opacity: 255,
delay: LoginDialog.WORK_SPINNER_ANIMATION_DELAY,
time: LoginDialog.WORK_SPINNER_ANIMATION_TIME,
transition: 'linear'
});
} else {
Tweener.addTween(this._workSpinner.actor,
{ opacity: 0,
time: LoginDialog.WORK_SPINNER_ANIMATION_TIME,
transition: 'linear',
onCompleteScope: this,
onComplete: function() {
this._workSpinner.stop();
}
});
}
this._okButton.button.reactive = sensitive;
this._okButton.button.can_focus = sensitive;
},
_showMessage: function(userVerifier, message, styleClass) {
@ -292,7 +239,6 @@ const UnlockDialog = new Lang.Class({
this._currentQuery = serviceName;
this._updateSensitivity(true);
this._setWorking(false);
},
_showLoginHint: function(verifier, message) {
@ -311,7 +257,6 @@ const UnlockDialog = new Lang.Class({
// the actual reply to GDM will be sent as soon as asked
this._firstQuestionAnswer = this._promptEntry.text;
this._updateSensitivity(false);
this._setWorking(true);
return;
}
@ -322,7 +267,6 @@ const UnlockDialog = new Lang.Class({
this._currentQuery = null;
this._updateSensitivity(false);
this._setWorking(true);
this._userVerifier.answerQuery(query, this._promptEntry.text);
},
@ -345,7 +289,6 @@ const UnlockDialog = new Lang.Class({
this._promptEntry.menu.isPassword = true;
this._updateSensitivity(false);
this._setWorking(false);
},
_escape: function() {

View File

@ -9,11 +9,11 @@ const Pango = imports.gi.Pango;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Tp = imports.gi.TelepathyGLib;
const UPowerGlib = imports.gi.UPowerGlib;
const Atk = imports.gi.Atk;
const BoxPointer = imports.ui.boxpointer;
const GnomeSession = imports.misc.gnomeSession;
const LoginManager = imports.misc.loginManager;
const Main = imports.ui.main;
const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
@ -27,7 +27,6 @@ const DISABLE_LOCK_SCREEN_KEY = 'disable-lock-screen';
const DISABLE_LOG_OUT_KEY = 'disable-log-out';
const LOCK_ENABLED_KEY = 'lock-enabled';
const ALWAYS_SHOW_LOG_OUT_KEY = 'always-show-log-out';
const SHOW_FULL_NAME_KEY = 'show-full-name';
const DIALOG_ICON_SIZE = 64;
@ -75,6 +74,11 @@ const UserAvatarWidget = new Lang.Class({
let file = Gio.File.new_for_path(iconFile);
this.actor.child = null;
this.actor.style = 'background-image: url("%s");'.format(iconFile);
// AccountsService uses a fixed location for avatar images, so
// we need to clear out all cached data to pick up image changes,
// see https://bugzilla.gnome.org/show_bug.cgi?id=679268
this.actor.clear_background_image();
} else {
this.actor.style = null;
this.actor.child = new St.Icon({ icon_name: 'avatar-default-symbolic',
@ -189,7 +193,7 @@ const IMStatusChooserItem = new Lang.Class({
item = new IMStatusItem(_("Idle"), 'user-idle-symbolic');
this._combo.addMenuItem(item, IMStatus.IDLE);
item = new IMStatusItem(_("Offline"), 'user-offline-symbolic');
item = new IMStatusItem(_("Unavailable"), 'user-offline-symbolic');
this._combo.addMenuItem(item, IMStatus.OFFLINE);
this._combo.connect('active-item-changed',
@ -484,11 +488,10 @@ const UserMenuButton = new Lang.Class({
this._presence = new GnomeSession.Presence();
this._session = new GnomeSession.SessionManager();
this._haveShutdown = true;
this._haveSuspend = true;
this._accountMgr = Tp.AccountManager.dup();
this._loginManager = LoginManager.getLoginManager();
this._upClient = new UPowerGlib.Client();
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
this._iconBox = new St.Bin();
@ -551,12 +554,9 @@ const UserMenuButton = new Lang.Class({
Lang.bind(this, this._updateSwitchUser));
this._lockdownSettings.connect('changed::' + DISABLE_LOG_OUT_KEY,
Lang.bind(this, this._updateLogout));
this._lockdownSettings.connect('changed::' + DISABLE_LOCK_SCREEN_KEY,
Lang.bind(this, this._updateLockScreen));
this._screenSaverSettings.connect('changed::' + SHOW_FULL_NAME_KEY,
Lang.bind(this, this._updateUserName));
global.settings.connect('changed::' + SHOW_FULL_NAME_KEY,
Lang.bind(this, this._updateUserName));
this._updateSwitchUser();
this._updateLogout();
this._updateLockScreen();
@ -571,15 +571,14 @@ const UserMenuButton = new Lang.Class({
// the lockdown setting changes, which should be close enough.
this.menu.connect('open-state-changed', Lang.bind(this,
function(menu, open) {
if (!open)
return;
this._updateHaveShutdown();
this._updateHaveSuspend();
if (open)
this._updateHaveShutdown();
}));
this._lockdownSettings.connect('changed::' + DISABLE_LOG_OUT_KEY,
Lang.bind(this, this._updateHaveShutdown));
this._upClient.connect('notify::can-suspend', Lang.bind(this, this._updateSuspendOrPowerOff));
Main.sessionMode.connect('updated', Lang.bind(this, this._sessionUpdated));
this._sessionUpdated();
},
@ -601,10 +600,7 @@ const UserMenuButton = new Lang.Class({
},
_updateUserName: function() {
let settings = global.settings;
if (Main.sessionMode.isLocked)
settings = this._screenSaverSettings;
if (this._user.is_loaded && settings.get_boolean(SHOW_FULL_NAME_KEY))
if (this._user.is_loaded)
this._name.set_text(this._user.get_real_name());
else
this._name.set_text("");
@ -654,15 +650,9 @@ const UserMenuButton = new Lang.Class({
}));
},
_updateHaveSuspend: function() {
this._loginManager.canSuspend(Lang.bind(this,
function(result) {
this._haveSuspend = result;
this._updateSuspendOrPowerOff();
}));
},
_updateSuspendOrPowerOff: function() {
this._haveSuspend = this._upClient.get_can_suspend();
if (!this._suspendOrPowerOffItem)
return;
@ -759,7 +749,7 @@ const UserMenuButton = new Lang.Class({
item = new PopupMenu.PopupSeparatorMenuItem();
this.menu.addMenuItem(item);
item = new PopupMenu.PopupMenuItem(_("Settings"));
item = new PopupMenu.PopupMenuItem(_("System Settings"));
item.connect('activate', Lang.bind(this, this._onPreferencesActivate));
this.menu.addMenuItem(item);
this._systemSettings = item;
@ -865,13 +855,13 @@ const UserMenuButton = new Lang.Class({
let tmpId = Main.screenShield.connect('lock-screen-shown', Lang.bind(this, function() {
Main.screenShield.disconnect(tmpId);
this._loginManager.suspend();
this._upClient.suspend_sync(null);
}));
this.menu.close(BoxPointer.PopupAnimation.NONE);
Main.screenShield.lock(true);
} else {
this._loginManager.suspend();
this._upClient.suspend_sync(null);
}
}
}

View File

@ -1,7 +1,6 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
const Clutter = imports.gi.Clutter;
const Gio = imports.gi.Gio;
const Gtk = imports.gi.Gtk;
const Mainloop = imports.mainloop;
const Meta = imports.gi.Meta;
@ -20,7 +19,6 @@ const Tweener = imports.ui.tweener;
const Wanda = imports.ui.wanda;
const WorkspacesView = imports.ui.workspacesView;
const SHELL_KEYBINDINGS_SCHEMA = 'org.gnome.shell.keybindings';
const FocusTrap = new Lang.Class({
Name: 'FocusTrap',
@ -84,21 +82,16 @@ const ViewSelector = new Lang.Class({
this._workspacesDisplay = new WorkspacesView.WorkspacesDisplay();
this._workspacesPage = this._addPage(this._workspacesDisplay.actor, null,
_("Windows"), 'emblem-documents-symbolic');
_("Windows"), 'text-x-generic-symbolic');
this._appDisplay = new AppDisplay.AllAppDisplay();
this._appsPage = this._addPage(this._appDisplay.actor, null,
_("Applications"), 'view-grid-symbolic');
_("Applications"), 'system-run-symbolic');
this._searchResults = new SearchDisplay.SearchResults(this._searchSystem);
this._searchPage = this._addPage(this._searchResults.actor, this._entry,
_("Search"), 'edit-find-symbolic');
this._searchSettings = new Gio.Settings({ schema: Search.SEARCH_PROVIDERS_SCHEMA });
this._searchSettings.connect('changed::disabled', Lang.bind(this, this._reloadRemoteProviders));
this._searchSettings.connect('changed::disable-external', Lang.bind(this, this._reloadRemoteProviders));
this._searchSettings.connect('changed::sort-order', Lang.bind(this, this._reloadRemoteProviders));
// Default search providers
// Wanda comes obviously first
this.addSearchProvider(new Wanda.WandaSearchProvider());
@ -148,18 +141,6 @@ const ViewSelector = new Lang.Class({
// accessing the properties.
this.constrainHeight = new Clutter.BindConstraint({ source: this._pageArea,
coordinate: Clutter.BindCoordinate.HEIGHT });
Main.wm.addKeybinding('toggle-application-view',
new Gio.Settings({ schema: SHELL_KEYBINDINGS_SCHEMA }),
Meta.KeyBindingFlags.NONE,
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._toggleAppsPage));
},
_toggleAppsPage: function() {
Main.overview.show();
this._showAppsButton.checked = !this._showAppsButton.checked;
},
show: function() {
@ -203,7 +184,7 @@ const ViewSelector = new Lang.Class({
})
});;
this._pageArea.add_actor(page);
return page;
return page
},
_showPage: function(page) {
@ -440,32 +421,7 @@ const ViewSelector = new Lang.Class({
this._showPage(this._searchPage);
},
_shouldUseSearchProvider: function(provider) {
// the disable-external GSetting only affects remote providers
if (!provider.isRemoteProvider)
return true;
if (this._searchSettings.get_boolean('disable-external'))
return false;
let appId = provider.appInfo.get_id();
let disable = this._searchSettings.get_strv('disabled');
return disable.indexOf(appId) == -1;
},
_reloadRemoteProviders: function() {
// removeSearchProvider() modifies the provider list we iterate on,
// so make a copy first
let remoteProviders = this._searchSystem.getRemoteProviders().slice(0);
remoteProviders.forEach(Lang.bind(this, this.removeSearchProvider));
RemoteSearch.loadRemoteSearchProviders(Lang.bind(this, this.addSearchProvider));
},
addSearchProvider: function(provider) {
if (!this._shouldUseSearchProvider(provider))
return;
this._searchSystem.registerProvider(provider);
this._searchResults.createProviderMeta(provider);
},

View File

@ -9,7 +9,6 @@ const St = imports.gi.St;
const IconGrid = imports.ui.iconGrid;
const Layout = imports.ui.layout;
const Main = imports.ui.main;
const Panel = imports.ui.panel;
const Search = imports.ui.search;
// we could make these gsettings
@ -54,9 +53,20 @@ const WandaIcon = new Lang.Class({
icon_size: iconSize });
}
this._animations = new Panel.Animation(this._imageFile, this._imgWidth, this._imgHeight, FISH_SPEED);
this._animations.play();
return this._animations.actor;
this._animations = St.TextureCache.get_default().load_sliced_image(this._imageFile, this._imgWidth, this._imgHeight);
this._animations.connect('notify::mapped', Lang.bind(this, function() {
if (this._animations.mapped && !this._timeoutId) {
this._timeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, FISH_SPEED, Lang.bind(this, this._update));
this._i = 0;
this._update();
} else if (!this._animations.mapped && this._timeoutId) {
GLib.source_remove(this._timeoutId);
this._timeoutId = 0;
}
}));
return this._animations;
},
_createIconTexture: function(size) {
@ -64,7 +74,20 @@ const WandaIcon = new Lang.Class({
return;
this.parent(size);
}
},
_update: function() {
let n = this._animations.get_n_children();
if (n == 0) {
return true;
}
this._animations.get_child_at_index(this._i).hide();
this._i = (this._i + 1) % n;
this._animations.get_child_at_index(this._i).show();
return true;
},
});
const WandaIconBin = new Lang.Class({

View File

@ -39,8 +39,6 @@ const WindowAttentionHandler = new Lang.Class({
let [title, banner] = this._getTitleAndBanner(app, window);
let notification = new MessageTray.Notification(source, title, banner);
notification.setForFeedback(true);
source.notify(notification);
source.signalIDs.push(window.connect('notify::title', Lang.bind(this, function() {

View File

@ -83,8 +83,6 @@ const WindowManager = new Lang.Class({
this._animationBlockCount = 0;
this._allowedKeybindings = {};
this._switchData = null;
this._shellwm.connect('kill-switch-workspace', Lang.bind(this, this._switchWorkspaceDone));
this._shellwm.connect('kill-window-effects', Lang.bind(this, function (shellwm, actor) {
@ -101,66 +99,38 @@ const WindowManager = new Lang.Class({
this._shellwm.connect('unmaximize', Lang.bind(this, this._unmaximizeWindow));
this._shellwm.connect('map', Lang.bind(this, this._mapWindow));
this._shellwm.connect('destroy', Lang.bind(this, this._destroyWindow));
this._shellwm.connect('filter-keybinding', Lang.bind(this, this._filterKeybinding));
this._workspaceSwitcherPopup = null;
this.setCustomKeybindingHandler('switch-to-workspace-left',
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('switch-to-workspace-right',
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('switch-to-workspace-up',
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('switch-to-workspace-down',
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('move-to-workspace-left',
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('move-to-workspace-right',
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('move-to-workspace-up',
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('move-to-workspace-down',
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW,
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('switch-windows',
Main.KeybindingMode.NORMAL,
Lang.bind(this, this._startAppSwitcher));
this.setCustomKeybindingHandler('switch-group',
Main.KeybindingMode.NORMAL,
Lang.bind(this, this._startAppSwitcher));
this.setCustomKeybindingHandler('switch-windows-backward',
Main.KeybindingMode.NORMAL,
Lang.bind(this, this._startAppSwitcher));
this.setCustomKeybindingHandler('switch-group-backward',
Main.KeybindingMode.NORMAL,
Lang.bind(this, this._startAppSwitcher));
this.setCustomKeybindingHandler('switch-panels',
Main.KeybindingMode.NORMAL |
Main.KeybindingMode.OVERVIEW |
Main.KeybindingMode.LOCK_SCREEN |
Main.KeybindingMode.UNLOCK_SCREEN |
Main.KeybindingMode.LOGIN_SCREEN,
Lang.bind(this, this._startA11ySwitcher));
this.addKeybinding('open-application-menu',
new Gio.Settings({ schema: SHELL_KEYBINDINGS_SCHEMA }),
Meta.KeyBindingFlags.NONE,
Main.KeybindingMode.NORMAL,
Lang.bind(this, this._openAppMenu));
Meta.keybindings_set_custom_handler('switch-to-workspace-left',
Lang.bind(this, this._showWorkspaceSwitcher));
Meta.keybindings_set_custom_handler('switch-to-workspace-right',
Lang.bind(this, this._showWorkspaceSwitcher));
Meta.keybindings_set_custom_handler('switch-to-workspace-up',
Lang.bind(this, this._showWorkspaceSwitcher));
Meta.keybindings_set_custom_handler('switch-to-workspace-down',
Lang.bind(this, this._showWorkspaceSwitcher));
Meta.keybindings_set_custom_handler('move-to-workspace-left',
Lang.bind(this, this._showWorkspaceSwitcher));
Meta.keybindings_set_custom_handler('move-to-workspace-right',
Lang.bind(this, this._showWorkspaceSwitcher));
Meta.keybindings_set_custom_handler('move-to-workspace-up',
Lang.bind(this, this._showWorkspaceSwitcher));
Meta.keybindings_set_custom_handler('move-to-workspace-down',
Lang.bind(this, this._showWorkspaceSwitcher));
Meta.keybindings_set_custom_handler('switch-windows',
Lang.bind(this, this._startAppSwitcher));
Meta.keybindings_set_custom_handler('switch-group',
Lang.bind(this, this._startAppSwitcher));
Meta.keybindings_set_custom_handler('switch-windows-backward',
Lang.bind(this, this._startAppSwitcher));
Meta.keybindings_set_custom_handler('switch-group-backward',
Lang.bind(this, this._startAppSwitcher));
Meta.keybindings_set_custom_handler('switch-panels',
Lang.bind(this, this._startA11ySwitcher));
global.display.add_keybinding('open-application-menu',
new Gio.Settings({ schema: SHELL_KEYBINDINGS_SCHEMA }),
Meta.KeyBindingFlags.NONE,
Lang.bind(this, this._openAppMenu));
Main.overview.connect('showing', Lang.bind(this, function() {
for (let i = 0; i < this._dimmedWindows.length; i++)
@ -172,25 +142,6 @@ const WindowManager = new Lang.Class({
}));
},
setCustomKeybindingHandler: function(name, modes, handler) {
if (Meta.keybindings_set_custom_handler(name, handler))
this.allowKeybinding(name, modes);
},
addKeybinding: function(name, settings, flags, modes, handler) {
if (global.display.add_keybinding(name, settings, flags, handler))
this.allowKeybinding(name, modes);
},
removeKeybinding: function(name) {
if (global.display.remove_keybinding(name))
this.allowKeybinding(name, Main.KeybindingMode.NONE);
},
allowKeybinding: function(name, modes) {
this._allowedKeybindings[name] = modes;
},
blockAnimations: function() {
this._animationBlockCount++;
},
@ -473,21 +424,6 @@ const WindowManager = new Lang.Class({
}
},
_filterKeybinding: function(shellwm, binding) {
if (Main.keybindingMode == Main.KeybindingMode.NONE)
return true;
// There's little sense in implementing a keybinding in mutter and
// not having it work in NORMAL mode; handle this case generically
// so we don't have to explicitly allow all builtin keybindings in
// NORMAL mode.
if (Main.keybindingMode == Main.KeybindingMode.NORMAL &&
binding.is_builtin())
return false;
return !(this._allowedKeybindings[binding.get_name()] & Main.keybindingMode);
},
_switchWorkspace : function(shellwm, from, to, direction) {
if (!this._shouldAnimate()) {
shellwm.completed_switch_workspace();

File diff suppressed because it is too large Load Diff

View File

@ -51,6 +51,7 @@ const WorkspacesView = new Lang.Class({
this._clipY = 0;
this._clipWidth = 0;
this._clipHeight = 0;
this._workspaceRatioSpacing = 0;
this._spacing = 0;
this._animating = false; // tweening
this._scrolling = false; // swipe-scrolling
@ -71,7 +72,6 @@ const WorkspacesView = new Lang.Class({
this._workspaces[w].actor.reparent(this.actor);
this._workspaces[activeWorkspaceIndex].actor.raise_top();
this._extraWorkspaces = [];
this._updateExtraWorkspaces();
// Position/scale the desktop windows and their children after the
@ -83,6 +83,8 @@ const WorkspacesView = new Lang.Class({
Lang.bind(this, function() {
for (let w = 0; w < this._workspaces.length; w++)
this._workspaces[w].zoomToOverview();
if (!this._extraWorkspaces)
return;
for (let w = 0; w < this._extraWorkspaces.length; w++)
this._extraWorkspaces[w].zoomToOverview();
}));
@ -122,37 +124,38 @@ const WorkspacesView = new Lang.Class({
if (!this._settings.get_boolean('workspaces-only-on-primary'))
return;
this._extraWorkspaces = [];
let monitors = Main.layoutManager.monitors;
for (let i = 0; i < monitors.length; i++) {
if (i == Main.layoutManager.primaryIndex)
continue;
let ws = new Workspace.Workspace(null, i);
let overviewSpacing = Main.overview._spacing;
ws.setGeometry(monitors[i].x + overviewSpacing/2,
monitors[i].y + overviewSpacing/2,
monitors[i].width - overviewSpacing,
monitors[i].height - overviewSpacing);
ws.setGeometry(monitors[i].x, monitors[i].y,
monitors[i].width, monitors[i].height);
global.overlay_group.add_actor(ws.actor);
this._extraWorkspaces.push(ws);
}
},
_destroyExtraWorkspaces: function() {
if (!this._extraWorkspaces)
return;
for (let m = 0; m < this._extraWorkspaces.length; m++)
this._extraWorkspaces[m].destroy();
this._extraWorkspaces = [];
this._extraWorkspaces = null;
},
setGeometry: function(x, y, width, height) {
setGeometry: function(x, y, width, height, spacing) {
if (this._x == x && this._y == y &&
this._width == width && this._height == height)
return;
this._width = width;
this._height = height;
this._x = x;
this._y = y;
this._workspaceRatioSpacing = spacing;
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].setGeometry(x, y, width, height);
@ -188,6 +191,8 @@ const WorkspacesView = new Lang.Class({
for (let w = 0; w < this._workspaces.length; w++)
this._workspaces[w].zoomFromOverview();
if (!this._extraWorkspaces)
return;
for (let w = 0; w < this._extraWorkspaces.length; w++)
this._extraWorkspaces[w].zoomFromOverview();
},
@ -199,6 +204,8 @@ const WorkspacesView = new Lang.Class({
syncStacking: function(stackIndices) {
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].syncStacking(stackIndices);
if (!this._extraWorkspaces)
return;
for (let i = 0; i < this._extraWorkspaces.length; i++)
this._extraWorkspaces[i].syncStacking(stackIndices);
},
@ -227,7 +234,7 @@ const WorkspacesView = new Lang.Class({
Tweener.removeTweens(workspace.actor);
let y = (w - active) * (this._height + this._spacing);
let y = (w - active) * (this._height + this._spacing + this._workspaceRatioSpacing);
if (showAnimation) {
let params = { y: y,
@ -369,6 +376,9 @@ const WorkspacesView = new Lang.Class({
this._firstDragMotion = false;
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].setReservedSlot(dragEvent.dragActor._delegate);
if (!this._extraWorkspaces)
return DND.DragMotionResult.CONTINUE;
for (let i = 0; i < this._extraWorkspaces.length; i++)
this._extraWorkspaces[i].setReservedSlot(dragEvent.dragActor._delegate);
}
@ -382,6 +392,9 @@ const WorkspacesView = new Lang.Class({
for (let i = 0; i < this._workspaces.length; i++)
this._workspaces[i].setReservedSlot(null);
if (!this._extraWorkspaces)
return;
for (let i = 0; i < this._extraWorkspaces.length; i++)
this._extraWorkspaces[i].setReservedSlot(null);
},
@ -528,16 +541,6 @@ const WorkspacesDisplay = new Lang.Class({
this._notifyOpacityId = 0;
this._swipeScrollBeginId = 0;
this._swipeScrollEndId = 0;
this._settings = new Gio.Settings({ schema: OVERRIDE_SCHEMA });
this._settings.connect('changed::dynamic-workspaces',
Lang.bind(this, this._updateSwitcherVisibility));
},
_updateSwitcherVisibility: function() {
this._thumbnailsBox.actor.visible =
this._settings.get_boolean('dynamic-workspaces') ||
global.screen.n_workspaces > 1;
},
show: function() {
@ -560,7 +563,6 @@ const WorkspacesDisplay = new Lang.Class({
this._controls.show();
this._thumbnailsBox.show();
this._updateSwitcherVisibility();
this._updateWorkspacesViews();
@ -862,34 +864,38 @@ const WorkspacesDisplay = new Lang.Class({
let rtl = (Clutter.get_default_text_direction () == Clutter.TextDirection.RTL);
let clipWidth = width - controlsVisible;
let clipHeight = fullHeight;
let clipHeight = (fullHeight / fullWidth) * clipWidth;
let clipX = rtl ? x + controlsVisible : x;
let clipY = y + (fullHeight - clipHeight) / 2;
let overviewSpacing = Main.overview._spacing;
let widthAdjust = this._zoomOut ? controlsNatural : controlsVisible;
widthAdjust += overviewSpacing;
width -= widthAdjust;
if (rtl)
x += widthAdjust;
height = (fullHeight / fullWidth) * width;
let difference = fullHeight - height;
y += difference / 2;
let monitors = Main.layoutManager.monitors;
let m = 0;
for (let i = 0; i < monitors.length; i++) {
if (i == this._primaryIndex) {
this._workspacesViews[m].setClipRect(clipX, clipY,
clipWidth, clipHeight);
this._workspacesViews[m].setGeometry(x, y, width, height);
this._workspacesViews[m].setGeometry(x, y, width, height,
difference);
m++;
} else if (!this._workspacesOnlyOnPrimary) {
this._workspacesViews[m].setClipRect(monitors[i].x,
monitors[i].y,
monitors[i].width,
monitors[i].height);
this._workspacesViews[m].setGeometry(monitors[i].x + overviewSpacing/2,
monitors[i].y + overviewSpacing/2,
monitors[i].width - overviewSpacing,
monitors[i].height - overviewSpacing);
this._workspacesViews[m].setGeometry(monitors[i].x,
monitors[i].y,
monitors[i].width,
monitors[i].height, 0);
m++;
}
}
@ -969,7 +975,6 @@ const WorkspacesDisplay = new Lang.Class({
for (let i = 0; i < this._workspacesViews.length; i++)
this._workspacesViews[i].updateWorkspaces(oldNumWorkspaces,
newNumWorkspaces);
this._updateSwitcherVisibility();
},
_updateZoom : function() {

646
po/as.po

File diff suppressed because it is too large Load Diff

192
po/be.po
View File

@ -5,8 +5,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: 2012-10-15 23:38+0000\n"
"PO-Revision-Date: 2012-10-16 12:05+0300\n"
"POT-Creation-Date: 2012-11-02 07:11+0000\n"
"PO-Revision-Date: 2012-11-02 15:12+0300\n"
"Last-Translator: Kasia Bondarava <kasia.bondarava@gmail.com>\n"
"Language-Team: Belarusian <i18n-bel-gnome@googlegroups.com>\n"
"Language: be\n"
@ -34,14 +34,6 @@ msgstr "Сістэма"
msgid "Show the message tray"
msgstr "Паказаць абшар апавяшчэнняў"
#: ../data/50-gnome-shell-system.xml.in.h:3
msgid "Show all applications"
msgstr "Паказаць усе праграмы"
#: ../data/50-gnome-shell-system.xml.in.h:4
msgid "Open the application menu"
msgstr "Адкрыць праграмнае меню"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "Абалонка GNOME"
@ -144,30 +136,33 @@ msgstr ""
"камунікатара карыстальніка. Гэта значэнне - з пераліку GsmPresenceStatus."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Заўсёды паказваць элемент для выхаду з сеанса ў карыстальніцкім меню."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
msgstr "Паказваць тыдзень у календары"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Калі ўключана, паказваць тыдзень у календары ў ISO-фармаце."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "Клавіятурны скарот для адкрыцця праграмнага меню"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "Клавіятурны скарот для адкрыцця праграмнага меню."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Клавіятурны скарот для рэжыму \"Паказаць праграмы\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "Клавіятурны скарот для рэжыму \"Паказаць праграмы\" у Аглядзе Заняткаў."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "Клавіятурны скарот для ўключэння/выключэння абшару апавяшчэнняў"
@ -300,8 +295,8 @@ msgstr "Акно ўваходу"
msgid "Power"
msgstr "Праца сістэмы"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:660 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:775
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Прыпыніць камп'ютар"
@ -309,8 +304,8 @@ msgstr "Прыпыніць камп'ютар"
msgid "Restart"
msgstr "Перазапусціць сістэму"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:662 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:774
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Выключыць камп'ютар"
@ -693,35 +688,35 @@ msgstr "Абязгучыць"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Адпраўлена ў <b>%X</b>, <b>%A</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Адпраўлена ў <b>%A</b>, <b>%d %B</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Адпраўлена ў <b>%A</b>, <b>%d %B</b>, %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:990
#, c-format
msgid "%s is now known as %s"
msgstr "%s змяніў імя на %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "Запрашэнне ў %s"
@ -729,42 +724,42 @@ msgstr "Запрашэнне ў %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "Удзельнік %s запрашае вас далучыцца да %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "Адмовіцца"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "Прыняць"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "Відэазванок ад %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "Званок ад %s"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Адмовіць"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "Адказаць"
@ -773,108 +768,108 @@ msgstr "Адказаць"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "%s пасылае вам %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s просіць дазволу на прагляд вашага сеткавага стану"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "Сеткавая памылка"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "Няўдалая ідэнтыфікацыя"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "Памылка шыфравання"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "Сертыфікат не пададзены"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "Сертыфікат не заслугоўвае даверу"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "Сертыфікат састарэў"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "Сертыфікат не актывізаваны"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "Назва камп'ютара ў сертыфікаце не адпавядае патрэбнай"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "Адбітак сертыфіката не адпавядае патрэбнаму"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "Сертыфікат уласнаручна падпісаны"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "Уключаны рэжым па-за сеткай"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "Шыфраванне недаступнае"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "Хібны сертыфікат"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "Адмоўлена ў злучэнні"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "Не ўдалося ўсталяваць злучэнне"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "Злучэнне страчана"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "Гэты конт ужо злучаны з серверам"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Злучэнне заменена новым для таго ж самага рэсурсу"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "Такі конт ужо існуе на серверы"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "Сервер надта заняты і не можа абслужыць гэта злучэнне"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "Сертыфікат быў адкліканы"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr "Для сертыфіката выкарыстаны слабы або небяспечны алгарытм шыфравання"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -882,26 +877,26 @@ msgstr ""
"Даўжыня сертыфіката сервера або глыбіня яго ланцуга перавышае абмежаванне, "
"выстаўленае крыптаграфічнай бібліятэкай"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "Унутраная памылка"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "не ўдалося злучыцца з %s"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "Перазлучыцца"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "Рэдагаваць конт"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "Невядомая прычына"
@ -1088,23 +1083,23 @@ msgstr "Паглядзець выточны код"
msgid "Web Page"
msgstr "Сеціўная старонка"
#: ../js/ui/messageTray.js:1081
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Адкрыць"
#: ../js/ui/messageTray.js:1088
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Выдаліць"
#: ../js/ui/messageTray.js:1540
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Абшар апавяшчэнняў"
#: ../js/ui/messageTray.js:2547
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Сістэмная інфармацыя"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Невядомая"
@ -1160,11 +1155,11 @@ msgstr "Увядзіце загад:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %d %B"
#: ../js/ui/screenShield.js:143
#: ../js/ui/screenShield.js:144
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1172,7 +1167,7 @@ msgstr[0] "%d новае паведамленне"
msgstr[1] "%d новыя паведамленні"
msgstr[2] "%d новых паведамленняў"
#: ../js/ui/screenShield.js:145
#: ../js/ui/screenShield.js:146
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
@ -1632,59 +1627,59 @@ msgstr "Мікрафон"
msgid "Log in as another user"
msgstr "Увайсці іншым карыстальнікам"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Даступны"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Заняты"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Нябачны"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Адсутны"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Бяздзейны"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Недаступны"
#: ../js/ui/userMenu.js:740
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Апавяшчэнні"
#: ../js/ui/userMenu.js:748
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Сістэмныя настройкі"
#: ../js/ui/userMenu.js:756
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Перамяніць карыстальніка"
#: ../js/ui/userMenu.js:761
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Выйсці з сеанса"
#: ../js/ui/userMenu.js:766
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Заблакіраваць"
#: ../js/ui/userMenu.js:781
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Усталяваць абнаўленні і перазагрузіць камп'ютар"
#: ../js/ui/userMenu.js:799
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Вам прызначаны стан занятасці для чату"
#: ../js/ui/userMenu.js:800
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1693,15 +1688,15 @@ msgstr ""
"сеціўны стан абноўлены інфармацыяй аб тым, што вы можаце не ўбачыць чужых "
"паведамленняў у час."
#: ../js/ui/viewSelector.js:87
#: ../js/ui/viewSelector.js:85
msgid "Windows"
msgstr "Вокны"
#: ../js/ui/viewSelector.js:91
#: ../js/ui/viewSelector.js:89
msgid "Applications"
msgstr "Праграмы"
#: ../js/ui/viewSelector.js:95
#: ../js/ui/viewSelector.js:93
msgid "Search"
msgstr "Пошук"
@ -1772,7 +1767,7 @@ msgstr "Ужыць асаблівы рэжым, напрыклад, \"gdm\" дл
msgid "List possible modes"
msgstr "Вывесці спіс магчымых рэжымаў"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "Не ўдалося запусціць \"%s\""
@ -1796,3 +1791,4 @@ msgstr "Прадвызначана"
#: ../src/shell-polkit-authentication-agent.c:343
msgid "Authentication dialog was dismissed by the user"
msgstr "Карыстальнік праігнараваў дыялогавае акенца ідэнтыфікацыі"

File diff suppressed because it is too large Load Diff

250
po/ca.po
View File

@ -10,14 +10,14 @@ msgstr ""
"Project-Id-Version: HEAD\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-09-25 10:59+0000\n"
"PO-Revision-Date: 2012-09-25 07:47+0100\n"
"POT-Creation-Date: 2012-10-31 16:48+0000\n"
"PO-Revision-Date: 2012-11-03 16:22+0100\n"
"Last-Translator: Gil Forcada <gilforcada@guifi.net>\n"
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Content-Transfer-Encoding: 8bits\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Gtranslator 2.91.5\n"
@ -141,50 +141,63 @@ msgstr ""
"l'usuari. El valor prové de l'enumeració «GsmPresenceStatus»."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Mostra sempre l'element de menú «Surt» en el menú d'usuari."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
"user, single-session situations."
msgstr ""
"Aquesta clau sobreescriu l'ocultació automàtica de l'element de menú «Surt» "
"en el menú d'usuari en el cas que només hi hagi un sol usuari i una sola "
"sessió."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Show the week date in the calendar"
msgstr "Mostra el número de la setmana en el calendari"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Si és «true» (cert) es mostra el número de la setmana en el calendari."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "Vinculació per obrir el menú d'aplicació"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "La vinculació per obrir el menú d'aplicació."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "La vinculació per commutar la visibilitat de la safata de missatges"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "La vinculació per commutar la visibilitat de la safata de missatges."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "La vinculació per commutar l'enregistrador de pantalla"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "La vinculació per iniciar/aturar l'enregistrador de pantalla."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "Quin tipus de teclat s'ha d'utilitzar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "El tipus de teclat que s'utilitzarà."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "Imatges per segon per enregistrar els screencasts."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -192,11 +205,11 @@ msgstr ""
"Les imatges per segon, en fotogrames per segon, de l'screencast enregistrat "
"per l'eina d'enregistrament del GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "El conducte GStreamer per enregistrar els screencasts"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -223,11 +236,11 @@ msgstr ""
"WEBM i utilitza el còdec VP8. El %T és una variable per estimar el nombre de "
"fils d'execució paral·lels òptims del sistema."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "Extensió de fitxer per desar l'screencast"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -250,11 +263,11 @@ msgstr "Extensió"
msgid "Select an extension to configure using the combobox above."
msgstr "Seleccioneu una extensió amb el quadre combinat per configurar-la."
#: ../js/gdm/loginDialog.js:528
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "Sessió..."
#: ../js/gdm/loginDialog.js:676
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "Entrada"
@ -262,23 +275,23 @@ msgstr "Entrada"
#. 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.
#: ../js/gdm/loginDialog.js:743
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "No esteu llistat?"
#: ../js/gdm/loginDialog.js:896 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:166
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "Cancel·la"
#: ../js/gdm/loginDialog.js:901
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "Entra"
#: ../js/gdm/loginDialog.js:1240
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "Finestra d'entrada"
@ -287,8 +300,8 @@ msgstr "Finestra d'entrada"
msgid "Power"
msgstr "Apaga"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:663 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:778
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Atura temporalment"
@ -296,8 +309,8 @@ msgstr "Atura temporalment"
msgid "Restart"
msgstr "Reinicia"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:665 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:777
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Apaga"
@ -348,7 +361,7 @@ msgstr "CONFIGURACIÓ"
msgid "New Window"
msgstr "Finestra nova"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "Suprimeix dels preferits"
@ -512,16 +525,16 @@ msgstr "Aquesta setmana"
msgid "Next week"
msgstr "La setmana que ve"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "Dispositius extraïbles"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "Obre amb %s"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "Expulsa"
@ -678,35 +691,35 @@ msgstr "Silencia"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Enviat a les <b>%X</b> del <b>%A</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Enviat el <b>%A %d de %B</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Enviat el <b>%A %d de %B</b> de %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:990
#, c-format
msgid "%s is now known as %s"
msgstr "En/na %s ara es diu %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "Us han convidat a entrar a %s"
@ -714,42 +727,42 @@ msgstr "Us han convidat a entrar a %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "En/na %s us convida a entrar a %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "Declina"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "Accepta"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "Videotrucada de %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "Trucada de %s"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Rebutja"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "Contesta"
@ -758,112 +771,112 @@ msgstr "Contesta"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "En/na %s us envia %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s vol poder saber quan esteu en línia"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "Error de la xarxa"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "Ha fallat l'autenticació"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "Error d'encriptació"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "No s'ha proporcionat el certificat"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "El certificat no és de confiança"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "El certificat ha vençut"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "El certificat no està activat"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "No coincideix el nom de la màquina del certificat"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "No coincideix l'empremta digital del certificat"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "Certificat signat per un mateix"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "S'ha establert l'estat a fora de línia"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "L'encriptació no està disponible"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "El certificat no és vàlid"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "S'ha rebutjat la connexió"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "No es pot establir la connexió"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "S'ha perdut la connexió"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "Aquest compte ja està connectat al servidor"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"S'ha reemplaçat la connexió per una altra de nova fent servir el mateix "
"recurs"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "Ja existeix aquest compte al servidor"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "El servidor està massa ocupat per gestionar la connexió"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "S'ha revocat el certificat"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"El certificat utilitza un algorisme criptògraf no segur o la seva fortalesa "
"criptogràfica és feble"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -871,30 +884,30 @@ msgstr ""
"La llargada del certificat del servidor o la profunditat de la cadena de "
"certificació excedeix els límits de la biblioteca criptogràfica"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "S'ha produït un error intern"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "Ha fallat la connexió a %s"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "Torna a connectar"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "Edita el compte"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "Motiu desconegut"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "Mostra les aplicacions"
@ -902,14 +915,14 @@ msgstr "Mostra les aplicacions"
msgid "Date and Time Settings"
msgstr "Configuració de la data i l'hora"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "Obre el calendari"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A %d de %B, %Y"
@ -1068,23 +1081,23 @@ msgstr "Mostra el codi font"
msgid "Web Page"
msgstr "Pàgina web"
#: ../js/ui/messageTray.js:1081
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Obre"
#: ../js/ui/messageTray.js:1088
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Suprimeix"
#: ../js/ui/messageTray.js:2088
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Safata de missatges"
#: ../js/ui/messageTray.js:2551
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Informació de l'ordinador"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Desconegut"
@ -1140,7 +1153,7 @@ msgstr "Introduïu una ordre:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A %d de %B"
@ -1190,7 +1203,7 @@ msgstr "Contrasenya"
msgid "Remember Password"
msgstr "Recorda la contrasenya"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:169
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "Desbloqueja"
@ -1601,67 +1614,63 @@ msgstr "Volum"
msgid "Microphone"
msgstr "Micròfon"
#: ../js/ui/unlockDialog.js:176
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "Entra amb un altre usuari"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Disponible"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Ocupat"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Invisible"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Absent"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Inactiu"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "No disponible"
#: ../js/ui/userMenu.js:618 ../js/ui/userMenu.js:759
msgid "Switch User"
msgstr "Canvia d'usuari"
#: ../js/ui/userMenu.js:619
msgid "Switch Session"
msgstr "Canvia de sessió"
#: ../js/ui/userMenu.js:743
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Notificacions"
#: ../js/ui/userMenu.js:751
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Paràmetres del sistema"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Canvia d'usuari"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Surt"
#: ../js/ui/userMenu.js:769
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Bloqueja"
#: ../js/ui/userMenu.js:784
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Instal·la les actualitzacions i reinicia"
#: ../js/ui/userMenu.js:802
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "L'estat del xat s'establirà a ocupat"
#: ../js/ui/userMenu.js:803
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1682,7 +1691,7 @@ msgstr "Aplicacions"
msgid "Search"
msgstr "Cerca"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1691,12 +1700,12 @@ msgstr ""
"No hi ha cap consell per avui:\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "L'oracle diu %s"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "El vostre ou de pasqua preferit"
@ -1731,23 +1740,23 @@ msgstr[1] "%u entrades"
msgid "System Sounds"
msgstr "Sons del sistema"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "Mostra la versió"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "El mode que utilitzarà el GDM per a la pantalla d'entrada"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "Utilitza un mode específic, p. ex. «gdm» per la pantalla d'entrada"
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "Llista els modes possibles"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "No s'ha pogut iniciar «%s»"
@ -1772,6 +1781,9 @@ msgstr "Predeterminat"
msgid "Authentication dialog was dismissed by the user"
msgstr "L'usuari ha descartat el diàleg d'autenticació"
#~ msgid "Switch Session"
#~ msgstr "Canvia de sessió"
#~ msgid "Failed to unmount '%s'"
#~ msgstr "No s'ha pogut desmuntar «%s»"

377
po/cs.po
View File

@ -12,7 +12,7 @@ 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: 2012-10-31 16:46+0000\n"
"POT-Creation-Date: 2012-10-31 16:48+0000\n"
"PO-Revision-Date: 2012-11-04 17:40+0200\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <gnome-cs-list@gnome.org>\n"
@ -40,14 +40,6 @@ msgstr "Systém"
msgid "Show the message tray"
msgstr "Zobrazit lištu zpráv"
#: ../data/50-gnome-shell-system.xml.in.h:3
msgid "Show all applications"
msgstr "Zobrazit všechny aplikace"
#: ../data/50-gnome-shell-system.xml.in.h:4
msgid "Open the application menu"
msgstr "Otevřít nabídku aplikací"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "Prostředí GNOME Shell"
@ -175,47 +167,34 @@ msgid "Keybinding to open the application menu."
msgstr "Klávesová zkratka na otevření nabídky aplikace."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#, fuzzy
#| msgid "Keybinding to open the application menu"
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Klávesová zkratka na otevření nabídky aplikace"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#, fuzzy
#| msgid "Keybinding to open the application menu."
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "Klávesová zkratka na otevření nabídky aplikace."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "Klávesová zkratka k přepnutí viditelnosti lišty zpráv"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "Klávesová zkratka k přepnutí viditelnosti lišty zpráv."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "Klávesová zkratka k záznamu obrazovky"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "Klávesová zkratka k započnutí nebo ukončení záznamu dění na obrazovce."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "Která klávesnice se má používat"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "Typ klávesnice, který se má používat."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "Frekvence snímků při nahrávání dění na obrazovce."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -223,11 +202,11 @@ msgstr ""
"Frekvence snímků za sekundu výsledné nahrávky dění na obrazovce, která byla "
"nahrána záznamovým programem GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "Roura systému gstreamer určená ke kódování nahrávky dění na obrazovce"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -252,11 +231,11 @@ msgstr ""
"nahráváním do WEBM s kodekem VP8. %T je použito jako zástupný symbol odhadu "
"nejvhodnějšího počtu vláken na systému."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "Přípona souboru s nahrávkou dění na obrazovce"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -266,39 +245,6 @@ msgstr ""
"názvu vycházejícího z aktuálního data a bude používat tuto příponu. Při "
"nahrávání do jiného formátu kontejneru by měla být provedena úprava pravidel."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid "Attach modal dialog to the parent window"
msgstr "Připojovat modální dialogová okna k rodičovským oknům"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Tento kíč přepisuje klíč v org.gnome.mutter, když běží GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid "Arrangement of buttons on the titlebar"
msgstr "Uspořádání tlačítek v záhlaví"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"Tento kíč přepisuje klíč v org.gnome.desktop.wm.preferences, když běží GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid "Workspaces are managed dynamically"
msgstr "Pracovní plochy jsou spravovány dynamicky"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Workspaces only on primary monitor"
msgstr "Pracovní plochy pouze na hlavním monitoru"
#: ../js/extensionPrefs/main.js:124
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -314,11 +260,11 @@ msgid "Select an extension to configure using the combobox above."
msgstr ""
"Pomocí rozbalovacího seznamu výše zvolte rozšíření, které chete nastavit."
#: ../js/gdm/loginDialog.js:560
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "Sezení…"
#: ../js/gdm/loginDialog.js:704
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "Přihlášení"
@ -326,56 +272,56 @@ msgstr "Přihlášení"
#. 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.
#: ../js/gdm/loginDialog.js:763
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "Nejste na seznamu?"
#: ../js/gdm/loginDialog.js:905 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:168
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "Zrušit"
#: ../js/gdm/loginDialog.js:910
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "Přihlásit se"
#: ../js/gdm/loginDialog.js:1221
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "Přihlašovací okno"
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:36
#: ../js/gdm/powerMenu.js:35
msgid "Power"
msgstr "Vypnout"
#: ../js/gdm/powerMenu.js:93 ../js/ui/userMenu.js:667 ../js/ui/userMenu.js:671
#: ../js/ui/userMenu.js:782
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Uspat do paměti"
#: ../js/gdm/powerMenu.js:98
#: ../js/gdm/powerMenu.js:94
msgid "Restart"
msgstr "Restartovat"
#: ../js/gdm/powerMenu.js:103 ../js/ui/userMenu.js:669
#: ../js/ui/userMenu.js:671 ../js/ui/userMenu.js:781
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Vypnout"
#: ../js/gdm/util.js:151
#: ../js/gdm/util.js:148
msgid "Authentication error"
msgstr "Chyba ověření"
#. Translators: this message is shown below the password entry field
#. to indicate the user can swipe their finger instead
#: ../js/gdm/util.js:268
#: ../js/gdm/util.js:265
msgid "(or swipe finger)"
msgstr "(nebo otiskněte prst)"
#: ../js/gdm/util.js:293
#: ../js/gdm/util.js:290
#, c-format
msgid "(e.g., user or %s)"
msgstr "(např. uživatel nebo %s)"
@ -545,48 +491,48 @@ msgid "S"
msgstr "So"
#. Translators: Text to show if there are no events
#: ../js/ui/calendar.js:700
#: ../js/ui/calendar.js:699
msgid "Nothing Scheduled"
msgstr "Nic nenaplánováno"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:716
#: ../js/ui/calendar.js:715
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e. %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:719
#: ../js/ui/calendar.js:718
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e. %B %Y"
#: ../js/ui/calendar.js:729
#: ../js/ui/calendar.js:728
msgid "Today"
msgstr "Dnes"
#: ../js/ui/calendar.js:733
#: ../js/ui/calendar.js:732
msgid "Tomorrow"
msgstr "Zítra"
#: ../js/ui/calendar.js:744
#: ../js/ui/calendar.js:743
msgid "This week"
msgstr "Tento týden"
#: ../js/ui/calendar.js:752
#: ../js/ui/calendar.js:751
msgid "Next week"
msgstr "Následující týden"
#: ../js/ui/components/autorunManager.js:295
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "Výměnná zařízení"
#: ../js/ui/components/autorunManager.js:591
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "Otevřít s %s"
#: ../js/ui/components/autorunManager.js:617
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "Vysunout"
@ -740,42 +686,38 @@ msgstr "Zrušit ztlumení"
msgid "Mute"
msgstr "Ztlumit"
#. Translators: this is a time format string followed by the word "Yesterday". i.e. "14:30 on Yesterday"
#: ../js/ui/components/telepathyClient.js:943
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "<b>%H:%M</b> on Yesterday"
msgstr ""
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Čas odeslání: <b>%X</b>, den odeslání: <b>%A</b>"
#. Translators: this is a time format string followed by a week day name. i.e. "14:30 on Monday
#: ../js/ui/components/telepathyClient.js:949
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "<b>%H:%M</b> on <b>%A</b>"
msgstr "<b>%H:%M</b> v <b>%A</b>"
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Den odeslání: <b>%A</b>, <b>%e. %B</b>"
#. Translators: this is a time format in the style of "14:30 on Wednesday, May 25",
#. shown when you get a chat message in the same year
#: ../js/ui/components/telepathyClient.js:955
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>"
msgstr "<b>%H:%M</b> v <b>%A</b>, <b>%e. %B</b>"
#. Translators: this is a time format in the style of "14:30 on Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year
#: ../js/ui/components/telepathyClient.js:960
#, no-c-format
msgid "<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>, %Y"
msgstr "<b>%H:%M</b> v <b>%A</b>, <b>%e. %B</b> %Y"
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Den odeslání: <b>%A</b>, <b>%e. %B</b> %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:990
#, c-format
msgid "%s is now known as %s"
msgstr "%s je teď znám jako %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1087
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "Pozvánka na připojení k %s"
@ -783,42 +725,42 @@ msgstr "Pozvánka na připojení k %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1095
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s vás zve do %s"
#: ../js/ui/components/telepathyClient.js:1097
#: ../js/ui/components/telepathyClient.js:1176
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "Odmítnout"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "Přijmout"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1128
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "Videohovor od %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1131
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "Hovor od %s"
#: ../js/ui/components/telepathyClient.js:1136
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Odmítnout"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1138
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "Zvednout"
@ -827,110 +769,110 @@ msgstr "Zvednout"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "%s vám posílá %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1205
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s vás žádá o oprávnění vidět, že jste dostupní"
#: ../js/ui/components/telepathyClient.js:1297
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "Chyba sítě"
#: ../js/ui/components/telepathyClient.js:1299
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "Ověření selhalo"
#: ../js/ui/components/telepathyClient.js:1301
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "Chyba šifrování"
#: ../js/ui/components/telepathyClient.js:1303
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "Certifikát neposkytnut"
#: ../js/ui/components/telepathyClient.js:1305
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "Nedůvěryhodný certifikát"
#: ../js/ui/components/telepathyClient.js:1307
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "Platnost certifikátu vypršela"
#: ../js/ui/components/telepathyClient.js:1309
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "Certifikát není aktivován"
#: ../js/ui/components/telepathyClient.js:1311
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "Název počítače certifikátu nesouhlasí"
#: ../js/ui/components/telepathyClient.js:1313
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "Otisk prstu certifikátu nesouhlasí"
#: ../js/ui/components/telepathyClient.js:1315
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "Certifikát je podepsán sám sebou"
#: ../js/ui/components/telepathyClient.js:1317
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "Stav nastaven na „Odhlášen“"
#: ../js/ui/components/telepathyClient.js:1319
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "Šifrování není dostupné"
#: ../js/ui/components/telepathyClient.js:1321
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "Certifikát je neplatný"
#: ../js/ui/components/telepathyClient.js:1323
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "Spojení bylo odmítnuto"
#: ../js/ui/components/telepathyClient.js:1325
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "Spojení nemohlo bát navázáno"
#: ../js/ui/components/telepathyClient.js:1327
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "Spojení bylo ztraceno"
#: ../js/ui/components/telepathyClient.js:1329
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "Tento účet je již připojen k serveru"
#: ../js/ui/components/telepathyClient.js:1331
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Spojení bylo nahrazeno novým spojením, které používá stejný zdroj"
#: ../js/ui/components/telepathyClient.js:1333
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "Takový účet již na serveru existuje"
#: ../js/ui/components/telepathyClient.js:1335
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "Server je právě příliš zaneprázdněn na to, aby obsloužil spojení"
#: ../js/ui/components/telepathyClient.js:1337
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "Certifikát byl odvolán"
#: ../js/ui/components/telepathyClient.js:1339
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Certifikát používá nepříliš bezpečný šifrovací algoritmus nebo je z "
"kryptografického hlediska slabý"
#: ../js/ui/components/telepathyClient.js:1341
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -938,26 +880,26 @@ msgstr ""
"Délka certifikátu serveru nebo délka zřetězených certifikátů serveru "
"přesáhla omezení dané kryptografickou knihovnou"
#: ../js/ui/components/telepathyClient.js:1343
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "Vnitřní chyba"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1353
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "Připojení k „%s“ selhalo"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "Znovu připojit"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "Upravit účet"
#: ../js/ui/components/telepathyClient.js:1408
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "Neznámý důvod"
@ -1140,23 +1082,23 @@ msgstr "Zobrazit zdroj"
msgid "Web Page"
msgstr "Webová stránka"
#: ../js/ui/messageTray.js:1083
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Otevřít"
#: ../js/ui/messageTray.js:1090
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Odstranit"
#: ../js/ui/messageTray.js:1534
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Lišta zpráv"
#: ../js/ui/messageTray.js:2557
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Informace o systému"
#: ../js/ui/notificationDaemon.js:504 ../src/shell-app.c:374
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Neznámé"
@ -1183,17 +1125,17 @@ msgstr "Vyhledávejte psaním…"
msgid "Dash"
msgstr "Oblíbené"
#: ../js/ui/panel.js:580
#: ../js/ui/panel.js:567
msgid "Quit"
msgstr "Ukončit"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:612
#: ../js/ui/panel.js:599
msgid "Activities"
msgstr "Činnosti"
#: ../js/ui/panel.js:979
#: ../js/ui/panel.js:965
msgid "Top Bar"
msgstr "Horní lišta"
@ -1207,12 +1149,8 @@ msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:205
msgid "Enter a Command"
msgstr "Zadejte příkaz:"
#: ../js/ui/runDialog.js:241
msgid "Close"
msgstr ""
msgid "Please enter a command:"
msgstr "Zadejte prosím příkaz:"
#. Translators: This is a time format for a date in
#. long format
@ -1268,7 +1206,7 @@ msgstr "Heslo"
msgid "Remember Password"
msgstr "Pamatovat si heslo"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:171
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "Odemknout"
@ -1323,7 +1261,7 @@ msgstr "Styl velkého textu"
#: ../js/ui/status/bluetooth.js:27 ../js/ui/status/bluetooth.js:31
#: ../js/ui/status/bluetooth.js:251 ../js/ui/status/bluetooth.js:304
#: ../js/ui/status/bluetooth.js:335 ../js/ui/status/bluetooth.js:371
#: ../js/ui/status/bluetooth.js:400 ../js/ui/status/network.js:873
#: ../js/ui/status/bluetooth.js:400 ../js/ui/status/network.js:867
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1352,12 +1290,12 @@ msgstr "zařízení zakázáno"
msgid "Connection"
msgstr "Připojení"
#: ../js/ui/status/bluetooth.js:207 ../js/ui/status/network.js:475
#: ../js/ui/status/bluetooth.js:207 ../js/ui/status/network.js:458
msgid "disconnecting..."
msgstr "odpojování…"
#: ../js/ui/status/bluetooth.js:220 ../js/ui/status/network.js:481
#: ../js/ui/status/network.js:1507
#: ../js/ui/status/bluetooth.js:220 ../js/ui/status/network.js:464
#: ../js/ui/status/network.js:934
msgid "connecting..."
msgstr "připojování…"
@ -1467,106 +1405,109 @@ msgstr "zakázáno"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu)
#: ../js/ui/status/network.js:473
#: ../js/ui/status/network.js:456
msgid "unmanaged"
msgstr "nespravováno"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:484 ../js/ui/status/network.js:1510
#: ../js/ui/status/network.js:467 ../js/ui/status/network.js:937
msgid "authentication required"
msgstr "je vyžadováno ověření"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:494
#: ../js/ui/status/network.js:477
msgid "firmware missing"
msgstr "nedostupný firmware"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:501
#: ../js/ui/status/network.js:484
msgid "cable unplugged"
msgstr "kabel byl odpojen"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:506
#: ../js/ui/status/network.js:489
msgid "unavailable"
msgstr "nedostupné"
#: ../js/ui/status/network.js:508 ../js/ui/status/network.js:1512
#: ../js/ui/status/network.js:491 ../js/ui/status/network.js:939
msgid "connection failed"
msgstr "připojení selhalo"
#: ../js/ui/status/network.js:560 ../js/ui/status/network.js:1446
#: ../js/ui/status/network.js:1588
#: ../js/ui/status/network.js:552 ../js/ui/status/network.js:1529
msgid "More..."
msgstr "Více…"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:596 ../js/ui/status/network.js:1376
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1459
msgid "Connected (private)"
msgstr "Připojení (soukromé)"
#: ../js/ui/status/network.js:669
#: ../js/ui/status/network.js:663
msgid "Auto Ethernet"
msgstr "Automatické Ethernet"
#: ../js/ui/status/network.js:727
#: ../js/ui/status/network.js:721
msgid "Auto broadband"
msgstr "Automatické širokopásmové"
#: ../js/ui/status/network.js:730
#: ../js/ui/status/network.js:724
msgid "Auto dial-up"
msgstr "Automatické vytáčené"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:859 ../js/ui/status/network.js:1393
#: ../js/ui/status/network.js:853 ../js/ui/status/network.js:1476
#, c-format
msgid "Auto %s"
msgstr "Automatické %s"
#: ../js/ui/status/network.js:861
#: ../js/ui/status/network.js:855
msgid "Auto bluetooth"
msgstr "Automatické Bluetooth"
#: ../js/ui/status/network.js:1395
#: ../js/ui/status/network.js:1478
msgid "Auto wireless"
msgstr "Automatické bezdrátové"
#: ../js/ui/status/network.js:1637
#: ../js/ui/status/network.js:1575
msgid "Enable networking"
msgstr "Povolit síť"
#: ../js/ui/status/network.js:1659
#: ../js/ui/status/network.js:1597
msgid "Wired"
msgstr "Drátová"
#: ../js/ui/status/network.js:1670
#: ../js/ui/status/network.js:1608
msgid "Wireless"
msgstr "Bezdrátová"
#: ../js/ui/status/network.js:1680
#: ../js/ui/status/network.js:1618
msgid "Mobile broadband"
msgstr "Mobilní širokopásmová"
#: ../js/ui/status/network.js:1691
#: ../js/ui/status/network.js:1628
msgid "VPN Connections"
msgstr "Připojení k VPN"
#: ../js/ui/status/network.js:1635
msgid "Network Settings"
msgstr "Nastavení sítě"
#: ../js/ui/status/network.js:1735
#: ../js/ui/status/network.js:1679
msgid "Network Manager"
msgstr "Network Manager"
#: ../js/ui/status/network.js:1809
#: ../js/ui/status/network.js:1769
msgid "Connection failed"
msgstr "Připojení selhalo"
#: ../js/ui/status/network.js:1810
#: ../js/ui/status/network.js:1770
msgid "Activation of network connection failed"
msgstr "Aktivace síťového připojení selhala"
#: ../js/ui/status/network.js:2108
#: ../js/ui/status/network.js:2065
msgid "Networking is disabled"
msgstr "Síť je zakázána"
@ -1680,63 +1621,63 @@ msgstr "Hlasitost"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/unlockDialog.js:178
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "Přihlásit se jako jiný uživatel"
#: ../js/ui/userMenu.js:176
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Přítomen"
#: ../js/ui/userMenu.js:179
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Zaneprázdněn"
#: ../js/ui/userMenu.js:182
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Neviditelný"
#: ../js/ui/userMenu.js:185
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Nepřítomen"
#: ../js/ui/userMenu.js:188
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Nečinný"
#: ../js/ui/userMenu.js:191
msgid "Offline"
msgstr "Odpojen"
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Nedostupný"
#: ../js/ui/userMenu.js:747
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Upozornění"
#: ../js/ui/userMenu.js:755
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Nastavení systému"
#: ../js/ui/userMenu.js:763
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Přepnout uživatele"
#: ../js/ui/userMenu.js:768
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Odhlásit se"
#: ../js/ui/userMenu.js:773
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Uzamknout"
#: ../js/ui/userMenu.js:788
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Nainstalovat aktualizace a restartovat"
#: ../js/ui/userMenu.js:806
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Váš stav v konverzacích byl nastaven na „Zaneprázdněn“"
#: ../js/ui/userMenu.js:807
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1744,15 +1685,15 @@ msgstr ""
"Upozornění jsou nyní vypnuta, včetně zpráv v konverzacích. Váš stav on-line "
"byl změněn tak, aby ostatní věděli, že si jejich zprávy nemusíte přečíst."
#: ../js/ui/viewSelector.js:87
#: ../js/ui/viewSelector.js:85
msgid "Windows"
msgstr "Okna"
#: ../js/ui/viewSelector.js:91
#: ../js/ui/viewSelector.js:89
msgid "Applications"
msgstr "Aplikace"
#: ../js/ui/viewSelector.js:95
#: ../js/ui/viewSelector.js:93
msgid "Search"
msgstr "Hledat"

257
po/es.po
View File

@ -10,15 +10,15 @@ 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: 2012-10-15 23:38+0000\n"
"PO-Revision-Date: 2012-10-16 11:06+0200\n"
"POT-Creation-Date: 2012-11-06 19:11+0000\n"
"PO-Revision-Date: 2012-11-08 12:31+0100\n"
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
"Language-Team: Español <gnome-es-list@gnome.org>\n"
"Language-Team: Español; Castellano <gnome-es-list@gnome.org>\n"
"Language: \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"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Gtranslator 2.91.5\n"
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
@ -37,16 +37,6 @@ msgstr "Sistema"
msgid "Show the message tray"
msgstr "Mostrar la bandeja de mensajes"
#: ../data/50-gnome-shell-system.xml.in.h:3
#| msgid "Show Applications"
msgid "Show all applications"
msgstr "Mostrar todas las aplicaciones"
#: ../data/50-gnome-shell-system.xml.in.h:4
#| msgid "Keybinding to open the application menu"
msgid "Open the application menu"
msgstr "Abrir el menú de la aplicación"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
@ -149,34 +139,34 @@ msgstr ""
"del usuario. El valor aquí es de la GsmPresenceStatus."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr ""
"Mostrar siempre el elemento de menú «Cerrar sesión» en el menú del usuario."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
"user, single-session situations."
msgstr ""
"Esta clave omite la ocultación automática del elemento de menú «Cerrar "
"sesión» en situación de un único usuario o una única sesión."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Show the week date in the calendar"
msgstr "Mostrar la fecha de la semana en el calendario"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Si es cierta, muestra la fecha de semana ISO en el calendario."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "Asociación de teclas para abrir el menú de la aplicación"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "Asociación de teclas para abrir el menú de la aplicación."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#| msgid "Keybinding to open the application menu"
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Asociación de teclas para la vista «Mostrar aplicaciones»"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#| msgid "Keybinding to open the application menu."
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Asociación de teclas para abrir la vista «Mostrar aplicaciones» de la vista "
"de actividades."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "Asociación de teclas cambiar la visibilidad de la bandeja de mensajes"
@ -232,16 +222,17 @@ msgid ""
"used as a placeholder for a guess at the optimal thread count on the system."
msgstr ""
"Establece la tubería GStreamer usada para codificar grabaciones. Sigue la "
"sintaxis usada para gst-launch. La tubería debería tener un sumidero («sink») "
"desconectado donde grabar el vídeo que se está grabando. Generalmente tendrá "
"un punto de origen desconectado; la salida de ese punto se escribirá en el "
"archivo de salida. Sin embargo, la tubería también puede tomar parte en su "
"propia salida; esto se puede usar para enviar la salida a un servidor "
"«icecast» a través de shout2send o similar. Cuando no está establecido o lo "
"está a un valor vacío, se usará la tubería predeterminada. Actualmente es "
"«'vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 "
"threads=%T ! queue ! webmmux» y graba en WEBM usando el códec VP8. Se usa %T "
"como marcador de posición para el número de hilos óptimos en el sistema."
"sintaxis usada para gst-launch. La tubería debería tener un sumidero "
"(«sink») desconectado donde grabar el vídeo que se está grabando. "
"Generalmente tendrá un punto de origen desconectado; la salida de ese punto "
"se escribirá en el archivo de salida. Sin embargo, la tubería también puede "
"tomar parte en su propia salida; esto se puede usar para enviar la salida a "
"un servidor «icecast» a través de shout2send o similar. Cuando no está "
"establecido o lo está a un valor vacío, se usará la tubería predeterminada. "
"Actualmente es «'vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 "
"deadline=1000000 threads=%T ! queue ! webmmux» y graba en WEBM usando el "
"códec VP8. Se usa %T como marcador de posición para el número de hilos "
"óptimos en el sistema."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
@ -308,8 +299,8 @@ msgstr "Ventana de inicio de sesión"
msgid "Power"
msgstr "Energía"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:660 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:775
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Suspender"
@ -317,8 +308,8 @@ msgstr "Suspender"
msgid "Restart"
msgstr "Reiniciar"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:662 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:774
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Apagar"
@ -599,8 +590,8 @@ msgstr "La red inalámbrica requiere autenticación"
#: ../js/ui/components/networkAgent.js:310
#, c-format
msgid ""
"Passwords or encryption keys are required to access the wireless network '%"
"s'."
"Passwords or encryption keys are required to access the wireless network "
"'%s'."
msgstr ""
"Se necesitan contraseñas o claves de cifrado para acceder a la red "
"inalámbrica «%s»."
@ -699,35 +690,35 @@ msgstr "Silenciar"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:952
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Enviado el <b>%A</b> a las <b>%H:%M</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:958
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Enviado el <b>%A</b>, <b>%d de %B</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:963
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Enviado el <b>%A</b>, <b>%d de %B</b> de %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:992
#, c-format
msgid "%s is now known as %s"
msgstr "Ahora %s se llama %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1092
#, c-format
msgid "Invitation to %s"
msgstr "Invitación a %s"
@ -735,42 +726,42 @@ msgstr "Invitación a %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1100
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s le está invitando a unirse a %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1102
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
msgid "Decline"
msgstr "Rechazar"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1103
#: ../js/ui/components/telepathyClient.js:1182
#: ../js/ui/components/telepathyClient.js:1245
msgid "Accept"
msgstr "Aceptar"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1133
#, c-format
msgid "Video call from %s"
msgstr "Videollamada de %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1136
#, c-format
msgid "Call from %s"
msgstr "Llamada de %s"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1141
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Rechazar"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1143
msgid "Answer"
msgstr "Responder"
@ -779,112 +770,112 @@ msgstr "Responder"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1175
#, c-format
msgid "%s is sending you %s"
msgstr "%s le está enviando %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s solicita permiso para ver cuándo está en línea"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1302
msgid "Network error"
msgstr "Error de la red"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1304
msgid "Authentication failed"
msgstr "Falló la autenticación"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1306
msgid "Encryption error"
msgstr "Error de cifrado"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate not provided"
msgstr "Certificado no proporcionado"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate untrusted"
msgstr "No se confía en el certificado"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate expired"
msgstr "Certificado caducado"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate not activated"
msgstr "Certificado no activado"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate hostname mismatch"
msgstr "El nombre del servidor dle certificado no coincide"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate fingerprint mismatch"
msgstr "La huella del certificado no coincide"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1320
msgid "Certificate self-signed"
msgstr "Certificado autofirmado"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1322
msgid "Status is set to offline"
msgstr "El estado está establecido a «desconectado»"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1324
msgid "Encryption is not available"
msgstr "El cifrado no está disponible"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1326
msgid "Certificate is invalid"
msgstr "El certificado no es válido"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection has been refused"
msgstr "Se ha rechazado la conexión"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection can't be established"
msgstr "No se puede establecer la conexión"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been lost"
msgstr "Se ha perdido la conexión"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1334
msgid "This account is already connected to the server"
msgstr "Esta cuenta ya está conectada al servidor"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1336
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"Se ha sustituido la conexión por una nueva conexión usando el mismo recurso"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1338
msgid "The account already exists on the server"
msgstr "La cuenta ya existe en el servidor"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1340
msgid "Server is currently too busy to handle the connection"
msgstr ""
"Actualmente el servidor está muy ocupado intentando gestionar la conexión"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate has been revoked"
msgstr "Se ha revocado el certificado"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"El certificado usa un algoritmo de cifrado inseguro o es criptográficamente "
"débil"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -893,30 +884,30 @@ msgstr ""
"certificado del servidor exceden los límites impuestos por la biblioteca de "
"criptografía"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Internal error"
msgstr "Error interno"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
#, c-format
msgid "Connection to %s failed"
msgstr "Falló la conexión a %s"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1367
msgid "Reconnect"
msgstr "Reconectar"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Edit account"
msgstr "Editar cuenta"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1413
msgid "Unknown reason"
msgstr "Razón desconocida"
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
#: ../js/ui/dash.js:254 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "Mostrar aplicaciones"
@ -1092,23 +1083,23 @@ msgstr "Ver fuente"
msgid "Web Page"
msgstr "Página web"
#: ../js/ui/messageTray.js:1081
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Abrir"
#: ../js/ui/messageTray.js:1088
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Quitar"
#: ../js/ui/messageTray.js:1540
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Bandeja de mensajes"
#: ../js/ui/messageTray.js:2547
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Información del sistema"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Desconocido"
@ -1164,18 +1155,18 @@ msgstr "Introduzca un comando:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#: ../js/ui/screenShield.js:143
#: ../js/ui/screenShield.js:144
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "%d mensaje nuevo"
msgstr[1] "%d mensajes nuevos"
#: ../js/ui/screenShield.js:145
#: ../js/ui/screenShield.js:146
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
@ -1367,7 +1358,8 @@ msgstr "El dispositivo «%s» quiere emparejarse con este equipo"
#: ../js/ui/status/bluetooth.js:379
#, c-format
msgid "Please confirm whether the PIN '%06d' matches the one on the device."
msgstr "Confirme que el PIN mostrado en «%06d» coincide con el del dispositivo."
msgstr ""
"Confirme que el PIN mostrado en «%06d» coincide con el del dispositivo."
#: ../js/ui/status/bluetooth.js:381
msgid "Matches"
@ -1629,59 +1621,59 @@ msgstr "Micrófono"
msgid "Log in as another user"
msgstr "Iniciar sesión como otro usuario"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Disponible"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Ocupado"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Invisible"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Ausente"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Inactivo"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "No disponible"
#: ../js/ui/userMenu.js:740
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Notificaciones"
#: ../js/ui/userMenu.js:748
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Configuración del sistema"
#: ../js/ui/userMenu.js:756
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Cambiar de usuario"
#: ../js/ui/userMenu.js:761
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Cerrar la sesión"
#: ../js/ui/userMenu.js:766
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Bloquear"
#: ../js/ui/userMenu.js:781
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Instalar actualizaciones y reiniciar"
#: ../js/ui/userMenu.js:799
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Su estado del chat se establecerá a «ocupado»"
#: ../js/ui/userMenu.js:800
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1690,15 +1682,15 @@ msgstr ""
"chat. Su estado en línea se ha ajustado para que otros sepan que puede no "
"leer sus mensajes."
#: ../js/ui/viewSelector.js:87
#: ../js/ui/viewSelector.js:85
msgid "Windows"
msgstr "Ventanas"
#: ../js/ui/viewSelector.js:91
#: ../js/ui/viewSelector.js:89
msgid "Applications"
msgstr "Aplicaciones"
#: ../js/ui/viewSelector.js:95
#: ../js/ui/viewSelector.js:93
msgid "Search"
msgstr "Buscar"
@ -1769,7 +1761,7 @@ msgstr ""
msgid "List possible modes"
msgstr "Listar los modos posibles"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "Falló al lanzar «%s»"
@ -2169,8 +2161,8 @@ msgstr "El usuario rechazó el diálogo de autenticación"
#~ "If true and format is either \"12-hour\" or \"24-hour\", display seconds "
#~ "in time."
#~ msgstr ""
#~ "Si es cierta y el formato es «12-horas» o «24-horas», muestra los segundos "
#~ "en la hora."
#~ "Si es cierta y el formato es «12-horas» o «24-horas», muestra los "
#~ "segundos en la hora."
#~ msgid ""
#~ "This key specifies the format used by the panel clock when the format key "
@ -2187,18 +2179,19 @@ msgstr "El usuario rechazó el diálogo de autenticación"
#~ msgid ""
#~ "This key specifies the hour format used by the panel clock. Possible "
#~ "values are \"12-hour\", \"24-hour\", \"unix\" and \"custom\". If set to "
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. 1970-"
#~ "01-01. If set to \"custom\", the clock will display time according to the "
#~ "format specified in the custom_format key. Note that if set to either "
#~ "\"unix\" or \"custom\", the show_date and show_seconds keys are ignored."
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. "
#~ "1970-01-01. If set to \"custom\", the clock will display time according "
#~ "to the format specified in the custom_format key. Note that if set to "
#~ "either \"unix\" or \"custom\", the show_date and show_seconds keys are "
#~ "ignored."
#~ msgstr ""
#~ "Esta clave especifica el formato de la hora especificado por el reloj del "
#~ "panel. Los valores posibles son «12-hour» (12 horas), «24-hour» (24 horas), "
#~ "«unix» y «custom» (personalizado).Si se establece a «unix» el reloj mostrará "
#~ "la hora en segundos desde la época (1 de enero de 1970). Si se establece "
#~ "a «custom» el reloj mostrará la hora según el formato especificado en la "
#~ "clave «custom_format». Note que si se establece a «unix» o «custom» se "
#~ "ignoran las claves «show_date» y «show_seconds»."
#~ "panel. Los valores posibles son «12-hour» (12 horas), «24-hour» (24 "
#~ "horas), «unix» y «custom» (personalizado).Si se establece a «unix» el "
#~ "reloj mostrará la hora en segundos desde la época (1 de enero de 1970). "
#~ "Si se establece a «custom» el reloj mostrará la hora según el formato "
#~ "especificado en la clave «custom_format». Note que si se establece a "
#~ "«unix» o «custom» se ignoran las claves «show_date» y «show_seconds»."
#~ msgid "Clock Format"
#~ msgstr "Formato del reloj"

146
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: 2012-11-16 18:27+0000\n"
"PO-Revision-Date: 2012-11-16 20:40+0300\n"
"POT-Creation-Date: 2012-11-16 18:26+0000\n"
"PO-Revision-Date: 2012-11-16 20:49+0300\n"
"Last-Translator: Mattias Põldaru <mahfiaz@gmail.com>\n"
"Language-Team: Estonian <>\n"
"Language: et\n"
@ -37,15 +37,6 @@ msgstr "Arvuti"
msgid "Show the message tray"
msgstr "Teateala näitamine"
msgid "Focus the active notification"
msgstr "Aktiivse märguande fokuseerimine"
msgid "Show all applications"
msgstr "Kõigi rakenduste kuvamine"
msgid "Open the application menu"
msgstr "Rakenduste menüü avamine"
msgid "GNOME Shell"
msgstr "GNOME Shell"
@ -147,25 +138,12 @@ msgstr "Rakenduste menüü avamise kiirklahv"
msgid "Keybinding to open the application menu."
msgstr "Kiirklahv rakenduste menüü avamiseks."
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "\"Rakenduste vaate\" avamise kiirklahv"
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "\"Rakenduste vaate\" avamise kiirklahv tegevuste ülevaates."
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "Teateala nähtavuse muutmise kiirklahv"
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "Kiirklahv teateala nähtavuse muutmiseks."
msgid "Keybinding to focus the active notification"
msgstr "Aktiivse teate fokuseerimise kiirklahv"
msgid "Keybinding to focus the active notification."
msgstr "Aktiivse teate fokuseerimise kiirklahv."
msgid "Keybinding to toggle the screen recorder"
msgstr "Erkaanilindistaja lülitamise kiirklahv"
@ -227,34 +205,6 @@ msgstr ""
"konteinervormingusse salvestades tuleks ka sellele vormingule vastav laiend "
"määrata."
msgid "Attach modal dialog to the parent window"
msgstr "Modaaldialoog kuulub vanemakna juurde"
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"See võti on ülimuslik võtme org.gnome.mutter suhtes, kui kasutatakse GNOME "
"Shelli."
msgid "Arrangement of buttons on the titlebar"
msgstr "Nuppude järjekord tiitliribal"
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"See võti on ülimuslik võtme org.gnome.desktop.wm.preferences suhtes, kui "
"kasutatakse GNOME Shelli."
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Akende lohistamisel ekraani serva lubatakse serva paigutamine"
msgid "Workspaces are managed dynamically"
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:"
@ -285,9 +235,6 @@ msgctxt "button"
msgid "Sign In"
msgstr "Logi sisse"
msgid "Next"
msgstr "Järgmine"
#. 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)
@ -600,27 +547,24 @@ msgstr "Heli peale"
msgid "Mute"
msgstr "Heli maha"
#. Translators: this is a time format string followed by the word "Yesterday". i.e. "14:30 on Yesterday"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#, no-c-format
msgid "<b>%H:%M</b> on Yesterday"
msgstr "Eile <b>%H:%M</b>"
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Saadeti: <b>%a</b>, <b>%X</b>"
#. Translators: this is a time format string followed by a week day name. i.e. "14:30 on Monday
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#, no-c-format
msgid "<b>%H:%M</b> on <b>%A</b>"
msgstr "<b>%H:%M</b>, <b>%A</b>"
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Saadeti: <b>%a</b>, <b>d. %B</b>"
#. Translators: this is a time format in the style of "14:30 on Wednesday, May 25",
#. shown when you get a chat message in the same year
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#, no-c-format
msgid "<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>"
msgstr "<b>%H:%M</b>, <b>%A</b>, <b>%d. %B</b>"
#. Translators: this is a time format in the style of "14:30 on Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year
#, no-c-format
msgid "<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>, %Y"
msgstr "<b>%H:%M</b>, <b>%A</b>, <b>%d. %B</b> %Y"
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Saadeti: <b>%a</b>, <b>d. %B</b>, %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
@ -657,6 +601,9 @@ msgstr "%s tahab alustada videokõnet"
msgid "Call from %s"
msgstr "%s helistab"
msgid "Reject"
msgstr "Lükka tagasi"
#. translators: this is a button label (verb), not a noun
msgid "Answer"
msgstr "Vasta"
@ -964,11 +911,8 @@ msgstr "Ülemine riba"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
msgid "Enter a Command"
msgstr "Palun sisesta käsk"
msgid "Close"
msgstr "Sulge"
msgid "Please enter a command:"
msgstr "Palun sisesta käsk:"
#. Translators: This is a time format for a date in
#. long format
@ -1081,6 +1025,16 @@ msgstr "ühendumine..."
msgid "Send Files..."
msgstr "Failide saatmine..."
msgid "Browse Files..."
msgstr "Failide sirvimine..."
msgid "Error browsing device"
msgstr "Viga seadme sirvimisel"
#, c-format
msgid "The requested device cannot be browsed, error is '%s'"
msgstr "Küsitud seadet pole võimalik sirvida, viga on '%s'"
msgid "Keyboard Settings"
msgstr "Klaviatuurisätted"
@ -1104,9 +1058,6 @@ msgstr "Luba alati"
msgid "Grant this time only"
msgstr "Luba ainult seekord"
msgid "Reject"
msgstr "Lükka tagasi"
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Paardumise kinnitus seadmele %s"
@ -1217,6 +1168,9 @@ msgstr "Juhtmeta"
msgid "Mobile broadband"
msgstr "Mobiiliühendus"
msgid "VPN Connections"
msgstr "VPN-ühendused"
msgid "Network Settings"
msgstr "Võrgusätted"
@ -1334,20 +1288,20 @@ msgstr "Eemal"
msgid "Idle"
msgstr "Jõude"
msgid "Offline"
msgstr "Ühendamata"
msgid "Unavailable"
msgstr "Pole saadaval"
msgid "Notifications"
msgstr "Märguanded"
msgid "Settings"
msgstr "Sätted"
msgid "System Settings"
msgstr "Süsteemi sätted"
msgid "Switch User"
msgstr "Vaheta kasutajat"
msgid "Log Out"
msgstr "Logi välja"
msgstr "Väljalogimine"
msgid "Lock"
msgstr "Lukusta"
@ -1446,6 +1400,27 @@ msgstr "Vaikimisi"
msgid "Authentication dialog was dismissed by the user"
msgstr "Kasutaja katkestas autentimisdialoogi"
#, fuzzy
#~ msgid "Show all applications"
#~ msgstr "Rakenduste kuvamine"
#, fuzzy
#~ msgid "Open the application menu"
#~ msgstr "Rakenduste menüü avamise kiirklahv"
#, fuzzy
#~ msgid "Keybinding to open the \"Show Applications\" view"
#~ msgstr "Rakenduste menüü avamise kiirklahv"
#, fuzzy
#~ msgid ""
#~ "Keybinding to open the \"Show Applications\" view of the Activities "
#~ "Overview."
#~ msgstr "Kiirklahv rakenduste menüü avamiseks."
#~ msgid "Switch Session"
#~ msgstr "Vaheta seanssi"
#~ msgid "disabled OpenSearch providers"
#~ msgstr "keelatud OpenSearch pakkujad"
@ -1461,6 +1436,9 @@ msgstr "Kasutaja katkestas autentimisdialoogi"
#~ msgid "If true, display date in the clock, in addition to time."
#~ msgstr "Kui määratud, siis kuvatakse kellaaja kõrval ka kuupäeva."
#~ msgid "Offline"
#~ msgstr "Ühendamata"
#~ msgid "CONTACTS"
#~ msgstr "KONTAKTID"

257
po/fr.po
View File

@ -17,8 +17,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: 2012-09-25 00:06+0000\n"
"PO-Revision-Date: 2012-10-04 15:34+0200\n"
"POT-Creation-Date: 2012-10-31 16:48+0000\n"
"PO-Revision-Date: 2013-02-08 17:20+0100\n"
"Last-Translator: Alexandre Franke <alexandre.franke@gmail.com>\n"
"Language-Team: GNOME French Team <gnomefr@traduc.org>\n"
"Language: \n"
@ -148,54 +148,68 @@ msgstr ""
"GsmPresenceStatus."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr ""
"Toujours afficher l'élément « Se déconnecter » dans le menu utilisateur."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
"user, single-session situations."
msgstr ""
"Cette clé affiche l'élément « Se déconnecter » du menu utilisateur "
"normalement caché automatiquement dans le cas d'une session et d'un "
"utilisateur uniques."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Show the week date in the calendar"
msgstr "Afficher la numérotation des semaines dans le calendrier"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Si vrai, afficher le numéro de semaine ISO dans le calendrier."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "Combinaison de touches pour ouvrir le menu de l'application"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "Combinaison de touches pour ouvrir le menu de l'application."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr ""
"Combinaison de touches pour basculer la visibilité du tiroir de messagerie"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr ""
"Combinaison de touches pour basculer la visibilité du tiroir de messagerie."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "Combinaison de touches pour basculer l'enregistreur d'écran"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr ""
"Combinaison de touches pour démarrer/arrêter l'enregistreur d'écran intégré."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "Le clavier utilisé"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "Le type de clavier utilisé."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr ""
"Nombre d'images par seconde pour l'enregistrement des animations d'écran."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -203,11 +217,11 @@ msgstr ""
"Le nombre d'images par seconde des animations d'écran enregistrées par "
"l'outil idoine de GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "Le pipeline GStreamer utilisé pour coder l'animation d'écran"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -235,11 +249,11 @@ msgstr ""
"comme paramètre pour une supposition quant au nombre optimal de threads à "
"utiliser sur le système."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "Extension de fichier à utiliser pour enregistrer l'animation d'écran"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -266,11 +280,11 @@ msgstr ""
"Sélectionnez une extension à configurer en utilisant la boîte combinée ci-"
"dessus."
#: ../js/gdm/loginDialog.js:527
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "Session..."
#: ../js/gdm/loginDialog.js:675
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "Connexion"
@ -278,23 +292,23 @@ msgstr "Connexion"
#. 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.
#: ../js/gdm/loginDialog.js:742
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "Absent de la liste ?"
#: ../js/gdm/loginDialog.js:895 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:166
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "Annuler"
#: ../js/gdm/loginDialog.js:900
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "Se connecter"
#: ../js/gdm/loginDialog.js:1239
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "Fenêtre de connexion"
@ -303,8 +317,8 @@ msgstr "Fenêtre de connexion"
msgid "Power"
msgstr "Énergie"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:663 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:778
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Mettre en veille"
@ -312,8 +326,8 @@ msgstr "Mettre en veille"
msgid "Restart"
msgstr "Redémarrer"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:665 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:777
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Éteindre"
@ -364,7 +378,7 @@ msgstr "PARAMÈTRES"
msgid "New Window"
msgstr "Nouvelle fenêtre"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "Enlever des favoris"
@ -551,16 +565,16 @@ msgstr "Cette semaine"
msgid "Next week"
msgstr "La semaine prochaine"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "Périphériques amovibles"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "Ouvrir avec %s"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "Éjecter"
@ -719,35 +733,35 @@ msgstr "Muet"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Envoyé <b>%A</b> à <b>%X</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Envoyé le <b>%A %-d %B</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Envoyé le <b>%A %-d %B %Y</b>"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:990
#, c-format
msgid "%s is now known as %s"
msgstr "%s est maintenant connu sous le nom de %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "Invitation vers %s"
@ -755,42 +769,42 @@ msgstr "Invitation vers %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s vous invite à rejoindre %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "Refuser"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "Accepter"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "Appel vidéo de %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "Appel provenant de %s"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Refuser"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "Répondre"
@ -799,112 +813,112 @@ msgstr "Répondre"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "%s vous envoie %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s aimerait être autorisé à savoir lorsque vous êtes en ligne"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "Erreur réseau"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "L'authentification a échoué"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "Erreur de chiffrement"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "Certificat non fourni"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "Certificat non validé"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "Certificat expiré"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "Certificat non activé"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "Le nom de l'hôte du certificat ne correspond pas"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "L'empreinte du certificat ne correspond pas"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "Certificat auto-signé"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "Le statut est hors ligne"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "Chiffrement non disponible"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "Certificat non valide"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "La connexion a été refusée"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "La connexion ne peut pas être établie"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "La connexion a été perdue"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "Ce compte est déjà connectée au serveur"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"La connexion a été remplacée par une nouvelle connexion utilisant la même "
"ressource"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "Ce compte existe déjà sur le serveur"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "Le serveur est actuellement trop chargé pour traiter la connexion"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "Le certificat a été révoqué"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Le certificat utilise un algorithme de chiffrement douteux, ou est faible "
"cryptographiquement"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -912,30 +926,30 @@ msgstr ""
"La longueur du certificat du serveur, ou la taille de sa chaîne de "
"certification, dépasse les limites de la bibliothèque de cryptographie"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "Erreur interne"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "La connexion à %s a échoué"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "Se reconnecter"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "Modifier le compte"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "Raison inconnue"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "Montrer les applications"
@ -943,7 +957,7 @@ msgstr "Montrer les applications"
msgid "Date and Time Settings"
msgstr "Paramètres de date et heure"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "Ouvrir l'agenda"
@ -956,7 +970,7 @@ msgstr "Ouvrir l'agenda"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A %e %B %Y"
@ -1063,11 +1077,11 @@ msgstr "Installer"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Télécharger et installer « %s » à partir de extensions.gnome.org ?"
#: ../js/ui/keyboard.js:327
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "tiroir de messagerie"
#: ../js/ui/keyboard.js:561 ../js/ui/status/keyboard.js:195
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "Clavier"
@ -1120,23 +1134,23 @@ msgstr "Afficher la source"
msgid "Web Page"
msgstr "Page Web"
#: ../js/ui/messageTray.js:1080
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Ouvrir"
#: ../js/ui/messageTray.js:1087
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Enlever"
#: ../js/ui/messageTray.js:2055
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Tiroir de messagerie"
#: ../js/ui/messageTray.js:2511
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Informations du système"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Inconnu"
@ -1192,7 +1206,7 @@ msgstr "Veuillez saisir une commande :"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A %d %B"
@ -1242,7 +1256,7 @@ msgstr "Mot de passe"
msgid "Remember Password"
msgstr "Se souvenir du mot de passe"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:169
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "Déverrouiller"
@ -1360,7 +1374,7 @@ msgstr "Paramètres du clavier"
msgid "Mouse Settings"
msgstr "Paramètres de la souris"
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:236
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "Paramètres du son"
@ -1649,7 +1663,7 @@ msgid "Unknown"
msgstr "Inconnu"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:223
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "Volume"
@ -1657,67 +1671,63 @@ msgstr "Volume"
msgid "Microphone"
msgstr "Microphone"
#: ../js/ui/unlockDialog.js:176
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "Se connecter en tant qu'un autre utilisateur"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Disponible"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Occupé"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Invisible"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Absent"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Inactif"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Non disponible"
#: ../js/ui/userMenu.js:618 ../js/ui/userMenu.js:759
msgid "Switch User"
msgstr "Changer d'utilisateur"
#: ../js/ui/userMenu.js:619
msgid "Switch Session"
msgstr "Changer de session"
#: ../js/ui/userMenu.js:743
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Notifications"
#: ../js/ui/userMenu.js:751
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Paramètres système"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Changer d'utilisateur"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Fermer la session"
#: ../js/ui/userMenu.js:769
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Verrouiller"
#: ../js/ui/userMenu.js:784
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Installer les mises à jour et redémarrer"
#: ../js/ui/userMenu.js:802
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Votre statut pour les discussions sera défini à occupé"
#: ../js/ui/userMenu.js:803
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1738,7 +1748,7 @@ msgstr "Applications"
msgid "Search"
msgstr "Recherche"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1747,12 +1757,12 @@ msgstr ""
"Désolé, aucune sagesse pour vous aujourd'hui :\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "L'Oracle %s déclare"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "Votre œuf de Pâques favori"
@ -1787,24 +1797,24 @@ msgstr[1] "%u entrées"
msgid "System Sounds"
msgstr "Sons système"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "Affiche la version"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "Mode utilisé par GDM pour l'écran de connexion"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr ""
"Utiliser un mode particulier, par ex. « gdm » pour l'écran de connexion"
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "Lister les modes possibles"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "Impossible de lancer « %s »"
@ -1828,3 +1838,6 @@ msgstr "Défaut"
#: ../src/shell-polkit-authentication-agent.c:343
msgid "Authentication dialog was dismissed by the user"
msgstr "La fenêtre d'authentification a été écartée par l'utilisateur"
#~ msgid "Switch Session"
#~ msgstr "Changer de session"

464
po/gl.po

File diff suppressed because it is too large Load Diff

377
po/gu.po
View File

@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: gu\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug."
"cgi?product=gnome-shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-09-18 04:20+0000\n"
"PO-Revision-Date: 2012-09-18 16:59+0530\n"
"POT-Creation-Date: 2012-11-04 19:00+0000\n"
"PO-Revision-Date: 2012-11-05 12:23+0530\n"
"Last-Translator: \n"
"Language-Team: gu_IN <kde-i18n-doc@kde.org>\n"
"Language: \n"
@ -20,6 +20,22 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
"X-Generator: Lokalize 1.0\n"
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
msgid "Screenshots"
msgstr "સ્ક્રીનશોટ"
#: ../data/50-gnome-shell-screenshot.xml.in.h:2
msgid "Record a screencast"
msgstr "સ્ક્રીનકાસ્ટ રેકોર્ડ કરો"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
msgstr "સિસ્ટમ"
#: ../data/50-gnome-shell-system.xml.in.h:2
msgid "Show the message tray"
msgstr "સંદેશો ટ્રેને બતાવો"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME શેલ"
@ -45,7 +61,7 @@ msgstr "Alt-F2 માંથી ડેવલપર અને ટેસ્ટર
msgid ""
"Allows access to internal debugging and monitoring tools using the Alt-F2 "
"dialog."
msgstr ""
msgstr "Alt-F2 સંવાદની મદદથી આંતરિક ડિબગીંગ અને મોનિટરીંગ સાધનોને વાપરવા પરવાનગી આપે છે."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
msgid "Uuids of extensions to enable"
@ -58,10 +74,13 @@ msgid ""
"list. You can also manipulate this list with the EnableExtension and "
"DisableExtension DBus methods on org.gnome.Shell."
msgstr ""
"GNOME Shell ઍક્સટેન્શન પાસે uuid ગુણધર્મ છે; આ કી ઍક્સટેન્શનની યાદી કરે છે કે જેને લાવેલ "
"હોવુ જોઇએ. કોઇપણ ઍક્સટેન્શન કે જેને આ યાદીમાં લાવવાની જરૂર છે. તમે પણ org.gnome.Shell પર "
"EnableExtension અને DisableExtension DBus પદ્દતિઓ સાથે આ યાદીને કુશળતાપૂર્વક વાપરી શકો છો."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
msgid "Whether to collect stats about applications usage"
msgstr ""
msgstr "શું કાર્યક્રમ વપરાશ વિશે આંકડા એકત્ર કરવા જોઇએ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:6
msgid ""
@ -70,6 +89,10 @@ msgid ""
"want to disable this for privacy reasons. Please note that doing so won't "
"remove already saved data."
msgstr ""
"શેલ સામાન્ય રીતે મોટાભાગનાં એકને હાજર રાખવા માટે ક્રમમાં સક્રિય કાર્યક્રમોને મોનિટર કરવામાં "
"આવે છે (દા.ત. લૉન્ચર). જ્યારે આ માહિતીને ખાનગી રાખવામાં આવશે, તમે ખાનગી કારણો માટે આને "
"નિષ્ક્રિય કરવા માંગી શકો છો. મહેરબાની કરીને આવુ કરવાનું નોંધો તેથી પહેલેથી સંગ્રહેલ "
"માહિતીને દૂર કરાતુ નથી."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
msgid "List of desktop file IDs for favorite applications"
@ -79,7 +102,7 @@ msgstr "પસંદીદા કાર્યક્રમો માટે ડે
msgid ""
"The applications corresponding to these identifiers will be displayed in the "
"favorites area."
msgstr ""
msgstr "કાર્યક્રમો આ ઓળખકર્તાઓ સાથે સંકળાયેલ છે તે પસંદીદા વિસ્તારમાં દેખાશે."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
msgid "History for command (Alt-F2) dialog"
@ -94,75 +117,87 @@ 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 ઍન્યુમરેશનમાંથી છે."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
msgid ""
"Internally used to store the last session presence status for the user. The "
"value here is from the GsmPresenceStatus enumeration."
msgstr ""
"વપરાશકર્તા માટે છેલ્લી સત્રની હાજર પરિસ્થિતિને સંગ્રહવા આંતરિક રીતે વાપરેલ છે. કિંમત અહિંયા "
"GsmPresenceStatus ઍન્યુમરેશનમાંથી છે."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "હંમેશા વપરાશકર્તા મેનુમાં 'બહાર નીકળો' મેનુવસ્તુને બતાવે છે."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
msgstr "કૅલેન્ડરમાં અઠવાડિયા તારીખને બતાવો"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "જો true હોય તો, કૅલેન્ડરમાં ISO અઠવાડિયાની તારીખને દર્શાવો."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "કાર્યક્રમ મેનુને ખોલવા માટે કિબાઇન્ડીંગ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "કાર્યક્રમ મેનુને ખોલવા માટે કિબાઇન્ડીંગ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#, fuzzy
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#| msgid "Keybinding to open the application menu"
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "કાર્યક્રમ મેનુને ખોલવા માટે કિબાઇન્ડીંગ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#, fuzzy
#| msgid "Keybinding to open the application menu"
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "કાર્યક્રમ મેનુને ખોલવા માટે કિબાઇન્ડીંગ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#, fuzzy
#| msgid "Keybinding to open the application menu"
msgid "Keybinding to toggle the screen recorder"
msgstr "કાર્યક્રમ મેનુને ખોલવા માટે કિબાઇન્ડીંગ"
msgstr "સંદેશા ટ્રેની દૃશ્યતાને ટૉગલ કરવા માટે કબાઇન્ડીંગ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#| msgid "Keybinding to open the application menu."
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "સંદેશા ટ્રેની દૃશ્યતાને ટૉગલ કરવા માટે કીબાઇન્ડીંગ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "સ્ક્રીન રેકોર્ડરને ટૉગલ કરવા માટે કીબાઇન્ડીંગ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "બિલ્ટઇન સ્ક્રીન રેકોર્ડરને શરૂ/બંધ કરવા માટે કfબાઇન્ડીંગ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "ક્યુ કિબોર્ડ વાપરવુ છે"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "વાપરવા માટે કિબોર્ડનો પ્રકાર."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "રેકોર્ડીંગ સ્ક્રીનકાસ્ટ માટે વાપરેલ ફ્રેમરેટ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
msgstr ""
"પરિણામી સ્ક્રીનકાસ્ટની framerate એ દરેક સેકંડે ફ્રેમમાં GNOME Shell નાં સ્ક્રીનકાસ્ટ "
"રેકોર્ડર દ્દારા અહેવાલ થયેલ છે."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "સ્ક્રીનકાસ્ટને એનકોડ કરવા માટે વાપરેલ gstreamer પાઇપલાઇન"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -176,17 +211,28 @@ msgid ""
"threads=%T ! queue ! webmmux' and records to WEBM using the VP8 codec. %T is "
"used as a placeholder for a guess at the optimal thread count on the system."
msgstr ""
"રેકોર્ડીંગ ને એનકોડ કરવા માટે વાપરેલ GStreamer પાઇપલાઇનને સુયોજિત કરે છે. તે gst-launch "
"માટે વાપરેલ બંધારણને અનુસરે છે. પાઇપલાઇન પાસે બિનજોડાયેલ સીંક પેડ હોય છે જ્યાં રેકોર્ડ થયેલ "
"વિડિયો રેકોર્ડ થયેલ છે. સામાન્ય રીતે તેમની પાસે બિનજોડાયેલ સ્ત્રોત પેડ હશે; તે પેડમાંથી "
"આઉટપુટ એ આઉટપુટ ફાઇલમાં લખાયેલ હશે. છતાંપણ પાઇપલાઇન પણ તેનાં પોતાના આઉટપુટની સંભાળ લઇ શકે "
"છે - આ shout2send મારફતે અથવા તેનાં જેવા મારફતે icecast સર્વરમાં આઉટપુટને મોકલવા વાપરી "
"શકાય છે. જ્યારે ખાલી ફાઇલને સુયોજિત અથવા અસુયોજિત કરો, મૂળભૂત પાઇપલાઇન વાપરેલ હે. આ હાલમાં "
"'vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 "
"threads=%T ! queue ! webmmux' છે અને VP8 કોડેકની મદદતી WEBM માં રેકોર્ડ થાય છે. %T એ સિસ્ટમ "
"પર ઓપ્ટીમલ થ્રેડ ગણતરી પર ધારવા માટે પ્લેસહોલ્ડરને વાપરેલ છે."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "સ્ક્રીનકાસ્ટને સંગ્રહ કરવા માટે વાપરેલ ફાઇલ ઍક્સટેન્શન"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
"a different container format."
msgstr ""
"રેકોર્ડ થયેલ સ્ક્રીનકાસ્ટ માટે ફાઇલનામ વર્તમાન તારીખ પર આધારિત અનન્ય ફાઇલનામ હશે, અને આ "
"ઍક્સટેન્શનને વાપરો. તેને બદલેલ હોવુ જોઇએ જ્યારે વિવિધ પાત્ર બંધારણમાં રેકોર્ડ કરી રહ્યા છે."
#: ../js/extensionPrefs/main.js:124
#, c-format
@ -201,11 +247,11 @@ msgstr "ઍક્સટેન્શન"
msgid "Select an extension to configure using the combobox above."
msgstr "ઉપર કોમ્બોબોક્સની મદદથી રૂપરેખાંકિત કરવા માટે ઍક્સટેન્શનને પસંદ કરો."
#: ../js/gdm/loginDialog.js:526
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "સત્ર..."
#: ../js/gdm/loginDialog.js:675
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "પ્રવેશો"
@ -213,47 +259,56 @@ msgstr "પ્રવેશો"
#. 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.
#: ../js/gdm/loginDialog.js:742
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "શું યાદી થયેલ નથી?"
#: ../js/gdm/loginDialog.js:895 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:137
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "રદ કરો"
#: ../js/gdm/loginDialog.js:900
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "પ્રવેશો"
#: ../js/gdm/loginDialog.js:1239
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "પ્રવેશ વિન્ડો"
#: ../js/gdm/powerMenu.js:88 ../js/ui/userMenu.js:657 ../js/ui/userMenu.js:661
#: ../js/ui/userMenu.js:772
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:35
msgid "Power"
msgstr "પાવર"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "અટકાવો"
#: ../js/gdm/powerMenu.js:93
#: ../js/gdm/powerMenu.js:94
msgid "Restart"
msgstr "પુન:શરૂ કરો"
#: ../js/gdm/powerMenu.js:98 ../js/ui/userMenu.js:659 ../js/ui/userMenu.js:661
#: ../js/ui/userMenu.js:771
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "પાવર બંધ"
#: ../js/gdm/util.js:148
msgid "Authentication error"
msgstr "સત્તાધિકરણ ભૂલ"
#. Translators: this message is shown below the password entry field
#. to indicate the user can swipe their finger instead
#: ../js/gdm/util.js:247
#: ../js/gdm/util.js:265
msgid "(or swipe finger)"
msgstr "(અથવા સ્વાઇપ આંગળી)"
#: ../js/gdm/util.js:272
#: ../js/gdm/util.js:290
#, c-format
msgid "(e.g., user or %s)"
msgstr "(દા.ત., વપરાશકર્તા અથવા %s)"
@ -290,7 +345,7 @@ msgstr "SETTINGS"
msgid "New Window"
msgstr "નવી વિન્ડો"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "પસંદીદાઓ માંથી દૂર કરો"
@ -454,16 +509,16 @@ msgstr "આ અઠવાડિયે"
msgid "Next week"
msgstr "આગળનું અઠવાડિયું"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "દૂર કરી શકાય તેવા ઉપકરણો"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "%s સાથે ખોલો"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "રદ કરો"
@ -618,35 +673,35 @@ msgstr "મૂંગુ"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:952
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "<b>%A</b> પર <b>%X</b> અહિંયા મોકલેલ છે"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:958
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "<b>%A</b> પર મોકલેલ છે, <b>%B %d</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:963
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "<b>%A</b> પર મોકલેલ છે, <b>%B %d</b>, %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:992
#, c-format
msgid "%s is now known as %s"
msgstr "%s એ હવે %s તરીકે જાણીતુ છે"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1092
#, c-format
msgid "Invitation to %s"
msgstr "%s માં આમંત્રણ"
@ -654,42 +709,42 @@ msgstr "%s માં આમંત્રણ"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1100
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s એ તમને %s માં જોડાવા માટે આમંત્રણ આપી રહ્યા છે"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1102
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
msgid "Decline"
msgstr "ના પાડવી"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1103
#: ../js/ui/components/telepathyClient.js:1182
#: ../js/ui/components/telepathyClient.js:1245
msgid "Accept"
msgstr "સ્વીકારો"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1133
#, c-format
msgid "Video call from %s"
msgstr "%s માંથી વિડીયો કોલ"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1136
#, c-format
msgid "Call from %s"
msgstr "%s માંથી કોલ"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1141
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "રદ કરો"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1143
msgid "Answer"
msgstr "જવાબ"
@ -698,136 +753,137 @@ msgstr "જવાબ"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1175
#, c-format
msgid "%s is sending you %s"
msgstr "%s એ %s માં મોકલી રહ્યા છે"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s ને જોવા માટે પરવાનગી આપવાનું ગમે થે જ્યારે તમે ઓનલાઇન હોય"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1302
msgid "Network error"
msgstr "નેટવર્ક ભૂલ"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1304
msgid "Authentication failed"
msgstr "સત્તાધિકરણ નિષ્ક્રિય"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1306
msgid "Encryption error"
msgstr "એનક્રિપ્શન ભૂલ"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate not provided"
msgstr "પ્રમાણપત્ર પૂરુ પાડેલ નથી"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate untrusted"
msgstr "પ્રમાણપત્ર વિશ્ર્વાસપાત્ર નથી"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate expired"
msgstr "પ્રમાણપત્ર નિવૃત્ત થયેલ છે"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate not activated"
msgstr "પ્રમાણપત્ર સક્રિય થયેલ નથી"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate hostname mismatch"
msgstr "પ્રમાણપત્ર યજમાનનામ બંધબેસતુ નથી"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate fingerprint mismatch"
msgstr "પ્રમાણપજ્ઞ ફિંગરપ્રિન્ટ બંધબેસતુ નથી"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1320
msgid "Certificate self-signed"
msgstr "જાતે હસ્તાક્ષર થયેલ પ્રમાણપત્ર"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1322
msgid "Status is set to offline"
msgstr "સ્થિતિ ઓફલાઇન તરીકે સુયોજિત છે"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1324
msgid "Encryption is not available"
msgstr "એનક્રિપ્શન ઉપલબ્ધ નથી"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1326
msgid "Certificate is invalid"
msgstr "પ્રમાણપત્ર અમાન્ય છે"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection has been refused"
msgstr "જોડાણને નામંજૂર કરી દેવામાં આવ્યુ છે"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection can't be established"
msgstr "જોડાણ સ્થાપિત કરી શકાતુ નથી"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been lost"
msgstr "જોડાણ ખોવાઈ ગયેલ છે"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1334
msgid "This account is already connected to the server"
msgstr "આ ખાતુ પહેલેથી જ સર્વર સાથે જોડાયેલ છે"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1336
msgid "Connection has been replaced by a new connection using the same resource"
msgstr "સરખા સ્ત્રોતની મદદથી જોડાણને નવાં જોડાણ દ્દારા બદલી દેવામાં આવ્યુ છે"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1338
msgid "The account already exists on the server"
msgstr "ખાતુ પહેલેથી સર્વર પર અસ્તિત્વ ધરાવે છે"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1340
msgid "Server is currently too busy to handle the connection"
msgstr "સર્વર એ જોડાણને સંચાલિત કરવા માટે હાલમાં વ્યસ્ત છે"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate has been revoked"
msgstr "પ્રમાણપત્રને રદ કરી દેવામાં આવ્યુ છે"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1344
msgid "Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
msgstr "પ્રમાણપત્ર અસુરક્ષિત સાઇફર અલ્ગોરિધમને વાપરે છે અથવા ક્રિપ્ટોગ્રાફિકલી નબળુ છે"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
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:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Internal error"
msgstr "આંતરિક ભૂલ"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
#, c-format
msgid "Connection to %s failed"
msgstr "%s માટે જોડાણ નિષ્ફળ"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1367
msgid "Reconnect"
msgstr "પુન:જોડાવો"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Edit account"
msgstr "ખાતામાં ફેરફાર કરો"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1413
msgid "Unknown reason"
msgstr "અજ્ઞાત કારણ"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#| msgid "Applications"
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "કાર્યક્રમો બતાવો"
@ -835,14 +891,14 @@ msgstr "કાર્યક્રમો બતાવો"
msgid "Date and Time Settings"
msgstr "તારીખ અને સમય સુયોજનો"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "કૅલેન્ડરને ખોલો"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A %B %e, %Y"
@ -859,8 +915,7 @@ msgstr "બહાર નીકળો"
#: ../js/ui/endSessionDialog.js:63
msgid "Click Log Out to quit these applications and log out of the system."
msgstr ""
"આ કાર્યક્રમોને બહાર નીકળવા માટે બહાર નીકળો પર ક્લિક કરો અને સિસ્ટમમાંથી બહાર નીકળો."
msgstr "આ કાર્યક્રમોને બહાર નીકળવા માટે બહાર નીકળો પર ક્લિક કરો અને સિસ્ટમમાંથી બહાર નીકળો."
#: ../js/ui/endSessionDialog.js:65
#, c-format
@ -892,8 +947,7 @@ msgstr "પાવર બંધ"
#: ../js/ui/endSessionDialog.js:82
msgid "Click Power Off to quit these applications and power off the system."
msgstr ""
"આ કાર્યક્રમોને બહાર નીકાળવા માટે પાવર બંધ કરો પર ક્લિક કરો અને સિસ્ટમનો પાવર બંધ કરો"
msgstr "આ કાર્યક્રમોને બહાર નીકાળવા માટે પાવર બંધ કરો પર ક્લિક કરો અને સિસ્ટમનો પાવર બંધ કરો"
#: ../js/ui/endSessionDialog.js:84
#, c-format
@ -923,8 +977,7 @@ msgstr "પુન:શરૂ કરો"
#: ../js/ui/endSessionDialog.js:99
msgid "Click Restart to quit these applications and restart the system."
msgstr ""
"આ કાર્યક્રમોમાંથી બહાર નીકળવા માટે પુન:શરૂ કરો પર ક્લિક કરો અને સિસ્ટમને પુન:શરૂ કરો."
msgstr "આ કાર્યક્રમોમાંથી બહાર નીકળવા માટે પુન:શરૂ કરો પર ક્લિક કરો અને સિસ્ટમને પુન:શરૂ કરો."
#: ../js/ui/endSessionDialog.js:101
#, c-format
@ -946,11 +999,11 @@ msgstr "સ્થાપિત કરો"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "extensions.gnome.org માંથી '%s' ને સ્થાપિત અને ડાઉનલોડ કરો?"
#: ../js/ui/keyboard.js:327
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "ટ્રે"
#: ../js/ui/keyboard.js:561 ../js/ui/status/keyboard.js:146
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "કિબોર્ડ"
@ -1003,23 +1056,23 @@ msgstr "સ્ત્રોત દર્શાવો"
msgid "Web Page"
msgstr "વેબ પાનું"
#: ../js/ui/messageTray.js:1080
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "ખોલો"
#: ../js/ui/messageTray.js:1087
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "દૂર કરો"
#: ../js/ui/messageTray.js:2041
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "સંદેશો ટ્રે"
#: ../js/ui/messageTray.js:2483
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "સિસ્ટમ જાણકારી"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "અજ્ઞાત"
@ -1075,22 +1128,19 @@ msgstr "મહેરબાની કરીને આદેશને દાખલ
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:78
#| msgctxt "calendar heading"
#| msgid "%A, %B %d"
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %B %d"
#: ../js/ui/screenShield.js:143
#: ../js/ui/screenShield.js:144
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "%d નવો સંદેશો"
msgstr[1] "%d નવા સંદેશા"
#: ../js/ui/screenShield.js:145
#: ../js/ui/screenShield.js:146
#, c-format
#| msgid "Notifications"
msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "%d નવી સૂચના"
@ -1101,7 +1151,6 @@ msgid "Searching..."
msgstr "શોધી રહ્યા છે..."
#: ../js/ui/searchDisplay.js:323
#| msgid "No matching results."
msgid "No results."
msgstr "પરિણામો નથી."
@ -1122,16 +1171,14 @@ msgid "Hide Text"
msgstr "લખાણ છુપાડો"
#: ../js/ui/shellMountOperation.js:368
#| msgid "Password:"
msgid "Password"
msgstr "પાસવર્ડ"
#: ../js/ui/shellMountOperation.js:389
#| msgid "Remember Passphrase"
msgid "Remember Password"
msgstr "પાસવર્ડને યાદ રાખો"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:140
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "તાળું ખોલો"
@ -1249,7 +1296,7 @@ msgstr "કીબોર્ડ સુયોજનો"
msgid "Mouse Settings"
msgstr "માઉસ સુયોજનો"
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:236
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "સાઇન્ડ સુયોજનો"
@ -1282,10 +1329,9 @@ msgid "Device %s wants to pair with this computer"
msgstr "ઉપકરણ %s આ કમ્પ્યૂટર સાથે જોડી કરવા માંગે છે"
#: ../js/ui/status/bluetooth.js:379
#, fuzzy, c-format
#| msgid "Please confirm whether the PIN '%s' matches the one on the device."
#, c-format
msgid "Please confirm whether the PIN '%06d' matches the one on the device."
msgstr "મહેરબાની કરીને ખાતરી કરો કે શું PIN '%s' એ ઉપકરણ પર એક સાથે બંધબેસે છે."
msgstr "મહેરબાની કરીને ખાતરી કરો કે શું PIN '%06d' એ ઉપકરણ પર એક સાથે બંધબેસે છે."
#: ../js/ui/status/bluetooth.js:381
msgid "Matches"
@ -1308,11 +1354,11 @@ msgstr "મહેરબાની કરીને ઉપકરણ પર દર
msgid "OK"
msgstr "બરાબર"
#: ../js/ui/status/keyboard.js:170
#: ../js/ui/status/keyboard.js:228
msgid "Show Keyboard Layout"
msgstr "કીબોર્ડ લેઆઉટને બતાવો"
#: ../js/ui/status/keyboard.js:175
#: ../js/ui/status/keyboard.js:233
msgid "Region and Language Settings"
msgstr "વિસ્તાર અને ભાષા સુયોજનો"
@ -1535,7 +1581,7 @@ msgid "Unknown"
msgstr "અજ્ઞાત"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:223
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "વોલ્યુમ"
@ -1543,72 +1589,69 @@ msgstr "વોલ્યુમ"
msgid "Microphone"
msgstr "માઇક્રોફોન"
#: ../js/ui/unlockDialog.js:147
#| msgid "Login as another user"
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "બીજા વપરાશકર્તા તરીકે પ્રવેશો"
#: ../js/ui/userMenu.js:174
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "ઉપલબ્ધ"
#: ../js/ui/userMenu.js:177
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "વ્યસ્ત"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "અદૃશ્ય"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "દૂર"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "નિષ્ક્રિય"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "બિનઉપલબ્ધ"
#: ../js/ui/userMenu.js:612 ../js/ui/userMenu.js:753
msgid "Switch User"
msgstr "વપરાશકર્તાને બદલો"
#: ../js/ui/userMenu.js:613
msgid "Switch Session"
msgstr "સત્ર બદલો"
#: ../js/ui/userMenu.js:737
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "સૂચનાઓ"
#: ../js/ui/userMenu.js:745
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "સિસ્ટમ સુયોજનો"
#: ../js/ui/userMenu.js:758
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "વપરાશકર્તાને બદલો"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "બહાર નીકળો"
#: ../js/ui/userMenu.js:763
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "તાળુ"
#: ../js/ui/userMenu.js:778
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "સુધારા સ્થાપિત કરો અને પુન:શરૂ કરો"
#: ../js/ui/userMenu.js:796
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "તમારી વાર્તાલાપ પરિસ્થિતિ વ્યસ્ત તરીકે સુયોજિત હશે"
#: ../js/ui/userMenu.js:797
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
msgstr ""
"સૂચનાઓ હવે નિષ્ક્રિય થયેલ છે, વાર્તાલાપ સંદેશાને સમાવી રહ્યા છે, બીજાને જણાવવા માટે તમારી "
"ઓનલાઇન સ્થિતિને ગોઠવી દેવામાં આવી છે કે જે તમે તેનાં સંદેશાને જોઇ શકશો નહિં."
#: ../js/ui/viewSelector.js:85
msgid "Windows"
@ -1622,7 +1665,7 @@ msgstr "કાર્યક્રમો"
msgid "Search"
msgstr "શોધો"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1631,12 +1674,12 @@ msgstr ""
"માફ કરો, આજે તમારા માટે શાણપણ નથી:\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr ""
msgstr "%s એ એવી કિંમત છે જે Oracle કહે છે"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "તમારા મનગમતા ઇસ્ટર ઇંડા"
@ -1671,23 +1714,23 @@ msgstr[1] "%u ઇનપુટો"
msgid "System Sounds"
msgstr "સિસ્ટમ અવાજો"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "ા"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "લૉગિન સ્ક્રીન માટે GDM દ્દારા વાપરેલ સ્થિતિ"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "ખાસ સ્થિતિને વાપરો, દા.ત. પ્રવેશ સ્ક્રીન માટે \"gdm\""
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "શક્ય સ્થિતિઓની યાદી કરો"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "'%s' ને શરૂ કરવામાં નિષ્ફળતા"
@ -1710,7 +1753,10 @@ msgstr "મૂળભૂત"
#: ../src/shell-polkit-authentication-agent.c:343
msgid "Authentication dialog was dismissed by the user"
msgstr ""
msgstr "સત્તાધિકરણ વપરાશકર્તા દ્દારા અસ્વીકાર થયેલ છે"
#~ msgid "Switch Session"
#~ msgstr "સત્ર બદલો"
#~ msgid "disabled OpenSearch providers"
#~ msgstr "નિષ્ક્રિય થયેલ OpenSearch પ્રબંધક"
@ -1733,9 +1779,6 @@ msgstr ""
#~ msgid "Home"
#~ msgstr "ઘર"
#~ msgid "File System"
#~ msgstr "ફાઇલ સિસ્ટમ"
#~ msgid "%1$s: %2$s"
#~ msgstr "%1$s: %2$s"

819
po/he.po

File diff suppressed because it is too large Load Diff

376
po/hi.po
View File

@ -11,16 +11,16 @@ msgstr ""
"Project-Id-Version: gnome-shell.master.hi\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-09-25 00:06+0000\n"
"PO-Revision-Date: 2012-09-25 14:38+0530\n"
"Last-Translator: rajesh <rajeshkajha@yahoo.com>\n"
"POT-Creation-Date: 2012-11-28 11:02+0000\n"
"PO-Revision-Date: 2012-11-23 14:08+0530\n"
"Last-Translator: Rajesh Ranjan <rajesh>\n"
"Language-Team: Hindi <kde-i18n-doc@kde.org>\n"
"Language: hi\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: Lokalize 1.2\n"
"X-Generator: Lokalize 1.5\n"
"X-DamnedLies-Scope: partial\n"
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
@ -58,15 +58,13 @@ msgstr "गनोम शेल एक्सटेंशन विन्यस्
#: ../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 से डेवलपर्स और परीक्षकों के लिए उपयोगी आंतरिक उपकरण को सक्षम करें"
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 संवाद का उपयोग करके आंतरिक डिबगिंग और निगरानी उपकरण तक पहुँच पायें."
msgstr "Alt-F2 संवाद का उपयोग करके आंतरिक डिबगिंग और निगरानी उपकरण तक पहुँच पायें."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
msgid "Uuids of extensions to enable"
@ -79,12 +77,9 @@ msgid ""
"list. You can also manipulate this list with the EnableExtension and "
"DisableExtension DBus methods on org.gnome.Shell."
msgstr ""
"गनोम शैल एक्सटेंशन का एक uuid गुण है, इस कुंजी एक्सटेंशन जो लोड किया जाना "
"चाहिए की सूची "
"दिखाता है. किसी भी विस्तारक जिसे लोड करने के लिए चाहता है को इस सूची में "
"होने की जरूरत "
"है. आप भी इस सूची में EnableExtension और DisableExtension डिबस तरीकों के "
"साथ org."
"गनोम शैल एक्सटेंशन का एक uuid गुण है, इस कुंजी एक्सटेंशन जो लोड किया जाना चाहिए की सूची "
"दिखाता हैं. किसी भी विस्तारक जिसे लोड करने के लिए चाहता है को इस सूची में होने की जरूरत "
"है. आप भी इस सूची में EnableExtension और DisableExtension डिबस तरीकों के साथ org."
"gnome.Shell पर हेरफेर कर सकते हैं."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
@ -98,12 +93,9 @@ msgid ""
"want to disable this for privacy reasons. Please note that doing so won't "
"remove already saved data."
msgstr ""
"सबसे अधिक इस्तेमाल किया जाने वाले सक्रिय अनुप्रयोगों (जैसे लांचरों में ) पर "
"शेल सामान्य रूप से "
"नज़र रखता है. हालांकि इस डेटा को निजी रखा जाएगा, आप गोपनीयता कारणों के लिए "
"इसे अक्षम "
"कर सकते हैं. कृपया ध्यान दें कि ऐसा करने से पहले से सहेजे गए डेटा को हटाया "
"नहीं जायेगा."
"सबसे अधिक इस्तेमाल किया जाने वाले सक्रिय अनुप्रयोगों (जैसे लांचरों में ) पर शेल सामान्य रूप से "
"नज़र रखता है. हालांकि इस डेटा को निजी रखा जाएगा, आप गोपनीयता कारणों के लिए इसे अक्षम "
"कर सकते है. कृपया ध्यान दें कि ऐसा करने से पहले से सहेजे गए डेटा को हटाया नहीं जायेगा."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
msgid "List of desktop file IDs for favorite applications"
@ -113,8 +105,7 @@ msgstr "पसंदीदा अनुप्रयोगों के लिए
msgid ""
"The applications corresponding to these identifiers will be displayed in the "
"favorites area."
msgstr ""
"इन पहचानकर्ता के लिए अनुप्रयोगों को पसंदीदा क्षेत्र में प्रदर्शित किया जाएगा."
msgstr "इन पहचानकर्ता के लिए अनुप्रयोगों को पसंदीदा क्षेत्र में प्रदर्शित किया जाएगा."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
msgid "History for command (Alt-F2) dialog"
@ -129,78 +120,86 @@ msgid ""
"Internally used to store the last IM presence explicitly set by the user. "
"The value here is from the TpConnectionPresenceType enumeration."
msgstr ""
"स्पष्ट रूप से उपयोगकर्ता द्वारा निर्धारित की गई आंतरिक रूप से पिछले आईएम "
"उपस्थिति का "
"इस्तेमाल किया किया जाता हैं. यह TpConnectionPresenceType गणन से मान लिया गया "
"हैं "
"स्पष्ट रूप से उपयोगकर्ता द्वारा निर्धारित की गई आंतरिक रूप से पिछले आईएम उपस्थिति का "
"इस्तेमाल किया किया जाता हैं. यह TpConnectionPresenceType गणन से मान लिया गया हैं "
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
msgid ""
"Internally used to store the last session presence status for the user. The "
"value here is from the GsmPresenceStatus enumeration."
msgstr ""
"आंतरिक रूप से उपयोगकर्ता के लिए पिछले सत्र उपस्थिति स्थिति को संग्रहीत करने "
"के लिए उपयोग "
"आंतरिक रूप से उपयोगकर्ता के लिए पिछले सत्र उपस्थिति स्थिति को संग्रहीत करने के लिए उपयोग "
"किया जाता हैं. यह GsmPresenceStatus गणन से मान लिया गया हैं "
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "हमेशा 'लॉग आउट' मेन्यू मद को उपयोक्ता मेन्यू में दिखाएँ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
msgstr "अगर सही है, पंचांग में सप्ताह संख्या दिखाएँ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "अगर सही है, तो पंचांग में ISO सप्ताह तिथि दिखाएँ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "अनुप्रयोग मेनू को खोलने के लिए कीबाइंडिंग"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "अनुप्रयोग मेनू को खोलने के लिए कीबाइंडिंग."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "संदेश ट्रे की दृश्यता को टॉगल करने के लिए कीबाइंडिंग"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "संदेश ट्रे की दृश्यता को टॉगल करने के लिए कीबाइंडिंग."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "स्क्रीन रिकॉर्डर को टॉगल करने के लिए कीबाइंडिंग"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr " निर्मित स्क्रीन रिकॉर्डर को रोकने/शुरू करने के लिए कीबाइंडिंग"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "उपयोग करने के लिए कुंजीपटल"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "उपयोग करने के लिए कीबोर्ड के प्रकार"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "screencasts के लिए फ्रेमरेट रिकॉर्डिंग इस्तेमाल किया."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
msgstr ""
" गनोम शैल के स्क्रीनकास्ट रिकॉर्डर द्वारा परिणामस्वरूप रिकॉर्ड किये गए "
"स्क्रीनकास्ट का "
" गनोम शैल के स्क्रीनकास्ट रिकॉर्डर द्वारा परिणामस्वरूप रिकॉर्ड किये गए स्क्रीनकास्ट का "
"फ्रेमरेट फ्रेम प्रति सेकंड में."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "Gstreamer पाइपलाइन स्क्रीनकास्ट एनकोड करने के लिए प्रयोग किया जाता है."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -214,37 +213,29 @@ msgid ""
"threads=%T ! queue ! webmmux' and records to WEBM using the VP8 codec. %T is "
"used as a placeholder for a guess at the optimal thread count on the system."
msgstr ""
"रिकॉर्डिंग को इनकोड करने के लिए GStreamer पाइपलाइन सेट करें. पाइपलाइन के पास "
"एक "
"असंबद्ध सिंक पैड है जहाँ रिकॉर्ड की गई वीडियो दर्ज की गई है.यह सामान्य रूप से "
"एक असंबद्ध "
"स्रोत पैड होगा, इस पैड के उत्पादन को आउटपुट फाइल में लिखा जाएगा. लेकिन पाइप "
"लाइन भी "
"अपने स्वयं केआउटपुट की देखभाल ले सकते हैं- इस shout2send या इसी तरह के "
"माध्यम से एक "
"Icecast सर्वर से आउटपुट को भेजने के लिए इस्तेमाल किया जा सकता है. रिक्त मान "
"को "
"निर्धारित या अनिर्धारित करने के दौरान, डिफ़ॉल्ट पाइपलाइन का इस्तेमाल किया "
"जाएगा. VP8 "
"रिकॉर्डिंग को इनकोड करने के लिए GStreamer पाइपलाइन सेट करें. पाइपलाइन के पास एक "
"असंबद्ध सिंक पैड है जहाँ रिकॉर्ड की गई वीडियो दर्ज की गई है.यह सामान्य रूप से एक असंबद्ध "
"स्रोत पैड होगा, इस पैड के उत्पादन को आउटपुट फाइल में लिखा जाएगा. लेकिन पाइप लाइन भी "
"अपने स्वयं केआउटपुट की देखभाल ले सकते हैं- इस shout2send या इसी तरह के माध्यम से एक "
"Icecast सर्वर से आउटपुट को भेजने के लिए इस्तेमाल किया जा सकता है. रिक्त मान को "
"निर्धारित या अनिर्धारित करने के दौरान, डिफ़ॉल्ट पाइपलाइन का इस्तेमाल किया जाएगा. VP8 "
"कोडेक का उपयोग करके को WEBM रिकॉर्ड कर सकते हैं और यह वर्त्तमान में 'vp8enc "
"min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! "
"queue ! webmmux' हैं. %T सिस्टम पर इष्टतम धागा गिनती में एक अनुमान के लिए एक "
"प्लेसहोल्डर के रूप में प्रयोग किया जाता है."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr " स्क्रीनकास्ट के भंडारण के लिए इस्तेमाल किया जाने वाला फ़ाइल एक्सटेंशन"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
"a different container format."
msgstr ""
"रिकॉर्ड किये गए स्क्रीनकास्ट के लिए फ़ाइल का नाम अद्वितीय वर्तमान दिनांक के "
"आधार पर "
"फ़ाइलनाम होगा और इस विस्तारक का उपयोग करेगा. एक अलग कंटेनर प्रारूप के साथ "
"रिकॉर्डिंग "
"रिकॉर्ड किये गए स्क्रीनकास्ट के लिए फ़ाइल का नाम अद्वितीय वर्तमान दिनांक के आधार पर "
"फ़ाइलनाम होगा और इस विस्तारक का उपयोग करेगा. एक अलग कंटेनर प्रारूप के साथ रिकॉर्डिंग "
"करने के दौरान बदला जाना चाहिए."
#: ../js/extensionPrefs/main.js:124
@ -258,14 +249,13 @@ msgstr "एक्सटेंशन"
#: ../js/extensionPrefs/main.js:188
msgid "Select an extension to configure using the combobox above."
msgstr ""
"उपर्युक्त कोंबोबॉक्स के उपयोग को विन्यस्त करने के लिए किसी विस्तार को चुनें."
msgstr "उपर्युक्त कोंबोबॉक्स के उपयोग को विन्यस्त करने के लिए किसी विस्तार को चुनें."
#: ../js/gdm/loginDialog.js:527
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "सत्र..."
#: ../js/gdm/loginDialog.js:675
#: ../js/gdm/loginDialog.js:680
msgctxt "title"
msgid "Sign In"
msgstr "साइन इन"
@ -273,34 +263,41 @@ msgstr "साइन इन"
#. 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.
#: ../js/gdm/loginDialog.js:742
#: ../js/gdm/loginDialog.js:740
msgid "Not listed?"
msgstr "सूचीबद्ध नहीं?"
#: ../js/gdm/loginDialog.js:895 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:898 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:166
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:168
msgid "Cancel"
msgstr "रद्द करें"
#: ../js/gdm/loginDialog.js:900
#: ../js/gdm/loginDialog.js:903
msgctxt "button"
msgid "Sign In"
msgstr "साइन इन"
#: ../js/gdm/loginDialog.js:1239
#. 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:962 ../js/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "उपयोक्तानाम: "
#: ../js/gdm/loginDialog.js:1269
msgid "Login Window"
msgstr "लॉगिन विंडो"
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:35
#| msgid "Power Off"
msgid "Power"
msgstr "पावर"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:663 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:778
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "स्थगित"
@ -308,22 +305,22 @@ msgstr "स्थगित"
msgid "Restart"
msgstr "फिर आरंभ करें"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:665 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:777
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "बंद करें"
#: ../js/gdm/util.js:148
#: ../js/gdm/util.js:152
msgid "Authentication error"
msgstr "प्रमाणीकरण त्रुटि"
#. Translators: this message is shown below the password entry field
#. to indicate the user can swipe their finger instead
#: ../js/gdm/util.js:265
#: ../js/gdm/util.js:269
msgid "(or swipe finger)"
msgstr "(या स्वाइप फिंगर)"
#: ../js/gdm/util.js:290
#: ../js/gdm/util.js:294
#, c-format
msgid "(e.g., user or %s)"
msgstr "(उदाहरण के लिए, उपयोक्ता या %s)"
@ -360,7 +357,7 @@ msgstr "सेटिंग्स"
msgid "New Window"
msgstr "नया विंडो"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "पसंदीदा से हटाएँ"
@ -524,16 +521,16 @@ msgstr "इस सप्ताह"
msgid "Next week"
msgstr "अगला सप्ताह"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "हटाने योग्य युक्तियाँ"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "%s के साथ खोलें"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "बाहर निकालें"
@ -563,14 +560,6 @@ msgstr "कूटशब्द: "
msgid "Key: "
msgstr "कुंजी: "
#. 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/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "उपयोक्तानाम: "
#: ../js/ui/components/networkAgent.js:266
msgid "Identity: "
msgstr "पहचान : "
@ -688,35 +677,35 @@ msgstr "मूक करें"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:952
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "<b>%X</b> पर प्रेषित <b>%A</b> पर"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:958
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "<b>%A</b> पर प्रेषित, <b>%B %d</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:963
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "<b>%A</b> पर प्रेषित, <b>%B %d</b>, %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:992
#, c-format
msgid "%s is now known as %s"
msgstr "%s अब %s रूप में जाना जाता है"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1092
#, c-format
msgid "Invitation to %s"
msgstr "%s में आमंत्रण"
@ -724,42 +713,42 @@ msgstr "%s में आमंत्रण"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1100
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s आपको %s में शामिल होने के लिए आमंत्रित कर रहा है"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1102
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
msgid "Decline"
msgstr "मना करें"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1103
#: ../js/ui/components/telepathyClient.js:1182
#: ../js/ui/components/telepathyClient.js:1245
msgid "Accept"
msgstr "स्वीकारें"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1133
#, c-format
msgid "Video call from %s"
msgstr "%s से वीडियो कॉल"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1136
#, c-format
msgid "Call from %s"
msgstr "%s से कॉल"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1141
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "अस्वीकारें"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1143
msgid "Answer"
msgstr "जवाब"
@ -768,142 +757,139 @@ msgstr "जवाब"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1175
#, c-format
msgid "%s is sending you %s"
msgstr "%s आपको %s भेज रहा है"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s यह देखने के लिए आपकी अनुमति चाहेगा कि आप कब ऑनलाइन हैं"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1302
msgid "Network error"
msgstr "संजाल त्रुटि"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1304
msgid "Authentication failed"
msgstr "सत्यापन विफल"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1306
msgid "Encryption error"
msgstr "गोपन त्रुटि"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate not provided"
msgstr "प्रमाणपत्र नहीं दिया हुआ"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate untrusted"
msgstr "प्रमाणपत्र गैर भरोसेमंद"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate expired"
msgstr "प्रमाणपत्र समाप्त"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate not activated"
msgstr "प्रमाणपत्र निष्क्रिय"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate hostname mismatch"
msgstr "प्रमाणपत्र मेजबाननाम बेमेल"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate fingerprint mismatch"
msgstr "प्रमाणपत्र फिंगरप्रिंट बेमेल"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1320
msgid "Certificate self-signed"
msgstr "प्रमाणपत्र स्वहस्ताक्षरित"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1322
msgid "Status is set to offline"
msgstr "प्रस्थिति ऑफ़लाइन पर सेट है"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1324
msgid "Encryption is not available"
msgstr "गोपन उपलब्ध नहीं है"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1326
msgid "Certificate is invalid"
msgstr "प्रमाणपत्र अवैध है"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection has been refused"
msgstr "कनेक्शन अस्वीकृत किया गया है"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection can't be established"
msgstr "कनेक्शन स्थापित नहीं किया जा सकता है"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been lost"
msgstr "कनेक्शन गुम हो गया है"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1334
msgid "This account is already connected to the server"
msgstr "यह खाता पहले ही सर्वर से कनेक्टेड है"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1336
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"समान संसाधन के उपयोग से नए कनेक्शन के द्वारा कनेक्शन को प्रतिस्थापित किया गया "
"है"
msgstr "समान संसाधन के उपयोग से नए कनेक्शन के द्वारा कनेक्शन को प्रतिस्थापित किया गया है"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1338
msgid "The account already exists on the server"
msgstr "खाता पहले ही सर्वर पर मौजूद है"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1340
msgid "Server is currently too busy to handle the connection"
msgstr "सर्वर कनेक्शन नियंत्रित करने के लिए अभी काफी व्यस्त है"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate has been revoked"
msgstr "प्रमाणपत्र वापस लिया गया है"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr "प्रमाणपत्र असुरक्षित साइफर अल्गोरिथम या गोपन की दृष्टि से कमजोर है"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
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:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Internal error"
msgstr "आंतरिक त्रुटि"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
#, c-format
msgid "Connection to %s failed"
msgstr "%s में कनेक्शन असफल"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1367
msgid "Reconnect"
msgstr "फिर कनेक्ट करें"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Edit account"
msgstr "खाता संपादित करें"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1413
msgid "Unknown reason"
msgstr "अज्ञात कारण"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#: ../js/ui/dash.js:254 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "अनुप्रयोग दिखाएँ"
@ -911,14 +897,14 @@ msgstr "अनुप्रयोग दिखाएँ"
msgid "Date and Time Settings"
msgstr "तिथि व समय सेटिंग्स"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "पंचांग खोलें"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A %B %e, %Y"
@ -936,8 +922,7 @@ msgstr "लॉग आउट"
#: ../js/ui/endSessionDialog.js:63
msgid "Click Log Out to quit these applications and log out of the system."
msgstr ""
"इन अनुप्रयोगों से बाहर निकलने के लिए और तंत्र से लॉग आउट होने के लिए लॉग आउट "
"पर क्लिक करें."
"इन अनुप्रयोगों से बाहर निकलने के लिए और तंत्र से लॉग आउट होने के लिए लॉग आउट पर क्लिक करें."
#: ../js/ui/endSessionDialog.js:65
#, c-format
@ -970,8 +955,7 @@ msgstr "बंद करें"
#: ../js/ui/endSessionDialog.js:82
msgid "Click Power Off to quit these applications and power off the system."
msgstr ""
"इन अनुप्रयोगों से बाहर निकलने या तंत्र की बिजली बंद करने के लिए बंद करें पर "
"क्लिक करें."
"इन अनुप्रयोगों से बाहर निकलने या तंत्र की बिजली बंद करने के लिए बंद करें पर क्लिक करें."
#: ../js/ui/endSessionDialog.js:84
#, c-format
@ -1002,8 +986,7 @@ msgstr "फिर आरंभ करें"
#: ../js/ui/endSessionDialog.js:99
msgid "Click Restart to quit these applications and restart the system."
msgstr ""
"इन अनुप्रयोगों से बाहर निकलने और तंत्र को फिर चालू करने के लिए फिर आरंभ करें "
"क्लिक करें."
"इन अनुप्रयोगों से बाहर निकलने और तंत्र को फिर चालू करने के लिए फिर आरंभ करें क्लिक करें."
#: ../js/ui/endSessionDialog.js:101
#, c-format
@ -1025,11 +1008,11 @@ msgstr "संस्थापित करें"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "'%s' को extensions.gnome.org से डाउनलोड कर संस्थापित करें?"
#: ../js/ui/keyboard.js:327
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "तश्तरी"
#: ../js/ui/keyboard.js:561 ../js/ui/status/keyboard.js:195
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "कुंजीपटल"
@ -1082,23 +1065,23 @@ msgstr "श्रोत दिखाएँ"
msgid "Web Page"
msgstr "वेब पृष्ठ"
#: ../js/ui/messageTray.js:1080
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "खोलें"
#: ../js/ui/messageTray.js:1087
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "हटाएँ"
#: ../js/ui/messageTray.js:2055
#: ../js/ui/messageTray.js:1531
msgid "Message Tray"
msgstr "संदेश तश्तरी"
#: ../js/ui/messageTray.js:2511
#: ../js/ui/messageTray.js:2543
msgid "System Information"
msgstr "तंत्र जानकारी"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "अज्ञात"
@ -1154,18 +1137,18 @@ msgstr "कृपया कमांड दर्ज करें:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:81
msgid "%A, %B %d"
msgstr "%A, %B %d"
#: ../js/ui/screenShield.js:144
#: ../js/ui/screenShield.js:145
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "%d नया संदेश"
msgstr[1] "%d नए संदेश"
#: ../js/ui/screenShield.js:146
#: ../js/ui/screenShield.js:147
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
@ -1204,7 +1187,7 @@ msgstr "कूटशब्द:"
msgid "Remember Password"
msgstr "कूटशब्द याद रखें"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:169
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:171
msgid "Unlock"
msgstr "ताला खोलें"
@ -1322,7 +1305,7 @@ msgstr "कुंजीपट सेंटिग्स"
msgid "Mouse Settings"
msgstr "माउस सेटिंग"
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:236
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "ध्वनि सेटिंग्स"
@ -1357,8 +1340,7 @@ msgstr "युक्ति %s इस कंप्यूटर के साथ
#: ../js/ui/status/bluetooth.js:379
#, c-format
msgid "Please confirm whether the PIN '%06d' matches the one on the device."
msgstr ""
"कृपया पुष्टि करें कि क्या पिन '%06d' युक्ति पर स्थिति किसी के साथ मेल खाता है."
msgstr "कृपया पुष्टि करें कि क्या पिन '%06d' युक्ति पर स्थिति किसी के साथ मेल खाता है."
#: ../js/ui/status/bluetooth.js:381
msgid "Matches"
@ -1608,7 +1590,7 @@ msgid "Unknown"
msgstr "अज्ञात"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:223
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "आवाज़"
@ -1616,73 +1598,68 @@ msgstr "आवाज़"
msgid "Microphone"
msgstr "माइक्रोफोन"
#: ../js/ui/unlockDialog.js:176
#: ../js/ui/unlockDialog.js:178
msgid "Log in as another user"
msgstr "बतौर अन्य उपयोक्ता लॉगिन करें"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "उपलब्ध"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "व्यस्त"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "अदृश्य"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "दूर"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "निष्क्रिय"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "अनुपलब्ध"
#: ../js/ui/userMenu.js:618 ../js/ui/userMenu.js:759
msgid "Switch User"
msgstr "उपयोक्ता बदलें"
#: ../js/ui/userMenu.js:619
msgid "Switch Session"
msgstr "सत्र बदलें"
#: ../js/ui/userMenu.js:743
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "अधिसूचना"
#: ../js/ui/userMenu.js:751
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "तंत्र विन्यास"
msgstr "तंत्र सेटिंग"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "उपयोक्ता बदलें"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "लॉग आउट"
#: ../js/ui/userMenu.js:769
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "तालाबंद"
#: ../js/ui/userMenu.js:784
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "अद्यतन संस्थापित करें और फिर आरंभ करें"
#: ../js/ui/userMenu.js:802
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "आपकी चैट स्थिति व्यस्त नियत की जाएगी"
#: ../js/ui/userMenu.js:803
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
msgstr ""
"चैट संदेश सहित अधिसूचना अब निष्क्रिय है. आपकी ऑनलाइन स्थिति दूसरे को यह जानने "
"के लिए "
"चैट संदेश सहित अधिसूचना अब निष्क्रिय है. आपकी ऑनलाइन स्थिति दूसरे को यह जानने के लिए "
"समायोजित की जाएगी जिसे आप अपने संदेश में नहीं देख सकते हैं."
#: ../js/ui/viewSelector.js:85
@ -1697,7 +1674,7 @@ msgstr "अनुप्रयोग"
msgid "Search"
msgstr "ढूँढें"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1706,12 +1683,12 @@ msgstr ""
"माफ़ करें, आपके लिए आज कोई दृष्टि नहीं:\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "%s ओरेकल कहती है"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "आपकी पसंदीदा ईस्टर एग"
@ -1746,23 +1723,23 @@ msgstr[1] "%u इनपुट"
msgid "System Sounds"
msgstr "तंत्र ध्वनि"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "छपाई संस्करण"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "लॉगिन स्क्रीन के लिए प्रयुक्त जीडीएम अवस्था"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "विशेष अवस्था का उपयोग करें, उदाहरण के लिए लॉगिन स्क्रीन के लिए \"gdm\""
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "संभावित अवस्था सूचीबद्ध करें"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "'%s' लॉन्च करने में विफल"
@ -1787,6 +1764,9 @@ msgstr "तयशुदा"
msgid "Authentication dialog was dismissed by the user"
msgstr "सत्यापन संवाद को उपयोक्ता के द्वारा खारिज़ कर दिया गया"
#~ msgid "Switch Session"
#~ msgstr "सत्र बदलें"
#, fuzzy
#~| msgid "If true, display seconds in time."
#~ msgid "If true, display onscreen keyboard."

272
po/hu.po
View File

@ -4,20 +4,22 @@
#
# Gabor Kelemen <kelemeng at gnome dot hu>, 2009, 2010, 2011, 2012.
# Lukács Bence <lukacs.bence1 at gmail dot com>, 2012.
# Balázs Úr <urbalazs at gmail dot com>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-09-26 16:11+0200\n"
"PO-Revision-Date: 2012-09-26 16:12+0200\n"
"Last-Translator: Gabor Kelemen <kelemeng at gnome dot hu>\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-10-31 16:48+0000\n"
"PO-Revision-Date: 2012-12-31 18:12+0100\n"
"Last-Translator: Balázs Úr <urbalazs at gmail dot com>\n"
"Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n"
"Language: hu\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: KBabel 1.11.4\n"
"X-Generator: Lokalize 1.2\n"
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
msgid "Screenshots"
@ -136,50 +138,63 @@ msgstr ""
"állapot. Az itteni érték a GsmPresenceStatus felsorolásból származik."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Mindig jelenjen meg a „Kijelentkezés” menüelem a felhasználói menüben."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
"user, single-session situations."
msgstr ""
"Ez a kulcs felülbírálja a „Kijelentkezés” menüelem automatikus elrejtését "
"egyfelhasználós, egyedüli munkamenet esetén."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Show the week date in the calendar"
msgstr "Hetek számának megjelenítése a naptárban"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Ha igazra van állítva, a naptárban megjelenik az ISO hétszám."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "Billentyűtársítás az alkalmazásmenü megnyitásához"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "Billentyűtársítás az alkalmazásmenü megnyitásához."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "Billentyűtársítás az üzenettálca láthatóságának módosításához"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "Billentyűtársítás az üzenettálca láthatóságának módosításához."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "Billentyűtársítás a képernyőfelvevő megnyitásához"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "Billentyűtársítás a beépített képernyőfelvevő elindításához/leállításához."
msgstr ""
"Billentyűtársítás a beépített képernyőfelvevő elindításához/leállításához."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "A használandó billentyűzet"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "Használandó billentyűzet típusa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "A képernyővideók felvételéhez használt képkockasebesség."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -187,11 +202,11 @@ msgstr ""
"A GNOME Shell képernyőfelvevője által felvett eredményül kapott "
"képernyővideó képkockasebessége képkocka/másodpercben."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "A képernyővideó kódolására használt GStreamer adatcsatorna"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -218,11 +233,11 @@ msgstr ""
"és WEBM formátumba rögzít a VP8 kodek használatával. A %T egy helykitöltő, a "
"rendszeren optimális szálmennyiség megtippelésére."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "A képernyővideó tárolásához használt fájlkiterjesztés"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -245,11 +260,11 @@ msgstr "Kiterjesztés"
msgid "Select an extension to configure using the combobox above."
msgstr "Válasszon egy beállítandó kiterjesztést a fenti legördülő menüből."
#: ../js/gdm/loginDialog.js:528
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "Munkamenet…"
#: ../js/gdm/loginDialog.js:676
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "Bejelentkezés"
@ -257,23 +272,23 @@ msgstr "Bejelentkezés"
#. 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.
#: ../js/gdm/loginDialog.js:743
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "Nincs a listán?"
#: ../js/gdm/loginDialog.js:896 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:166
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "Mégse"
#: ../js/gdm/loginDialog.js:901
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "Bejelentkezés"
#: ../js/gdm/loginDialog.js:1240
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "Bejelentkezési ablak"
@ -282,8 +297,8 @@ msgstr "Bejelentkezési ablak"
msgid "Power"
msgstr "Kikapcsolás"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:663 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:778
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Felfüggesztés"
@ -291,8 +306,8 @@ msgstr "Felfüggesztés"
msgid "Restart"
msgstr "Újraindítás"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:665 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:777
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Kikapcsolás"
@ -343,7 +358,7 @@ msgstr "BEÁLLÍTÁSOK"
msgid "New Window"
msgstr "Új ablak"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "Eltávolítás a Kedvencek közül"
@ -507,16 +522,16 @@ msgstr "Ezen a héten"
msgid "Next week"
msgstr "Jövő héten"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "Cserélhető eszközök"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "Megnyitás ezzel: %s"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "Kiadás"
@ -673,35 +688,35 @@ msgstr "Némítás"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Elküldve: <b>%A</b>, <b>%k.%M</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Elküldve: <b>%A</b>, <b>%B %d.</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Elküldve: <b>%A</b>, %Y. <b>%B %d.</b>"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:990
#, c-format
msgid "%s is now known as %s"
msgstr "%s mostantól %s néven ismert"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "Meghívás ide: %s"
@ -709,42 +724,42 @@ msgstr "Meghívás ide: %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s kéri, hogy csatlakozzon ehhez: %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "Elutasítás"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "Elfogadás"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "Videohívás tőle: %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "Hívás tőle: %s"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Visszautasítás"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "Válasz"
@ -753,108 +768,111 @@ msgstr "Válasz"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "%s a következőt küldi: %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s engedélyt kér, hogy láthassa az Ön elérhető állapotát"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "Hálózati hiba"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "A hitelesítés meghiúsult"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "Titkosítási hiba"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "Nincs megadva tanúsítvány"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "A tanúsítvány nem megbízható"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "A tanúsítvány lejárt"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "A tanúsítvány nincs aktiválva"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "A tanúsítvány gépneve eltér"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "A tanúsítvány ujjlenyomata eltér"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "A tanúsítvány önaláírt"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "Az állapot beállítva kilépettre"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "A titkosítás nem érhető el"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "A tanúsítvány érvénytelen"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "A kapcsolat visszautasítva"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "A kapcsolat nem hozható létre"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "A kapcsolat elveszett"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "Ez a fiók már kapcsolódik a kiszolgálóhoz"
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been replaced by a new connection using the same resource"
msgstr "A kapcsolatot leváltotta egy új, ugyanazt az erőforrást használó kapcsolat"
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"A kapcsolatot leváltotta egy új, ugyanazt az erőforrást használó kapcsolat"
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "A fiók már létezik a kiszolgálón"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "A kiszolgáló pillanatnyilag túl elfoglalt a kapcsolat kezeléséhez"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "A tanúsítvány visszavonva"
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate uses an insecure cipher algorithm or is cryptographically weak"
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"A tanúsítvány nem biztonságos titkosító algoritmust használ, vagy "
"titkosításilag gyenge"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -862,30 +880,30 @@ msgstr ""
"A kiszolgáló tanúsítványának hossza, vagy a kiszolgáló tanúsítványláncának "
"mélysége túllépi a titkosítási programkönyvtár korlátozásait"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "Belső hiba"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "A kapcsolódás meghiúsult ehhez: %s"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "Újracsatlakozás"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "Fiók szerkesztése"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "Ismeretlen ok"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "Alkalmazások megjelenítése"
@ -893,14 +911,14 @@ msgstr "Alkalmazások megjelenítése"
msgid "Date and Time Settings"
msgstr "Dátum- és időbeállítások"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "Naptár megnyitása"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A, %Y. %B %d."
@ -1005,7 +1023,8 @@ msgstr "Telepítés"
#: ../js/ui/extensionDownloader.js:204
#, c-format
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Letölti és telepíti a következőt az extensions.gnome.org webhelyről: „%s”?"
msgstr ""
"Letölti és telepíti a következőt az extensions.gnome.org webhelyről: „%s”?"
#: ../js/ui/keyboard.js:337
msgid "tray"
@ -1064,23 +1083,23 @@ msgstr "Forrás megtekintése"
msgid "Web Page"
msgstr "Weblap"
#: ../js/ui/messageTray.js:1081
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Megnyitás"
#: ../js/ui/messageTray.js:1088
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Eltávolítás"
#: ../js/ui/messageTray.js:2088
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Üzenettálca"
#: ../js/ui/messageTray.js:2551
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Rendszerinformációk"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Ismeretlen"
@ -1137,7 +1156,7 @@ msgstr "Adjon meg egy parancsot:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %B %d."
@ -1187,7 +1206,7 @@ msgstr "Jelszó"
msgid "Remember Password"
msgstr "Jelszó megjegyzése"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:169
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "Feloldás"
@ -1598,67 +1617,63 @@ msgstr "Hangerő"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/unlockDialog.js:176
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "Bejelentkezés másik felhasználóként"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Elérhető"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Elfoglalt"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Láthatatlan"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Távol"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Ráér"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Nem érhető el"
#: ../js/ui/userMenu.js:618 ../js/ui/userMenu.js:759
msgid "Switch User"
msgstr "Felhasználóváltás"
#: ../js/ui/userMenu.js:619
msgid "Switch Session"
msgstr "Felhasználóváltás"
#: ../js/ui/userMenu.js:743
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Értesítések"
#: ../js/ui/userMenu.js:751
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Rendszerbeállítások"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Felhasználóváltás"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Kijelentkezés"
#: ../js/ui/userMenu.js:769
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Lezárás"
#: ../js/ui/userMenu.js:784
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Frissítések telepítése és újraindítás"
#: ../js/ui/userMenu.js:802
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Csevegési állapota elfoglaltra lesz állítva"
#: ../js/ui/userMenu.js:803
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1679,7 +1694,7 @@ msgstr "Alkalmazások"
msgid "Search"
msgstr "Oldalsáv"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1688,12 +1703,12 @@ msgstr ""
"Elnézést, mára nincs bölcsesség:\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "%s az orákulum ezt mondja"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "Kedvenc easter egged"
@ -1728,23 +1743,24 @@ msgstr[1] "%u bemenet"
msgid "System Sounds"
msgstr "Rendszerhangok"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "Verzió kiírása"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "A GDM által a bejelentkezési képernyőhöz használt mód"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "Használjon egy adott módot, például a „gdm”-et a bejelentkező képernyőn"
msgstr ""
"Használjon egy adott módot, például a „gdm”-et a bejelentkező képernyőn"
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "Lehetséges módok listázása"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "„%s” indítása meghiúsult"
@ -1769,3 +1785,5 @@ msgstr "Alapértelmezett"
msgid "Authentication dialog was dismissed by the user"
msgstr "A hitelesítési ablakot a felhasználó bezárta"
#~ msgid "Switch Session"
#~ msgstr "Felhasználóváltás"

236
po/id.po
View File

@ -7,11 +7,11 @@
# Wibiharto <wibinem@yahoo.com>, 2011.
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Project-Id-Version: gnome-shell gnome-3-6\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-10-15 23:38+0000\n"
"PO-Revision-Date: 2012-10-16 07:11+0700\n"
"POT-Creation-Date: 2012-11-26 09:33+0000\n"
"PO-Revision-Date: 2012-11-26 19:52+0700\n"
"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
"Language-Team: Indonesian <gnome@i15n.org>\n"
"Language: id\n"
@ -38,14 +38,6 @@ msgstr "Sistem"
msgid "Show the message tray"
msgstr "Tampilkan baki pesan"
#: ../data/50-gnome-shell-system.xml.in.h:3
msgid "Show all applications"
msgstr "Tampilkan semua aplikasi"
#: ../data/50-gnome-shell-system.xml.in.h:4
msgid "Open the application menu"
msgstr "Buka menu aplikasi"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
@ -147,32 +139,33 @@ msgstr ""
"Nilainya berasal dari enumerasi GsmPresenceStatus."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Selalu tampilkan butir menu 'Log keluar' dalam menu pengguna."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
"user, single-session situations."
msgstr ""
"Kunci ini menimpa penyembunyian otomatis butir menu 'Log keluar' dalam "
"situasi pengguna tunggal, sesi tunggal."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Show the week date in the calendar"
msgstr "Menampilkan tanggal pada kalender"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Jika \"true\", menampilkan tanggal berformat ISO pada kalender."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "Kombinasi tombol untuk membuka menu aplikasi"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "Kombinasi tombol untuk membuka menu aplikasi."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Kombinasi tombol untuk membuka tilikan \"Tampilkan Aplikasi\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Kombinasi tombol untuk membuka tilikan Ringkasan Aktivitas \"Tampilkan "
"Aplikasi\"."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "Kombinasi tombol untuk kenampakan baki pesan"
@ -270,7 +263,7 @@ msgstr "Pilih ekstensi yang ingin dikonfigurasi pada kotak di atas."
msgid "Session..."
msgstr "Sesi..."
#: ../js/gdm/loginDialog.js:677
#: ../js/gdm/loginDialog.js:680
msgctxt "title"
msgid "Sign In"
msgstr "Masuk"
@ -278,23 +271,31 @@ msgstr "Masuk"
#. 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.
#: ../js/gdm/loginDialog.js:736
#: ../js/gdm/loginDialog.js:740
msgid "Not listed?"
msgstr "Tak masuk daftar?"
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:898 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:168
msgid "Cancel"
msgstr "Batal"
#: ../js/gdm/loginDialog.js:894
#: ../js/gdm/loginDialog.js:903
msgctxt "button"
msgid "Sign In"
msgstr "Masuk"
#: ../js/gdm/loginDialog.js:1215
#. 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:962 ../js/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "Nama pengguna: "
#: ../js/gdm/loginDialog.js:1269
msgid "Login Window"
msgstr "Jendela Log Masuk"
@ -303,8 +304,8 @@ msgstr "Jendela Log Masuk"
msgid "Power"
msgstr "Daya"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:660 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:775
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Suspensi"
@ -312,22 +313,22 @@ msgstr "Suspensi"
msgid "Restart"
msgstr "Nyalakan Ulang"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:662 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:774
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Matikan"
#: ../js/gdm/util.js:148
#: ../js/gdm/util.js:152
msgid "Authentication error"
msgstr "Galat otentikasi"
#. Translators: this message is shown below the password entry field
#. to indicate the user can swipe their finger instead
#: ../js/gdm/util.js:265
#: ../js/gdm/util.js:269
msgid "(or swipe finger)"
msgstr "(atau gesekkan jari)"
#: ../js/gdm/util.js:290
#: ../js/gdm/util.js:294
#, c-format
msgid "(e.g., user or %s)"
msgstr "(cth., pengguna dari %s)"
@ -567,14 +568,6 @@ msgstr "Sandi: "
msgid "Key: "
msgstr "Tombol: "
#. 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/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "Nama pengguna: "
#: ../js/ui/components/networkAgent.js:266
msgid "Identity: "
msgstr "Identitas: "
@ -694,35 +687,35 @@ msgstr "Bisu"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:952
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Dikirim pada <b>%X</b> hari <b>%A</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:958
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Dikirim pada <b>%A</b>, <b>%d %B</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:963
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Dikirim pada <b>%A</b>, <b>%d %B</b> %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:992
#, c-format
msgid "%s is now known as %s"
msgstr "%s sekarang dikenal sebagai %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1092
#, c-format
msgid "Invitation to %s"
msgstr "Undangan ke %s"
@ -730,42 +723,42 @@ msgstr "Undangan ke %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1100
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s mengundang Anda untuk bergabung dengan %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1102
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
msgid "Decline"
msgstr "Tolak"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1103
#: ../js/ui/components/telepathyClient.js:1182
#: ../js/ui/components/telepathyClient.js:1245
msgid "Accept"
msgstr "Terima"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1133
#, c-format
msgid "Video call from %s"
msgstr "Panggilan video dari %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1136
#, c-format
msgid "Call from %s"
msgstr "Panggilan dari %s"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1141
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Tolak"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1143
msgid "Answer"
msgstr "Jawab"
@ -774,111 +767,111 @@ msgstr "Jawab"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1175
#, c-format
msgid "%s is sending you %s"
msgstr "%s sedang mengirimi Anda %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s ingin minta ijin melihat Anda ketika Anda daring"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1302
msgid "Network error"
msgstr "Galat jaringan"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1304
msgid "Authentication failed"
msgstr "Otentikasi gagal"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1306
msgid "Encryption error"
msgstr "Galat enkripsi"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate not provided"
msgstr "Sertifikat tidak disediakan"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate untrusted"
msgstr "Sertifikat tidak dipercaya"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate expired"
msgstr "Sertifikat kadaluarsa"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate not activated"
msgstr "Sertifikat tidak diaktifkan"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate hostname mismatch"
msgstr "Nama host sertifikat tidak cocok"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate fingerprint mismatch"
msgstr "Sidik jari sertifikat tidak cocok"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1320
msgid "Certificate self-signed"
msgstr "Sertifikat ditandatangani sendiri"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1322
msgid "Status is set to offline"
msgstr "Status diatur ke luring"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1324
msgid "Encryption is not available"
msgstr "Enkripsi tidak tersedia"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1326
msgid "Certificate is invalid"
msgstr "Sertifikat tidak valid"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection has been refused"
msgstr "Koneksi telah ditolak"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection can't be established"
msgstr "Koneksi tak dapat dijalin"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been lost"
msgstr "Koneksi telah terputus"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1334
msgid "This account is already connected to the server"
msgstr "Akun ini telah tersambung pada server"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1336
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"Koneksi telah digantikan oleh koneksi baru memakai sumberdaya yang sama"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1338
msgid "The account already exists on the server"
msgstr "Akun ini sudah ada di server"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1340
msgid "Server is currently too busy to handle the connection"
msgstr "Server kini terlalu sibuk untuk menangani koneksi"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate has been revoked"
msgstr "Sertifikat telah dicabut"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Sertifikat memakai algorima cipher yang tak aman atau lemah secara "
"kriptografi"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -886,30 +879,30 @@ msgstr ""
"Panjang sertifikat server, atau kedalaman rantai sertifikat server, "
"melampaui batas yang diberlakukan oleh pustaka kriptografi"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Internal error"
msgstr "Galat internal"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
#, c-format
msgid "Connection to %s failed"
msgstr "Sambungan ke %s gagal"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1367
msgid "Reconnect"
msgstr "Hubungkan kembali"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Edit account"
msgstr "Sunting Akun"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1413
msgid "Unknown reason"
msgstr "Alasan yang tidak diketahui"
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
#: ../js/ui/dash.js:254 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "Tampilkan Aplikasi"
@ -1080,23 +1073,23 @@ msgstr "Tilik Sumber"
msgid "Web Page"
msgstr "Halaman Web"
#: ../js/ui/messageTray.js:1081
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Buka"
#: ../js/ui/messageTray.js:1088
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Hapus"
#: ../js/ui/messageTray.js:1540
#: ../js/ui/messageTray.js:1531
msgid "Message Tray"
msgstr "Baki Pesan"
#: ../js/ui/messageTray.js:2547
#: ../js/ui/messageTray.js:2543
msgid "System Information"
msgstr "Informasi Sistem"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Tak dikenal"
@ -1153,17 +1146,17 @@ msgstr "Ketikkan perintah:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:81
msgid "%A, %B %d"
msgstr "%A, %d %B"
#: ../js/ui/screenShield.js:143
#: ../js/ui/screenShield.js:145
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "%d pesan baru"
#: ../js/ui/screenShield.js:145
#: ../js/ui/screenShield.js:147
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
@ -1201,7 +1194,7 @@ msgstr "Sandi"
msgid "Remember Password"
msgstr "Ingat Sandi"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:171
msgid "Unlock"
msgstr "Buka Kunci"
@ -1608,63 +1601,63 @@ msgstr "Volume"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/unlockDialog.js:177
#: ../js/ui/unlockDialog.js:178
msgid "Log in as another user"
msgstr "Masuk sebagai pengguna lain"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Ada"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Sibuk"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Tak Terlihat"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Pergi"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Menganggur"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Tak tersedia"
#: ../js/ui/userMenu.js:740
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Pemberitahuan"
#: ../js/ui/userMenu.js:748
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Pengaturan Sistem"
#: ../js/ui/userMenu.js:756
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Ganti Pengguna"
#: ../js/ui/userMenu.js:761
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Keluar"
#: ../js/ui/userMenu.js:766
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Kunci"
#: ../js/ui/userMenu.js:781
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Pasang Pemutakhiran & Jalankan Ulang"
#: ../js/ui/userMenu.js:799
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Status obrolan Anda akan ditata ke sibuk"
#: ../js/ui/userMenu.js:800
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1673,15 +1666,15 @@ msgstr ""
"telah disesuaikan untuk memberitahu pihak lain bahwa Anda mungkin tak "
"melihat pesan mereka."
#: ../js/ui/viewSelector.js:87
#: ../js/ui/viewSelector.js:85
msgid "Windows"
msgstr "Jendela"
#: ../js/ui/viewSelector.js:91
#: ../js/ui/viewSelector.js:89
msgid "Applications"
msgstr "Aplikasi"
#: ../js/ui/viewSelector.js:95
#: ../js/ui/viewSelector.js:93
msgid "Search"
msgstr "Cari"
@ -1748,7 +1741,7 @@ msgstr "Menggunakan mode tertentu, mis. \"gdm\" untuk layar masuk"
msgid "List possible modes"
msgstr "Menampilkan mode yang mungkin"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "Gagal meluncurkan '%s'"
@ -1772,4 +1765,3 @@ msgstr "Baku"
#: ../src/shell-polkit-authentication-agent.c:343
msgid "Authentication dialog was dismissed by the user"
msgstr "Dialog otentikasi ditolak oleh pengguna"

491
po/ja.po

File diff suppressed because it is too large Load Diff

412
po/kn.po
View File

@ -8,8 +8,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: 2012-09-19 11:02+0000\n"
"PO-Revision-Date: 2012-09-26 16:05+0530\n"
"POT-Creation-Date: 2012-12-07 10:16+0000\n"
"PO-Revision-Date: 2012-12-07 16:11+0530\n"
"Last-Translator: Shankar Prasad <svenkate@redhat.com>\n"
"Language-Team: Kannada <kn@li.org>\n"
"Language: kn\n"
@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
"X-Generator: Lokalize 1.2\n"
"X-Generator: Lokalize 1.5\n"
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
msgid "Screenshots"
@ -25,16 +25,15 @@ msgstr "ತೆರೆಚಿತ್ರಗಳು"
#: ../data/50-gnome-shell-screenshot.xml.in.h:2
msgid "Record a screencast"
msgstr ""
msgstr "ಒಂದು ಸ್ಕ್ರೀನ್‌ಕ್ಯಾಸ್ಟನ್ನು ರೆಕಾರ್ಡು ಮಾಡಿ"
#: ../data/50-gnome-shell-system.xml.in.h:1
#| msgid "File System"
msgid "System"
msgstr "ವ್ಯವಸ್ಥೆ"
#: ../data/50-gnome-shell-system.xml.in.h:2
msgid "Show the message tray"
msgstr ""
msgstr "ಸಂದೇಶ ಟ್ರೇ ಅನ್ನು ತೋರಿಸು"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
@ -79,6 +78,12 @@ msgid ""
"list. You can also manipulate this list with the EnableExtension and "
"DisableExtension DBus methods on org.gnome.Shell."
msgstr ""
"GNOME ಶೆಲ್ ವಿಸ್ತರಣೆಗಳು ಒಂದು uuid ಗುಣವನ್ನು ಹೊಂದಿವೆ; ಈ ಕೀಲಿ ಪಟ್ಟಿಯು ಲೋಡ್ "
"ಮಾಡಬೇಕಿರುವ "
"ವಿಸ್ತರಣೆಗಳ ಪಟ್ಟಿಯನ್ನು ತೋರಿಸುತ್ತದೆ. ಯಾವುದೆ ವಿಸ್ತರಣೆಗಳನ್ನು ಲೋಡ್‌ ಮಾಡಬೇಕಿದ್ದಲ್ಲಿ "
"ಅದು ಈ "
"ಪಟ್ಟಿಯಲ್ಲಿ ಇರುವುದು ಅತ್ಯಗತ್ಯ. org.gnome.Shell ನಲ್ಲಿ EnableExtension ಮತ್ತು "
"DisableExtension DBus ವಿಧಾನಗಳನ್ನು ಬಳಸಿಕೊಂಡೂ ಸಹ ಈ ಪಟ್ಟಿಯನ್ನು ನಿರ್ವಹಿಸಬಹುದು."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
msgid "Whether to collect stats about applications usage"
@ -91,6 +96,11 @@ msgid ""
"want to disable this for privacy reasons. Please note that doing so won't "
"remove already saved data."
msgstr ""
"ಶೆಲ್‌ ಸಾಮಾನ್ಯವಾಗಿ ಹೆಚ್ಚಾಗಿ ಬಳಸಲಾದ (ಉದಾ. ಆರಂಭಕಗಳಲ್ಲಿ) ಅನ್ವಯಗಳನ್ನು ತೋರಿಸಲು "
"ಸಕ್ರಿಯವಾದವುಗಳನ್ನು ಮೇಲ್ವಿಚಾರಣೆ ನಡೆಸುತ್ತದೆ. ಈ ದತ್ತಾಂಶವನ್ನು ಗೌಪ್ಯವಾಗಿ "
"ಇರಿಸಲಾಗುತ್ತದೆ, "
"ಹಾಗೂ ಗೌಪ್ಯತಾ ಕಾರಣಗಳಿದ್ದಲ್ಲಿ ನೀವು ಅದನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಬಹುದು. ಹಾಗೆ ಮಾಡುವುದರಿಂದ "
"ಉಳಿಸಲಾದ ಯಾವದೆ ದತ್ತಾಂಶವು ತೆಗೆದುಹಾಕಲ್ಪಡುವುದಿಲ್ಲ ಎನ್ನುವುದನ್ನು ನೆನಪಿಡಿ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
msgid "List of desktop file IDs for favorite applications"
@ -116,64 +126,75 @@ 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 ಎನ್ಯೂಮರೇಶನ್‌ನಿಂದ "
"ಬಂದಿರುತ್ತದೆ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
msgid ""
"Internally used to store the last session presence status for the user. The "
"value here is from the GsmPresenceStatus enumeration."
msgstr ""
"ಆಂತರಿಕವಾಗಿ ಬಳಕೆದಾರರಿಂದ ಸ್ಪಷ್ಟವಾಗಿ ಹೊಂದಿಸಲಾದ ಕೊನೆಯ ಅಧಿವೇಶನವನ್ನು ಶೇಖರಿಸಿಡಸಲು "
"ಬಳಸಲಾಗುತ್ತದೆ. ಇಲ್ಲಿರುವ ಮೌಲ್ಯವು GsmPresenceStatus ಎನ್ಯೂಮರೇಶನ್‌ನಿಂದ ಬಂದಿರುತ್ತದೆ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "ಯಾವಾಗಲೂ 'ನಿರ್ಗಮಿಸು' ಪರಿವಿಡಿಅಂಶವನ್ನು ಬಳಕೆದಾರ ಪರಿವಿಡಿಯಲ್ಲಿ ತೋರಿಸು."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
msgstr "ಕ್ಯಾಲೆಂಡರಿನಲ್ಲಿ ವಾರದ ದಿನವನ್ನು ತೋರಿಸು"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "true ಆದಲ್ಲಿ, ಕ್ಯಾಲೆಂಡರಿನಲ್ಲಿ ISO ವಾರದ ದಿನವನ್ನು ತೋರಿಸುತ್ತದೆ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "ಅನ್ವಯಗಳ ಮೆನುವನ್ನು ತೆರೆಯಬೇಕಿರುವ ಕೀಲಿಬೈಂಡಿಂಗ್"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "ಅನ್ವಯಗಳ ಮೆನುವನ್ನು ತೆರೆಯಬೇಕಿರುವ ಕೀಲಿಬೈಂಡಿಂಗ್."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to toggle the visibility of the message tray"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#, fuzzy
#| msgid "Keybinding to open the application menu."
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "ಅನ್ವಯಗಳ ಮೆನುವನ್ನು ತೆರೆಯಬೇಕಿರುವ ಕೀಲಿಬೈಂಡಿಂಗ್."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#, fuzzy
#| msgid "Keybinding to open the application menu"
msgid "Keybinding to toggle the screen recorder"
msgstr "ಅನ್ವಯಗಳ ಮೆನುವನ್ನು ತೆರೆಯಬೇಕಿರುವ ಕೀಲಿಬೈಂಡಿಂಗ್"
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "ಸಂದೇಶ ಟ್ರೇಯ ಗೋಚರಿಕೆಯನ್ನು ಹೊರಳಿಸಲು ಕೀಬೈಂಡಿಂಗ್"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#, fuzzy
#| msgid "Keybinding to open the application menu."
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "ಅನ್ವಯಗಳ ಮೆನುವನ್ನು ತೆರೆಯಬೇಕಿರುವ ಕೀಲಿಬೈಂಡಿಂಗ್."
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "ಸಂದೇಶ ಟ್ರೇಯ ಗೋಚರಿಕೆಯನ್ನು ಹೊರಳಿಸಲು ಕೀಬೈಂಡಿಂಗ್."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "ತೆರೆ ರೆಕಾರ್ಡರ್ ಅನ್ನು ಹೊರಳಿಸಲು ಕೀಬೈಂಡಿಂಗ್"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "ಒಳನಿರ್ಮಿತ ತೆರೆ ರೆಕಾರ್ಡರ್ ಅನ್ನು ಆರಂಭಿಸಲು/ನಿಲ್ಲಿಸಲು ಕೀಬೈಂಡಿಂಗ್."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "ಯಾವ ಕೀಲಿಮಣೆಯನ್ನು ಬಳಸಬೇಕಿದೆ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "ಬಳಸಬೇಕಿರುವ ಕೀಲಿಮಣೆಯ ಬಗೆ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "ಸ್ಕ್ರೀನ್‌ಕ್ಯಾಸ್ಟುಗಳನ್ನು ರೆಕಾರ್ಡು ಮಾಡಲು ಬಳಸಲಾಗುವ ಫ್ರೇಮ್‌ದರಗಳು."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -182,11 +203,11 @@ msgstr ""
"ರೆಕಾರ್ಡು ಮಾಡಲಾದ "
"ಸ್ಕ್ರೀನ್‌ಕ್ಯಾಸ್ಟಿನ ಫ್ರೇಮ್‌ದರ. "
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "ಸ್ಕ್ರೀನ್‌ಕ್ಯಾಸ್ಟ್‍ ಅನ್ನು ಎನ್ಕೋಡ್ ಮಾಡಲು ಬಳಸಲಾಗುವ gstreamer ಪೈಪ್‌ಲೈನ್"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -200,12 +221,31 @@ msgid ""
"threads=%T ! queue ! webmmux' and records to WEBM using the VP8 codec. %T is "
"used as a placeholder for a guess at the optimal thread count on the system."
msgstr ""
"ರೆಕಾರ್ಡಿಂಗ್‌ಗಳನ್ನು ಎನ್ಕೋಡ್ ಮಾಡಲು ಬಳಸಲಾದ GStreamer ಪೈಪ್‌ಲೈನ್‌ ಅನ್ನು "
"ಹೊಂದಿಸುತ್ತದೆ. ಇದು gst-"
"launch ನಲ್ಲಿ ಬಳಸಲಾದ ಸಿಂಟ್ಯಾಕ್ಸನ್ನು ಅನುಸರಿಸುತ್ತದೆ. ಪೈಪ್‌ಲೈನ್ ವಿಡಿಯೊವನ್ನು "
"ರೆಕಾರ್ಡು ಮಾಡಲು "
"ಒಂದು ನಿಯೋಜಿಸದೇ ಇರುವ ಸಿಂಕ್‌ಪ್ಯಾಡ್‌ಗೆ ಸಂಪರ್ಕಿತಗೊಂಡಿರಬೇಕು. ಇದು ಸಾಮಾನ್ಯವಾಗಿ "
"ಸಂಪರ್ಕಿತಗೊಂಡಿರದೆ ಇರುವ ಪೈಪ್‌ಲೈನ್ ಅನ್ನು ಹೊಂದಿರುತ್ತದೆ; ಆ ಪ್ಯಾಡ್‌ನಿಂದ ಔಟ್‌ಪುಟ್ "
"ಅನ್ನು ಔಟ್‌ಪುಟ್ "
"ಕಡತಕ್ಕೆ ಬರೆಯಲಾಗುತ್ತದೆ. ಆದರೆ ಪೈಪ್‌ಲೈನ್ ತನ್ನದೆ ಆದ ಔಟ್‌ಪುಟ್ ಅನ್ನು "
"ನೋಡಿಕೊಳ್ಳಬಲ್ಲದು - "
"shout2send ಅಥವ ಅದೇ ರೀತಿಯದರ ಮೂಲಕ icecast ಪೂರೈಕೆಗಣಕಕ್ಕೆ ಔಟ್‌ಪುಟ್ ಅನ್ನು ಕಳುಹಿಸಲು "
"ಇದನ್ನು ಬಳಸಬಹುದಾಗಿರುತ್ತದೆ. ಇದರ ಹೊಂದಿಕೆಯನ್ನು ರದ್ದುಗೊಳಿಸಿದಲ್ಲಿ ಅಥವ ಒಂದು ಖಾಲಿ "
"ಮೌಲ್ಯಕ್ಕೆ "
"ಹೊಂದಿಸಿದಲ್ಲಿ, ಪೂರ್ವನಿಯೋಜಿತ ಪೈಪ್‌ಲೈನ್ ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಇದು ಪ್ರಸ್ತುತ 'vp8enc "
"min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! "
"queue ! webmmux' ಆಗಿರುತ್ತದೆ ಮತ್ತು VP8 ಕೋಡೆಕ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು WEBM ಅನ್ನು "
"ರೆಕಾರ್ಡು "
"ಮಾಡುತ್ತದೆ. %T ಎನ್ನು ವ್ಯವಸ್ತೆಯಲ್ಲಿನ ಸೂಕ್ತವಾದ ಎಳೆಯ ಎಣಿಕೆಯನ್ನು ಊಹಿಸಲು ಒಂದು "
"ಪ್ಲೇಸ್‌ಹೋಲ್ಡರ್ "
"ಆಗಿ ಬಳಸಲಾಗುತ್ತದೆ."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "ಸ್ಕ್ರೀನ್‌ಕ್ಯಾಸ್ಟುಗಳನ್ನು ಶೇಖರಿಸಿಡಲು ಬಳಸಲಾಗುವ ಕಡತ ವಿಸ್ತರಣೆಗಳು"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -222,7 +262,6 @@ msgid "There was an error loading the preferences dialog for %s:"
msgstr "%s ಗಾಗಿ ಆದ್ಯತೆಗಳ ಸಂವಾದವನ್ನು ಲೋಡ್ ಮಾಡುವಲ್ಲಿ ದೋಷ ಉಂಟಾಗಿದೆ:"
#: ../js/extensionPrefs/main.js:164
#| msgid "<b>Extension</b>"
msgid "Extension"
msgstr "ವಿಸ್ತರಣೆ"
@ -231,11 +270,11 @@ msgid "Select an extension to configure using the combobox above."
msgstr ""
"ಮೇಲಿನ ಸಂಯೋಜನಾಚೌಕವನ್ನು ಬಳಸಿಕೊಂಡು ಸಂರಚಿಸಬೇಕಿರುವ ಒಂದು ವಿಸ್ತರಣೆಯನ್ನು ಆರಿಸಿ."
#: ../js/gdm/loginDialog.js:526
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "ಅಧಿವೇಶನ..."
#: ../js/gdm/loginDialog.js:674
#: ../js/gdm/loginDialog.js:680
msgctxt "title"
msgid "Sign In"
msgstr "ಒಳ ಪ್ರವೇಶಿಸಿ"
@ -243,55 +282,68 @@ msgstr "ಒಳ ಪ್ರವೇಶಿಸಿ"
#. 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.
#: ../js/gdm/loginDialog.js:741
#: ../js/gdm/loginDialog.js:740
msgid "Not listed?"
msgstr "ಪಟ್ಟಿಯಲ್ಲಿಲ್ಲವೆ?"
#: ../js/gdm/loginDialog.js:894 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:898 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:166
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:168
msgid "Cancel"
msgstr "ರದ್ದು ಮಾಡು"
#: ../js/gdm/loginDialog.js:899
#: ../js/gdm/loginDialog.js:903
msgctxt "button"
msgid "Sign In"
msgstr "ಒಳಗೆ ಪ್ರವೇಶಿಸು"
#: ../js/gdm/loginDialog.js:1238
#. 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:962 ../js/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "ಬಳಕೆದಾರ ಹೆಸರು: "
#: ../js/gdm/loginDialog.js:1269
msgid "Login Window"
msgstr "ಪ್ರವೇಶದ ಕಿಟಕಿ"
#: ../js/gdm/powerMenu.js:88 ../js/ui/userMenu.js:658 ../js/ui/userMenu.js:662
#: ../js/ui/userMenu.js:773
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:35
#| msgid "Power Off"
msgid "Power"
msgstr "ವಿದ್ಯುಚ್ಛಕ್ತಿ"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "ಅಮಾನತ್ತಿನಲ್ಲಿಡು"
#: ../js/gdm/powerMenu.js:93
#: ../js/gdm/powerMenu.js:94
msgid "Restart"
msgstr "ಮರಳಿ ಆರಂಭಿಸು"
#: ../js/gdm/powerMenu.js:98 ../js/ui/userMenu.js:660 ../js/ui/userMenu.js:662
#: ../js/ui/userMenu.js:772
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "ಸ್ಥಗಿತಗೊಳಿಸು"
#: ../js/gdm/util.js:148
#| msgid "Authentication Required"
#: ../js/gdm/util.js:152
msgid "Authentication error"
msgstr "ದೃಢೀಕರಣ ದೋಷ"
#. Translators: this message is shown below the password entry field
#. to indicate the user can swipe their finger instead
#: ../js/gdm/util.js:265
#: ../js/gdm/util.js:269
msgid "(or swipe finger)"
msgstr "(ಅಥವ ನಿಮ್ಮ ಬೆರಳನ್ನು ಉಜ್ಜಿ)"
#: ../js/gdm/util.js:290
#: ../js/gdm/util.js:294
#, c-format
msgid "(e.g., user or %s)"
msgstr ""
msgstr "(ಉದಾ., ಬಳಕೆದಾರ ಅಥವ %s)"
#: ../js/misc/util.js:92
msgid "Command not found"
@ -325,7 +377,7 @@ msgstr "SETTINGS"
msgid "New Window"
msgstr "ಹೊಸ ವಿಂಡೊ"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "ಎಲ್ಲಾ ಅಚ್ಚುಮೆಚ್ಚಿನವುಗಳನ್ನು ತೆಗೆದುಹಾಕು"
@ -489,16 +541,16 @@ msgstr "ಈ ವಾರ"
msgid "Next week"
msgstr "ಮುಂದಿನ ವಾರ"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "ತೆಗೆದುಹಾಕಬಹುದಾದ ಸಾಧನಗಳು"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "%s ನೊಂದಿಗೆ ತೆರೆ"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "ಹೊರತಳ್ಳು"
@ -528,14 +580,6 @@ msgstr "ದಾಟುಪದ: "
msgid "Key: "
msgstr "ಕೀಲಿ: "
#. 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/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "ಬಳಕೆದಾರ ಹೆಸರು: "
#: ../js/ui/components/networkAgent.js:266
msgid "Identity: "
msgstr "ಗುರುತು: "
@ -646,7 +690,7 @@ msgstr "ಸಂಪರ್ಕ ದೋಷ"
#: ../js/ui/components/telepathyClient.js:491
msgid "Unmute"
msgstr ""
msgstr "ಮಾತುಬರಿಸು"
#: ../js/ui/components/telepathyClient.js:491
msgid "Mute"
@ -655,35 +699,35 @@ msgstr "ಮೂಕಗೊಳಿಸು"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:952
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "<b>%A</b> ರಂದು <b>%X</b> ಗೆ ಕಳುಹಿಸಲಾಗಿದೆ"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:958
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "<b>%A</b>, <b>%B %d</b> ರಂದು ಕಳುಹಿಸಲಾಗಿದೆ"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:963
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "%A</b>, <b>%B %d</b>, %Y ರಂದು ಕಳುಹಿಸಲಾಗಿದೆ"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:992
#, c-format
msgid "%s is now known as %s"
msgstr "%s ಈಗ %s ಆಗಿದ್ದಾರೆ"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1092
#, c-format
msgid "Invitation to %s"
msgstr "%s ಗಾಗಿನ ಆಹ್ವಾನ"
@ -691,42 +735,42 @@ msgstr "%s ಗಾಗಿನ ಆಹ್ವಾನ"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1100
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s ನಿಮ್ಮನ್ನು %s ಗೆ ಸೇರುವಂತೆ ಆಹ್ವಾನಿಸುತ್ತಿದ್ದಾರೆ"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1102
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
msgid "Decline"
msgstr "ತಿರಸ್ಕರಿಸು"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1103
#: ../js/ui/components/telepathyClient.js:1182
#: ../js/ui/components/telepathyClient.js:1245
msgid "Accept"
msgstr "ಅಂಗೀಕರಿಸು"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1133
#, c-format
msgid "Video call from %s"
msgstr "%s ಇಂದ ವೀಡಿಯೊ ಕರೆ ಬಂದಿದೆ"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1136
#, c-format
msgid "Call from %s"
msgstr "%s ಇಂದ ಕರೆ ಬಂದಿದೆ"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1141
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "ತಿರಸ್ಕರಿಸು"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1143
msgid "Answer"
msgstr "ಉತ್ತರ"
@ -735,106 +779,106 @@ msgstr "ಉತ್ತರ"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1175
#, c-format
msgid "%s is sending you %s"
msgstr "%s ರವರು ನಿಮಗೆ %s ಅನ್ನು ಕಳುಹಿಸುತ್ತಿದ್ದಾರೆ"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
#, c-format
msgid "%s would like permission to see when you are online"
msgstr ""
"ನೀವು ಯಾವಾಗ ಆನ್‌ಲೈನ್‌ನಲ್ಲಿ ಇರುತ್ತೀರಿ ಎಂದು ತಿಳಿಯಲು %s ರವರು ನಿಮ್ಮ ಅನುಮತಿಯನ್ನು "
"ಕೋರಿದ್ದಾರೆ"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1302
msgid "Network error"
msgstr "ಜಾಲಬಂಧದ ದೋಷ"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1304
msgid "Authentication failed"
msgstr "ದೃಢೀಕರಣವು ವಿಫಲಗೊಂಡಿದೆ"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1306
msgid "Encryption error"
msgstr "ಗೂಢಲಿಪೀಕರಣ ದೋಷ"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate not provided"
msgstr "ಪ್ರಮಾಣಪತ್ರವನ್ನು ಒದಗಿಸಲಾಗಿಲ್ಲ"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate untrusted"
msgstr "ಪ್ರಮಾಣಪತ್ರವನ್ನು ನಂಬಲಾಗಿಲ್ಲ"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate expired"
msgstr "ಪ್ರಮಾಣಪತ್ರದ ಕಾಲಾವಧಿ ತೀರಿದೆ"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate not activated"
msgstr "ಪ್ರಮಾಣಪತ್ರವು ಸಕ್ರಿಯಗೊಂಡಿಲ್ಲ"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate hostname mismatch"
msgstr "ಪ್ರಮಾಣಪತ್ರದ ಅತಿಥೇಯದ ಹೆಸರು ತಾಳೆಯಾಗುತ್ತಿಲ್ಲ"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate fingerprint mismatch"
msgstr "ಪ್ರಮಾಣಪತ್ರದ ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ತಾಳೆಯಾಗುತ್ತಿಲ್ಲ"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1320
msgid "Certificate self-signed"
msgstr "ಪ್ರಮಾಣಪತ್ರವು ಸ್ವತಃ ಸೈನ್ ಮಾಡಲ್ಪಟ್ಟಿದೆ"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1322
msgid "Status is set to offline"
msgstr "ಸ್ಥಿತಿಯನ್ನು ಆಫ್‌ಲೈನ್‌ ಎಂದು ಸೂಚಿಸಿದ್ದಾರೆ."
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1324
msgid "Encryption is not available"
msgstr "ಗೂಢಲಿಪೀಕರಣ ಲಭ್ಯವಿಲ್ಲ"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1326
msgid "Certificate is invalid"
msgstr "ಪ್ರಮಾಣಪತ್ರವು ಅಮಾನ್ಯವಾಗಿದೆ"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection has been refused"
msgstr "ಸಂಪರ್ಕವನ್ನು ನಿರಾಕರಿಸಲಾಗಿದೆ"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection can't be established"
msgstr "ಸಂಪರ್ಕವನ್ನು ಸಾಧಿಸಲಾಗಿಲ್ಲ"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been lost"
msgstr "ಸಂಪರ್ಕವು ಕಡಿದು ಹೋಗಿದೆ"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1334
msgid "This account is already connected to the server"
msgstr "ಈ ಖಾತೆಯು ಈಗಾಗಲೆ ಪರಿಚಾರಕದೊಂದಿಗೆ ಸಂಪರ್ಕ ಜೋಡಿಸಲಾಗಿದೆ"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1336
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"ಒಂದು ಹೊಸ ಸಂಪರ್ಕದಿಂದ ಈ ಸಂಪರ್ಕವನ್ನು ಇದೇ ಸಂಪನ್ಮೂಲವನ್ನು ಬಳಸಿಕೊಂಡು ಬದಲಾಯಿಸಲಾಗಿದೆ"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1338
msgid "The account already exists on the server"
msgstr "ಖಾತೆಯು ಈಗಾಗಲೆ ಪರಿಚಾರಕದಲ್ಲಿ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1340
msgid "Server is currently too busy to handle the connection"
msgstr "ಪರಿಚಾರಕಕ್ಕೆ ಬಿಡುವಿಲ್ಲದ ಕಾರಣ ಸಂಪರ್ಕವನ್ನು ನಿಭಾಯಿಸಲಾಗುತ್ತಿಲ್ಲ"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate has been revoked"
msgstr "ಪ್ರಮಾಣಪತ್ರವನ್ನು ಹಿಂದಕ್ಕೆ ತೆಗೆದುಕೊಳ್ಳಲಾಗಿದೆ"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
@ -842,7 +886,7 @@ msgstr ""
"ಗೂಢಲಿಪೀಕರಣವನ್ನು "
"ಹೊಂದಿದೆ"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -851,31 +895,30 @@ msgstr ""
"ಲೈಬ್ರರಿಯಿಂದ "
"ನಿಗದಿ ಪಡಿಸಲಾದ ಮಿತಿಗಳನ್ನು ಮೀರಿದೆ."
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Internal error"
msgstr "ಆಂತರಿಕ ತಪ್ಪು"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
#, c-format
msgid "Connection to %s failed"
msgstr "%s ಗಾಗಿನ ಸಂಪರ್ಕವು ವಿಫಲಗೊಂಡಿದೆ"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1367
msgid "Reconnect"
msgstr "ಮರಳಿ ಸಂಪರ್ಕ ಜೋಡಿಸು"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Edit account"
msgstr "ಖಾತೆಯನ್ನು ಸಂಪಾದಿಸು"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1413
msgid "Unknown reason"
msgstr "ಅಜ್ಞಾತ ಕಾರಣ"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#| msgid "Applications"
#: ../js/ui/dash.js:254 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "ಅನ್ವಯಗಳನ್ನು ತೋರಿಸು"
@ -883,14 +926,14 @@ msgstr "ಅನ್ವಯಗಳನ್ನು ತೋರಿಸು"
msgid "Date and Time Settings"
msgstr "ದಿನಾಂಕ ಹಾಗು ಸಮಯದ ಸಿದ್ಧತೆಗಳು"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "ಕ್ಯಾಲೆಂಡರನ್ನು ತೆರೆ"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A %B %e, %Y"
@ -995,11 +1038,11 @@ msgid "Download and install '%s' from extensions.gnome.org?"
msgstr ""
"'%s' ಅನ್ನು extensions.gnome.org ಇಂದ ಡೌನ್‌ಲೋಡ್ ಮಾಡಿಕೊಂಡು ಅನುಸ್ಥಾಪಿಸಬೇಕೆ?"
#: ../js/ui/keyboard.js:327
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "ಟ್ರೇ"
#: ../js/ui/keyboard.js:561 ../js/ui/status/keyboard.js:194
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "ಕೀಲಿಮಣೆ"
@ -1052,24 +1095,23 @@ msgstr "ಆಕರವನ್ನು ನೋಡಿ"
msgid "Web Page"
msgstr "ಜಾಲ ಪುಟ"
#: ../js/ui/messageTray.js:1080
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "ತೆರೆ"
#: ../js/ui/messageTray.js:1087
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "ತೆಗೆದು ಹಾಕು"
#: ../js/ui/messageTray.js:2052
#: ../js/ui/messageTray.js:1531
msgid "Message Tray"
msgstr ""
msgstr "ಸಂದೇಶ ಟ್ರೇ"
#: ../js/ui/messageTray.js:2508
#: ../js/ui/messageTray.js:2543
msgid "System Information"
msgstr "ವ್ಯವಸ್ಥೆಯ ಮಾಹಿತಿ"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#| msgid "Unknown"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "ಗೊತ್ತಿಲ್ಲದ"
@ -1125,33 +1167,29 @@ msgstr "ದಯವಿಟ್ಟು ಒಂದು ಆಜ್ಞೆಯನ್ನು ನ
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#| msgctxt "calendar heading"
#| msgid "%A, %B %d"
#: ../js/ui/screenShield.js:81
msgid "%A, %B %d"
msgstr "%A, %B %d"
#: ../js/ui/screenShield.js:144
#: ../js/ui/screenShield.js:145
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] ""
msgstr[1] ""
msgstr[0] "%d ಹೊಸ ಸಂದೇಶ"
msgstr[1] "%d ಹೊಸ ಸಂದೇಶಗಳು"
#: ../js/ui/screenShield.js:146
#, fuzzy, c-format
#| msgid "Notifications"
#: ../js/ui/screenShield.js:147
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "ಸೂಚನೆಗಳು"
msgstr[1] "ಸೂಚನೆಗಳು"
msgstr[0] "%d ಹೊಸ ಸೂಚನೆ"
msgstr[1] "%d ಹೊಸ ಸೂಚನೆಗಳು"
#: ../js/ui/searchDisplay.js:275
msgid "Searching..."
msgstr "ಹುಡುಕಲಾಗುತ್ತಿದೆ..."
#: ../js/ui/searchDisplay.js:323
#| msgid "No matching results."
msgid "No results."
msgstr "ಯಾವುದೆ ಫಲಿತಾಂಶಗಳಿಲ್ಲ."
@ -1172,18 +1210,16 @@ msgid "Hide Text"
msgstr "ಪಠ್ಯವನ್ನು ಅಡಗಿಸು"
#: ../js/ui/shellMountOperation.js:368
#| msgid "Password:"
msgid "Password"
msgstr "ಗುಪ್ತಪದ"
#: ../js/ui/shellMountOperation.js:389
#| msgid "Password:"
msgid "Remember Password"
msgstr "ಈ ಗುಪ್ತಪದವನ್ನು ನೆನಪಿನಲ್ಲಿಡು"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:169
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:171
msgid "Unlock"
msgstr ""
msgstr "ಅನ್‌ಲಾಕ್ ಮಾಡು"
#: ../js/ui/status/accessibility.js:39
msgid "Accessibility"
@ -1299,7 +1335,7 @@ msgstr "ಕೀಲಿಮಣೆ ಸಿದ್ಧತೆಗಳು"
msgid "Mouse Settings"
msgstr "ಮೌಸ್‌ನ ಸಿದ್ಧತೆಗಳು"
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:236
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "ಧ್ವನಿಯ ಸಿದ್ಧತೆಗಳು"
@ -1332,10 +1368,10 @@ msgid "Device %s wants to pair with this computer"
msgstr "%s ಎನ್ನುವ ಸಾಧನದೊಂದಿಗೆ ಸಂಪರ್ಕ ಜೋಡಿಸಲು ಬಯಸುತ್ತಿದೆ"
#: ../js/ui/status/bluetooth.js:379
#, fuzzy, c-format
#| msgid "Please confirm whether the PIN '%s' matches the one on the device."
#, c-format
msgid "Please confirm whether the PIN '%06d' matches the one on the device."
msgstr "'%s' ಎನ್ನುವ PIN ಸಾಧನದಲ್ಲಿರುವುದಕ್ಕೆ ತಾಳೆಯಾಗುತ್ತದೆಯೆ ಎಂದು ಖಚಿತಪಡಿಸಿ."
msgstr ""
"'%06d' ಎಂಬ PIN ಸಾಧನದಲ್ಲಿರುವುದಕ್ಕೆ ತಾಳೆಯಾಗುತ್ತದೆಯೆ ಎಂದು ದಯವಿಟ್ಟು ಖಚಿತಪಡಿಸಿ."
#: ../js/ui/status/bluetooth.js:381
msgid "Matches"
@ -1358,17 +1394,17 @@ msgstr "ದಯವಿಟ್ಟು ಸಾಧನದಲ್ಲಿ ಸೂಚಿಸಿ
msgid "OK"
msgstr "ಸರಿ"
#: ../js/ui/status/keyboard.js:227
#: ../js/ui/status/keyboard.js:228
msgid "Show Keyboard Layout"
msgstr "ಕೀಲಿಮಣೆ ವಿನ್ಯಾಸವನ್ನು ತೋರಿಸು"
#: ../js/ui/status/keyboard.js:232
#: ../js/ui/status/keyboard.js:233
msgid "Region and Language Settings"
msgstr "ಪ್ರದೇಶ ಮತ್ತು ಭಾಷೆ ಸಿದ್ಧತೆಗಳು"
#: ../js/ui/status/lockScreenMenu.js:18
msgid "Volume, network, battery"
msgstr ""
msgstr "ಧ್ವನಿಪ್ರಮಾಣ, ಜಾಲಬಂಧ, ಬ್ಯಾಟರಿ"
#: ../js/ui/status/network.js:94
msgid "<unknown>"
@ -1580,13 +1616,12 @@ msgid "Computer"
msgstr "ಗಣಕ"
#: ../js/ui/status/power.js:217
#| msgid "Unknown"
msgctxt "device"
msgid "Unknown"
msgstr "ಗೊತ್ತಿಲ್ಲದ"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:223
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ"
@ -1594,75 +1629,71 @@ msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ"
msgid "Microphone"
msgstr "ಮೈಕ್ರೊಫೋನ್"
#: ../js/ui/unlockDialog.js:176
#: ../js/ui/unlockDialog.js:178
msgid "Log in as another user"
msgstr ""
msgstr "ಇನ್ನೊಬ್ಬ ಬಳಕೆದಾರನಾಗಿ ಪ್ರವೇಶಿಸಿ"
#: ../js/ui/userMenu.js:175
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "ಲಭ್ಯ"
#: ../js/ui/userMenu.js:178
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "ಕಾರ್ಯನಿರತ"
#: ../js/ui/userMenu.js:181
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "ಅಗೋಚರ"
#: ../js/ui/userMenu.js:184
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "ಹೊರಗೆ ಹೋಗಿದ್ದೇನೆ"
#: ../js/ui/userMenu.js:187
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "ಜಡ"
#: ../js/ui/userMenu.js:190
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "ಅಲಭ್ಯ"
#: ../js/ui/userMenu.js:613 ../js/ui/userMenu.js:754
msgid "Switch User"
msgstr "ಬಳಕೆದಾರನನ್ನು ಬದಲಿಸು"
#: ../js/ui/userMenu.js:614
#, fuzzy
#| msgid "Switch User"
msgid "Switch Session"
msgstr "ಬಳಕೆದಾರನನ್ನು ಬದಲಿಸು"
#: ../js/ui/userMenu.js:738
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "ಸೂಚನೆಗಳು"
#: ../js/ui/userMenu.js:746
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "ವ್ಯವಸ್ಥೆಯ ಸಿದ್ಧತೆಗಳು"
#: ../js/ui/userMenu.js:759
#| msgctxt "title"
#| msgid "Log Out"
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "ಬಳಕೆದಾರನನ್ನು ಬದಲಿಸು"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "ನಿರ್ಗಮಿಸು"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr ""
msgstr "ಲಾಕ್ ಮಾಡು"
#: ../js/ui/userMenu.js:779
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr ""
msgstr "ಅಪ್‌ಡೇಟ್‌ಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸು ಮತ್ತು ಮರಳಿಸ್ಥಾಪಿಸು"
#: ../js/ui/userMenu.js:797
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "ನಿಮ್ಮ ಹರಟೆಯ ಸ್ಥಿತಿಯನ್ನು ಕಾರ್ಯನಿರತರಾಗಿದ್ದಾರೆ ಎಂದು ಬದಲಾಯಿಸಲಾಗಿದೆ."
#: ../js/ui/userMenu.js:798
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
msgstr ""
"ಸಂಭಾಷಣೆಯ ಸಂದೇಶಗಳೂ ಸಹ ಸೇರಿದಂತೆ ಸೂಚನೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿರುತ್ತದೆ. ನೀವು "
"ಬೇರೆಯವರಿಂದ ಬಂದ ಸಂದೇಶಗಳನ್ನು ನೀವು ನೋಡಿಲ್ಲ ಎಂದು ಅವರಿಗೆ ಗೊತ್ತಾಗುವಂತೆ ನಿಮ್ಮ "
"ಆನ್‌ಲೈನ್ "
"ಸ್ಥಿತಿಯನ್ನು ಹೊಂದಿಸಲಾಗಿರುತ್ತದೆ."
#: ../js/ui/viewSelector.js:85
msgid "Windows"
@ -1676,7 +1707,7 @@ msgstr "ಅನ್ವಯಗಳು"
msgid "Search"
msgstr "ಹುಡುಕು"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1685,12 +1716,12 @@ msgstr ""
"ಕ್ಷಮಿಸಿ, ನಿಮಗಾಗಿ ಯಾವುದೆ ವಿವೇಕವಾಣಿ ಇಲ್ಲ :\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "%s Oracle ಹೇಳುವಂತೆ"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "ನಿಮ್ಮ ಮೆಚ್ಚಿನ ಈಸ್ಟರ್ ಮೊಟ್ಟೆ"
@ -1700,7 +1731,6 @@ msgid "'%s' is ready"
msgstr "'%s' ಸಿದ್ಧಗೊಂಡಿದೆ"
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
#| msgid "Open Calendar"
msgid "Evolution Calendar"
msgstr "Evolution ಕ್ಯಾಲೆಂಡರ್"
@ -1726,23 +1756,23 @@ msgstr[1] "%u ಇನ್‌ಪುಟ್‌ಗಳು"
msgid "System Sounds"
msgstr "ವ್ಯವಸ್ಥೆಯ ಧ್ವನಿಗಳು"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "ಮುದ್ರಿಸಬಹುದಾದ ಆವೃತ್ತಿ"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "ಪ್ರವೇಶದ ತೆರೆಗಾಗಿ GDM ಬಳಸಿದ ಪ್ರಕಾರ"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr ""
msgstr "ನಿಶ್ಚಿತ ಸ್ಥಿತಿಯನ್ನು ಬಳಸು, ಉದಾ. ಪ್ರವೇಶ ತೆರೆಗಾಗಿ \"gdm\""
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr ""
msgstr "ಸಾಧ್ಯವಿರುವ ಸ್ಥಿತಿಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡು"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "'%s' ಅನ್ನು ಆರಂಭಿಸುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ"
@ -1767,6 +1797,10 @@ msgstr "ಪೂರ್ವನಿಯೋಜಿತ"
msgid "Authentication dialog was dismissed by the user"
msgstr "ದೃಢೀಕರಣದ ಸಂವಾದವನ್ನು ಬಳಕೆದಾರರಿಂದ ತಿರಸ್ಕರಿಸಲಾಗಿದೆ"
#~| msgid "Switch User"
#~ msgid "Switch Session"
#~ msgstr "ಅಧಿವೇಶನವನ್ನು ಬದಲಿಸು"
#~ msgid "disabled OpenSearch providers"
#~ msgstr "ಅಶಕ್ತಗೊಳಿಸಲಾದ OpenSearch ಒದಗಿಸುವವರು"

482
po/lt.po

File diff suppressed because it is too large Load Diff

299
po/ml.po
View File

@ -8,10 +8,10 @@
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: 2012-09-20 16:11+0000\n"
"PO-Revision-Date: 2012-11-26 15:02+0530\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-10-31 16:48+0000\n"
"PO-Revision-Date: 2012-11-26 14:54+0530\n"
"Last-Translator: Ani Peter <peter.ani@gmail.com>\n"
"Language-Team: Malayalam <discuss@lists.smc.org.in>\n"
"Language: ml\n"
@ -23,7 +23,6 @@ msgstr ""
"X-DamnedLies-Scope: partial\n"
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
#| msgid "Screen position"
msgid "Screenshots"
msgstr "സ്ക്രീന്‍ഷോട്ടുകള്‍"
@ -32,12 +31,10 @@ msgid "Record a screencast"
msgstr "ഒരു സ്ക്രീന്‍കാസ്റ്റ് റിക്കോര്‍ഡ് ചെയ്യുക"
#: ../data/50-gnome-shell-system.xml.in.h:1
#| msgid "File System"
msgid "System"
msgstr "സിസ്റ്റം"
#: ../data/50-gnome-shell-system.xml.in.h:2
#| msgid "Message Tray"
msgid "Show the message tray"
msgstr "സന്ദേശത്തിന്റെ ട്രേ കാണിയ്ക്കുക"
@ -152,52 +149,65 @@ msgstr ""
"GsmPresenceStatus തരത്തിലുള്ളതാകുന്നു."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "ഉപയോക്താവിനുള്ള മെനുവില്‍ എപ്പോഴും 'പുറത്തു് പോകുക' കാണിയ്ക്കുക."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
msgstr "കലണ്ടറിലുള്ള ആഴ്ച തീയിതി കാണിയ്ക്കുക"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "true എങ്കില്‍, കലണ്ടറില്‍ ഐഎസ്ഒ ആഴ്ച തീയതി കാണിയ്ക്കുക."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "പ്രയോഗത്തിന്റെ മെനു തുറക്കുന്നതിനുള്ള കീക്കൂട്ടം"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "പ്രയോഗത്തിന്റെ മെനു തുറക്കുന്നതിനുള്ള കീക്കൂട്ടം."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "സന്ദേശ ട്രേയുടെ ദൃശ്യത ടൊഗ്ഗിള്‍ ചെയ്യുന്നതിനുള്ള കീക്കൂട്ടം"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "സന്ദേശ ട്രേയുടെ ദൃശ്യത ടൊഗ്ഗിള്‍ ചെയ്യുന്നതിനുള്ള കീക്കൂട്ടം."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "സ്ക്രീന്‍ റിക്കോര്‍ഡര്‍ ടൊഗ്ഗിള്‍ ചെയ്യുന്നതിനുള്ള കീക്കൂട്ടം"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr ""
"ബിള്‍ട്ടിന്‍ സ്ക്രീന്‍ റിക്കോര്‍ഡര്‍ തുടങ്ങുവാന്‍/നിര്‍ത്തുന്നതിനുള്ള "
"കീക്കൂട്ടം."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "ഏതു് കീബോര്‍ഡ് ഉപയോഗിയ്ക്കണം"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "ഏതു് തരം കീബോര്‍ഡ് ഉപയോഗിയ്ക്കണം."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "സ്ക്രീന്‍കാസ്റ്റുകള്‍ റിക്കോര്‍ഡ് ചെയ്യുന്നതിനുള്ള ഫ്രെയിം റേറ്റ്."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -206,23 +216,12 @@ msgstr ""
"സ്ക്രീന്‍കാസ്റ്റിന്റെ "
"ഫ്രെയിംറേറ്റ്, ഒരു സെക്കന്‍ഡില്‍ ഒരു ഫ്രെയിം."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "സ്ക്രീന്‍കാസ്റ്റ് എന്‍കോഡ് ചെയ്യുന്നതിനുള്ള gstreamer പൈപ്പ്‌ലൈന്‍"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
#| msgid ""
#| "Sets the GStreamer pipeline used to encode recordings. It follows the "
#| "syntax used for gst-launch. The pipeline should have an unconnected sink "
#| "pad where the recorded video is recorded. It will normally have a "
#| "unconnected source pad; output from that pad will be written into the "
#| "output file. However the pipeline can also take care of its own output - "
#| "this might be used to send the output to an icecast server via shout2send "
#| "or similar. When unset or set to an empty value, the default pipeline "
#| "will be used. This is currently 'vp8enc quality=8 speed=6 threads=%T ! "
#| "queue ! webmmux' and records to WEBM using the VP8 codec. %T is used as a "
#| "placeholder for a guess at the optimal thread count on the system."
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
"used for gst-launch. The pipeline should have an unconnected sink pad where "
@ -236,19 +235,17 @@ msgid ""
"used as a placeholder for a guess at the optimal thread count on the system."
msgstr ""
"റിക്കോര്‍ഡിങുകള്‍ എന്‍കോഡ് ചെയ്യുന്നതിനായി GStreamer പൈപ്പ് ലൈന്‍ "
"ഉപയോഗിയ്ക്കുന്നു. "
"gst-launch-നുള്ള സിന്റാക്സ് ഉപയോഗിയ്ക്കുന്നു. കാലിയായി സജ്ജമാക്കുമ്പോള്‍ "
"കാലിയാകുന്നു."
"ഇതു് നിലവില്‍ 'vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 "
"deadline=1000000 "
"threads=%T ! queue ! webmmux' ആകുന്നുസ WEBM VP8 കോഡ് ഉപയോഗിച്ചു് റിക്കോര്‍ഡ് "
"ചെയ്യുന്നു."
"ഉപയോഗിയ്ക്കുന്നു. gst-launch-"
"നുള്ള സിന്റാക്സ് ഉപയോഗിയ്ക്കുന്നു. കാലിയായി സജ്ജമാക്കുമ്പോള്‍ "
"കാലിയാകുന്നു.ഇതു് നിലവില്‍ 'vp8enc "
"min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! "
"queue ! webmmux' ആകുന്നുസ WEBM VP8 കോഡ് ഉപയോഗിച്ചു് റിക്കോര്‍ഡ് ചെയ്യുന്നു."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "സ്ക്രീന്‍കാസ്റ്റ് സൂക്ഷിയ്ക്കുന്നതിനുള്ള ഫയല്‍ എക്സ്റ്റെന്‍ഷന്‍"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -274,11 +271,11 @@ msgstr ""
"മുകളിലുള്ള കോമ്പോ ബോക്സ് ഉപയോഗിച്ചു് ക്രമീകരിയ്ക്കുന്നതിനുള്ളൊരു "
"എക്സ്റ്റെന്‍ഷന്‍ തെര‍ഞ്ഞെടുക്കുക."
#: ../js/gdm/loginDialog.js:526
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "പ്രവര്‍ത്തനവേള"
#: ../js/gdm/loginDialog.js:674
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "അകത്തുകയറുക"
@ -286,42 +283,47 @@ msgstr "അകത്തുകയറുക"
#. 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.
#: ../js/gdm/loginDialog.js:741
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "ലഭ്യമല്ലേ?"
#: ../js/gdm/loginDialog.js:894 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:166
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "വേണ്ട"
#: ../js/gdm/loginDialog.js:899
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "അകത്തുകയറുക"
#: ../js/gdm/loginDialog.js:1238
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "പ്രവേശന ജാലകം"
#: ../js/gdm/powerMenu.js:88 ../js/ui/userMenu.js:658 ../js/ui/userMenu.js:662
#: ../js/ui/userMenu.js:773
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:35
#| msgid "Power Off"
msgid "Power"
msgstr "പവര്‍"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "താത്കാലികമായി നിര്‍ത്തുക"
#: ../js/gdm/powerMenu.js:93
#: ../js/gdm/powerMenu.js:94
msgid "Restart"
msgstr "പുനരാരംഭിക്കുക"
#: ../js/gdm/powerMenu.js:98 ../js/ui/userMenu.js:660 ../js/ui/userMenu.js:662
#: ../js/ui/userMenu.js:772
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "നിര്‍ത്തുക"
#: ../js/gdm/util.js:148
#| msgid "Authentication Required"
msgid "Authentication error"
msgstr "തിരിച്ചറിയല്‍ പിശക്"
@ -368,7 +370,7 @@ msgstr "ക്രമീകരണങ്ങള്‍"
msgid "New Window"
msgstr "പുതിയ വിന്‍ഡോ"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "ഇഷ്ടപ്പെട്ടവയില്‍ നിന്നും നീക്കം ചെയ്യുക"
@ -532,16 +534,16 @@ msgstr "ഈ ആഴ്ച"
msgid "Next week"
msgstr "അടുത്ത ആഴ്ച"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "നീക്കം ചെയ്യാവുന്ന ഡിവൈസുകള്‍"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "%s ഉപയോഗിച്ചു തുറക്കുക"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "പുറന്തള്ളുക"
@ -699,35 +701,35 @@ msgstr "നിശബ്ദമാക്കുക"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "<b>%X</b>-നു് <b>%A</b>-ല്‍ അയച്ചിരിയ്ക്കുന്നു"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "<b>%A</b>, <b>%B %d</b>-നു് അയച്ചിരിയ്ക്കുന്നു"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "<b>%A</b>, <b>%B %d</b>, %Y-നു് അയച്ചിരിയ്ക്കുന്നു"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:990
#, c-format
msgid "%s is now known as %s"
msgstr "%s ഇപ്പോള്‍ %s ആയിട്ടാണ് അറിയപ്പെടുന്നത്"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "%s ലേക്കുള്ള ക്ഷണം"
@ -735,42 +737,42 @@ msgstr "%s ലേക്കുള്ള ക്ഷണം"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s നിങ്ങളെ %sഇലേക്കു ചേരാന്‍ ക്ഷണിക്കുന്നുണ്ട്"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "നിരസിക്കുക"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "സ്വീകരിക്കുക"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "%s-ല്‍ നിന്നുള്ള വീഡിയോ കോള്‍"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "%s-ല്‍ നിന്നുള്ള കോള്‍"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "നിരസിക്കു"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "എടുക്കുക"
@ -779,113 +781,113 @@ msgstr "എടുക്കുക"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "%s നിങ്ങള്‍ക്കു് %s അയച്ചിരിയ്ക്കുന്നു"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr ""
"നിങ്ങള്‍ ഓണ്‍ലൈന്‍ ആകുമ്പോള്‍ കാണുന്നതിനുള്ള അനുമതി %s-നു് ആവശ്യമുണ്ടു്"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "ശൃംഖലയില്‍ പിഴവു്"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "തിരിച്ചറിയല്‍ പ്രക്രിയ പരാജയപ്പെട്ടു"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "എന്‍ക്രിപ്ഷനില്‍ പിശകു്"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "സാക്ഷ്യപത്രം നല്‍കിയില്ല"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "സാക്ഷ്യംപത്രം വിശ്വാസമില്ലാത്തു്"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "സാക്ഷ്യപത്രം കാലാവധി തീര്‍ന്നതു്"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "സാക്ഷ്യപത്രം സജീകമാക്കാത്തതു്"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "സാക്ഷ്യപത്രത്തിലെ ഹോസ്റ്റിന്റെ പേരു് പൊരുത്തമില്ല"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "സാക്ഷ്യപത്രത്തിലെ ഒപ്പു് പൊരുത്തമില്ല"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "സാക്ഷ്യപത്രം സ്വയം ഒപ്പിട്ടതാണു്"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "അവസ്ഥ ഓഫ്‌ലൈന്‍ ആയി സജ്ജമാക്കിയിരിയ്ക്കുന്നു"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "എന്‍ക്രിപ്ഷന്‍ ലഭ്യമല്ല"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "സാക്ഷ്യപത്രം തെറ്റാണു്"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "കണക്ഷന്‍ നിഷേധിച്ചിരിയ്ക്കുന്നു"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "കണക്ഷന്‍ സ്ഥാപിയ്ക്കുവാന്‍ സാധ്യമല്ല"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "കണക്ഷന്‍ നഷ്ടമായിരിയ്ക്കുന്നു"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "ഈ അക്കൌണ്ട് നിലവില്‍ സര്‍വറിലേക്കു് കണക്ട് ചെയ്തിരിയ്ക്കുന്നു"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"അതേ ശ്രോതസ്സ് ഉപയോഗിച്ചു് ഒരു പുതിയ കണക്ഷന്‍ ഉപയോഗിച്ചു് ഈ കണക്ഷന്‍ "
"മാറ്റിസ്ഥാപിയ്ക്കുന്നു"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "അക്കൌണ്ട് സര്‍വറില്‍ നിലവിലുണ്ടു്"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "കണക്ഷന്‍ കൈകാര്യം ചെയ്യുന്നതിനായി സര്‍വറിനു് സാധ്യമല്ല, തിരക്കിലാണു്"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "സമ്മതപത്രം വീണ്ടും ആവശ്യപ്പെട്ടിരിയ്ക്കുന്നു"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"സമ്മതപത്രം സുരക്ഷിതമല്ലാത്തൊരു സിഫര്‍ ആല്‍ഗോരിഥം ഉപയോഗിയ്ക്കുന്നു "
"അല്ലെങ്കില്‍ ഉചിതമല്ല"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -894,30 +896,30 @@ msgstr ""
"ചെയിന്റെ വ്യാപ്തി, എന്നിവ "
"പരിധിയില്‍ കൂടുന്നു"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "ആന്തരിക പിശക്"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "%s-ലേക്കുള്ള കണക്ഷന്‍ പരാജയപ്പെട്ടു"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "വീണ്ടും കണക്ട് ചെയ്യുക"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "അക്കൌണ്ട് ചിട്ടപ്പെടുത്തുക"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "അജ്ഞാതമായ കാരണം"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "പ്രയോഗങ്ങള്‍ കാണിയ്ക്കുക"
@ -925,14 +927,14 @@ msgstr "പ്രയോഗങ്ങള്‍ കാണിയ്ക്കുക"
msgid "Date and Time Settings"
msgstr "തീയതി,സമയ ക്രമീകരണങ്ങള്‍"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "കലണ്ടര്‍ തുറക്കുക"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A %B %e, %Y"
@ -1042,11 +1044,11 @@ msgstr ""
"extensions.gnome.org ഇല്‍ നിന്നും '%s' ഡൗണ്‍ലോട് ചെയ്ത് ഇന്‍സ്റ്റോള്‍ "
"ചെയ്യേണമോ?"
#: ../js/ui/keyboard.js:327
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "ട്രേ"
#: ../js/ui/keyboard.js:561 ../js/ui/status/keyboard.js:194
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "കീബോര്‍ഡ്"
@ -1099,23 +1101,23 @@ msgstr "സ്രോതസ്സ് കാണിക്കുക"
msgid "Web Page"
msgstr "വെബ് താള്‍"
#: ../js/ui/messageTray.js:1080
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "തുറക്കുക"
#: ../js/ui/messageTray.js:1087
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "നീക്കം ചെയ്യുക"
#: ../js/ui/messageTray.js:2050
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "സന്ദേശത്തിന്റെ ട്രേ"
#: ../js/ui/messageTray.js:2506
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "സിസ്റ്റത്തെക്കുറിച്ചുള്ള വിവരം"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "അജ്ഞാതം"
@ -1171,7 +1173,7 @@ msgstr "ദയവായി ഒരു കമാന്‍ഡ് നല്‍കു
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %B %d"
@ -1221,7 +1223,7 @@ msgstr "രഹസ്യവാക്ക്"
msgid "Remember Password"
msgstr "രഹസ്യവാക്ക് ഓര്‍ത്തു് വയ്ക്കുക"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:169
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "പൂട്ട് തുറക്കുക"
@ -1339,7 +1341,7 @@ msgstr "കീബോര്‍ഡ് ക്രമീകരണങ്ങള്‍"
msgid "Mouse Settings"
msgstr "മൗസ് ക്രമീകരണങ്ങള്‍"
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:236
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "ശബ്ദത്തിന്റെ ക്രമീകരണങ്ങള്‍"
@ -1397,11 +1399,11 @@ msgstr "ഉപകരണത്തില്‍ പറഞ്ഞിരിക്ക
msgid "OK"
msgstr "ശരി"
#: ../js/ui/status/keyboard.js:227
#: ../js/ui/status/keyboard.js:228
msgid "Show Keyboard Layout"
msgstr "കീബോര്‍ഡ് വിന്യാസ കാണിയ്ക്കുക"
#: ../js/ui/status/keyboard.js:232
#: ../js/ui/status/keyboard.js:233
msgid "Region and Language Settings"
msgstr "സ്ഥലവും ഭാഷ സജ്ജീകരണങ്ങളും"
@ -1624,7 +1626,7 @@ msgid "Unknown"
msgstr "അജ്ഞാതം"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:223
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "ഒച്ച"
@ -1632,67 +1634,63 @@ msgstr "ഒച്ച"
msgid "Microphone"
msgstr "മൈക്രോഫോണ്‍"
#: ../js/ui/unlockDialog.js:176
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "മറ്റൊരു ഉപയോക്താവായി പ്രവേശിയ്ക്കുക"
#: ../js/ui/userMenu.js:175
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "ലഭ്യമാണ്"
#: ../js/ui/userMenu.js:178
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "തിരക്കിലാണ്"
#: ../js/ui/userMenu.js:181
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "അദൃശ്യം"
#: ../js/ui/userMenu.js:184
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "വിദൂരെയാണ്"
#: ../js/ui/userMenu.js:187
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "പ്രവര്‍ത്തനത്തിലല്ല"
#: ../js/ui/userMenu.js:190
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "ലഭ്യമല്ല"
#: ../js/ui/userMenu.js:613 ../js/ui/userMenu.js:754
msgid "Switch User"
msgstr "ഉപയോക്താവിനെ മാറ്റുക"
#: ../js/ui/userMenu.js:614
msgid "Switch Session"
msgstr "സെഷന്‍ മാറ്റുക"
#: ../js/ui/userMenu.js:738
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "അറിയിപ്പുകള്‍"
#: ../js/ui/userMenu.js:746
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "സിസ്റ്റം ക്രമീകരണങ്ങള്‍"
#: ../js/ui/userMenu.js:759
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "ഉപയോക്താവിനെ മാറ്റുക"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "പുറത്ത് കടക്കുക"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "പൂട്ടുക"
#: ../js/ui/userMenu.js:779
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "പരിഷ്കരണങ്ങള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്തു് വീണ്ടും ആരംഭിയ്ക്കുക"
#: ../js/ui/userMenu.js:797
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "നിങ്ങളുടെ ചാറ്റ് അവസ്ഥ - തിരക്കില്‍"
#: ../js/ui/userMenu.js:798
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1714,7 +1712,7 @@ msgstr "പ്രയോഗങ്ങള്‍"
msgid "Search"
msgstr "തിരയല്‍"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1723,12 +1721,12 @@ msgstr ""
"ക്ഷമിയ്ക്കണം, ഇന്നത്തേക്കു് ഒന്നും ലഭ്യമല്ല:\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "%s എന്ന ഒറക്കിള്‍ പറയുന്നു"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "നിങ്ങള്‍ക്കു് ഇഷ്ടമുള്ള ഈസ്റ്റര്‍ മുട്ട"
@ -1763,23 +1761,23 @@ msgstr[1] "%u ഇന്‍പുട്ടുകള്‍"
msgid "System Sounds"
msgstr "സിസ്റ്റം ശബ്ദങ്ങള്‍"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "പ്രിന്റ് ചെയ്യുവാന്‍ സാധിയ്ക്കുന്ന പതിപ്പു്"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "പ്രവേശന സ്ക്രീനില്‍ ജിഡിഎം ഉപയോഗിയ്ക്കുന്ന മോഡ്"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "ഒരു പ്രത്യേക മോഡ് ഉപയോഗിയ്ക്കുക, ഉദാ. പ്രവേശന സ്ക്രീനിനു് \"gdm\""
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "സാധ്യമായ മോഡുകള്‍ ലഭ്യമാക്കുക"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "'%s' ലഭ്യമാക്കുന്നതില്‍ പരാജയം"
@ -1804,6 +1802,9 @@ msgstr "സഹജം"
msgid "Authentication dialog was dismissed by the user"
msgstr "ഉപയോക്താവു് ആധികാരികത ഉറപ്പാക്കല്‍ ഡയലോഗ് നിര്‍ത്തുന്നു"
#~ msgid "Switch Session"
#~ msgstr "സെഷന്‍ മാറ്റുക"
#, fuzzy
#~ msgid "disabled OpenSearch providers"
#~ msgstr "OpenSearch വെബ്സൈറ്റ് ചേര്‍ക്കുക"

258
po/mr.po
View File

@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: mr\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-09-25 00:06+0000\n"
"PO-Revision-Date: 2012-09-25 09:02+0530\n"
"POT-Creation-Date: 2012-10-31 16:48+0000\n"
"PO-Revision-Date: 2012-11-22 13:33+0530\n"
"Last-Translator: Sandeep Shedmake <sshedmak@redhat.com>\n"
"Language-Team: Marathi <maajhe-sanganak@freelists.org>\n"
"Language: mr\n"
@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
"X-Generator: Lokalize 1.4\n"
"X-Generator: Lokalize 1.5\n"
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
msgid "Screenshots"
@ -134,50 +134,62 @@ msgstr ""
"GsmPresenceStatus एन्युमरेशनपासूनचे आहे."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "वापरकर्ता मेन्युमध्ये नेहमी 'बाहेर पडा' मेन्युघटक दाखवा."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
msgstr "दिनदर्शिकामध्ये सप्ताह दिनांक दाखवा"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "खरे असल्यास, दिनदर्शिकमध्ये ISO सप्ताह दिनांक दाखवा."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "ॲप्लिकेशन मेन्यु उघडण्यासाठी किबाइंडिंग"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "ॲप्लिकेशन मेन्यु उघडण्यासाठी किबाइंडिंग."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "संदेश ट्रेचे अवलोकन बदलण्यासाठी वापरण्याजोगी किबाइंडिंग"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "संदेश ट्रेचे अवलोकन बदलण्यासाठी वापरण्याजोगी किबाइंडिंग."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "स्क्रीन रेकॉर्डरमधील बदलसाठी किबाइंडिंग"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "बिल्टइन स्क्रीन रेकॉर्डर सुरू किंवा थांबवण्यासाठी किबाइंडिंग."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "कुठले किबोर्ड वापरायचे"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "वापरण्याजोगी किबोर्डचे प्रकार."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "स्क्रिनकास्ट्स् रेकॉर्ड करण्यासाठी वापरलेले फ्रेमरेट."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -186,11 +198,11 @@ msgstr ""
"केलेल्या परिणामक "
"सक्रीनकास्टचा फ्रेमरेट."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "स्क्रीनकास्ट एंकोड करण्यासाठी वापरलेले gstreamer पाइपलाइन"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -219,11 +231,11 @@ msgstr ""
"चा "
"वापर प्रणालीवरील कमाल थ्रेड गणणा ओळखण्यासाठी प्लेसहोल्डर म्हणून केला जातो."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "स्क्रिनकास्ट साठवण्याकरीता वापरलेले फाइल एक्सटेंशन"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -247,11 +259,11 @@ msgstr "एक्सटेंशन"
msgid "Select an extension to configure using the combobox above."
msgstr "वरील कॉम्बोबॉक्सचा वापर करून संरचनाकरीता एक्सटेंशनचा वापर करा."
#: ../js/gdm/loginDialog.js:527
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "सत्र..."
#: ../js/gdm/loginDialog.js:675
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "प्रवेश करा"
@ -259,34 +271,33 @@ msgstr "प्रवेश करा"
#. 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.
#: ../js/gdm/loginDialog.js:742
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "सूचीत नाही?"
#: ../js/gdm/loginDialog.js:895 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:166
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "रद्द करा"
#: ../js/gdm/loginDialog.js:900
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "प्रवेश करा"
#: ../js/gdm/loginDialog.js:1239
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "प्रवेश पटल"
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:35
#| msgid "Power Off"
msgid "Power"
msgstr "पावर"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:663 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:778
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "निलंबित"
@ -294,8 +305,8 @@ msgstr "निलंबित"
msgid "Restart"
msgstr "पुनः सुरू करा"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:665 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:777
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "बंद करा"
@ -346,7 +357,7 @@ msgstr "SETTINGS"
msgid "New Window"
msgstr "नविन पटल"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "पंसतीतून काढून टाका"
@ -510,16 +521,16 @@ msgstr "हा सप्ताह"
msgid "Next week"
msgstr "पुढचा सप्ताह"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "काढूनटाकण्याजोगी साधने"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "%s सह उघडा"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "बाहेर काढा"
@ -674,35 +685,35 @@ msgstr "बंद करा"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "<b>%X</b> वेळी, <b>%A</b> ला पाठवले"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "<b>%A</b> वेळी, <b>%B %d</b> ला पाठवले"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "<b>%A</b>, <b>%B %d</b>, %Y वेळी पाठवले"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:990
#, c-format
msgid "%s is now known as %s"
msgstr "%s ला %s म्हणून ओळखले जाते"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "%s करीता आमंत्रण"
@ -710,42 +721,42 @@ msgstr "%s करीता आमंत्रण"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s तुम्हाला %s सह जोडणीकरीता आमंत्रण देत आहे"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "नकारा"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "स्वीकारा"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "%s पासून व्हिडीओ कॉल्स्"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "%s पासून कॉल"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "नकारा"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "उत्तर"
@ -754,110 +765,110 @@ msgstr "उत्तर"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "%s तुम्हाला %s पाठवत आहे"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "ऑनलाइन असल्यावर %s परवानगी दृष्यास्पद करायची"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "नेटवर्क त्रुटी"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "ओळख पटवणे अपयशी"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "एंक्रिप्शन त्रुटी"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "प्रमाणपत्र पुरवले नाही"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "प्रमाणपत्र अविश्वासर्ह आहे"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "प्रमाणपत्राची वेळसमाप्ति"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "प्रमाणपत्र सुरू केले नाही"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "प्रमाणपत्र यजमाननाव जुळत नाही"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "प्रमाणपत्र फिंग्ररप्रिंट जुळत नाही"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "प्रमाणपत्र स्वयं स्वाक्षरि"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "स्थिती ऑफलाइनकरीता ठरवली आहे"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "एंक्रिप्शन अनुपलब्ध"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "प्रमाणपत्र अवैध आहे"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "जोडणी नकारली गेली"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "जोडणी स्थापीत करणे अशक्य"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "जोडणी खंडीत झाली"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "हे खाते आधिपासूनच सर्व्हरसह जुळले आहे"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "समान स्रोतचा वापर करून जोडणीला नविन जोडणीसह बदलाबदल केले आहे"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "खाते आधिपासूनच सर्व्हरवर अस्तित्वात आहे"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "जोडणी हाताळण्यासाठी सर्व्हर सध्या खूप व्यस्थ आहे"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "प्रमाणपत्र रद्द केले"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"प्रमाणपत्र असुरक्षित सिफर अल्गोरिदमचा वापर करते किंवा क्रिप्टोग्राफिकरित्या "
"खूप कमजोर आहे"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -866,30 +877,30 @@ msgstr ""
"क्रिप्टोग्राफि "
"लाइब्ररितर्फे लादलेल्या मर्यादापेक्षा जास्त आहे"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "आंतरिक त्रुटी"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "%s सह जोडणी अपयशी"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "पुनःजोडणी करा"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "खाते संपादित करा"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "अपरिचीत कारण"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "ॲप्लिकेशन्स् दाखवा"
@ -897,14 +908,14 @@ msgstr "ॲप्लिकेशन्स् दाखवा"
msgid "Date and Time Settings"
msgstr "दिनांक व वेळ सेटिंग्स्"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "दिनदर्शिका उघडा"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A %B %e, %Y"
@ -1007,11 +1018,11 @@ msgstr "प्रतिष्ठापीत करा"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr " extensions.gnome.org पासून '%s' डाऊनलोड व प्रतिष्ठापीत करा?"
#: ../js/ui/keyboard.js:327
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "ट्रे"
#: ../js/ui/keyboard.js:561 ../js/ui/status/keyboard.js:195
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "कळफलक"
@ -1064,23 +1075,23 @@ msgstr "स्त्रोत पहा"
msgid "Web Page"
msgstr "वेब पृष्ठ"
#: ../js/ui/messageTray.js:1080
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "उघडा"
#: ../js/ui/messageTray.js:1087
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "काढून टाका"
#: ../js/ui/messageTray.js:2055
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "संदेश ट्रे"
#: ../js/ui/messageTray.js:2511
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "प्रणाली माहिती"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "अपरिचीत"
@ -1136,7 +1147,7 @@ msgstr "कृपया आदेश द्या:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %B %d"
@ -1186,7 +1197,7 @@ msgstr "पासवर्ड"
msgid "Remember Password"
msgstr "पासवर्ड लक्षात ठेवा"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:169
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "कुलूपबंद अशक्य करा"
@ -1304,7 +1315,7 @@ msgstr "कळफलक सेटिंग्स्"
msgid "Mouse Settings"
msgstr "माऊस सेटिंग्स्"
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:236
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "आवाज सेटिंग्स्"
@ -1589,7 +1600,7 @@ msgid "Unknown"
msgstr "अपरिचीत"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:223
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "आवाज"
@ -1597,67 +1608,63 @@ msgstr "आवाज"
msgid "Microphone"
msgstr "माइक्रोफोन"
#: ../js/ui/unlockDialog.js:176
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "इतर वापरकर्ता म्हणून प्रवेश करा"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "उपलब्ध"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "व्यस्त"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "अदृष्य"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "दूर आहे"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "रिकामे"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "अनुपलब्ध"
#: ../js/ui/userMenu.js:618 ../js/ui/userMenu.js:759
msgid "Switch User"
msgstr "उपयोक्ता बदला"
#: ../js/ui/userMenu.js:619
msgid "Switch Session"
msgstr "सत्र बदला"
#: ../js/ui/userMenu.js:743
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "सूचना"
#: ../js/ui/userMenu.js:751
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "प्रणाली मांडणी"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "उपयोक्ता बदला"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "बाहेर पडा"
#: ../js/ui/userMenu.js:769
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "कुलूपबंद"
#: ../js/ui/userMenu.js:784
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "सुधारणा प्रतिष्ठापीत करा व पुनः सुरू करा"
#: ../js/ui/userMenu.js:802
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "तुमची चॅट स्थिती व्यस्थकरीता ठरवले जाईल"
#: ../js/ui/userMenu.js:803
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1678,7 +1685,7 @@ msgstr "ॲप्लिकेशन्स्"
msgid "Search"
msgstr "शोधा"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1687,12 +1694,12 @@ msgstr ""
"माफ करा, चातुर्या आढळले नाही:\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "%s ऑरॅकल म्हणतो"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "तुमच्या पसंतीचा इस्टर एग"
@ -1727,23 +1734,23 @@ msgstr[1] "%u इंपुट"
msgid "System Sounds"
msgstr "प्रणाली आवाज"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "छपाई आवृत्ती"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "प्रवेश पडद्याकरीता GDM तर्फे वापरण्याजोगी मोड"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "निर्देशीत मोडचा वापर करा, उ.दा. प्रवेश स्क्रीनकरीता \"gdm\""
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "संभाव्य मोड्स्ची सूची दाखवा"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "'%s' सुरू करण्यास अपयशी"
@ -1768,6 +1775,9 @@ msgstr "मुलभूत"
msgid "Authentication dialog was dismissed by the user"
msgstr "ओळख पटवा संवाद वापरकर्त्याद्वारे वगळले"
#~ msgid "Switch Session"
#~ msgstr "सत्र बदला"
#~ msgid "Failed to unmount '%s'"
#~ msgstr "'%s' माऊंट अशक्य करण्यास अपयशी"

389
po/nb.po
View File

@ -6,10 +6,10 @@
# Torstein Adolf Winterseth <kvikende@fsfe.org>, 2010.
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell 3.7.x\n"
"Project-Id-Version: gnome-shell 3.6.x\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-11-05 19:06+0100\n"
"PO-Revision-Date: 2012-11-05 19:10+0100\n"
"POT-Creation-Date: 2012-11-02 08:10+0100\n"
"PO-Revision-Date: 2012-11-02 08:10+0100\n"
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
"Language-Team: Norwegian bokmål <i18n-nb@lister.ping.uio.no>\n"
"Language: \n"
@ -34,14 +34,6 @@ msgstr "System"
msgid "Show the message tray"
msgstr "Vis meldingstrau"
#: ../data/50-gnome-shell-system.xml.in.h:3
msgid "Show all applications"
msgstr "Vis alle programmer"
#: ../data/50-gnome-shell-system.xml.in.h:4
msgid "Open the application menu"
msgstr "Åpne programmenyen"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
@ -162,45 +154,34 @@ msgid "Keybinding to open the application menu."
msgstr "Tastaturbinding som åpner programmenyen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#, fuzzy
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Tastaturbinding som åpner programmenyen"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#, fuzzy
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "Tastaturbinding som åpner programmenyen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "Tastaturbinding som slår av/på synlighet for meldingstrau"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "Tastaturbinding som slår av/på synlighet for meldingstrauet."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "Tastaturbinding som slår av/på skjermopptak"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "Tastaturbinding som starter/stopper innebygget opptak av skjerm."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "Tastatur som skal brukes"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "Type tastatur som skal brukes."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "Bildefrekvens i bruk ved lagring av skjermvideoer."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -208,11 +189,11 @@ msgstr ""
"Bildefrekvensen i den ferdige skjermvideoen tatt opp med GNOME Shells "
"skjermvideoopptaker i bilder per sekund."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "Gstreamer-kommandokø brukt til å kode skjermvideoen"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, fuzzy, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -229,11 +210,11 @@ msgstr ""
"Setter GStreamer-rør som brukes til å kode opptak. Den følger syntaksen som "
"brukes for gst-launch. Røret må ha en..."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "Filendelse i bruk ved lagring av skjermvideo"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -243,37 +224,6 @@ msgstr ""
"og bruke denne filendelsen. Den bør endres når du gjør opptak til et nytt "
"oppbevaringsformat."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid "Attach modal dialog to the parent window"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid "Arrangement of buttons on the titlebar"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid "Workspaces are managed dynamically"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Workspaces only on primary monitor"
msgstr ""
#: ../js/extensionPrefs/main.js:124
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -287,11 +237,11 @@ msgstr "Utvidelse"
msgid "Select an extension to configure using the combobox above."
msgstr "Velg en utvidelse som skal konfigureres med komboboksen over."
#: ../js/gdm/loginDialog.js:560
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "Økt …"
#: ../js/gdm/loginDialog.js:704
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "Logg inn"
@ -299,56 +249,56 @@ msgstr "Logg inn"
#. 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.
#: ../js/gdm/loginDialog.js:764
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "Ikke listet?"
#: ../js/gdm/loginDialog.js:906 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:171
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "Avbryt"
#: ../js/gdm/loginDialog.js:911
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "Logg inn"
#: ../js/gdm/loginDialog.js:1237
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "Innloggingsvindu"
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:36
#: ../js/gdm/powerMenu.js:35
msgid "Power"
msgstr "Strøm"
#: ../js/gdm/powerMenu.js:93 ../js/ui/userMenu.js:667 ../js/ui/userMenu.js:671
#: ../js/ui/userMenu.js:782
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Hvilemodus"
#: ../js/gdm/powerMenu.js:98
#: ../js/gdm/powerMenu.js:94
msgid "Restart"
msgstr "Start på nytt"
#: ../js/gdm/powerMenu.js:103 ../js/ui/userMenu.js:669
#: ../js/ui/userMenu.js:671 ../js/ui/userMenu.js:781
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Slå av"
#: ../js/gdm/util.js:151
#: ../js/gdm/util.js:148
msgid "Authentication error"
msgstr "Autentiseringsfeil"
#. Translators: this message is shown below the password entry field
#. to indicate the user can swipe their finger instead
#: ../js/gdm/util.js:268
#: ../js/gdm/util.js:265
msgid "(or swipe finger)"
msgstr "(eller dra finger)"
#: ../js/gdm/util.js:293
#: ../js/gdm/util.js:290
#, c-format
msgid "(e.g., user or %s)"
msgstr "(f.eks. bruker eller %s)"
@ -398,7 +348,7 @@ msgstr "Legg til i favoritter"
msgid "%s has been added to your favorites."
msgstr "%s ble lagt til i dine favoritter."
#: ../js/ui/appFavorites.js:121
#: ../js/ui/appFavorites.js:118
#, c-format
msgid "%s has been removed from your favorites."
msgstr "%s ble fjernet fra dine favoritter."
@ -517,48 +467,48 @@ msgid "S"
msgstr "Lø"
#. Translators: Text to show if there are no events
#: ../js/ui/calendar.js:700
#: ../js/ui/calendar.js:699
msgid "Nothing Scheduled"
msgstr "Ingenting planlagt"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:716
#: ../js/ui/calendar.js:715
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A %B %d"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:719
#: ../js/ui/calendar.js:718
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A %B %d, %Y"
#: ../js/ui/calendar.js:729
#: ../js/ui/calendar.js:728
msgid "Today"
msgstr "I dag"
#: ../js/ui/calendar.js:733
#: ../js/ui/calendar.js:732
msgid "Tomorrow"
msgstr "I morgen"
#: ../js/ui/calendar.js:744
#: ../js/ui/calendar.js:743
msgid "This week"
msgstr "Denne uken"
#: ../js/ui/calendar.js:752
#: ../js/ui/calendar.js:751
msgid "Next week"
msgstr "Neste uke"
#: ../js/ui/components/autorunManager.js:295
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "Avtagbare enheter"
#: ../js/ui/components/autorunManager.js:591
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "Åpne med %s"
#: ../js/ui/components/autorunManager.js:617
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "Løs ut"
@ -712,31 +662,27 @@ msgstr "Fjern demping"
msgid "Mute"
msgstr "Demp"
#. Translators: this is a time format string followed by the word "Yesterday". i.e. "14:30 on Yesterday"
#: ../js/ui/components/telepathyClient.js:945
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "<b>%H:%M</b> on Yesterday"
msgstr "<b>%H.%M</b> i går"
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Sendt <b>%X</b> på <b>%A</b>"
#. Translators: this is a time format string followed by a week day name. i.e. "14:30 on Monday
#: ../js/ui/components/telepathyClient.js:951
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "<b>%H:%M</b> on <b>%A</b>"
msgstr "<b>%H.%M</b> <b>%A</b>"
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Sendt <b>%A</b>, <b>%B %d</b>"
#. Translators: this is a time format in the style of "14:30 on Wednesday, May 25",
#. shown when you get a chat message in the same year
#: ../js/ui/components/telepathyClient.js:957
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>"
msgstr "<b>%H.%M</b>, <b>%A</b>, <b>%B</b> <b>%d</b>"
#. Translators: this is a time format in the style of "14:30 on Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year
#: ../js/ui/components/telepathyClient.js:962
#, no-c-format
msgid "<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>, %Y"
msgstr "<b>%H.%M</b>, <b>%A</b>, <b>%B</b> <b>%d</b>, %Y"
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Sendt <b>%A</b>, <b>%B %d</b>, %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
@ -747,7 +693,7 @@ msgstr "%s er nå kjent som %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1089
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "Invitasjon til %s"
@ -755,42 +701,42 @@ msgstr "Invitasjon til %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1097
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s inviterer deg til å bli med i %s"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
msgid "Decline"
msgstr "Avslå"
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "Avslå"
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "Godta"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1130
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "Videosamtale fra %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1133
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "Samtale fra %s"
#: ../js/ui/components/telepathyClient.js:1138
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Avvis"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1140
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "Svar"
@ -799,110 +745,110 @@ msgstr "Svar"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1172
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "%s sender deg %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1207
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s vil ha rettigheter til å se når du er tilkoblet"
#: ../js/ui/components/telepathyClient.js:1299
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "Nettverksfeil"
#: ../js/ui/components/telepathyClient.js:1301
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "Autentisering feilet"
#: ../js/ui/components/telepathyClient.js:1303
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "Feil ved kryptering"
#: ../js/ui/components/telepathyClient.js:1305
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "Sertifikat ikke oppgitt"
#: ../js/ui/components/telepathyClient.js:1307
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "Stoler ikke på sertifikatet"
#: ../js/ui/components/telepathyClient.js:1309
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "Sertifikatet er utløpt"
#: ../js/ui/components/telepathyClient.js:1311
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "Sertifikatet er ikke aktivert"
#: ../js/ui/components/telepathyClient.js:1313
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "Feil vertsnavn for sertifikat"
#: ../js/ui/components/telepathyClient.js:1315
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "Feil fingeravtrykk for sertifikat"
#: ../js/ui/components/telepathyClient.js:1317
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "Sertifikatet er selvsignert"
#: ../js/ui/components/telepathyClient.js:1319
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "Status er satt til frakoblet"
#: ../js/ui/components/telepathyClient.js:1321
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "Kryptering er ikke tilgjengelig"
#: ../js/ui/components/telepathyClient.js:1323
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "Sertifikatet er ugyldig"
#: ../js/ui/components/telepathyClient.js:1325
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "Tilkobling ble nektet"
#: ../js/ui/components/telepathyClient.js:1327
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "Tilkobling kan ikke etableres"
#: ../js/ui/components/telepathyClient.js:1329
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "Tilkobling tapt"
#: ../js/ui/components/telepathyClient.js:1331
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "Denne kontoen er allerede koblet til tjeneren"
#: ../js/ui/components/telepathyClient.js:1333
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr ""
"Tilkoblingen har blitt erstattet av en ny tilkobling som bruker samme ressurs"
#: ../js/ui/components/telepathyClient.js:1335
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "Kontoen eksisterer allerede på tjeneren"
#: ../js/ui/components/telepathyClient.js:1337
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "Tjener er for opptatt til å håndtere tilkoblingen"
#: ../js/ui/components/telepathyClient.js:1339
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "Sertifikatet er tilbaketrukket"
#: ../js/ui/components/telepathyClient.js:1341
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Sertifikatet bruker en usikker sifferalgoritme eller er krytografisk svakt"
#: ../js/ui/components/telepathyClient.js:1343
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -910,26 +856,26 @@ msgstr ""
"Lengden eller dybden på tjenersertifikatet oversteg grensen som er satt i "
"kryptografibiblioteket"
#: ../js/ui/components/telepathyClient.js:1345
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "Intern feil"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1355
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "Tilkobling til %s feilet"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "Koble til på nytt"
#: ../js/ui/components/telepathyClient.js:1365
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "Rediger konto"
#: ../js/ui/components/telepathyClient.js:1410
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "Ukjent årsak"
@ -1053,11 +999,11 @@ 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:308
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "varslingsområde"
#: ../js/ui/keyboard.js:555 ../js/ui/status/keyboard.js:195
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "Tastatur"
@ -1110,32 +1056,32 @@ msgstr "Vis kildekode"
msgid "Web Page"
msgstr "Nettside"
#: ../js/ui/messageTray.js:1088
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Åpne"
#: ../js/ui/messageTray.js:1095
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Fjern"
#: ../js/ui/messageTray.js:1539
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Meldingstrau"
#: ../js/ui/messageTray.js:2563
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Systeminformasjon"
#: ../js/ui/notificationDaemon.js:504 ../src/shell-app.c:374
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Ukjent"
#: ../js/ui/overview.js:89
#: ../js/ui/overview.js:82
msgid "Undo"
msgstr "Angre"
#: ../js/ui/overview.js:133
#: ../js/ui/overview.js:127
msgid "Overview"
msgstr "Oversikt"
@ -1143,27 +1089,27 @@ msgstr "Oversikt"
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters.
#: ../js/ui/overview.js:207
#: ../js/ui/overview.js:201
msgid "Type to search..."
msgstr "Skriv for å søke …"
#. Translators: this is the name of the dock/favorites area on
#. the left of the overview
#: ../js/ui/overview.js:228
#: ../js/ui/overview.js:222
msgid "Dash"
msgstr "Favoritter"
#: ../js/ui/panel.js:581
#: ../js/ui/panel.js:567
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:613
#: ../js/ui/panel.js:599
msgid "Activities"
msgstr "Aktiviteter"
#: ../js/ui/panel.js:980
#: ../js/ui/panel.js:965
msgid "Top Bar"
msgstr "Topp-panel"
@ -1177,12 +1123,8 @@ msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:205
msgid "Enter a Command"
msgstr "Oppgi en kommando"
#: ../js/ui/runDialog.js:241
msgid "Close"
msgstr "Lukk"
msgid "Please enter a command:"
msgstr "Oppgi en kommando:"
#. Translators: This is a time format for a date in
#. long format
@ -1236,7 +1178,7 @@ msgstr "Passord"
msgid "Remember Password"
msgstr "Husk passord"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:174
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "Lås opp"
@ -1291,7 +1233,7 @@ msgstr "Stor tekst"
#: ../js/ui/status/bluetooth.js:27 ../js/ui/status/bluetooth.js:31
#: ../js/ui/status/bluetooth.js:251 ../js/ui/status/bluetooth.js:304
#: ../js/ui/status/bluetooth.js:335 ../js/ui/status/bluetooth.js:371
#: ../js/ui/status/bluetooth.js:400 ../js/ui/status/network.js:873
#: ../js/ui/status/bluetooth.js:400 ../js/ui/status/network.js:867
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1320,12 +1262,12 @@ msgstr "maskinvare slått av"
msgid "Connection"
msgstr "Tilkobling"
#: ../js/ui/status/bluetooth.js:207 ../js/ui/status/network.js:475
#: ../js/ui/status/bluetooth.js:207 ../js/ui/status/network.js:458
msgid "disconnecting..."
msgstr "kobler fra …"
#: ../js/ui/status/bluetooth.js:220 ../js/ui/status/network.js:481
#: ../js/ui/status/network.js:1507
#: ../js/ui/status/bluetooth.js:220 ../js/ui/status/network.js:464
#: ../js/ui/status/network.js:934
msgid "connecting..."
msgstr "kobler til …"
@ -1435,106 +1377,109 @@ msgstr "slått av"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu)
#: ../js/ui/status/network.js:473
#: ../js/ui/status/network.js:456
msgid "unmanaged"
msgstr "ikke håndtert"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:484 ../js/ui/status/network.js:1510
#: ../js/ui/status/network.js:467 ../js/ui/status/network.js:937
msgid "authentication required"
msgstr "autentisering kreves"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:494
#: ../js/ui/status/network.js:477
msgid "firmware missing"
msgstr "fastvare mangler"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:501
#: ../js/ui/status/network.js:484
msgid "cable unplugged"
msgstr "kabel koblet fra"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:506
#: ../js/ui/status/network.js:489
msgid "unavailable"
msgstr "ikke tilgjengelig"
#: ../js/ui/status/network.js:508 ../js/ui/status/network.js:1512
#: ../js/ui/status/network.js:491 ../js/ui/status/network.js:939
msgid "connection failed"
msgstr "tilkobling feilet"
#: ../js/ui/status/network.js:560 ../js/ui/status/network.js:1446
#: ../js/ui/status/network.js:1588
#: ../js/ui/status/network.js:552 ../js/ui/status/network.js:1529
msgid "More..."
msgstr "Mer …"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:596 ../js/ui/status/network.js:1376
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1459
msgid "Connected (private)"
msgstr "Tilkoblet (privat)"
#: ../js/ui/status/network.js:669
#: ../js/ui/status/network.js:663
msgid "Auto Ethernet"
msgstr "Automatisk Ethernet"
#: ../js/ui/status/network.js:727
#: ../js/ui/status/network.js:721
msgid "Auto broadband"
msgstr "Automatisk bredbånd"
#: ../js/ui/status/network.js:730
#: ../js/ui/status/network.js:724
msgid "Auto dial-up"
msgstr "Automatisk oppringt"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:859 ../js/ui/status/network.js:1393
#: ../js/ui/status/network.js:853 ../js/ui/status/network.js:1476
#, c-format
msgid "Auto %s"
msgstr "Automatisk %s"
#: ../js/ui/status/network.js:861
#: ../js/ui/status/network.js:855
msgid "Auto bluetooth"
msgstr "Automatisk Bluetooth"
#: ../js/ui/status/network.js:1395
#: ../js/ui/status/network.js:1478
msgid "Auto wireless"
msgstr "Automatisk trådløst"
#: ../js/ui/status/network.js:1637
#: ../js/ui/status/network.js:1575
msgid "Enable networking"
msgstr "Slå på nettverk"
#: ../js/ui/status/network.js:1659
#: ../js/ui/status/network.js:1597
msgid "Wired"
msgstr "Kablet"
#: ../js/ui/status/network.js:1670
#: ../js/ui/status/network.js:1608
msgid "Wireless"
msgstr "Trådløst"
#: ../js/ui/status/network.js:1680
#: ../js/ui/status/network.js:1618
msgid "Mobile broadband"
msgstr "Mobilt bredbånd"
#: ../js/ui/status/network.js:1691
#: ../js/ui/status/network.js:1628
msgid "VPN Connections"
msgstr "VPN-tilkoblinger"
#: ../js/ui/status/network.js:1635
msgid "Network Settings"
msgstr "Innstillinger for nettverk"
#: ../js/ui/status/network.js:1735
#: ../js/ui/status/network.js:1679
msgid "Network Manager"
msgstr "Nettverkshåndtering"
#: ../js/ui/status/network.js:1809
#: ../js/ui/status/network.js:1769
msgid "Connection failed"
msgstr "Tilkobling feilet"
#: ../js/ui/status/network.js:1810
#: ../js/ui/status/network.js:1770
msgid "Activation of network connection failed"
msgstr "Aktivering av nettverkstilkobling feilet"
#: ../js/ui/status/network.js:2108
#: ../js/ui/status/network.js:2065
msgid "Networking is disabled"
msgstr "Nettverk er slått av"
@ -1644,63 +1589,63 @@ msgstr "Volum"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/unlockDialog.js:181
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "Logg inn som en annen bruker"
#: ../js/ui/userMenu.js:176
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Tilgjengelig"
#: ../js/ui/userMenu.js:179
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Opptatt"
#: ../js/ui/userMenu.js:182
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Usynlig"
#: ../js/ui/userMenu.js:185
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Borte"
#: ../js/ui/userMenu.js:188
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Ledig"
#: ../js/ui/userMenu.js:191
msgid "Offline"
msgstr "Frakoblet"
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Ikke tilgjengelig"
#: ../js/ui/userMenu.js:747
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Varslinger"
#: ../js/ui/userMenu.js:755
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Systeminnstillinger"
#: ../js/ui/userMenu.js:763
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Bytt bruker"
#: ../js/ui/userMenu.js:768
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Logg ut"
#: ../js/ui/userMenu.js:773
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Lås"
#: ../js/ui/userMenu.js:788
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Installer oppdateringer og start på nytt"
#: ../js/ui/userMenu.js:806
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Din pratestatus vil bli satt til opptatt"
#: ../js/ui/userMenu.js:807
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1709,15 +1654,15 @@ msgstr ""
"tilkoblingsstatus er justert for å la andre vite at du kanskje ikke ser "
"deres meldinger."
#: ../js/ui/viewSelector.js:87
#: ../js/ui/viewSelector.js:85
msgid "Windows"
msgstr "Vinduer"
#: ../js/ui/viewSelector.js:91
#: ../js/ui/viewSelector.js:89
msgid "Applications"
msgstr "Programmer"
#: ../js/ui/viewSelector.js:95
#: ../js/ui/viewSelector.js:93
msgid "Search"
msgstr "Søk"

638
po/nl.po

File diff suppressed because it is too large Load Diff

257
po/pa.po
View File

@ -7,8 +7,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: 2012-09-25 00:06+0000\n"
"PO-Revision-Date: 2012-09-25 06:45+0530\n"
"POT-Creation-Date: 2012-10-31 16:48+0000\n"
"PO-Revision-Date: 2012-11-04 09:23+0530\n"
"Last-Translator: A S Alam <aalam@users.sf.net>\n"
"Language-Team: Punjabi/Panjabi <punjabi-users@lists.sf.net>\n"
"Language: pa\n"
@ -137,50 +137,63 @@ msgstr ""
"GsmPresenceStatus ਤੋਂ ਇੱਥੇ ਮੁੱਲ।"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "ਯੂਜ਼ਰ ਮੇਨੂ ਵਿੱਚ \"ਲਾਗ ਆਉਟ\" ਆਈਟਮ ਹਮੇਸ਼ਾ ਵੇਖਾਉ।"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
msgstr "ਕੈਲੰਡਰ ਵਿੱਚ ਹਫ਼ਤਾ ਮਿਤੀ ਵੇਖੋ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "ਜੇ ਚੋਣ ਕੀਤੀ ਤਾਂ ਕੈਲੰਡਰ ਵਿੱਚ ISO ਹਫਤਾ ਮਿਤੀ ਵੇਖਾਈ ਜਾਵੇਗੀ।"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "ਐਪਲੀਕੇਸ਼ਨ ਮੇਨੂ ਖੋਲ੍ਹਣ ਲਈ ਕੀਬਾਈਡਿੰਗ ਹੈ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "ਐਪਲੀਕੇਸ਼ਨ ਮੇਨੂ ਖੋਲ੍ਹਣ ਲਈ ਕੀਬਾਈਡਿੰਗ ਹੈ।"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "ਸੁਨੇਹਾ ਟਰੇ ਦੀ ਦਿੱਖਣ ਨੂੰ ਬਦਲਣ ਲਈ ਕੀਬਾਈਡਿੰਗ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "ਸੁਨੇਹਾ ਟਰੇ ਦੀ ਦਿੱਖਣ ਨੂੰ ਬਦਲਣ ਲਈ ਕੀਬਾਈਡਿੰਗ ਹੈ।"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "ਸਕਰੀਨ ਰਿਕਾਡਰ ਨੂੰ ਬਦਲਣ ਲਈ ਕੀਬਾਈਡਿੰਗ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "ਬਿਲਟ-ਇਨ ਸਕਰੀਨ ਰਿਕਾਰਡ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨ/ਰੋਕਣ ਲਈ ਕੀਬਾਈਡਿੰਗ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "ਕਿਹੜਾ ਕੀਬੋਰਡ ਵਰਤਣਾ ਹੈ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "ਵਰਤਣ ਲਈ ਕੀਬੋਰਡ ਦੀ ਕਿਸਮ ਹੈ।"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "ਸਕਰੀਨਕਾਸਟ ਰਿਕਾਰਡ ਕਰਨ ਲਈ ਫਰੇਮਰੇਟ ਹੈ।"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -189,11 +202,11 @@ msgstr ""
"ਫਰੇਮ ਪ੍ਰਤੀ "
"ਸਕਿੰਟ 'ਚ ਹੈ।"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "ਸਕਰੀਨਕਾਸਟ ਇੰਕੋਡ ਕਰਨ ਲਈ ਵਰਤਣ ਵਾਸਤੇ ਜੀਸਟਰੀਮਰ ਪਾਇਪਲਾਇਨ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -226,11 +239,11 @@ msgstr ""
"ਲਗਾਉਣ ਲਈ "
"ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "ਸਕਰੀਨਕਾਸਟ ਸੰਭਾਲਣ ਲਈ ਵਰਤਣ ਵਾਸਤੇ ਫਾਇਲ ਇਕਟੈਨਸ਼ਨ"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -255,11 +268,11 @@ msgstr "ਇਕਸਟੈਸ਼ਨ"
msgid "Select an extension to configure using the combobox above."
msgstr "ਉੱਤੇ ਦਿੱਤੇ ਕੰਬੋਬਾਕਸ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇਕਸਟੈਸ਼ਨ ਦੀ ਸੰਰਚਨਾ ਕਰਨ ਲਈ ਚੋਣ ਕਰੋ।"
#: ../js/gdm/loginDialog.js:527
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "ਸ਼ੈਸ਼ਨ..."
#: ../js/gdm/loginDialog.js:675
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "ਸਾਇਨ ਇਨ"
@ -267,34 +280,33 @@ msgstr "ਸਾਇਨ ਇਨ"
#. 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.
#: ../js/gdm/loginDialog.js:742
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "ਲਿਸਟ ਵਿੱਚ ਨਹੀਂ ਹੈ?"
#: ../js/gdm/loginDialog.js:895 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:166
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "ਰੱਦ ਕਰੋ"
#: ../js/gdm/loginDialog.js:900
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "ਸਾਇਨ ਇਨ"
#: ../js/gdm/loginDialog.js:1239
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "ਲਾਗਇਨ ਵਿੰਡੋ"
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:35
#| msgid "Power Off"
msgid "Power"
msgstr "ਪਾਵਰ"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:663 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:778
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "ਸਸਪੈਂਡ"
@ -302,8 +314,8 @@ msgstr "ਸਸਪੈਂਡ"
msgid "Restart"
msgstr "ਮੁੜ-ਚਾਲੂ ਕਰੋ"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:665 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:777
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "ਬੰਦ ਕਰੋ"
@ -354,7 +366,7 @@ msgstr "ਸੈਟਿੰਗ"
msgid "New Window"
msgstr "ਨਵੀਂ ਵਿੰਡੋ"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "ਪਸੰਦ ਵਿੱਚੋਂ ਹਟਾਓ"
@ -518,16 +530,16 @@ msgstr "ਇਹ ਹਫ਼ਤਾ"
msgid "Next week"
msgstr "ਹਫ਼ਤਾ ਅੱਗੇ"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "ਹਟਾਉਣਯੋਗ ਜੰਤਰ"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "%s ਨਾਲ ਖੋਲ੍ਹੋ"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "ਬਾਹਰ ਕੱਢੋ"
@ -682,35 +694,35 @@ msgstr "ਚੁੱਪ"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "<b>%2$A</b> ਨੂੰ <b>%1$X</b> ਵਜੇ ਭੇਜਿਆ"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr " <b>%A</b> ਨੂੰ <b>%B %d</b> ਵਜੇ ਭੇਜਿਆ"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "<b>%A</b> <b>%B %d</b>, %Y ਨੂੰ ਭੇਜਿਆ"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:990
#, c-format
msgid "%s is now known as %s"
msgstr "%s ਨੂੰ ਹੁਣ %s ਵਜੋਂ ਜਾਣਿਆ ਜਾਵੇਗਾ"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "%s ਲਈ ਸੱਦਾ"
@ -718,42 +730,42 @@ msgstr "%s ਲਈ ਸੱਦਾ"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s ਤੁਹਾਨੂੰ %s ਜੁਆਇੰਨ ਕਰਨ ਲਈ ਸੱਦ ਰਿਹਾ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "ਇਨਕਾਰ"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "ਮਨਜ਼ੂਰ"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "%s ਵਲੋਂ ਵਿਡੀਓ ਕਾਲ"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "%s ਵਲੋਂ ਕਾਲ"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "ਨਾ-ਮਨਜ਼ੂਰ"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "ਜਵਾਬ ਦਿਓ"
@ -762,110 +774,110 @@ msgstr "ਜਵਾਬ ਦਿਓ"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "%s ਤੁਹਾਨੂੰ %s ਭੇਜ ਰਿਹਾ/ਰਹੀ ਹੈ"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr ""
"%s ਤੁਹਾਨੂੰ ਵੇਖਣ ਦਾ ਅਧਿਕਾਰ ਚਾਹੁੰਦਾ/ਚਾਹੁੰਦੀ ਹੈ, ਜਦੋਂ ਵੀ ਤੁਸੀਂ ਆਨਲਾਈਨ ਹੋਵੋ"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "ਨੈੱਟਵਰਕ ਗਲਤੀ"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "ਪਰਮਾਣਕਿਤਾ ਫੇਲ੍ਹ ਹੋਈ"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "ਇੰਕ੍ਰਿਪਸ਼ਨ ਗਲਤੀ"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "ਸਰਟੀਫਿਕੇਟ ਨਹੀਂ ਦਿੱਤਾ"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "ਸਰਟੀਫਿਕੇਟ ਬੇਭਰੋਸੇਯੋਗ"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "ਸਰਟੀਫਿਕੇਟ ਦੀ ਮਿਆਦ ਪੁੱਗੀ"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "ਸਰਟੀਫਿਕੇਟ ਸਰਗਰਮ ਨਹੀਂ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "ਸਰਟੀਫਿਕੇਟ ਹੋਸਟ-ਨਾਂ ਨਹੀਂ ਮਿਲਦਾ"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "ਸਰਟੀਫਿਕੇਟ ਫਿੰਗਰ-ਪਰਿੰਟ ਮਿਲਦਾ ਨਹੀਂ"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "ਸਰਟੀਫਿਕੇਟ ਖੁਦ-ਦਸਤਖਤੀ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "ਹਾਲਤ ਆਫਲਾਈਨ ਸੈੱਟ ਕੀਤੀ ਗਈ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "ਇੰਕ੍ਰਿਪਸ਼ਨ ਉਪਲੱਬਧ ਨਹੀਂ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "ਸਰਟੀਫਿਕੇਟ ਗਲਤ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "ਕੁਨੈਕਸ਼ਨ ਤੋਂ ਇਨਕਾਰ ਕੀਤਾ ਗਿਆ"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "ਕੁਨੈਕਸ਼ਨ ਬਣਾਇਆ ਨਹੀਂ ਜਾ ਸਕਦਾ"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "ਕੁਨੈਕਸ਼ਨ ਖਤਮ ਹੋ ਗਿਆ"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "ਇਹ ਅਕਾਊਂਟ ਪਹਿਲਾਂ ਹੀ ਸਰਵਰ ਨਾਲ ਕੁਨੈਕਟ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "ਉਸੇ ਸਰੋਤ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕੁਨੈਕਸ਼ਨ ਨੂੰ ਨਵੇਂ ਕੁਨੈਕਸ਼ਨ ਨਾਲ ਬਦਲ ਦਿੱਤਾ ਗਿਆ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "ਅਕਾਊਂਟ ਸਰਵਰ ਉੱਤੇ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "ਸਰਵਰ ਇਸ ਵੇਲੇ ਐਨਾ ਰੁੱਝਿਆ ਹੋਇਆ ਹੈ ਕਿ ਕੁਨੈਕਸ਼ਨ ਸੰਭਾਲ ਨਹੀਂ ਸਕਦਾ"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "ਸਰਟੀਫਿਕੇਟ ਮਨਸੂਖ ਕੀਤਾ ਜਾ ਚੁੱਕਾ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"ਸਰਟੀਫਿਕੇਟ ਅਸੁਰੱਖਿਅਤ ਸੀਫ਼ਰ ਐਲਗੋਰਿਥਮ ਵਰਤਦਾ ਹੈ ਜਾਂ ਕਮਜ਼ੋਰ ਕ੍ਰਿਪਟੋਗਰਾਫਿਕਲ ਵਰਤਦਾ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -874,30 +886,30 @@ msgstr ""
"ਲਾਇਬਰੇਰੀ ਵਲੋਂ ਰੱਖੀ "
"ਗਈ ਲਿਮਟ ਤੋਂ ਵੱਧ ਗਈ ਹੈ।"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "ਅੰਦਰੂਨੀ ਗਲਤੀ"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "%s ਲਈ ਕੁਨੈਕਸ਼ਨ ਫੇਲ੍ਹ ਹੈ"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "ਮੁੜ-ਕੁਨੈਕਟ ਕਰੋ"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "ਅਕਾਊਂਟ ਸੋਧ"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "ਅਣਜਾਣ ਕਾਰਨ"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "ਐਪਲੀਕੇਸ਼ਨ ਵੇਖੋ"
@ -905,14 +917,14 @@ msgstr "ਐਪਲੀਕੇਸ਼ਨ ਵੇਖੋ"
msgid "Date and Time Settings"
msgstr "ਮਿਤੀ ਤੇ ਸਮਾਂ ਸੈਟਿੰਗ"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "ਕੈਲੰਡਰ ਖੋਲ੍ਹੋ"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A, %e %B %Y"
@ -1015,11 +1027,11 @@ msgstr "ਇੰਸਟਾਲ ਕਰੋ"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "ਕੀ extensions.gnome.org ਤੋਂ '%s' ਡਾਊਨਲੋਡ ਅਤੇ ਇੰਸਟਾਲ ਕਰਨੀ ਹੈ?"
#: ../js/ui/keyboard.js:327
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "ਟਰੇ"
#: ../js/ui/keyboard.js:561 ../js/ui/status/keyboard.js:195
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "ਕੀਬੋਰਡ"
@ -1072,23 +1084,23 @@ msgstr "ਸਰੋਤ ਵੇਖੋ"
msgid "Web Page"
msgstr "ਵੈੱਬ ਪੇਜ਼"
#: ../js/ui/messageTray.js:1080
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "ਖੋਲ੍ਹੋ"
#: ../js/ui/messageTray.js:1087
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "ਹਟਾਓ"
#: ../js/ui/messageTray.js:2055
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "ਸੁਨੇਹਾ ਟਰੇ"
#: ../js/ui/messageTray.js:2511
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "ਸਿਸਟਮ ਜਾਣਕਾਰੀ"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "ਅਣਜਾਣ"
@ -1144,7 +1156,7 @@ msgstr "ਕਮਾਂਡ ਦਿਓ ਜੀ:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %d %B"
@ -1194,7 +1206,7 @@ msgstr "ਪਾਸਵਰਡ"
msgid "Remember Password"
msgstr "ਪਾਸਵਰਡ ਯਾਦ ਰੱਖੋ"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:169
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "ਅਣ-ਲਾਕ"
@ -1312,7 +1324,7 @@ msgstr "ਕੀਬੋਰਡ ਸੈਟਿੰਗ"
msgid "Mouse Settings"
msgstr "ਮਾਊਸ ਸੈਟਿੰਗ"
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:236
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "ਸਾਊਂਡ ਸੈਟਿੰਗ"
@ -1597,7 +1609,7 @@ msgid "Unknown"
msgstr "ਅਣਜਾਣ"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:223
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "ਆਵਾਜ਼"
@ -1605,67 +1617,63 @@ msgstr "ਆਵਾਜ਼"
msgid "Microphone"
msgstr "ਮਾਈਕਰੋਫੋਨ"
#: ../js/ui/unlockDialog.js:176
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "ਹੋਰ ਯੂਜ਼ਰ ਵਜੋਂ ਲਾਗਇਨ"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "ਉਪਲੱਬਧ"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "ਰੁਝਿਆ"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "ਅਦਿੱਖ"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "ਦੂਰ"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "ਵੇਹਲਾ"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "ਨਾ ਉਪਲੱਬਧ"
#: ../js/ui/userMenu.js:618 ../js/ui/userMenu.js:759
msgid "Switch User"
msgstr "ਯੂਜ਼ਰ ਬਦਲੋ"
#: ../js/ui/userMenu.js:619
msgid "Switch Session"
msgstr "ਸ਼ੈਸ਼ਨ ਬਦਲੋ"
#: ../js/ui/userMenu.js:743
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "ਨੋਟੀਫਿਕੇਸ਼ਨ"
#: ../js/ui/userMenu.js:751
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "ਸਿਸਟਮ ਸੈਟਿੰਗ"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "ਯੂਜ਼ਰ ਬਦਲੋ"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "ਲਾਗ ਆਉਟ"
#: ../js/ui/userMenu.js:769
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "ਲਾਕ"
#: ../js/ui/userMenu.js:784
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "ਅੱਪਡੇਟ ਇੰਸਟਾਲ ਕਰੋ ਅਤੇ ਮੁੜ-ਚਾਲੂ"
#: ../js/ui/userMenu.js:802
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "ਤੁਹਾਡੀ ਚੈਟ ਹਾਲਤ ਰੁੱਝੇ ਵਜੋਂ ਸੈੱਟ ਕੀਤੀ ਜਾਵੇਗੀ"
#: ../js/ui/userMenu.js:803
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1687,7 +1695,7 @@ msgstr "ਐਪਲੀਕੇਸ਼ਨ"
msgid "Search"
msgstr "ਖੋਜ"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1696,12 +1704,12 @@ msgstr ""
"ਅਫਸੋਸ, ਅੱਜ ਤੁਹਾਡੇ ਲਈ ਕੋਈ ਨਸੀਹਤ ਨਹੀਂ:\n"
"%s "
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "%s ਓਰੇਕਲ ਨੇ ਕਿਹਾ"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "ਤੁਹਾਡਾ ਪਸੰਦੀਦਾ ਈਸਟਰ ਅੰਡਾ"
@ -1736,23 +1744,23 @@ msgstr[1] "%u ਇੰਪੁੱਟ"
msgid "System Sounds"
msgstr "ਸਿਸਟਮ ਸਾਊਂਡ"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "ਵਰਜਨ ਛਾਪੋ"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "ਲਾਗਇਨ ਸਕਰੀਨ ਲਈ GDM ਵਲੋਂ ਵਰਤਿਆ ਮੋਡ"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "ਲਾਗਇਨ ਸਕਰੀਨ ਉੱਤੇ ਖਾਸ ਮੋਡ ਜਿਵੇਂ ਕਿ \"gdm\" ਵਰਤੋਂ"
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "ਸੰਭਵ ਮੋਡ ਵੇਖਾਓ"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "'%s' ਚਲਾਉਣ ਲਈ ਫੇਲ੍ਹ"
@ -1777,6 +1785,9 @@ msgstr "ਡਿਫਾਲਟ"
msgid "Authentication dialog was dismissed by the user"
msgstr "ਪਰਮਾਣਕਿਤਾ ਡਾਈਲਾਗ ਯੂਜ਼ਰ ਵਲੋਂ ਰੱਦ ਕੀਤਾ"
#~ msgid "Switch Session"
#~ msgstr "ਸ਼ੈਸ਼ਨ ਬਦਲੋ"
#~ msgid "disabled OpenSearch providers"
#~ msgstr "ਓਪਨਸਰਚ ਉਪਲੱਬਧ ਕਰਵਾਉਣ ਵਾਲੇ ਬੰਦ ਹਨ"

View File

@ -15,9 +15,9 @@ 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: 2012-09-25 00:06+0000\n"
"PO-Revision-Date: 2012-09-24 21:57-0200\n"
"Last-Translator: Djavan Fagundes <djavan@comum.org>\n"
"POT-Creation-Date: 2012-12-10 13:02+0000\n"
"PO-Revision-Date: 2012-11-21 04:58-0300\n"
"Last-Translator: Rafael Ferreira <rafael.f.f1@gmail.com>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
@ -146,52 +146,65 @@ msgstr ""
"definida pelo usuário. O valor aqui é de uma enumeração GsmPresenceStatus."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Sempre mostrar o item de menu \"Encerrar sessão\" no menu do usuário."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
"user, single-session situations."
msgstr ""
"Essa chave sobrescreve a ocultação automática do item de menu \"Encerrar "
"sessão\" quando houver somente um usuário, em situações de somente uma "
"sessão."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Show the week date in the calendar"
msgstr "Mostrar o número da semana no calendário"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Se verdadeiro, exibe o número da semana no calendário."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "Associação de tecla para abrir um menu de aplicativo"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "Associação de tecla para abrir um menu de aplicativo."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr ""
"Associação de tecla para alternar a visibilidade da bandeja de mensagens"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr ""
"Associação de tecla para alternar a visibilidade da bandeja de mensagens."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "Associação de tecla para alternar o gravador de tela"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "Associação de tecla para iniciar/parar o gravador de tela embutido."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "Qual teclado usar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "O tipo do teclado para usar."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "Taxa de quadros usada para gravar screencasts."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
@ -199,11 +212,11 @@ msgstr ""
"A taxa de quadros do screencast resultante do gravador de screencasts do "
"GNOME Shell em quadros por segundo."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "A fila de processamento gstreamer usada para codificar o screencast"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -230,11 +243,11 @@ msgstr ""
"usado como espaço reservado para um convidado na lista para uma ótima "
"contagem de threads no sistema."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "Extensão de arquivo usada para armazenagem do screencast"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
@ -258,11 +271,11 @@ msgid "Select an extension to configure using the combobox above."
msgstr ""
"Selecione uma extensão para configurar usando a caixa de seleção abaixo."
#: ../js/gdm/loginDialog.js:527
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "Sessão..."
#: ../js/gdm/loginDialog.js:675
#: ../js/gdm/loginDialog.js:680
msgctxt "title"
msgid "Sign In"
msgstr "Iniciar sessão"
@ -270,34 +283,41 @@ msgstr "Iniciar sessão"
#. 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.
#: ../js/gdm/loginDialog.js:742
#: ../js/gdm/loginDialog.js:740
msgid "Not listed?"
msgstr "Não listado?"
#: ../js/gdm/loginDialog.js:895 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:898 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:166
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:168
msgid "Cancel"
msgstr "Cancelar"
#: ../js/gdm/loginDialog.js:900
#: ../js/gdm/loginDialog.js:903
msgctxt "button"
msgid "Sign In"
msgstr "Entrar"
#: ../js/gdm/loginDialog.js:1239
#. 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:962 ../js/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "Nome de usuário: "
#: ../js/gdm/loginDialog.js:1269
msgid "Login Window"
msgstr "Janela de sessão"
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:35
#| msgid "Power Off"
msgid "Power"
msgstr "Desligar"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:663 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:778
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Suspender"
@ -305,22 +325,22 @@ msgstr "Suspender"
msgid "Restart"
msgstr "Reiniciar"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:665 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:777
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Desligar"
#: ../js/gdm/util.js:148
#: ../js/gdm/util.js:152
msgid "Authentication error"
msgstr "Erro de autenticação"
#. Translators: this message is shown below the password entry field
#. to indicate the user can swipe their finger instead
#: ../js/gdm/util.js:265
#: ../js/gdm/util.js:269
msgid "(or swipe finger)"
msgstr "(ou deslize o dedo)"
#: ../js/gdm/util.js:290
#: ../js/gdm/util.js:294
#, c-format
msgid "(e.g., user or %s)"
msgstr "(ex., usuário ou %s)"
@ -357,7 +377,7 @@ msgstr "CONFIGURAÇÕES"
msgid "New Window"
msgstr "Nova janela"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "Remover dos favoritos"
@ -521,16 +541,16 @@ msgstr "Esta semana"
msgid "Next week"
msgstr "Próxima semana"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "Dispositivos removíveis"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "Abrir com %s"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "Ejetar"
@ -560,14 +580,6 @@ msgstr "Senha: "
msgid "Key: "
msgstr "Chave: "
#. 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/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "Nome de usuário: "
#: ../js/ui/components/networkAgent.js:266
msgid "Identity: "
msgstr "Identidade: "
@ -687,35 +699,35 @@ msgstr "Mudo"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:952
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Enviado <b>%A</b>, <b>%X</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:958
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Enviado <b>%A</b>, <b>%d de %B</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:963
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Enviado <b>%A</b>, <b>%d de %B</b> de %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:992
#, c-format
msgid "%s is now known as %s"
msgstr "%s agora é conhecido como %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1092
#, c-format
msgid "Invitation to %s"
msgstr "Convite para %s"
@ -723,42 +735,42 @@ msgstr "Convite para %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1100
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s está convidando você para participar de %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1102
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
msgid "Decline"
msgstr "Recusar"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1103
#: ../js/ui/components/telepathyClient.js:1182
#: ../js/ui/components/telepathyClient.js:1245
msgid "Accept"
msgstr "Aceitar"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1133
#, c-format
msgid "Video call from %s"
msgstr "Chamada de vídeo para %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1136
#, c-format
msgid "Call from %s"
msgstr "Chamada de %s"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1141
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Rejeitar"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1143
msgid "Answer"
msgstr "Atender"
@ -767,110 +779,110 @@ msgstr "Atender"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1175
#, c-format
msgid "%s is sending you %s"
msgstr "%s está enviando %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s quer permissão para vê-lo quando conectado"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1302
msgid "Network error"
msgstr "Erro de rede"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1304
msgid "Authentication failed"
msgstr "Falha de autenticação"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1306
msgid "Encryption error"
msgstr "Erro de criptografia"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate not provided"
msgstr "Certificado não fornecido"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate untrusted"
msgstr "Certificado não confiável"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate expired"
msgstr "Certificado expirado"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate not activated"
msgstr "Certificado não ativado"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate hostname mismatch"
msgstr "Máquina do certificado não confere"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate fingerprint mismatch"
msgstr "Impressão digital do certificado não confere"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1320
msgid "Certificate self-signed"
msgstr "Certificado auto-assinado"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1322
msgid "Status is set to offline"
msgstr "O status está definido como desconectado."
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1324
msgid "Encryption is not available"
msgstr "Criptografia não disponível"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1326
msgid "Certificate is invalid"
msgstr "O certificado é inválido"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection has been refused"
msgstr "A conexão foi recusada"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection can't be established"
msgstr "A conexão não pode ser estabelecida"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been lost"
msgstr "Conexão perdida"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1334
msgid "This account is already connected to the server"
msgstr "Esta conta já está conectada ao servidor"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1336
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "A conexão foi substituída por uma nova conexão usando o mesmo recurso"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1338
msgid "The account already exists on the server"
msgstr "A conta já existe no servidor"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1340
msgid "Server is currently too busy to handle the connection"
msgstr "O servidor está atualmente muito ocupado para controlar a conexão"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate has been revoked"
msgstr "O certificado foi revogado"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"O certificado usa um algoritmo de cifragem inseguro ou é criptograficamente "
"fraco"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -878,30 +890,30 @@ msgstr ""
"O comprimento do certificado do servidor, ou a profundidade da cadeia do "
"certificado excedeu os limites impostos pela biblioteca de criptografia"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Internal error"
msgstr "Erro interno"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
#, c-format
msgid "Connection to %s failed"
msgstr "A conexão a %s falhou"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1367
msgid "Reconnect"
msgstr "Reconectar"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Edit account"
msgstr "Editar conta"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1413
msgid "Unknown reason"
msgstr "Razão desconhecida"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#: ../js/ui/dash.js:254 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "Mostrar aplicativos"
@ -909,14 +921,14 @@ msgstr "Mostrar aplicativos"
msgid "Date and Time Settings"
msgstr "Configurações de data e hora"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "Abrir calendário"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A, %e de %B de %Y"
@ -1018,11 +1030,11 @@ msgstr "Instalar"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Baixar e instalar \"%s\" de extensions.gnome.org?"
#: ../js/ui/keyboard.js:327
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "bandeja"
#: ../js/ui/keyboard.js:561 ../js/ui/status/keyboard.js:195
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "Teclado"
@ -1075,23 +1087,23 @@ msgstr "Ver fonte"
msgid "Web Page"
msgstr "Página web"
#: ../js/ui/messageTray.js:1080
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Abrir"
#: ../js/ui/messageTray.js:1087
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Remover"
#: ../js/ui/messageTray.js:2055
#: ../js/ui/messageTray.js:1531
msgid "Message Tray"
msgstr "Área de notificações"
#: ../js/ui/messageTray.js:2511
#: ../js/ui/messageTray.js:2543
msgid "System Information"
msgstr "Informações do sistema"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Desconhecido"
@ -1147,18 +1159,18 @@ msgstr "Por favor, digite um comando:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:81
msgid "%A, %B %d"
msgstr "%A, %B %d"
#: ../js/ui/screenShield.js:144
#: ../js/ui/screenShield.js:145
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "%d nova mensagem"
msgstr[1] "%d novas mensagens"
#: ../js/ui/screenShield.js:146
#: ../js/ui/screenShield.js:147
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
@ -1197,7 +1209,7 @@ msgstr "Senha"
msgid "Remember Password"
msgstr "Lembrar senha"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:169
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:171
msgid "Unlock"
msgstr "Desbloquear"
@ -1315,7 +1327,7 @@ msgstr "Configurações de teclado"
msgid "Mouse Settings"
msgstr "Configurações do mouse"
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:236
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "Configurações de som"
@ -1600,7 +1612,7 @@ msgid "Unknown"
msgstr "Desconhecido"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:223
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "Volume"
@ -1608,67 +1620,63 @@ msgstr "Volume"
msgid "Microphone"
msgstr "Microfone"
#: ../js/ui/unlockDialog.js:176
#: ../js/ui/unlockDialog.js:178
msgid "Log in as another user"
msgstr "Iniciar sessão como outro usuário"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Disponível"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Ocupado"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Invisível"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Ausente"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Inativo"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Indisponível"
#: ../js/ui/userMenu.js:618 ../js/ui/userMenu.js:759
msgid "Switch User"
msgstr "Alternar usuário"
#: ../js/ui/userMenu.js:619
msgid "Switch Session"
msgstr "Alternar sessão"
#: ../js/ui/userMenu.js:743
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Notificações"
#: ../js/ui/userMenu.js:751
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Configurações do sistema"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Alternar usuário"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Encerrar sessão"
#: ../js/ui/userMenu.js:769
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Bloquear"
#: ../js/ui/userMenu.js:784
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Instalar atualizações e reiniciar"
#: ../js/ui/userMenu.js:802
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Seu status no bate-papo ficará como ocupado"
#: ../js/ui/userMenu.js:803
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1689,7 +1697,7 @@ msgstr "Aplicativos"
msgid "Search"
msgstr "Pesquisar"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1698,12 +1706,12 @@ msgstr ""
"Desculpe, sem frases para hoje:\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "%s o oráculo diz"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "Seu Easter Egg favorito"
@ -1738,23 +1746,23 @@ msgstr[1] "%u entradas"
msgid "System Sounds"
msgstr "Sons do sistema"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "Versão de impressão"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "Modo usado pelo GDM para a tela de início de sessão"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "Utilizar um modo específico, ex.: \"gdm\" para a tela de login"
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "Listar modos possíveis"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "Erro ao lançar \"%s\""
@ -1779,6 +1787,9 @@ msgstr "Padrão"
msgid "Authentication dialog was dismissed by the user"
msgstr "O diálogo de autenticação foi descartado pelo usuário"
#~ msgid "Switch Session"
#~ msgstr "Alternar sessão"
#~ msgid "disabled OpenSearch providers"
#~ msgstr "Provedores OpenSearch desabilitados"
@ -1877,13 +1888,3 @@ msgstr "O diálogo de autenticação foi descartado pelo usuário"
#~ msgid "Home Folder"
#~ msgstr "Pasta pessoal"
#~| msgid "Network error"
#~ msgid "Network"
#~ msgstr "Rede"
#~ msgid "Show password"
#~ msgstr "Mostrar senha"
#~ msgid "%s has finished starting"
#~ msgstr "%s terminou sua inicialização"

281
po/ru.po
View File

@ -13,16 +13,18 @@
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"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-10-31 16:48+0000\n"
"PO-Revision-Date: 2012-11-20 11:46+0300\n"
"PO-Revision-Date: 2012-11-04 20:48+0400\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"
"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: Lokalize 1.2\n"
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
@ -63,32 +65,55 @@ 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 "Whether to collect stats about applications usage"
msgstr "Собирать ли статистику об использовании приложений"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:6
msgid "The shell normally monitors active applications in order to present the most used ones (e.g. in launchers). While this data will be kept private, you may want to disable this for privacy reasons. Please note that doing so won't remove already saved data."
msgstr "Обычно, оболочка отслеживает активные приложения, чтобы определить наиболее используемые приложения. Хотя эти данные хранятся как личные, возможно вы захотите отключить эту возможность из соображений безопасности. Это не приведёт к удалению уже сохранённых данных."
msgid ""
"The shell normally monitors active applications in order to present the most "
"used ones (e.g. in launchers). While this data will be kept private, you may "
"want to disable this for privacy reasons. Please note that doing so won't "
"remove already saved data."
msgstr ""
"Обычно, оболочка отслеживает активные приложения, чтобы определить наиболее "
"используемые приложения. Хотя эти данные хранятся как личные, возможно вы "
"захотите отключить эту возможность из соображений безопасности. Это не "
"приведёт к удалению уже сохранённых данных."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
msgid "List of desktop file IDs for favorite applications"
msgstr "Список идентификаторов desktop-файлов для избранных приложений"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:8
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:9
msgid "History for command (Alt-F2) dialog"
@ -99,20 +124,33 @@ msgid "History for the looking glass dialog"
msgstr "История просмотра прозрачного диалога"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
msgid "Internally used to store the last IM presence explicitly set by the user. The value here is from the TpConnectionPresenceType enumeration."
msgstr "Используется для хранения статуса о присутствии, установленного пользователем. Данное значение берётся из перечисления TpConnectionPresenceType."
msgid ""
"Internally used to store the last IM presence explicitly set by the user. "
"The value here is from the TpConnectionPresenceType enumeration."
msgstr ""
"Используется для хранения статуса о присутствии, установленного "
"пользователем. Данное значение берётся из перечисления "
"TpConnectionPresenceType."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
msgid "Internally used to store the last session presence status for the user. The value here is from the GsmPresenceStatus enumeration."
msgstr "Используется для хранения статуса о присутствии для последнего сеанса. Данное значение берётся из перечисления GsmPresenceStatus."
msgid ""
"Internally used to store the last session presence status for the user. The "
"value here is from the GsmPresenceStatus enumeration."
msgstr ""
"Используется для хранения статуса о присутствии для последнего сеанса. "
"Данное значение берётся из перечисления GsmPresenceStatus."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Всегда показывать в меню пункт «Завершить сеанс»."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
@ -144,7 +182,8 @@ msgstr "Комбинация клавиш для переключения зап
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "Комбинация клавиш для запуска/остановки встроенного средства записи экрана."
msgstr ""
"Комбинация клавиш для запуска/остановки встроенного средства записи экрана."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
@ -159,8 +198,12 @@ msgid "Framerate used for recording screencasts."
msgstr "Частота смены кадров для записи скринкастов."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "The framerate of the resulting screencast recordered by GNOME Shell's screencast recorder in frames-per-second."
msgstr "Частота смены кадров в скринкасте, записанном с помощью GNOME Shell (кадров/сек)."
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
msgstr ""
"Частота смены кадров в скринкасте, записанном с помощью GNOME Shell (кадров/"
"сек)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
@ -168,16 +211,44 @@ msgstr "Конвейер gstreamer, используемый для кодиро
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid "Sets the GStreamer pipeline used to encode recordings. It follows the syntax used for gst-launch. The pipeline should have an unconnected sink pad where the recorded video is recorded. It will normally have a unconnected source pad; output from that pad will be written into the output file. However the pipeline can also take care of its own output - this might be used to send the output to an icecast server via shout2send or similar. When unset or set to an empty value, the default pipeline will be used. This is currently 'vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! queue ! webmmux' and records to WEBM using the VP8 codec. %T is used as a placeholder for a guess at the optimal thread count on the system."
msgstr "Устанавливает конвейер GStreamer для кодирования записей. Соответствует синтаксису, используемому для gst-launch. Конвейер должен иметь неподключенный входной коннектор, где происходит запись видео. Выход коннектора обычно отключён, выход с этого коннектора записывается в файл вывода. Однако конвейер также может позаботиться о своём выводе, что можно использовать для отправки вывода на сервер icecast через shout2send или нечто подобное. При сбросе или установке пустого значения будет использоваться конвейер по умолчанию. В данный момент это «vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! queue ! webmmux»; запись выполняется в WEBM с помощью кодека VP8. %T используется как заполнитель для определения оптимального количества потоков в системе."
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
"used for gst-launch. The pipeline should have an unconnected sink pad where "
"the recorded video is recorded. It will normally have a unconnected source "
"pad; output from that pad will be written into the output file. However the "
"pipeline can also take care of its own output - this might be used to send "
"the output to an icecast server via shout2send or similar. When unset or set "
"to an empty value, the default pipeline will be used. This is currently "
"'vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 "
"threads=%T ! queue ! webmmux' and records to WEBM using the VP8 codec. %T is "
"used as a placeholder for a guess at the optimal thread count on the system."
msgstr ""
"Устанавливает конвейер GStreamer для кодирования записей. Соответствует "
"синтаксису, используемому для gst-launch. Конвейер должен иметь "
"неподключенный входной коннектор, где происходит запись видео. Выход "
"коннектора обычно отключён, выход с этого коннектора записывается в файл "
"вывода. Однако конвейер также может позаботиться о своём выводе, что можно "
"использовать для отправки вывода на сервер icecast через shout2send или "
"нечто подобное. При сбросе или установке пустого значения будет "
"использоваться конвейер по умолчанию. В данный момент это «vp8enc "
"min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! "
"queue ! webmmux»; запись выполняется в WEBM с помощью кодека VP8. %T "
"используется как заполнитель для определения оптимального количества потоков "
"в системе."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "Расширение файла, использующееся для хранения скринкастов"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "The filename for recorded screencasts will be a unique filename based on the current date, and use this extension. It should be changed when recording to a different container format."
msgstr "Имя файла записанного скринкаста будет уникальным именем, основанным на текущей дате, и использует это расширение. Оно должно быть изменено, если запись выполняется в другой контейнерный формат."
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
"a different container format."
msgstr ""
"Имя файла записанного скринкаста будет уникальным именем, основанным на "
"текущей дате, и использует это расширение. Оно должно быть изменено, если "
"запись выполняется в другой контейнерный формат."
#: ../js/extensionPrefs/main.js:124
#, c-format
@ -208,14 +279,10 @@ msgstr "Вход в систему"
msgid "Not listed?"
msgstr "Нет в списке?"
#: ../js/gdm/loginDialog.js:889
#: ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162
#: ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195
#: ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427
#: ../js/ui/unlockDialog.js:167
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "Отмена"
@ -233,9 +300,7 @@ msgstr "Окно входа в систему"
msgid "Power"
msgstr "Питание"
#: ../js/gdm/powerMenu.js:89
#: ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:668
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Ждущий режим"
@ -244,9 +309,7 @@ msgstr "Ждущий режим"
msgid "Restart"
msgstr "Перезапустить"
#: ../js/gdm/powerMenu.js:99
#: ../js/ui/userMenu.js:666
#: ../js/ui/userMenu.js:668
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Выключить"
@ -292,14 +355,13 @@ msgstr "ПРИЛОЖЕНИЯ"
#: ../js/ui/appDisplay.js:370
msgid "SETTINGS"
msgstr "ПАРАМЕТРЫ"
msgstr "НАСТРОЙКИ"
#: ../js/ui/appDisplay.js:675
msgid "New Window"
msgstr "Новое окно"
#: ../js/ui/appDisplay.js:678
#: ../js/ui/dash.js:290
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "Удалить из избранного"
@ -476,8 +538,7 @@ msgstr "Открыть с помощью %s"
msgid "Eject"
msgstr "Извлечь"
#: ../js/ui/components/keyring.js:86
#: ../js/ui/components/polkitAgent.js:260
#: ../js/ui/components/keyring.js:86 ../js/ui/components/polkitAgent.js:260
msgid "Password:"
msgstr "Пароль:"
@ -529,8 +590,11 @@ msgstr "Беспроводная сеть требует подтвержден
#: ../js/ui/components/networkAgent.js:310
#, c-format
msgid "Passwords or encryption keys are required to access the wireless network '%s'."
msgstr "Для доступа к беспроводной сети «%s» требуются пароли или ключи шифрования."
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"'%s'."
msgstr ""
"Для доступа к беспроводной сети «%s» требуются пароли или ключи шифрования."
#: ../js/ui/components/networkAgent.js:314
msgid "Wired 802.1X authentication"
@ -581,8 +645,7 @@ msgstr "Подтвердить"
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/components/polkitAgent.js:248
#: ../js/ui/shellMountOperation.js:381
#: ../js/ui/components/polkitAgent.js:248 ../js/ui/shellMountOperation.js:381
msgid "Sorry, that didn't work. Please try again."
msgstr "Извините, это не сработало. Попробуйте снова."
@ -787,7 +850,8 @@ msgid "This account is already connected to the server"
msgstr "Эта учётная запись уже подключена к серверу"
#: ../js/ui/components/telepathyClient.js:1334
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:1336
@ -796,19 +860,27 @@ msgstr "Учётная запись уже существует на серве
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "Сервер в настоящее время сильно перегружен, чтобы обработать соединение"
msgstr ""
"Сервер в настоящее время сильно перегружен, чтобы обработать соединение"
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "Сертификат аннулирован"
#: ../js/ui/components/telepathyClient.js:1342
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:1344
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:1346
msgid "Internal error"
@ -833,8 +905,7 @@ msgstr "Изменить учётную запись"
msgid "Unknown reason"
msgstr "Неизвестная причина"
#: ../js/ui/dash.js:253
#: ../js/ui/dash.js:292
#: ../js/ui/dash.js:253 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "Показать приложения"
@ -866,14 +937,17 @@ msgstr "Выйти из системы"
#: ../js/ui/endSessionDialog.js:63
msgid "Click Log Out to quit these applications and log out of the system."
msgstr "Нажмите «Выйти из системы», чтобы закрыть эти приложения и выйти из системы."
msgstr ""
"Нажмите «Выйти из системы», чтобы закрыть эти приложения и выйти из системы."
#: ../js/ui/endSessionDialog.js:65
#, 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
@ -914,8 +988,7 @@ msgstr[2] "Система будет автоматически выключен
msgid "Powering off the system."
msgstr "Выключение системы."
#: ../js/ui/endSessionDialog.js:90
#: ../js/ui/endSessionDialog.js:107
#: ../js/ui/endSessionDialog.js:90 ../js/ui/endSessionDialog.js:107
msgctxt "button"
msgid "Restart"
msgstr "Перезапустить"
@ -932,7 +1005,9 @@ msgstr "Перезапустить"
#: ../js/ui/endSessionDialog.js:99
msgid "Click Restart to quit these applications and restart the system."
msgstr "Нажмите «Перезапустить», чтобы закрыть эти приложения и перезапустить систему."
msgstr ""
"Нажмите «Перезапустить», чтобы закрыть эти приложения и перезапустить "
"систему."
#: ../js/ui/endSessionDialog.js:101
#, c-format
@ -959,8 +1034,7 @@ msgstr "Загрузить и установить расширение «%s»
msgid "tray"
msgstr "лоток"
#: ../js/ui/keyboard.js:584
#: ../js/ui/status/keyboard.js:195
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "Клавиатура"
@ -979,8 +1053,7 @@ msgstr "%s не сообщал о каких-либо ошибках."
msgid "Hide Errors"
msgstr "Скрыть ошибки"
#: ../js/ui/lookingGlass.js:755
#: ../js/ui/lookingGlass.js:815
#: ../js/ui/lookingGlass.js:755 ../js/ui/lookingGlass.js:815
msgid "Show Errors"
msgstr "Показать ошибки"
@ -990,8 +1063,7 @@ msgstr "Включено"
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:767
#: ../src/gvc/gvc-mixer-control.c:1082
#: ../js/ui/lookingGlass.js:767 ../src/gvc/gvc-mixer-control.c:1082
msgid "Disabled"
msgstr "Выключено"
@ -1031,8 +1103,7 @@ msgstr "Панель сообщений"
msgid "System Information"
msgstr "Системная информация"
#: ../js/ui/notificationDaemon.js:506
#: ../src/shell-app.c:374
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Неизвестно"
@ -1140,8 +1211,7 @@ msgstr "Пароль"
msgid "Remember Password"
msgstr "Запомнить пароль"
#: ../js/ui/shellMountOperation.js:400
#: ../js/ui/unlockDialog.js:170
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "Разблокировать"
@ -1193,14 +1263,10 @@ msgstr "Высокая контрастность"
msgid "Large Text"
msgstr "Крупный текст"
#: ../js/ui/status/bluetooth.js:27
#: ../js/ui/status/bluetooth.js:31
#: ../js/ui/status/bluetooth.js:251
#: ../js/ui/status/bluetooth.js:304
#: ../js/ui/status/bluetooth.js:335
#: ../js/ui/status/bluetooth.js:371
#: ../js/ui/status/bluetooth.js:400
#: ../js/ui/status/network.js:867
#: ../js/ui/status/bluetooth.js:27 ../js/ui/status/bluetooth.js:31
#: ../js/ui/status/bluetooth.js:251 ../js/ui/status/bluetooth.js:304
#: ../js/ui/status/bluetooth.js:335 ../js/ui/status/bluetooth.js:371
#: ../js/ui/status/bluetooth.js:400 ../js/ui/status/network.js:867
msgid "Bluetooth"
msgstr "Bluetooth"
@ -1221,8 +1287,7 @@ msgid "Bluetooth Settings"
msgstr "Настроить Bluetooth"
#. TRANSLATORS: this means that bluetooth was disabled by hardware rfkill
#: ../js/ui/status/bluetooth.js:103
#: ../js/ui/status/network.js:208
#: ../js/ui/status/bluetooth.js:103 ../js/ui/status/network.js:208
msgid "hardware disabled"
msgstr "устройство выключено"
@ -1230,13 +1295,11 @@ msgstr "устройство выключено"
msgid "Connection"
msgstr "Соединение"
#: ../js/ui/status/bluetooth.js:207
#: ../js/ui/status/network.js:458
#: ../js/ui/status/bluetooth.js:207 ../js/ui/status/network.js:458
msgid "disconnecting..."
msgstr "отключение…"
#: ../js/ui/status/bluetooth.js:220
#: ../js/ui/status/network.js:464
#: ../js/ui/status/bluetooth.js:220 ../js/ui/status/network.js:464
#: ../js/ui/status/network.js:934
msgid "connecting..."
msgstr "подключение…"
@ -1266,8 +1329,7 @@ msgstr "Настроить клавиатуру"
msgid "Mouse Settings"
msgstr "Настроить мышь"
#: ../js/ui/status/bluetooth.js:269
#: ../js/ui/status/volume.js:234
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "Настроить звук"
@ -1294,8 +1356,7 @@ msgstr "Предоставить единовременно"
msgid "Pairing confirmation for %s"
msgstr "Подтверждение на сопряжение с %s"
#: ../js/ui/status/bluetooth.js:378
#: ../js/ui/status/bluetooth.js:408
#: ../js/ui/status/bluetooth.js:378 ../js/ui/status/bluetooth.js:408
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Устройство %s пытается выполнить сопряжение с этим компьютером"
@ -1328,11 +1389,11 @@ msgstr "OK"
#: ../js/ui/status/keyboard.js:228
msgid "Show Keyboard Layout"
msgstr "Показать раскладку клавиатуры"
msgstr "Показывать раскладку клавиатуры"
#: ../js/ui/status/keyboard.js:233
msgid "Region and Language Settings"
msgstr "Региональные и языковые параметры"
msgstr "Региональные и языковые настройки"
#: ../js/ui/status/lockScreenMenu.js:18
msgid "Volume, network, battery"
@ -1354,8 +1415,7 @@ msgid "unmanaged"
msgstr "не управляется"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:467
#: ../js/ui/status/network.js:937
#: ../js/ui/status/network.js:467 ../js/ui/status/network.js:937
msgid "authentication required"
msgstr "требуется подтверждение подлинности"
@ -1376,20 +1436,17 @@ msgstr "кабель не подключен"
msgid "unavailable"
msgstr "недоступное"
#: ../js/ui/status/network.js:491
#: ../js/ui/status/network.js:939
#: ../js/ui/status/network.js:491 ../js/ui/status/network.js:939
msgid "connection failed"
msgstr "сбой подключения"
#: ../js/ui/status/network.js:552
#: ../js/ui/status/network.js:1529
#: ../js/ui/status/network.js:552 ../js/ui/status/network.js:1529
msgid "More..."
msgstr "Ещё…"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:588
#: ../js/ui/status/network.js:1459
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1459
msgid "Connected (private)"
msgstr "Подключено (частное)"
@ -1406,8 +1463,7 @@ msgid "Auto dial-up"
msgstr "Автоматическое коммутируемое"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:853
#: ../js/ui/status/network.js:1476
#: ../js/ui/status/network.js:853 ../js/ui/status/network.js:1476
#, c-format
msgid "Auto %s"
msgstr "Автоматическое %s"
@ -1510,8 +1566,7 @@ msgstr[0] "Осталась %d минута"
msgstr[1] "Осталось %d минуты"
msgstr[2] "Осталось %d минут"
#: ../js/ui/status/power.js:112
#: ../js/ui/status/power.js:186
#: ../js/ui/status/power.js:112 ../js/ui/status/power.js:186
#, c-format
msgctxt "percent of battery remaining"
msgid "%d%%"
@ -1563,8 +1618,7 @@ msgid "Unknown"
msgstr "Неизвестно"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47
#: ../js/ui/status/volume.js:221
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "Громкость"
@ -1629,8 +1683,12 @@ msgid "Your chat status will be set to busy"
msgstr "Будет установлен статус «не беспокоить»"
#: ../js/ui/userMenu.js:804
msgid "Notifications are now disabled, including chat messages. Your online status has been adjusted to let others know that you might not see their messages."
msgstr "Уведомления отключены, включая сообщения в чате. Ваш статус доступности изменён, чтобы другие знали, что вы возможно не видите их сообщения."
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
msgstr ""
"Уведомления отключены, включая сообщения в чате. Ваш статус доступности "
"изменён, чтобы другие знали, что вы возможно не видите их сообщения."
#: ../js/ui/viewSelector.js:85
msgid "Windows"
@ -1677,9 +1735,9 @@ msgstr "Календарь Evolution"
#, c-format
msgid "%u Output"
msgid_plural "%u Outputs"
msgstr[0] "%u выход"
msgstr[1] "%u выхода"
msgstr[2] "%u выходов"
msgstr[0] "%u вывод"
msgstr[1] "%u вывода"
msgstr[2] "%u выводов"
#. translators:
#. * The number of sound inputs on a particular device
@ -1705,7 +1763,8 @@ msgstr "Режим, используемый GDM для окна входа в
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "Использовать для экрана входа в систему определённый режим, например «gdm»"
msgstr ""
"Использовать для экрана входа в систему определённый режим, например «gdm»"
#: ../src/main.c:350
msgid "List possible modes"

296
po/sk.po
View File

@ -10,8 +10,8 @@ msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-10-27 16:22+0000\n"
"PO-Revision-Date: 2012-10-28 19:49+0000\n"
"POT-Creation-Date: 2012-10-18 16:51+0000\n"
"PO-Revision-Date: 2012-10-13 22:35+0100\n"
"Last-Translator: Dušan Kazik <prescott66@gmail.com>\n"
"Language-Team: Slovak <gnome-sk-list@gnome.org>\n"
"Language: sk\n"
@ -25,6 +25,8 @@ msgstr ""
msgid "Screenshots"
msgstr "Snímky obrazovky"
# PM: inde dianie na obrazovke
# DK:presne taketo nieco som chcel povedat ale nevedel som ako
#: ../data/50-gnome-shell-screenshot.xml.in.h:2
msgid "Record a screencast"
msgstr "Zaznamenať dianie na obrazovke"
@ -35,16 +37,20 @@ msgstr "Systém"
#: ../data/50-gnome-shell-system.xml.in.h:2
msgid "Show the message tray"
msgstr "Zobrazí lištu správ"
msgstr "Zobraz lištu správ"
# tooltip
#: ../data/50-gnome-shell-system.xml.in.h:3
#, fuzzy
#| msgid "Show Applications"
msgid "Show all applications"
msgstr "Zobrazí všetky aplikácie"
msgstr "Zobrazí aplikácie"
#: ../data/50-gnome-shell-system.xml.in.h:4
#, fuzzy
#| msgid "Keybinding to open the application menu"
msgid "Open the application menu"
msgstr "Otvorí ponuku aplikácií"
msgstr "Klávesová skratka na otvorenie ponuky aplikácií"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
@ -79,9 +85,13 @@ msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
msgid "Uuids of extensions to enable"
msgstr "Vlastnosť uuid rozšírení určených na povolenie"
msgstr "Uuid identifikátory rozšírení určených na povolenie"
# PM: nepáči sa mi konštrukcia viet, preklad vyznieva strojovo
# DK: uz lepsie?
# PM: lepšie ale nepáči sa mi org.gnome.Shell. mne sa vidí že to bude nejaký súbor a potom predložka na asi nebude dobre
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
#, fuzzy
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 "
@ -91,7 +101,7 @@ msgstr ""
"Rozšírenia pre GNOME Shell majú vlastnosť uuid; tento kľúč obsahuje zoznam "
"rozšírení, ktoré by mali byť načítané. Každé rozšírenie, ktoré je potrebné "
"načítať, musí byť v tomto zozname. Tento zoznam môžete upraviť aj ručne "
"pomocou metód DBus EnableExtension a DisableExtension v org.gnome.Shell."
"pomocou metód DBus EnableExtension a DisableExtension na org.gnome.Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
msgid "Whether to collect stats about applications usage"
@ -166,15 +176,17 @@ msgid "Keybinding to open the application menu."
msgstr "Klávesová skratka na otvorenie ponuky aplikácií."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#, fuzzy
#| msgid "Keybinding to open the application menu"
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Klávesová skratka na otvorenie pohľadu „Zobraziť aplikácie“"
msgstr "Klávesová skratka na otvorenie ponuky aplikácií"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#, fuzzy
#| msgid "Keybinding to open the application menu."
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Klávesová skratka na otvorenie pohľadu „Zobraziť aplikácie“ v prehľade "
"aktivít."
msgstr "Klávesová skratka na otvorenie ponuky aplikácií."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
@ -199,7 +211,7 @@ msgstr "Ktorú klávesnicu používať"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "Typ klávesnice, ktorá sa má používať."
msgstr "Typ klávesnice, ktorý sa má používať."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
@ -261,39 +273,6 @@ msgstr ""
"základe aktuálneho dátumu a použije túto príponu. Pri nahrávaní do iného "
"formátu kontajneru by mala byť zmenená."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "Attach modal dialog to the parent window"
msgstr "Pripojiť modálne dialógové okno k rodičovskému oknu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr "Tento kľúč preváži kľúč v org.gnome.mutter po spustení GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid "Arrangement of buttons on the titlebar"
msgstr "Usporiadanie tlačidiel na titulku okna"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid ""
"This key overrides the key in org.gnome.desktop.wm.preferences when running "
"GNOME Shell."
msgstr ""
"Tento kľúč preváži kľúč v org.gnome.desktop.wm.preferences po spustení GNOME "
"Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid "Workspaces are managed dynamically"
msgstr "Pracovné priestory sú spravované dynamicky"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Workspaces only on primary monitor"
msgstr "Pracovné priestory sú iba na primárnom monitore"
#: ../js/extensionPrefs/main.js:124
#, c-format
msgid "There was an error loading the preferences dialog for %s:"
@ -307,11 +286,11 @@ msgstr "Rozšírenie"
msgid "Select an extension to configure using the combobox above."
msgstr "Použitím ponuky vyberte rozšírenie na nastavenie"
#: ../js/gdm/loginDialog.js:560
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "Relácia..."
#: ../js/gdm/loginDialog.js:704
#: ../js/gdm/loginDialog.js:677
msgctxt "title"
msgid "Sign In"
msgstr "Prihlásenie"
@ -320,42 +299,42 @@ msgstr "Prihlásenie"
#. 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.
#: ../js/gdm/loginDialog.js:763
#: ../js/gdm/loginDialog.js:736
msgid "Not listed?"
msgstr "Nie ste v zozname?"
#: ../js/gdm/loginDialog.js:901 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:889 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:168
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:167
msgid "Cancel"
msgstr "Zrušiť"
#: ../js/gdm/loginDialog.js:906
#: ../js/gdm/loginDialog.js:894
msgctxt "button"
msgid "Sign In"
msgstr "Prihlásiť sa"
#: ../js/gdm/loginDialog.js:1217
#: ../js/gdm/loginDialog.js:1215
msgid "Login Window"
msgstr "Prihlasovacie okno"
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:36
#: ../js/gdm/powerMenu.js:37
msgid "Power"
msgstr "Napájanie"
#: ../js/gdm/powerMenu.js:93 ../js/ui/userMenu.js:663 ../js/ui/userMenu.js:667
#: ../js/ui/userMenu.js:778
#: ../js/gdm/powerMenu.js:95 ../js/ui/userMenu.js:655 ../js/ui/userMenu.js:659
#: ../js/ui/userMenu.js:770
msgid "Suspend"
msgstr "Uspať"
#: ../js/gdm/powerMenu.js:98
#: ../js/gdm/powerMenu.js:100
msgid "Restart"
msgstr "Reštartovať"
#: ../js/gdm/powerMenu.js:103 ../js/ui/userMenu.js:665
#: ../js/ui/userMenu.js:667 ../js/ui/userMenu.js:777
#: ../js/gdm/powerMenu.js:105 ../js/ui/userMenu.js:657
#: ../js/ui/userMenu.js:659 ../js/ui/userMenu.js:769
msgid "Power Off"
msgstr "Vypnúť"
@ -538,35 +517,35 @@ msgid "S"
msgstr "So"
#. Translators: Text to show if there are no events
#: ../js/ui/calendar.js:700
#: ../js/ui/calendar.js:699
msgid "Nothing Scheduled"
msgstr "Žiadne naplánované udalosti"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:716
#: ../js/ui/calendar.js:715
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e. %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:719
#: ../js/ui/calendar.js:718
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e. %B %Y"
#: ../js/ui/calendar.js:729
#: ../js/ui/calendar.js:728
msgid "Today"
msgstr "Dnes"
#: ../js/ui/calendar.js:733
#: ../js/ui/calendar.js:732
msgid "Tomorrow"
msgstr "Zajtra"
#: ../js/ui/calendar.js:744
#: ../js/ui/calendar.js:743
msgid "This week"
msgstr "Tento týždeň"
#: ../js/ui/calendar.js:752
#: ../js/ui/calendar.js:751
msgid "Next week"
msgstr "Ďalší týždeň"
@ -574,11 +553,10 @@ msgstr "Ďalší týždeň"
msgid "Removable Devices"
msgstr "Vymeniteľné zariadenia"
# DK: doplnil som slovo "programu", aby to znelo prirodzenejsie. priklad:po pripojeni USB kluca bolo zobrazene "Otvoriť pomocou Súbory"
#: ../js/ui/components/autorunManager.js:591
#, c-format
msgid "Open with %s"
msgstr "Otvoriť pomocou programu %s"
msgstr "Otvoriť pomocou %s"
#: ../js/ui/components/autorunManager.js:617
msgid "Eject"
@ -645,7 +623,7 @@ msgstr ""
#: ../js/ui/components/networkAgent.js:314
msgid "Wired 802.1X authentication"
msgstr "Overenie totožnosti k drôtovej sieti 802.1X"
msgstr "Overenie totožnosti drôtovej 802.1X"
#: ../js/ui/components/networkAgent.js:316
msgid "Network name: "
@ -653,7 +631,7 @@ msgstr "Názov siete: "
#: ../js/ui/components/networkAgent.js:321
msgid "DSL authentication"
msgstr "Overenie totožnosti k DSL"
msgstr "Overenie totožnosti DSL"
#: ../js/ui/components/networkAgent.js:328
msgid "PIN code required"
@ -661,7 +639,7 @@ msgstr "Požaduje sa kód PIN"
#: ../js/ui/components/networkAgent.js:329
msgid "PIN code is needed for the mobile broadband device"
msgstr "Pre zariadenie mobilnej siete je potrebný kód PIN"
msgstr "Pre zariadenie mobilnej siete je potrebný PIN kód"
#: ../js/ui/components/networkAgent.js:330
msgid "PIN: "
@ -669,7 +647,7 @@ msgstr "PIN: "
#: ../js/ui/components/networkAgent.js:336
msgid "Mobile broadband network password"
msgstr "Heslo k mobilnej sieti"
msgstr "Heslo pre mobilnú sieť"
#: ../js/ui/components/networkAgent.js:337
#, c-format
@ -697,12 +675,11 @@ msgstr "Overiť totožnosť"
msgid "Sorry, that didn't work. Please try again."
msgstr "Prepáčte, ale nezabralo to. Skúste to, prosím, znova."
# %d je datum, %t je cas
#. Translators: this is a filename used for screencast recording
#: ../js/ui/components/recorder.js:44
#, no-c-format
msgid "Screencast from %d %t"
msgstr "Záznam videa obrazovky dňa %d o %t"
msgstr "Záznam videa obrazovky z %d %t"
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
#. system-users for now as Empathy does.
@ -737,42 +714,44 @@ msgid "Mute"
msgstr "Stlmiť"
#. Translators: this is a time format string followed by the word "Yesterday". i.e. "14:30 on Yesterday"
#: ../js/ui/components/telepathyClient.js:943
#: ../js/ui/components/telepathyClient.js:941
#, no-c-format
msgid "<b>%H:%M</b> on Yesterday"
msgstr "včera o <b>%H:%M</b>"
msgstr ""
#. Translators: this is a time format string followed by a week day name. i.e. "14:30 on Monday
#: ../js/ui/components/telepathyClient.js:949
#, no-c-format
#: ../js/ui/components/telepathyClient.js:947
#, fuzzy, no-c-format
#| msgid "Sent at <b>%X</b> on <b>%A</b>"
msgid "<b>%H:%M</b> on <b>%A</b>"
msgstr "v <b>%A</b> o <b>%H:%M</b>"
msgstr "Čas odoslania: <b>%A</b>, <b>%R</b>"
#. Translators: this is a time format in the style of "14:30 on Wednesday, May 25",
#. shown when you get a chat message in the same year
#: ../js/ui/components/telepathyClient.js:955
#, no-c-format
#: ../js/ui/components/telepathyClient.js:953
#, fuzzy, no-c-format
#| msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgid "<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>"
msgstr "v <b>%A</b> o <b>%H:%M</b>, <b>%e.</b> <b>%B</b>"
msgstr "Čas odoslania: <b>%A</b>, <b>%e. %B</b>"
#. Translators: this is a time format in the style of "14:30 on Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year
#: ../js/ui/components/telepathyClient.js:960
#, no-c-format
#: ../js/ui/components/telepathyClient.js:958
#, fuzzy, no-c-format
#| msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgid "<b>%H:%M</b> on <b>%A</b>, <b>%B</b> <b>%d</b>, %Y"
msgstr "v <b>%A</b> o <b>%H:%M</b>, <b>%e.</b> <b>%B</b>, %Y"
msgstr "Čas odoslania: <b>%A</b>, <b>%e. %B</b> %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:986
#, c-format
msgid "%s is now known as %s"
msgstr "Kontakt %s odteraz vystupuje ako %s"
msgstr "%s odteraz vystupuje ako %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1087
#: ../js/ui/components/telepathyClient.js:1085
#, c-format
msgid "Invitation to %s"
msgstr "Pozvánka do %s"
@ -780,42 +759,42 @@ msgstr "Pozvánka do %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1095
#: ../js/ui/components/telepathyClient.js:1093
#, c-format
msgid "%s is inviting you to join %s"
msgstr "Kontakt %s vás pozýva aby ste sa pridali do %s"
msgstr "%s vás pozýva aby ste sa pridali do %s"
#: ../js/ui/components/telepathyClient.js:1097
#: ../js/ui/components/telepathyClient.js:1176
#: ../js/ui/components/telepathyClient.js:1239
#: ../js/ui/components/telepathyClient.js:1095
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1237
msgid "Decline"
msgstr "Odmietnuť"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1175
#: ../js/ui/components/telepathyClient.js:1238
msgid "Accept"
msgstr "Prijať"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1128
#: ../js/ui/components/telepathyClient.js:1126
#, c-format
msgid "Video call from %s"
msgstr "Videohovor od kontaktu %s"
msgstr "Videohovor od používateľa %s"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1131
#: ../js/ui/components/telepathyClient.js:1129
#, c-format
msgid "Call from %s"
msgstr "Hovor od kontaktu %s"
msgstr "Hovor od používateľa %s"
#: ../js/ui/components/telepathyClient.js:1136
#: ../js/ui/components/telepathyClient.js:1134
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Odmietnuť"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1138
#: ../js/ui/components/telepathyClient.js:1136
msgid "Answer"
msgstr "Prijať hovor"
@ -824,111 +803,110 @@ msgstr "Prijať hovor"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1170
#: ../js/ui/components/telepathyClient.js:1168
#, c-format
msgid "%s is sending you %s"
msgstr "Kontakt %s vám posiela %s"
msgstr "%s vám posiela %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1205
#: ../js/ui/components/telepathyClient.js:1203
#, c-format
msgid "%s would like permission to see when you are online"
msgstr ""
"Kontakt %s by chcel získať oprávnenie vidieť, kedy ste pripojený"
msgstr "%s by chcel získať oprávnenie vidieť, kedy ste pripojený"
#: ../js/ui/components/telepathyClient.js:1297
#: ../js/ui/components/telepathyClient.js:1295
msgid "Network error"
msgstr "Chyba siete"
#: ../js/ui/components/telepathyClient.js:1299
#: ../js/ui/components/telepathyClient.js:1297
msgid "Authentication failed"
msgstr "Overenie totožnosti zlyhalo"
#: ../js/ui/components/telepathyClient.js:1301
#: ../js/ui/components/telepathyClient.js:1299
msgid "Encryption error"
msgstr "Chyba šifrovania"
#: ../js/ui/components/telepathyClient.js:1303
#: ../js/ui/components/telepathyClient.js:1301
msgid "Certificate not provided"
msgstr "Neposkytnutý certifikát"
#: ../js/ui/components/telepathyClient.js:1305
#: ../js/ui/components/telepathyClient.js:1303
msgid "Certificate untrusted"
msgstr "Nedôveryhodný certifikát"
#: ../js/ui/components/telepathyClient.js:1307
#: ../js/ui/components/telepathyClient.js:1305
msgid "Certificate expired"
msgstr "Certifikát s ukončenou platnosťou"
#: ../js/ui/components/telepathyClient.js:1309
#: ../js/ui/components/telepathyClient.js:1307
msgid "Certificate not activated"
msgstr "Neaktivovaný certifikát"
#: ../js/ui/components/telepathyClient.js:1311
#: ../js/ui/components/telepathyClient.js:1309
msgid "Certificate hostname mismatch"
msgstr "Certifikát s nesúhlasným názvom hostiteľa"
#: ../js/ui/components/telepathyClient.js:1313
#: ../js/ui/components/telepathyClient.js:1311
msgid "Certificate fingerprint mismatch"
msgstr "Certifikát s nesúhlasným odtlačkom"
#: ../js/ui/components/telepathyClient.js:1315
#: ../js/ui/components/telepathyClient.js:1313
msgid "Certificate self-signed"
msgstr "Sebou podpísaný certifikát"
#: ../js/ui/components/telepathyClient.js:1317
#: ../js/ui/components/telepathyClient.js:1315
msgid "Status is set to offline"
msgstr "Stav je nastavený na odhlásený"
#: ../js/ui/components/telepathyClient.js:1319
#: ../js/ui/components/telepathyClient.js:1317
msgid "Encryption is not available"
msgstr "Šifrovanie nie je dostupné"
#: ../js/ui/components/telepathyClient.js:1321
#: ../js/ui/components/telepathyClient.js:1319
msgid "Certificate is invalid"
msgstr "Certifikát je neplatný"
#: ../js/ui/components/telepathyClient.js:1323
#: ../js/ui/components/telepathyClient.js:1321
msgid "Connection has been refused"
msgstr "Pripojenie bolo odmietnuté"
#: ../js/ui/components/telepathyClient.js:1325
#: ../js/ui/components/telepathyClient.js:1323
msgid "Connection can't be established"
msgstr "Nedá sa nadviazať spojenie"
#: ../js/ui/components/telepathyClient.js:1327
#: ../js/ui/components/telepathyClient.js:1325
msgid "Connection has been lost"
msgstr "Spojenie sa stratilo"
#: ../js/ui/components/telepathyClient.js:1329
#: ../js/ui/components/telepathyClient.js:1327
msgid "This account is already connected to the server"
msgstr "Tento účet je už pripojený k serveru"
#: ../js/ui/components/telepathyClient.js:1331
#: ../js/ui/components/telepathyClient.js:1329
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Pripojenie bolo nahradené novým, ktoré používa rovnaký zdroj"
#: ../js/ui/components/telepathyClient.js:1333
#: ../js/ui/components/telepathyClient.js:1331
msgid "The account already exists on the server"
msgstr "Účet na serveri už existuje"
#: ../js/ui/components/telepathyClient.js:1335
#: ../js/ui/components/telepathyClient.js:1333
msgid "Server is currently too busy to handle the connection"
msgstr "Server je momentálne príliš zaneprázdnený na zvládnutie pripojenia"
#: ../js/ui/components/telepathyClient.js:1337
#: ../js/ui/components/telepathyClient.js:1335
msgid "Certificate has been revoked"
msgstr "Certifikát bol zrušený"
#: ../js/ui/components/telepathyClient.js:1339
#: ../js/ui/components/telepathyClient.js:1337
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Šifrovací algoritmus používaný certifikátom nie je bezpečný alebo je "
"kryptograficky slabý"
#: ../js/ui/components/telepathyClient.js:1341
#: ../js/ui/components/telepathyClient.js:1339
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -936,26 +914,26 @@ msgstr ""
"Dĺžka certifikátu servera, alebo hĺbka reťazca certifikátu servera presahuje "
"limit stanovený kryptografickou knižnicou."
#: ../js/ui/components/telepathyClient.js:1343
#: ../js/ui/components/telepathyClient.js:1341
msgid "Internal error"
msgstr "Vnútorná chyba"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1353
#: ../js/ui/components/telepathyClient.js:1351
#, c-format
msgid "Connection to %s failed"
msgstr "Pripojenie k %s zlyhalo"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1360
msgid "Reconnect"
msgstr "Znovu sa pripojiť"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1361
msgid "Edit account"
msgstr "Upraviť účet"
#: ../js/ui/components/telepathyClient.js:1408
#: ../js/ui/components/telepathyClient.js:1406
msgid "Unknown reason"
msgstr "Neznámy dôvod"
@ -1014,7 +992,7 @@ msgstr[2] "Budete automaticky odhlásený o %d sekundy."
#: ../js/ui/endSessionDialog.js:74
msgid "Logging out of the system."
msgstr "Prebieha odhlásenie zo systému."
msgstr "Odhlasuje sa zo systému."
#: ../js/ui/endSessionDialog.js:76
msgctxt "button"
@ -1142,21 +1120,21 @@ msgstr "Zobraziť zdroj"
msgid "Web Page"
msgstr "Webová stránka"
#: ../js/ui/messageTray.js:1083
#: ../js/ui/messageTray.js:1082
msgid "Open"
msgstr "Otvoriť"
#: ../js/ui/messageTray.js:1090
#: ../js/ui/messageTray.js:1089
msgid "Remove"
msgstr "Odstrániť"
# DK: zvazoval som pouzit "Panel správ"
# neviem co bude vhodnejsie ako preklad "tray"
#: ../js/ui/messageTray.js:1534
#: ../js/ui/messageTray.js:1545
msgid "Message Tray"
msgstr "Lišta správ"
#: ../js/ui/messageTray.js:2557
#: ../js/ui/messageTray.js:2552
msgid "System Information"
msgstr "Informácie o systéme"
@ -1197,7 +1175,7 @@ msgstr "Ukončiť"
msgid "Activities"
msgstr "Aktivity"
#: ../js/ui/panel.js:966
#: ../js/ui/panel.js:965
msgid "Top Bar"
msgstr "Horná lišta"
@ -1219,11 +1197,11 @@ msgstr "Prosím, zadajte príkaz:"
# v ostatnych retazcoch je pouzite %e, tak to bude asi OK
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:80
#: ../js/ui/screenShield.js:79
msgid "%A, %B %d"
msgstr "%A, %e. %B"
#: ../js/ui/screenShield.js:144
#: ../js/ui/screenShield.js:143
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1231,13 +1209,13 @@ msgstr[0] "%d nových správ"
msgstr[1] "%d nová správa"
msgstr[2] "%d nové správy"
#: ../js/ui/screenShield.js:146
#: ../js/ui/screenShield.js:145
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "%d nových oznámení"
msgstr[1] "%d nové oznámenie"
msgstr[2] "%d nové oznámenia"
msgstr[0] "%d nových upozornení"
msgstr[1] "%d nové upozornenie"
msgstr[2] "%d nové upozornenia"
#: ../js/ui/searchDisplay.js:275
msgid "Searching..."
@ -1271,13 +1249,13 @@ msgstr "Heslo"
msgid "Remember Password"
msgstr "Zapamätať heslo"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:171
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:170
msgid "Unlock"
msgstr "Odblokovať"
#: ../js/ui/status/accessibility.js:39
msgid "Accessibility"
msgstr "Zjednodušenie ovládania"
msgstr "Prístupnosť"
#: ../js/ui/status/accessibility.js:44
msgid "Zoom"
@ -1559,7 +1537,7 @@ msgstr "Mobilné"
#: ../js/ui/status/network.js:1628
msgid "VPN Connections"
msgstr "Pripojenia k VPN"
msgstr "VPN pripojenia"
#: ../js/ui/status/network.js:1635
msgid "Network Settings"
@ -1691,7 +1669,7 @@ msgstr "Hlasitosť"
msgid "Microphone"
msgstr "Mikrofón"
#: ../js/ui/unlockDialog.js:178
#: ../js/ui/unlockDialog.js:177
msgid "Log in as another user"
msgstr "Prihlásiť ako iný používateľ"
@ -1719,35 +1697,35 @@ msgstr "Nečinný"
msgid "Unavailable"
msgstr "Nedostupný"
#: ../js/ui/userMenu.js:743
#: ../js/ui/userMenu.js:735
msgid "Notifications"
msgstr "Upozornenia"
#: ../js/ui/userMenu.js:751
#: ../js/ui/userMenu.js:743
msgid "System Settings"
msgstr "Nastavenia systému"
#: ../js/ui/userMenu.js:759
#: ../js/ui/userMenu.js:751
msgid "Switch User"
msgstr "Prepnúť používateľa"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:756
msgid "Log Out"
msgstr "Odhlásiť sa"
#: ../js/ui/userMenu.js:769
#: ../js/ui/userMenu.js:761
msgid "Lock"
msgstr "Uzamknúť"
#: ../js/ui/userMenu.js:784
#: ../js/ui/userMenu.js:776
msgid "Install Updates & Restart"
msgstr "Nainštalovať aktualizácie a reštartovať"
#: ../js/ui/userMenu.js:802
#: ../js/ui/userMenu.js:794
msgid "Your chat status will be set to busy"
msgstr "Váš stav bude nastavený na zaneprázdnený"
#: ../js/ui/userMenu.js:803
#: ../js/ui/userMenu.js:795
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."

188
po/sl.po
View File

@ -8,8 +8,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: 2012-10-16 00:16+0000\n"
"PO-Revision-Date: 2012-10-16 07:53+0100\n"
"POT-Creation-Date: 2012-10-31 16:48+0000\n"
"PO-Revision-Date: 2012-10-31 18:50+0100\n"
"Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
"Language: Slovenian\n"
@ -37,14 +37,6 @@ msgstr "Sistem"
msgid "Show the message tray"
msgstr "Pokaži sporočilno vrstico"
#: ../data/50-gnome-shell-system.xml.in.h:3
msgid "Show all applications"
msgstr "Pokaži vse programe"
#: ../data/50-gnome-shell-system.xml.in.h:4
msgid "Open the application menu"
msgstr "Odpri meni programov"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "Gnome lupina"
@ -111,29 +103,29 @@ msgid "Internally used to store the last session presence status for the user. T
msgstr "Uporabljeno za shranjevanje stanja prisotnosti zadnje seje uporabnika. Vrednost določa števec predmeta GsmPresenceStatus."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Vedno pokaži možnost 'Odjave' v meniju uporabnika."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid "This key overrides the automatic hiding of the 'Log out' menuitem in single-user, single-session situations."
msgstr "Možnost onemogoči samodejno skrivanje možnosti 'Odjava' v meniju uporabnika, kadar je ta seja edina dejavna."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Show the week date in the calendar"
msgstr "Pokaži tedenski datum v koledarju"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Izbrana možnost določa prikaz ISO tedenski datum v koledarju."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "Tipkovna bližnjica, ki odpre meni programov"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "Tipkovna bližnjica, ki odpre meni programov."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Tipkovna bližnjica, ki odpre pogled \"Pokaži programe\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "Tipkovna bližnjica, ki odpre pogled \"Pokaži programe\" v pregledu dejavnosti."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "Tipkovna bližnjica za preklop vidnosti vrstice sporočanja"
@ -238,9 +230,9 @@ msgid "Power"
msgstr "Napajanje"
#: ../js/gdm/powerMenu.js:89
#: ../js/ui/userMenu.js:660
#: ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:775
#: ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Zaustavi"
@ -249,9 +241,9 @@ msgid "Restart"
msgstr "Zaženi znova"
#: ../js/gdm/powerMenu.js:99
#: ../js/ui/userMenu.js:662
#: ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:774
#: ../js/ui/userMenu.js:666
#: ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Izklop"
@ -631,35 +623,35 @@ msgstr "Utišaj"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:950
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Poslano <b>%A</b> ob <b>%X</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:956
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Poslano <b>%A</b>, <b>%d. %Ba</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:961
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Poslano <b>%A</b>, <b>%d. %Ba</b>, %Y"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:990
#, c-format
msgid "%s is now known as %s"
msgstr "%s je sedaj znan kot v %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1090
#, c-format
msgid "Invitation to %s"
msgstr "Povabilo v %s"
@ -667,42 +659,42 @@ msgstr "Povabilo v %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1098
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s vas vabi, da se pridružite v %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "Zavrni"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1101
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "Sprejmi"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1131
#, c-format
msgid "Video call from %s"
msgstr "%s želi vzpostaviti video klic"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1134
#, c-format
msgid "Call from %s"
msgstr "%s kliče"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Zavrni"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "Odgovori"
@ -711,129 +703,129 @@ msgstr "Odgovori"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1173
#, c-format
msgid "%s is sending you %s"
msgstr "%s pošilja %s"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1208
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s želi dovoljenje za pogled dosegljivosti"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "Napaka omrežja"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "Overitev je spodletela"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "Napaka šifriranja"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "Potrdilo ni na voljo"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "Potrdilo ni zaupljivo"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "Potrdilo je preteklo"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "Potrdilo ni potrjeno"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "Neustrezno ime gostitelja potrdila"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "Neustrezen prstni odtis potrdila"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "Potrdilo je samo-podpisano"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "Stanje je nastavljeno na brez povezave"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "Šifriranje ni na voljo."
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "Potrdilo je neveljavno."
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "Povezava je zavrnjena."
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "Povezave ni mogoče vzpostaviti."
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "Povezava je prekinjena."
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "Račun je s strežnikom že povezan"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1334
msgid "Connection has been replaced by a new connection using the same resource"
msgstr "Povezava je zamenjana z novo povezavo, ki uporablja isti vir."
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "Račun na strežniku že obstaja"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "Strežnik je trenutno preveč zaposlen za upravljanje s povezavo."
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "Potrdilo je preklicano"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr "Potrdilo ne uporablja varnega algoritma ali pa uporablja šibko šifriranje."
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1344
msgid "The length of the server certificate, or the depth of the server certificate chain, exceed the limits imposed by the cryptography library"
msgstr "Dolžina potrdila strežnika ali pa globina verige potrdila presega omejitev, ki je določena s šifrirno knjižnico."
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "Notranja napaka"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1356
#, c-format
msgid "Connection to %s failed"
msgstr "Povezava z %s je spodletela"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1365
msgid "Reconnect"
msgstr "Ponovno se poveži"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1366
msgid "Edit account"
msgstr "Uredi račun"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1411
msgid "Unknown reason"
msgstr "Neznan vzrok"
@ -1023,24 +1015,24 @@ msgstr "Poglej vir"
msgid "Web Page"
msgstr "Spletna stran"
#: ../js/ui/messageTray.js:1081
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Odpri"
#: ../js/ui/messageTray.js:1088
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Odstrani"
#: ../js/ui/messageTray.js:1540
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Vrstica sporočanja"
#: ../js/ui/messageTray.js:2547
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Podrobnosti sistema"
#: ../js/ui/notificationDaemon.js:506
#: ../src/shell-app.c:373
#: ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Neznano"
@ -1096,11 +1088,11 @@ msgstr "Vnos ukaza:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %d. %m."
#: ../js/ui/screenShield.js:143
#: ../js/ui/screenShield.js:144
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1109,7 +1101,7 @@ msgstr[1] "%d novo sporočilo"
msgstr[2] "%d novi sporočili"
msgstr[3] "%d nova sporočila"
#: ../js/ui/screenShield.js:145
#: ../js/ui/screenShield.js:146
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
@ -1590,71 +1582,71 @@ msgstr "Mikrofon"
msgid "Log in as another user"
msgstr "Prijava kot drug uporabnik"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Na voljo"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Zaposleno"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Nevidno"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Odsotno"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Nedejavno"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Nedostopno"
#: ../js/ui/userMenu.js:740
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Obvestila"
#: ../js/ui/userMenu.js:748
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Sistemske nastavitve"
#: ../js/ui/userMenu.js:756
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Preklopi uporabnika"
#: ../js/ui/userMenu.js:761
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Odjava"
#: ../js/ui/userMenu.js:766
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Zakleni"
#: ../js/ui/userMenu.js:781
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Namesti posodobitve in ponovno zaženi"
#: ../js/ui/userMenu.js:799
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Stanje vašega klepeta bo nastavljeno na zasedeno"
#: ../js/ui/userMenu.js:800
#: ../js/ui/userMenu.js:804
msgid "Notifications are now disabled, including chat messages. Your online status has been adjusted to let others know that you might not see their messages."
msgstr "Obveščanje je zdaj onemogočeno, vključno s sporočili klepeta. Vaše stanje povezanosti se je prilagodilo, da bodo drugi vedeli, da njihovih sporočil morda ne boste opazili."
#: ../js/ui/viewSelector.js:87
#: ../js/ui/viewSelector.js:85
msgid "Windows"
msgstr "Okna"
#: ../js/ui/viewSelector.js:91
#: ../js/ui/viewSelector.js:89
msgid "Applications"
msgstr "Programi"
#: ../js/ui/viewSelector.js:95
#: ../js/ui/viewSelector.js:93
msgid "Search"
msgstr "Poišči"
@ -1727,7 +1719,7 @@ msgstr "Uporabi poseben način, npr.: \"gdm\" za prijavni zaslon"
msgid "List possible modes"
msgstr "Seznam mogočih načinov"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "Zaganjanje '%s' je spodletelo"

199
po/sr.po
View File

@ -8,8 +8,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: 2012-10-15 23:38+0000\n"
"PO-Revision-Date: 2012-10-16 20:23+0200\n"
"POT-Creation-Date: 2012-11-02 15:25+0000\n"
"PO-Revision-Date: 2012-11-03 09:05+0200\n"
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <gnom@prevod.org>\n"
"Language: sr\n"
@ -36,16 +36,6 @@ msgstr "Систем"
msgid "Show the message tray"
msgstr "Прикажите фиоку порука"
#: ../data/50-gnome-shell-system.xml.in.h:3
#| msgid "Show Applications"
msgid "Show all applications"
msgstr "Прикажи све програме"
#: ../data/50-gnome-shell-system.xml.in.h:4
#| msgid "Keybinding to open the application menu"
msgid "Open the application menu"
msgstr "Отворите изборник програма"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "Гномова шкољка"
@ -144,31 +134,32 @@ msgstr ""
"корисника. Ова вредност је из пописа стања Гсм присуства."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Увек приказује ставку изборника „Одјави ме“ у корисничком изборнику."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
msgstr "Приказује дан у недељи у календару"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Ако је изабрано, приказује ИСО дан у недељи у календару."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Keybinding to open the application menu"
msgstr "Пречица за отварање изборника програма"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "Keybinding to open the application menu."
msgstr "Пречица за отварање изборника програма."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#| msgid "Keybinding to open the application menu"
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Пречица за отварање прегледа „Прикажи програме“"
msgid "Keybinding to open the application menu"
msgstr "Свеза тастера за отварање изборника програма"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#| msgid "Keybinding to open the application menu."
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "Пречица за отварање прегледа „Прикажи програме“ у прегледу активности."
msgid "Keybinding to open the application menu."
msgstr "Свеза тастера за отварање изборника програма."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
@ -301,8 +292,8 @@ msgstr "Прозор за пријављивање"
msgid "Power"
msgstr "Угаси"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:660 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:775
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Обустави"
@ -310,8 +301,8 @@ msgstr "Обустави"
msgid "Restart"
msgstr "Поново покрени"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:662 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:774
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Угаси"
@ -691,35 +682,35 @@ msgstr "Утишај"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:952
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Послато је <b>%A</b> у <b>%X</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:958
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Послато је у <b>%A</b>, <b>%d. %B</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:963
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Послато је у <b>%A</b>, <b>%d %B</b>, %Y."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:992
#, c-format
msgid "%s is now known as %s"
msgstr "%s је сада познат као %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1092
#, c-format
msgid "Invitation to %s"
msgstr "Позивница за %s"
@ -727,42 +718,42 @@ msgstr "Позивница за %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1100
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s вас позива да се придружите %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1102
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
msgid "Decline"
msgstr "Одбиј"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1103
#: ../js/ui/components/telepathyClient.js:1182
#: ../js/ui/components/telepathyClient.js:1245
msgid "Accept"
msgstr "Прихвати"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1133
#, c-format
msgid "Video call from %s"
msgstr "%s вам је упутио видео позив"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1136
#, c-format
msgid "Call from %s"
msgstr "%s вас зове"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1141
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Одбиј"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1143
msgid "Answer"
msgstr "Одговори"
@ -771,109 +762,109 @@ msgstr "Одговори"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1175
#, c-format
msgid "%s is sending you %s"
msgstr "%s вам шаље „%s“"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s тражи одобрење да види када сте на вези"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1302
msgid "Network error"
msgstr "Грешка мреже"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1304
msgid "Authentication failed"
msgstr "Потврђивање идентитета није успело"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1306
msgid "Encryption error"
msgstr "Грешка шифровања"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate not provided"
msgstr "Уверење није прослеђено"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate untrusted"
msgstr "Уверење није поверљиво"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate expired"
msgstr "Уверење је истекло"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate not activated"
msgstr "Уверење није активирано"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate hostname mismatch"
msgstr "Назив домаћина уверења се не поклапа"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate fingerprint mismatch"
msgstr "Отисак уверења се не поклапа"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1320
msgid "Certificate self-signed"
msgstr "Уверење је самопотписано"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1322
msgid "Status is set to offline"
msgstr "Стање је постављено на „неповезан“"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1324
msgid "Encryption is not available"
msgstr "Шифровање није доступно"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1326
msgid "Certificate is invalid"
msgstr "Уверење није исправно"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection has been refused"
msgstr "Веза је одбијена"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection can't be established"
msgstr "Веза не може бити успостављена"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been lost"
msgstr "Веза је изгубљена"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1334
msgid "This account is already connected to the server"
msgstr "Овај налог је већ повезан са сервером"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1336
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Веза је замењена новом везом користећи исти ресурс"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1338
msgid "The account already exists on the server"
msgstr "Овај налог већ постоји на серверу"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1340
msgid "Server is currently too busy to handle the connection"
msgstr "Сервер је тренутно превише заузет да би руковао везом"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate has been revoked"
msgstr "Уверење је опозвано"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Уверење користи несигуран алгоритам шифровања или је криптографски слабо"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -881,26 +872,26 @@ msgstr ""
"Дужина уверења сервера, или дубина ланца уверења сервера, премашује границе "
"које је задала библиотека шифровања"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Internal error"
msgstr "Унутрашња грешка"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
#, c-format
msgid "Connection to %s failed"
msgstr "Повезивање на „%s“ није успело"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1367
msgid "Reconnect"
msgstr "Поново се повежи"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Edit account"
msgstr "Уреди налог"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1413
msgid "Unknown reason"
msgstr "Непознат разлог"
@ -1089,23 +1080,23 @@ msgstr "Прикажи код"
msgid "Web Page"
msgstr "Веб страница"
#: ../js/ui/messageTray.js:1081
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Отвори"
#: ../js/ui/messageTray.js:1088
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Уклони"
#: ../js/ui/messageTray.js:1540
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Фиока порука"
#: ../js/ui/messageTray.js:2547
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Подаци о систему"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Непознат"
@ -1161,11 +1152,11 @@ msgstr "Унесите наредбу:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %d. %B"
#: ../js/ui/screenShield.js:143
#: ../js/ui/screenShield.js:144
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1174,7 +1165,7 @@ msgstr[1] "%d нове поруке"
msgstr[2] "%d нових порука"
msgstr[3] "Једна нова порука"
#: ../js/ui/screenShield.js:145
#: ../js/ui/screenShield.js:146
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
@ -1638,59 +1629,59 @@ msgstr "Микрофон"
msgid "Log in as another user"
msgstr "Пријавите се као други корсник"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Доступан"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Заузет"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Невидљив"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Одсутан"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Мирује"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Недоступан"
#: ../js/ui/userMenu.js:740
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Обавештења"
#: ../js/ui/userMenu.js:748
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Подешавања система"
#: ../js/ui/userMenu.js:756
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Промени корисника"
#: ../js/ui/userMenu.js:761
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Одјави ме"
#: ../js/ui/userMenu.js:766
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Закључај"
#: ../js/ui/userMenu.js:781
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Инсталирај ажурирања и поново покрени"
#: ../js/ui/userMenu.js:799
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Ваше стање ћаскања ће бити постављено на заузето"
#: ../js/ui/userMenu.js:800
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1699,15 +1690,15 @@ msgstr ""
"мрежи је подешено тако да ће остали знати да ви не можете видети њихове "
"поруке."
#: ../js/ui/viewSelector.js:87
#: ../js/ui/viewSelector.js:85
msgid "Windows"
msgstr "Прозори"
#: ../js/ui/viewSelector.js:91
#: ../js/ui/viewSelector.js:89
msgid "Applications"
msgstr "Програми"
#: ../js/ui/viewSelector.js:95
#: ../js/ui/viewSelector.js:93
msgid "Search"
msgstr "Тражи"
@ -1780,7 +1771,7 @@ msgstr "Користи нарочит режим, нпр. „gdm“ за екр
msgid "List possible modes"
msgstr "Исписује могуће режиме"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "Не могу да покренем „%s“"

View File

@ -8,8 +8,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: 2012-10-15 23:38+0000\n"
"PO-Revision-Date: 2012-10-16 20:23+0200\n"
"POT-Creation-Date: 2012-11-02 15:25+0000\n"
"PO-Revision-Date: 2012-11-03 09:05+0200\n"
"Last-Translator: Miroslav Nikolić <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <gnom@prevod.org>\n"
"Language: sr\n"
@ -36,16 +36,6 @@ msgstr "Sistem"
msgid "Show the message tray"
msgstr "Prikažite fioku poruka"
#: ../data/50-gnome-shell-system.xml.in.h:3
#| msgid "Show Applications"
msgid "Show all applications"
msgstr "Prikaži sve programe"
#: ../data/50-gnome-shell-system.xml.in.h:4
#| msgid "Keybinding to open the application menu"
msgid "Open the application menu"
msgstr "Otvorite izbornik programa"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "Gnomova školjka"
@ -144,31 +134,32 @@ msgstr ""
"korisnika. Ova vrednost je iz popisa stanja Gsm prisustva."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "Uvek prikazuje stavku izbornika „Odjavi me“ u korisničkom izborniku."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
msgid ""
"This key overrides the automatic hiding of the 'Log out' menuitem in single-"
"user, single-session situations."
msgstr ""
"Ovaj ključ prepisuje samostalno skrivanje stavke izbornika „Odjavi me“ u "
"slučaju jednog korisnika sa jednom sesijom."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Show the week date in the calendar"
msgstr "Prikazuje dan u nedelji u kalendaru"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "Ako je izabrano, prikazuje ISO dan u nedelji u kalendaru."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
msgid "Keybinding to open the application menu"
msgstr "Prečica za otvaranje izbornika programa"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "Keybinding to open the application menu."
msgstr "Prečica za otvaranje izbornika programa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#| msgid "Keybinding to open the application menu"
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Prečica za otvaranje pregleda „Prikaži programe“"
msgid "Keybinding to open the application menu"
msgstr "Sveza tastera za otvaranje izbornika programa"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#| msgid "Keybinding to open the application menu."
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "Prečica za otvaranje pregleda „Prikaži programe“ u pregledu aktivnosti."
msgid "Keybinding to open the application menu."
msgstr "Sveza tastera za otvaranje izbornika programa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
@ -301,8 +292,8 @@ msgstr "Prozor za prijavljivanje"
msgid "Power"
msgstr "Ugasi"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:660 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:775
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "Obustavi"
@ -310,8 +301,8 @@ msgstr "Obustavi"
msgid "Restart"
msgstr "Ponovo pokreni"
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:662 ../js/ui/userMenu.js:664
#: ../js/ui/userMenu.js:774
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "Ugasi"
@ -691,35 +682,35 @@ msgstr "Utišaj"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:952
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "Poslato je <b>%A</b> u <b>%X</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:958
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "Poslato je u <b>%A</b>, <b>%d. %B</b>"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:963
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "Poslato je u <b>%A</b>, <b>%d %B</b>, %Y."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:992
#, c-format
msgid "%s is now known as %s"
msgstr "%s je sada poznat kao %s"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1092
#, c-format
msgid "Invitation to %s"
msgstr "Pozivnica za %s"
@ -727,42 +718,42 @@ msgstr "Pozivnica za %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1100
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s vas poziva da se pridružite %s"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1102
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
msgid "Decline"
msgstr "Odbij"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1103
#: ../js/ui/components/telepathyClient.js:1182
#: ../js/ui/components/telepathyClient.js:1245
msgid "Accept"
msgstr "Prihvati"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1133
#, c-format
msgid "Video call from %s"
msgstr "%s vam je uputio video poziv"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1136
#, c-format
msgid "Call from %s"
msgstr "%s vas zove"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1141
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "Odbij"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1143
msgid "Answer"
msgstr "Odgovori"
@ -771,109 +762,109 @@ msgstr "Odgovori"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1175
#, c-format
msgid "%s is sending you %s"
msgstr "%s vam šalje „%s“"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "%s traži odobrenje da vidi kada ste na vezi"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1302
msgid "Network error"
msgstr "Greška mreže"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1304
msgid "Authentication failed"
msgstr "Potvrđivanje identiteta nije uspelo"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1306
msgid "Encryption error"
msgstr "Greška šifrovanja"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate not provided"
msgstr "Uverenje nije prosleđeno"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate untrusted"
msgstr "Uverenje nije poverljivo"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate expired"
msgstr "Uverenje je isteklo"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate not activated"
msgstr "Uverenje nije aktivirano"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate hostname mismatch"
msgstr "Naziv domaćina uverenja se ne poklapa"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate fingerprint mismatch"
msgstr "Otisak uverenja se ne poklapa"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1320
msgid "Certificate self-signed"
msgstr "Uverenje je samopotpisano"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1322
msgid "Status is set to offline"
msgstr "Stanje je postavljeno na „nepovezan“"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1324
msgid "Encryption is not available"
msgstr "Šifrovanje nije dostupno"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1326
msgid "Certificate is invalid"
msgstr "Uverenje nije ispravno"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection has been refused"
msgstr "Veza je odbijena"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection can't be established"
msgstr "Veza ne može biti uspostavljena"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been lost"
msgstr "Veza je izgubljena"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1334
msgid "This account is already connected to the server"
msgstr "Ovaj nalog je već povezan sa serverom"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1336
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Veza je zamenjena novom vezom koristeći isti resurs"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1338
msgid "The account already exists on the server"
msgstr "Ovaj nalog već postoji na serveru"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1340
msgid "Server is currently too busy to handle the connection"
msgstr "Server je trenutno previše zauzet da bi rukovao vezom"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate has been revoked"
msgstr "Uverenje je opozvano"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"Uverenje koristi nesiguran algoritam šifrovanja ili je kriptografski slabo"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
msgid ""
"The length of the server certificate, or the depth of the server certificate "
"chain, exceed the limits imposed by the cryptography library"
@ -881,26 +872,26 @@ msgstr ""
"Dužina uverenja servera, ili dubina lanca uverenja servera, premašuje granice "
"koje je zadala biblioteka šifrovanja"
#: ../js/ui/components/telepathyClient.js:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Internal error"
msgstr "Unutrašnja greška"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
#, c-format
msgid "Connection to %s failed"
msgstr "Povezivanje na „%s“ nije uspelo"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1367
msgid "Reconnect"
msgstr "Ponovo se poveži"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Edit account"
msgstr "Uredi nalog"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1413
msgid "Unknown reason"
msgstr "Nepoznat razlog"
@ -1089,23 +1080,23 @@ msgstr "Prikaži kod"
msgid "Web Page"
msgstr "Veb stranica"
#: ../js/ui/messageTray.js:1081
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "Otvori"
#: ../js/ui/messageTray.js:1088
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "Ukloni"
#: ../js/ui/messageTray.js:1540
#: ../js/ui/messageTray.js:1543
msgid "Message Tray"
msgstr "Fioka poruka"
#: ../js/ui/messageTray.js:2547
#: ../js/ui/messageTray.js:2549
msgid "System Information"
msgstr "Podaci o sistemu"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "Nepoznat"
@ -1161,11 +1152,11 @@ msgstr "Unesite naredbu:"
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:80
msgid "%A, %B %d"
msgstr "%A, %d. %B"
#: ../js/ui/screenShield.js:143
#: ../js/ui/screenShield.js:144
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
@ -1174,7 +1165,7 @@ msgstr[1] "%d nove poruke"
msgstr[2] "%d novih poruka"
msgstr[3] "Jedna nova poruka"
#: ../js/ui/screenShield.js:145
#: ../js/ui/screenShield.js:146
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
@ -1638,59 +1629,59 @@ msgstr "Mikrofon"
msgid "Log in as another user"
msgstr "Prijavite se kao drugi korsnik"
#: ../js/ui/userMenu.js:180
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "Dostupan"
#: ../js/ui/userMenu.js:183
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "Zauzet"
#: ../js/ui/userMenu.js:186
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "Nevidljiv"
#: ../js/ui/userMenu.js:189
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "Odsutan"
#: ../js/ui/userMenu.js:192
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "Miruje"
#: ../js/ui/userMenu.js:195
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "Nedostupan"
#: ../js/ui/userMenu.js:740
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "Obaveštenja"
#: ../js/ui/userMenu.js:748
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "Podešavanja sistema"
#: ../js/ui/userMenu.js:756
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "Promeni korisnika"
#: ../js/ui/userMenu.js:761
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "Odjavi me"
#: ../js/ui/userMenu.js:766
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "Zaključaj"
#: ../js/ui/userMenu.js:781
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "Instaliraj ažuriranja i ponovo pokreni"
#: ../js/ui/userMenu.js:799
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "Vaše stanje ćaskanja će biti postavljeno na zauzeto"
#: ../js/ui/userMenu.js:800
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1699,15 +1690,15 @@ msgstr ""
"mreži je podešeno tako da će ostali znati da vi ne možete videti njihove "
"poruke."
#: ../js/ui/viewSelector.js:87
#: ../js/ui/viewSelector.js:85
msgid "Windows"
msgstr "Prozori"
#: ../js/ui/viewSelector.js:91
#: ../js/ui/viewSelector.js:89
msgid "Applications"
msgstr "Programi"
#: ../js/ui/viewSelector.js:95
#: ../js/ui/viewSelector.js:93
msgid "Search"
msgstr "Traži"
@ -1780,7 +1771,7 @@ msgstr "Koristi naročit režim, npr. „gdm“ za ekran prijavljivanja"
msgid "List possible modes"
msgstr "Ispisuje moguće režime"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "Ne mogu da pokrenem „%s“"

550
po/ta.po

File diff suppressed because it is too large Load Diff

403
po/te.po
View File

@ -2,26 +2,27 @@
# Copyright (C) 2011, 2012 Swecha telugu translations team <localization@swecha.net>
# This file is distributed under the same license as the gnome-shell package.
#
#
# Krishnababu Krothapalli <kkrothap@redhat.com>, 2011, 2012.
# Hari Krishna <hari@swecha.net>, 2011.
# Sasi Bhushan Boddepalli <sasi@swecha.net>, 2012.
# Praveen Illa <mail2ipn@gmail.com>, 2011, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell gnome-3-0\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2012-09-19 10:13+0000\n"
"PO-Revision-Date: 2012-09-19 16:21+0530\n"
"Last-Translator: Praveen Illa <mail2ipn@gmail.com>\n"
"Language-Team: Telugu <indlinux-telugu@lists.sourceforge.net>\n"
"POT-Creation-Date: 2012-11-28 11:02+0000\n"
"PO-Revision-Date: 2012-11-28 16:40+0530\n"
"Last-Translator: Krishnababu Krothapalli <kkrothap@redhat.com>\n"
"Language-Team: Telugu <Fedora-trans-te@redhat.com>\n"
"Language: te\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
"X-Generator: Gtranslator 2.91.5\n"
"X-DamnedLies-Scope: partial\n"
"X-Generator: Lokalize 1.5\n"
#: ../data/50-gnome-shell-screenshot.xml.in.h:1
msgid "Screenshots"
@ -58,14 +59,16 @@ msgstr "గ్నోమ్ షెల్ పొడిగింతలను స్
#: ../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 నుండి చేతనపరుచు"
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 డైలాగుని వాడి అంతర్గత దోషశుద్ది మరియు సాధనాలను పర్యవేక్షించుటకు సౌలభ్యతను అనుమతిస్తుంది."
"Alt-F2 డైలాగుని వాడి అంతర్గత దోషశుద్ది మరియు సాధనాలను పర్యవేక్షించుటకు "
"సౌలభ్యతను అనుమతిస్తుంది."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
msgid "Uuids of extensions to enable"
@ -78,8 +81,10 @@ msgid ""
"list. You can also manipulate this list with the EnableExtension and "
"DisableExtension DBus methods on org.gnome.Shell."
msgstr ""
"గ్నోమ్ షెల్ పొడిగింతలు ఒక uuid లక్షణాన్ని కలిగివున్నాయి; ఏ పొడిగింతలు లోడుచేయదగినవి కాదో ఈ కీ జాబితాచేయును. "
"ఏ పొడిగింత లోడవ్వాలో అది ఈ జాబితా నందు ఉండాలి. అంతేకాకుండా మీరు ఈ జాబితాను పాడిగింతను చేతనపరుచు లేదా "
"గ్నోమ్ షెల్ పొడిగింతలు ఒక uuid లక్షణాన్ని కలిగివున్నాయి; ఏ పొడిగింతలు "
"లోడుచేయదగినవి కాదో ఈ కీ జాబితాచేయును. "
"ఏ పొడిగింత లోడవ్వాలో అది ఈ జాబితా నందు ఉండాలి. అంతేకాకుండా మీరు ఈ జాబితాను "
"పాడిగింతను చేతనపరుచు లేదా "
"పొడిగింతను అచేతనపరుచు డిబస్ పద్ధతులలో గ్నోమ్ షెల్ నందు మార్చవచ్చును."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
@ -93,9 +98,12 @@ msgid ""
"want to disable this for privacy reasons. Please note that doing so won't "
"remove already saved data."
msgstr ""
"ఎక్కువగా వాడిన వాటిని సమర్పించడానికి షెల్ సాధారణంగా క్రియాశీల అనువర్తనాలను పర్యవేక్షిస్తుంది (ఉదా. "
"ప్రారంభకాలలో). అపుడు ఈ డేటా గోప్యంగా ఉంచబడుతుంది, గోప్యతా కారణాల వలన మీరు దీనిని "
"అచేతనపరచాలనుకోవచ్చు. దయచేసి గుర్తుంచుకోండి ఇలా చేయడం వలన ఇదివరకే దాచబడిన డేటా తీసివేయబడదు."
"ఎక్కువగా వాడిన వాటిని సమర్పించడానికి షెల్ సాధారణంగా క్రియాశీల అనువర్తనాలను "
"పర్యవేక్షిస్తుంది (ఉదా. "
"ప్రారంభకాలలో). అపుడు ఈ డేటా గోప్యంగా ఉంచబడుతుంది, గోప్యతా కారణాల వలన మీరు "
"దీనిని "
"అచేతనపరచాలనుకోవచ్చు. దయచేసి గుర్తుంచుకోండి ఇలా చేయడం వలన ఇదివరకే దాచబడిన డేటా "
"తీసివేయబడదు."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
msgid "List of desktop file IDs for favorite applications"
@ -105,7 +113,8 @@ msgstr "ప్రియమైన అనువర్తనాల కోసం డ
msgid ""
"The applications corresponding to these identifiers will be displayed in the "
"favorites area."
msgstr "ఈ గుర్తింపకాలకు అనుగుణమైన అనువర్తనాలు ప్రియమైన ప్రదేశములో ప్రదర్శించబడతాయి."
msgstr ""
"ఈ గుర్తింపకాలకు అనుగుణమైన అనువర్తనాలు ప్రియమైన ప్రదేశములో ప్రదర్శించబడతాయి."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
msgid "History for command (Alt-F2) dialog"
@ -120,7 +129,8 @@ msgid ""
"Internally used to store the last IM presence explicitly set by the user. "
"The value here is from the TpConnectionPresenceType enumeration."
msgstr ""
"అంతర్గతంగా స్పష్టంగా వినియోగదారుని ద్వారా సెట్ చివరి IM ఉనికిని నిల్వ చేయడానికి ఉపయోగించారు. ఇక్కడ విలువ "
"అంతర్గతంగా స్పష్టంగా వినియోగదారుని ద్వారా సెట్ చివరి IM ఉనికిని నిల్వ "
"చేయడానికి ఉపయోగించారు. ఇక్కడ విలువ "
"Tp కనెక్షన్ ఉనికి పద్ధతి వయనము నుండి ఉంది."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
@ -128,66 +138,80 @@ msgid ""
"Internally used to store the last session presence status for the user. The "
"value here is from the GsmPresenceStatus enumeration."
msgstr ""
"అంతర్గతంగా యూజర్ కోసం చివరి సెషన్ ఉనికిని స్థితి నిల్వ చేయడానికి ఉపయోగించారు. ఇక్కడ విలువ GSM ఉనికి స్థితి "
"అంతర్గతంగా యూజర్ కోసం చివరి సెషన్ ఉనికిని స్థితి నిల్వ చేయడానికి ఉపయోగించారు. "
"ఇక్కడ విలువ GSM ఉనికి స్థితి "
"వయనము నుండి ఉంది."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
msgid "Always show the 'Log out' menuitem in the user menu."
msgstr "వాడుకరి మెనూ నందు యెల్లప్పుడూ 'లాగ్ అవుట్' మెనూఅంశమును చూపము."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
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:15
msgid "Show the week date in the calendar"
msgstr "క్యాలెండరులో వారపు తేదీని చూపించు"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
msgid "If true, display the ISO week date in the calendar."
msgstr "ఒకవేళ నిజమైతే, క్యాలెండరులో ISO వారము తేదీని ప్రదర్శిస్తుంది."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
msgid "Keybinding to open the application menu"
msgstr "అనువర్తనం మెనూ తెరవడానికి కీ బైండింగ్ "
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Keybinding to open the application menu."
msgstr "అనువర్తనం మెనూ తెరవడానికి కీ బైండింగ్ "
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "Keybinding to toggle the visibility of the message tray"
msgstr "సందేశ పళ్ళెం యొక్క దృగ్గోచరతను మార్చుటకు అడ్డదారి"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to toggle the visibility of the message tray."
msgstr "సందేశ పళ్ళెం యొక్క దృగ్గోచరతను మార్చుటకు అడ్డదారి"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to toggle the screen recorder"
msgstr "తెర రికార్డరుని మార్చుటకు అడ్డదారి"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to start/stop the builtin screen recorder."
msgstr "అప్రమేయ తెర రికార్డరుని ప్రారంభించుటకు/ఆపడానికి అడ్డదారి."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid "Which keyboard to use"
msgstr "ఏ కీబోర్డ్ ఉపయోగించాలి"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "The type of keyboard to use."
msgstr "ఉపయోగించుటకు కీబోర్డ్ రకము."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Framerate used for recording screencasts."
msgstr "ఫ్రేమ్‌రేట్ అను దానిని తెరప్రసారాలను రికార్డు చేయుటకు వాడతారు."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
msgstr ""
"ఫలితముగా వచ్చు తెర ప్రసారము యొక్క ఫ్రేమ్ రేటు గ్నోమ్ షెల్ తెరప్రసార రికార్డర్ ఫ్రేమ్ పర్ సెకనులలో "
"ఫలితముగా వచ్చు తెర ప్రసారము యొక్క ఫ్రేమ్ రేటు గ్నోమ్ షెల్ తెరప్రసార రికార్డర్ "
"ఫ్రేమ్ పర్ సెకనులలో "
"రికార్డుచేయబడుతుంది."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "తెరప్రసారాన్ని ఎన్‌కోడ్ చేయడానికి జి స్ట్రీమర్ పైప్‌లైన్ వాడబడుతుంది"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
@ -201,28 +225,38 @@ msgid ""
"threads=%T ! queue ! webmmux' and records to WEBM using the VP8 codec. %T is "
"used as a placeholder for a guess at the optimal thread count on the system."
msgstr ""
"రికార్డింగులను ఎన్‌కోడ్ చేయడానికి జిస్ట్రీమర్ పైప్‌లైన్‌ను అమర్చును. ఇది gst-launch కొరకు వ్యాక్యనిర్మాణాన్ని "
"అనుసరిస్తుంది. వీడియో ఎక్కడైతే రికార్డు అవుతుందో అక్కడ ఒక అనుసంధానం కాని సింక్ ప్యాడ్‌ని కలిగివుండాలి. "
"ఇది సాధారణంగా ఒక అనుసంధానము కాని మూలము ప్యాడ్ అయివుంటుంది; ఈ ప్యాడ్ నుండి వచ్చు అవుట్‌పుట్ "
"అవుట్‌పుట్ దస్త్రంలోనికి వ్రాయబడుతుంది. ఏదిఏమైనప్పటికీ పైప్ లైన్ కూడా దాని అవుట్‌పుట్ గురించి భద్రత "
"వహిస్తుంది - ఇది అవుట్‌పుట్‌ని ఐస్‌కాస్ట్ సేవకానికి shout2send లేదా ఇటువంటి వాటి ద్వారా పంపుటకు "
"వాడబడుతుంది. అమర్చకపోయినా లేక ఒక ఖాళీ విలువకి అమర్చినా, అప్రమేయ పైప్‌లైన్ వాడబడుతుంది, ఇది ప్రస్తుతం "
"రికార్డింగులను ఎన్‌కోడ్ చేయడానికి జిస్ట్రీమర్ పైప్‌లైన్‌ను అమర్చును. ఇది "
"gst-launch కొరకు వ్యాక్యనిర్మాణాన్ని "
"అనుసరిస్తుంది. వీడియో ఎక్కడైతే రికార్డు అవుతుందో అక్కడ ఒక అనుసంధానం కాని "
"సింక్ ప్యాడ్‌ని కలిగివుండాలి. "
"ఇది సాధారణంగా ఒక అనుసంధానము కాని మూలము ప్యాడ్ అయివుంటుంది; ఈ ప్యాడ్ నుండి "
"వచ్చు అవుట్‌పుట్ "
"అవుట్‌పుట్ దస్త్రంలోనికి వ్రాయబడుతుంది. ఏదిఏమైనప్పటికీ పైప్ లైన్ కూడా దాని "
"అవుట్‌పుట్ గురించి భద్రత "
"వహిస్తుంది - ఇది అవుట్‌పుట్‌ని ఐస్‌కాస్ట్ సేవకానికి shout2send లేదా ఇటువంటి "
"వాటి ద్వారా పంపుటకు "
"వాడబడుతుంది. అమర్చకపోయినా లేక ఒక ఖాళీ విలువకి అమర్చినా, అప్రమేయ పైప్‌లైన్ "
"వాడబడుతుంది, ఇది ప్రస్తుతం "
"'vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 "
"threads=%T ! queue ! webmmux' మరియు VP8 కొడెక్ వాడి WEBMకి రికార్డుచేస్తుంది. %T అనేది "
"వ్యవస్థ పై ఒక ప్లేస్‌హోల్డర్ వలె గ్వెస్ కొరకు ఆప్టిమల్ త్రెడ్ కౌంట్ వాడబడుతుంది."
"threads=%T ! queue ! webmmux' మరియు VP8 కొడెక్ వాడి WEBMకి రికార్డుచేస్తుంది. "
"%T అనేది "
"వ్యవస్థ పై ఒక ప్లేస్‌హోల్డర్ వలె గ్వెస్ కొరకు ఆప్టిమల్ త్రెడ్ కౌంట్ "
"వాడబడుతుంది."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid "File extension used for storing the screencast"
msgstr "దస్త్ర పొడిగింతను తెరప్రసారాన్ని భద్రపరుచుటకు వాడతారు"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid ""
"The filename for recorded screencasts will be a unique filename based on the "
"current date, and use this extension. It should be changed when recording to "
"a different container format."
msgstr ""
"రికార్డుచేయబడిన తెరప్రసారాలకు దస్త్రము పేరు ప్రస్తుత తేదీ పై ఆధారపడి దస్త్రం పేరు ఒకే విధముగా ఉంటుంది, "
"మరియు ఈ పొడిగింతను వాడండి. ఇది వేరే ఇతర ఆకృతిలో రికార్డు చేస్తున్నపుడు ఇది మార్చబడాలి."
"రికార్డుచేయబడిన తెరప్రసారాలకు దస్త్రము పేరు ప్రస్తుత తేదీ పై ఆధారపడి దస్త్రం "
"పేరు ఒకే విధముగా ఉంటుంది, "
"మరియు ఈ పొడిగింతను వాడండి. ఇది వేరే ఇతర ఆకృతిలో రికార్డు చేస్తున్నపుడు ఇది "
"మార్చబడాలి."
#: ../js/extensionPrefs/main.js:124
#, c-format
@ -237,15 +271,11 @@ msgstr "పొడిగింత"
msgid "Select an extension to configure using the combobox above."
msgstr "పైన ఉన్న కోంబోపెట్టెను వాడి స్వరూపించుటకు అనువర్తనాన్ని ఎంచుకోండి."
#: ../js/gdm/loginDialog.js:526
#: ../js/gdm/loginDialog.js:529
msgid "Session..."
msgstr "చర్యాకాలం..."
#: ../js/gdm/loginDialog.js:653
msgid "Configuration problem: Could not connect to GDM"
msgstr "స్వరూపణం సమస్య: జీడిఎంకు అనుసంధానం కాలేకపోతోంది"
#: ../js/gdm/loginDialog.js:679
#: ../js/gdm/loginDialog.js:680
msgctxt "title"
msgid "Sign In"
msgstr "ప్రవేశించండి"
@ -253,51 +283,64 @@ msgstr "ప్రవేశించండి"
#. 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.
#: ../js/gdm/loginDialog.js:746
#: ../js/gdm/loginDialog.js:740
msgid "Not listed?"
msgstr "జాబితా చేయలేదా?"
#: ../js/gdm/loginDialog.js:899 ../js/ui/components/networkAgent.js:137
#: ../js/gdm/loginDialog.js:898 ../js/ui/components/networkAgent.js:137
#: ../js/ui/components/polkitAgent.js:162 ../js/ui/endSessionDialog.js:373
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:396
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:172
#: ../js/ui/status/bluetooth.js:427 ../js/ui/unlockDialog.js:168
msgid "Cancel"
msgstr "రద్దుచేయి"
#: ../js/gdm/loginDialog.js:904
#: ../js/gdm/loginDialog.js:903
msgctxt "button"
msgid "Sign In"
msgstr "ప్రవేశించండి"
#: ../js/gdm/loginDialog.js:1243
#. 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:962 ../js/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "వాడుకరిపేరు: "
#: ../js/gdm/loginDialog.js:1269
msgid "Login Window"
msgstr "ప్రవేశ కిటికీ"
#: ../js/gdm/powerMenu.js:88 ../js/ui/userMenu.js:658 ../js/ui/userMenu.js:662
#: ../js/ui/userMenu.js:773
#. Translators: accessible name of the power menu in the login screen
#: ../js/gdm/powerMenu.js:35
msgid "Power"
msgstr "విద్యుత్"
#: ../js/gdm/powerMenu.js:89 ../js/ui/userMenu.js:664 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:779
msgid "Suspend"
msgstr "తాత్కాలికంగా నిలిపివేయి"
#: ../js/gdm/powerMenu.js:93
#: ../js/gdm/powerMenu.js:94
msgid "Restart"
msgstr "పునఃప్రారంభించు"
#: ../js/gdm/powerMenu.js:98 ../js/ui/userMenu.js:660 ../js/ui/userMenu.js:662
#: ../js/ui/userMenu.js:772
#: ../js/gdm/powerMenu.js:99 ../js/ui/userMenu.js:666 ../js/ui/userMenu.js:668
#: ../js/ui/userMenu.js:778
msgid "Power Off"
msgstr "విద్యుత్ ఆపు"
#: ../js/gdm/util.js:148
#: ../js/gdm/util.js:152
msgid "Authentication error"
msgstr "ధృవీకరణ దోషం"
#. Translators: this message is shown below the password entry field
#. to indicate the user can swipe their finger instead
#: ../js/gdm/util.js:265
#: ../js/gdm/util.js:269
msgid "(or swipe finger)"
msgstr "(లేదా వ్రేలు స్వైప్‌చేయి)"
#: ../js/gdm/util.js:290
#: ../js/gdm/util.js:294
#, c-format
msgid "(e.g., user or %s)"
msgstr "(ఉదా., వాడుకరి లేదా %s)"
@ -334,7 +377,7 @@ msgstr "అమరికలు"
msgid "New Window"
msgstr "కొత్త కిటికీ"
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:271
#: ../js/ui/appDisplay.js:678 ../js/ui/dash.js:290
msgid "Remove from Favorites"
msgstr "ఇష్టాంశాల నుండి తొలగించు"
@ -498,16 +541,16 @@ msgstr "ఈ వారం"
msgid "Next week"
msgstr "తరువాత వారం"
#: ../js/ui/components/autorunManager.js:278
#: ../js/ui/components/autorunManager.js:297
msgid "Removable Devices"
msgstr "తీసివేయదగు పరికరాలు"
#: ../js/ui/components/autorunManager.js:575
#: ../js/ui/components/autorunManager.js:594
#, c-format
msgid "Open with %s"
msgstr "%sతో తెరువు"
#: ../js/ui/components/autorunManager.js:601
#: ../js/ui/components/autorunManager.js:620
msgid "Eject"
msgstr "బయటకునెట్టు"
@ -537,14 +580,6 @@ msgstr "సంకేతపదం:"
msgid "Key: "
msgstr "కీ: "
#. 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/ui/components/networkAgent.js:260
#: ../js/ui/components/networkAgent.js:278
msgid "Username: "
msgstr "వాడుకరిపేరు: "
#: ../js/ui/components/networkAgent.js:266
msgid "Identity: "
msgstr "గుర్తింపు: "
@ -566,7 +601,9 @@ msgstr "వైర్‌లెస్ నెట్‌వర్క్ చేత ధ
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"'%s'."
msgstr "వైర్‌లెస్ నెట్‌వర్కు '%s' యాక్సెస్ చేయుటకు సంకేతపదాలు లేదా ఎన్క్రిప్షన్ కీలు అవసరం."
msgstr ""
"వైర్‌లెస్ నెట్‌వర్కు '%s' యాక్సెస్ చేయుటకు సంకేతపదాలు లేదా ఎన్క్రిప్షన్ కీలు "
"అవసరం."
#: ../js/ui/components/networkAgent.js:314
msgid "Wired 802.1X authentication"
@ -662,35 +699,35 @@ msgstr "నిశబ్దం"
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:952
#, no-c-format
msgid "Sent at <b>%X</b> on <b>%A</b>"
msgstr "<b>%X</b> వద్ద <b>%A</b> పైన పంపబడెను"
#. Translators: this is a time format in the style of "Wednesday, May 25",
#. shown when you get a chat message in the same year.
#: ../js/ui/components/telepathyClient.js:954
#: ../js/ui/components/telepathyClient.js:958
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
msgstr "<b>%A</b>, <b>%B %d</b> పై అమర్చు"
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
#. shown when you get a chat message in a different year.
#: ../js/ui/components/telepathyClient.js:959
#: ../js/ui/components/telepathyClient.js:963
#, no-c-format
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
msgstr "<b>%A</b>, <b>%B %d</b>, %Y పై అమర్చు"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:988
#: ../js/ui/components/telepathyClient.js:992
#, c-format
msgid "%s is now known as %s"
msgstr "%s ఇప్పుడు %s గా తెలుసు"
#. translators: argument is a room name like
#. * room@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1088
#: ../js/ui/components/telepathyClient.js:1092
#, c-format
msgid "Invitation to %s"
msgstr "%sకు ఆహ్వానం"
@ -698,42 +735,42 @@ msgstr "%sకు ఆహ్వానం"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example.
#: ../js/ui/components/telepathyClient.js:1096
#: ../js/ui/components/telepathyClient.js:1100
#, c-format
msgid "%s is inviting you to join %s"
msgstr "%s మిమ్ములను %s పై చేరుటకు ఆహ్వానిస్తోంది"
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1177
#: ../js/ui/components/telepathyClient.js:1240
#: ../js/ui/components/telepathyClient.js:1102
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
msgid "Decline"
msgstr "తిరస్కారం"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1178
#: ../js/ui/components/telepathyClient.js:1241
#: ../js/ui/components/telepathyClient.js:1103
#: ../js/ui/components/telepathyClient.js:1182
#: ../js/ui/components/telepathyClient.js:1245
msgid "Accept"
msgstr "ఆమోదించు"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1129
#: ../js/ui/components/telepathyClient.js:1133
#, c-format
msgid "Video call from %s"
msgstr "%s నుండి వీడియో కాల్"
#. translators: argument is a contact name like Alice for example.
#: ../js/ui/components/telepathyClient.js:1132
#: ../js/ui/components/telepathyClient.js:1136
#, c-format
msgid "Call from %s"
msgstr "%s నుండి కాల్"
#: ../js/ui/components/telepathyClient.js:1137
#: ../js/ui/components/telepathyClient.js:1141
#: ../js/ui/status/bluetooth.js:346
msgid "Reject"
msgstr "తిరస్కరించు"
#. translators: this is a button label (verb), not a noun
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1143
msgid "Answer"
msgstr "సమాధానం"
@ -742,140 +779,142 @@ msgstr "సమాధానం"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#.
#: ../js/ui/components/telepathyClient.js:1171
#: ../js/ui/components/telepathyClient.js:1175
#, c-format
msgid "%s is sending you %s"
msgstr "%s మీకు %s పంపుచున్నది"
#. To translators: The parameter is the contact's alias
#: ../js/ui/components/telepathyClient.js:1206
#: ../js/ui/components/telepathyClient.js:1210
#, c-format
msgid "%s would like permission to see when you are online"
msgstr "మీరు ఆన్‌లైన్‌లో వున్నప్పుడు చూడుటకు %s అనుమతి కోరుతున్నారు"
#: ../js/ui/components/telepathyClient.js:1298
#: ../js/ui/components/telepathyClient.js:1302
msgid "Network error"
msgstr "నెట్‍‌వర్క్ దోషం"
#: ../js/ui/components/telepathyClient.js:1300
#: ../js/ui/components/telepathyClient.js:1304
msgid "Authentication failed"
msgstr "ధృవీకరణ వైఫల్యం"
#: ../js/ui/components/telepathyClient.js:1302
#: ../js/ui/components/telepathyClient.js:1306
msgid "Encryption error"
msgstr "ఎన్క్రిప్షన్ దోషం"
#: ../js/ui/components/telepathyClient.js:1304
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate not provided"
msgstr "ధృవీకరణపత్రం అందించబడలేదు"
#: ../js/ui/components/telepathyClient.js:1306
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate untrusted"
msgstr "ధృవీకరణపత్రం నమ్మలేనిది"
#: ../js/ui/components/telepathyClient.js:1308
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate expired"
msgstr "ధృవీకరణపత్రం గడువుతీరెను"
#: ../js/ui/components/telepathyClient.js:1310
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate not activated"
msgstr "ధృవీకరణపత్రం క్రియాశీలపరచబడిలేదు"
#: ../js/ui/components/telepathyClient.js:1312
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate hostname mismatch"
msgstr "ధృవీకరణపత్రం హోస్టుపేరు సరిపోలలేదు"
#: ../js/ui/components/telepathyClient.js:1314
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate fingerprint mismatch"
msgstr "ధృవీకరణపత్రం వ్రేలిముద్ర సరిపోలలేదు"
#: ../js/ui/components/telepathyClient.js:1316
#: ../js/ui/components/telepathyClient.js:1320
msgid "Certificate self-signed"
msgstr "ధృవీకరణపత్రం స్వతహాగా-సంతకంచేయబడెను"
#: ../js/ui/components/telepathyClient.js:1318
#: ../js/ui/components/telepathyClient.js:1322
msgid "Status is set to offline"
msgstr "స్థితి ఆఫ్‌లైన్‌కు అమర్చబడెను"
#: ../js/ui/components/telepathyClient.js:1320
#: ../js/ui/components/telepathyClient.js:1324
msgid "Encryption is not available"
msgstr "ఎన్క్రిప్షన్ అందుబాటులో లేదు"
#: ../js/ui/components/telepathyClient.js:1322
#: ../js/ui/components/telepathyClient.js:1326
msgid "Certificate is invalid"
msgstr "ధృవీకరణపత్రం చెల్లనిది"
#: ../js/ui/components/telepathyClient.js:1324
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection has been refused"
msgstr "అనుసంధానము తిరస్కరించబడెను"
#: ../js/ui/components/telepathyClient.js:1326
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection can't be established"
msgstr "అనుసంధానం ఏర్పరచలేము"
#: ../js/ui/components/telepathyClient.js:1328
#: ../js/ui/components/telepathyClient.js:1332
msgid "Connection has been lost"
msgstr "అనుసంధానము కోల్పోయాము"
#: ../js/ui/components/telepathyClient.js:1330
#: ../js/ui/components/telepathyClient.js:1334
msgid "This account is already connected to the server"
msgstr "ఈ ఖాతా ఇదివరకే సేవకానికి అనుసంధానమైంది"
#: ../js/ui/components/telepathyClient.js:1332
#: ../js/ui/components/telepathyClient.js:1336
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "అనుసంధానం అదే వనరు ఉపయోగించి కొత్త అనుసంధానంచే పునఃస్థాపించబడెను"
#: ../js/ui/components/telepathyClient.js:1334
#: ../js/ui/components/telepathyClient.js:1338
msgid "The account already exists on the server"
msgstr "ఖాతా ఇప్పటికే సేవికపైన ఉన్నది"
#: ../js/ui/components/telepathyClient.js:1336
#: ../js/ui/components/telepathyClient.js:1340
msgid "Server is currently too busy to handle the connection"
msgstr "అనుసంధానంను సంభాలించుటకు సేవిక మరీ వత్తిడిలో వుంది"
#: ../js/ui/components/telepathyClient.js:1338
#: ../js/ui/components/telepathyClient.js:1342
msgid "Certificate has been revoked"
msgstr "ధృవీకరణపత్రం కొట్టివేయబడింది"
#: ../js/ui/components/telepathyClient.js:1340
#: ../js/ui/components/telepathyClient.js:1344
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"ధృవీకరణపత్రం సురక్షితం కాని సైఫర్ ఆల్గార్దెమ్ వుపయోగించుచున్నది లేదా క్రిప్టోగ్రఫీ పరంగా బలహీనంగా వుంది"
"ధృవీకరణపత్రం సురక్షితం కాని సైఫర్ ఆల్గార్దెమ్ వుపయోగించుచున్నది లేదా "
"క్రిప్టోగ్రఫీ పరంగా బలహీనంగా వుంది"
#: ../js/ui/components/telepathyClient.js:1342
#: ../js/ui/components/telepathyClient.js:1346
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:1344
#: ../js/ui/components/telepathyClient.js:1348
msgid "Internal error"
msgstr "అంతర్గత దోషం"
#. translators: argument is the account name, like
#. * name@jabber.org for example.
#: ../js/ui/components/telepathyClient.js:1354
#: ../js/ui/components/telepathyClient.js:1358
#, c-format
msgid "Connection to %s failed"
msgstr "%s కు అనుసంధానం విఫలమైంది"
#: ../js/ui/components/telepathyClient.js:1363
#: ../js/ui/components/telepathyClient.js:1367
msgid "Reconnect"
msgstr "తిరిగిఅనుసంధానించు"
#: ../js/ui/components/telepathyClient.js:1364
#: ../js/ui/components/telepathyClient.js:1368
msgid "Edit account"
msgstr "ఖాతా సవరించు"
#: ../js/ui/components/telepathyClient.js:1409
#: ../js/ui/components/telepathyClient.js:1413
msgid "Unknown reason"
msgstr "తెలియని కారణం"
#: ../js/ui/dash.js:245 ../js/ui/dash.js:273
#: ../js/ui/dash.js:254 ../js/ui/dash.js:292
msgid "Show Applications"
msgstr "అనువర్తనాలను చూపించు"
@ -883,14 +922,14 @@ msgstr "అనువర్తనాలను చూపించు"
msgid "Date and Time Settings"
msgstr "తేదీ మరియు సమయం అమరికలు"
#: ../js/ui/dateMenu.js:109
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "క్యాలెండరు తెరువు"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:175
#: ../js/ui/dateMenu.js:201
msgid "%A %B %e, %Y"
msgstr "%A %B %e, %Y"
@ -907,7 +946,9 @@ msgstr "నిష్క్రమించు"
#: ../js/ui/endSessionDialog.js:63
msgid "Click Log Out to quit these applications and log out of the system."
msgstr "ఈ అనువర్తనాలను మూసివెళ్ళుటకు మరియు వ్యవస్థను నిష్క్రమింపచేయడానికి నిష్క్రమించు నొక్కండి."
msgstr ""
"ఈ అనువర్తనాలను మూసివెళ్ళుటకు మరియు వ్యవస్థను నిష్క్రమింపచేయడానికి "
"నిష్క్రమించు నొక్కండి."
#: ../js/ui/endSessionDialog.js:65
#, c-format
@ -939,7 +980,9 @@ msgstr "విద్యుత్ ఆపు"
#: ../js/ui/endSessionDialog.js:82
msgid "Click Power Off to quit these applications and power off the system."
msgstr "ఈ అనువర్తనాలను విడిచివెళ్ళుటకు మరియు వ్యవస్థను ఆపివేయుటకు విద్యుత్ ఆపు నొక్కండి."
msgstr ""
"ఈ అనువర్తనాలను విడిచివెళ్ళుటకు మరియు వ్యవస్థను ఆపివేయుటకు విద్యుత్ ఆపు "
"నొక్కండి."
#: ../js/ui/endSessionDialog.js:84
#, c-format
@ -969,7 +1012,9 @@ msgstr "పునఃప్రారంభించు"
#: ../js/ui/endSessionDialog.js:99
msgid "Click Restart to quit these applications and restart the system."
msgstr "ఈ అనువర్తనాలను విడిచివెళ్ళుటకు మరియు వ్యవస్థను పునఃప్రారంభించటానికి స నొక్కండి."
msgstr ""
"ఈ అనువర్తనాలను విడిచివెళ్ళుటకు మరియు వ్యవస్థను పునఃప్రారంభించటానికి స "
"నొక్కండి."
#: ../js/ui/endSessionDialog.js:101
#, c-format
@ -991,11 +1036,11 @@ msgstr "స్థాపించు"
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "extensions.gnome.org నుండి '%s' దింపుకొని, స్థాపించాలా?"
#: ../js/ui/keyboard.js:327
#: ../js/ui/keyboard.js:337
msgid "tray"
msgstr "పళ్ళెం"
#: ../js/ui/keyboard.js:561 ../js/ui/status/keyboard.js:194
#: ../js/ui/keyboard.js:584 ../js/ui/status/keyboard.js:195
#: ../js/ui/status/power.js:205
msgid "Keyboard"
msgstr "కీబోర్డు"
@ -1048,23 +1093,23 @@ msgstr "మూలాన్ని చూడు"
msgid "Web Page"
msgstr "జాల పుట"
#: ../js/ui/messageTray.js:1080
#: ../js/ui/messageTray.js:1084
msgid "Open"
msgstr "తెరువు"
#: ../js/ui/messageTray.js:1087
#: ../js/ui/messageTray.js:1091
msgid "Remove"
msgstr "తీసివేయి"
#: ../js/ui/messageTray.js:2052
#: ../js/ui/messageTray.js:1531
msgid "Message Tray"
msgstr "సందేశ పళ్ళెం"
#: ../js/ui/messageTray.js:2508
#: ../js/ui/messageTray.js:2543
msgid "System Information"
msgstr "వ్యవస్థ సమాచారం"
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:373
#: ../js/ui/notificationDaemon.js:506 ../src/shell-app.c:374
msgctxt "program"
msgid "Unknown"
msgstr "తెలియదు"
@ -1120,18 +1165,18 @@ msgstr "దయచేసి ఒక ఆదేశమును ప్రవేశప
#. Translators: This is a time format for a date in
#. long format
#: ../js/ui/screenShield.js:79
#: ../js/ui/screenShield.js:81
msgid "%A, %B %d"
msgstr "%A, %B %d"
#: ../js/ui/screenShield.js:144
#: ../js/ui/screenShield.js:145
#, c-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "%d కొత్త సందేశం"
msgstr[1] "%d కొత్త సందేశాలు"
#: ../js/ui/screenShield.js:146
#: ../js/ui/screenShield.js:147
#, c-format
msgid "%d new notification"
msgid_plural "%d new notifications"
@ -1170,7 +1215,7 @@ msgstr "సంకేతపదం"
msgid "Remember Password"
msgstr "సంకేతపదాన్ని గుర్తుంచుకొను"
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:175
#: ../js/ui/shellMountOperation.js:400 ../js/ui/unlockDialog.js:171
msgid "Unlock"
msgstr "తాళంతీయి"
@ -1288,7 +1333,7 @@ msgstr "కీబోర్డు అమరికలు"
msgid "Mouse Settings"
msgstr "మౌస్ అమరికలు"
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:236
#: ../js/ui/status/bluetooth.js:269 ../js/ui/status/volume.js:234
msgid "Sound Settings"
msgstr "శబ్దపు అమరికలు"
@ -1323,7 +1368,8 @@ msgstr "%s పరికరము ఈ కంప్యూటరుతో జతక
#: ../js/ui/status/bluetooth.js:379
#, c-format
msgid "Please confirm whether the PIN '%06d' matches the one on the device."
msgstr "పిన్ '%06d' పరికరము మీద ఉన్న దానితో సరిపోలుతుందో లేదో దయచేసి నిర్ధారించండి."
msgstr ""
"పిన్ '%06d' పరికరము మీద ఉన్న దానితో సరిపోలుతుందో లేదో దయచేసి నిర్ధారించండి."
#: ../js/ui/status/bluetooth.js:381
msgid "Matches"
@ -1346,11 +1392,11 @@ msgstr "దయచేసి పరికరం పై నిర్దేశిం
msgid "OK"
msgstr "సరే"
#: ../js/ui/status/keyboard.js:227
#: ../js/ui/status/keyboard.js:228
msgid "Show Keyboard Layout"
msgstr "కీబోర్డు నమూనాను చూపించు"
#: ../js/ui/status/keyboard.js:232
#: ../js/ui/status/keyboard.js:233
msgid "Region and Language Settings"
msgstr "ప్రాంతము మరియు భాష అమర్పులు"
@ -1573,7 +1619,7 @@ msgid "Unknown"
msgstr "తెలియదు"
#. Translators: This is the label for audio volume
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:223
#: ../js/ui/status/volume.js:47 ../js/ui/status/volume.js:221
msgid "Volume"
msgstr "ధ్వనిస్థాయి"
@ -1581,71 +1627,63 @@ msgstr "ధ్వనిస్థాయి"
msgid "Microphone"
msgstr "మైక్రోఫోను"
#: ../js/ui/unlockDialog.js:137
msgid "Could not connect to GDM. Screen locking was automatically disabled."
msgstr "GDMకు అనుసంధానం సాధ్యం కాలేదు. తెర తాళం స్వయంచాలకంగా అచేతనించబడింది."
#: ../js/ui/unlockDialog.js:182
#: ../js/ui/unlockDialog.js:178
msgid "Log in as another user"
msgstr "వేరొక వాడుకరి వలె ప్రవేశించండి"
#: ../js/ui/userMenu.js:175
#: ../js/ui/userMenu.js:181
msgid "Available"
msgstr "అందుబాటులోవున్నారు"
#: ../js/ui/userMenu.js:178
#: ../js/ui/userMenu.js:184
msgid "Busy"
msgstr "తీరికలేదు"
#: ../js/ui/userMenu.js:181
#: ../js/ui/userMenu.js:187
msgid "Invisible"
msgstr "అదృశ్యం"
#: ../js/ui/userMenu.js:184
#: ../js/ui/userMenu.js:190
msgid "Away"
msgstr "దూరంగా ఉన్నారు"
#: ../js/ui/userMenu.js:187
#: ../js/ui/userMenu.js:193
msgid "Idle"
msgstr "వాడుకలేదు"
#: ../js/ui/userMenu.js:190
#: ../js/ui/userMenu.js:196
msgid "Unavailable"
msgstr "అందుబాటులోలేరు"
#: ../js/ui/userMenu.js:613 ../js/ui/userMenu.js:754
msgid "Switch User"
msgstr "వాడుకరిని మార్చు"
#: ../js/ui/userMenu.js:614
msgid "Switch Session"
msgstr "చర్యాకాలాన్ని మార్చు"
#: ../js/ui/userMenu.js:738
#: ../js/ui/userMenu.js:744
msgid "Notifications"
msgstr "ప్రకటనలు"
#: ../js/ui/userMenu.js:746
#: ../js/ui/userMenu.js:752
msgid "System Settings"
msgstr "వ్యవస్థ అమరికలు"
#: ../js/ui/userMenu.js:759
#: ../js/ui/userMenu.js:760
msgid "Switch User"
msgstr "వాడుకరిని మార్చు"
#: ../js/ui/userMenu.js:765
msgid "Log Out"
msgstr "నిష్క్రమించు"
#: ../js/ui/userMenu.js:764
#: ../js/ui/userMenu.js:770
msgid "Lock"
msgstr "తాళంవేయి"
#: ../js/ui/userMenu.js:779
#: ../js/ui/userMenu.js:785
msgid "Install Updates & Restart"
msgstr "నవీకరణలను స్థాపించి, పునఃప్రారంభించు"
#: ../js/ui/userMenu.js:797
#: ../js/ui/userMenu.js:803
msgid "Your chat status will be set to busy"
msgstr "మీ చాట్ స్థితి రద్దీగా ఉన్నారని అమర్చును"
#: ../js/ui/userMenu.js:798
#: ../js/ui/userMenu.js:804
msgid ""
"Notifications are now disabled, including chat messages. Your online status "
"has been adjusted to let others know that you might not see their messages."
@ -1665,7 +1703,7 @@ msgstr "అనువర్తనాలు"
msgid "Search"
msgstr "వెతుకు"
#: ../js/ui/wanda.js:119
#: ../js/ui/wanda.js:117
#, c-format
msgid ""
"Sorry, no wisdom for you today:\n"
@ -1674,12 +1712,12 @@ msgstr ""
"క్షమించండి, ఇవాల మీకు వివేకం లేదు:\n"
"%s"
#: ../js/ui/wanda.js:123
#: ../js/ui/wanda.js:121
#, c-format
msgid "%s the Oracle says"
msgstr "%s అని ఒరాకిల్ అంటున్నది"
#: ../js/ui/wanda.js:164
#: ../js/ui/wanda.js:162
msgid "Your favorite Easter Egg"
msgstr "మీ ప్రియమైన ఈస్టర్ గుడ్డు"
@ -1714,23 +1752,23 @@ msgstr[1] "%u ఇన్‌పుట్‌లు"
msgid "System Sounds"
msgstr "వ్యవస్థ శబ్దములు"
#: ../src/main.c:330
#: ../src/main.c:332
msgid "Print version"
msgstr "ముద్రిత వర్షన్"
#: ../src/main.c:336
#: ../src/main.c:338
msgid "Mode used by GDM for login screen"
msgstr "ప్రవేశ తెర కొరకు GDM చే ఉపయోగించబడిన రీతి"
#: ../src/main.c:342
#: ../src/main.c:344
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "ఒక నిర్దిష్ట రీతిని వాడు, ఉదా. ప్రవేశ తెర కొరకు \"gdm\""
#: ../src/main.c:348
#: ../src/main.c:350
msgid "List possible modes"
msgstr "సాధ్యమగు రీతులను జాబితాగా చేయి"
#: ../src/shell-app.c:621
#: ../src/shell-app.c:622
#, c-format
msgid "Failed to launch '%s'"
msgstr "'%s' ప్రారంభించుటలో విఫలమైంది"
@ -1755,6 +1793,15 @@ msgstr "అప్రమేయం"
msgid "Authentication dialog was dismissed by the user"
msgstr "ప్రమాణీకరణ డైలాగు వాడుకరిచే రద్దుచేయబడింది"
#~ msgid "Configuration problem: Could not connect to GDM"
#~ msgstr "స్వరూపణం సమస్య: జీడిఎంకు అనుసంధానం కాలేకపోతోంది"
#~ msgid "Could not connect to GDM. Screen locking was automatically disabled."
#~ msgstr "GDMకు అనుసంధానం సాధ్యం కాలేదు. తెర తాళం స్వయంచాలకంగా అచేతనించబడింది."
#~ msgid "Switch Session"
#~ msgstr "చర్యాకాలాన్ని మార్చు"
#~ msgid "disabled OpenSearch providers"
#~ msgstr "బహిరంగఅన్వేషణ సమకూర్పకాలను అచేతపరుచు"

3487
po/ug.po

File diff suppressed because it is too large Load Diff

View File

@ -113,12 +113,14 @@ shell_public_headers_h = \
shell-generic-container.h \
shell-gtk-embed.h \
shell-global.h \
shell-idle-monitor.h \
shell-invert-lightness-effect.h \
shell-mobile-providers.h \
shell-mount-operation.h \
shell-network-agent.h \
shell-perf-log.h \
shell-screenshot.h \
shell-screen-grabber.h \
shell-slicer.h \
shell-stack.h \
shell-tp-client.h \
@ -156,6 +158,7 @@ libgnome_shell_la_SOURCES = \
shell-generic-container.c \
shell-gtk-embed.c \
shell-global.c \
shell-idle-monitor.c \
shell-invert-lightness-effect.c \
shell-keyring-prompt.h \
shell-keyring-prompt.c \
@ -166,6 +169,7 @@ libgnome_shell_la_SOURCES = \
shell-polkit-authentication-agent.h \
shell-polkit-authentication-agent.c \
shell-screenshot.c \
shell-screen-grabber.c \
shell-secure-text-buffer.c \
shell-secure-text-buffer.h \
shell-slicer.c \
@ -230,6 +234,8 @@ test_recorder_LDADD = $(TEST_SHELL_RECORDER_LIBS)
test_recorder_SOURCES = \
$(shell_recorder_sources) $(shell_recorder_private_sources) \
shell-screen-grabber.c \
shell-screen-grabber.h \
test-recorder.c
endif BUILD_RECORDER

View File

@ -1035,6 +1035,8 @@ main (int argc,
name_owner_id = 0;
stdin_channel = NULL;
g_type_init ();
introspection_data = g_dbus_node_info_new_for_xml (introspection_xml, NULL);
g_assert (introspection_data != NULL);

View File

@ -28,7 +28,7 @@ def show_version(option, opt_str, value, parser):
def wait_for_dbus_name(wait_name):
loop = GLib.MainLoop()
def on_name_appeared(connection, name, new_owner, *args):
def on_name_appeared(connection, name, name_owner, *args):
if not (name == wait_name and new_owner != ''):
return
loop.quit()
@ -60,18 +60,13 @@ def start_perf_helper():
wait_for_dbus_name (PERF_HELPER_NAME)
def stop_perf_helper():
bus = Gio.bus_get_sync(Gio.BusType.SESSION, None)
proxy = Gio.DBusProxy.new_sync(bus,
Gio.DBusProxyFlags.NONE,
None,
PERF_HELPER_NAME,
PERF_HELPER_PATH,
PERF_HELPER_IFACE,
None)
proxy = Gio.DBusProxy(g_bus_type=Gio.BusType.SESSION,
g_name=PERF_HELPER_NAME,
g_interface=PERF_HELPER_IFACE,
g_object_path=PERF_HELPER_PATH)
proxy.Exit()
def start_shell(perf_output=None):
def start_shell(extra_args, perf_output=None):
# Set up environment
env = dict(os.environ)
env['SHELL_PERF_MODULE'] = options.perf
@ -81,21 +76,19 @@ def start_shell(perf_output=None):
env['SHELL_PERF_OUTPUT'] = perf_output
self_dir = os.path.dirname(os.path.abspath(sys.argv[0]))
args = []
args.append(os.path.join(self_dir, 'gnome-shell'))
if options.replace:
args.append('--replace')
# pass on any additional arguments
args += extra_args
return subprocess.Popen(args, env=env)
def run_shell(perf_output=None):
def run_shell(args, perf_output=None):
# we do no additional supervision of gnome-shell,
# beyond that of wait
# in particular, we don't kill the shell upon
# receving a KeyboardInterrupt, as we expect to be
# in the same process group
shell = start_shell(perf_output=perf_output)
shell = start_shell(extra_args, perf_output=perf_output)
shell.wait()
return shell.returncode == 0
@ -180,7 +173,7 @@ def upload_performance_report(report_text):
print "Performance report upload failed with status %d" % response.status
print response.read()
def run_performance_test():
def run_performance_test(args):
iters = options.perf_iters
if options.perf_warmup:
iters += 1
@ -199,7 +192,7 @@ def run_performance_test():
# Run the performance test and collect the output as JSON
normal_exit = False
try:
normal_exit = run_shell(perf_output=output_file)
normal_exit = run_shell(args, perf_output=output_file)
except:
stop_perf_helper()
raise
@ -295,8 +288,7 @@ def run_performance_test():
parser = optparse.OptionParser()
parser.add_option("", "--perf", metavar="PERF_MODULE",
help="Specify the name of a performance module to run",
default="core")
help="Specify the name of a performance module to run")
parser.add_option("", "--perf-iters", type="int", metavar="ITERS",
help="Numbers of iterations of performance module to run",
default=1)
@ -309,16 +301,9 @@ parser.add_option("", "--perf-upload", action="store_true",
parser.add_option("", "--version", action="callback", callback=show_version,
help="Display version and exit")
parser.add_option("-r", "--replace", action="store_true",
help="Replace the running window manager")
options, args = parser.parse_args()
if args:
parser.print_usage()
sys.exit(1)
normal_exit = run_performance_test()
normal_exit = run_performance_test(args)
if normal_exit:
sys.exit(0)
else:

View File

@ -72,9 +72,6 @@ static void gnome_shell_plugin_kill_switch_workspace (MetaPlugin *plugin);
static gboolean gnome_shell_plugin_xevent_filter (MetaPlugin *plugin,
XEvent *event);
static gboolean gnome_shell_plugin_keybinding_filter (MetaPlugin *plugin,
MetaKeyBinding *binding);
static const MetaPluginInfo *gnome_shell_plugin_plugin_info (MetaPlugin *plugin);
@ -129,9 +126,8 @@ gnome_shell_plugin_class_init (GnomeShellPluginClass *klass)
plugin_class->kill_window_effects = gnome_shell_plugin_kill_window_effects;
plugin_class->kill_switch_workspace = gnome_shell_plugin_kill_switch_workspace;
plugin_class->xevent_filter = gnome_shell_plugin_xevent_filter;
plugin_class->keybinding_filter = gnome_shell_plugin_keybinding_filter;
plugin_class->plugin_info = gnome_shell_plugin_plugin_info;
plugin_class->xevent_filter = gnome_shell_plugin_xevent_filter;
plugin_class->plugin_info = gnome_shell_plugin_plugin_info;
}
static void
@ -341,13 +337,6 @@ gnome_shell_plugin_xevent_filter (MetaPlugin *plugin,
return clutter_x11_handle_event (xev) != CLUTTER_X11_FILTER_CONTINUE;
}
static gboolean
gnome_shell_plugin_keybinding_filter (MetaPlugin *plugin,
MetaKeyBinding *binding)
{
return _shell_wm_filter_keybinding (get_shell_wm (), binding);
}
static const
MetaPluginInfo *gnome_shell_plugin_plugin_info (MetaPlugin *plugin)
{

View File

@ -240,6 +240,8 @@ main (int argc,
{
guint name_owner_id;
g_type_init ();
introspection_data = g_dbus_node_info_new_for_xml (introspection_xml, NULL);
g_assert (introspection_data != NULL);

View File

@ -38,7 +38,7 @@ extern GType gnome_shell_plugin_get_type (void);
#define OVERRIDES_SCHEMA "org.gnome.shell.overrides"
#define WM_NAME "GNOME Shell"
#define GNOME_WM_KEYBINDINGS "Mutter,GNOME Shell"
#define GNOME_WM_KEYBINDINGS "Metacity,Mutter,GNOME Shell"
static gboolean is_gdm_mode = FALSE;
static char *session_mode = NULL;
@ -174,6 +174,8 @@ shell_prefs_init (void)
OVERRIDES_SCHEMA);
meta_prefs_override_preference_schema ("workspaces-only-on-primary",
OVERRIDES_SCHEMA);
meta_prefs_override_preference_schema ("button-layout",
OVERRIDES_SCHEMA);
meta_prefs_override_preference_schema ("edge-tiling",
OVERRIDES_SCHEMA);
meta_prefs_override_preference_schema ("focus-change-on-pointer-rest",
@ -359,6 +361,8 @@ main (int argc, char **argv)
int ecode;
TpDebugSender *sender;
g_type_init ();
bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
textdomain (GETTEXT_PACKAGE);

View File

@ -92,6 +92,7 @@ main(int argc, char **argv)
g_error ("option parsing failed: %s", error->message);
setlocale (LC_ALL, "");
g_type_init ();
_shell_global_init (NULL);
global = shell_global_get ();

View File

@ -1693,3 +1693,43 @@ shell_global_get_session_mode (ShellGlobal *global)
return global->session_mode;
}
/**
* shell_global_create_xrootpmap_texture:
* @global: The #ShellGlobal
*
* This returns the _XROOTPMAP_ID pixmap that gdm should have stuffed
* in the root window. The goal here is to allow a smooth fade between
* plymouth and the shell greeter. This is also a workaround for gjs not
* supporting raw xlib types.
*
* Returns: (transfer floating): A #ClutterActor that represents the
* _XROOTPMAP_ID pixmap property from the root window.
*/
ClutterActor *
shell_global_create_xrootpmap_texture (ShellGlobal *global)
{
Atom res_type;
int res_format;
unsigned long res_nitems, bytesafter;
unsigned char *data;
Pixmap root_pixmap_id = None;
g_return_val_if_fail (SHELL_IS_GLOBAL (global), NULL);
if (XGetWindowProperty (global->xdisplay,
DefaultRootWindow (global->xdisplay),
XInternAtom (global->xdisplay, "_XROOTPMAP_ID", False),
0, G_MAXLONG, False, XA_PIXMAP,
&res_type, &res_format, &res_nitems, &bytesafter, &data) == Success)
{
if (res_type == XA_PIXMAP && res_format == 32 && res_nitems == 1)
root_pixmap_id = * (Pixmap *) data;
XFree (data);
}
if (root_pixmap_id != None)
return clutter_x11_texture_pixmap_new_with_pixmap (root_pixmap_id);
else
return NULL;
}

View File

@ -136,6 +136,8 @@ void shell_global_reexec_self (ShellGlobal *global);
const char * shell_global_get_session_mode (ShellGlobal *global);
ClutterActor * shell_global_create_xrootpmap_texture (ShellGlobal *global);
G_END_DECLS
#endif /* __SHELL_GLOBAL_H__ */

429
src/shell-idle-monitor.c Normal file
View File

@ -0,0 +1,429 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
*
* Adapted from gnome-session/gnome-session/gs-idle-monitor.c
*
* Copyright (C) 2012 Red Hat, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: William Jon McCann <mccann@jhu.edu>
*
*/
#include "config.h"
#include <time.h>
#include <string.h>
#include <X11/Xlib.h>
#include <X11/extensions/sync.h>
#include <glib.h>
#include <gdk/gdkx.h>
#include <gdk/gdk.h>
#include "shell-idle-monitor.h"
#define SHELL_IDLE_MONITOR_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SHELL_TYPE_IDLE_MONITOR, ShellIdleMonitorPrivate))
struct ShellIdleMonitorPrivate
{
Display *display;
GHashTable *watches;
int sync_event_base;
XSyncCounter counter;
};
typedef struct
{
Display *display;
guint id;
XSyncValue interval;
ShellIdleMonitorWatchFunc callback;
gpointer user_data;
GDestroyNotify notify;
XSyncAlarm xalarm_positive;
XSyncAlarm xalarm_negative;
} ShellIdleMonitorWatch;
static guint32 watch_serial = 1;
G_DEFINE_TYPE (ShellIdleMonitor, shell_idle_monitor, G_TYPE_OBJECT)
static gint64
_xsyncvalue_to_int64 (XSyncValue value)
{
return ((guint64) XSyncValueHigh32 (value)) << 32
| (guint64) XSyncValueLow32 (value);
}
static XSyncValue
_int64_to_xsyncvalue (gint64 value)
{
XSyncValue ret;
XSyncIntsToValue (&ret, value, ((guint64)value) >> 32);
return ret;
}
static void
shell_idle_monitor_dispose (GObject *object)
{
ShellIdleMonitor *monitor;
monitor = SHELL_IDLE_MONITOR (object);
if (monitor->priv->watches != NULL) {
g_hash_table_destroy (monitor->priv->watches);
monitor->priv->watches = NULL;
}
G_OBJECT_CLASS (shell_idle_monitor_parent_class)->dispose (object);
}
static gboolean
_find_alarm (gpointer key,
ShellIdleMonitorWatch *watch,
XSyncAlarm *alarm)
{
/* g_debug ("Searching for %d in %d,%d", (int)*alarm, (int)watch->xalarm_positive, (int)watch->xalarm_negative); */
if (watch->xalarm_positive == *alarm
|| watch->xalarm_negative == *alarm) {
return TRUE;
}
return FALSE;
}
static ShellIdleMonitorWatch *
find_watch_for_alarm (ShellIdleMonitor *monitor,
XSyncAlarm alarm)
{
ShellIdleMonitorWatch *watch;
watch = g_hash_table_find (monitor->priv->watches,
(GHRFunc)_find_alarm,
&alarm);
return watch;
}
static void
handle_alarm_notify_event (ShellIdleMonitor *monitor,
XSyncAlarmNotifyEvent *alarm_event)
{
ShellIdleMonitorWatch *watch;
gboolean condition;
if (alarm_event->state == XSyncAlarmDestroyed) {
return;
}
watch = find_watch_for_alarm (monitor, alarm_event->alarm);
if (watch == NULL) {
/* g_debug ("Unable to find watch for alarm %d", (int)alarm_event->alarm); */
return;
}
/* g_debug ("Watch %d fired, idle time = %" G_GINT64_FORMAT,
watch->id,
_xsyncvalue_to_int64 (alarm_event->counter_value)); */
if (alarm_event->alarm == watch->xalarm_positive) {
condition = TRUE;
} else {
condition = FALSE;
}
if (watch->callback != NULL) {
watch->callback (monitor,
watch->id,
condition,
watch->user_data);
}
}
static GdkFilterReturn
xevent_filter (GdkXEvent *xevent,
GdkEvent *event,
ShellIdleMonitor *monitor)
{
XEvent *ev;
XSyncAlarmNotifyEvent *alarm_event;
ev = xevent;
if (ev->xany.type != monitor->priv->sync_event_base + XSyncAlarmNotify) {
return GDK_FILTER_CONTINUE;
}
alarm_event = xevent;
handle_alarm_notify_event (monitor, alarm_event);
return GDK_FILTER_CONTINUE;
}
static gboolean
init_xsync (ShellIdleMonitor *monitor)
{
int sync_error_base;
int res;
int major;
int minor;
int i;
int ncounters;
XSyncSystemCounter *counters;
res = XSyncQueryExtension (monitor->priv->display,
&monitor->priv->sync_event_base,
&sync_error_base);
if (! res) {
g_warning ("ShellIdleMonitor: Sync extension not present");
return FALSE;
}
res = XSyncInitialize (monitor->priv->display, &major, &minor);
if (! res) {
g_warning ("ShellIdleMonitor: Unable to initialize Sync extension");
return FALSE;
}
counters = XSyncListSystemCounters (monitor->priv->display, &ncounters);
for (i = 0; i < ncounters; i++) {
if (counters[i].name != NULL
&& strcmp (counters[i].name, "IDLETIME") == 0) {
monitor->priv->counter = counters[i].counter;
break;
}
}
XSyncFreeSystemCounterList (counters);
if (monitor->priv->counter == None) {
g_warning ("ShellIdleMonitor: IDLETIME counter not found");
return FALSE;
}
gdk_window_add_filter (NULL, (GdkFilterFunc)xevent_filter, monitor);
return TRUE;
}
static GObject *
shell_idle_monitor_constructor (GType type,
guint n_construct_properties,
GObjectConstructParam *construct_properties)
{
ShellIdleMonitor *monitor;
monitor = SHELL_IDLE_MONITOR (G_OBJECT_CLASS (shell_idle_monitor_parent_class)->constructor (type,
n_construct_properties,
construct_properties));
monitor->priv->display = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ());
if (! init_xsync (monitor)) {
g_object_unref (monitor);
return NULL;
}
return G_OBJECT (monitor);
}
static void
shell_idle_monitor_class_init (ShellIdleMonitorClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->dispose = shell_idle_monitor_dispose;
object_class->constructor = shell_idle_monitor_constructor;
g_type_class_add_private (klass, sizeof (ShellIdleMonitorPrivate));
}
static guint32
get_next_watch_serial (void)
{
guint32 serial;
serial = watch_serial++;
if ((gint32)watch_serial < 0) {
watch_serial = 1;
}
/* FIXME: make sure it isn't in the hash */
return serial;
}
static ShellIdleMonitorWatch *
idle_monitor_watch_new (guint interval)
{
ShellIdleMonitorWatch *watch;
watch = g_slice_new0 (ShellIdleMonitorWatch);
watch->interval = _int64_to_xsyncvalue ((gint64)interval);
watch->id = get_next_watch_serial ();
watch->xalarm_positive = None;
watch->xalarm_negative = None;
return watch;
}
static void
idle_monitor_watch_free (ShellIdleMonitorWatch *watch)
{
if (watch == NULL) {
return;
}
if (watch->notify != NULL) {
watch->notify (watch->user_data);
}
if (watch->xalarm_positive != None) {
XSyncDestroyAlarm (watch->display, watch->xalarm_positive);
}
if (watch->xalarm_negative != None) {
XSyncDestroyAlarm (watch->display, watch->xalarm_negative);
}
g_slice_free (ShellIdleMonitorWatch, watch);
}
static void
shell_idle_monitor_init (ShellIdleMonitor *monitor)
{
monitor->priv = SHELL_IDLE_MONITOR_GET_PRIVATE (monitor);
monitor->priv->watches = g_hash_table_new_full (NULL,
NULL,
NULL,
(GDestroyNotify)idle_monitor_watch_free);
monitor->priv->counter = None;
}
/**
* shell_idle_monitor_get:
*
* Returns: (transfer none): the global #ShellIdleMonitor.
*/
ShellIdleMonitor *
shell_idle_monitor_get (void)
{
static ShellIdleMonitor *idle_monitor;
if (G_UNLIKELY (idle_monitor == NULL))
idle_monitor = g_object_new (SHELL_TYPE_IDLE_MONITOR,
NULL);
return idle_monitor;
}
static gboolean
_xsync_alarm_set (ShellIdleMonitor *monitor,
ShellIdleMonitorWatch *watch)
{
XSyncAlarmAttributes attr;
XSyncValue delta;
guint flags;
flags = XSyncCACounter
| XSyncCAValueType
| XSyncCATestType
| XSyncCAValue
| XSyncCADelta
| XSyncCAEvents;
XSyncIntToValue (&delta, 0);
attr.trigger.counter = monitor->priv->counter;
attr.trigger.value_type = XSyncAbsolute;
attr.trigger.wait_value = watch->interval;
attr.delta = delta;
attr.events = TRUE;
attr.trigger.test_type = XSyncPositiveTransition;
if (watch->xalarm_positive != None) {
/* g_debug ("ShellIdleMonitor: updating alarm for positive transition wait=%" G_GINT64_FORMAT,
_xsyncvalue_to_int64 (attr.trigger.wait_value)); */
XSyncChangeAlarm (monitor->priv->display, watch->xalarm_positive, flags, &attr);
} else {
/* g_debug ("ShellIdleMonitor: creating new alarm for positive transition wait=%" G_GINT64_FORMAT,
_xsyncvalue_to_int64 (attr.trigger.wait_value)); */
watch->xalarm_positive = XSyncCreateAlarm (monitor->priv->display, flags, &attr);
}
attr.trigger.wait_value = _int64_to_xsyncvalue (_xsyncvalue_to_int64 (watch->interval) - 1);
attr.trigger.test_type = XSyncNegativeTransition;
if (watch->xalarm_negative != None) {
/* g_debug ("ShellIdleMonitor: updating alarm for negative transition wait=%" G_GINT64_FORMAT,
_xsyncvalue_to_int64 (attr.trigger.wait_value)); */
XSyncChangeAlarm (monitor->priv->display, watch->xalarm_negative, flags, &attr);
} else {
/* g_debug ("ShellIdleMonitor: creating new alarm for negative transition wait=%" G_GINT64_FORMAT,
_xsyncvalue_to_int64 (attr.trigger.wait_value)); */
watch->xalarm_negative = XSyncCreateAlarm (monitor->priv->display, flags, &attr);
}
return TRUE;
}
guint
shell_idle_monitor_add_watch (ShellIdleMonitor *monitor,
guint interval,
ShellIdleMonitorWatchFunc callback,
gpointer user_data,
GDestroyNotify notify)
{
ShellIdleMonitorWatch *watch;
g_return_val_if_fail (SHELL_IS_IDLE_MONITOR (monitor), 0);
g_return_val_if_fail (callback != NULL, 0);
watch = idle_monitor_watch_new (interval);
watch->display = monitor->priv->display;
watch->callback = callback;
watch->user_data = user_data;
watch->notify = notify;
_xsync_alarm_set (monitor, watch);
g_hash_table_insert (monitor->priv->watches,
GUINT_TO_POINTER (watch->id),
watch);
return watch->id;
}
void
shell_idle_monitor_remove_watch (ShellIdleMonitor *monitor,
guint id)
{
g_return_if_fail (SHELL_IS_IDLE_MONITOR (monitor));
g_hash_table_remove (monitor->priv->watches,
GUINT_TO_POINTER (id));
}
gint64
shell_idle_monitor_get_idletime (ShellIdleMonitor *monitor)
{
XSyncValue value;
if (!XSyncQueryCounter (monitor->priv->display, monitor->priv->counter, &value))
return FALSE;
return _xsyncvalue_to_int64 (value);
}

74
src/shell-idle-monitor.h Normal file
View File

@ -0,0 +1,74 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
*
* Adapted from gnome-session/gnome-session/gs-idle-monitor.h
*
* Copyright (C) 2012 Red Hat, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: William Jon McCann <mccann@jhu.edu>
*
*/
#ifndef __SHELL_IDLE_MONITOR_H
#define __SHELL_IDLE_MONITOR_H
#include <glib-object.h>
G_BEGIN_DECLS
#define SHELL_TYPE_IDLE_MONITOR (shell_idle_monitor_get_type ())
#define SHELL_IDLE_MONITOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SHELL_TYPE_IDLE_MONITOR, ShellIdleMonitor))
#define SHELL_IDLE_MONITOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SHELL_TYPE_IDLE_MONITOR, ShellIdleMonitorClass))
#define SHELL_IS_IDLE_MONITOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SHELL_TYPE_IDLE_MONITOR))
#define SHELL_IS_IDLE_MONITOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SHELL_TYPE_IDLE_MONITOR))
#define SHELL_IDLE_MONITOR_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), SHELL_TYPE_IDLE_MONITOR, ShellIdleMonitorClass))
typedef struct ShellIdleMonitorPrivate ShellIdleMonitorPrivate;
typedef struct
{
GObject parent;
ShellIdleMonitorPrivate *priv;
} ShellIdleMonitor;
typedef struct
{
GObjectClass parent_class;
} ShellIdleMonitorClass;
typedef void (*ShellIdleMonitorWatchFunc) (ShellIdleMonitor *monitor,
guint id,
gboolean condition,
gpointer user_data);
GType shell_idle_monitor_get_type (void);
ShellIdleMonitor * shell_idle_monitor_get (void);
guint shell_idle_monitor_add_watch (ShellIdleMonitor *monitor,
guint interval,
ShellIdleMonitorWatchFunc callback,
gpointer user_data,
GDestroyNotify notify);
void shell_idle_monitor_remove_watch (ShellIdleMonitor *monitor,
guint id);
gint64 shell_idle_monitor_get_idletime (ShellIdleMonitor *monitor);
G_END_DECLS
#endif /* __SHELL_IDLE_MONITOR_H */

View File

@ -37,11 +37,10 @@
#define ISO_3166_COUNTRY_CODES DATADIR "/zoneinfo/iso3166.tab"
static ShellCountryMobileProvider *country_mobile_provider_new (const char *country_code,
const gchar *country_name);
static GHashTable *
read_country_codes (const gchar *country_codes)
read_country_codes (void)
{
GHashTable *table;
GIOChannel *channel;
@ -49,21 +48,18 @@ read_country_codes (const gchar *country_codes)
GError *error = NULL;
GIOStatus status;
channel = g_io_channel_new_file (country_codes, "r", &error);
channel = g_io_channel_new_file (ISO_3166_COUNTRY_CODES, "r", &error);
if (!channel) {
if (error) {
g_warning ("Could not read %s: %s", country_codes, error->message);
g_warning ("Could not read " ISO_3166_COUNTRY_CODES ": %s", error->message);
g_error_free (error);
} else
g_warning ("Could not read %s: Unknown error", country_codes);
g_warning ("Could not read " ISO_3166_COUNTRY_CODES ": Unknown error");
return NULL;
}
table = g_hash_table_new_full (g_str_hash,
g_str_equal,
g_free,
(GDestroyNotify)shell_country_mobile_provider_unref);
table = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
buffer = g_string_sized_new (32);
status = G_IO_STATUS_NORMAL;
@ -73,7 +69,6 @@ read_country_codes (const gchar *country_codes)
switch (status) {
case G_IO_STATUS_NORMAL:
if (buffer->str[0] != '#') {
ShellCountryMobileProvider *country_provider;
char **pieces;
pieces = g_strsplit (buffer->str, "\t", 2);
@ -85,8 +80,7 @@ read_country_codes (const gchar *country_codes)
pieces[1] = g_strdup (_("United Kingdom"));
}
country_provider = country_mobile_provider_new (pieces[0], pieces[1]);
g_hash_table_insert (table, pieces[0], country_provider);
g_hash_table_insert (table, pieces[0], pieces[1]);
g_free (pieces);
}
@ -123,6 +117,7 @@ typedef enum {
} MobileContextState;
typedef struct {
GHashTable *country_codes;
GHashTable *table;
char *current_country;
@ -281,86 +276,6 @@ shell_mobile_provider_get_type (void)
return type;
}
static ShellCountryMobileProvider *
country_mobile_provider_new (const char *country_code,
const gchar *country_name)
{
ShellCountryMobileProvider *country_provider;
country_provider = g_slice_new0 (ShellCountryMobileProvider);
country_provider->refs = 1;
country_provider->country_code = g_strdup (country_code);
country_provider->country_name = g_strdup (country_name);
return country_provider;
}
ShellCountryMobileProvider *
shell_country_mobile_provider_ref (ShellCountryMobileProvider *country_provider)
{
country_provider->refs++;
return country_provider;
}
void
shell_country_mobile_provider_unref (ShellCountryMobileProvider *country_provider)
{
if (--country_provider->refs == 0) {
g_free (country_provider->country_code);
g_free (country_provider->country_name);
g_slist_free_full (country_provider->providers,
(GDestroyNotify) shell_mobile_provider_unref);
g_slice_free (ShellCountryMobileProvider, country_provider);
}
}
/**
* shell_country_mobile_provider_get_country_code:
*
* Returns: (transfer none): the code of the country.
*/
const gchar *
shell_country_mobile_provider_get_country_code (ShellCountryMobileProvider *country_provider)
{
return country_provider->country_code;
}
/**
* shell_country_mobile_provider_get_country_name:
*
* Returns: (transfer none): the name of the country.
*/
const gchar *
shell_country_mobile_provider_get_country_name (ShellCountryMobileProvider *country_provider)
{
return country_provider->country_name;
}
/**
* shell_country_mobile_provider_get_providers:
*
* Returns: (element-type Shell.MobileProvider) (transfer none): the
* list of #ShellMobileProvider this country exposes.
*/
GSList *
shell_country_mobile_provider_get_providers (ShellCountryMobileProvider *country_provider)
{
return country_provider->providers;
}
GType
shell_country_mobile_provider_get_type (void)
{
static GType type = 0;
if (G_UNLIKELY (type == 0)) {
type = g_boxed_type_register_static ("ShellCountryMobileProvider",
(GBoxedCopyFunc) shell_country_mobile_provider_ref,
(GBoxedFreeFunc) shell_country_mobile_provider_unref);
}
return type;
}
static void
provider_list_free (gpointer data)
{
@ -395,17 +310,15 @@ parser_toplevel_start (MobileParser *parser,
for (i = 0; attribute_names && attribute_names[i]; i++) {
if (!strcmp (attribute_names[i], "code")) {
char *country_code;
ShellCountryMobileProvider *country_provider;
char *country;
country_code = g_ascii_strup (attribute_values[i], -1);
country_provider = g_hash_table_lookup (parser->table, country_code);
/* Ensure we have a country provider for this country code */
if (!country_provider) {
g_warning ("%s: adding providers for unknown country '%s'", __func__, country_code);
country_provider = country_mobile_provider_new (country_code, NULL);
g_hash_table_insert (parser->table, country_code, country_provider);
}
parser->current_country = country_code;
country = g_hash_table_lookup (parser->country_codes, country_code);
if (country) {
parser->current_country = g_strdup (country);
g_free (country_code);
} else
parser->current_country = country_code;
parser->state = PARSER_COUNTRY;
break;
@ -542,13 +455,7 @@ parser_country_end (MobileParser *parser,
const char *name)
{
if (!strcmp (name, "country")) {
ShellCountryMobileProvider *country_provider;
country_provider = g_hash_table_lookup (parser->table, parser->current_country);
if (country_provider)
/* Store providers for this country */
country_provider->providers = parser->current_providers;
g_hash_table_insert (parser->table, parser->current_country, parser->current_providers);
parser->current_country = NULL;
parser->current_providers = NULL;
parser->text_buffer = NULL;
@ -709,16 +616,15 @@ static const GMarkupParser mobile_parser = {
/**
* shell_mobile_providers_parse:
* @country_codes: (allow-none) File with the list of country codes.
* @service_providers: (allow-none) File with the list of service providers.
* @out_ccs: (out) (allow-none): (element-type utf8 utf8): a #GHashTable containing
* country codes
*
* Returns: (element-type utf8 Shell.CountryMobileProvider) (transfer full): a
* hash table where keys are country names #gchar and values are #ShellCountryMobileProvider.
* Everything is destroyed with g_hash_table_destroy().
*/
* Returns: (element-type utf8 GList) (transfer container): a
* hash table where keys are country names #gchar, values are a #GSList
* of #ShellMobileProvider. Everything is destroyed with g_hash_table_destroy().
*/
GHashTable *
shell_mobile_providers_parse (const gchar *country_codes,
const gchar *service_providers)
shell_mobile_providers_parse (GHashTable **out_ccs)
{
GMarkupParseContext *ctx;
GIOChannel *channel;
@ -728,29 +634,24 @@ shell_mobile_providers_parse (const gchar *country_codes,
GIOStatus status;
gsize len = 0;
/* Use default paths if none given */
if (!country_codes)
country_codes = ISO_3166_COUNTRY_CODES;
if (!service_providers)
service_providers = MOBILE_BROADBAND_PROVIDER_INFO;
memset (&parser, 0, sizeof (MobileParser));
parser.table = read_country_codes (country_codes);
if (!parser.table)
parser.country_codes = read_country_codes ();
if (!parser.country_codes)
goto out;
channel = g_io_channel_new_file (service_providers, "r", &error);
channel = g_io_channel_new_file (MOBILE_BROADBAND_PROVIDER_INFO, "r", &error);
if (!channel) {
if (error) {
g_warning ("Could not read %s: %s", service_providers, error->message);
g_warning ("Could not read " MOBILE_BROADBAND_PROVIDER_INFO ": %s", error->message);
g_error_free (error);
} else
g_warning ("Could not read %s: Unknown error", service_providers);
g_warning ("Could not read " MOBILE_BROADBAND_PROVIDER_INFO ": Unknown error");
goto out;
}
parser.table = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, provider_list_free);
parser.state = PARSER_TOPLEVEL;
ctx = g_markup_parse_context_new (&mobile_parser, 0, &parser, NULL);
@ -795,7 +696,13 @@ shell_mobile_providers_parse (const gchar *country_codes,
g_free (parser.current_country);
g_free (parser.text_buffer);
out:
out:
if (parser.country_codes) {
if (out_ccs)
*out_ccs = parser.country_codes;
else
g_hash_table_destroy (parser.country_codes);
}
return parser.table;
}
@ -837,17 +744,12 @@ dump_gsm (ShellMobileAccessMethod *method)
static void
dump_country (gpointer key, gpointer value, gpointer user_data)
{
GSList *miter, *citer;
ShellCountryMobileProvider *country_provider = value;
GSList *citer, *miter;
g_print ("Country: %s (%s)\n",
country_provider->country_code,
country_provider->country_name);
for (citer = country_provider->providers; citer; citer = g_slist_next (citer)) {
for (citer = value; citer; citer = g_slist_next (citer)) {
ShellMobileProvider *provider = citer->data;
g_print (" Provider: %s (%s)\n", provider->name, (const char *) key);
g_print ("Provider: %s (%s)\n", provider->name, (const char *) key);
for (miter = provider->methods; miter; miter = g_slist_next (miter)) {
ShellMobileAccessMethod *method = miter->data;
GSList *liter;
@ -877,10 +779,10 @@ dump_country (gpointer key, gpointer value, gpointer user_data)
}
void
shell_mobile_providers_dump (GHashTable *country_providers)
shell_mobile_providers_dump (GHashTable *providers)
{
g_return_if_fail (country_providers != NULL);
g_hash_table_foreach (country_providers, dump_country, NULL);
g_return_if_fail (providers != NULL);
g_hash_table_foreach (providers, dump_country, NULL);
}
/* All the following don't exist in nm-applet, because C doesn't need

View File

@ -76,19 +76,10 @@ typedef struct {
gint refs;
} ShellMobileProvider;
typedef struct {
char *country_code;
char *country_name;
GSList *providers;
gint refs;
} ShellCountryMobileProvider;
GType shell_gsm_mcc_mnc_get_type (void); /* added in porting */
GType shell_mobile_access_method_get_type (void);
GType shell_mobile_provider_get_type (void);
GType shell_country_mobile_provider_get_type (void);
GType shell_mobile_access_method_get_type (void);
ShellMobileProvider *shell_mobile_provider_ref (ShellMobileProvider *provider);
void shell_mobile_provider_unref (ShellMobileProvider *provider);
@ -98,14 +89,8 @@ GSList * shell_mobile_provider_get_cdma_sid (ShellMobileProvider *pr
ShellMobileAccessMethod *shell_mobile_access_method_ref (ShellMobileAccessMethod *method);
void shell_mobile_access_method_unref (ShellMobileAccessMethod *method);
ShellCountryMobileProvider *shell_country_mobile_provider_ref (ShellCountryMobileProvider *country_provider);
void shell_country_mobile_provider_unref (ShellCountryMobileProvider *country_provider);
const gchar *shell_country_mobile_provider_get_country_code (ShellCountryMobileProvider *country_provider);
const gchar *shell_country_mobile_provider_get_country_name (ShellCountryMobileProvider *country_provider);
GSList *shell_country_mobile_provider_get_providers (ShellCountryMobileProvider *country_provider);
GHashTable *shell_mobile_providers_parse (GHashTable **out_ccs);
GHashTable *shell_mobile_providers_parse (const gchar *country_codes,
const gchar *service_providers);
void shell_mobile_providers_dump (GHashTable *country_providers);
void shell_mobile_providers_dump (GHashTable *providers);
#endif /* SHELL_MOBILE_PROVIDERS_H */

View File

@ -11,11 +11,9 @@
#define GST_USE_UNSTABLE_API
#include <gst/gst.h>
#include <gtk/gtk.h>
#include <gdk/gdk.h>
#include "shell-recorder-src.h"
#include "shell-recorder.h"
#include "shell-screen-grabber.h"
#include <clutter/x11/clutter-x11.h>
#include <X11/extensions/Xfixes.h>
@ -48,7 +46,7 @@ struct _ShellRecorder {
int stage_width;
int stage_height;
GdkScreen *gdk_screen;
ShellScreenGrabber *grabber;
gboolean have_pointer;
int pointer_x;
@ -67,7 +65,7 @@ struct _ShellRecorder {
int framerate;
char *pipeline_description;
char *file_template;
char *filename;
/* We might have multiple pipelines that are finishing encoding
* to go along with the current pipeline where we are recording.
@ -92,7 +90,6 @@ struct _RecorderPipeline
GstElement *pipeline;
GstElement *src;
int outfile;
char *filename;
};
static void recorder_set_stage (ShellRecorder *recorder,
@ -101,8 +98,8 @@ static void recorder_set_framerate (ShellRecorder *recorder,
int framerate);
static void recorder_set_pipeline (ShellRecorder *recorder,
const char *pipeline);
static void recorder_set_file_template (ShellRecorder *recorder,
const char *file_template);
static void recorder_set_filename (ShellRecorder *recorder,
const char *filename);
static void recorder_pipeline_set_caps (RecorderPipeline *pipeline);
static void recorder_pipeline_closed (RecorderPipeline *pipeline);
@ -112,7 +109,7 @@ enum {
PROP_STAGE,
PROP_FRAMERATE,
PROP_PIPELINE,
PROP_FILE_TEMPLATE
PROP_FILENAME
};
G_DEFINE_TYPE(ShellRecorder, shell_recorder, G_TYPE_OBJECT);
@ -259,11 +256,11 @@ shell_recorder_init (ShellRecorder *recorder)
shell_recorder_src_register ();
recorder->gdk_screen = gdk_screen_get_default ();
recorder->recording_icon = create_recording_icon ();
recorder->memory_target = get_memory_target();
recorder->grabber = shell_screen_grabber_new ();
recorder->state = RECORDER_STATE_CLOSED;
recorder->framerate = DEFAULT_FRAMES_PER_SECOND;
}
@ -272,6 +269,18 @@ static void
shell_recorder_finalize (GObject *object)
{
ShellRecorder *recorder = SHELL_RECORDER (object);
GSList *l;
for (l = recorder->pipelines; l; l = l->next)
{
RecorderPipeline *pipeline = l->data;
/* Remove the back-reference. The pipeline will be freed
* when it finishes. (Or when the process exits, but that's
* out of our control.)
*/
pipeline->recorder = NULL;
}
if (recorder->update_memory_used_timeout)
g_source_remove (recorder->update_memory_used_timeout);
@ -281,7 +290,9 @@ shell_recorder_finalize (GObject *object)
recorder_set_stage (recorder, NULL);
recorder_set_pipeline (recorder, NULL);
recorder_set_file_template (recorder, NULL);
recorder_set_filename (recorder, NULL);
g_object_unref (recorder->grabber);
cogl_handle_unref (recorder->recording_icon);
@ -460,12 +471,6 @@ static void
recorder_draw_buffer_meter (ShellRecorder *recorder)
{
int fill_level;
GdkRectangle primary_monitor;
float rects[16];
gdk_screen_get_monitor_geometry (recorder->gdk_screen,
gdk_screen_get_primary_monitor (recorder->gdk_screen),
&primary_monitor);
recorder_update_memory_used (recorder, FALSE);
@ -480,27 +485,14 @@ recorder_draw_buffer_meter (ShellRecorder *recorder)
fill_level = MIN (60, (recorder->memory_used * 60) / recorder->memory_target);
/* A hollow rectangle filled from the left to fill_level */
rects[0] = primary_monitor.x + primary_monitor.width - 64;
rects[1] = primary_monitor.y + primary_monitor.height - 10;
rects[2] = primary_monitor.x + primary_monitor.width - 2;
rects[3] = primary_monitor.y + primary_monitor.height - 9;
rects[4] = primary_monitor.x + primary_monitor.width - 64;
rects[5] = primary_monitor.y + primary_monitor.height - 9;
rects[6] = primary_monitor.x + primary_monitor.width - (63 - fill_level);
rects[7] = primary_monitor.y + primary_monitor.height - 3;
rects[8] = primary_monitor.x + primary_monitor.width - 3;
rects[9] = primary_monitor.y + primary_monitor.height - 9;
rects[10] = primary_monitor.x + primary_monitor.width - 2;
rects[11] = primary_monitor.y + primary_monitor.height - 3;
rects[12] = primary_monitor.x + primary_monitor.width - 64;
rects[13] = primary_monitor.y + primary_monitor.height - 3;
rects[14] = primary_monitor.x + primary_monitor.width - 2;
rects[15] = primary_monitor.y + primary_monitor.height - 2;
cogl_rectangles (rects, 4);
cogl_rectangle (recorder->stage_width - 64, recorder->stage_height - 10,
recorder->stage_width - 2, recorder->stage_height - 9);
cogl_rectangle (recorder->stage_width - 64, recorder->stage_height - 9,
recorder->stage_width - (63 - fill_level), recorder->stage_height - 3);
cogl_rectangle (recorder->stage_width - 3, recorder->stage_height - 9,
recorder->stage_width - 2, recorder->stage_height - 3);
cogl_rectangle (recorder->stage_width - 64, recorder->stage_height - 3,
recorder->stage_width - 2, recorder->stage_height - 2);
}
/* We want to time-stamp each frame based on the actual time it was
@ -550,13 +542,8 @@ recorder_record_frame (ShellRecorder *recorder)
size = recorder->stage_width * recorder->stage_height * 4;
data = g_malloc (recorder->stage_width * 4 * recorder->stage_height);
cogl_read_pixels (0, 0, /* x/y */
recorder->stage_width,
recorder->stage_height,
COGL_READ_PIXELS_COLOR_BUFFER,
CLUTTER_CAIRO_FORMAT_ARGB32,
data);
data = shell_screen_grabber_grab (recorder->grabber,
0, 0, recorder->stage_width, recorder->stage_height);
buffer = gst_buffer_new();
gst_buffer_insert_memory (buffer, -1,
@ -584,17 +571,12 @@ recorder_on_stage_paint (ClutterActor *actor,
{
if (recorder->state == RECORDER_STATE_RECORDING)
{
GdkRectangle primary_monitor;
gdk_screen_get_monitor_geometry (recorder->gdk_screen,
gdk_screen_get_primary_monitor (recorder->gdk_screen),
&primary_monitor);
if (!recorder->only_paint)
recorder_record_frame (recorder);
cogl_set_source_texture (recorder->recording_icon);
cogl_rectangle (primary_monitor.x + primary_monitor.width - 32, primary_monitor.y + primary_monitor.height - 42,
primary_monitor.x + primary_monitor.width, primary_monitor.y + primary_monitor.height - 10);
cogl_rectangle (recorder->stage_width - 32, recorder->stage_height - 42,
recorder->stage_width, recorder->stage_height - 10);
}
if (recorder->state == RECORDER_STATE_RECORDING || recorder->memory_used != 0)
@ -935,22 +917,22 @@ recorder_set_pipeline (ShellRecorder *recorder,
}
static void
recorder_set_file_template (ShellRecorder *recorder,
const char *file_template)
recorder_set_filename (ShellRecorder *recorder,
const char *filename)
{
if (file_template == recorder->file_template ||
(file_template && recorder->file_template && strcmp (recorder->file_template, file_template) == 0))
if (filename == recorder->filename ||
(filename && recorder->filename && strcmp (recorder->filename, filename) == 0))
return;
if (recorder->current_pipeline)
shell_recorder_close (recorder);
if (recorder->file_template)
g_free (recorder->file_template);
if (recorder->filename)
g_free (recorder->filename);
recorder->file_template = g_strdup (file_template);
recorder->filename = g_strdup (filename);
g_object_notify (G_OBJECT (recorder), "file-template");
g_object_notify (G_OBJECT (recorder), "filename");
}
static void
@ -972,8 +954,8 @@ shell_recorder_set_property (GObject *object,
case PROP_PIPELINE:
recorder_set_pipeline (recorder, g_value_get_string (value));
break;
case PROP_FILE_TEMPLATE:
recorder_set_file_template (recorder, g_value_get_string (value));
case PROP_FILENAME:
recorder_set_filename (recorder, g_value_get_string (value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@ -1000,8 +982,8 @@ shell_recorder_get_property (GObject *object,
case PROP_PIPELINE:
g_value_set_string (value, recorder->pipeline_description);
break;
case PROP_FILE_TEMPLATE:
g_value_set_string (value, recorder->file_template);
case PROP_FILENAME:
g_value_set_string (value, recorder->filename);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@ -1045,9 +1027,9 @@ shell_recorder_class_init (ShellRecorderClass *klass)
G_PARAM_READWRITE));
g_object_class_install_property (gobject_class,
PROP_FILE_TEMPLATE,
g_param_spec_string ("file-template",
"File Template",
PROP_FILENAME,
g_param_spec_string ("filename",
"Filename",
"The filename template to use for output files",
NULL,
G_PARAM_READWRITE));
@ -1167,14 +1149,13 @@ get_absolute_path (char *maybe_relative)
* be opened.
*/
static int
recorder_open_outfile (ShellRecorder *recorder,
char **outfilename)
recorder_open_outfile (ShellRecorder *recorder)
{
const char *pattern;
int flags;
int outfile = -1;
pattern = recorder->file_template;
pattern = recorder->filename;
if (!pattern)
return -1;
@ -1249,12 +1230,8 @@ recorder_open_outfile (ShellRecorder *recorder,
{
g_printerr ("Recording to %s\n", path);
if (outfilename != NULL)
*outfilename = path;
else
g_free (path);
g_string_free (filename, TRUE);
g_free (path);
goto out;
}
@ -1292,8 +1269,7 @@ recorder_pipeline_add_sink (RecorderPipeline *pipeline)
return TRUE;
}
pipeline->outfile = recorder_open_outfile (pipeline->recorder,
&pipeline->filename);
pipeline->outfile = recorder_open_outfile (pipeline->recorder);
if (pipeline->outfile == -1)
goto out;
@ -1368,10 +1344,6 @@ recorder_pipeline_free (RecorderPipeline *pipeline)
if (pipeline->outfile != -1)
close (pipeline->outfile);
g_free (pipeline->filename);
g_clear_object (&pipeline->recorder);
g_free (pipeline);
}
@ -1421,10 +1393,6 @@ recorder_pipeline_closed (RecorderPipeline *pipeline)
if (pipeline->recorder)
{
GtkRecentManager *recent_manager;
GFile *file;
char *uri;
ShellRecorder *recorder = pipeline->recorder;
if (pipeline == recorder->current_pipeline)
{
@ -1433,15 +1401,6 @@ recorder_pipeline_closed (RecorderPipeline *pipeline)
shell_recorder_close (recorder);
}
recent_manager = gtk_recent_manager_get_default ();
file = g_file_new_for_path (pipeline->filename);
uri = g_file_get_uri (file);
gtk_recent_manager_add_item (recent_manager,
uri);
g_free (uri);
g_object_unref (file);
recorder->pipelines = g_slist_remove (recorder->pipelines, pipeline);
}
@ -1493,7 +1452,7 @@ recorder_open_pipeline (ShellRecorder *recorder)
GstBus *bus;
pipeline = g_new0(RecorderPipeline, 1);
pipeline->recorder = g_object_ref (recorder);
pipeline->recorder = recorder;
pipeline->outfile = - 1;
pipeline_description = recorder->pipeline_description;
@ -1596,10 +1555,10 @@ shell_recorder_set_framerate (ShellRecorder *recorder,
}
/**
* shell_recorder_set_file_template:
* shell_recorder_set_filename:
* @recorder: the #ShellRecorder
* @file_template: the filename template to use for output files,
* or %NULL for the defalt value.
* @filename: the filename template to use for output files,
* or %NULL for the defalt value.
*
* Sets the filename that will be used when creating output
* files. This is only used if the configured pipeline has an
@ -1614,12 +1573,12 @@ shell_recorder_set_framerate (ShellRecorder *recorder,
* The default value is 'shell-%d%u-%c.ogg'.
*/
void
shell_recorder_set_file_template (ShellRecorder *recorder,
const char *file_template)
shell_recorder_set_filename (ShellRecorder *recorder,
const char *filename)
{
g_return_if_fail (SHELL_IS_RECORDER (recorder));
recorder_set_file_template (recorder, file_template);
recorder_set_filename (recorder, filename);
}
@ -1634,7 +1593,7 @@ shell_recorder_set_file_template (ShellRecorder *recorder,
* should have an unconnected sink pad where the recorded
* video is recorded. It will normally have a unconnected
* source pad; output from that pad will be written into the
* output file. (See shell_recorder_set_file_template().) However
* output file. (See shell_recorder_set_filename().) However
* the pipeline can also take care of its own output - this
* might be used to send the output to an icecast server
* via shout2send or similar.
@ -1730,6 +1689,9 @@ shell_recorder_close (ShellRecorder *recorder)
recorder->repaint_hook_id = 0;
}
recorder_remove_redraw_timeout (recorder);
recorder_close_pipeline (recorder);
recorder->state = RECORDER_STATE_CLOSED;
/* Release the refcount we took when we started recording */

View File

@ -32,8 +32,8 @@ ShellRecorder *shell_recorder_new (ClutterStage *stage);
void shell_recorder_set_framerate (ShellRecorder *recorder,
int framerate);
void shell_recorder_set_file_template (ShellRecorder *recorder,
const char *file_template);
void shell_recorder_set_filename (ShellRecorder *recorder,
const char *filename);
void shell_recorder_set_pipeline (ShellRecorder *recorder,
const char *pipeline);
gboolean shell_recorder_record (ShellRecorder *recorder);

219
src/shell-screen-grabber.c Normal file
View File

@ -0,0 +1,219 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
#include <string.h>
#include <clutter/clutter.h>
#include <cogl/cogl.h>
#include <GL/gl.h>
#include <GL/glx.h>
#include <GL/glext.h>
#include "shell-screen-grabber.h"
PFNGLBINDBUFFERARBPROC pf_glBindBufferARB;
PFNGLBUFFERDATAARBPROC pf_glBufferDataARB;
PFNGLDELETEBUFFERSARBPROC pf_glDeleteBuffersARB;
PFNGLGENBUFFERSARBPROC pf_glGenBuffersARB;
PFNGLMAPBUFFERARBPROC pf_glMapBufferARB;
PFNGLUNMAPBUFFERARBPROC pf_glUnmapBufferARB;
struct _ShellScreenGrabberClass
{
GObjectClass parent_class;
};
struct _ShellScreenGrabber
{
GObject parent_instance;
int have_pixel_buffers;
int have_pack_invert;
int width, height;
GLuint pixel_buffer;
};
G_DEFINE_TYPE(ShellScreenGrabber, shell_screen_grabber, G_TYPE_OBJECT);
static void
shell_screen_grabber_finalize (GObject *gobject)
{
ShellScreenGrabber *grabber = SHELL_SCREEN_GRABBER (gobject);
if (grabber->pixel_buffer != 0)
pf_glDeleteBuffersARB (1, &grabber->pixel_buffer);
}
static void
shell_screen_grabber_class_init (ShellScreenGrabberClass *grabber_class)
{
GObjectClass *gobject_class = G_OBJECT_CLASS (grabber_class);
gobject_class->finalize = shell_screen_grabber_finalize;
}
static void
shell_screen_grabber_init (ShellScreenGrabber *grabber)
{
grabber->have_pixel_buffers = -1;
grabber->width = -1;
grabber->height= -1;
grabber->pixel_buffer = 0;
}
ShellScreenGrabber *
shell_screen_grabber_new (void)
{
return g_object_new (SHELL_TYPE_SCREEN_GRABBER, NULL);
}
/**
* shell_screen_grabber_grab:
* x: X coordinate of the rectangle to grab
* y: Y coordinate of the rectangle to grab
* width: width of the rectangle to grab
* height: heigth of the rectangle to grab
*
* Grabs pixel data from a portion of the screen.
*
* Return value: buffer holding the grabbed data. The data is stored as 32-bit
* words with native-endian xRGB pixels (i.e., the same as CAIRO_FORMAT_RGB24)
* with no padding on the rows. So, the size of the buffer is width * height * 4
* bytes. Free with g_free().
**/
guchar *
shell_screen_grabber_grab (ShellScreenGrabber *grabber,
int x,
int y,
int width,
int height)
{
guchar *data;
gsize row_bytes;
gsize data_size;
row_bytes = width * 4;
data_size = row_bytes * height;
data = g_malloc (data_size);
if (grabber->have_pixel_buffers == -1)
{
const GLubyte* extensions = glGetString (GL_EXTENSIONS);
grabber->have_pixel_buffers = strstr ((const char *)extensions, "GL_EXT_pixel_buffer_object") != NULL;
grabber->have_pack_invert = strstr ((const char *)extensions, "GL_MESA_pack_invert") != NULL;
}
if (grabber->have_pixel_buffers)
{
GLubyte *mapped_data;
GLint old_swap_bytes, old_lsb_first, old_row_length, old_skip_pixels, old_skip_rows, old_alignment;
GLint old_pack_invert = GL_FALSE;
GLint vp_size[4];
guchar *src_row, *dest_row;
int i;
cogl_flush ();
if (pf_glBindBufferARB == NULL)
{
pf_glBindBufferARB = (PFNGLBINDBUFFERARBPROC) cogl_get_proc_address ("glBindBufferARB");
pf_glBufferDataARB = (PFNGLBUFFERDATAARBPROC) cogl_get_proc_address ("glBufferDataARB");
pf_glDeleteBuffersARB = (PFNGLDELETEBUFFERSARBPROC) cogl_get_proc_address ("glDeleteBuffersARB");
pf_glGenBuffersARB = (PFNGLGENBUFFERSARBPROC) cogl_get_proc_address ("glGenBuffersARB");
pf_glMapBufferARB = (PFNGLMAPBUFFERARBPROC) cogl_get_proc_address ("glMapBufferARB");
pf_glUnmapBufferARB = (PFNGLUNMAPBUFFERARBPROC) cogl_get_proc_address ("glUnmapBufferARB");
}
glGetIntegerv (GL_PACK_SWAP_BYTES, &old_swap_bytes);
glGetIntegerv (GL_PACK_LSB_FIRST, &old_lsb_first);
glGetIntegerv (GL_PACK_ROW_LENGTH, &old_row_length);
glGetIntegerv (GL_PACK_SKIP_PIXELS, &old_skip_pixels);
glGetIntegerv (GL_PACK_SKIP_ROWS, &old_skip_rows);
glGetIntegerv (GL_PACK_ALIGNMENT, &old_alignment);
glPixelStorei (GL_PACK_SWAP_BYTES, GL_FALSE);
glPixelStorei (GL_PACK_LSB_FIRST, GL_FALSE);
glPixelStorei (GL_PACK_ROW_LENGTH, 0);
glPixelStorei (GL_PACK_SKIP_PIXELS, 0);
glPixelStorei (GL_PACK_SKIP_ROWS, 0);
glPixelStorei (GL_PACK_ALIGNMENT, 1);
if (grabber->have_pack_invert)
{
glGetIntegerv (GL_PACK_INVERT_MESA, &old_pack_invert);
glPixelStorei (GL_PACK_INVERT_MESA, GL_FALSE);
}
if (grabber->pixel_buffer != 0 &&
(grabber->width != width ||
grabber->height != height))
{
pf_glDeleteBuffersARB (1, &grabber->pixel_buffer);
grabber->pixel_buffer = 0;
}
if (grabber->pixel_buffer == 0)
{
pf_glGenBuffersARB (1, &grabber->pixel_buffer);
pf_glBindBufferARB (GL_PIXEL_PACK_BUFFER_ARB, grabber->pixel_buffer);
pf_glBufferDataARB (GL_PIXEL_PACK_BUFFER_ARB, data_size, 0, GL_STREAM_READ_ARB);
grabber->width = width;
grabber->height = height;
}
else
{
pf_glBindBufferARB (GL_PIXEL_PACK_BUFFER_ARB, grabber->pixel_buffer);
}
/* In OpenGL, (x,y) specifies the bottom-left corner rather than the
* top-left */
glGetIntegerv (GL_VIEWPORT, vp_size);
y = vp_size[3] - (y + height);
/* the "big-endian" version actually works for both, but the litle-endian
* version has been better tested with a range of drivers, so we'll
* keep on using it on little-endian.
*/
#if G_BYTE_ORDER == G_LITTLE_ENDIAN
glReadPixels (x, y, width, height, GL_BGRA, GL_UNSIGNED_BYTE, 0);
#else
glReadPixels (x, y, width, height, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, 0);
#endif
mapped_data = pf_glMapBufferARB (GL_PIXEL_PACK_BUFFER_ARB, GL_READ_ONLY_ARB);
src_row = mapped_data + (height - 1) * row_bytes;
dest_row = data;
for (i = 0; i < height; i++)
{
memcpy (dest_row, src_row, row_bytes);
src_row -= row_bytes;
dest_row += row_bytes;
}
pf_glUnmapBufferARB (GL_PIXEL_PACK_BUFFER_ARB);
pf_glBindBufferARB (GL_PIXEL_PACK_BUFFER_ARB, 0);
glPixelStorei (GL_PACK_SWAP_BYTES, old_swap_bytes);
glPixelStorei (GL_PACK_LSB_FIRST, old_lsb_first);
glPixelStorei (GL_PACK_ROW_LENGTH, old_row_length);
glPixelStorei (GL_PACK_SKIP_PIXELS, old_skip_pixels);
glPixelStorei (GL_PACK_SKIP_ROWS, old_skip_rows);
glPixelStorei (GL_PACK_ALIGNMENT, old_alignment);
if (grabber->have_pack_invert)
glPixelStorei (GL_PACK_INVERT_MESA, old_pack_invert);
}
else
{
cogl_read_pixels (x, y,
width, height,
COGL_READ_PIXELS_COLOR_BUFFER,
CLUTTER_CAIRO_FORMAT_ARGB32,
data);
}
return data;
}

View File

@ -0,0 +1,44 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
#ifndef __SHELL_SCREEN_GRABBER_H__
#define __SHELL_SCREEN_GRABBER_H__
#include <glib-object.h>
G_BEGIN_DECLS
/**
* SECTION:shell-screen-grabber
* @short_description: Grab pixel data from the screen
*
* The #ShellScreenGrabber object is used to download previous drawn
* content to the screen. It internally uses pixel-buffer objects if
* available, otherwise falls back to cogl_read_pixels().
*
* If you are repeatedly grabbing images of the same size from the
* screen, it makes sense to create one #ShellScreenGrabber and keep
* it around. Otherwise, it's fine to simply create one as needed and
* then get rid of it.
*/
typedef struct _ShellScreenGrabber ShellScreenGrabber;
typedef struct _ShellScreenGrabberClass ShellScreenGrabberClass;
#define SHELL_TYPE_SCREEN_GRABBER (shell_screen_grabber_get_type ())
#define SHELL_SCREEN_GRABBER(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), SHELL_TYPE_SCREEN_GRABBER, ShellScreenGrabber))
#define SHELL_SCREEN_GRABBER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SHELL_TYPE_SCREEN_GRABBER, ShellScreenGrabberClass))
#define SHELL_IS_SCREEN_GRABBER(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), SHELL_TYPE_SCREEN_GRABBER))
#define SHELL_IS_SCREEN_GRABBER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SHELL_TYPE_SCREEN_GRABBER))
#define SHELL_SCREEN_GRABBER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SHELL_TYPE_SCREEN_GRABBER, ShellScreenGrabberClass))
GType shell_screen_grabber_get_type (void) G_GNUC_CONST;
ShellScreenGrabber *shell_screen_grabber_new (void);
guchar * shell_screen_grabber_grab (ShellScreenGrabber *grabber,
int x,
int y,
int width,
int height);
G_END_DECLS
#endif /* __SHELL_SCREEN_GRABBER_H__ */

Some files were not shown because too many files have changed in this diff Show More