Compare commits

...

36 Commits

Author SHA1 Message Date
Pedro Albuquerque
6f0114aec0 Updated Portuguese translation 2015-10-07 07:17:55 +00:00
Pedro Albuquerque
d967ff163b Updated Portuguese translation 2015-10-07 06:30:22 +00:00
Cédric Valmary
8d3f41c785 Added Occitan translation 2015-05-16 07:18:19 +00:00
Mattias Põldaru
97315beca3 [l10n] Updated Estonian translation 2015-04-08 20:42:15 +03:00
Ryan Lortie
56194ae596 network: properly remove connections from list
Due to a typo we were always removing the first (index 0) connection
from the global list of connections instead of the correct one.

This resulted in some connections remaining in the shell's connection
list long after they were removed.  In particular, this resulted in
multiple copies of a bluetooth connection appearing after suspend/resume
(when the device was readded and the cached connection list was
rescanned).

https://bugzilla.gnome.org/show_bug.cgi?id=740227
(cherry picked from commit 3d4408dce8)
2014-11-21 14:17:00 -06:00
Giovanni Campagna
630ad8fd05 ScreenShield: remove obsolete comment and hack
We don't need to wait to until the stage window is mapped to take
the modal grab, because that code now runs in a startup-prepared
signal handler, which in turn runs some time after the mainloop
has started and well after the stage window is mapped.

https://bugzilla.gnome.org/show_bug.cgi?id=711682
2014-07-31 16:56:48 +02:00
Adel Gadllah
2ed619f5de st-scroll-view-fade: Refuse to work without GLSL
Disable the effect when GLSL is not available otherwise we will
crash later.

https://bugzilla.gnome.org/show_bug.cgi?id=733623
2014-07-24 16:56:39 +02:00
Bastien Nocera
17c9f88d87 system: Fix orientation lock never appearing
Typos meant that the orientation service was never detected as running
and that the orientation lock menu item didn't appear.

https://bugzilla.gnome.org/show_bug.cgi?id=733498
2014-07-21 16:07:08 +02:00
Simon McVittie
c95432f3af Specifically ask for Telepathy 0.x
Telepathy 1.0 will not be compatible, and will probably require
source changes. telepathy-glib 0.12 and telepathy-logger 0.2 are
the 0.x ABIs (they were the first stable-branches to have g-i).

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=721704
Reviewed-by: Giovanni Campagna
2014-03-25 17:19:48 +00:00
Jasper St. Pierre
a3d9946803 shell-global: Only set the scale factor if get_setting succeeded
If gdk_screen_get_setting fails, like if it's running without XSettings,
then the GValue will have a value of 0. A lot of code tries to divide by
the scale factor. This produces NaN, and combined with the fact that NaN
is "leaky", we very quickly end up spinning out of control.
2014-03-13 13:37:29 +01:00
Ville-Pekka Vainio
a745c1fe32 Finnish translation update by Jiri Grönroos 2014-03-02 10:51:48 +02:00
Adel Gadllah
45041b4215 perf: Restore shell after runs
Currently running the perf tool results into no wm running
afterwards making it hard for the user to get the results from a terminal
and generally does not make it easy for users to run it to gather numbers.

So restore the shell after the test has completed.

https://bugzilla.gnome.org/show_bug.cgi?id=724870
2014-02-28 21:41:49 +01:00
Florian Müllner
0dab133fe5 windowManager: Activate new workspace before removing the current one
When removing the current workspace, the active workspace is changed
to the preceding one automatically before we change explicitly to the
last workspace. There is no good reason to change workspaces twice in
this case, we can avoid the first one just by changing to the new
workspace before removing any workspaces.

https://bugzilla.gnome.org/show_bug.cgi?id=709064
2014-02-19 21:17:33 +01:00
Florian Müllner
4a9ffb5e2f Bump version to 3.10.4
Update NEWS.
2014-02-19 20:09:53 +01:00
Florian Müllner
4d72af73c8 window-tracker: Be more cautious when setting focus app
Since we started tracking non-interesting windows, we can no longer
assume that if we manage to find an app associated with the focus window,
it should appear focused - we now can find apps for docks, the DESKTOP
window etc.
To restore the old behavior, make sure that the focus window or one of
its parents is "interesting".

https://bugzilla.gnome.org/show_bug.cgi?id=722928
2014-02-19 02:15:39 +01:00
Adel Gadllah
cd40011e36 shell_global: Use correct agruments for in update_scale_factor
Otherwise we crash ...

https://bugzilla.gnome.org/show_bug.cgi?id=705410
2014-02-18 23:39:33 +01:00
Adel Gadllah
9e05e87b5c hdpi: Revert hacks
Revert the hacks that where added in response to a bug caused by
commit ba459f4d20

https://bugzilla.gnome.org/show_bug.cgi?id=705410
2014-02-18 23:39:33 +01:00
Adel Gadllah
03b46a5510 layout: Don't query the monitor size twice 2014-02-17 13:43:25 +01:00
Adel Gadllah
e5c982351f layout: Protect against broken monitor size reports
VNC / XRDP reports nonsensial (i.e 0) monitor dimensions causing us to
end up with a dpi of "Infinity" and thus scale even though we shouldn't.

https://bugzilla.redhat.com/show_bug.cgi?id=1065788
2014-02-17 13:43:13 +01:00
Adel Gadllah
470889f1c3 layout: Set high dpi scaling factor
Set the scaling factor when the dpi is above the hidpi threshold.

https://bugzilla.gnome.org/show_bug.cgi?id=705410
2014-02-15 13:17:40 +01:00
Adel Gadllah
a6fb49b1e2 st: Add high dpi support
Add a scale_factor property to StThemeContext that can
be used to enable (integer) scaling of pixel values.

https://bugzilla.gnome.org/show_bug.cgi?id=705410
2014-02-15 13:17:23 +01:00
Giovanni Campagna
1e40de3779 Don't send all debug messages to Telepathy
The log handler can be invoked at bad times, and in particular
it can be invoked from gsignal with the signal lock taken.
At that time, calling into arbitrary high-level APIs can
cause a dead-lock.
Instead, only send to telepathy the tp-glib debug messages.
Everything else is in the journal anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=724256
2014-02-13 13:06:17 +01:00
Jasper St. Pierre
a5370ce3bd shell-app: Don't crash when trying to dispose
If we dispose a ShellApp that has windows left, then we'll crash
when we remove the last window, as that frees and NULLs out
app->running_state.

https://bugzilla.gnome.org/show_bug.cgi?id=723197
2014-02-06 17:41:50 +01:00
A S Alam
312a749920 update translation for 3.10 branch 2014-02-01 17:13:27 -06:00
A S Alam
ae62bfa12d update Punjabi Translation for Branch 2014-02-01 16:56:19 -06:00
Florian Müllner
c5c3dd0997 shell-app: Track changes to MetaWindow:skip-taskbar
So far we have assumed that whether or not a window is interesting
is static. In general this is the case, but as it is legal for the
underlying properties to change at any time, there are of course
offenders that actually do this (flash I'm looking at ya).
While we used the property to determine whether a window should be
tracked or not, the worst case was showing windows that should be
hidden or missing windows that should be shown.
However as we nowadays base an app's running state on the number of
interesting windows, we need to be more careful in order to avoid
ending up with running apps with no windows.

https://bugzilla.gnome.org/show_bug.cgi?id=723308
2014-01-31 14:00:10 +01:00
Florian Müllner
64b31e9770 window-tracker: Use MetaWindow:skip-taskbar
The code from shell_window_tracker_is_window_interesting() is equivalent
of MetaWindow's skip-taskbar property, so use it to avoid code duplication.

https://bugzilla.gnome.org/show_bug.cgi?id=723308
2014-01-31 10:16:00 +01:00
Stas Solovey
75a5f1accb Fixed Russian translation 2014-01-28 22:15:47 +04:00
Florian Müllner
a6d0e89ecb shell-app: Unref running state when window count drops to zero
With the lastest ShellApp changes, an app is considered stopped
when the last "interesting" window is closed. However the app
may still track non-interesting windows, so if we unref the
running state on the state transition, we hit an assertion later-on
when trying to remove the non-interesting window.
Fix this by keeping the running state around until the last window
is closed.

https://bugzilla.gnome.org/show_bug.cgi?id=722840
2014-01-23 12:46:29 -05:00
Nilamdyuti Goswami
a9d6cc921e Assamese translation updated 2014-01-23 19:08:39 +05:30
Florian Müllner
b84822b725 shell-app: Base running state on "interesting" windows
An app should be considered running if it has at least one "interesting"
window, however the code considers an app running if it has at least
one tracked window. This was fine while we were only tracking interesting
windows, but since commit d21aa0d85f this is no longer the case.
So keep track of the number of interesting windows as well and use that
to determine the running state.

https://bugzilla.gnome.org/show_bug.cgi?id=722690
2014-01-22 22:17:44 +01:00
Florian Müllner
b28ea8ac92 altTab: Always filter out items with no windows
When restricting the switcher popup to the current workspace, we
filter out running apps with an empty window list (namely: no open
windows on the current workspace). However we may end up with an
empty window list even when not restricting items to the current
workspace when all windows of a running app are associated with a
different application via the transient_for hint.
To fix this, just filter out items with an empty window list
unconditionally.

https://bugzilla.gnome.org/show_bug.cgi?id=722434
2014-01-22 13:59:25 -05:00
Florian Müllner
6b34937ead window-tracker: Always enable transient_for redirection
It is possible to associate an application's window with a different
application using the transient_for hint. However we currently only
consider the hint in get_window_app() and not when making the original
association, which opens the door to some confusing inconsistencies;
for instance, get_window_app() will not necessarily return the same
value for all windows retrieved via shell_app_get_windows().
Fix this by looking at the transient_for hint when making the original
association, not just in get_window_app().

https://bugzilla.gnome.org/show_bug.cgi?id=722434
2014-01-22 13:59:25 -05:00
Florian Müllner
1118cf1810 switcherPopup: Fix spacing calculation for empty lists
Without special-casing, our current spacing calculation results in
negative size requests for empty lists, which will trigger a Clutter
assert later.
While the list is never supposed to be empty, bugs happen; crashing
users' systems is the least graceful way of handling this, so don't
do it.

https://bugzilla.gnome.org/show_bug.cgi?id=722434
2014-01-22 13:59:25 -05:00
Giovanni Campagna
d981515b08 Notification: don't expand the content on a destroyed notification
If the notification is destroyed between an allocate and the redraw,
the meta_later is invoked on a destroyed object, and fails because
the clutter calls are invalid at that point.

https://bugzilla.gnome.org/show_bug.cgi?id=722547
2014-01-19 16:01:00 +01:00
Giovanni Campagna
e78c59a4a8 ShellTrayIcon: forward key presses too
StWidget::popup-menu is emitted when Menu/<Shift>F10 is pressed,
not released (for consistency with Gtk+), so we need to forward
that. Note that for key press we don't emit the matching key
release, because the app will take a grab and get the event directly
from X when the key is physicall released.

https://bugzilla.gnome.org/show_bug.cgi?id=721267
2014-01-19 15:52:38 +01:00
27 changed files with 4070 additions and 863 deletions

14
NEWS
View File

@@ -1,3 +1,17 @@
3.10.4
======
* Fix keyboard activation of legacy tray icons [Giovanni; #721267]
* Fix regressions from window-tracking changes in 3.10.3 [Florian; #722434,
#722690, #722840, #723308, #722928]
* Scale UI on high-resolution displays [Adel; #705410]
* Misc. bug fixes [Giovanni, Jasper; #722547, #723197, #724256]
Contributors:
Giovanni Campagna, Adel Gadllah, Florian Müllner, Jasper St. Pierre
Translations:
Nilamdyuti Goswami [as], Stas Solovey [ru], A S Alam [pa]
3.10.3
======
* Fix reentrancy issue in message tray [Jasper; #711694]

View File

@@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.10.3],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[3.10.4],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_SRCDIR([src/shell-global.c])
@@ -60,7 +60,7 @@ AM_CONDITIONAL(BUILD_RECORDER, $build_recorder)
CLUTTER_MIN_VERSION=1.13.4
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
GJS_MIN_VERSION=1.38.1
MUTTER_MIN_VERSION=3.10.1
MUTTER_MIN_VERSION=3.10.4
GTK_MIN_VERSION=3.7.9
GIO_MIN_VERSION=2.37.0
LIBECAL_MIN_VERSION=3.5.3

View File

@@ -454,9 +454,10 @@ const AppSwitcher = new Lang.Class({
appIcon.cachedWindows = allWindows.filter(function(w) {
return windowTracker.get_window_app (w) == appIcon.app;
});
if (workspace == null || appIcon.cachedWindows.length > 0) {
if (appIcon.cachedWindows.length > 0)
this._addIcon(appIcon);
}
else if (workspace == null)
throw new Error('%s appears to be running, but doesn\'t have any windows'.format(appIcon.app.get_name()));
}
this._curApp = -1;

View File

@@ -5,6 +5,8 @@ imports.gi.versions.Gio = '2.0';
imports.gi.versions.Gdk = '3.0';
imports.gi.versions.GdkPixbuf = '2.0';
imports.gi.versions.Gtk = '3.0';
imports.gi.versions.TelepathyGLib = '0.12';
imports.gi.versions.TelepathyLogger = '0.2';
const Clutter = imports.gi.Clutter;;
const Gettext = imports.gettext;

View File

@@ -1026,6 +1026,9 @@ const Notification = new Lang.Class({
Meta.later_add(Meta.LaterType.BEFORE_REDRAW,
Lang.bind(this,
function() {
if (this._destroyed)
return false;
if (this._canExpandContent()) {
this._addBannerBody();
this._table.add_style_class_name('multi-line-notification');

View File

@@ -905,17 +905,11 @@ const ScreenShield = new Lang.Class({
},
showDialog: function() {
// 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._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;
}));
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);
}
this.actor.show();
this._isGreeter = Main.sessionMode.isGreeter;

View File

@@ -1591,7 +1591,7 @@ const NMApplet = new Lang.Class({
_connectionRemoved: function(connection) {
let pos = this._connections.indexOf(connection);
if (pos != -1)
this._connections.splice(connection, 1);
this._connections.splice(pos, 1);
let section = connection._section;

View File

@@ -148,11 +148,11 @@ const Indicator = new Lang.Class({
Gio.DBus.session.watch_name('org.gnome.SettingsDaemon.Orientation',
Gio.BusNameWatcherFlags.NONE,
Lang.bind(this, function() {
this._orentationExists = true;
this._orientationExists = true;
this._updateOrientationLock();
}),
Lang.bind(this, function() {
this._orentationExists = false;
this._orientationExists = false;
this._updateOrientationLock();
}));
this._updateOrientationLock();

View File

@@ -509,7 +509,7 @@ const SwitcherList = new Lang.Class({
_getPreferredWidth: function (actor, forHeight, alloc) {
let [maxChildMin, maxChildNat] = this._maxChildWidth(forHeight);
let totalSpacing = this._list.spacing * (this._items.length - 1);
let totalSpacing = Math.max(this._list.spacing * (this._items.length - 1), 0);
alloc.min_size = this._items.length * maxChildMin + totalSpacing;
alloc.natural_size = alloc.min_size;
this._minSize = alloc.min_size;
@@ -539,7 +539,7 @@ const SwitcherList = new Lang.Class({
let childHeight = box.y2 - box.y1;
let [maxChildMin, maxChildNat] = this._maxChildWidth(childHeight);
let totalSpacing = this._list.spacing * (this._items.length - 1);
let totalSpacing = Math.max(this._list.spacing * (this._items.length - 1), 0);
let childWidth = Math.floor(Math.max(0, box.x2 - box.x1 - totalSpacing) / this._items.length);

View File

@@ -254,6 +254,8 @@ const WorkspaceTracker = new Lang.Class({
if (removingCurrentWorkspace) {
// "Merge" the empty workspace we are removing with the one at the end
this._wm.blockAnimations();
global.screen.get_workspace_by_index(global.screen.n_workspaces - 1).activate(global.get_current_time());
this._wm.unblockAnimations();
}
// Delete other empty workspaces; do it from the end to avoid index changes
@@ -262,11 +264,6 @@ const WorkspaceTracker = new Lang.Class({
global.screen.remove_workspace(this._workspaces[i], global.get_current_time());
}
if (removingCurrentWorkspace) {
global.screen.get_workspace_by_index(global.screen.n_workspaces - 1).activate(global.get_current_time());
this._wm.unblockAnimations();
}
this._checkWorkspacesId = 0;
return false;
},

View File

@@ -46,6 +46,7 @@ ms
nb
nl
nn
oc
or
pa
pl

350
po/as.po
View File

@@ -3,14 +3,14 @@
# This file is distributed under the same license as the gnome-shell package.
#
# ngoswami <ngoswami@redhat.com>, 2011.
# Nilamdyuti Goswami <ngoswami@redhat.com>, 2011, 2012, 2013.
# Nilamdyuti Goswami <ngoswami@redhat.com>, 2011, 2012, 2013, 2014.
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2013-09-28 19:49+0000\n"
"PO-Revision-Date: 2013-09-30 13:31+0530\n"
"POT-Creation-Date: 2014-01-19 14:53+0000\n"
"PO-Revision-Date: 2014-01-23 19:08+0630\n"
"Last-Translator: Nilamdyuti Goswami <ngoswami@redhat.com>\n"
"Language-Team: Assamese <kde-i18n-doc@kde.org>\n"
"Language: as_IN\n"
@@ -279,23 +279,23 @@ msgstr ""
msgid "Select an extension to configure using the combobox above."
msgstr "উপৰত দিয়া কম্বোবাকচ ব্যৱহাৰ কৰি সংৰূপণ কৰিবলে এটা সম্প্ৰসাৰন বাছক।"
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/gdm/authPrompt.js:146 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:692
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:739
msgid "Cancel"
msgstr "বাতিল কৰক"
#: ../js/gdm/authPrompt.js:167 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:168 ../js/gdm/authPrompt.js:216
msgid "Next"
msgstr "পৰৱৰ্তী"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "আনলক কৰক"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:214
msgctxt "button"
msgid "Sign In"
msgstr "ছাইন ইন কৰক"
@@ -322,23 +322,23 @@ msgstr "ব্যৱহাৰকাৰীৰ নাম: "
msgid "Login Window"
msgstr "লগিন উইন্ডো"
#: ../js/gdm/util.js:306
#: ../js/gdm/util.js:321
msgid "Authentication error"
msgstr "প্ৰমাণীকৰণ ত্ৰুটি"
#: ../js/gdm/util.js:436
#: ../js/gdm/util.js:451
msgid "(or swipe finger)"
msgstr "(অথবা আঙুলি স্বাইপ কৰক)"
#: ../js/misc/util.js:98
#: ../js/misc/util.js:115
msgid "Command not found"
msgstr "কমান্ড পোৱা নগল"
#: ../js/misc/util.js:131
#: ../js/misc/util.js:148
msgid "Could not parse command:"
msgstr "কমান্ড বিশ্লেষন কৰিব নোৱাৰি:"
#: ../js/misc/util.js:139
#: ../js/misc/util.js:156
#, javascript-format
msgid "Execution of '%s' failed:"
msgstr "'%s' ৰ প্ৰেৰণ ব্যৰ্থ হল:"
@@ -355,15 +355,15 @@ msgstr "সঘন"
msgid "All"
msgstr "সকলো"
#: ../js/ui/appDisplay.js:1514
#: ../js/ui/appDisplay.js:1525
msgid "New Window"
msgstr "নতুন উইন্ডো"
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1528 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "পছন্দৰ পৰা আতৰাওক"
#: ../js/ui/appDisplay.js:1518
#: ../js/ui/appDisplay.js:1529
msgid "Add to Favorites"
msgstr "পছন্দলে যোগ কৰক"
@@ -377,8 +377,8 @@ msgstr "%s ক আপোনাৰ পছন্দলে যোগ কৰা হ
msgid "%s has been removed from your favorites."
msgstr "%s ক আপোনাৰ পছন্দৰ পৰা আতৰোৱা হৈছে।"
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
#: ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:806
#: ../js/ui/status/system.js:334
msgid "Settings"
msgstr "সংহতিসমূহ"
@@ -568,16 +568,16 @@ msgstr "%s ৰ সৈতে খোলক"
msgid "Eject"
msgstr "উলিৱাওক"
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:89 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "পাছৱাৰ্ড:"
#: ../js/ui/components/keyring.js:110
#: ../js/ui/components/keyring.js:108
msgid "Type again:"
msgstr "আকৌ টাইপ কৰক:"
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:695
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:132
#: ../js/ui/status/network.js:295 ../js/ui/status/network.js:742
msgid "Connect"
msgstr "সংযোগ কৰক"
@@ -671,60 +671,60 @@ msgstr "প্ৰমাণীত কৰক"
msgid "Sorry, that didn't work. Please try again."
msgstr "ক্ষমা কৰিব, সেয়া কাম নকৰিলে। অনুগ্ৰহ কৰি পুনৰ চেষ্টা কৰক।"
#: ../js/ui/components/telepathyClient.js:238
#: ../js/ui/components/telepathyClient.js:237
msgid "Invitation"
msgstr "নিমন্ত্ৰণ"
#: ../js/ui/components/telepathyClient.js:298
#: ../js/ui/components/telepathyClient.js:297
msgid "Call"
msgstr "কল"
#: ../js/ui/components/telepathyClient.js:314
#: ../js/ui/components/telepathyClient.js:313
msgid "File Transfer"
msgstr "ফাইল স্থানান্তৰ"
#: ../js/ui/components/telepathyClient.js:418
#: ../js/ui/components/telepathyClient.js:417
msgid "Chat"
msgstr "চেট"
#: ../js/ui/components/telepathyClient.js:480
#: ../js/ui/components/telepathyClient.js:479
msgid "Unmute"
msgstr "অমৌন কৰক"
#: ../js/ui/components/telepathyClient.js:480
#: ../js/ui/components/telepathyClient.js:479
msgid "Mute"
msgstr "মোন কৰক"
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
#: ../js/ui/components/telepathyClient.js:942
#: ../js/ui/components/telepathyClient.js:941
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
msgstr "<b>যোৱাকালী</b>, <b>%H:%M</b>"
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:947
msgid "<b>%A</b>, <b>%H:%M</b>"
msgstr "<b>%A</b>, <b>%H:%M</b>"
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
#: ../js/ui/components/telepathyClient.js:953
#: ../js/ui/components/telepathyClient.js:952
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
msgstr "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
#: ../js/ui/components/telepathyClient.js:957
#: ../js/ui/components/telepathyClient.js:956
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
msgstr "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:986
#: ../js/ui/components/telepathyClient.js:985
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s এতিয়া %s হিচাপে জনাজাত"
#. translators: argument is a room name like
#. * room@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1089
#: ../js/ui/components/telepathyClient.js:1088
#, javascript-format
msgid "Invitation to %s"
msgstr "%s লে নিমন্ত্ৰণ"
@@ -732,38 +732,38 @@ msgstr "%s লে নিমন্ত্ৰণ"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example. */
#: ../js/ui/components/telepathyClient.js:1097
#: ../js/ui/components/telepathyClient.js:1096
#, javascript-format
msgid "%s is inviting you to join %s"
msgstr "%s এ আপোনাক %s ত অংশগ্ৰহণ কৰিবলে আমন্ত্ৰণ জনাইছে"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1140
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "নাকচ কৰক"
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
#: ../js/ui/components/telepathyClient.js:1099
#: ../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:1130
#: ../js/ui/components/telepathyClient.js:1129
#, javascript-format
msgid "Video call from %s"
msgstr "%s ৰ পৰা ভিডিঅ' কল"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1133
#: ../js/ui/components/telepathyClient.js:1132
#, javascript-format
msgid "Call from %s"
msgstr "%s ৰ পৰা কল"
#. translators: this is a button label (verb), not a noun */
#: ../js/ui/components/telepathyClient.js:1142
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "উত্তৰ দিয়ক"
@@ -772,110 +772,110 @@ msgstr "উত্তৰ দিয়ক"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#. */
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1173
#, javascript-format
msgid "%s is sending you %s"
msgstr "%s এ আপোনাক %s পঠাই আছে"
#. To translators: The parameter is the contact's alias */
#: ../js/ui/components/telepathyClient.js:1209
#: ../js/ui/components/telepathyClient.js:1208
#, javascript-format
msgid "%s would like permission to see when you are online"
msgstr "আপুনি কেতিয়া অনলাইন আছে চাবলে %s এ অনুমতি বিচাৰিব"
#: ../js/ui/components/telepathyClient.js:1301
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "নেটৱাৰ্ক ত্ৰুটি"
#: ../js/ui/components/telepathyClient.js:1303
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "প্ৰমাণীকৰণ ব্যৰ্থ"
#: ../js/ui/components/telepathyClient.js:1305
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "ইনক্ৰিপষণ ত্ৰুটি"
#: ../js/ui/components/telepathyClient.js:1307
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "প্ৰমাণপত্ৰ প্ৰদান কৰা হোৱা নাই"
#: ../js/ui/components/telepathyClient.js:1309
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "প্ৰমাণপত্ৰক ভৰষা কৰিব নোৱাৰি"
#: ../js/ui/components/telepathyClient.js:1311
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "প্ৰমাণপত্ৰৰ অৱসান ঘটিছে"
#: ../js/ui/components/telepathyClient.js:1313
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "প্ৰমাণপত্ৰ সক্ৰিয় কৰা হোৱা নাই"
#: ../js/ui/components/telepathyClient.js:1315
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "প্ৰমাণপত্ৰ হস্টনাম অমিল"
#: ../js/ui/components/telepathyClient.js:1317
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "প্ৰমাণপত্ৰ ফিংগাৰপ্ৰিন্ট অমিল"
#: ../js/ui/components/telepathyClient.js:1319
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "প্ৰমাণপত্ৰ স্ব-স্বাক্ষৰীত"
#: ../js/ui/components/telepathyClient.js:1321
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "অৱস্থা অফলাইনলে সংহতি কৰা হৈছে"
#: ../js/ui/components/telepathyClient.js:1323
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "ইনক্ৰিপষণ উপলব্ধ নহয়"
#: ../js/ui/components/telepathyClient.js:1325
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "প্ৰমাণপত্ৰ অবৈধ"
#: ../js/ui/components/telepathyClient.js:1327
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "সংযোগ নাকচ কৰা হৈছে"
#: ../js/ui/components/telepathyClient.js:1329
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "সংযোগ স্থাপন কৰিব নোৱাৰি"
#: ../js/ui/components/telepathyClient.js:1331
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "সংযোগ হেৰাইছে"
#: ../js/ui/components/telepathyClient.js:1333
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "এই একাওন্ট ইতিমধ্যে চাৰ্ভাৰৰ সৈতে সংযোগিত"
#: ../js/ui/components/telepathyClient.js:1335
#: ../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:1337
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "একাওন্ট ইতিমধ্যে চাৰ্ভাৰত উপস্থিত"
#: ../js/ui/components/telepathyClient.js:1339
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "চাৰ্ভাৰ সংযোগ ব্যৱস্থাপনা কৰিবলে বৰ্তমানে অতি ব্যস্ত"
#: ../js/ui/components/telepathyClient.js:1341
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "প্ৰমাণপত্ৰ প্ৰত্যাহাৰ কৰা হৈছে"
#: ../js/ui/components/telepathyClient.js:1343
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr ""
"প্ৰমাণপত্ৰয় এটা অসুৰক্ষিত চিফাৰ এলগৰিথম ব্যৱহাৰ কৰে অথবা ক্ৰিপ্টোগ্ৰাফিয়ভাৱে "
"দুৰ্বল"
#: ../js/ui/components/telepathyClient.js:1345
#: ../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"
@@ -884,22 +884,22 @@ msgstr ""
"ক্ৰিপ্টোগ্ৰাফী "
"লাইব্ৰেৰীয়ে প্ৰণয়ন কৰা সীমাসমূহত অতিক্ৰম কৰে"
#: ../js/ui/components/telepathyClient.js:1347
#: ../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:1357
#: ../js/ui/components/telepathyClient.js:1356
#, javascript-format
msgid "Unable to connect to %s"
msgstr "%s ৰ সৈতে সংযোগ কৰিবলে অক্ষম"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1361
msgid "View account"
msgstr "একাওন্ট দৰ্শন কৰক"
#: ../js/ui/components/telepathyClient.js:1401
#: ../js/ui/components/telepathyClient.js:1400
msgid "Unknown reason"
msgstr "অজ্ঞাত কাৰণ"
@@ -1075,9 +1075,12 @@ msgstr "ত্ৰুটিসমূহ দেখুৱাওক"
msgid "Enabled"
msgstr "সামৰ্থবান কৰা আছে"
#. Translators: this is for a network device that cannot be activated
#. because it's disabled by rfkill (airplane mode) */
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:765 ../src/gvc/gvc-mixer-control.c:1830
#: ../js/ui/lookingGlass.js:765 ../js/ui/status/network.js:472
#: ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "অসামৰ্থবান কৰা আছে"
@@ -1101,44 +1104,48 @@ msgstr "উৎস দৰ্শন কৰক"
msgid "Web Page"
msgstr "ৱেব পৃষ্ঠা"
#: ../js/ui/messageTray.js:1222
#: ../js/ui/messageTray.js:1347
msgid "Open"
msgstr "খোলক"
#: ../js/ui/messageTray.js:1229
#: ../js/ui/messageTray.js:1354
msgid "Remove"
msgstr "আতৰাওক"
#: ../js/ui/messageTray.js:1513
#: ../js/ui/messageTray.js:1657
msgid "Notifications"
msgstr "অধিসূচনাসমূহ"
#: ../js/ui/messageTray.js:1664
msgid "Clear Messages"
msgstr "বাৰ্তাসমূহ পৰিষ্কাৰ কৰক"
#: ../js/ui/messageTray.js:1540
#: ../js/ui/messageTray.js:1683
msgid "Notification Settings"
msgstr "অধিসূচনা সংহতিসমূহ"
#: ../js/ui/messageTray.js:1559
#: ../js/ui/messageTray.js:1736
msgid "Tray Menu"
msgstr "ট্ৰে মেনু"
#: ../js/ui/messageTray.js:1775
#: ../js/ui/messageTray.js:1952
msgid "No Messages"
msgstr "কোনো বাৰ্তা নাই"
#: ../js/ui/messageTray.js:1813
#: ../js/ui/messageTray.js:1990
msgid "Message Tray"
msgstr "বাৰ্তা ট্ৰে"
#: ../js/ui/messageTray.js:2788
#: ../js/ui/messageTray.js:2974
msgid "System Information"
msgstr "চিস্টেম তথ্য"
#: ../js/ui/notificationDaemon.js:629 ../src/shell-app.c:396
#: ../js/ui/notificationDaemon.js:510 ../src/shell-app.c:396
msgctxt "program"
msgid "Unknown"
msgstr "অজ্ঞাত"
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
#: ../js/ui/overviewControls.js:488 ../js/ui/screenShield.js:153
#, javascript-format
msgid "%d new message"
msgid_plural "%d new messages"
@@ -1161,21 +1168,21 @@ msgstr "অভাৰভিউ"
msgid "Type to search…"
msgstr "সন্ধান কৰিবলে টাইপ কৰক…"
#: ../js/ui/panel.js:518
#: ../js/ui/panel.js:516
msgid "Quit"
msgstr "প্ৰস্থান কৰক"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview". */
#: ../js/ui/panel.js:570
#: ../js/ui/panel.js:568
msgid "Activities"
msgstr "কাৰ্য্যসমূহ"
#: ../js/ui/panel.js:904
#: ../js/ui/panel.js:900
msgid "Top Bar"
msgstr "উপৰৰ বাৰ"
#: ../js/ui/popupMenu.js:233
#: ../js/ui/popupMenu.js:260
msgid "toggle-switch-us"
msgstr "toggle-switch-us"
@@ -1189,30 +1196,30 @@ msgstr "বন্ধ কৰক"
#. Translators: This is a time format for a date in
#. long format */
#: ../js/ui/screenShield.js:88
#: ../js/ui/screenShield.js:89
msgid "%A, %B %d"
msgstr "%A, %B %d"
#: ../js/ui/screenShield.js:154
#: ../js/ui/screenShield.js:155
#, javascript-format
msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "%d নতুন অধিসূচনা"
msgstr[1] "%d নতুন অধিসূচনাসমূহ"
#: ../js/ui/screenShield.js:477 ../js/ui/status/system.js:333
#: ../js/ui/screenShield.js:478 ../js/ui/status/system.js:342
msgid "Lock"
msgstr "লক কৰক"
#: ../js/ui/screenShield.js:704
#: ../js/ui/screenShield.js:712
msgid "GNOME needs to lock the screen"
msgstr "GNOME এ পৰ্দা লক কৰিব লাগিব"
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
#: ../js/ui/screenShield.js:839 ../js/ui/screenShield.js:1305
msgid "Unable to lock"
msgstr "লক কৰিবলে অক্ষম"
#: ../js/ui/screenShield.js:832 ../js/ui/screenShield.js:1298
#: ../js/ui/screenShield.js:840 ../js/ui/screenShield.js:1306
msgid "Lock was blocked by an application"
msgstr "লক কাৰ্য্য এটা এপ্লিকেচন দ্বাৰা প্ৰতিৰোধ কৰা হৈছিল"
@@ -1252,135 +1259,135 @@ msgstr "পাছৱাৰ্ড মনত ৰাখক"
msgid "Accessibility"
msgstr "অভিগম্যতা"
#: ../js/ui/status/accessibility.js:58
#: ../js/ui/status/accessibility.js:56
msgid "Zoom"
msgstr "জুম কৰক"
#: ../js/ui/status/accessibility.js:65
#: ../js/ui/status/accessibility.js:63
msgid "Screen Reader"
msgstr "পৰ্দা ৰিডাৰ"
#: ../js/ui/status/accessibility.js:69
#: ../js/ui/status/accessibility.js:67
msgid "Screen Keyboard"
msgstr "পৰ্দা কিবৰ্ড"
#: ../js/ui/status/accessibility.js:73
#: ../js/ui/status/accessibility.js:71
msgid "Visual Alerts"
msgstr "চক্ষ সতৰ্কবাৰ্তাসমূহ"
#: ../js/ui/status/accessibility.js:76
#: ../js/ui/status/accessibility.js:74
msgid "Sticky Keys"
msgstr "স্টিকি কি'সমূহ"
#: ../js/ui/status/accessibility.js:79
#: ../js/ui/status/accessibility.js:77
msgid "Slow Keys"
msgstr "মন্থৰ কি'সমূহ"
#: ../js/ui/status/accessibility.js:82
#: ../js/ui/status/accessibility.js:80
msgid "Bounce Keys"
msgstr "বাউঞ্চ কি'সমূহ"
#: ../js/ui/status/accessibility.js:85
#: ../js/ui/status/accessibility.js:83
msgid "Mouse Keys"
msgstr "মাউছ কি'সমূহ"
#: ../js/ui/status/accessibility.js:144
#: ../js/ui/status/accessibility.js:142
msgid "High Contrast"
msgstr "উচ্চ কন্ট্ৰাস্ট"
#: ../js/ui/status/accessibility.js:193
#: ../js/ui/status/accessibility.js:191
msgid "Large Text"
msgstr "ডাঙৰ লিখনী"
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:27 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
msgid "Bluetooth"
msgstr "ব্লুটুথ"
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:1040 ../js/ui/status/rfkill.js:46
#: ../js/ui/status/bluetooth.js:29 ../js/ui/status/network.js:132
#: ../js/ui/status/network.js:1099 ../js/ui/status/rfkill.js:46
msgid "Turn Off"
msgstr "বন্ধ কৰক"
#: ../js/ui/status/bluetooth.js:33
#: ../js/ui/status/bluetooth.js:32
msgid "Bluetooth Settings"
msgstr "ব্লুটুথ সংহতিসমূহ"
#: ../js/ui/status/bluetooth.js:58
#: ../js/ui/status/bluetooth.js:57
#, javascript-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d সংযুক্ত ডিভাইচ"
msgstr[1] "%d সংযুক্ত ডিভাইচসমূহ"
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#, javascript-format
msgid "Authorization request from %s"
msgstr "%s ৰ পৰা প্ৰমাণীকৰণ অনুৰোধ"
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
#, javascript-format
msgid "Device %s wants to pair with this computer"
msgstr "ডিভাইচ %s এ এই কমপিউটাৰৰ লগত সংযোগ কৰিব বিচাৰে"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:108
msgid "Allow"
msgstr "অনুমতি দিয়ক"
#: ../js/ui/status/bluetooth.js:110
#: ../js/ui/status/bluetooth.js:109
msgid "Deny"
msgstr "নাকচ কৰক"
#: ../js/ui/status/bluetooth.js:135
#: ../js/ui/status/bluetooth.js:134
#, javascript-format
msgid "Device %s wants access to the service '%s'"
msgstr "ডিভাইচ %s এ সেৱা '%s' লে অভিগম বিচাৰে"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:136
msgid "Always grant access"
msgstr "সদায় অভিগম প্ৰদান কৰক"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:137
msgid "Grant this time only"
msgstr "কেৱল এইবাৰৰ কাৰণে প্ৰদান কৰক"
#: ../js/ui/status/bluetooth.js:139
#: ../js/ui/status/bluetooth.js:138
msgid "Reject"
msgstr "নাকচ কৰক"
#. Translators: argument is the device short name */
#: ../js/ui/status/bluetooth.js:166
#: ../js/ui/status/bluetooth.js:165
#, javascript-format
msgid "Pairing confirmation for %s"
msgstr "%s ৰ কাৰণে যোৰ প্ৰতিশ্ৰুতি"
#: ../js/ui/status/bluetooth.js:173
#: ../js/ui/status/bluetooth.js:172
#, javascript-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "অনুগ্ৰহ কৰি সুনিশ্চিত কৰক যে পাছকি '%06d' ডিভাইচত থকাটোৰ সৈতে মিল খায়।"
#. Translators: this is the verb, not the noun */
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:175
msgid "Matches"
msgstr "মিলসমূহ"
#: ../js/ui/status/bluetooth.js:177
#: ../js/ui/status/bluetooth.js:176
msgid "Does not match"
msgstr "মিল নাখায়"
#: ../js/ui/status/bluetooth.js:196
#: ../js/ui/status/bluetooth.js:195
#, javascript-format
msgid "Pairing request for %s"
msgstr "%s ৰ কাৰণে যোৰ অনুৰোধ"
#: ../js/ui/status/bluetooth.js:204
#: ../js/ui/status/bluetooth.js:203
msgid "Please enter the PIN mentioned on the device."
msgstr "অনুগ্ৰহ কৰি ডিভাইচত উল্লেখ কৰা PIN সুমুৱাওক।"
#: ../js/ui/status/bluetooth.js:221
#: ../js/ui/status/bluetooth.js:220
msgid "OK"
msgstr "ঠিক আছে"
@@ -1388,87 +1395,103 @@ msgstr "ঠিক আছে"
msgid "Brightness"
msgstr "উজ্জ্বলতা"
#: ../js/ui/status/network.js:72
#: ../js/ui/status/network.js:71
msgid "<unknown>"
msgstr "<unknown>"
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1055
#: ../js/ui/status/network.js:222 ../js/ui/status/network.js:379
#: ../js/ui/status/network.js:1120
msgid "Off"
msgstr "অফ"
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:961
#: ../js/ui/status/rfkill.js:49
msgid "Network Settings"
msgstr "নেটৱাৰ্ক সংহতিসমূহ"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu) */
#: ../js/ui/status/network.js:364
#: ../js/ui/status/network.js:385
msgid "unmanaged"
msgstr "অব্যৱস্থাপিত"
#: ../js/ui/status/network.js:366
#: ../js/ui/status/network.js:387
msgid "disconnecting..."
msgstr "বিচ্ছিনিত কৰা হৈছে..."
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1106
#: ../js/ui/status/network.js:393 ../js/ui/status/network.js:1174
msgid "connecting..."
msgstr "সংযোগ কৰা হৈছে..."
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1109
#: ../js/ui/status/network.js:396 ../js/ui/status/network.js:1177
msgid "authentication required"
msgstr "প্ৰমাণীকৰণৰ প্ৰয়োজন"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
#: ../js/ui/status/network.js:383
#: ../js/ui/status/network.js:404
msgid "firmware missing"
msgstr "ফাৰ্মৱেৰ সন্ধানহীন"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage */
#: ../js/ui/status/network.js:387
#: ../js/ui/status/network.js:408
msgid "unavailable"
msgstr "উপলব্ধ নাই"
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1111
#: ../js/ui/status/network.js:410 ../js/ui/status/network.js:1179
msgid "connection failed"
msgstr "সংযোগ ব্যৰ্থ"
#: ../js/ui/status/network.js:660
#: ../js/ui/status/network.js:426 ../js/ui/status/network.js:512
#| msgid "Mobile broadband"
msgid "Mobile Broadband Settings"
msgstr "মবাইল ব্ৰডবেণ্ড সংহতিসমূহ"
#: ../js/ui/status/network.js:468 ../js/ui/status/network.js:1118
#| msgid "hardware disabled"
msgid "Hardware Disabled"
msgstr "হাৰ্ডৱেৰ অসামৰ্থবান কৰা আছে"
#: ../js/ui/status/network.js:707
msgid "Wi-Fi Networks"
msgstr "Wi-Fi নেটৱাৰ্কসমূহ"
#: ../js/ui/status/network.js:662
#: ../js/ui/status/network.js:709
msgid "Select a network"
msgstr "এটা নেটৱাৰ্ক বাছক"
#: ../js/ui/status/network.js:686
#: ../js/ui/status/network.js:733
msgid "No Networks"
msgstr "কোনো নেটৱাৰ্ক নাই"
#: ../js/ui/status/network.js:955
#: ../js/ui/status/network.js:1005
msgid "Select Network"
msgstr "নেটৱাৰ্ক বাছক"
#: ../js/ui/status/network.js:1040
#: ../js/ui/status/network.js:1011
#| msgid "Settings"
msgid "Wi-Fi Settings"
msgstr "Wi-Fi সংহতিসমূহ"
#: ../js/ui/status/network.js:1099
msgid "Turn On"
msgstr "অন কৰক"
#: ../js/ui/status/network.js:1173
#: ../js/ui/status/network.js:1122
#| msgid "Connect"
msgid "Not Connected"
msgstr "সংযুক্ত নহয়"
#: ../js/ui/status/network.js:1242
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1313
#: ../js/ui/status/network.js:1382
msgid "Network Manager"
msgstr "নেটৱাৰ্ক ব্যৱস্থাপক"
#: ../js/ui/status/network.js:1352
#: ../js/ui/status/network.js:1421
msgid "Connection failed"
msgstr "সংযোগ ব্যৰ্থ"
#: ../js/ui/status/network.js:1353
#: ../js/ui/status/network.js:1422
msgid "Activation of network connection failed"
msgstr "নেটৱাৰ্ক সংযোগ সক্ৰিয়কৰণ ব্যৰ্থ হল"
@@ -1490,13 +1513,11 @@ msgstr "অনুমান কৰা হৈছে…"
#: ../js/ui/status/power.js:77
#, javascript-format
#| msgid "%d\\u2236%02d Remaining (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d অৱশিষ্ট (%d%%)"
#: ../js/ui/status/power.js:82
#, javascript-format
#| msgid "%d\\u2236%02d Until Full (%d%%)"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d সম্পূৰ্ণ হোৱালৈ (%d%%)"
@@ -1508,23 +1529,27 @@ msgstr "বিমান অৱস্থা"
msgid "On"
msgstr "অন"
#: ../js/ui/status/system.js:305
#: ../js/ui/status/rfkill.js:49
msgid "Network Settings"
msgstr "নেটৱাৰ্ক সংহতিসমূহ"
#: ../js/ui/status/system.js:314
msgid "Switch User"
msgstr "ব্যৱহাৰকাৰী পৰিবৰ্তন কৰক"
#: ../js/ui/status/system.js:310
#: ../js/ui/status/system.js:319
msgid "Log Out"
msgstr "লগ আউট কৰক"
#: ../js/ui/status/system.js:329
#: ../js/ui/status/system.js:338
msgid "Orientation Lock"
msgstr "দিশনিৰ্ণয় লক"
#: ../js/ui/status/system.js:337
#: ../js/ui/status/system.js:346
msgid "Suspend"
msgstr "বাতিল কৰক"
#: ../js/ui/status/system.js:340
#: ../js/ui/status/system.js:349
msgid "Power Off"
msgstr "বন্ধ কৰক"
@@ -1810,9 +1835,6 @@ msgstr "প্ৰমাণীকৰণ ডাইলগ ব্যৱহাৰক
#~ msgid "Set Up a New Device…"
#~ msgstr "এটা নতুন ডিভাইচ সংহতি কৰক…"
#~ msgid "hardware disabled"
#~ msgstr "হাৰ্ডৱেৰ অসামৰ্থবান কৰা আছে"
#~ msgid "Connection"
#~ msgstr "সংযোগ"
@@ -1851,9 +1873,6 @@ msgstr "প্ৰমাণীকৰণ ডাইলগ ব্যৱহাৰক
#~ msgid "Auto Ethernet"
#~ msgstr "স্বচালিত ইথাৰনেট"
#~ msgid "Mobile broadband"
#~ msgstr "মবাইল ব্ৰডবেণ্ড"
#~ msgid "Auto broadband"
#~ msgstr "স্বচালিত ব্ৰডবেণ্ড"
@@ -1955,9 +1974,6 @@ msgstr "প্ৰমাণীকৰণ ডাইলগ ব্যৱহাৰক
#~ msgid "Idle"
#~ msgstr "অলস"
#~ msgid "Notifications"
#~ msgstr "অধিসূচনাসমূহ"
#~ msgid "Your chat status will be set to busy"
#~ msgstr "আপোনাৰ চেট অৱস্থা ব্যস্থলে সংহতি কৰা হব"

180
po/et.po
View File

@@ -6,15 +6,15 @@
# This file is distributed under the same license as the gnome-shell package.
#
# Ivar Smolin <okul linux ee>, 2011.
# Mattias Põldaru <mahfiaz@gmail.com>, 2010, 2011, 2012, 2013.
# Mattias Põldaru <mahfiaz@gmail.com>, 2010, 2011, 2012, 2013, 2014.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell MASTER\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2013-09-30 11:41+0000\n"
"PO-Revision-Date: 2013-10-01 16:40+0300\n"
"POT-Creation-Date: 2014-04-07 19:59+0000\n"
"PO-Revision-Date: 2014-04-16 00:59+0300\n"
"Last-Translator: Mattias Põldaru <mahfiaz@gmail.com>\n"
"Language-Team: Estonian <>\n"
"Language: et\n"
@@ -240,6 +240,7 @@ msgstr "Seansi valimine"
msgid "Not listed?"
msgstr "Pole loendis?"
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(nt 'user' või %s)"
@@ -261,6 +262,7 @@ msgstr "Käsku ei leitud"
msgid "Could not parse command:"
msgstr "Käsku pole võimalik analüüsida:"
#, javascript-format
msgid "Execution of '%s' failed:"
msgstr "'%s' käivitamine nurjus:"
@@ -282,9 +284,11 @@ msgstr "Eemalda lemmikutest"
msgid "Add to Favorites"
msgstr "Lisa lemmikutesse"
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s lisati lemmikutesse."
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s eemaldati lemmikutest."
@@ -437,6 +441,7 @@ msgstr "Väline ketas eemaldati"
msgid "Removable Devices"
msgstr "Eemaldatavad seadmed"
#, javascript-format
msgid "Open with %s"
msgstr "Ava programmiga %s"
@@ -470,6 +475,7 @@ msgstr "Teenus: "
msgid "Authentication required by wireless network"
msgstr "Juhtmeta võrgu jaoks on vajalik autentimine"
#, javascript-format
msgid ""
"Passwords or encryption keys are required to access the wireless network "
"'%s'."
@@ -497,6 +503,7 @@ msgstr "PIN: "
msgid "Mobile broadband network password"
msgstr "Mobiiliühenduse võrgu parool"
#, javascript-format
msgid "A password is required to connect to '%s'."
msgstr "'%s' ühenduse loomiseks on vaja parooli."
@@ -536,7 +543,7 @@ msgstr "Heli maha"
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
msgstr "<b>Eile</b> <b>%H:%M</b>"
msgstr "<b>Eile</b>, <b>%H:%M</b>"
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
msgid "<b>%A</b>, <b>%H:%M</b>"
@@ -552,17 +559,20 @@ msgstr "<b>%d. %B %Y</b>, <b>%H:%M</b>"
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s nimi on nüüd %s"
#. translators: argument is a room name like
#. * room@jabber.org for example. */
#, javascript-format
msgid "Invitation to %s"
msgstr "Kutse: %s"
#. translators: first argument is the name of a contact and the second
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
#. * for example. */
#, javascript-format
msgid "%s is inviting you to join %s"
msgstr "%s kutsub sind liituma: %s"
@@ -573,10 +583,12 @@ msgid "Accept"
msgstr "Nõustu"
#. translators: argument is a contact name like Alice for example. */
#, javascript-format
msgid "Video call from %s"
msgstr "%s tahab alustada videokõnet"
#. translators: argument is a contact name like Alice for example. */
#, javascript-format
msgid "Call from %s"
msgstr "%s helistab"
@@ -589,10 +601,12 @@ msgstr "Vasta"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#. */
#, javascript-format
msgid "%s is sending you %s"
msgstr "%s saadab sulle %s"
#. To translators: The parameter is the contact's alias */
#, javascript-format
msgid "%s would like permission to see when you are online"
msgstr "%s palub sinu luba, et näha, kui sa oled võrgus"
@@ -677,6 +691,7 @@ msgstr "Sisemine viga"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#, javascript-format
msgid "Unable to connect to %s"
msgstr "Pole võimalik ühenduda võrguga %s"
@@ -710,6 +725,7 @@ msgstr "Kuupäeva ja kella sätted"
msgid "%A %B %e, %Y"
msgstr "%A, %d. %B %Y"
#, javascript-format
msgctxt "title"
msgid "Log Out %s"
msgstr "%s väljalogimine"
@@ -718,11 +734,13 @@ msgctxt "title"
msgid "Log Out"
msgstr "Väljalogimine"
#, javascript-format
msgid "%s will be logged out automatically in %d second."
msgid_plural "%s will be logged out automatically in %d seconds."
msgstr[0] "%s logitakse %d sekundi pärast automaatselt välja."
msgstr[1] "%s logitakse %d sekundi pärast automaatselt välja."
#, javascript-format
msgid "You will be logged out automatically in %d second."
msgid_plural "You will be logged out automatically in %d seconds."
msgstr[0] "Sind logitakse %d sekundi pärast automaatselt välja."
@@ -736,6 +754,7 @@ msgctxt "title"
msgid "Power Off"
msgstr "Väljalülitamine"
#, javascript-format
msgid "The system will power off automatically in %d second."
msgid_plural "The system will power off automatically in %d seconds."
msgstr[0] "%d sekundi pärast lülitub süsteem automaatselt välja."
@@ -753,6 +772,7 @@ msgctxt "title"
msgid "Restart"
msgstr "Taaskäivitamine"
#, javascript-format
msgid "The system will restart automatically in %d second."
msgid_plural "The system will restart automatically in %d seconds."
msgstr[0] "Süsteem taaskäivitub automaatselt %d sekundi pärast."
@@ -762,6 +782,7 @@ msgctxt "title"
msgid "Restart & Install Updates"
msgstr "Taaskäivitamine ja uuenduste paigaldamine"
#, javascript-format
msgid "The system will automatically restart and install updates in %d second."
msgid_plural ""
"The system will automatically restart and install updates in %d seconds."
@@ -779,16 +800,19 @@ msgid "Other users are logged in."
msgstr "Teised kasutajad on sisse logitud."
#. Translators: Remote here refers to a remote session, like a ssh login */
#, javascript-format
msgid "%s (remote)"
msgstr "%s (kaugühendus)"
#. Translators: Console here refers to a tty like a VT console */
#, javascript-format
msgid "%s (console)"
msgstr "%s (konsool)"
msgid "Install"
msgstr "Paigalda"
#, javascript-format
msgid "Download and install '%s' from extensions.gnome.org?"
msgstr "Kas laadida alla ja paigaldada '%s' aadressilt extensions.gnome.org?"
@@ -799,6 +823,7 @@ msgid "No extensions installed"
msgstr "Ühtegi laiendust pole paigaldatud"
#. Translators: argument is an extension UUID. */
#, javascript-format
msgid "%s has not emitted any errors."
msgstr "%s ei ole väljastanud ühtegi veateadet."
@@ -811,6 +836,8 @@ msgstr "Näita vigu"
msgid "Enabled"
msgstr "Lubatud"
#. Translators: this is for a network device that cannot be activated
#. because it's disabled by rfkill (airplane mode) */
#. translators:
#. * The device has been disabled
msgid "Disabled"
@@ -837,6 +864,9 @@ msgstr "Ava"
msgid "Remove"
msgstr "Eemalda"
msgid "Notifications"
msgstr "Märguanded"
msgid "Clear Messages"
msgstr "Kustuta teated"
@@ -859,6 +889,7 @@ msgctxt "program"
msgid "Unknown"
msgstr "Tundmatu"
#, javascript-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "%d uus sõnum"
@@ -902,6 +933,7 @@ msgstr "Sulge"
msgid "%A, %B %d"
msgstr "%A, %d. %B"
#, javascript-format
msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "%d uus märguanne"
@@ -985,14 +1017,17 @@ msgstr "Lülita välja"
msgid "Bluetooth Settings"
msgstr "Bluetoothi sätted"
#, javascript-format
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d ühendatud seade"
msgstr[1] "%d ühendatud seadet"
#, javascript-format
msgid "Authorization request from %s"
msgstr "Autoriseerimise päring seadmelt %s"
#, javascript-format
msgid "Device %s wants to pair with this computer"
msgstr "Seade '%s' tahab selle arvutiga paarduda"
@@ -1002,6 +1037,7 @@ msgstr "Luba"
msgid "Deny"
msgstr "Keela"
#, javascript-format
msgid "Device %s wants access to the service '%s'"
msgstr "Seade %s soovib ligipääsu teenusele '%s'"
@@ -1015,9 +1051,11 @@ msgid "Reject"
msgstr "Lükka tagasi"
#. Translators: argument is the device short name */
#, javascript-format
msgid "Pairing confirmation for %s"
msgstr "Paardumise kinnitus seadmele %s"
#, javascript-format
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "Palun kontrolli, kas parool '%06d' kattub seadme parooliga."
@@ -1029,6 +1067,7 @@ msgstr "Kattub"
msgid "Does not match"
msgstr "Ei kattu"
#, javascript-format
msgid "Pairing request for %s"
msgstr "Seadmega %s paardumise päring"
@@ -1047,9 +1086,6 @@ msgstr "<tundmatu>"
msgid "Off"
msgstr "Väljas"
msgid "Network Settings"
msgstr "Võrgusätted"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu) */
msgid "unmanaged"
@@ -1078,6 +1114,12 @@ msgstr "pole saadaval"
msgid "connection failed"
msgstr "ühendumine nurjus"
msgid "Mobile Broadband Settings"
msgstr "Mobiiliühenduse sätted"
msgid "Hardware Disabled"
msgstr "Riistvara on keelatud"
msgid "Wi-Fi Networks"
msgstr "Wi-Fi võrgud"
@@ -1090,9 +1132,15 @@ msgstr "Võrke pole"
msgid "Select Network"
msgstr "Võrgu valimine"
msgid "Wi-Fi Settings"
msgstr "Wi-Fi sätted"
msgid "Turn On"
msgstr "Lülita sisse"
msgid "Not Connected"
msgstr "Pole ühenduses"
msgid "VPN"
msgstr "VPN"
@@ -1117,9 +1165,11 @@ msgstr "Täiesti täis"
msgid "Estimating…"
msgstr "Andmete kogumine…"
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d jäänud (%d%%)"
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d täitumiseni (%d%%)"
@@ -1129,6 +1179,9 @@ msgstr "Lennukirežiim"
msgid "On"
msgstr "Sees"
msgid "Network Settings"
msgstr "Võrgusätted"
msgid "Switch User"
msgstr "Vaheta kasutajat"
@@ -1165,6 +1218,7 @@ msgstr "Rakendused"
msgid "Search"
msgstr "Otsing"
#, javascript-format
msgid ""
"Sorry, no wisdom for you today:\n"
"%s"
@@ -1172,9 +1226,11 @@ msgstr ""
"Vabandust, tänaseks tarkuseteri pole:\n"
"%s"
#, javascript-format
msgid "%s the Oracle says"
msgstr "Oraakel %s ütleb"
#, javascript-format
msgid "'%s' is ready"
msgstr "'%s' on valmis"
@@ -1190,6 +1246,7 @@ msgstr "Taasta sätted"
msgid "Keep Changes"
msgstr "Säilita muudatused"
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
msgstr[0] "Sätete muudatused ennistatakse %d sekundi pärast"
@@ -1242,12 +1299,97 @@ msgstr "Parool ei saa olla tühi"
msgid "Authentication dialog was dismissed by the user"
msgstr "Kasutaja katkestas autentimisdialoogi"
#~ msgid "Disables the validation of extension version compatibility"
#~ msgstr "Keelab laienduste versioonisobivuse kontrolli"
#~ msgid "There was an error loading the preferences dialog for %s:"
#~ msgstr "%s jaoks eelistuste dialoogi laadimisel esines viga:"
#~ msgid "Extension"
#~ msgstr "Laiendus"
#, fuzzy
#~ msgid "%H%M"
#~ msgstr "%H%M"
#, fuzzy
#~ msgid "Yesterday, %H%M"
#~ msgstr "<b>Eile</b> <b>%H:%M</b>"
#, fuzzy
#~ msgid "%A, %H%M"
#~ msgstr "%H%M"
#, fuzzy
#~ msgid "%B %d, %H%M"
#~ msgstr "%H%M"
#, fuzzy
#~ msgid "%l%M %p"
#~ msgstr "%l%M%p"
#, fuzzy
#~ msgid "%A, %l%M %p"
#~ msgstr "%a, %l:%M %p"
#, fuzzy
#~ msgid "%B %d, %l%M %p"
#~ msgstr "%a, %e. %b, %l:%M %p"
#, fuzzy
#~ msgid "%B %d %Y, %l%M %p"
#~ msgstr "%a, %e. %b, %l:%M %p"
#~ msgid "Show Keyboard Layout"
#~ msgstr "Klaviatuuripaigutuse kuvamine"
#, fuzzy
#~ msgid "Location"
#~ msgstr "Märguanded"
#, fuzzy
#~ msgid "Disable"
#~ msgstr "Keelatud"
#, fuzzy
#~ msgid "Enable"
#~ msgstr "Lubatud"
#, fuzzy
#~ msgid "Connected"
#~ msgstr "Ühendu"
#, fuzzy
#~ msgid "Wired Settings"
#~ msgstr "Wi-Fi sätted"
#, fuzzy
#~ msgid "Airplane Mode is On"
#~ msgstr "Lennukirežiim"
#, fuzzy
#~ msgid "Turn Off Airplane Mode"
#~ msgstr "Lennukirežiim"
#, fuzzy
#~ msgid "Wi-Fi is Off"
#~ msgstr "Wi-Fi sätted"
#, fuzzy
#~ msgid "Turn On Wi-Fi"
#~ msgstr "Lülita sisse"
#, fuzzy
#~ msgid "Connecting"
#~ msgstr "Ühendus"
#, fuzzy
#~ msgid "VPN Settings"
#~ msgstr "Sätted"
#~ msgid "UPS"
#~ msgstr "UPS"
#~ msgctxt "event list time"
#~ msgid "%H\\u2236%M"
#~ msgstr "%H\\u2236%M"
@@ -1256,9 +1398,6 @@ msgstr "Kasutaja katkestas autentimisdialoogi"
#~ msgid "%l\\u2236%M\\u2009%p"
#~ msgstr "%l\\u2236%M\\u2009%p"
#~ msgid "Show Keyboard Layout"
#~ msgstr "Klaviatuuripaigutuse kuvamine"
#~ msgid "Settings Menu"
#~ msgstr "Sätete menüü"
@@ -1400,12 +1539,6 @@ msgstr "Kasutaja katkestas autentimisdialoogi"
#~ msgid "Set Up a New Device…"
#~ msgstr "Uue seadme häälestamine…"
#~ msgid "hardware disabled"
#~ msgstr "riistvara on keelatud"
#~ msgid "Connection"
#~ msgstr "Ühendus"
#~ msgid "Send Files…"
#~ msgstr "Failide saatmine…"
@@ -1439,9 +1572,6 @@ msgstr "Kasutaja katkestas autentimisdialoogi"
#~ msgid "Auto Ethernet"
#~ msgstr "Automaatne ethernet"
#~ msgid "Mobile broadband"
#~ msgstr "Mobiiliühendus"
#~ msgid "Auto broadband"
#~ msgstr "Automaatne lairibaühendus"
@@ -1496,9 +1626,6 @@ msgstr "Kasutaja katkestas autentimisdialoogi"
#~ msgid "Laptop Battery"
#~ msgstr "Sülearvuti aku"
#~ msgid "UPS"
#~ msgstr "UPS"
#~ msgid "Monitor"
#~ msgstr "Monitor"
@@ -1539,9 +1666,6 @@ msgstr "Kasutaja katkestas autentimisdialoogi"
#~ msgid "Idle"
#~ msgstr "Jõude"
#~ msgid "Notifications"
#~ msgstr "Märguanded"
#~ msgid "Your chat status will be set to busy"
#~ msgstr "Sinu vestluse olekuks määratakse hõivatud"
@@ -1649,15 +1773,9 @@ msgstr "Kasutaja katkestas autentimisdialoogi"
#~ msgid "%a %b %e, %l:%M:%S %p"
#~ msgstr "%a, %e. %b, %l:%M:%S %p"
#~ msgid "%a %b %e, %l:%M %p"
#~ msgstr "%a, %e. %b, %l:%M %p"
#~ msgid "%a %l:%M:%S %p"
#~ msgstr "%A, %l:%M:%S %p"
#~ msgid "%a %l:%M %p"
#~ msgstr "%a, %l:%M %p"
#~ msgid "Failed to unmount '%s'"
#~ msgstr "'%s' lahtihaakimine nurjus"

350
po/fi.po
View File

@@ -19,15 +19,15 @@
# Timo Jyrinki <timo.jyrinki@iki.fi>, 2009-2011.
# Marko Myllynen <myllynen@redhat.com>, 2011.
# Ville-Pekka Vainio <vpvainio@iki.fi>, 2011.
# Jiri Grönroos <jiri.gronroos+l10n@iki.fi>, 2012, 2013.
# Jiri Grönroos <jiri.gronroos+l10n@iki.fi>, 2012, 2013, 2014.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2013-09-28 19:49+0000\n"
"PO-Revision-Date: 2013-09-29 15:49+0300\n"
"POT-Creation-Date: 2014-01-19 15:01+0000\n"
"PO-Revision-Date: 2014-01-19 18:21+0200\n"
"Last-Translator: Jiri Grönroos <jiri.gronroos+l10n@iki.fi>\n"
"Language-Team: suomi <gnome-fi-laatu@lists.sourceforge.net>\n"
"Language: fi\n"
@@ -283,23 +283,23 @@ msgstr ""
msgid "Select an extension to configure using the combobox above."
msgstr "Valitse muokattava laajennus alta."
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
#: ../js/gdm/authPrompt.js:146 ../js/ui/components/networkAgent.js:136
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:692
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:739
msgid "Cancel"
msgstr "Peru"
#: ../js/gdm/authPrompt.js:167 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:168 ../js/gdm/authPrompt.js:216
msgid "Next"
msgstr "Seuraava"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Avaa lukitus"
#: ../js/gdm/authPrompt.js:213
#: ../js/gdm/authPrompt.js:214
msgctxt "button"
msgid "Sign In"
msgstr "Kirjaudu sisään"
@@ -325,23 +325,23 @@ msgstr "Käyttäjänimi: "
msgid "Login Window"
msgstr "Kirjautumisikkuna"
#: ../js/gdm/util.js:306
#: ../js/gdm/util.js:321
msgid "Authentication error"
msgstr "Tunnistautumisvirhe"
#: ../js/gdm/util.js:436
#: ../js/gdm/util.js:451
msgid "(or swipe finger)"
msgstr "(tai pyyhkäise sormella)"
#: ../js/misc/util.js:98
#: ../js/misc/util.js:115
msgid "Command not found"
msgstr "Komentoa ei löydy"
#: ../js/misc/util.js:131
#: ../js/misc/util.js:148
msgid "Could not parse command:"
msgstr "Komentoa ei voi jäsentää:"
#: ../js/misc/util.js:139
#: ../js/misc/util.js:156
msgid "Execution of '%s' failed:"
msgstr "”%s” suorittaminen epäonnistui:"
@@ -357,15 +357,15 @@ msgstr "Käytetyimmät"
msgid "All"
msgstr "Kaikki"
#: ../js/ui/appDisplay.js:1514
#: ../js/ui/appDisplay.js:1525
msgid "New Window"
msgstr "Uusi ikkuna"
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1528 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Poista suosikeista"
#: ../js/ui/appDisplay.js:1518
#: ../js/ui/appDisplay.js:1529
msgid "Add to Favorites"
msgstr "Lisää suosikkeihin"
@@ -377,8 +377,8 @@ msgstr "%s on lisätty suosikkeihin."
msgid "%s has been removed from your favorites."
msgstr "%s on poistettu suosikeista."
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
#: ../js/ui/status/system.js:325
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:806
#: ../js/ui/status/system.js:334
msgid "Settings"
msgstr "Asetukset"
@@ -567,16 +567,16 @@ msgstr "Avaa käyttäen sovellusta %s"
msgid "Eject"
msgstr "Poista asemasta"
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
#: ../js/ui/components/keyring.js:89 ../js/ui/components/polkitAgent.js:280
msgid "Password:"
msgstr "Salasana:"
#: ../js/ui/components/keyring.js:110
#: ../js/ui/components/keyring.js:108
msgid "Type again:"
msgstr "Uudelleen:"
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:695
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:132
#: ../js/ui/status/network.js:295 ../js/ui/status/network.js:742
msgid "Connect"
msgstr "Yhdistä"
@@ -666,94 +666,94 @@ msgstr "Tunnistaudu"
msgid "Sorry, that didn't work. Please try again."
msgstr "Tunnistautuminen epäonnistui. Yritä uudelleen."
#: ../js/ui/components/telepathyClient.js:238
#: ../js/ui/components/telepathyClient.js:237
msgid "Invitation"
msgstr "Kutsu"
#: ../js/ui/components/telepathyClient.js:298
#: ../js/ui/components/telepathyClient.js:297
msgid "Call"
msgstr "Soita"
#: ../js/ui/components/telepathyClient.js:314
#: ../js/ui/components/telepathyClient.js:313
msgid "File Transfer"
msgstr "Tiedostonsiirto"
#: ../js/ui/components/telepathyClient.js:418
#: ../js/ui/components/telepathyClient.js:417
msgid "Chat"
msgstr "Keskustelu"
#: ../js/ui/components/telepathyClient.js:480
#: ../js/ui/components/telepathyClient.js:479
msgid "Unmute"
msgstr "Palauta ääni"
#: ../js/ui/components/telepathyClient.js:480
#: ../js/ui/components/telepathyClient.js:479
msgid "Mute"
msgstr "Vaimenna"
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
#: ../js/ui/components/telepathyClient.js:942
#: ../js/ui/components/telepathyClient.js:941
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
msgstr "<b>Eilen</b>, <b>%H:%M</b>"
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
#: ../js/ui/components/telepathyClient.js:948
#: ../js/ui/components/telepathyClient.js:947
msgid "<b>%A</b>, <b>%H:%M</b>"
msgstr "<b>%A</b>, <b>%H:%M</b>"
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
#: ../js/ui/components/telepathyClient.js:953
#: ../js/ui/components/telepathyClient.js:952
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
msgstr "<b>%e.</b> <b>%Bta</b>, <b>%H:%M</b>"
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
#: ../js/ui/components/telepathyClient.js:957
#: ../js/ui/components/telepathyClient.js:956
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
msgstr "<b>%e.</b> <b>%Bta</b> <b>%Y</b>, <b>%H:%M</b> "
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
#: ../js/ui/components/telepathyClient.js:986
#: ../js/ui/components/telepathyClient.js:985
msgid "%s is now known as %s"
msgstr "%s on nyt nimeltään %s"
#. translators: argument is a room name like
#. * room@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1089
#: ../js/ui/components/telepathyClient.js:1088
msgid "Invitation to %s"
msgstr "Kutsu huoneeseen %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:1096
msgid "%s is inviting you to join %s"
msgstr "%s kutsuu sinut huoneeseen %s"
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1140
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
#: ../js/ui/components/telepathyClient.js:1098
#: ../js/ui/components/telepathyClient.js:1139
#: ../js/ui/components/telepathyClient.js:1179
#: ../js/ui/components/telepathyClient.js:1242
msgid "Decline"
msgstr "Kieltäydy"
#: ../js/ui/components/telepathyClient.js:1100
#: ../js/ui/components/telepathyClient.js:1181
#: ../js/ui/components/telepathyClient.js:1244
#: ../js/ui/components/telepathyClient.js:1099
#: ../js/ui/components/telepathyClient.js:1180
#: ../js/ui/components/telepathyClient.js:1243
msgid "Accept"
msgstr "Hyväksy"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1130
#: ../js/ui/components/telepathyClient.js:1129
msgid "Video call from %s"
msgstr "Videopuhelu käyttäjältä %s"
#. translators: argument is a contact name like Alice for example. */
#: ../js/ui/components/telepathyClient.js:1133
#: ../js/ui/components/telepathyClient.js:1132
msgid "Call from %s"
msgstr "Puhelu käyttäjältä %s"
#. translators: this is a button label (verb), not a noun */
#: ../js/ui/components/telepathyClient.js:1142
#: ../js/ui/components/telepathyClient.js:1141
msgid "Answer"
msgstr "Vastaa"
@@ -762,127 +762,127 @@ msgstr "Vastaa"
#. * file name. The string will be something
#. * like: "Alice is sending you test.ogg"
#. */
#: ../js/ui/components/telepathyClient.js:1174
#: ../js/ui/components/telepathyClient.js:1173
msgid "%s is sending you %s"
msgstr "%s on lähettämässä sinulle tiedostoa %s"
#. To translators: The parameter is the contact's alias */
#: ../js/ui/components/telepathyClient.js:1209
#: ../js/ui/components/telepathyClient.js:1208
msgid "%s would like permission to see when you are online"
msgstr "%s haluaisi saada luvan nähdä, milloin olet linjoilla"
#: ../js/ui/components/telepathyClient.js:1301
#: ../js/ui/components/telepathyClient.js:1300
msgid "Network error"
msgstr "Verkkovirhe"
#: ../js/ui/components/telepathyClient.js:1303
#: ../js/ui/components/telepathyClient.js:1302
msgid "Authentication failed"
msgstr "Tunnistautuminen epäonnistui"
#: ../js/ui/components/telepathyClient.js:1305
#: ../js/ui/components/telepathyClient.js:1304
msgid "Encryption error"
msgstr "Salausvirhe"
#: ../js/ui/components/telepathyClient.js:1307
#: ../js/ui/components/telepathyClient.js:1306
msgid "Certificate not provided"
msgstr "Varmennetta ei annettu"
#: ../js/ui/components/telepathyClient.js:1309
#: ../js/ui/components/telepathyClient.js:1308
msgid "Certificate untrusted"
msgstr "Varmenteeseen ei luoteta"
#: ../js/ui/components/telepathyClient.js:1311
#: ../js/ui/components/telepathyClient.js:1310
msgid "Certificate expired"
msgstr "Varmenne on vanhentunut"
#: ../js/ui/components/telepathyClient.js:1313
#: ../js/ui/components/telepathyClient.js:1312
msgid "Certificate not activated"
msgstr "Varmennetta ei ole aktivoitu"
#: ../js/ui/components/telepathyClient.js:1315
#: ../js/ui/components/telepathyClient.js:1314
msgid "Certificate hostname mismatch"
msgstr "Varmenteen konenimiristiriita"
#: ../js/ui/components/telepathyClient.js:1317
#: ../js/ui/components/telepathyClient.js:1316
msgid "Certificate fingerprint mismatch"
msgstr "Varmenteen sormenjälkiristiriita"
#: ../js/ui/components/telepathyClient.js:1319
#: ../js/ui/components/telepathyClient.js:1318
msgid "Certificate self-signed"
msgstr "Varmenne on itseallekirjoitettu"
#: ../js/ui/components/telepathyClient.js:1321
#: ../js/ui/components/telepathyClient.js:1320
msgid "Status is set to offline"
msgstr "Tilaksi on asetettu ”poissa linjoilta”"
#: ../js/ui/components/telepathyClient.js:1323
#: ../js/ui/components/telepathyClient.js:1322
msgid "Encryption is not available"
msgstr "Salaus ei ole käytettävissä"
#: ../js/ui/components/telepathyClient.js:1325
#: ../js/ui/components/telepathyClient.js:1324
msgid "Certificate is invalid"
msgstr "Varmenne ei kelpaa"
#: ../js/ui/components/telepathyClient.js:1327
#: ../js/ui/components/telepathyClient.js:1326
msgid "Connection has been refused"
msgstr "Yhteys on evätty"
#: ../js/ui/components/telepathyClient.js:1329
#: ../js/ui/components/telepathyClient.js:1328
msgid "Connection can't be established"
msgstr "Yhteyttä ei voida muodostaa"
#: ../js/ui/components/telepathyClient.js:1331
#: ../js/ui/components/telepathyClient.js:1330
msgid "Connection has been lost"
msgstr "Yhteys on katkennut"
#: ../js/ui/components/telepathyClient.js:1333
#: ../js/ui/components/telepathyClient.js:1332
msgid "This account is already connected to the server"
msgstr "Tämä tili on jo yhteydessä palvelimeen"
#: ../js/ui/components/telepathyClient.js:1335
#: ../js/ui/components/telepathyClient.js:1334
msgid ""
"Connection has been replaced by a new connection using the same resource"
msgstr "Yhteys on korvattu uudella samaa resurssia käyttävällä yhteydellä"
#: ../js/ui/components/telepathyClient.js:1337
#: ../js/ui/components/telepathyClient.js:1336
msgid "The account already exists on the server"
msgstr "Tili on jo olemassa palvelimella"
#: ../js/ui/components/telepathyClient.js:1339
#: ../js/ui/components/telepathyClient.js:1338
msgid "Server is currently too busy to handle the connection"
msgstr "Palvelin on tällä hetkellä liian kiireinen käsittelemään yhteyttä"
#: ../js/ui/components/telepathyClient.js:1341
#: ../js/ui/components/telepathyClient.js:1340
msgid "Certificate has been revoked"
msgstr "Varmenne on kumottu"
#: ../js/ui/components/telepathyClient.js:1343
#: ../js/ui/components/telepathyClient.js:1342
msgid ""
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
msgstr "Varmenne käyttää turvatonta salausmenetelmää"
#: ../js/ui/components/telepathyClient.js:1345
#: ../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 ""
"Palvelinvarmenne tai palvelinvarmenneketju on liian pitkä salauskirjastolle"
#: ../js/ui/components/telepathyClient.js:1347
#: ../js/ui/components/telepathyClient.js:1346
msgid "Internal error"
msgstr "Sisäinen virhe"
#. translators: argument is the account name, like
#. * name@jabber.org for example. */
#: ../js/ui/components/telepathyClient.js:1357
#: ../js/ui/components/telepathyClient.js:1356
msgid "Unable to connect to %s"
msgstr "Käyttäjään %s yhdistäminen epäonnistui"
#: ../js/ui/components/telepathyClient.js:1362
#: ../js/ui/components/telepathyClient.js:1361
msgid "View account"
msgstr "Näytä tili"
#: ../js/ui/components/telepathyClient.js:1401
#: ../js/ui/components/telepathyClient.js:1400
msgid "Unknown reason"
msgstr "Tuntematon syy"
@@ -1051,9 +1051,12 @@ msgstr "Näytä virheet"
msgid "Enabled"
msgstr "Käytössä"
#. Translators: this is for a network device that cannot be activated
#. because it's disabled by rfkill (airplane mode) */
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:765 ../src/gvc/gvc-mixer-control.c:1830
#: ../js/ui/lookingGlass.js:765 ../js/ui/status/network.js:472
#: ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "Ei käytössä"
@@ -1077,44 +1080,48 @@ msgstr "Näytä lähde"
msgid "Web Page"
msgstr "Verkkosivusto"
#: ../js/ui/messageTray.js:1222
#: ../js/ui/messageTray.js:1350
msgid "Open"
msgstr "Avaa"
#: ../js/ui/messageTray.js:1229
#: ../js/ui/messageTray.js:1357
msgid "Remove"
msgstr "Poista"
#: ../js/ui/messageTray.js:1513
#: ../js/ui/messageTray.js:1660
msgid "Notifications"
msgstr "Ilmoitukset"
#: ../js/ui/messageTray.js:1667
msgid "Clear Messages"
msgstr "Tyhjennä viestit"
#: ../js/ui/messageTray.js:1540
#: ../js/ui/messageTray.js:1686
msgid "Notification Settings"
msgstr "Ilmoitusasetukset"
#: ../js/ui/messageTray.js:1559
#: ../js/ui/messageTray.js:1739
msgid "Tray Menu"
msgstr "Viestialuevalikko"
#: ../js/ui/messageTray.js:1775
#: ../js/ui/messageTray.js:1955
msgid "No Messages"
msgstr "Ei viestejä"
#: ../js/ui/messageTray.js:1813
#: ../js/ui/messageTray.js:1993
msgid "Message Tray"
msgstr "Viestialue"
#: ../js/ui/messageTray.js:2788
#: ../js/ui/messageTray.js:2977
msgid "System Information"
msgstr "Järjestelmän tiedot"
#: ../js/ui/notificationDaemon.js:629 ../src/shell-app.c:396
#: ../js/ui/notificationDaemon.js:510 ../src/shell-app.c:396
msgctxt "program"
msgid "Unknown"
msgstr "Tuntematon"
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
#: ../js/ui/overviewControls.js:488 ../js/ui/screenShield.js:153
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "%d uusi viesti"
@@ -1136,21 +1143,21 @@ msgstr "Yleisnäkymä"
msgid "Type to search…"
msgstr "Kirjoita hakeaksesi…"
#: ../js/ui/panel.js:518
#: ../js/ui/panel.js:516
msgid "Quit"
msgstr "Lopeta"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview". */
#: ../js/ui/panel.js:570
#: ../js/ui/panel.js:568
msgid "Activities"
msgstr "Toiminnot"
#: ../js/ui/panel.js:904
#: ../js/ui/panel.js:900
msgid "Top Bar"
msgstr "Yläpalkki"
#: ../js/ui/popupMenu.js:233
#: ../js/ui/popupMenu.js:260
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
@@ -1164,29 +1171,29 @@ msgstr "Sulje"
#. Translators: This is a time format for a date in
#. long format */
#: ../js/ui/screenShield.js:88
#: ../js/ui/screenShield.js:89
msgid "%A, %B %d"
msgstr "%A, %e. %Bta"
#: ../js/ui/screenShield.js:154
#: ../js/ui/screenShield.js:155
msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "%d uusi ilmoitus"
msgstr[1] "%d uutta ilmoitusta"
#: ../js/ui/screenShield.js:477 ../js/ui/status/system.js:333
#: ../js/ui/screenShield.js:478 ../js/ui/status/system.js:342
msgid "Lock"
msgstr "Lukitse"
#: ../js/ui/screenShield.js:704
#: ../js/ui/screenShield.js:712
msgid "GNOME needs to lock the screen"
msgstr "Gnomen täytyy lukita näyttö"
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
#: ../js/ui/screenShield.js:839 ../js/ui/screenShield.js:1305
msgid "Unable to lock"
msgstr "Lukitus epäonnistui"
#: ../js/ui/screenShield.js:832 ../js/ui/screenShield.js:1298
#: ../js/ui/screenShield.js:840 ../js/ui/screenShield.js:1306
msgid "Lock was blocked by an application"
msgstr "Lukitus estettiin sovelluksen toimesta"
@@ -1226,128 +1233,128 @@ msgstr "Muista salasana"
msgid "Accessibility"
msgstr "Esteettömyys"
#: ../js/ui/status/accessibility.js:58
#: ../js/ui/status/accessibility.js:56
msgid "Zoom"
msgstr "Lähennys"
#: ../js/ui/status/accessibility.js:65
#: ../js/ui/status/accessibility.js:63
msgid "Screen Reader"
msgstr "Näytönlukija"
#: ../js/ui/status/accessibility.js:69
#: ../js/ui/status/accessibility.js:67
msgid "Screen Keyboard"
msgstr "Näyttönäppäimistö"
#: ../js/ui/status/accessibility.js:73
#: ../js/ui/status/accessibility.js:71
msgid "Visual Alerts"
msgstr "Visuaaliset hälytykset"
#: ../js/ui/status/accessibility.js:76
#: ../js/ui/status/accessibility.js:74
msgid "Sticky Keys"
msgstr "Pohjaan jäävät näppäimet"
#: ../js/ui/status/accessibility.js:79
#: ../js/ui/status/accessibility.js:77
msgid "Slow Keys"
msgstr "Hitaat näppäimet"
#: ../js/ui/status/accessibility.js:82
#: ../js/ui/status/accessibility.js:80
msgid "Bounce Keys"
msgstr "Kimmonäppäimet"
#: ../js/ui/status/accessibility.js:85
#: ../js/ui/status/accessibility.js:83
msgid "Mouse Keys"
msgstr "Hiirinäppäimet"
#: ../js/ui/status/accessibility.js:144
#: ../js/ui/status/accessibility.js:142
msgid "High Contrast"
msgstr "Korkea kontrasti"
#: ../js/ui/status/accessibility.js:193
#: ../js/ui/status/accessibility.js:191
msgid "Large Text"
msgstr "Suuri tekstin koko"
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
#: ../js/ui/status/bluetooth.js:27 ../js/ui/status/bluetooth.js:62
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
#: ../js/ui/status/network.js:1040 ../js/ui/status/rfkill.js:46
#: ../js/ui/status/bluetooth.js:29 ../js/ui/status/network.js:132
#: ../js/ui/status/network.js:1099 ../js/ui/status/rfkill.js:46
msgid "Turn Off"
msgstr "Sammuta"
#: ../js/ui/status/bluetooth.js:33
#: ../js/ui/status/bluetooth.js:32
msgid "Bluetooth Settings"
msgstr "Bluetooth-asetukset"
#: ../js/ui/status/bluetooth.js:58
#: ../js/ui/status/bluetooth.js:57
msgid "%d Connected Device"
msgid_plural "%d Connected Devices"
msgstr[0] "%d yhdistetty laite"
msgstr[1] "%d yhdistettyä laitetta"
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
msgid "Authorization request from %s"
msgstr "Valtuutuspyyntö kohteesta %s"
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
#: ../js/ui/status/bluetooth.js:203
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
#: ../js/ui/status/bluetooth.js:202
msgid "Device %s wants to pair with this computer"
msgstr "Laite %s haluaa muodostaa parituksen tämän tietokoneen kanssa"
#: ../js/ui/status/bluetooth.js:109
#: ../js/ui/status/bluetooth.js:108
msgid "Allow"
msgstr "Salli"
#: ../js/ui/status/bluetooth.js:110
#: ../js/ui/status/bluetooth.js:109
msgid "Deny"
msgstr "Kiellä"
#: ../js/ui/status/bluetooth.js:135
#: ../js/ui/status/bluetooth.js:134
msgid "Device %s wants access to the service '%s'"
msgstr "Laite %s pyytää pääsyä palveluun %s"
#: ../js/ui/status/bluetooth.js:137
#: ../js/ui/status/bluetooth.js:136
msgid "Always grant access"
msgstr "Salli pääsy aina"
#: ../js/ui/status/bluetooth.js:138
#: ../js/ui/status/bluetooth.js:137
msgid "Grant this time only"
msgstr "Salli vain tällä kerralla"
#: ../js/ui/status/bluetooth.js:139
#: ../js/ui/status/bluetooth.js:138
msgid "Reject"
msgstr "Hylkää"
#. Translators: argument is the device short name */
#: ../js/ui/status/bluetooth.js:166
#: ../js/ui/status/bluetooth.js:165
msgid "Pairing confirmation for %s"
msgstr "Paritusvahvistus kohteelle %s"
#: ../js/ui/status/bluetooth.js:173
#: ../js/ui/status/bluetooth.js:172
msgid ""
"Please confirm whether the Passkey '%06d' matches the one on the device."
msgstr "Vahvista, täsmääkö koodi \"%06d\" laitteen koodin kanssa."
#. Translators: this is the verb, not the noun */
#: ../js/ui/status/bluetooth.js:176
#: ../js/ui/status/bluetooth.js:175
msgid "Matches"
msgstr "Täsmää"
#: ../js/ui/status/bluetooth.js:177
#: ../js/ui/status/bluetooth.js:176
msgid "Does not match"
msgstr "Ei täsmää"
#: ../js/ui/status/bluetooth.js:196
#: ../js/ui/status/bluetooth.js:195
msgid "Pairing request for %s"
msgstr "Parituspyyntö kohteelle %s"
#: ../js/ui/status/bluetooth.js:204
#: ../js/ui/status/bluetooth.js:203
msgid "Please enter the PIN mentioned on the device."
msgstr "Kirjoita laitteella mainittu PIN-koodi."
#: ../js/ui/status/bluetooth.js:221
#: ../js/ui/status/bluetooth.js:220
msgid "OK"
msgstr "OK"
@@ -1355,87 +1362,103 @@ msgstr "OK"
msgid "Brightness"
msgstr "Kirkkaus"
#: ../js/ui/status/network.js:72
#: ../js/ui/status/network.js:71
msgid "<unknown>"
msgstr "<tuntematon>"
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1055
#: ../js/ui/status/network.js:222 ../js/ui/status/network.js:379
#: ../js/ui/status/network.js:1120
msgid "Off"
msgstr "Pois"
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:961
#: ../js/ui/status/rfkill.js:49
msgid "Network Settings"
msgstr "Verkkoasetukset"
#. 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:364
#: ../js/ui/status/network.js:385
msgid "unmanaged"
msgstr "ei hallinnassa"
#: ../js/ui/status/network.js:366
#: ../js/ui/status/network.js:387
msgid "disconnecting..."
msgstr "katkaistaan yhteyttä…"
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1106
#: ../js/ui/status/network.js:393 ../js/ui/status/network.js:1174
msgid "connecting..."
msgstr "yhdistetään…"
#. Translators: this is for network connections that require some kind of key or password */
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1109
#: ../js/ui/status/network.js:396 ../js/ui/status/network.js:1177
msgid "authentication required"
msgstr "tunnistautuminen vaaditaan"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing */
#: ../js/ui/status/network.js:383
#: ../js/ui/status/network.js:404
msgid "firmware missing"
msgstr "laiteohjelmisto puuttuu"
#. 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:387
#: ../js/ui/status/network.js:408
msgid "unavailable"
msgstr "ei käytettävissä"
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1111
#: ../js/ui/status/network.js:410 ../js/ui/status/network.js:1179
msgid "connection failed"
msgstr "yhteys katkesi"
#: ../js/ui/status/network.js:660
#: ../js/ui/status/network.js:426 ../js/ui/status/network.js:512
#| msgid "Mobile broadband"
msgid "Mobile Broadband Settings"
msgstr "Mobiililaajakaistan asetukset"
#: ../js/ui/status/network.js:468 ../js/ui/status/network.js:1118
#| msgid "hardware disabled"
msgid "Hardware Disabled"
msgstr "Laite ei käytössä"
#: ../js/ui/status/network.js:707
msgid "Wi-Fi Networks"
msgstr "Wifi-verkot"
#: ../js/ui/status/network.js:662
#: ../js/ui/status/network.js:709
msgid "Select a network"
msgstr "Valitse verkko"
#: ../js/ui/status/network.js:686
#: ../js/ui/status/network.js:733
msgid "No Networks"
msgstr "Ei verkkoja"
#: ../js/ui/status/network.js:955
#: ../js/ui/status/network.js:1005
msgid "Select Network"
msgstr "Valitse verkko"
#: ../js/ui/status/network.js:1040
#: ../js/ui/status/network.js:1011
#| msgid "Settings"
msgid "Wi-Fi Settings"
msgstr "Wifi-asetukset"
#: ../js/ui/status/network.js:1099
msgid "Turn On"
msgstr "Ota käyttöön"
#: ../js/ui/status/network.js:1173
#: ../js/ui/status/network.js:1122
#| msgid "Connect"
msgid "Not Connected"
msgstr "Ei yhdistetty"
#: ../js/ui/status/network.js:1242
msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1313
#: ../js/ui/status/network.js:1382
msgid "Network Manager"
msgstr "Verkon hallinta"
#: ../js/ui/status/network.js:1352
#: ../js/ui/status/network.js:1421
msgid "Connection failed"
msgstr "Yhteys epäonnistui"
#: ../js/ui/status/network.js:1353
#: ../js/ui/status/network.js:1422
msgid "Activation of network connection failed"
msgstr "Verkkoyhteyden aktivointi epäonnistui"
@@ -1456,12 +1479,10 @@ msgid "Estimating…"
msgstr "Arvioidaan…"
#: ../js/ui/status/power.js:77
#| msgid "%d\\u2236%02d Remaining (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d jäljellä (%d%%)"
#: ../js/ui/status/power.js:82
#| msgid "%d\\u2236%02d Until Full (%d%%)"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d kunnes täynnä (%d%%)"
@@ -1473,23 +1494,27 @@ msgstr "Lentokonetila"
msgid "On"
msgstr "Päällä"
#: ../js/ui/status/system.js:305
#: ../js/ui/status/rfkill.js:49
msgid "Network Settings"
msgstr "Verkkoasetukset"
#: ../js/ui/status/system.js:314
msgid "Switch User"
msgstr "Vaihda käyttäjää"
#: ../js/ui/status/system.js:310
#: ../js/ui/status/system.js:319
msgid "Log Out"
msgstr "Kirjaudu ulos"
#: ../js/ui/status/system.js:329
#: ../js/ui/status/system.js:338
msgid "Orientation Lock"
msgstr "Kiertolukitus"
#: ../js/ui/status/system.js:337
#: ../js/ui/status/system.js:346
msgid "Suspend"
msgstr "Valmiustila"
#: ../js/ui/status/system.js:340
#: ../js/ui/status/system.js:349
msgid "Power Off"
msgstr "Sammuta"
@@ -1769,9 +1794,6 @@ msgstr "Käyttäjä poistui tunnistautumisvalintaikkunasta"
#~ msgid "Set Up a New Device…"
#~ msgstr "Asenna uusi laite…"
#~ msgid "hardware disabled"
#~ msgstr "laite ei käytössä"
#~ msgid "Connection"
#~ msgstr "Yhteys"
@@ -1810,9 +1832,6 @@ msgstr "Käyttäjä poistui tunnistautumisvalintaikkunasta"
#~ msgid "Auto Ethernet"
#~ msgstr "Automaattinen, kiinteä"
#~ msgid "Mobile broadband"
#~ msgstr "Mobiililaajakaista"
#~ msgid "Auto broadband"
#~ msgstr "Automaattinen, mobiililaajakaista"
@@ -1914,9 +1933,6 @@ msgstr "Käyttäjä poistui tunnistautumisvalintaikkunasta"
#~ msgid "Idle"
#~ msgstr "Jouten"
#~ msgid "Notifications"
#~ msgstr "Ilmoitukset"
#~ msgid "Your chat status will be set to busy"
#~ msgstr "Pikaviestitilaksi asetetaan ”kiireinen”"

2487
po/oc.po Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,15 +1,15 @@
# Punjabi translation for gnome-shell.
# Copyright (C) 2009 gnome-shell's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell package.
# A S Alam <aalam@users.sf.net>, 2009, 2010, 2011, 2012, 2013.
# A S Alam <aalam@users.sf.net>, 2009, 2010, 2011, 2012, 2013, 2014.
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2013-12-07 09:13+0000\n"
"PO-Revision-Date: 2013-12-07 19:03-0600\n"
"Last-Translator: A S Alam <aalam@users.sf.net>\n"
"POT-Creation-Date: 2014-02-01 22:56+0000\n"
"PO-Revision-Date: 2014-02-01 17:12-0600\n"
"Last-Translator: Aman Alam <aalam@users.sf.net>\n"
"Language-Team: Punjabi/Panjabi <punjabi-users@lists.sf.net>\n"
"Language: pa\n"
"MIME-Version: 1.0\n"
@@ -1094,43 +1094,43 @@ msgstr "ਸਰੋਤ ਵੇਖੋ"
msgid "Web Page"
msgstr "ਵੈੱਬ ਪੇਜ਼"
#: ../js/ui/messageTray.js:1347
#: ../js/ui/messageTray.js:1350
msgid "Open"
msgstr "ਖੋਲ੍ਹੋ"
#: ../js/ui/messageTray.js:1354
#: ../js/ui/messageTray.js:1357
msgid "Remove"
msgstr "ਹਟਾਓ"
#: ../js/ui/messageTray.js:1657
#: ../js/ui/messageTray.js:1660
msgid "Notifications"
msgstr "ਨੋਟੀਫਿਕੇਸ਼ਨ"
#: ../js/ui/messageTray.js:1664
#: ../js/ui/messageTray.js:1667
msgid "Clear Messages"
msgstr "ਸੁਨੇਹੇ ਸਾਫ਼ ਕਰੋ"
#: ../js/ui/messageTray.js:1683
#: ../js/ui/messageTray.js:1686
msgid "Notification Settings"
msgstr "ਸੂਚਨਾ ਸੈਟਿੰਗ"
#: ../js/ui/messageTray.js:1736
#: ../js/ui/messageTray.js:1739
msgid "Tray Menu"
msgstr "ਟਰੇ ਮੇਨੂ"
#: ../js/ui/messageTray.js:1952
#: ../js/ui/messageTray.js:1955
msgid "No Messages"
msgstr "ਕੋਈ ਸੁਨੇਹਾ ਨਹੀਂ"
#: ../js/ui/messageTray.js:1990
#: ../js/ui/messageTray.js:1993
msgid "Message Tray"
msgstr "ਸੁਨੇਹਾ ਟਰੇ"
#: ../js/ui/messageTray.js:2974
#: ../js/ui/messageTray.js:2977
msgid "System Information"
msgstr "ਸਿਸਟਮ ਜਾਣਕਾਰੀ"
#: ../js/ui/notificationDaemon.js:510 ../src/shell-app.c:396
#: ../js/ui/notificationDaemon.js:510 ../src/shell-app.c:398
msgctxt "program"
msgid "Unknown"
msgstr "ਅਣਜਾਣ"
@@ -1430,12 +1430,10 @@ msgid "connection failed"
msgstr "ਕੁਨੈਕਸ਼ਨ ਫੇਲ੍ਹ ਹੈ"
#: ../js/ui/status/network.js:426 ../js/ui/status/network.js:512
#| msgid "Mobile broadband"
msgid "Mobile Broadband Settings"
msgstr "ਮੋਬਾਇਲ ਬਰਾਡਬੈਂਡ ਸੈਟਿੰਗ"
#: ../js/ui/status/network.js:468 ../js/ui/status/network.js:1118
#| msgid "hardware disabled"
msgid "Hardware Disabled"
msgstr "ਹਾਰਡਵੇਅਰ ਬੰਦ ਹੈ"
@@ -1456,7 +1454,6 @@ msgid "Select Network"
msgstr "ਨੈੱਟਵਰਕ ਚੁਣੋ"
#: ../js/ui/status/network.js:1011
#| msgid "Settings"
msgid "Wi-Fi Settings"
msgstr "ਵਾਈ-ਫਾਈ ਸੈਟਿੰਗ"
@@ -1465,9 +1462,8 @@ msgid "Turn On"
msgstr "ਚਾਲੂ ਕਰੋ"
#: ../js/ui/status/network.js:1122
#| msgid "Connect"
msgid "Not Connected"
msgstr "ਕੁਨੈਕਟ ਨਹੀਂ ਹੈ"
msgstr "ਕੁਨੈਕਟ ਨਹੀਂ"
#: ../js/ui/status/network.js:1242
msgid "VPN"
@@ -1654,7 +1650,7 @@ msgstr "ਲਾਗਇਨ ਸਕਰੀਨ ਉੱਤੇ ਖਾਸ ਮੋਡ ਜਿ
msgid "List possible modes"
msgstr "ਸੰਭਵ ਮੋਡ ਵੇਖਾਓ"
#: ../src/shell-app.c:644
#: ../src/shell-app.c:646
#, c-format
msgid "Failed to launch '%s'"
msgstr "'%s' ਚਲਾਉਣ ਲਈ ਫੇਲ੍ਹ"

1137
po/pt.po

File diff suppressed because it is too large Load Diff

View File

@@ -9,24 +9,25 @@
# Sergey Davidoff <shnatsel@gmail.com>, 2010.
# Yuri Kozlov <yuray@komyakino.ru>, 2011, 2012.
# Yuri Myasoedov <omerta13@yandex.ru>, 2012, 2013.
# Stas Solovey <whats_up@tut.by>, 2011, 2013.
# JDronova <juliette.tux@gmail.com>, 2013.
# Stas Solovey <whats_up@tut.by>, 2011, 2013, 2014.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2013-11-01 12:09+0000\n"
"PO-Revision-Date: 2013-11-01 23:30+0400\n"
"Last-Translator: Yuri Myasoedov <ymyasoedov@yandex.ru>\n"
"Language-Team: Russian <gnome-cyr@gnome.org>\n"
"POT-Creation-Date: 2014-01-23 17:46+0000\n"
"PO-Revision-Date: 2014-01-28 19:19+0300\n"
"Last-Translator: Stas Solovey <whats_up@tut.by>\n"
"Language-Team: Русский <gnome-cyr@gnome.org>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.5.7\n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
"X-Generator: Gtranslator 2.91.6\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@@ -356,15 +357,15 @@ msgstr "Популярные"
msgid "All"
msgstr "Все"
#: ../js/ui/appDisplay.js:1523
#: ../js/ui/appDisplay.js:1525
msgid "New Window"
msgstr "Новое окно"
#: ../js/ui/appDisplay.js:1526 ../js/ui/dash.js:284
#: ../js/ui/appDisplay.js:1528 ../js/ui/dash.js:284
msgid "Remove from Favorites"
msgstr "Удалить из избранного"
#: ../js/ui/appDisplay.js:1527
#: ../js/ui/appDisplay.js:1529
msgid "Add to Favorites"
msgstr "Добавить в избранное"
@@ -520,17 +521,19 @@ msgstr "Следующий месяц"
msgid "Nothing Scheduled"
msgstr "Нет событий"
# fix для даты в календаре и на экране блокировки, за разъяснением обращаться к Stas Solovey <whats_up@tut.by>
#. Translators: Shown on calendar heading when selected day occurs on current year */
#: ../js/ui/calendar.js:771
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d"
msgstr "%A, %d %b., %Y"
# fix для даты в календаре и на экране блокировки
#. Translators: Shown on calendar heading when selected day occurs on different year */
#: ../js/ui/calendar.js:774
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %B %d, %Y"
msgstr "%A, %d %b., %Y"
#: ../js/ui/calendar.js:785
msgid "Today"
@@ -705,15 +708,17 @@ msgstr "<b>Вчера</b>, <b>%H:%M</b>"
msgid "<b>%A</b>, <b>%H:%M</b>"
msgstr "<b>%A</b>, <b>%H:%M</b>"
# fix для даты в календаре и на экране блокировки
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
#: ../js/ui/components/telepathyClient.js:952
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
msgstr "<b>%d</b> <b>%B</b>, <b>%H:%M</b>"
msgstr "<b>%d</b> <b>%b</b>., <b>%H:%M</b>"
# fix для даты в календаре и на экране блокировки
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
#: ../js/ui/components/telepathyClient.js:956
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
msgstr "<b>%d</b> <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
msgstr "<b>%d</b> <b>%b</b>., <b>%Y</b>, <b>%H:%M</b> "
#. Translators: this is the other person changing their old IM name to their new
#. IM name. */
@@ -927,12 +932,13 @@ msgstr "Открыть часы"
msgid "Date & Time Settings"
msgstr "Настроить дату и время"
# fix для даты в календаре и на экране блокировки
#. 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:202
msgid "%A %B %e, %Y"
msgstr "%A, %e %B, %Y"
msgstr "%A, %e %b., %Y"
#: ../js/ui/endSessionDialog.js:62
#, javascript-format
@@ -1110,43 +1116,43 @@ msgstr "Показать код"
msgid "Web Page"
msgstr "Веб-страница"
#: ../js/ui/messageTray.js:1347
#: ../js/ui/messageTray.js:1350
msgid "Open"
msgstr "Открыть"
#: ../js/ui/messageTray.js:1354
#: ../js/ui/messageTray.js:1357
msgid "Remove"
msgstr "Удалить"
#: ../js/ui/messageTray.js:1657
#: ../js/ui/messageTray.js:1660
msgid "Notifications"
msgstr "Уведомления"
#: ../js/ui/messageTray.js:1664
#: ../js/ui/messageTray.js:1667
msgid "Clear Messages"
msgstr "Очистить список сообщений"
#: ../js/ui/messageTray.js:1683
#: ../js/ui/messageTray.js:1686
msgid "Notification Settings"
msgstr "Параметры уведомлений"
#: ../js/ui/messageTray.js:1736
#: ../js/ui/messageTray.js:1739
msgid "Tray Menu"
msgstr "Меню панели"
#: ../js/ui/messageTray.js:1952
#: ../js/ui/messageTray.js:1955
msgid "No Messages"
msgstr "Нет сообщений"
#: ../js/ui/messageTray.js:1990
#: ../js/ui/messageTray.js:1993
msgid "Message Tray"
msgstr "Панель сообщений"
#: ../js/ui/messageTray.js:2965
#: ../js/ui/messageTray.js:2977
msgid "System Information"
msgstr "Системная информация"
#: ../js/ui/notificationDaemon.js:510 ../src/shell-app.c:396
#: ../js/ui/notificationDaemon.js:510 ../src/shell-app.c:398
msgctxt "program"
msgid "Unknown"
msgstr "Неизвестно"
@@ -1201,11 +1207,12 @@ msgstr "Введите команду"
msgid "Close"
msgstr "Закрыть"
# fix для даты в календаре и на экране блокировки
#. Translators: This is a time format for a date in
#. long format */
#: ../js/ui/screenShield.js:89
msgid "%A, %B %d"
msgstr "%d %B, %A"
msgstr "%A, %d %b., %Y"
#: ../js/ui/screenShield.js:155
#, javascript-format
@@ -1673,7 +1680,7 @@ msgstr ""
msgid "List possible modes"
msgstr "Список возможных режимов"
#: ../src/shell-app.c:644
#: ../src/shell-app.c:646
#, c-format
msgid "Failed to launch '%s'"
msgstr "Не удалось запустить «%s»"

View File

@@ -99,6 +99,15 @@ def run_shell(perf_output=None):
shell.wait()
return shell.returncode == 0
def restore_shell():
pid = os.fork()
if (pid == 0):
if "MUTTER_WM_CLASS_FILTER" in os.environ:
del os.environ["MUTTER_WM_CLASS_FILTER"]
os.execlp("gnome-shell", "gnome-shell", "--replace")
else:
sys.exit(0)
def upload_performance_report(report_text):
try:
config_home = os.environ['XDG_CONFIG_HOME']
@@ -320,6 +329,6 @@ if args:
normal_exit = run_performance_test()
if normal_exit:
sys.exit(0)
restore_shell()
else:
sys.exit(1)

View File

@@ -277,7 +277,9 @@ default_log_handler (const char *log_domain,
g_get_current_time (&now);
tp_debug_sender_add_message (sender, &now, log_domain, log_level, message);
/* Send telepathy debug through DBus */
if (log_domain != NULL && g_str_has_prefix (log_domain, "tp-glib"))
tp_debug_sender_add_message (sender, &now, log_domain, log_level, message);
/* Filter out telepathy-glib logs, we don't want to flood Shell's output
* with those. */

View File

@@ -36,6 +36,8 @@ typedef struct {
GSList *windows;
guint interesting_windows;
/* Whether or not we need to resort the windows; this is done on demand */
gboolean window_sort_stale : 1;
@@ -899,12 +901,6 @@ shell_app_state_transition (ShellApp *app,
state == SHELL_APP_STATE_STARTING));
app->state = state;
if (app->state == SHELL_APP_STATE_STOPPED && app->running_state)
{
unref_running_state (app->running_state);
app->running_state = NULL;
}
_shell_app_system_notify_app_state_changed (shell_app_system_get_default (), app);
g_object_notify (G_OBJECT (app), "state");
@@ -934,6 +930,37 @@ shell_app_on_user_time_changed (MetaWindow *window,
}
}
static void
shell_app_sync_running_state (ShellApp *app)
{
g_return_if_fail (app->running_state != NULL);
if (app->running_state->interesting_windows == 0)
shell_app_state_transition (app, SHELL_APP_STATE_STOPPED);
else if (app->state != SHELL_APP_STATE_STARTING)
shell_app_state_transition (app, SHELL_APP_STATE_RUNNING);
}
static void
shell_app_on_skip_taskbar_changed (MetaWindow *window,
GParamSpec *pspec,
ShellApp *app)
{
g_assert (app->running_state != NULL);
/* we rely on MetaWindow:skip-taskbar only being notified
* when it actually changes; when that assumption breaks,
* we'll have to track the "interesting" windows themselves
*/
if (meta_window_is_skip_taskbar (window))
app->running_state->interesting_windows--;
else
app->running_state->interesting_windows++;
shell_app_sync_running_state (app);
}
static void
shell_app_on_ws_switch (MetaScreen *screen,
int from,
@@ -1030,12 +1057,14 @@ _shell_app_add_window (ShellApp *app,
app->running_state->windows = g_slist_prepend (app->running_state->windows, g_object_ref (window));
g_signal_connect (window, "unmanaged", G_CALLBACK(shell_app_on_unmanaged), app);
g_signal_connect (window, "notify::user-time", G_CALLBACK(shell_app_on_user_time_changed), app);
g_signal_connect (window, "notify::skip-taskbar", G_CALLBACK(shell_app_on_skip_taskbar_changed), app);
shell_app_update_app_menu (app, window);
shell_app_ensure_busy_watch (app);
if (app->state != SHELL_APP_STATE_STARTING)
shell_app_state_transition (app, SHELL_APP_STATE_RUNNING);
if (shell_window_tracker_is_window_interesting (window))
app->running_state->interesting_windows++;
shell_app_sync_running_state (app);
g_object_thaw_notify (G_OBJECT (app));
@@ -1053,11 +1082,16 @@ _shell_app_remove_window (ShellApp *app,
g_signal_handlers_disconnect_by_func (window, G_CALLBACK(shell_app_on_unmanaged), app);
g_signal_handlers_disconnect_by_func (window, G_CALLBACK(shell_app_on_user_time_changed), app);
g_signal_handlers_disconnect_by_func (window, G_CALLBACK(shell_app_on_skip_taskbar_changed), app);
g_object_unref (window);
app->running_state->windows = g_slist_remove (app->running_state->windows, window);
if (app->running_state->windows == NULL)
shell_app_state_transition (app, SHELL_APP_STATE_STOPPED);
if (shell_window_tracker_is_window_interesting (window))
app->running_state->interesting_windows--;
shell_app_sync_running_state (app);
if (app->running_state && app->running_state->windows == NULL)
g_clear_pointer (&app->running_state, unref_running_state);
g_signal_emit (app, shell_app_signals[WINDOWS_CHANGED], 0);
}
@@ -1556,11 +1590,9 @@ shell_app_dispose (GObject *object)
app->entry = NULL;
}
if (app->running_state)
{
while (app->running_state->windows)
_shell_app_remove_window (app, app->running_state->windows->data);
}
while (app->running_state)
_shell_app_remove_window (app, app->running_state->windows->data);
/* We should have been transitioned when we removed all of our windows */
g_assert (app->state == SHELL_APP_STATE_STOPPED);
g_assert (app->running_state == NULL);

View File

@@ -739,6 +739,20 @@ global_stage_after_paint (gpointer data)
return TRUE;
}
static void
update_scale_factor (GdkScreen *screen, gpointer data)
{
ShellGlobal *global = SHELL_GLOBAL (data);
ClutterStage *stage = CLUTTER_STAGE (global->stage);
StThemeContext *context = st_theme_context_get_for_stage (stage);
GValue value = G_VALUE_INIT;
g_value_init (&value, G_TYPE_INT);
if (gdk_screen_get_setting (global->gdk_screen, "gdk-window-scaling-factor", &value))
g_object_set (context, "scale-factor", g_value_get_int (&value), NULL);
}
/* This is an IBus workaround. The flow of events with IBus is that every time
* it gets gets a key event, it:
*
@@ -917,9 +931,19 @@ _shell_global_set_plugin (ShellGlobal *global,
g_signal_connect (global->meta_display, "notify::focus-window",
G_CALLBACK (focus_window_changed), global);
/*
* We connect to GdkScreen's monitors-changed here to avoid
* a race condition. GdkScreen's monitors-changed signal is
* emitted *after* the xsetting has been updated.
*/
g_signal_connect (global->gdk_screen, "monitors-changed",
G_CALLBACK (update_scale_factor), global);
gdk_event_handler_set (gnome_shell_gdk_event_handler, global, NULL);
global->focus_manager = st_focus_manager_get_for_stage (global->stage);
update_scale_factor (global->gdk_screen, global);
}
GjsContext *

View File

@@ -172,8 +172,9 @@ shell_tray_icon_new (ShellEmbeddedWindow *window)
* @event: the #ClutterEvent triggering the fake click
*
* Fakes a press and release on @icon. @event must be a
* %CLUTTER_BUTTON_RELEASE event. Its relevant details will be passed
* on to the icon, but its coordinates will be ignored; the click is
* %CLUTTER_BUTTON_RELEASE, %CLUTTER_KEY_PRESS or %CLUTTER_KEY_RELEASE event.
* Its relevant details will be passed on to the icon, but its
* coordinates will be ignored; the click is
* always made on the center of @icon.
*/
void
@@ -191,6 +192,7 @@ shell_tray_icon_click (ShellTrayIcon *icon,
ClutterEventType event_type = clutter_event_type (event);
g_return_if_fail (event_type == CLUTTER_BUTTON_RELEASE ||
event_type == CLUTTER_KEY_PRESS ||
event_type == CLUTTER_KEY_RELEASE);
gdk_error_trap_push ();
@@ -249,12 +251,24 @@ shell_tray_icon_click (ShellTrayIcon *icon,
xkevent.y_root = xcevent.y_root;
xkevent.state = clutter_event_get_state (event);
xkevent.same_screen = True;
xkevent.type = KeyPress;
xkevent.keycode = clutter_event_get_key_code (event);
xkevent.type = KeyPress;
XSendEvent (xdisplay, xwindow, False, 0, (XEvent *)&xkevent);
xkevent.type = KeyRelease;
XSendEvent (xdisplay, xwindow, False, 0, (XEvent *)&xkevent);
if (event_type == CLUTTER_KEY_RELEASE)
{
/* If the application takes a grab on KeyPress, we don't
* want to send it a KeyRelease. There's no good way of
* knowing whether a tray icon will take a grab, so just
* assume it does, and don't send the KeyRelease. That might
* make the tracking for key events messed up if it doesn't take
* a grab, but the tray icon won't get key focus in normal cases,
* so let's hope this isn't too damaging...
*/
xkevent.type = KeyRelease;
XSendEvent (xdisplay, xwindow, False, 0, (XEvent *)&xkevent);
}
}
/* And move the pointer back out */

View File

@@ -144,37 +144,7 @@ shell_window_tracker_class_init (ShellWindowTrackerClass *klass)
gboolean
shell_window_tracker_is_window_interesting (MetaWindow *window)
{
if (meta_window_is_override_redirect (window)
|| meta_window_is_skip_taskbar (window))
return FALSE;
switch (meta_window_get_window_type (window))
{
/* Definitely ignore these. */
case META_WINDOW_DESKTOP:
case META_WINDOW_DOCK:
case META_WINDOW_SPLASHSCREEN:
/* Should have already been handled by override_redirect above,
* but explicitly list here so we get the "unhandled enum"
* warning if in the future anything is added.*/
case META_WINDOW_DROPDOWN_MENU:
case META_WINDOW_POPUP_MENU:
case META_WINDOW_TOOLTIP:
case META_WINDOW_NOTIFICATION:
case META_WINDOW_COMBO:
case META_WINDOW_DND:
case META_WINDOW_OVERRIDE_OTHER:
return FALSE;
case META_WINDOW_NORMAL:
case META_WINDOW_DIALOG:
case META_WINDOW_MODAL_DIALOG:
case META_WINDOW_MENU:
case META_WINDOW_TOOLBAR:
case META_WINDOW_UTILITY:
break;
}
return TRUE;
return !meta_window_is_skip_taskbar (window);
}
/*
@@ -384,8 +354,13 @@ get_app_for_window (ShellWindowTracker *tracker,
MetaWindow *window)
{
ShellApp *result = NULL;
MetaWindow *transient_for;
const char *startup_id;
transient_for = meta_window_get_transient_for (window);
if (transient_for != NULL)
return get_app_for_window (tracker, transient_for);
/* First, we check whether we already know about this window,
* if so, just return that.
*/
@@ -470,6 +445,16 @@ update_focus_app (ShellWindowTracker *self)
ShellApp *new_focus_app;
new_focus_win = meta_display_get_focus_window (shell_global_get_display (shell_global_get ()));
/* we only consider an app focused if the focus window can be clearly
* associated with a running app; this is the case if the focus window
* or one of its parents is visible in the taskbar, e.g.
* - 'nautilus' should appear focused when its about dialog has focus
* - 'nautilus' should not appear focused when the DESKTOP has focus
*/
while (new_focus_win && meta_window_is_skip_taskbar (new_focus_win))
new_focus_win = meta_window_get_transient_for (new_focus_win);
new_focus_app = new_focus_win ? shell_window_tracker_get_window_app (self, new_focus_win) : NULL;
if (new_focus_app)
@@ -681,13 +666,8 @@ ShellApp *
shell_window_tracker_get_window_app (ShellWindowTracker *tracker,
MetaWindow *metawin)
{
MetaWindow *transient_for;
ShellApp *app;
transient_for = meta_window_get_transient_for (metawin);
if (transient_for != NULL)
metawin = transient_for;
app = g_hash_table_lookup (tracker->window_to_app, metawin);
if (app)
g_object_ref (app);

View File

@@ -191,6 +191,15 @@ st_scroll_view_fade_set_actor (ClutterActorMeta *meta,
g_return_if_fail (actor == NULL || ST_IS_SCROLL_VIEW (actor));
if (!clutter_feature_available (CLUTTER_FEATURE_SHADERS_GLSL))
{
/* if we don't have support for GLSL shaders then we
* forcibly disable the ActorMeta
*/
clutter_actor_meta_set_enabled (meta, FALSE);
return;
}
if (self->vadjustment)
{
g_signal_handlers_disconnect_by_func (self->vadjustment,

View File

@@ -34,6 +34,8 @@ struct _StThemeContext {
/* set of StThemeNode */
GHashTable *nodes;
int scale_factor;
};
struct _StThemeContextClass {
@@ -42,6 +44,12 @@ struct _StThemeContextClass {
#define DEFAULT_FONT "sans-serif 10"
enum
{
PROP_0,
PROP_SCALE_FACTOR
};
enum
{
CHANGED,
@@ -57,6 +65,15 @@ static void on_icon_theme_changed (StTextureCache *cache,
StThemeContext *context);
static void st_theme_context_changed (StThemeContext *context);
static void st_theme_context_set_property (GObject *object,
guint prop_id,
const GValue *value,
GParamSpec *pspec);
static void st_theme_context_get_property (GObject *object,
guint prop_id,
GValue *value,
GParamSpec *pspec);
static void
st_theme_context_finalize (GObject *object)
{
@@ -86,8 +103,23 @@ st_theme_context_class_init (StThemeContextClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->set_property = st_theme_context_set_property;
object_class->get_property = st_theme_context_get_property;
object_class->finalize = st_theme_context_finalize;
/**
* StThemeContext:scale-factor:
*
* The scaling factor used or high dpi scaling.
*/
g_object_class_install_property (object_class,
PROP_SCALE_FACTOR,
g_param_spec_int ("scale-factor",
"Scale factor",
"Integer scale factor used for high dpi scaling",
0, G_MAXINT, 1,
G_PARAM_READABLE | G_PARAM_WRITABLE));
signals[CHANGED] =
g_signal_new ("changed",
G_TYPE_FROM_CLASS (klass),
@@ -114,6 +146,53 @@ st_theme_context_init (StThemeContext *context)
context->nodes = g_hash_table_new_full ((GHashFunc) st_theme_node_hash,
(GEqualFunc) st_theme_node_equal,
g_object_unref, NULL);
context->scale_factor = 1;
}
static void
st_theme_context_set_property (GObject *object,
guint prop_id,
const GValue *value,
GParamSpec *pspec)
{
StThemeContext *context = ST_THEME_CONTEXT (object);
switch (prop_id)
{
case PROP_SCALE_FACTOR:
{
int scale_factor = g_value_get_int (value);
if (scale_factor != context->scale_factor)
{
context->scale_factor = scale_factor;
st_theme_context_changed (context);
}
break;
}
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
static void
st_theme_context_get_property (GObject *object,
guint prop_id,
GValue *value,
GParamSpec *pspec)
{
StThemeContext *context = ST_THEME_CONTEXT (object);
switch (prop_id)
{
case PROP_SCALE_FACTOR:
g_value_set_int (value, context->scale_factor);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
/**

View File

@@ -1015,6 +1015,9 @@ get_length_from_term (StThemeNode *node,
} type = ABSOLUTE;
double multiplier = 1.0;
int scale_factor;
g_object_get (node->context, "scale-factor", &scale_factor, NULL);
if (term->type != TERM_NUMBER)
{
@@ -1028,7 +1031,7 @@ get_length_from_term (StThemeNode *node,
{
case NUM_LENGTH_PX:
type = ABSOLUTE;
multiplier = 1;
multiplier = 1 * scale_factor;
break;
case NUM_LENGTH_PT:
type = POINTS;