Compare commits
178 Commits
3.12.0
...
wip/new-no
Author | SHA1 | Date | |
---|---|---|---|
bf374ccabb | |||
02060d2bbc | |||
8750f1edc0 | |||
798f17a97d | |||
a4091adbf2 | |||
ecf795b6ef | |||
75447b249c | |||
26d2fb8a37 | |||
f7223763d2 | |||
0b414308fb | |||
060917ae2b | |||
9f2e5b9b51 | |||
4a07eb77f6 | |||
fbe379c81c | |||
a07e8bbf37 | |||
a6aabb1d3a | |||
aef6273fed | |||
be8b1c7d2d | |||
14bc748cea | |||
c32917f6c1 | |||
182d45dace | |||
829e7623df | |||
89675c9061 | |||
f9df83802d | |||
e51eb723fc | |||
5b61f2d642 | |||
094669baee | |||
f6b5385495 | |||
524e2df708 | |||
9f887d9a28 | |||
214a41793f | |||
2e40ffc558 | |||
3584887938 | |||
0d6c002b8e | |||
ec714864f2 | |||
1b77149ec9 | |||
93c9e031e3 | |||
3ff4277f86 | |||
2a63267be0 | |||
2b365627ed | |||
b8f0d0f0dc | |||
df1bed941d | |||
604085fdb9 | |||
2d3c81390b | |||
516b8f6bf8 | |||
75fdca0b47 | |||
9f366118f0 | |||
c228a9a89a | |||
e747fcb16f | |||
a72a24ebff | |||
8811ba2ec0 | |||
38d8e465b3 | |||
5b3fb024be | |||
521f5f2b6b | |||
e1b30b2924 | |||
dd85670f8b | |||
625f3a5113 | |||
58c4a6c847 | |||
752aca811c | |||
a4cf0501ee | |||
4c7b992c36 | |||
264a51de3f | |||
625280bcd6 | |||
4f8265f82e | |||
ff07d3a46a | |||
5d11941638 | |||
f1f659571b | |||
c60d13b33e | |||
33060d382b | |||
4b1e412ac3 | |||
659730ab09 | |||
7c3a99b7ed | |||
e7af257814 | |||
c9190294bc | |||
e070e3c44a | |||
fe87de7cec | |||
2519e4f08d | |||
fe304d3c94 | |||
1f4e6872ab | |||
5ade2e7418 | |||
3e7d325e77 | |||
ef04a9d1ed | |||
011fef4b2b | |||
caf6389f79 | |||
c7306449ae | |||
8c45e6fa43 | |||
9504d21297 | |||
0832ca544a | |||
a000a1f76e | |||
ea8b02ff7f | |||
3cc7112283 | |||
50f0fc4e23 | |||
0a4ad01d8a | |||
19afabe2a1 | |||
103027a446 | |||
28c1f81f4a | |||
82ec6c08b8 | |||
551e57406d | |||
1c8036b863 | |||
f8bac5c197 | |||
6ece67b654 | |||
96411dfed5 | |||
24897169a9 | |||
05ddece9a0 | |||
df08ae7996 | |||
a244c1e987 | |||
bc182f78b1 | |||
2d18b06b3f | |||
61852df9a1 | |||
3969be38bd | |||
92f9aff784 | |||
815cfe6c20 | |||
052b5176d2 | |||
bccbcd8e4a | |||
90589fabee | |||
5947111f14 | |||
c8c56a5443 | |||
a83b9ed6d7 | |||
f9c83bccb6 | |||
2f720e22fc | |||
329028d3b9 | |||
5c3f9f6999 | |||
4a6b89d44c | |||
7fa1834ab6 | |||
c7bc9f8925 | |||
70d75ca311 | |||
9830b3b8f7 | |||
525c8780fd | |||
76c4ec8ee4 | |||
b4a48a7644 | |||
5087f0930c | |||
398cc5af85 | |||
f073945d31 | |||
c36abcb905 | |||
e2ccbe5528 | |||
68b2d5fcf0 | |||
cd2bd7685a | |||
85f811f147 | |||
e8fd8b58d0 | |||
2aa12e8f4b | |||
ee0c76c2b9 | |||
6ce6e77d2a | |||
0117fcb0e7 | |||
79bebe849d | |||
25eadc5559 | |||
a5784484e0 | |||
a701b006c5 | |||
2d68bbf94e | |||
df305314c1 | |||
d03239c009 | |||
71ccad4399 | |||
c916d43688 | |||
3e6d0bc252 | |||
79d0a848a4 | |||
a6af33d450 | |||
c6664adcce | |||
4e8a9470d1 | |||
1b88df9439 | |||
ec42278654 | |||
f435f249d0 | |||
9c88fec4fc | |||
9ecf466ce1 | |||
a22fdea0e3 | |||
90e52d7266 | |||
74d9b6c2bf | |||
b1e9873de5 | |||
6fdc52a64a | |||
b7d6792de9 | |||
c78dc55e65 | |||
af74bded14 | |||
e3c9a9c3e4 | |||
c68eecaf1c | |||
b0bdf7f6c3 | |||
d0f69a72dc | |||
8d8c75d32d | |||
e339e2658d | |||
bc4a75a732 | |||
e09e1bc3f5 |
3
.gitignore
vendored
3
.gitignore
vendored
@ -78,11 +78,8 @@ src/gnome-shell-calendar-server
|
||||
src/gnome-shell-extension-prefs
|
||||
src/gnome-shell-extension-tool
|
||||
src/gnome-shell-hotplug-sniffer
|
||||
src/gnome-shell-jhbuild
|
||||
src/gnome-shell-perf-helper
|
||||
src/gnome-shell-perf-tool
|
||||
src/gnome-shell-real
|
||||
src/gnome-shell-wayland
|
||||
src/hotplug-sniffer/org.gnome.Shell.HotplugSniffer.service
|
||||
src/run-js-test
|
||||
src/test-recorder
|
||||
|
68
NEWS
68
NEWS
@ -1,3 +1,71 @@
|
||||
3.13.2
|
||||
======
|
||||
* Make airplane mode menu insensitive in lock screen [Giovanni; #729224]
|
||||
* Don't always extend struts to the screen edge [Florian; #683819]
|
||||
* Fix keynav for alternatives in AltSwitcher [Florian; #727259]
|
||||
* Implement window menus in the shell [Jasper; #726352]
|
||||
* Support resource:/// URLs in GNOME_SHELL_JS envvar [Owen; #730409]
|
||||
* Fix switcher popups with keybindings containing Escape [Rui; #730739]
|
||||
* Update extension-prefs UI to follow GNOME 3 patterns [Florian; #730829]
|
||||
* Add support for fallback app menu in window decorations [Florian; #730752]
|
||||
* Fix keynav escaping open app folders [Florian; #726760]
|
||||
* Misc. bug fixes [Kalev, Florian, Owen; #729429, #728449, #730408, #730753,
|
||||
#730653]
|
||||
|
||||
Contributors:
|
||||
Giovanni Campagna, Piotr Drąg, Kalev Lember, Rui Matos, Florian Müllner,
|
||||
Vadim Rutkovsky, Carlos Soriano, Jasper St. Pierre, Owen W. Taylor
|
||||
|
||||
Translations:
|
||||
Ihar Hrachyshka [be], Giovanni Campagna [it], Carles Ferrando [ca@valencia],
|
||||
Daniel Mustieles [es], Aurimas Černius [lt], Enrico Nicoletto [pt_BR],
|
||||
Yosef Or Boczko [he], Marek Černocký [cs], Muhammet Kara [tr],
|
||||
Georges Neto [pt_BR], Andika Triwidada [id]
|
||||
|
||||
3.13.1
|
||||
======
|
||||
* Ensure the currently focused app icon is viewable [Rui; #726759]
|
||||
* Improve language in location menu [Zeeshan; #726498]
|
||||
* Improve HiDpi support [Cosimo; #726907]
|
||||
* Set accessible role for window previews [Alejandro; #726670]
|
||||
* Fix bad antialiasing on panel menu buttons [Carlos; #727336]
|
||||
* Don't hide location menu [Zeeshan; #727398]
|
||||
* Fix IM candidate window obscuring current text [Rui; #727579]
|
||||
* Don't always extend struts to the screen edge [Florian; #663690]
|
||||
* Add shortcuts for switching to the last workspace [Elad; #659288]
|
||||
* Show OSD window on all monitors [Adel; #722684]
|
||||
* Improve consistency of labels in network menu [Paul; #727163]
|
||||
* Fix zombie search providers showing up [Jasper; #728597]
|
||||
* Remove ConsoleKit support [Florian; #686626]
|
||||
* Fix region screenshots with open shell menus [Florian; #709126]
|
||||
* Support <shift>insert in text entries [Florian; #648318]
|
||||
* Improve app picker scrolling on touch [Jasper; #729064]
|
||||
* Don't make date button clickable when on current date [Carlos; #726724]
|
||||
* Tweak heuristic for hiding workspace switcher [Florian; #662457]
|
||||
* Add option to show in Software to app context menu [Matthias; #643043]
|
||||
* Misc. bug fixes and cleanups [Bastien, Florian, Giovanni, Adel, Vadim,
|
||||
Carlos; #727983, #727948, #728512, #728681, #728897, #727384, #728820,
|
||||
#715042, #728449, #728343]
|
||||
|
||||
Contributors:
|
||||
Elad Alfassa, Zeeshan Ali (Khattak), Giovanni Campagna, Cosimo Cecchi,
|
||||
Matthias Clasen, Piotr Drąg, Adel Gadllah, Paul Lange, Rui Matos,
|
||||
Simon McVittie, Florian Müllner, Bastien Nocera, Alejandro Piñeiro,
|
||||
Vadim Rutkovsky, Carlos Soriano, Jasper St. Pierre
|
||||
|
||||
Translations:
|
||||
Khaled Hosny [ar], Piotr Drąg [pl], Yosef Or Boczko [he],
|
||||
Antonio Fernandes C. Neto [pt_BR], Marek Černocký [cs], maria thukididu [el],
|
||||
Andika Triwidada [id], Daniel Mustieles [es], Changwoo Ryu [ko],
|
||||
Benjamin Steinwender [de], Sphinx Jiang [zh_CN],
|
||||
Inaki Larranaga Murgoitio [eu], Marcus Lundblad [sv], Aurimas Černius [lt],
|
||||
Stas Solovey [ru], Alexandre Franke [fr], Matej Urbančič [sl],
|
||||
Fran Diéguez [gl], Pau Iranzo [ca], Luca Ferretti [it], Milo Casagrande [it],
|
||||
Tiago S [pt], Victor Ibragimov [tg], Dirgita [id], Khoem Sokhem [km],
|
||||
Rūdolfs Mazurs [lv], Balázs Úr [hu], Ask H. Larsen [da], Ikuya Awashiro [ja],
|
||||
Wouter Bolsterlee [nl], Daniel Korostil [uk], Daniel Șerbănescu [ro],
|
||||
Enrico Nicoletto [pt_BR]
|
||||
|
||||
3.12.0
|
||||
======
|
||||
* gdm: Reset greeter when coming back to login screen [Jasper; #726989]
|
||||
|
2
README
2
README
@ -8,7 +8,7 @@ For more information about GNOME Shell, including instructions on how
|
||||
to build GNOME Shell from source and how to get involved with the project,
|
||||
see:
|
||||
|
||||
http://live.gnome.org/GnomeShell
|
||||
https://wiki.gnome.org/Projects/GnomeShell
|
||||
|
||||
Bugs should be reported at http://bugzilla.gnome.org against the 'gnome-shell'
|
||||
product.
|
||||
|
19
configure.ac
19
configure.ac
@ -1,5 +1,5 @@
|
||||
AC_PREREQ(2.63)
|
||||
AC_INIT([gnome-shell],[3.12.0],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||
AC_INIT([gnome-shell],[3.13.2],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_SRCDIR([src/shell-global.c])
|
||||
@ -76,7 +76,7 @@ AC_MSG_RESULT($enable_systemd)
|
||||
CLUTTER_MIN_VERSION=1.15.90
|
||||
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
|
||||
GJS_MIN_VERSION=1.39.0
|
||||
MUTTER_MIN_VERSION=3.12.0
|
||||
MUTTER_MIN_VERSION=3.13.2
|
||||
GTK_MIN_VERSION=3.7.9
|
||||
GIO_MIN_VERSION=2.37.0
|
||||
LIBECAL_MIN_VERSION=3.5.3
|
||||
@ -112,13 +112,6 @@ fi
|
||||
|
||||
PKG_CHECK_MODULES(GNOME_SHELL, $SHARED_PCS)
|
||||
PKG_CHECK_MODULES(MUTTER, libmutter >= $MUTTER_MIN_VERSION)
|
||||
PKG_CHECK_MODULES(MUTTER_WAYLAND, [libmutter-wayland >= $MUTTER_MIN_VERSION],
|
||||
[MUTTER_WAYLAND_TYPELIB_DIR=`$PKG_CONFIG --variable=typelibdir libmutter-wayland`
|
||||
AC_SUBST(MUTTER_WAYLAND_TYPELIB_DIR)
|
||||
have_mutter_wayland=yes],
|
||||
[have_mutter_wayland=no])
|
||||
|
||||
AM_CONDITIONAL(HAVE_MUTTER_WAYLAND, test $have_mutter_wayland != no)
|
||||
|
||||
PKG_CHECK_MODULES(GNOME_SHELL_JS, gio-2.0 gjs-internals-1.0 >= $GJS_MIN_VERSION)
|
||||
PKG_CHECK_MODULES(ST, clutter-1.0 gtk+-3.0 libcroco-0.6 >= 0.6.8 x11)
|
||||
@ -230,6 +223,14 @@ fi
|
||||
AM_CONDITIONAL(ENABLE_MAN, test "$enable_man" != no)
|
||||
|
||||
GNOME_COMPILE_WARNINGS([error])
|
||||
case "$WARN_CFLAGS" in
|
||||
*-Werror*)
|
||||
WARN_CFLAGS="$WARN_CFLAGS -Wno-error=deprecated-declarations"
|
||||
;;
|
||||
esac
|
||||
|
||||
AM_CFLAGS="$AM_CFLAGS $WARN_CFLAGS"
|
||||
AC_SUBST(AM_CFLAGS)
|
||||
|
||||
BROWSER_PLUGIN_DIR="${BROWSER_PLUGIN_DIR:-"\${libdir}/mozilla/plugins"}"
|
||||
AC_ARG_VAR([BROWSER_PLUGIN_DIR],[Where to install the plugin to])
|
||||
|
@ -1,9 +1,5 @@
|
||||
desktopdir=$(datadir)/applications
|
||||
desktop_DATA = gnome-shell.desktop gnome-shell-extension-prefs.desktop
|
||||
if HAVE_MUTTER_WAYLAND
|
||||
desktop_DATA += gnome-shell-wayland.desktop
|
||||
endif HAVE_MUTTER_WAYLAND
|
||||
|
||||
desktop_DATA = gnome-shell.desktop gnome-shell-wayland.desktop gnome-shell-extension-prefs.desktop
|
||||
|
||||
# We substitute in bindir so it works as an autostart
|
||||
# file when built in a non-system prefix
|
||||
|
@ -2,7 +2,7 @@
|
||||
Type=Application
|
||||
_Name=GNOME Shell (wayland compositor)
|
||||
_Comment=Window management and application launching
|
||||
Exec=@bindir@/mutter-launch -- gnome-shell-wayland --wayland --display-server
|
||||
Exec=@bindir@/gnome-shell --wayland --display-server
|
||||
X-GNOME-Bugzilla-Bugzilla=GNOME
|
||||
X-GNOME-Bugzilla-Product=gnome-shell
|
||||
X-GNOME-Bugzilla-Component=general
|
||||
|
@ -31,7 +31,7 @@
|
||||
</_description>
|
||||
</key>
|
||||
<key name="favorite-apps" type="as">
|
||||
<default>[ 'epiphany.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'libreoffice-writer.desktop', 'nautilus.desktop', 'gnome-documents.desktop' ]</default>
|
||||
<default>[ 'epiphany.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'libreoffice-writer.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Documents.desktop' ]</default>
|
||||
<_summary>List of desktop file IDs for favorite applications</_summary>
|
||||
<_description>
|
||||
The applications corresponding to these identifiers
|
||||
@ -221,15 +221,6 @@
|
||||
</_description>
|
||||
</key>
|
||||
|
||||
<key name="button-layout" type="s">
|
||||
<default>":close"</default>
|
||||
<_summary>Arrangement of buttons on the titlebar</_summary>
|
||||
<_description>
|
||||
This key overrides the key in org.gnome.desktop.wm.preferences when
|
||||
running GNOME Shell.
|
||||
</_description>
|
||||
</key>
|
||||
|
||||
<key name="edge-tiling" type="b">
|
||||
<default>true</default>
|
||||
<_summary>Enable edge tiling when dropping windows on screen edges</_summary>
|
||||
|
@ -153,6 +153,21 @@ StScrollBar StButton#vhandle:active {
|
||||
-arrow-rise: 11px;
|
||||
}
|
||||
|
||||
.popup-menu-boxpointer.fallback-app-menu {
|
||||
-arrow-border-radius: 4px;
|
||||
-arrow-background-color: #ededed;
|
||||
-arrow-border-width: 1px;
|
||||
-arrow-border-color: #a6a6a6;
|
||||
-arrow-base: 24px;
|
||||
-arrow-rise: 11px;
|
||||
}
|
||||
|
||||
.popup-menu-boxpointer.fallback-app-menu.dark {
|
||||
-arrow-background-color: #3f4747;
|
||||
-arrow-border-color: #282b2b;
|
||||
}
|
||||
|
||||
|
||||
.popup-menu {
|
||||
min-width: 200px;
|
||||
}
|
||||
@ -166,6 +181,15 @@ StScrollBar StButton#vhandle:active {
|
||||
background-color: #333333;
|
||||
}
|
||||
|
||||
.fallback-app-menu .popup-submenu-menu-item:open {
|
||||
background-color: #888888;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.fallback-app-menu.dark .popup-submenu-menu-item:open {
|
||||
background-color: #333333;
|
||||
}
|
||||
|
||||
.popup-sub-menu {
|
||||
background-gradient-start: rgba(80,80,80,0.3);
|
||||
background-gradient-end: rgba(80,80,80,0.4);
|
||||
@ -173,6 +197,20 @@ StScrollBar StButton#vhandle:active {
|
||||
box-shadow: inset 0px 2px 4px rgba(0,0,0,0.9);
|
||||
}
|
||||
|
||||
.fallback-app-menu .popup-sub-menu {
|
||||
background-gradient-start: #dddddd;
|
||||
background-gradient-end: #dfdfdf;
|
||||
background-gradient-direction: vertical;
|
||||
box-shadow: inset 0px 2px 4px rgba(0,0,0,0.4);
|
||||
}
|
||||
|
||||
.fallback-app-menu.dark .popup-sub-menu {
|
||||
background-gradient-start: #474747;
|
||||
background-gradient-end: #4b4b4b;
|
||||
background-gradient-direction: vertical;
|
||||
box-shadow: inset 0px 2px 4px rgba(0,0,0,0.9);
|
||||
}
|
||||
|
||||
.popup-sub-menu:scrolled .popup-menu-item:ltr {
|
||||
padding-right: 0em;
|
||||
}
|
||||
@ -221,7 +259,29 @@ StScrollBar StButton#vhandle:active {
|
||||
color: #9f9f9f;
|
||||
}
|
||||
|
||||
.popup-image-menu-item {
|
||||
.fallback-app-menu .popup-menu-item {
|
||||
color: #43484a;
|
||||
}
|
||||
|
||||
.fallback-app-menu .popup-menu-item:active {
|
||||
color: white;
|
||||
background-color: #4689cd;
|
||||
}
|
||||
|
||||
.fallback-app-menu .popup-menu-item:insensitive {
|
||||
color: gray;
|
||||
}
|
||||
|
||||
.fallback-app-menu.dark .popup-menu-item {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.fallback-app-menu.dark .popup-menu-item:active {
|
||||
background-color: #445f7d;
|
||||
}
|
||||
|
||||
.fallback-app-menu.dark .popup-menu-item:insensitive {
|
||||
color: #9f9f9f;
|
||||
}
|
||||
|
||||
.popup-separator-menu-item {
|
||||
@ -233,8 +293,15 @@ StScrollBar StButton#vhandle:active {
|
||||
padding: 8px 0px;
|
||||
}
|
||||
|
||||
.popup-alternating-menu-item:alternate {
|
||||
font-weight: bold;
|
||||
.fallback-app-menu .popup-separator-menu-item {
|
||||
-gradient-start: #a0a2a3;
|
||||
-gradient-end: #a0a2a3;
|
||||
-margin-horizontal: 0;
|
||||
}
|
||||
|
||||
.fallback-app-menu.dark .popup-separator-menu-item {
|
||||
-gradient-start: #818584;
|
||||
-gradient-end: #818584;
|
||||
}
|
||||
|
||||
.popup-status-menu-item {
|
||||
@ -336,13 +403,18 @@ StScrollBar StButton#vhandle:active {
|
||||
icon-size: 16px;
|
||||
}
|
||||
|
||||
.no-networks-label {
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.no-networks-box {
|
||||
spacing: 12px;
|
||||
}
|
||||
|
||||
/* Buttons */
|
||||
|
||||
.candidate-page-button,
|
||||
.notification-button,
|
||||
.notification-icon-button,
|
||||
.hotplug-notification-item,
|
||||
.hotplug-resident-eject-button,
|
||||
.modal-dialog-button,
|
||||
.app-view-control {
|
||||
border: 1px solid #8b8b8b;
|
||||
@ -356,17 +428,12 @@ StScrollBar StButton#vhandle:active {
|
||||
}
|
||||
|
||||
.candidate-page-button:hover,
|
||||
.notification-button:hover,
|
||||
.notification-icon-button:hover,
|
||||
.hotplug-notification-item:hover,
|
||||
.hotplug-resident-eject-button:hover,
|
||||
.modal-dialog-button:hover {
|
||||
background-gradient-start: rgba(255, 255, 255, 0.3);
|
||||
background-gradient-end: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
.notification-button:focus,
|
||||
.notification-icon-button:focus,
|
||||
.hotplug-notification-item:focus,
|
||||
.modal-dialog-button:focus,
|
||||
.app-view-control:focus {
|
||||
@ -380,10 +447,7 @@ StScrollBar StButton#vhandle:active {
|
||||
|
||||
.candidate-page-button:active,
|
||||
.candidate-page-button:pressed,
|
||||
.notification-button:active,
|
||||
.notification-icon-button:active,
|
||||
.hotplug-notification-item:active,
|
||||
.hotplug-resident-eject-button:active,
|
||||
.modal-dialog-button:active,
|
||||
.modal-dialog-button:pressed,
|
||||
.app-view-control:checked {
|
||||
@ -392,8 +456,6 @@ StScrollBar StButton#vhandle:active {
|
||||
}
|
||||
|
||||
.candidate-page-button:insensitive,
|
||||
.notification-button:insensitive,
|
||||
.notification-icon-button:insensitive,
|
||||
.modal-dialog-button:insensitive {
|
||||
border-color: #666666;
|
||||
color: #9f9f9f;
|
||||
@ -405,7 +467,6 @@ StScrollBar StButton#vhandle:active {
|
||||
|
||||
#searchEntry,
|
||||
.modal-dialog-button,
|
||||
.notification-button,
|
||||
.hotplug-notification-item,
|
||||
.app-view-controls,
|
||||
#screenShieldNotifications {
|
||||
@ -582,11 +643,6 @@ StScrollBar StButton#vhandle:active {
|
||||
app-icon-bottom-clip: 2px;
|
||||
}
|
||||
|
||||
.app-menu-icon {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
}
|
||||
|
||||
.panel-button {
|
||||
-natural-hpadding: 12px;
|
||||
-minimum-hpadding: 6px;
|
||||
@ -670,7 +726,7 @@ StScrollBar StButton#vhandle:active {
|
||||
color: #e6e6e6;
|
||||
border-radius: 32px; /* wish we could do 50% */
|
||||
padding: 13px;
|
||||
border: 1px solid #5f5f5f; /* using rgba() is flaky unfortunately */
|
||||
border: 2px solid #5f5f5f; /* using rgba() is flaky unfortunately */
|
||||
}
|
||||
|
||||
.system-menu-action:hover,
|
||||
@ -678,7 +734,7 @@ StScrollBar StButton#vhandle:active {
|
||||
color: white;
|
||||
background-color: #4c4c4c;
|
||||
border: none;
|
||||
padding: 14px;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.system-menu-action:active {
|
||||
@ -1157,11 +1213,6 @@ StScrollBar StButton#vhandle:active {
|
||||
text-shadow: black 0px 2px 2px;
|
||||
}
|
||||
|
||||
#LookingGlassDialog .lg-inspector-title {
|
||||
font-weight: bold;
|
||||
padding-bottom: 8px;
|
||||
}
|
||||
|
||||
.lg-dialog StEntry {
|
||||
selection-background-color: #bbbbbb;
|
||||
selected-color: #333333;
|
||||
@ -1241,14 +1292,8 @@ StScrollBar StButton#vhandle:active {
|
||||
width: 0.3em;
|
||||
}
|
||||
|
||||
#calendarPopup .calendar {
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.calendar {
|
||||
padding: .4em 1.75em .8em 1.75em;
|
||||
spacing-rows: 0px;
|
||||
spacing-columns: 0px;
|
||||
}
|
||||
|
||||
.calendar-month-label {
|
||||
@ -1444,111 +1489,87 @@ StScrollBar StButton#vhandle:active {
|
||||
padding-right: 8pt;
|
||||
}
|
||||
|
||||
/* Message Tray */
|
||||
|
||||
.notification-drawer {
|
||||
background: rgba(0,0,0,0.8);
|
||||
padding: 1em;
|
||||
border: 2px solid #4c4c4c;
|
||||
border-bottom: 0px;
|
||||
border-radius: 6px 6px 0 0;
|
||||
}
|
||||
|
||||
.system-tray-icons,
|
||||
.notification-drawer-footer-actions {
|
||||
spacing: 0.5em;
|
||||
}
|
||||
|
||||
.system-tray-icon-button,
|
||||
.notification-drawer-button {
|
||||
border-radius: 4px;
|
||||
border: 1px solid #4c4c4c;
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
.system-tray-icon-button {
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
}
|
||||
|
||||
.notification-drawer-button StIcon {
|
||||
icon-size: 22px;
|
||||
}
|
||||
|
||||
.system-tray-icon-button:hover,
|
||||
.notification-drawer-button:hover {
|
||||
background: 1px solid #4c4c4c;
|
||||
}
|
||||
|
||||
.url-highlighter {
|
||||
link-color: #ccccff;
|
||||
}
|
||||
|
||||
/* Message Tray */
|
||||
#message-tray {
|
||||
background: #2e3436 url(message-tray-background.png);
|
||||
background-repeat: repeat;
|
||||
height: 72px;
|
||||
}
|
||||
|
||||
.message-tray-summary {
|
||||
height: 72px;
|
||||
}
|
||||
|
||||
.message-tray-menu-button StIcon {
|
||||
padding: 0 20px;
|
||||
color: #aaaaaa;
|
||||
icon-size: 24px;
|
||||
}
|
||||
|
||||
.message-tray-menu-button:hover StIcon,
|
||||
.message-tray-menu-button:active StIcon,
|
||||
.message-tray-menu-button:focus StIcon {
|
||||
color: #eeeeee;
|
||||
}
|
||||
|
||||
.no-messages-label,
|
||||
.no-networks-label {
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.no-networks-box {
|
||||
spacing: 12px;
|
||||
}
|
||||
|
||||
.notification {
|
||||
border-radius: 10px 10px 0px 0px;
|
||||
background: rgba(0,0,0,0.9);
|
||||
padding: 8px 8px 4px 8px;
|
||||
spacing-rows: 4px;
|
||||
spacing-columns: 10px;
|
||||
}
|
||||
|
||||
.notification, #notification-container {
|
||||
.notification, #notification-container, .notification-drawer {
|
||||
font-size: 11pt;
|
||||
width: 34em;
|
||||
}
|
||||
|
||||
.notification.multi-line-notification {
|
||||
padding-bottom: 8px;
|
||||
.notification-main-content {
|
||||
padding: 8px;
|
||||
spacing: 8px;
|
||||
border-radius: 10px 10px 0px 0px;
|
||||
background: rgba(0,0,0,0.8);
|
||||
}
|
||||
|
||||
.notification-unexpanded {
|
||||
/* We want to force the actor at a specific size, irrespective
|
||||
of its minimum and preferred size, so we override both */
|
||||
min-height: 36px;
|
||||
height: 36px;
|
||||
.notification-action-area {
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
/* We use row-span = 2 for the image cell, which prevents its height preferences to be
|
||||
taken into account during allocation, so its height ends up being limited by the height
|
||||
of the content in the other rows. To avoid showing a stretched image, we set the minimum
|
||||
height of the table to be ICON_SIZE + IMAGE_SIZE + spacing-rows = 24 + 125 + 10 = 159 */
|
||||
.notification-with-image {
|
||||
min-height: 159px;
|
||||
.notification-action-area,
|
||||
.notification-button {
|
||||
background: rgba(0,0,0,0.8);
|
||||
border-top: 1px solid #666;
|
||||
}
|
||||
|
||||
.summary-boxpointer {
|
||||
-arrow-border-radius: 15px;
|
||||
-arrow-background-color: rgba(0,0,0,0.9);
|
||||
-arrow-base: 36px;
|
||||
-arrow-rise: 18px;
|
||||
color: white;
|
||||
-boxpointer-gap: 4px;
|
||||
.notification-button {
|
||||
padding: 8px 0px;
|
||||
border-right: 1px solid #666;
|
||||
}
|
||||
|
||||
.summary-boxpointer .notification {
|
||||
border-radius: 9px;
|
||||
background: rgba(0,0,0,0) !important;
|
||||
padding-bottom: 12px;
|
||||
.notification-button:hover {
|
||||
background: rgba(255,255,255,0.3);
|
||||
}
|
||||
|
||||
.summary-boxpointer #summary-right-click-menu {
|
||||
padding-top: 12px;
|
||||
padding-bottom: 12px;
|
||||
.notification-button:active {
|
||||
background: rgba(255,255,255,0.1);
|
||||
}
|
||||
|
||||
.summary-notification-stack-scrollview {
|
||||
max-height: 18em;
|
||||
padding-top: 8px;
|
||||
padding-bottom: 8px;
|
||||
.notification-button:last-child {
|
||||
border-right-width: 0px;
|
||||
}
|
||||
|
||||
.summary-notification-stack-scrollview:ltr {
|
||||
padding-right: 8px;
|
||||
}
|
||||
|
||||
.summary-notification-stack-scrollview:rtl {
|
||||
padding-left: 8px;
|
||||
}
|
||||
|
||||
.notification-scrollview {
|
||||
max-height: 10em;
|
||||
-st-vfade-offset: 24px;
|
||||
.notification-title-box {
|
||||
spacing: 8px;
|
||||
}
|
||||
|
||||
.notification-scrollview:ltr > StScrollBar {
|
||||
@ -1559,37 +1580,9 @@ StScrollBar StButton#vhandle:active {
|
||||
padding-right: 6px;
|
||||
}
|
||||
|
||||
.notification-body {
|
||||
spacing: 5px;
|
||||
}
|
||||
|
||||
.notification-actions {
|
||||
padding-top: 18px;
|
||||
spacing: 10px;
|
||||
}
|
||||
|
||||
.notification-button {
|
||||
-st-natural-width: 140px;
|
||||
padding: 4px 4px 5px;
|
||||
}
|
||||
|
||||
.notification-button:focus {
|
||||
-st-natural-width: 138px;
|
||||
padding: 3px 4px 4px;
|
||||
}
|
||||
|
||||
.notification-icon-button {
|
||||
border-radius: 5px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.notification-icon-button:focus {
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
.notification-icon-button > StIcon {
|
||||
icon-size: 16px;
|
||||
padding: 8px;
|
||||
.notification-scrollview {
|
||||
max-height: 10em;
|
||||
-st-vfade-offset: 24px;
|
||||
}
|
||||
|
||||
.secondary-icon {
|
||||
@ -1614,45 +1607,6 @@ StScrollBar StButton#vhandle:active {
|
||||
padding: 2px 5px;
|
||||
}
|
||||
|
||||
.hotplug-resident-box {
|
||||
spacing: 8px;
|
||||
}
|
||||
|
||||
.hotplug-resident-mount {
|
||||
spacing: 8px;
|
||||
border-radius: 4px;
|
||||
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.hotplug-resident-mount:hover {
|
||||
background-gradient-direction: horizontal;
|
||||
background-gradient-start: rgba(255, 255, 255, 0.1);
|
||||
background-gradient-end: rgba(255, 255, 255, 0);
|
||||
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.hotplug-resident-mount-label {
|
||||
color: inherit;
|
||||
padding-left: 6px;
|
||||
}
|
||||
|
||||
.hotplug-resident-mount-icon {
|
||||
icon-size: 24px;
|
||||
padding-left: 6px;
|
||||
}
|
||||
|
||||
.hotplug-resident-eject-icon {
|
||||
icon-size: 16px;
|
||||
}
|
||||
|
||||
.hotplug-resident-eject-button {
|
||||
padding: 7px;
|
||||
border-radius: 5px;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.chat-log-message {
|
||||
color: #888888;
|
||||
}
|
||||
@ -1692,7 +1646,11 @@ StScrollBar StButton#vhandle:active {
|
||||
padding-right: 4px;
|
||||
}
|
||||
|
||||
.chat-notification-scrollview{
|
||||
.chat-notification-body-box {
|
||||
spacing: 5px;
|
||||
}
|
||||
|
||||
.chat-notification-scrollview {
|
||||
max-height: 22em;
|
||||
}
|
||||
|
||||
@ -1742,6 +1700,28 @@ StScrollBar StButton#vhandle:active {
|
||||
-shell-counter-overlap-y: 13px;
|
||||
}
|
||||
|
||||
.message-tray-indicator {
|
||||
spacing: 4px;
|
||||
}
|
||||
|
||||
.message-tray-indicator-count {
|
||||
font-size: 1.2em;
|
||||
font-weight: bold;
|
||||
|
||||
color: black;
|
||||
background-color: rgba(255, 255, 255, 0.7);
|
||||
border-radius: 1em;
|
||||
padding: 1em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.message-tray-indicator-glow {
|
||||
height: 4px;
|
||||
background-gradient-start: rgba(255, 255, 255, 0);
|
||||
background-gradient-end: rgba(255, 255, 255, 1);
|
||||
background-gradient-direction: vertical;
|
||||
}
|
||||
|
||||
/* OSD */
|
||||
.osd-window {
|
||||
text-align: center;
|
||||
@ -1773,26 +1753,6 @@ StScrollBar StButton#vhandle:active {
|
||||
spacing: 8px;
|
||||
}
|
||||
|
||||
.thumbnail-scroll-gradient-left {
|
||||
background-gradient-direction: horizontal;
|
||||
background-gradient-start: rgba(51, 51, 51, 1.0);
|
||||
background-gradient-end: rgba(51, 51, 51, 0);
|
||||
border-radius: 24px;
|
||||
border-radius-topright: 0px;
|
||||
border-radius-bottomright: 0px;
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
.thumbnail-scroll-gradient-right {
|
||||
background-gradient-direction: horizontal;
|
||||
background-gradient-start: rgba(51, 51, 51, 0);
|
||||
background-gradient-end: rgba(51, 51, 51, 1.0);
|
||||
border-radius: 24px;
|
||||
border-radius-topleft: 0px;
|
||||
border-radius-bottomleft: 0px;
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
.switcher-list .item-box {
|
||||
padding: 8px;
|
||||
border-radius: 8px;
|
||||
@ -2062,10 +2022,6 @@ StScrollBar StButton#vhandle:active {
|
||||
icon-size: 48px;
|
||||
}
|
||||
|
||||
.mount-password-reask {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.show-processes-dialog,
|
||||
.mount-question-dialog {
|
||||
spacing: 24px;
|
||||
@ -2361,13 +2317,6 @@ StScrollBar StButton#vhandle:active {
|
||||
padding-bottom: 1em;
|
||||
}
|
||||
|
||||
.login-dialog-title {
|
||||
font-size: 14pt;
|
||||
font-weight: bold;
|
||||
color: #666666;
|
||||
padding-bottom: 2em;
|
||||
}
|
||||
|
||||
.login-dialog {
|
||||
/* Reset border and background */
|
||||
border: none;
|
||||
@ -2416,10 +2365,6 @@ StScrollBar StButton#vhandle:active {
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.login-dialog-user-list-item-text-box {
|
||||
padding: 0 0.5em;
|
||||
}
|
||||
|
||||
.login-dialog-user-list-item .login-dialog-timed-login-indicator {
|
||||
background-color: rgba(0,0,0,0.0);
|
||||
height: 2px;
|
||||
@ -2646,8 +2591,7 @@ StScrollBar StButton#vhandle:active {
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
|
||||
#screenShieldNotifications .notification-button,
|
||||
#screenShieldNotifications .notification-icon-button {
|
||||
#screenShieldNotifications .notification-button {
|
||||
border: 1px rgba(255,255,255,0.5);
|
||||
}
|
||||
|
||||
|
@ -66,6 +66,7 @@ IGNORE_HFILES= \
|
||||
gactionmuxer.h \
|
||||
gactionobservable.h \
|
||||
gactionobserver.h \
|
||||
shell-network-agent.h \
|
||||
shell-recorder-src.h
|
||||
|
||||
if !BUILD_RECORDER
|
||||
|
@ -50,7 +50,6 @@
|
||||
<xi:include href="xml/shell-wm.xml"/>
|
||||
<xi:include href="xml/shell-util.xml"/>
|
||||
<xi:include href="xml/shell-mount-operation.xml"/>
|
||||
<xi:include href="xml/shell-network-agent.xml"/>
|
||||
<xi:include href="xml/shell-polkit-authentication-agent.xml"/>
|
||||
<xi:include href="xml/shell-tp-client.xml"/>
|
||||
</chapter>
|
||||
|
@ -17,17 +17,15 @@ packages. If you are interested in building GNOME Shell from source,
|
||||
we would recommend building from version control using the build
|
||||
script described at:
|
||||
|
||||
http://live.gnome.org/GnomeShell
|
||||
https://wiki.gnome.org/Projects/GnomeShell
|
||||
|
||||
Not only will that give you the very latest version of this rapidly
|
||||
changing project, it will be much easier than get GNOME Shell and
|
||||
its dependencies to build from tarballs.</description>
|
||||
<!--
|
||||
<homepage rdf:resource="http://live.gnome.org/GnomeShell" />
|
||||
-->
|
||||
<homepage rdf:resource="https://wiki.gnome.org/Projects/GnomeShell" />
|
||||
<mailing-list rdf:resource="http://mail.gnome.org/mailman/listinfo/gnome-shell-list" />
|
||||
<download-page rdf:resource="http://download.gnome.org/sources/gnome-shell/" />
|
||||
<bug-database rdf:resource="http://bugzilla.gnome.org/browse.cgi?product=gnome-shell" />
|
||||
<bug-database rdf:resource="https://bugzilla.gnome.org/browse.cgi?product=gnome-shell" />
|
||||
|
||||
<category rdf:resource="http://api.gnome.org/doap-extensions#desktop" />
|
||||
|
||||
|
@ -23,6 +23,11 @@ const GnomeShellIface = '<node> \
|
||||
</interface> \
|
||||
</node>';
|
||||
|
||||
const customCss = '.prefs-button { \
|
||||
padding: 8px; \
|
||||
border-radius: 20px; \
|
||||
}';
|
||||
|
||||
const GnomeShellProxy = Gio.DBusProxy.makeProxyWrapper(GnomeShellIface);
|
||||
|
||||
function stripPrefix(string, prefix) {
|
||||
@ -46,13 +51,9 @@ const Application = new Lang.Class({
|
||||
|
||||
this._extensionPrefsModules = {};
|
||||
|
||||
this._extensionIters = {};
|
||||
this._startupUuid = null;
|
||||
},
|
||||
|
||||
_buildModel: function() {
|
||||
this._model = new Gtk.ListStore();
|
||||
this._model.set_column_types([GObject.TYPE_STRING, GObject.TYPE_STRING]);
|
||||
this._loaded = false;
|
||||
this._skipMainWindow = false;
|
||||
},
|
||||
|
||||
_extensionAvailable: function(uuid) {
|
||||
@ -70,11 +71,6 @@ const Application = new Lang.Class({
|
||||
return true;
|
||||
},
|
||||
|
||||
_setExtensionInsensitive: function(layout, cell, model, iter, data) {
|
||||
let uuid = model.get_value(iter, 0);
|
||||
cell.set_sensitive(this._extensionAvailable(uuid));
|
||||
},
|
||||
|
||||
_getExtensionPrefsModule: function(extension) {
|
||||
let uuid = extension.metadata.uuid;
|
||||
|
||||
@ -104,21 +100,23 @@ const Application = new Lang.Class({
|
||||
widget = this._buildErrorUI(extension, e);
|
||||
}
|
||||
|
||||
// Destroy the current prefs widget, if it exists
|
||||
if (this._extensionPrefsBin.get_child())
|
||||
this._extensionPrefsBin.get_child().destroy();
|
||||
let dialog = new Gtk.Dialog({ use_header_bar: true,
|
||||
modal: true,
|
||||
title: extension.metadata.name });
|
||||
|
||||
this._extensionPrefsBin.add(widget);
|
||||
this._extensionSelector.set_active_iter(this._extensionIters[uuid]);
|
||||
},
|
||||
if (this._skipMainWindow) {
|
||||
this.application.add_window(dialog);
|
||||
if (this._window)
|
||||
this._window.destroy();
|
||||
this._window = dialog;
|
||||
this._window.window_position = Gtk.WindowPosition.CENTER;
|
||||
} else {
|
||||
dialog.transient_for = this._window;
|
||||
}
|
||||
|
||||
_extensionSelected: function() {
|
||||
let [success, iter] = this._extensionSelector.get_active_iter();
|
||||
if (!success)
|
||||
return;
|
||||
|
||||
let uuid = this._model.get_value(iter, 0);
|
||||
this._selectExtension(uuid);
|
||||
dialog.set_default_size(600, 400);
|
||||
dialog.get_content_area().add(widget);
|
||||
dialog.show();
|
||||
},
|
||||
|
||||
_buildErrorUI: function(extension, exc) {
|
||||
@ -151,48 +149,26 @@ const Application = new Lang.Class({
|
||||
|
||||
_buildUI: function(app) {
|
||||
this._window = new Gtk.ApplicationWindow({ application: app,
|
||||
window_position: Gtk.WindowPosition.CENTER,
|
||||
title: _("GNOME Shell Extension Preferences") });
|
||||
window_position: Gtk.WindowPosition.CENTER });
|
||||
|
||||
this._window.set_size_request(600, 400);
|
||||
this._window.set_size_request(800, 500);
|
||||
|
||||
let vbox = new Gtk.Box({ orientation: Gtk.Orientation.VERTICAL });
|
||||
this._window.add(vbox);
|
||||
this._titlebar = new Gtk.HeaderBar({ show_close_button: true,
|
||||
title: _("GNOME Shell Extensions") });
|
||||
this._window.set_titlebar(this._titlebar);
|
||||
|
||||
let toolbar = new Gtk.Toolbar();
|
||||
toolbar.get_style_context().add_class(Gtk.STYLE_CLASS_PRIMARY_TOOLBAR);
|
||||
vbox.add(toolbar);
|
||||
let toolitem;
|
||||
let scroll = new Gtk.ScrolledWindow({ hscrollbar_policy: Gtk.PolicyType.NEVER,
|
||||
shadow_type: Gtk.ShadowType.IN,
|
||||
halign: Gtk.Align.CENTER,
|
||||
margin: 18 });
|
||||
this._window.add(scroll);
|
||||
|
||||
let label = new Gtk.Label({ label: '<b>' + _("Extension") + '</b>',
|
||||
use_markup: true });
|
||||
toolitem = new Gtk.ToolItem({ child: label });
|
||||
toolbar.add(toolitem);
|
||||
this._extensionSelector = new Gtk.ListBox({ selection_mode: Gtk.SelectionMode.NONE });
|
||||
this._extensionSelector.set_sort_func(Lang.bind(this, this._sortList));
|
||||
this._extensionSelector.set_header_func(Lang.bind(this, this._updateHeader));
|
||||
|
||||
this._extensionSelector = new Gtk.ComboBox({ model: this._model,
|
||||
margin_left: 8,
|
||||
hexpand: true });
|
||||
this._extensionSelector.get_style_context().add_class(Gtk.STYLE_CLASS_RAISED);
|
||||
scroll.add(this._extensionSelector);
|
||||
|
||||
let renderer = new Gtk.CellRendererText();
|
||||
this._extensionSelector.pack_start(renderer, true);
|
||||
this._extensionSelector.add_attribute(renderer, 'text', 1);
|
||||
this._extensionSelector.set_cell_data_func(renderer, Lang.bind(this, this._setExtensionInsensitive));
|
||||
this._extensionSelector.connect('changed', Lang.bind(this, this._extensionSelected));
|
||||
|
||||
toolitem = new Gtk.ToolItem({ child: this._extensionSelector });
|
||||
toolitem.set_expand(true);
|
||||
toolbar.add(toolitem);
|
||||
|
||||
this._extensionPrefsBin = new Gtk.Frame();
|
||||
vbox.add(this._extensionPrefsBin);
|
||||
|
||||
let label = new Gtk.Label({
|
||||
label: _("Select an extension to configure using the combobox above."),
|
||||
vexpand: true
|
||||
});
|
||||
|
||||
this._extensionPrefsBin.add(label);
|
||||
|
||||
this._shellProxy = new GnomeShellProxy(Gio.DBus.session, 'org.gnome.Shell', '/org/gnome/Shell');
|
||||
this._shellProxy.connectSignal('ExtensionStatusChanged', Lang.bind(this, function(proxy, senderName, [uuid, state, error]) {
|
||||
@ -203,6 +179,35 @@ const Application = new Lang.Class({
|
||||
this._window.show_all();
|
||||
},
|
||||
|
||||
_addCustomStyle: function() {
|
||||
let provider = new Gtk.CssProvider();
|
||||
|
||||
try {
|
||||
provider.load_from_data(customCss, -1);
|
||||
} catch(e) {
|
||||
log('Failed to add application style');
|
||||
return;
|
||||
}
|
||||
|
||||
let screen = this._window.window.get_screen();
|
||||
let priority = Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION;
|
||||
Gtk.StyleContext.add_provider_for_screen(screen, provider, priority);
|
||||
},
|
||||
|
||||
_sortList: function(row1, row2) {
|
||||
let name1 = ExtensionUtils.extensions[row1.uuid].metadata.name;
|
||||
let name2 = ExtensionUtils.extensions[row2.uuid].metadata.name;
|
||||
return name1.localeCompare(name2);
|
||||
},
|
||||
|
||||
_updateHeader: function(row, before) {
|
||||
if (!before || row.get_header())
|
||||
return;
|
||||
|
||||
let sep = new Gtk.Separator({ orientation: Gtk.Orientation.HORIZONTAL });
|
||||
row.set_header(sep);
|
||||
},
|
||||
|
||||
_scanExtensions: function() {
|
||||
let finder = new ExtensionUtils.ExtensionFinder();
|
||||
finder.connect('extension-found', Lang.bind(this, this._extensionFound));
|
||||
@ -211,15 +216,24 @@ const Application = new Lang.Class({
|
||||
},
|
||||
|
||||
_extensionFound: function(finder, extension) {
|
||||
let iter = this._model.append();
|
||||
this._model.set(iter, [0, 1], [extension.uuid, extension.metadata.name]);
|
||||
this._extensionIters[extension.uuid] = iter;
|
||||
let row = new ExtensionRow(extension.uuid);
|
||||
|
||||
row.prefsButton.visible = this._extensionAvailable(row.uuid);
|
||||
row.prefsButton.connect('clicked', Lang.bind(this,
|
||||
function() {
|
||||
this._selectExtension(row.uuid);
|
||||
}));
|
||||
|
||||
row.show_all();
|
||||
this._extensionSelector.add(row);
|
||||
},
|
||||
|
||||
_extensionsLoaded: function() {
|
||||
if (this._startupUuid && this._extensionAvailable(this._startupUuid))
|
||||
this._selectExtension(this._startupUuid);
|
||||
this._startupUuid = null;
|
||||
this._skipMainWindow = false;
|
||||
this._loaded = true;
|
||||
},
|
||||
|
||||
_onActivate: function() {
|
||||
@ -227,29 +241,125 @@ const Application = new Lang.Class({
|
||||
},
|
||||
|
||||
_onStartup: function(app) {
|
||||
this._buildModel();
|
||||
this._buildUI(app);
|
||||
this._addCustomStyle();
|
||||
this._scanExtensions();
|
||||
},
|
||||
|
||||
_onCommandLine: function(app, commandLine) {
|
||||
app.activate();
|
||||
let args = commandLine.get_arguments();
|
||||
|
||||
if (args.length) {
|
||||
let uuid = args[0];
|
||||
|
||||
this._skipMainWindow = true;
|
||||
|
||||
// Strip off "extension:///" prefix which fakes a URI, if it exists
|
||||
uuid = stripPrefix(uuid, "extension:///");
|
||||
|
||||
if (this._extensionAvailable(uuid))
|
||||
this._selectExtension(uuid);
|
||||
else
|
||||
else if (!this._loaded)
|
||||
this._startupUuid = uuid;
|
||||
else
|
||||
this._skipMainWindow = false;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
});
|
||||
|
||||
const ExtensionRow = new Lang.Class({
|
||||
Name: 'ExtensionRow',
|
||||
Extends: Gtk.ListBoxRow,
|
||||
|
||||
_init: function(uuid) {
|
||||
this.parent();
|
||||
|
||||
this.uuid = uuid;
|
||||
|
||||
this._settings = new Gio.Settings({ schema: 'org.gnome.shell' });
|
||||
this._settings.connect('changed::enabled-extensions', Lang.bind(this,
|
||||
function() {
|
||||
this._switch.state = this._isEnabled();
|
||||
}));
|
||||
|
||||
this._buildUI();
|
||||
},
|
||||
|
||||
_buildUI: function() {
|
||||
let extension = ExtensionUtils.extensions[this.uuid];
|
||||
|
||||
let hbox = new Gtk.Box({ orientation: Gtk.Orientation.HORIZONTAL,
|
||||
hexpand: true, margin: 12, spacing: 6 });
|
||||
this.add(hbox);
|
||||
|
||||
let vbox = new Gtk.Box({ orientation: Gtk.Orientation.VERTICAL,
|
||||
spacing: 6, hexpand: true });
|
||||
hbox.add(vbox);
|
||||
|
||||
let name = GLib.markup_escape_text(extension.metadata.name, -1);
|
||||
let label = new Gtk.Label({ label: '<b>' + name + '</b>',
|
||||
use_markup: true,
|
||||
halign: Gtk.Align.START });
|
||||
vbox.add(label);
|
||||
|
||||
let desc = extension.metadata.description.split('\n')[0];
|
||||
label = new Gtk.Label({ label: desc,
|
||||
ellipsize: Pango.EllipsizeMode.END,
|
||||
halign: Gtk.Align.START });
|
||||
vbox.add(label);
|
||||
|
||||
let button = new Gtk.Button({ valign: Gtk.Align.CENTER,
|
||||
no_show_all: true });
|
||||
button.add(new Gtk.Image({ icon_name: 'emblem-system-symbolic',
|
||||
icon_size: Gtk.IconSize.BUTTON,
|
||||
visible: true }));
|
||||
button.get_style_context().add_class('prefs-button');
|
||||
hbox.add(button);
|
||||
|
||||
this.prefsButton = button;
|
||||
|
||||
this._switch = new Gtk.Switch({ valign: Gtk.Align.CENTER,
|
||||
state: this._isEnabled() });
|
||||
this._switch.connect('notify::active', Lang.bind(this,
|
||||
function() {
|
||||
if (this._switch.active)
|
||||
this._enable();
|
||||
else
|
||||
this._disable();
|
||||
}));
|
||||
this._switch.connect('state-set', function() { return true; });
|
||||
hbox.add(this._switch);
|
||||
},
|
||||
|
||||
_isEnabled: function() {
|
||||
let extensions = this._settings.get_strv('enabled-extensions');
|
||||
return extensions.indexOf(this.uuid) != -1;
|
||||
},
|
||||
|
||||
_enable: function() {
|
||||
let extensions = this._settings.get_strv('enabled-extensions');
|
||||
if (extensions.indexOf(this.uuid) != -1)
|
||||
return;
|
||||
|
||||
extensions.push(this.uuid);
|
||||
this._settings.set_strv('enabled-extensions', extensions);
|
||||
},
|
||||
|
||||
_disable: function() {
|
||||
let extensions = this._settings.get_strv('enabled-extensions');
|
||||
let pos = extensions.indexOf(this.uuid);
|
||||
if (pos == -1)
|
||||
return;
|
||||
do {
|
||||
extensions.splice(pos, 1);
|
||||
pos = extensions.indexOf(this.uuid);
|
||||
} while (pos != -1);
|
||||
this._settings.set_strv('enabled-extensions', extensions);
|
||||
}
|
||||
});
|
||||
|
||||
function initEnvironment() {
|
||||
// Monkey-patch in a "global" object that fakes some Shell utilities
|
||||
// that ExtensionUtils depends on.
|
||||
|
@ -48,8 +48,6 @@ const _SCROLL_ANIMATION_TIME = 0.5;
|
||||
const _TIMED_LOGIN_IDLE_THRESHOLD = 5.0;
|
||||
const _LOGO_ICON_HEIGHT = 48;
|
||||
|
||||
let _loginDialog = null;
|
||||
|
||||
const UserListItem = new Lang.Class({
|
||||
Name: 'UserListItem',
|
||||
|
||||
@ -483,7 +481,7 @@ const LoginDialog = new Lang.Class({
|
||||
},
|
||||
|
||||
_ensureUserListLoaded: function() {
|
||||
if (!this._userManager.is_loaded)
|
||||
if (!this._userManager.is_loaded) {
|
||||
this._userManagerLoadedId = this._userManager.connect('notify::is-loaded',
|
||||
Lang.bind(this, function() {
|
||||
if (this._userManager.is_loaded) {
|
||||
@ -492,8 +490,10 @@ const LoginDialog = new Lang.Class({
|
||||
this._userManagerLoadedId = 0;
|
||||
}
|
||||
}));
|
||||
else
|
||||
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, this._loadUserList));
|
||||
} else {
|
||||
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, this._loadUserList));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] _loadUserList');
|
||||
}
|
||||
},
|
||||
|
||||
_updateDisableUserList: function() {
|
||||
@ -537,9 +537,12 @@ const LoginDialog = new Lang.Class({
|
||||
return;
|
||||
|
||||
this._logoBin.destroy_all_children();
|
||||
if (this._logoFileUri)
|
||||
if (this._logoFileUri) {
|
||||
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
|
||||
this._logoBin.add_child(this._textureCache.load_uri_async(this._logoFileUri,
|
||||
-1, _LOGO_ICON_HEIGHT));
|
||||
-1, _LOGO_ICON_HEIGHT,
|
||||
scaleFactor));
|
||||
}
|
||||
},
|
||||
|
||||
_updateLogo: function() {
|
||||
@ -683,10 +686,11 @@ const LoginDialog = new Lang.Class({
|
||||
},
|
||||
onUpdateScope: this,
|
||||
onComplete: function() {
|
||||
Mainloop.idle_add(Lang.bind(this, function() {
|
||||
let id = Mainloop.idle_add(Lang.bind(this, function() {
|
||||
this._greeter.call_start_session_when_ready_sync(serviceName, true, null);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] this._greeter.call_start_session_when_ready_sync');
|
||||
},
|
||||
onCompleteScope: this });
|
||||
},
|
||||
@ -742,6 +746,7 @@ const LoginDialog = new Lang.Class({
|
||||
hold.release();
|
||||
return GLib.SOURCE_REMOVE;
|
||||
});
|
||||
GLib.Source.set_name_by_id(this._timedLoginIdleTimeOutId, '[gnome-shell] this._timedLoginAnimationTime');
|
||||
return hold;
|
||||
},
|
||||
|
||||
|
@ -252,6 +252,7 @@ const ShellUserVerifier = new Lang.Class({
|
||||
this._queueMessageTimeout();
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._messageQueueTimeoutId, '[gnome-shell] this._queueMessageTimeout');
|
||||
},
|
||||
|
||||
_queueMessage: function(message, messageType) {
|
||||
|
@ -84,6 +84,7 @@
|
||||
<file>ui/userWidget.js</file>
|
||||
<file>ui/viewSelector.js</file>
|
||||
<file>ui/windowAttentionHandler.js</file>
|
||||
<file>ui/windowMenu.js</file>
|
||||
<file>ui/windowManager.js</file>
|
||||
<file>ui/workspace.js</file>
|
||||
<file>ui/workspaceSwitcherPopup.js</file>
|
||||
|
@ -46,32 +46,6 @@ const SystemdLoginSessionIface = '<node> \
|
||||
const SystemdLoginManager = Gio.DBusProxy.makeProxyWrapper(SystemdLoginManagerIface);
|
||||
const SystemdLoginSession = Gio.DBusProxy.makeProxyWrapper(SystemdLoginSessionIface);
|
||||
|
||||
const ConsoleKitManagerIface = '<node> \
|
||||
<interface name="org.freedesktop.ConsoleKit.Manager"> \
|
||||
<method name="CanRestart"> \
|
||||
<arg type="b" direction="out"/> \
|
||||
</method> \
|
||||
<method name="CanStop"> \
|
||||
<arg type="b" direction="out"/> \
|
||||
</method> \
|
||||
<method name="Restart" /> \
|
||||
<method name="Stop" /> \
|
||||
<method name="GetCurrentSession"> \
|
||||
<arg type="o" direction="out" /> \
|
||||
</method> \
|
||||
</interface> \
|
||||
</node>';
|
||||
|
||||
const ConsoleKitSessionIface = '<node> \
|
||||
<interface name="org.freedesktop.ConsoleKit.Session"> \
|
||||
<signal name="Lock" /> \
|
||||
<signal name="Unlock" /> \
|
||||
</interface> \
|
||||
</node>';
|
||||
|
||||
const ConsoleKitSession = Gio.DBusProxy.makeProxyWrapper(ConsoleKitSessionIface);
|
||||
const ConsoleKitManager = Gio.DBusProxy.makeProxyWrapper(ConsoleKitManagerIface);
|
||||
|
||||
function haveSystemd() {
|
||||
return GLib.access("/run/systemd/seats", 0) >= 0;
|
||||
}
|
||||
@ -101,7 +75,7 @@ function canLock() {
|
||||
-1, null);
|
||||
|
||||
let version = result.deep_unpack()[0].deep_unpack();
|
||||
return versionCompare('3.5.91', version);
|
||||
return haveSystemd() && versionCompare('3.5.91', version);
|
||||
} catch(e) {
|
||||
return false;
|
||||
}
|
||||
@ -119,7 +93,7 @@ function getLoginManager() {
|
||||
if (haveSystemd())
|
||||
_loginManager = new LoginManagerSystemd();
|
||||
else
|
||||
_loginManager = new LoginManagerConsoleKit();
|
||||
_loginManager = new LoginManagerDummy();
|
||||
}
|
||||
|
||||
return _loginManager;
|
||||
@ -136,9 +110,6 @@ const LoginManagerSystemd = new Lang.Class({
|
||||
Lang.bind(this, this._prepareForSleep));
|
||||
},
|
||||
|
||||
// Having this function is a bit of a hack since the Systemd and ConsoleKit
|
||||
// session objects have different interfaces - but in both cases there are
|
||||
// Lock/Unlock signals, and that's all we count upon at the moment.
|
||||
getCurrentSessionProxy: function(callback) {
|
||||
if (this._currentSession) {
|
||||
callback (this._currentSession);
|
||||
@ -191,7 +162,7 @@ const LoginManagerSystemd = new Lang.Class({
|
||||
let fd = -1;
|
||||
try {
|
||||
let [outVariant, fdList] = proxy.call_with_unix_fd_list_finish(result);
|
||||
fd = fdList.steal_fds(outVariant.deep_unpack())[0];
|
||||
fd = fdList.steal_fds()[0];
|
||||
callback(new Gio.UnixInputStream({ fd: fd }));
|
||||
} catch(e) {
|
||||
logError(e, "Error getting systemd inhibitor");
|
||||
@ -206,35 +177,13 @@ const LoginManagerSystemd = new Lang.Class({
|
||||
});
|
||||
Signals.addSignalMethods(LoginManagerSystemd.prototype);
|
||||
|
||||
const LoginManagerConsoleKit = new Lang.Class({
|
||||
Name: 'LoginManagerConsoleKit',
|
||||
const LoginManagerDummy = new Lang.Class({
|
||||
Name: 'LoginManagerDummy',
|
||||
|
||||
_init: function() {
|
||||
this._proxy = new ConsoleKitManager(Gio.DBus.system,
|
||||
'org.freedesktop.ConsoleKit',
|
||||
'/org/freedesktop/ConsoleKit/Manager');
|
||||
},
|
||||
|
||||
// Having this function is a bit of a hack since the Systemd and ConsoleKit
|
||||
// session objects have different interfaces - but in both cases there are
|
||||
// Lock/Unlock signals, and that's all we count upon at the moment.
|
||||
getCurrentSessionProxy: function(callback) {
|
||||
if (this._currentSession) {
|
||||
callback (this._currentSession);
|
||||
return;
|
||||
}
|
||||
|
||||
this._proxy.GetCurrentSessionRemote(Lang.bind(this,
|
||||
function(result, error) {
|
||||
if (error) {
|
||||
logError(error, 'Could not get a proxy for the current session');
|
||||
} else {
|
||||
this._currentSession = new ConsoleKitSession(Gio.DBus.system,
|
||||
'org.freedesktop.ConsoleKit',
|
||||
result[0]);
|
||||
callback(this._currentSession);
|
||||
}
|
||||
}));
|
||||
// we could return a DummySession object that fakes whatever callers
|
||||
// expect (at the time of writing: connect() and connectSignal()
|
||||
// methods), but just never calling the callback should be safer
|
||||
},
|
||||
|
||||
canSuspend: function(asyncCallback) {
|
||||
@ -254,4 +203,4 @@ const LoginManagerConsoleKit = new Lang.Class({
|
||||
callback(null);
|
||||
}
|
||||
});
|
||||
Signals.addSignalMethods(LoginManagerConsoleKit.prototype);
|
||||
Signals.addSignalMethods(LoginManagerDummy.prototype);
|
||||
|
@ -129,7 +129,7 @@ function trySpawn(argv)
|
||||
// Dummy child watch; we don't want to double-fork internally
|
||||
// because then we lose the parent-child relationship, which
|
||||
// can break polkit. See https://bugzilla.redhat.com//show_bug.cgi?id=819275
|
||||
GLib.child_watch_add(GLib.PRIORITY_DEFAULT, pid, function () {}, null);
|
||||
GLib.child_watch_add(GLib.PRIORITY_DEFAULT, pid, function () {});
|
||||
}
|
||||
|
||||
// trySpawnCommandLine:
|
||||
|
@ -167,6 +167,8 @@ const AppSwitcherPopup = new Lang.Class({
|
||||
this._select(this._selectedIndex, this._nextWindow());
|
||||
else if (keysym == Clutter.Up)
|
||||
this._select(this._selectedIndex, null, true);
|
||||
else
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
} else {
|
||||
if (keysym == Clutter.Left)
|
||||
this._select(this._previous());
|
||||
@ -174,7 +176,11 @@ const AppSwitcherPopup = new Lang.Class({
|
||||
this._select(this._next());
|
||||
else if (keysym == Clutter.Down)
|
||||
this._select(this._selectedIndex, 0);
|
||||
else
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}
|
||||
|
||||
return Clutter.EVENT_STOP;
|
||||
},
|
||||
|
||||
_scrollHandler: function(direction) {
|
||||
@ -305,6 +311,7 @@ const AppSwitcherPopup = new Lang.Class({
|
||||
this._thumbnailTimeoutId = Mainloop.timeout_add (
|
||||
THUMBNAIL_POPUP_TIME,
|
||||
Lang.bind(this, this._timeoutPopupThumbnails));
|
||||
GLib.Source.set_name_by_id(this._thumbnailTimeoutId, '[gnome-shell] this._timeoutPopupThumbnails');
|
||||
}
|
||||
},
|
||||
|
||||
@ -365,7 +372,7 @@ const WindowSwitcherPopup = new Lang.Class({
|
||||
|
||||
_getWindowList: function() {
|
||||
let workspace = this._settings.get_boolean('current-workspace-only') ? global.screen.get_active_workspace() : null;
|
||||
return global.display.get_tab_list(Meta.TabList.NORMAL, global.screen, workspace);
|
||||
return global.display.get_tab_list(Meta.TabList.NORMAL, workspace);
|
||||
},
|
||||
|
||||
_createSwitcher: function() {
|
||||
@ -403,7 +410,11 @@ const WindowSwitcherPopup = new Lang.Class({
|
||||
this._select(this._previous());
|
||||
else if (keysym == Clutter.Right)
|
||||
this._select(this._next());
|
||||
else
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}
|
||||
|
||||
return Clutter.EVENT_STOP;
|
||||
},
|
||||
|
||||
_finish: function() {
|
||||
@ -448,8 +459,7 @@ const AppSwitcher = new Lang.Class({
|
||||
let settings = new Gio.Settings({ schema: 'org.gnome.shell.app-switcher' });
|
||||
let workspace = settings.get_boolean('current-workspace-only') ? global.screen.get_active_workspace()
|
||||
: null;
|
||||
let allWindows = global.display.get_tab_list(Meta.TabList.NORMAL,
|
||||
global.screen, workspace);
|
||||
let allWindows = global.display.get_tab_list(Meta.TabList.NORMAL, workspace);
|
||||
|
||||
// Construct the AppIcons, add to the popup
|
||||
for (let i = 0; i < apps.length; i++) {
|
||||
@ -556,6 +566,7 @@ const AppSwitcher = new Lang.Class({
|
||||
this._mouseTimeOutId = 0;
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._mouseTimeOutId, '[gnome-shell] this._enterItem');
|
||||
} else
|
||||
this._itemEntered(index);
|
||||
},
|
||||
|
@ -21,7 +21,9 @@ const Animation = new Lang.Class({
|
||||
this._isPlaying = false;
|
||||
this._timeoutId = 0;
|
||||
this._frame = 0;
|
||||
this._animations = St.TextureCache.get_default().load_sliced_image (filename, width, height,
|
||||
|
||||
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
|
||||
this._animations = St.TextureCache.get_default().load_sliced_image (filename, width, height, scaleFactor,
|
||||
Lang.bind(this, this._animationsLoaded));
|
||||
this.actor.set_child(this._animations);
|
||||
},
|
||||
@ -32,6 +34,7 @@ const Animation = new Lang.Class({
|
||||
this._showFrame(0);
|
||||
|
||||
this._timeoutId = Mainloop.timeout_add(this._speed, Lang.bind(this, this._update));
|
||||
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._update');
|
||||
}
|
||||
|
||||
this._isPlaying = true;
|
||||
|
@ -41,9 +41,7 @@ const MIN_FREQUENT_APPS_COUNT = 3;
|
||||
const INDICATORS_BASE_TIME = 0.25;
|
||||
const INDICATORS_ANIMATION_DELAY = 0.125;
|
||||
const INDICATORS_ANIMATION_MAX_TIME = 0.75;
|
||||
// Fraction of page height the finger or mouse must reach
|
||||
// to change page
|
||||
const PAGE_SWITCH_TRESHOLD = 0.2;
|
||||
|
||||
const PAGE_SWITCH_TIME = 0.3;
|
||||
|
||||
const VIEWS_SWITCH_TIME = 0.4;
|
||||
@ -81,6 +79,10 @@ function _getFolderName(folder) {
|
||||
return name;
|
||||
}
|
||||
|
||||
function clamp(value, min, max) {
|
||||
return Math.max(min, Math.min(max, value));
|
||||
}
|
||||
|
||||
const BaseAppView = new Lang.Class({
|
||||
Name: 'BaseAppView',
|
||||
Abstract: true,
|
||||
@ -99,6 +101,9 @@ const BaseAppView = new Lang.Class({
|
||||
else
|
||||
this._grid = new IconGrid.IconGrid(gridParams);
|
||||
|
||||
this._grid.connect('key-focus-in', Lang.bind(this, function(grid, actor) {
|
||||
this._keyFocusIn(actor);
|
||||
}));
|
||||
// Standard hack for ClutterBinLayout
|
||||
this._grid.actor.x_expand = true;
|
||||
|
||||
@ -106,6 +111,10 @@ const BaseAppView = new Lang.Class({
|
||||
this._allItems = [];
|
||||
},
|
||||
|
||||
_keyFocusIn: function(actor) {
|
||||
// Nothing by default
|
||||
},
|
||||
|
||||
removeAll: function() {
|
||||
this._grid.destroyAll();
|
||||
this._items = {};
|
||||
@ -432,8 +441,8 @@ const AllView = new Lang.Class({
|
||||
},
|
||||
|
||||
goToPage: function(pageNumber) {
|
||||
if(pageNumber < 0 || pageNumber > this._grid.nPages() - 1)
|
||||
return;
|
||||
pageNumber = clamp(pageNumber, 0, this._grid.nPages() - 1);
|
||||
|
||||
if (this._currentPage == pageNumber && this._displayingPopup && this._currentPopup)
|
||||
return;
|
||||
if (this._displayingPopup && this._currentPopup)
|
||||
@ -465,14 +474,12 @@ const AllView = new Lang.Class({
|
||||
// longer than PAGE_SWITCH_TIME
|
||||
time = Math.min(time, PAGE_SWITCH_TIME);
|
||||
|
||||
if (pageNumber < this._grid.nPages() && pageNumber >= 0) {
|
||||
this._currentPage = pageNumber;
|
||||
Tweener.addTween(this._adjustment,
|
||||
{ value: this._grid.getPageY(this._currentPage),
|
||||
time: time,
|
||||
transition: 'easeOutQuad' });
|
||||
this._pageIndicators.setCurrentPage(pageNumber);
|
||||
}
|
||||
this._currentPage = pageNumber;
|
||||
Tweener.addTween(this._adjustment,
|
||||
{ value: this._grid.getPageY(this._currentPage),
|
||||
time: time,
|
||||
transition: 'easeOutQuad' });
|
||||
this._pageIndicators.setCurrentPage(pageNumber);
|
||||
},
|
||||
|
||||
_diffToPage: function (pageNumber) {
|
||||
@ -519,15 +526,19 @@ const AllView = new Lang.Class({
|
||||
_onPanEnd: function(action) {
|
||||
if (this._displayingPopup)
|
||||
return;
|
||||
let diffCurrentPage = this._diffToPage(this._currentPage);
|
||||
if (diffCurrentPage > this._scrollView.height * PAGE_SWITCH_TRESHOLD) {
|
||||
if (action.get_velocity(0)[2] > 0)
|
||||
this.goToPage(this._currentPage - 1);
|
||||
else
|
||||
this.goToPage(this._currentPage + 1);
|
||||
} else {
|
||||
this.goToPage(this._currentPage);
|
||||
}
|
||||
|
||||
let pageHeight = this._grid.getPageHeight();
|
||||
|
||||
// Calculate the scroll value we'd be at, which is our current
|
||||
// scroll plus any velocity the user had when they released
|
||||
// their finger.
|
||||
|
||||
let velocity = -action.get_velocity(0)[2];
|
||||
let endPanValue = this._adjustment.value + velocity;
|
||||
|
||||
let closestPage = Math.round(endPanValue / pageHeight);
|
||||
this.goToPage(closestPage);
|
||||
|
||||
this._panning = false;
|
||||
},
|
||||
|
||||
@ -558,7 +569,7 @@ const AllView = new Lang.Class({
|
||||
}));
|
||||
},
|
||||
|
||||
_ensureIconVisible: function(icon) {
|
||||
_keyFocusIn: function(icon) {
|
||||
let itemPage = this._grid.getItemPage(icon);
|
||||
this.goToPage(itemPage);
|
||||
},
|
||||
@ -757,7 +768,7 @@ const AppDisplay = new Lang.Class({
|
||||
this._viewStack = new St.Widget({ x_expand: true, y_expand: true,
|
||||
layout_manager: this._viewStackLayout });
|
||||
this._viewStackLayout.connect('allocated-size-changed', Lang.bind(this, this._onAllocatedSizeChanged));
|
||||
this.actor.add_actor(this._viewStack, { expand: true });
|
||||
this.actor.add_actor(this._viewStack);
|
||||
let layout = new ControlsBoxLayout({ homogeneous: true });
|
||||
this._controls = new St.Widget({ style_class: 'app-view-controls',
|
||||
layout_manager: layout });
|
||||
@ -929,6 +940,10 @@ const FolderView = new Lang.Class({
|
||||
this.actor.add_action(action);
|
||||
},
|
||||
|
||||
_keyFocusIn: function(actor) {
|
||||
Util.ensureActorVisibleInScrollView(this.actor, actor);
|
||||
},
|
||||
|
||||
createFolderIcon: function(size) {
|
||||
let layout = new Clutter.TableLayout();
|
||||
let icon = new St.Widget({ layout_manager: layout,
|
||||
@ -1391,6 +1406,7 @@ const AppIcon = new Lang.Class({
|
||||
this.popupMenu();
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._menuTimeoutId, '[gnome-shell] this.popupMenu');
|
||||
} else if (button == 3) {
|
||||
this.popupMenu();
|
||||
return Clutter.EVENT_STOP;
|
||||
@ -1586,6 +1602,26 @@ const AppIconMenu = new Lang.Class({
|
||||
favs.addFavorite(this._source.app.get_id());
|
||||
}));
|
||||
}
|
||||
|
||||
if (Shell.AppSystem.get_default().lookup_app('org.gnome.Software.desktop')) {
|
||||
this._appendSeparator();
|
||||
let item = this._appendMenuItem(_("Show Details"));
|
||||
item.connect('activate', Lang.bind(this, function() {
|
||||
let id = this._source.app.get_id();
|
||||
let args = GLib.Variant.new('(ss)', [id, '']);
|
||||
Gio.DBus.get(Gio.BusType.SESSION, null,
|
||||
function(o, res) {
|
||||
let bus = Gio.DBus.get_finish(res);
|
||||
bus.call('org.gnome.Software',
|
||||
'/org/gnome/Software',
|
||||
'org.gtk.Actions', 'Activate',
|
||||
GLib.Variant.new('(sava{sv})',
|
||||
['details', [args], null]),
|
||||
null, 0, -1, null, null);
|
||||
Main.overview.hide();
|
||||
});
|
||||
}));
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -271,10 +271,11 @@ const BackgroundCache = new Lang.Class({
|
||||
|
||||
if (this._animationFilename == params.filename) {
|
||||
if (params.onLoaded) {
|
||||
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
|
||||
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
|
||||
params.onLoaded(this._animation);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] params.onLoaded');
|
||||
}
|
||||
}
|
||||
|
||||
@ -286,10 +287,11 @@ const BackgroundCache = new Lang.Class({
|
||||
this._animation = animation;
|
||||
|
||||
if (params.onLoaded) {
|
||||
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
|
||||
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
|
||||
params.onLoaded(this._animation);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] params.onLoaded');
|
||||
}
|
||||
}));
|
||||
}
|
||||
@ -386,10 +388,11 @@ const Background = new Lang.Class({
|
||||
|
||||
this.isLoaded = true;
|
||||
|
||||
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
|
||||
let id = GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this, function() {
|
||||
this.emit('loaded');
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] this.emit');
|
||||
},
|
||||
|
||||
_loadPattern: function() {
|
||||
@ -532,6 +535,7 @@ const Background = new Lang.Class({
|
||||
this._updateAnimation();
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._updateAnimationTimeoutId, '[gnome-shell] this._updateAnimation');
|
||||
},
|
||||
|
||||
_loadAnimation: function(filename) {
|
||||
|
@ -35,7 +35,7 @@ function addBackgroundMenu(actor, layoutManager) {
|
||||
|
||||
function openMenu() {
|
||||
let [x, y] = global.get_pointer();
|
||||
Main.layoutManager.setDummyCursorPosition(x, y);
|
||||
Main.layoutManager.setDummyCursorGeometry(x, y, 0, 0);
|
||||
actor._backgroundMenu.open(BoxPointer.PopupAnimation.NONE);
|
||||
}
|
||||
|
||||
|
@ -14,6 +14,9 @@ const Shell = imports.gi.Shell;
|
||||
const MSECS_IN_DAY = 24 * 60 * 60 * 1000;
|
||||
const SHOW_WEEKDATE_KEY = 'show-weekdate';
|
||||
|
||||
// alias to prevent xgettext from picking up strings translated in GTK+
|
||||
const gtk30_ = Gettext_gtk30.gettext;
|
||||
|
||||
// in org.gnome.desktop.interface
|
||||
const CLOCK_FORMAT_KEY = 'clock-format';
|
||||
|
||||
@ -387,7 +390,7 @@ const Calendar = new Lang.Class({
|
||||
|
||||
// Find the ordering for month/year in the calendar heading
|
||||
this._headerFormatWithoutYear = '%B';
|
||||
switch (Gettext_gtk30.gettext('calendar:MY')) {
|
||||
switch (gtk30_('calendar:MY')) {
|
||||
case 'calendar:MY':
|
||||
this._headerFormat = '%B %Y';
|
||||
break;
|
||||
@ -405,9 +408,9 @@ const Calendar = new Lang.Class({
|
||||
|
||||
this._shouldDateGrabFocus = false;
|
||||
|
||||
this.actor = new St.Table({ homogeneous: false,
|
||||
style_class: 'calendar',
|
||||
reactive: true });
|
||||
this.actor = new St.Widget({ style_class: 'calendar',
|
||||
layout_manager: new Clutter.TableLayout(),
|
||||
reactive: true });
|
||||
|
||||
this.actor.connect('scroll-event',
|
||||
Lang.bind(this, this._onScroll));
|
||||
@ -438,13 +441,14 @@ const Calendar = new Lang.Class({
|
||||
},
|
||||
|
||||
_buildHeader: function() {
|
||||
let layout = this.actor.layout_manager;
|
||||
let offsetCols = this._useWeekdate ? 1 : 0;
|
||||
this.actor.destroy_all_children();
|
||||
|
||||
// Top line of the calendar '<| September 2009 |>'
|
||||
this._topBox = new St.BoxLayout();
|
||||
this.actor.add(this._topBox,
|
||||
{ row: 0, col: 0, col_span: offsetCols + 7 });
|
||||
layout.pack(this._topBox, 0, 0);
|
||||
layout.set_span(this._topBox, offsetCols + 7, 1);
|
||||
|
||||
this._backButton = new St.Button({ style_class: 'calendar-change-month-back',
|
||||
accessible_name: _("Previous month"),
|
||||
@ -476,10 +480,8 @@ const Calendar = new Lang.Class({
|
||||
let customDayAbbrev = _getCalendarDayAbbreviation(iter.getDay());
|
||||
let label = new St.Label({ style_class: 'calendar-day-base calendar-day-heading',
|
||||
text: customDayAbbrev });
|
||||
this.actor.add(label,
|
||||
{ row: 1,
|
||||
col: offsetCols + (7 + iter.getDay() - this._weekStart) % 7,
|
||||
x_fill: false, x_align: St.Align.MIDDLE });
|
||||
let col = offsetCols + (7 + iter.getDay() - this._weekStart) % 7;
|
||||
layout.pack(label, col, 1);
|
||||
iter.setTime(iter.getTime() + MSECS_IN_DAY);
|
||||
}
|
||||
|
||||
@ -598,6 +600,7 @@ const Calendar = new Lang.Class({
|
||||
|
||||
beginDate.setTime(beginDate.getTime() - (weekPadding + daysToWeekStart) * MSECS_IN_DAY);
|
||||
|
||||
let layout = this.actor.layout_manager;
|
||||
let iter = new Date(beginDate);
|
||||
let row = 2;
|
||||
// nRows here means 6 weeks + one header + one navbar
|
||||
@ -645,16 +648,15 @@ const Calendar = new Lang.Class({
|
||||
button.style_class = styleClass;
|
||||
|
||||
let offsetCols = this._useWeekdate ? 1 : 0;
|
||||
this.actor.add(button,
|
||||
{ row: row, col: offsetCols + (7 + iter.getDay() - this._weekStart) % 7 });
|
||||
let col = offsetCols + (7 + iter.getDay() - this._weekStart) % 7;
|
||||
layout.pack(button, col, row);
|
||||
|
||||
this._buttons.push(button);
|
||||
|
||||
if (this._useWeekdate && iter.getDay() == 4) {
|
||||
let label = new St.Label({ text: _getCalendarWeekForDate(iter).toString(),
|
||||
style_class: 'calendar-day-base calendar-week-number'});
|
||||
this.actor.add(label,
|
||||
{ row: row, col: 0, y_align: St.Align.MIDDLE });
|
||||
layout.pack(label, 0, row);
|
||||
}
|
||||
|
||||
iter.setTime(iter.getTime() + MSECS_IN_DAY);
|
||||
@ -697,7 +699,10 @@ const EventsList = new Lang.Class({
|
||||
Name: 'EventsList',
|
||||
|
||||
_init: function() {
|
||||
this.actor = new St.Table({ style_class: 'events-table' });
|
||||
let layout = new Clutter.TableLayout();
|
||||
this.actor = new St.Widget({ style_class: 'events-table',
|
||||
layout_manager: layout });
|
||||
layout.hookup_style(this.actor);
|
||||
this._date = new Date();
|
||||
this._desktopSettings = new Gio.Settings({ schema: 'org.gnome.desktop.interface' });
|
||||
this._desktopSettings.connect('changed', Lang.bind(this, this._update));
|
||||
@ -721,9 +726,11 @@ const EventsList = new Lang.Class({
|
||||
dayLabel.clutter_text.line_wrap = false;
|
||||
dayLabel.clutter_text.ellipsize = false;
|
||||
|
||||
this.actor.add(dayLabel, { row: index, col: 0,
|
||||
x_expand: false, x_align: St.Align.END,
|
||||
y_fill: false, y_align: St.Align.START });
|
||||
let layout = this.actor.layout_manager;
|
||||
layout.pack(dayLabel, 0, index);
|
||||
layout.child_set(dayLabel, { x_expand: false,
|
||||
x_align: Clutter.TableAlignment.END,
|
||||
y_align: Clutter.TableAlignment.START });
|
||||
|
||||
let clockFormat = this._desktopSettings.get_string(CLOCK_FORMAT_KEY);
|
||||
let timeString = _formatEventTime(event, clockFormat);
|
||||
@ -732,18 +739,17 @@ const EventsList = new Lang.Class({
|
||||
timeLabel.clutter_text.line_wrap = false;
|
||||
timeLabel.clutter_text.ellipsize = false;
|
||||
|
||||
this.actor.add(timeLabel, { row: index, col: 1,
|
||||
x_expand: false, x_align: St.Align.MIDDLE,
|
||||
y_fill: false, y_align: St.Align.START });
|
||||
layout.pack(timeLabel, 1, index);
|
||||
layout.child_set(timeLabel, { x_expand: false,
|
||||
y_align: Clutter.TableAlignment.START });
|
||||
|
||||
let titleLabel = new St.Label({ style_class: 'events-day-task',
|
||||
text: event.summary });
|
||||
titleLabel.clutter_text.line_wrap = true;
|
||||
titleLabel.clutter_text.ellipsize = false;
|
||||
|
||||
this.actor.add(titleLabel, { row: index, col: 2,
|
||||
x_expand: true, x_align: St.Align.START,
|
||||
y_fill: false, y_align: St.Align.START });
|
||||
layout.pack(titleLabel, 2, index);
|
||||
layout.child_set(titleLabel, { x_expand: true });
|
||||
},
|
||||
|
||||
_addPeriod: function(header, index, begin, end, includeDayName, showNothingScheduled) {
|
||||
@ -752,13 +758,10 @@ const EventsList = new Lang.Class({
|
||||
if (events.length == 0 && !showNothingScheduled)
|
||||
return index;
|
||||
|
||||
this.actor.add(new St.Label({ style_class: 'events-day-header', text: header }),
|
||||
{ row: index, col: 0, col_span: 3,
|
||||
// In theory, x_expand should be true here, but x_expand
|
||||
// is a property of the column for StTable, ie all day cells
|
||||
// get it too
|
||||
x_expand: false, x_align: St.Align.START,
|
||||
y_fill: false, y_align: St.Align.START });
|
||||
let label = new St.Label({ style_class: 'events-day-header', text: header });
|
||||
let layout = this.actor.layout_manager;
|
||||
layout.pack(label, 0, index);
|
||||
layout.child_set(label, { column_span: 3, x_expand: false });
|
||||
index++;
|
||||
|
||||
for (let n = 0; n < events.length; n++) {
|
||||
|
@ -43,6 +43,7 @@ const AutomountManager = new Lang.Class({
|
||||
this._driveEjectButtonId = this._volumeMonitor.connect('drive-eject-button', Lang.bind(this, this._onDriveEjectButton));
|
||||
|
||||
this._mountAllId = Mainloop.idle_add(Lang.bind(this, this._startupMountAll));
|
||||
GLib.Source.set_name_by_id(this._mountAllId, '[gnome-shell] this._startupMountAll');
|
||||
},
|
||||
|
||||
disable: function() {
|
||||
@ -234,10 +235,11 @@ const AutomountManager = new Lang.Class({
|
||||
},
|
||||
|
||||
_allowAutorunExpire: function(volume) {
|
||||
Mainloop.timeout_add_seconds(AUTORUN_EXPIRE_TIMEOUT_SECS, function() {
|
||||
let id = Mainloop.timeout_add_seconds(AUTORUN_EXPIRE_TIMEOUT_SECS, function() {
|
||||
volume.allowAutorun = false;
|
||||
return GLib.SOURCE_REMOVE;
|
||||
});
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] volume.allowAutorun');
|
||||
}
|
||||
});
|
||||
const Component = AutomountManager;
|
||||
|
@ -170,17 +170,6 @@ const AutorunManager = new Lang.Class({
|
||||
this._transDispatcher = new AutorunTransientDispatcher(this);
|
||||
},
|
||||
|
||||
_ensureResidentSource: function() {
|
||||
if (this._residentSource)
|
||||
return;
|
||||
|
||||
this._residentSource = new AutorunResidentSource(this);
|
||||
let destroyId = this._residentSource.connect('destroy', Lang.bind(this, function() {
|
||||
this._residentSource.disconnect(destroyId);
|
||||
this._residentSource = null;
|
||||
}));
|
||||
},
|
||||
|
||||
enable: function() {
|
||||
this._scanMounts();
|
||||
|
||||
@ -189,17 +178,12 @@ const AutorunManager = new Lang.Class({
|
||||
},
|
||||
|
||||
disable: function() {
|
||||
if (this._residentSource)
|
||||
this._residentSource.destroy();
|
||||
this._volumeMonitor.disconnect(this._mountAddedId);
|
||||
this._volumeMonitor.disconnect(this._mountRemovedId);
|
||||
},
|
||||
|
||||
_processMount: function(mount, hotplug) {
|
||||
let discoverer = new ContentTypeDiscoverer(Lang.bind(this, function(mount, apps, contentTypes) {
|
||||
this._ensureResidentSource();
|
||||
this._residentSource.addMount(mount, apps);
|
||||
|
||||
if (hotplug)
|
||||
this._transDispatcher.addMount(mount, apps, contentTypes);
|
||||
}));
|
||||
@ -224,8 +208,6 @@ const AutorunManager = new Lang.Class({
|
||||
|
||||
_onMountRemoved: function(monitor, mount) {
|
||||
this._transDispatcher.removeMount(mount);
|
||||
if (this._residentSource)
|
||||
this._residentSource.removeMount(mount);
|
||||
},
|
||||
|
||||
ejectMount: function(mount) {
|
||||
@ -288,153 +270,6 @@ const AutorunManager = new Lang.Class({
|
||||
},
|
||||
});
|
||||
|
||||
const AutorunResidentSource = new Lang.Class({
|
||||
Name: 'AutorunResidentSource',
|
||||
Extends: MessageTray.Source,
|
||||
|
||||
_init: function(manager) {
|
||||
this.parent(_("Removable Devices"), 'media-removable');
|
||||
this.resident = true;
|
||||
|
||||
this._mounts = [];
|
||||
|
||||
this._manager = manager;
|
||||
this._notification = new AutorunResidentNotification(this._manager, this);
|
||||
},
|
||||
|
||||
_createPolicy: function() {
|
||||
return new MessageTray.NotificationPolicy({ showInLockScreen: false });
|
||||
},
|
||||
|
||||
buildRightClickMenu: function() {
|
||||
return null;
|
||||
},
|
||||
|
||||
addMount: function(mount, apps) {
|
||||
if (!shouldAutorunMount(mount, false))
|
||||
return;
|
||||
|
||||
let filtered = this._mounts.filter(function (element) {
|
||||
return (element.mount == mount);
|
||||
});
|
||||
|
||||
if (filtered.length != 0)
|
||||
return;
|
||||
|
||||
let element = { mount: mount, apps: apps };
|
||||
this._mounts.push(element);
|
||||
this._redisplay();
|
||||
},
|
||||
|
||||
removeMount: function(mount) {
|
||||
this._mounts =
|
||||
this._mounts.filter(function (element) {
|
||||
return (element.mount != mount);
|
||||
});
|
||||
|
||||
this._redisplay();
|
||||
},
|
||||
|
||||
_redisplay: function() {
|
||||
if (this._mounts.length == 0) {
|
||||
this._notification.destroy();
|
||||
this.destroy();
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
this._notification.updateForMounts(this._mounts);
|
||||
|
||||
// add ourselves as a source, and push the notification
|
||||
if (!Main.messageTray.contains(this)) {
|
||||
Main.messageTray.add(this);
|
||||
this.pushNotification(this._notification);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
const AutorunResidentNotification = new Lang.Class({
|
||||
Name: 'AutorunResidentNotification',
|
||||
Extends: MessageTray.Notification,
|
||||
|
||||
_init: function(manager, source) {
|
||||
this.parent(source, source.title, null, { customContent: true });
|
||||
|
||||
// set the notification as resident
|
||||
this.setResident(true);
|
||||
|
||||
this._layout = new St.BoxLayout ({ style_class: 'hotplug-resident-box',
|
||||
vertical: true });
|
||||
this._manager = manager;
|
||||
|
||||
this.addActor(this._layout,
|
||||
{ x_expand: true,
|
||||
x_fill: true });
|
||||
},
|
||||
|
||||
updateForMounts: function(mounts) {
|
||||
// remove all the layout content
|
||||
this._layout.destroy_all_children();
|
||||
|
||||
for (let idx = 0; idx < mounts.length; idx++) {
|
||||
let element = mounts[idx];
|
||||
|
||||
let actor = this._itemForMount(element.mount, element.apps);
|
||||
this._layout.add(actor, { x_fill: true,
|
||||
expand: true });
|
||||
}
|
||||
},
|
||||
|
||||
_itemForMount: function(mount, apps) {
|
||||
let item = new St.BoxLayout();
|
||||
|
||||
// prepare the mount button content
|
||||
let mountLayout = new St.BoxLayout();
|
||||
|
||||
let mountIcon = new St.Icon({ gicon: mount.get_icon(),
|
||||
style_class: 'hotplug-resident-mount-icon' });
|
||||
mountLayout.add_actor(mountIcon);
|
||||
|
||||
let labelBin = new St.Bin({ y_align: St.Align.MIDDLE });
|
||||
let mountLabel =
|
||||
new St.Label({ text: mount.get_name(),
|
||||
style_class: 'hotplug-resident-mount-label',
|
||||
track_hover: true,
|
||||
reactive: true });
|
||||
labelBin.add_actor(mountLabel);
|
||||
mountLayout.add_actor(labelBin);
|
||||
|
||||
let mountButton = new St.Button({ child: mountLayout,
|
||||
x_align: St.Align.START,
|
||||
x_fill: true,
|
||||
style_class: 'hotplug-resident-mount',
|
||||
button_mask: St.ButtonMask.ONE });
|
||||
item.add(mountButton, { x_align: St.Align.START,
|
||||
expand: true });
|
||||
|
||||
let ejectIcon =
|
||||
new St.Icon({ icon_name: 'media-eject-symbolic',
|
||||
style_class: 'hotplug-resident-eject-icon' });
|
||||
|
||||
let ejectButton =
|
||||
new St.Button({ style_class: 'hotplug-resident-eject-button',
|
||||
button_mask: St.ButtonMask.ONE,
|
||||
child: ejectIcon });
|
||||
item.add(ejectButton, { x_align: St.Align.END });
|
||||
|
||||
// now connect signals
|
||||
mountButton.connect('clicked', Lang.bind(this, function(actor, event) {
|
||||
startAppForMount(apps[0], mount);
|
||||
}));
|
||||
|
||||
ejectButton.connect('clicked', Lang.bind(this, function() {
|
||||
this._manager.ejectMount(mount);
|
||||
}));
|
||||
|
||||
return item;
|
||||
},
|
||||
});
|
||||
|
||||
const AutorunTransientDispatcher = new Lang.Class({
|
||||
Name: 'AutorunTransientDispatcher',
|
||||
|
||||
@ -559,12 +394,12 @@ const AutorunTransientNotification = new Lang.Class({
|
||||
Extends: MessageTray.Notification,
|
||||
|
||||
_init: function(manager, source) {
|
||||
this.parent(source, source.title, null, { customContent: true });
|
||||
this.parent(source, source.title);
|
||||
|
||||
this._manager = manager;
|
||||
this._box = new St.BoxLayout({ style_class: 'hotplug-transient-box',
|
||||
vertical: true });
|
||||
this.addActor(this._box);
|
||||
this._bodyBin.child = this._box;
|
||||
|
||||
this._mount = source.mount;
|
||||
|
||||
|
@ -510,10 +510,12 @@ const VPNRequestHandler = new Lang.Class({
|
||||
|
||||
_showNewStyleDialog: function() {
|
||||
let keyfile = new GLib.KeyFile();
|
||||
let data;
|
||||
let contentOverride;
|
||||
|
||||
try {
|
||||
let data = this._dataStdout.peek_buffer();
|
||||
data = this._dataStdout.peek_buffer();
|
||||
|
||||
keyfile.load_from_data(data.toString(), data.length,
|
||||
GLib.KeyFileFlags.NONE);
|
||||
|
||||
@ -546,13 +548,16 @@ const VPNRequestHandler = new Lang.Class({
|
||||
}
|
||||
}
|
||||
} catch(e) {
|
||||
logError(e, 'error while reading VPN plugin output keyfile');
|
||||
// No output is a valid case it means "both secrets are stored"
|
||||
if (data.length > 0) {
|
||||
logError(e, 'error while reading VPN plugin output keyfile');
|
||||
|
||||
this._agent.respond(this._requestId, Shell.NetworkAgentResponse.INTERNAL_ERROR);
|
||||
return;
|
||||
this._agent.respond(this._requestId, Shell.NetworkAgentResponse.INTERNAL_ERROR);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (contentOverride.secrets.length) {
|
||||
if (contentOverride && contentOverride.secrets.length) {
|
||||
// Only show the dialog if we actually have something to ask
|
||||
this._shellDialog = new NetworkSecretDialog(this._agent, this._requestId, this._connection, 'vpn', [], contentOverride);
|
||||
this._shellDialog.open(global.get_current_time());
|
||||
|
@ -102,15 +102,6 @@ const TelepathyClient = new Lang.Class({
|
||||
this._tpClient.set_handle_channels_func(
|
||||
Lang.bind(this, this._handleChannels));
|
||||
|
||||
// Watch subscription requests and connection errors
|
||||
this._subscriptionSource = null;
|
||||
this._accountSource = null;
|
||||
|
||||
// Workaround for gjs not supporting GPtrArray in signals.
|
||||
// See BGO bug #653941 for context.
|
||||
this._tpClient.set_contact_list_changed_func(
|
||||
Lang.bind(this, this._contactListChanged));
|
||||
|
||||
// Allow other clients (such as Empathy) to pre-empt our channels if
|
||||
// needed
|
||||
this._tpClient.set_delegated_channels_callback(
|
||||
@ -124,17 +115,12 @@ const TelepathyClient = new Lang.Class({
|
||||
throw new Error('Couldn\'t register Telepathy client. Error: \n' + e);
|
||||
}
|
||||
|
||||
this._accountManagerValidityChangedId = this._accountManager.connect('account-validity-changed',
|
||||
Lang.bind(this, this._accountValidityChanged));
|
||||
|
||||
if (!this._accountManager.is_prepared(Tp.AccountManager.get_feature_quark_core()))
|
||||
this._accountManager.prepare_async(null, Lang.bind(this, this._accountManagerPrepared));
|
||||
},
|
||||
|
||||
disable: function() {
|
||||
this._tpClient.unregister();
|
||||
this._accountManager.disconnect(this._accountManagerValidityChangedId);
|
||||
this._accountManagerValidityChangedId = 0;
|
||||
},
|
||||
|
||||
_observeChannels: function(observer, account, conn, channels,
|
||||
@ -219,33 +205,6 @@ const TelepathyClient = new Lang.Class({
|
||||
}
|
||||
},
|
||||
|
||||
_displayRoomInvitation: function(conn, channel, dispatchOp, context) {
|
||||
// We can only approve the rooms if we have been invited to it
|
||||
let selfContact = channel.group_get_self_contact();
|
||||
if (selfContact == null) {
|
||||
context.fail(new Tp.Error({ code: Tp.Error.INVALID_ARGUMENT,
|
||||
message: 'Not invited to the room' }));
|
||||
return;
|
||||
}
|
||||
|
||||
let [invited, inviter, reason, msg] = channel.group_get_local_pending_contact_info(selfContact);
|
||||
if (!invited) {
|
||||
context.fail(new Tp.Error({ code: Tp.Error.INVALID_ARGUMENT,
|
||||
message: 'Not invited to the room' }));
|
||||
return;
|
||||
}
|
||||
|
||||
// FIXME: We don't have a 'chat room' icon (bgo #653737) use
|
||||
// system-users for now as Empathy does.
|
||||
let source = new ApproverSource(dispatchOp, _("Invitation"),
|
||||
Gio.icon_new_for_string('system-users'));
|
||||
Main.messageTray.add(source);
|
||||
|
||||
let notif = new RoomInviteNotification(source, dispatchOp, channel, inviter);
|
||||
source.notify(notif);
|
||||
context.accept();
|
||||
},
|
||||
|
||||
_approveChannels: function(approver, account, conn, channels,
|
||||
dispatchOp, context) {
|
||||
let channel = channels[0];
|
||||
@ -259,10 +218,6 @@ const TelepathyClient = new Lang.Class({
|
||||
|
||||
if (chanType == Tp.IFACE_CHANNEL_TYPE_TEXT)
|
||||
this._approveTextChannel(account, conn, channel, dispatchOp, context);
|
||||
else if (chanType == Tp.IFACE_CHANNEL_TYPE_CALL)
|
||||
this._approveCall(account, conn, channel, dispatchOp, context);
|
||||
else if (chanType == Tp.IFACE_CHANNEL_TYPE_FILE_TRANSFER)
|
||||
this._approveFileTransfer(account, conn, channel, dispatchOp, context);
|
||||
else
|
||||
context.fail(new Tp.Error({ code: Tp.Error.INVALID_ARGUMENT,
|
||||
message: 'Unsupported channel type' }));
|
||||
@ -283,45 +238,9 @@ const TelepathyClient = new Lang.Class({
|
||||
}}));
|
||||
|
||||
context.accept();
|
||||
} else {
|
||||
this._displayRoomInvitation(conn, channel, dispatchOp, context);
|
||||
}
|
||||
},
|
||||
|
||||
_approveCall: function(account, conn, channel, dispatchOp, context) {
|
||||
let isVideo = false;
|
||||
|
||||
let props = channel.borrow_immutable_properties();
|
||||
|
||||
if (props[Tp.PROP_CHANNEL_TYPE_CALL_INITIAL_VIDEO])
|
||||
isVideo = true;
|
||||
|
||||
// We got the TpContact
|
||||
let source = new ApproverSource(dispatchOp, _("Call"), isVideo ?
|
||||
Gio.icon_new_for_string('camera-web') :
|
||||
Gio.icon_new_for_string('audio-input-microphone'));
|
||||
Main.messageTray.add(source);
|
||||
|
||||
let notif = new AudioVideoNotification(source, dispatchOp, channel,
|
||||
channel.get_target_contact(), isVideo);
|
||||
source.notify(notif);
|
||||
context.accept();
|
||||
},
|
||||
|
||||
_approveFileTransfer: function(account, conn, channel, dispatchOp, context) {
|
||||
// Use the icon of the file being transferred
|
||||
let gicon = Gio.content_type_get_icon(channel.get_mime_type());
|
||||
|
||||
// We got the TpContact
|
||||
let source = new ApproverSource(dispatchOp, _("File Transfer"), gicon);
|
||||
Main.messageTray.add(source);
|
||||
|
||||
let notif = new FileTransferNotification(source, dispatchOp, channel,
|
||||
channel.get_target_contact());
|
||||
source.notify(notif);
|
||||
context.accept();
|
||||
},
|
||||
|
||||
_delegatedChannelsCb: function(client, channels) {
|
||||
// Nothing to do as we don't make a distinction between observed and
|
||||
// handled channels.
|
||||
@ -329,105 +248,7 @@ const TelepathyClient = new Lang.Class({
|
||||
|
||||
_accountManagerPrepared: function(am, result) {
|
||||
am.prepare_finish(result);
|
||||
|
||||
let accounts = am.get_valid_accounts();
|
||||
for (let i = 0; i < accounts.length; i++) {
|
||||
this._accountValidityChanged(am, accounts[i], true);
|
||||
}
|
||||
},
|
||||
|
||||
_accountValidityChanged: function(am, account, valid) {
|
||||
if (!valid)
|
||||
return;
|
||||
|
||||
// It would be better to connect to "status-changed" but we cannot.
|
||||
// See discussion in https://bugzilla.gnome.org/show_bug.cgi?id=654159
|
||||
account.connect("notify::connection-status",
|
||||
Lang.bind(this, this._accountConnectionStatusNotifyCb));
|
||||
|
||||
account.connect('notify::connection',
|
||||
Lang.bind(this, this._connectionChanged));
|
||||
this._connectionChanged(account);
|
||||
},
|
||||
|
||||
_connectionChanged: function(account) {
|
||||
let conn = account.get_connection();
|
||||
if (conn == null)
|
||||
return;
|
||||
|
||||
this._tpClient.grab_contact_list_changed(conn);
|
||||
if (conn.get_contact_list_state() == Tp.ContactListState.SUCCESS) {
|
||||
this._contactListChanged(conn, conn.dup_contact_list(), []);
|
||||
}
|
||||
},
|
||||
|
||||
_contactListChanged: function(conn, added, removed) {
|
||||
for (let i = 0; i < added.length; i++) {
|
||||
let contact = added[i];
|
||||
|
||||
contact.connect('subscription-states-changed',
|
||||
Lang.bind(this, this._subscriptionStateChanged));
|
||||
this._subscriptionStateChanged(contact);
|
||||
}
|
||||
},
|
||||
|
||||
_subscriptionStateChanged: function(contact) {
|
||||
if (contact.get_publish_state() != Tp.SubscriptionState.ASK)
|
||||
return;
|
||||
|
||||
/* Implicitly accept publish requests if contact is already subscribed */
|
||||
if (contact.get_subscribe_state() == Tp.SubscriptionState.YES ||
|
||||
contact.get_subscribe_state() == Tp.SubscriptionState.ASK) {
|
||||
|
||||
contact.authorize_publication_async(function(src, result) {
|
||||
src.authorize_publication_finish(result)});
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
/* Display notification to ask user to accept/reject request */
|
||||
let source = this._ensureAppSource();
|
||||
|
||||
let notif = new SubscriptionRequestNotification(source, contact);
|
||||
source.notify(notif);
|
||||
},
|
||||
|
||||
_accountConnectionStatusNotifyCb: function(account) {
|
||||
let connectionError = account.connection_error;
|
||||
|
||||
if (account.connection_status != Tp.ConnectionStatus.DISCONNECTED ||
|
||||
connectionError == Tp.error_get_dbus_name(Tp.Error.CANCELLED)) {
|
||||
return;
|
||||
}
|
||||
|
||||
let notif = this._accountNotifications[account.get_object_path()];
|
||||
if (notif)
|
||||
return;
|
||||
|
||||
/* Display notification that account failed to connect */
|
||||
let source = this._ensureAppSource();
|
||||
|
||||
notif = new AccountNotification(source, account, connectionError);
|
||||
this._accountNotifications[account.get_object_path()] = notif;
|
||||
notif.connect('destroy', Lang.bind(this, function() {
|
||||
delete this._accountNotifications[account.get_object_path()];
|
||||
}));
|
||||
source.notify(notif);
|
||||
},
|
||||
|
||||
_ensureAppSource: function() {
|
||||
if (this._appSource == null) {
|
||||
this._appSource = new MessageTray.Source(_("Chat"), 'empathy');
|
||||
this._appSource.policy = new MessageTray.NotificationApplicationPolicy('empathy');
|
||||
|
||||
Main.messageTray.add(this._appSource);
|
||||
this._appSource.connect('destroy', Lang.bind(this, function () {
|
||||
this._appSource = null;
|
||||
}));
|
||||
}
|
||||
|
||||
return this._appSource;
|
||||
}
|
||||
});
|
||||
|
||||
const ChatSource = new Lang.Class({
|
||||
@ -545,7 +366,7 @@ const ChatSource = new Lang.Class({
|
||||
|
||||
_updateAvatarIcon: function() {
|
||||
this.iconUpdated();
|
||||
this._notification.update(this._notification.title, null, { customContent: true });
|
||||
this._notification.update(this._notification.title);
|
||||
},
|
||||
|
||||
open: function() {
|
||||
@ -681,6 +502,7 @@ const ChatSource = new Lang.Class({
|
||||
Mainloop.source_remove(this._notifyTimeoutId);
|
||||
this._notifyTimeoutId = Mainloop.timeout_add(500,
|
||||
Lang.bind(this, this._notifyTimeout));
|
||||
GLib.Source.set_name_by_id(this._notifyTimeoutId, '[gnome-shell] this._notifyTimeout');
|
||||
},
|
||||
|
||||
_notifyTimeout: function() {
|
||||
@ -736,7 +558,7 @@ const ChatSource = new Lang.Class({
|
||||
|
||||
title = GLib.markup_escape_text(this.title, -1);
|
||||
|
||||
this._notification.update(this._notification.title, null, { customContent: true, secondaryGIcon: this.getSecondaryIcon() });
|
||||
this._notification.update(this._notification.title, null, { secondaryGIcon: this.getSecondaryIcon() });
|
||||
|
||||
if (message)
|
||||
msg += ' <i>(' + GLib.markup_escape_text(message, -1) + ')</i>';
|
||||
@ -763,8 +585,7 @@ const ChatNotification = new Lang.Class({
|
||||
Extends: MessageTray.Notification,
|
||||
|
||||
_init: function(source) {
|
||||
this.parent(source, source.title, null, { customContent: true, secondaryGIcon: source.getSecondaryIcon() });
|
||||
this.setResident(true);
|
||||
this.parent(source, source.title, null, { secondaryGIcon: source.getSecondaryIcon() });
|
||||
|
||||
this._responseEntry = new St.Entry({ style_class: 'chat-response',
|
||||
can_focus: true });
|
||||
@ -780,16 +601,17 @@ const ChatNotification = new Lang.Class({
|
||||
this.emit('unfocused');
|
||||
}));
|
||||
|
||||
this._createScrollArea();
|
||||
this._lastGroup = null;
|
||||
this._lastGroupActor = null;
|
||||
|
||||
this._bodyBox = new St.BoxLayout({ style_class: 'chat-notification-body-box' });
|
||||
this._bodyBin.child = this._bodyBox;
|
||||
|
||||
// Keep track of the bottom position for the current adjustment and
|
||||
// force a scroll to the bottom if things change while we were at the
|
||||
// bottom
|
||||
this._oldMaxScrollValue = this._scrollArea.vscroll.adjustment.value;
|
||||
this._scrollArea.add_style_class_name('chat-notification-scrollview');
|
||||
this._scrollArea.vscroll.adjustment.connect('changed', Lang.bind(this, function(adjustment) {
|
||||
this._oldMaxScrollValue = this._bodyScrollArea.vscroll.adjustment.value;
|
||||
this._bodyScrollArea.add_style_class_name('chat-notification-scrollview');
|
||||
this._bodyScrollArea.vscroll.adjustment.connect('changed', Lang.bind(this, function(adjustment) {
|
||||
if (adjustment.value == this._oldMaxScrollValue)
|
||||
this.scrollTo(St.Side.BOTTOM);
|
||||
this._oldMaxScrollValue = Math.max(adjustment.lower, adjustment.upper - adjustment.page_size);
|
||||
@ -826,8 +648,7 @@ const ChatNotification = new Lang.Class({
|
||||
}
|
||||
|
||||
if (message.direction == NotificationDirection.RECEIVED) {
|
||||
this.update(this.source.title, messageBody, { customContent: true,
|
||||
bannerMarkup: true });
|
||||
this.update(this.source.title, messageBody, { bannerMarkup: true });
|
||||
}
|
||||
|
||||
let group = (message.direction == NotificationDirection.RECEIVED ?
|
||||
@ -864,7 +685,7 @@ const ChatNotification = new Lang.Class({
|
||||
expired[i].actor.destroy();
|
||||
}
|
||||
|
||||
let groups = this._contentArea.get_children();
|
||||
let groups = this._bodyBox.get_children();
|
||||
for (let i = 0; i < groups.length; i++) {
|
||||
let group = groups[i];
|
||||
if (group.get_n_children() == 0)
|
||||
@ -896,9 +717,9 @@ const ChatNotification = new Lang.Class({
|
||||
if (this._timestampTimeoutId)
|
||||
Mainloop.source_remove(this._timestampTimeoutId);
|
||||
|
||||
let highlighter = new MessageTray.URLHighlighter(props.body,
|
||||
true, // line wrap?
|
||||
true); // allow markup?
|
||||
let highlighter = new MessageTray.URLHighlighter();
|
||||
highlighter.actor.clutter_text.line_wrap = true;
|
||||
highlighter.setMarkup(props.body, true);
|
||||
|
||||
let body = highlighter.actor;
|
||||
|
||||
@ -910,28 +731,32 @@ const ChatNotification = new Lang.Class({
|
||||
if (group != this._lastGroup) {
|
||||
this._lastGroup = group;
|
||||
let emptyLine = new St.Label({ style_class: 'chat-empty-line' });
|
||||
this.addActor(emptyLine);
|
||||
this._bodyBox.add_child(emptyLine);
|
||||
}
|
||||
|
||||
this._lastMessageBox = new St.BoxLayout({ vertical: false });
|
||||
this._lastMessageBox.add(body, props.childProps);
|
||||
this.addActor(this._lastMessageBox);
|
||||
|
||||
this.updated();
|
||||
let revealer = new MessageTray.Revealer(body);
|
||||
this._lastMessageBox.add(revealer, props.childProps);
|
||||
revealer.show(true);
|
||||
|
||||
this._bodyBox.add_child(this._lastMessageBox);
|
||||
|
||||
let timestamp = props.timestamp;
|
||||
this._history.unshift({ actor: body, time: timestamp,
|
||||
realMessage: group != 'meta' });
|
||||
|
||||
if (!props.noTimestamp) {
|
||||
if (timestamp < currentTime - SCROLLBACK_IMMEDIATE_TIME)
|
||||
if (timestamp < currentTime - SCROLLBACK_IMMEDIATE_TIME) {
|
||||
this.appendTimestamp();
|
||||
else
|
||||
} else {
|
||||
// Schedule a new timestamp in SCROLLBACK_IMMEDIATE_TIME
|
||||
// from the timestamp of the message.
|
||||
this._timestampTimeoutId = Mainloop.timeout_add_seconds(
|
||||
SCROLLBACK_IMMEDIATE_TIME - (currentTime - timestamp),
|
||||
Lang.bind(this, this.appendTimestamp));
|
||||
GLib.Source.set_name_by_id(this._timestampTimeoutId, '[gnome-shell] this.appendTimestamp');
|
||||
}
|
||||
}
|
||||
|
||||
this._filterMessages();
|
||||
@ -946,78 +771,74 @@ const ChatNotification = new Lang.Class({
|
||||
|
||||
let desktopSettings = new Gio.Settings({ schema: 'org.gnome.desktop.interface' });
|
||||
let clockFormat = desktopSettings.get_string(CLOCK_FORMAT_KEY);
|
||||
let hasAmPm = date.toLocaleFormat('%p') != '';
|
||||
|
||||
switch (clockFormat) {
|
||||
case '24h':
|
||||
// Show only the time if date is on today
|
||||
if(daysAgo < 1){
|
||||
/* Translators: Time in 24h format */
|
||||
format = _("%H\u2236%M");
|
||||
}
|
||||
// Show the word "Yesterday" and time if date is on yesterday
|
||||
else if(daysAgo <2){
|
||||
/* Translators: this is the word "Yesterday" followed by a
|
||||
time string in 24h format. i.e. "Yesterday, 14:30" */
|
||||
// xgettext:no-c-format
|
||||
format = _("Yesterday, %H\u2236%M");
|
||||
}
|
||||
// Show a week day and time if date is in the last week
|
||||
else if (daysAgo < 7) {
|
||||
/* Translators: this is the week day name followed by a time
|
||||
string in 24h format. i.e. "Monday, 14:30" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%A, %H\u2236%M");
|
||||
if (clockFormat == '24h' || !hasAmPm) {
|
||||
// Show only the time if date is on today
|
||||
if(daysAgo < 1){
|
||||
/* Translators: Time in 24h format */
|
||||
format = _("%H\u2236%M");
|
||||
}
|
||||
// Show the word "Yesterday" and time if date is on yesterday
|
||||
else if(daysAgo <2){
|
||||
/* Translators: this is the word "Yesterday" followed by a
|
||||
time string in 24h format. i.e. "Yesterday, 14:30" */
|
||||
// xgettext:no-c-format
|
||||
format = _("Yesterday, %H\u2236%M");
|
||||
}
|
||||
// Show a week day and time if date is in the last week
|
||||
else if (daysAgo < 7) {
|
||||
/* Translators: this is the week day name followed by a time
|
||||
string in 24h format. i.e. "Monday, 14:30" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%A, %H\u2236%M");
|
||||
|
||||
} else if (date.getYear() == now.getYear()) {
|
||||
/* Translators: this is the month name and day number
|
||||
followed by a time string in 24h format.
|
||||
i.e. "May 25, 14:30" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%B %d, %H\u2236%M");
|
||||
} else {
|
||||
/* Translators: this is the month name, day number, year
|
||||
number followed by a time string in 24h format.
|
||||
i.e. "May 25 2012, 14:30" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%B %d %Y, %H\u2236%M");
|
||||
}
|
||||
break;
|
||||
default:
|
||||
/* explicit fall-through */
|
||||
case '12h':
|
||||
// Show only the time if date is on today
|
||||
if(daysAgo < 1){
|
||||
/* Translators: Time in 24h format */
|
||||
format = _("%l\u2236%M %p");
|
||||
}
|
||||
// Show the word "Yesterday" and time if date is on yesterday
|
||||
else if(daysAgo <2){
|
||||
/* Translators: this is the word "Yesterday" followed by a
|
||||
time string in 12h format. i.e. "Yesterday, 2:30 pm" */
|
||||
// xgettext:no-c-format
|
||||
format = _("Yesterday, %l\u2236%M %p");
|
||||
}
|
||||
// Show a week day and time if date is in the last week
|
||||
else if (daysAgo < 7) {
|
||||
/* Translators: this is the week day name followed by a time
|
||||
string in 12h format. i.e. "Monday, 2:30 pm" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%A, %l\u2236%M %p");
|
||||
} else if (date.getYear() == now.getYear()) {
|
||||
/* Translators: this is the month name and day number
|
||||
followed by a time string in 24h format.
|
||||
i.e. "May 25, 14:30" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%B %d, %H\u2236%M");
|
||||
} else {
|
||||
/* Translators: this is the month name, day number, year
|
||||
number followed by a time string in 24h format.
|
||||
i.e. "May 25 2012, 14:30" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%B %d %Y, %H\u2236%M");
|
||||
}
|
||||
} else {
|
||||
// Show only the time if date is on today
|
||||
if(daysAgo < 1){
|
||||
/* Translators: Time in 24h format */
|
||||
format = _("%l\u2236%M %p");
|
||||
}
|
||||
// Show the word "Yesterday" and time if date is on yesterday
|
||||
else if(daysAgo <2){
|
||||
/* Translators: this is the word "Yesterday" followed by a
|
||||
time string in 12h format. i.e. "Yesterday, 2:30 pm" */
|
||||
// xgettext:no-c-format
|
||||
format = _("Yesterday, %l\u2236%M %p");
|
||||
}
|
||||
// Show a week day and time if date is in the last week
|
||||
else if (daysAgo < 7) {
|
||||
/* Translators: this is the week day name followed by a time
|
||||
string in 12h format. i.e. "Monday, 2:30 pm" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%A, %l\u2236%M %p");
|
||||
|
||||
} else if (date.getYear() == now.getYear()) {
|
||||
/* Translators: this is the month name and day number
|
||||
followed by a time string in 12h format.
|
||||
i.e. "May 25, 2:30 pm" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%B %d, %l\u2236%M %p");
|
||||
} else {
|
||||
/* Translators: this is the month name, day number, year
|
||||
number followed by a time string in 12h format.
|
||||
i.e. "May 25 2012, 2:30 pm"*/
|
||||
// xgettext:no-c-format
|
||||
format = _("%B %d %Y, %l\u2236%M %p");
|
||||
}
|
||||
break;
|
||||
} else if (date.getYear() == now.getYear()) {
|
||||
/* Translators: this is the month name and day number
|
||||
followed by a time string in 12h format.
|
||||
i.e. "May 25, 2:30 pm" */
|
||||
// xgettext:no-c-format
|
||||
format = _("%B %d, %l\u2236%M %p");
|
||||
} else {
|
||||
/* Translators: this is the month name, day number, year
|
||||
number followed by a time string in 12h format.
|
||||
i.e. "May 25 2012, 2:30 pm"*/
|
||||
// xgettext:no-c-format
|
||||
format = _("%B %d %Y, %l\u2236%M %p");
|
||||
}
|
||||
}
|
||||
return date.toLocaleFormat(format);
|
||||
},
|
||||
@ -1054,7 +875,7 @@ const ChatNotification = new Lang.Class({
|
||||
group: 'meta',
|
||||
styles: ['chat-meta-message'] });
|
||||
|
||||
this.update(newAlias, null, { customContent: true });
|
||||
this.update(newAlias);
|
||||
|
||||
this._filterMessages();
|
||||
},
|
||||
@ -1100,364 +921,11 @@ const ChatNotification = new Lang.Class({
|
||||
this._composingTimeoutId = Mainloop.timeout_add_seconds(
|
||||
COMPOSING_STOP_TIMEOUT,
|
||||
Lang.bind(this, this._composingStopTimeout));
|
||||
GLib.Source.set_name_by_id(this._composingTimeoutId, '[gnome-shell] this._composingStopTimeout');
|
||||
} else {
|
||||
this.source.setChatState(Tp.ChannelChatState.ACTIVE);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
const ApproverSource = new Lang.Class({
|
||||
Name: 'ApproverSource',
|
||||
Extends: MessageTray.Source,
|
||||
|
||||
_init: function(dispatchOp, text, gicon) {
|
||||
this._gicon = gicon;
|
||||
|
||||
this.parent(text);
|
||||
|
||||
this._dispatchOp = dispatchOp;
|
||||
|
||||
// Destroy the source if the channel dispatch operation is invalidated
|
||||
// as we can't approve any more.
|
||||
this._invalidId = dispatchOp.connect('invalidated',
|
||||
Lang.bind(this, function(domain, code, msg) {
|
||||
this.destroy();
|
||||
}));
|
||||
},
|
||||
|
||||
_createPolicy: function() {
|
||||
return new MessageTray.NotificationApplicationPolicy('empathy');
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
if (this._invalidId != 0) {
|
||||
this._dispatchOp.disconnect(this._invalidId);
|
||||
this._invalidId = 0;
|
||||
}
|
||||
|
||||
this.parent();
|
||||
},
|
||||
|
||||
getIcon: function() {
|
||||
return this._gicon;
|
||||
}
|
||||
});
|
||||
|
||||
const RoomInviteNotification = new Lang.Class({
|
||||
Name: 'RoomInviteNotification',
|
||||
Extends: MessageTray.Notification,
|
||||
|
||||
_init: function(source, dispatchOp, channel, inviter) {
|
||||
this.parent(source,
|
||||
/* translators: argument is a room name like
|
||||
* room@jabber.org for example. */
|
||||
_("Invitation to %s").format(channel.get_identifier()),
|
||||
null,
|
||||
{ customContent: true });
|
||||
this.setResident(true);
|
||||
|
||||
/* 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. */
|
||||
this.addBody(_("%s is inviting you to join %s").format(inviter.get_alias(), channel.get_identifier()));
|
||||
|
||||
this.addAction(_("Decline"), Lang.bind(this, function() {
|
||||
dispatchOp.leave_channels_async(Tp.ChannelGroupChangeReason.NONE, '', function(src, result) {
|
||||
src.leave_channels_finish(result);
|
||||
});
|
||||
this.destroy();
|
||||
}));
|
||||
this.addAction(_("Accept"), Lang.bind(this, function() {
|
||||
dispatchOp.handle_with_time_async('', global.get_current_time(), function(src, result) {
|
||||
src.handle_with_time_finish(result);
|
||||
});
|
||||
this.destroy();
|
||||
}));
|
||||
}
|
||||
});
|
||||
|
||||
// Audio Video
|
||||
const AudioVideoNotification = new Lang.Class({
|
||||
Name: 'AudioVideoNotification',
|
||||
Extends: MessageTray.Notification,
|
||||
|
||||
_init: function(source, dispatchOp, channel, contact, isVideo) {
|
||||
let title = '';
|
||||
|
||||
if (isVideo)
|
||||
/* translators: argument is a contact name like Alice for example. */
|
||||
title = _("Video call from %s").format(contact.get_alias());
|
||||
else
|
||||
/* translators: argument is a contact name like Alice for example. */
|
||||
title = _("Call from %s").format(contact.get_alias());
|
||||
|
||||
this.parent(source, title, null, { customContent: true });
|
||||
this.setResident(true);
|
||||
|
||||
this.setUrgency(MessageTray.Urgency.CRITICAL);
|
||||
|
||||
this.addAction(_("Decline"), Lang.bind(this, function() {
|
||||
dispatchOp.leave_channels_async(Tp.ChannelGroupChangeReason.NONE, '', function(src, result) {
|
||||
src.leave_channels_finish(result);
|
||||
});
|
||||
this.destroy();
|
||||
}));
|
||||
/* translators: this is a button label (verb), not a noun */
|
||||
this.addAction(_("Answer"), Lang.bind(this, function() {
|
||||
dispatchOp.handle_with_time_async('', global.get_current_time(), function(src, result) {
|
||||
src.handle_with_time_finish(result);
|
||||
});
|
||||
this.destroy();
|
||||
}));
|
||||
}
|
||||
});
|
||||
|
||||
// File Transfer
|
||||
const FileTransferNotification = new Lang.Class({
|
||||
Name: 'FileTransferNotification',
|
||||
Extends: MessageTray.Notification,
|
||||
|
||||
_init: function(source, dispatchOp, channel, contact) {
|
||||
this.parent(source,
|
||||
/* To translators: The first parameter is
|
||||
* the contact's alias and the second one is the
|
||||
* file name. The string will be something
|
||||
* like: "Alice is sending you test.ogg"
|
||||
*/
|
||||
_("%s is sending you %s").format(contact.get_alias(),
|
||||
channel.get_filename()),
|
||||
null,
|
||||
{ customContent: true });
|
||||
this.setResident(true);
|
||||
|
||||
this.addAction(_("Decline"), Lang.bind(this, function() {
|
||||
dispatchOp.leave_channels_async(Tp.ChannelGroupChangeReason.NONE, '', function(src, result) {
|
||||
src.leave_channels_finish(result);
|
||||
});
|
||||
this.destroy();
|
||||
}));
|
||||
this.addAction(_("Accept"), Lang.bind(this, function() {
|
||||
dispatchOp.handle_with_time_async('', global.get_current_time(), function(src, result) {
|
||||
src.handle_with_time_finish(result);
|
||||
});
|
||||
this.destroy();
|
||||
}));
|
||||
}
|
||||
});
|
||||
|
||||
// Subscription request
|
||||
const SubscriptionRequestNotification = new Lang.Class({
|
||||
Name: 'SubscriptionRequestNotification',
|
||||
Extends: MessageTray.Notification,
|
||||
|
||||
_init: function(source, contact) {
|
||||
this.parent(source,
|
||||
/* To translators: The parameter is the contact's alias */
|
||||
_("%s would like permission to see when you are online").format(contact.get_alias()),
|
||||
null, { customContent: true });
|
||||
|
||||
this._contact = contact;
|
||||
this._connection = contact.get_connection();
|
||||
|
||||
let layout = new St.BoxLayout({ vertical: false });
|
||||
|
||||
// Display avatar
|
||||
let iconBox = new St.Bin({ style_class: 'avatar-box' });
|
||||
iconBox._size = 48;
|
||||
|
||||
let textureCache = St.TextureCache.get_default();
|
||||
let file = contact.get_avatar_file();
|
||||
|
||||
if (file) {
|
||||
let uri = file.get_uri();
|
||||
iconBox.child = textureCache.load_uri_async(uri, iconBox._size, iconBox._size);
|
||||
}
|
||||
else {
|
||||
iconBox.child = new St.Icon({ icon_name: 'avatar-default',
|
||||
icon_size: iconBox._size });
|
||||
}
|
||||
|
||||
layout.add(iconBox);
|
||||
|
||||
// subscription request message
|
||||
let label = new St.Label({ style_class: 'subscription-message',
|
||||
text: contact.get_publish_request() });
|
||||
|
||||
layout.add(label);
|
||||
|
||||
this.addActor(layout);
|
||||
|
||||
this.addAction(_("Decline"), Lang.bind(this, function() {
|
||||
contact.remove_async(function(src, result) {
|
||||
src.remove_finish(result);
|
||||
});
|
||||
}));
|
||||
this.addAction(_("Accept"), Lang.bind(this, function() {
|
||||
// Authorize the contact and request to see his status as well
|
||||
contact.authorize_publication_async(function(src, result) {
|
||||
src.authorize_publication_finish(result);
|
||||
});
|
||||
|
||||
contact.request_subscription_async('', function(src, result) {
|
||||
src.request_subscription_finish(result);
|
||||
});
|
||||
}));
|
||||
|
||||
this._changedId = contact.connect('subscription-states-changed',
|
||||
Lang.bind(this, this._subscriptionStatesChangedCb));
|
||||
this._invalidatedId = this._connection.connect('invalidated',
|
||||
Lang.bind(this, this.destroy));
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
if (this._changedId != 0) {
|
||||
this._contact.disconnect(this._changedId);
|
||||
this._changedId = 0;
|
||||
}
|
||||
|
||||
if (this._invalidatedId != 0) {
|
||||
this._connection.disconnect(this._invalidatedId);
|
||||
this._invalidatedId = 0;
|
||||
}
|
||||
|
||||
this.parent();
|
||||
},
|
||||
|
||||
_subscriptionStatesChangedCb: function(contact, subscribe, publish, msg) {
|
||||
// Destroy the notification if the subscription request has been
|
||||
// answered
|
||||
if (publish != Tp.SubscriptionState.ASK)
|
||||
this.destroy();
|
||||
}
|
||||
});
|
||||
|
||||
// Messages from empathy/libempathy/empathy-utils.c
|
||||
// create_errors_to_message_hash()
|
||||
|
||||
/* Translator note: these should be the same messages that are
|
||||
* used in Empathy, so just copy and paste from there. */
|
||||
let _connectionErrorMessages = {};
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.NETWORK_ERROR)]
|
||||
= _("Network error");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.AUTHENTICATION_FAILED)]
|
||||
= _("Authentication failed");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.ENCRYPTION_ERROR)]
|
||||
= _("Encryption error");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_NOT_PROVIDED)]
|
||||
= _("Certificate not provided");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_UNTRUSTED)]
|
||||
= _("Certificate untrusted");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_EXPIRED)]
|
||||
= _("Certificate expired");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_NOT_ACTIVATED)]
|
||||
= _("Certificate not activated");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_HOSTNAME_MISMATCH)]
|
||||
= _("Certificate hostname mismatch");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_FINGERPRINT_MISMATCH)]
|
||||
= _("Certificate fingerprint mismatch");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_SELF_SIGNED)]
|
||||
= _("Certificate self-signed");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CANCELLED)]
|
||||
= _("Status is set to offline");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.ENCRYPTION_NOT_AVAILABLE)]
|
||||
= _("Encryption is not available");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_INVALID)]
|
||||
= _("Certificate is invalid");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CONNECTION_REFUSED)]
|
||||
= _("Connection has been refused");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CONNECTION_FAILED)]
|
||||
= _("Connection can't be established");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CONNECTION_LOST)]
|
||||
= _("Connection has been lost");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.ALREADY_CONNECTED)]
|
||||
= _("This account is already connected to the server");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CONNECTION_REPLACED)]
|
||||
= _("Connection has been replaced by a new connection using the same resource");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.REGISTRATION_EXISTS)]
|
||||
= _("The account already exists on the server");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.SERVICE_BUSY)]
|
||||
= _("Server is currently too busy to handle the connection");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_REVOKED)]
|
||||
= _("Certificate has been revoked");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_INSECURE)]
|
||||
= _("Certificate uses an insecure cipher algorithm or is cryptographically weak");
|
||||
_connectionErrorMessages[Tp.error_get_dbus_name(Tp.Error.CERT_LIMIT_EXCEEDED)]
|
||||
= _("The length of the server certificate, or the depth of the server certificate chain, exceed the limits imposed by the cryptography library");
|
||||
_connectionErrorMessages['org.freedesktop.DBus.Error.NoReply']
|
||||
= _("Internal error");
|
||||
|
||||
const AccountNotification = new Lang.Class({
|
||||
Name: 'AccountNotification',
|
||||
Extends: MessageTray.Notification,
|
||||
|
||||
_init: function(source, account, connectionError) {
|
||||
this.parent(source,
|
||||
/* translators: argument is the account name, like
|
||||
* name@jabber.org for example. */
|
||||
_("Unable to connect to %s").format(account.get_display_name()),
|
||||
this._getMessage(connectionError));
|
||||
|
||||
this._account = account;
|
||||
|
||||
this.addAction(_("View account"), Lang.bind(this, function() {
|
||||
let cmd = 'empathy-accounts --select-account=' +
|
||||
account.get_path_suffix();
|
||||
let app_info = Gio.app_info_create_from_commandline(cmd, null, 0);
|
||||
app_info.launch([], global.create_app_launch_context(0, -1));
|
||||
}));
|
||||
|
||||
this._enabledId = account.connect('notify::enabled',
|
||||
Lang.bind(this, function() {
|
||||
if (!account.is_enabled())
|
||||
this.destroy();
|
||||
}));
|
||||
|
||||
this._invalidatedId = account.connect('invalidated',
|
||||
Lang.bind(this, this.destroy));
|
||||
|
||||
this._connectionStatusId = account.connect('notify::connection-status',
|
||||
Lang.bind(this, function() {
|
||||
let status = account.connection_status;
|
||||
if (status == Tp.ConnectionStatus.CONNECTED) {
|
||||
this.destroy();
|
||||
} else if (status == Tp.ConnectionStatus.DISCONNECTED) {
|
||||
let connectionError = account.connection_error;
|
||||
|
||||
if (connectionError == Tp.error_get_dbus_name(Tp.Error.CANCELLED))
|
||||
this.destroy();
|
||||
else
|
||||
this.update(this.title, this._getMessage(connectionError));
|
||||
}
|
||||
}));
|
||||
},
|
||||
|
||||
_getMessage: function(connectionError) {
|
||||
let message;
|
||||
if (connectionError in _connectionErrorMessages) {
|
||||
message = _connectionErrorMessages[connectionError];
|
||||
} else {
|
||||
message = _("Unknown reason");
|
||||
}
|
||||
return message;
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
if (this._enabledId != 0) {
|
||||
this._account.disconnect(this._enabledId);
|
||||
this._enabledId = 0;
|
||||
}
|
||||
|
||||
if (this._invalidatedId != 0) {
|
||||
this._account.disconnect(this._invalidatedId);
|
||||
this._invalidatedId = 0;
|
||||
}
|
||||
|
||||
if (this._connectionStatusId != 0) {
|
||||
this._account.disconnect(this._connectionStatusId);
|
||||
this._connectionStatusId = 0;
|
||||
}
|
||||
|
||||
this.parent();
|
||||
}
|
||||
});
|
||||
const Component = TelepathyClient;
|
||||
|
@ -87,7 +87,7 @@ const CtrlAltTabManager = new Lang.Class({
|
||||
if (Main.sessionMode.hasWindows && !Main.overview.visible) {
|
||||
let screen = global.screen;
|
||||
let display = screen.get_display();
|
||||
let windows = display.get_tab_list(Meta.TabList.DOCKS, screen, screen.get_active_workspace ());
|
||||
let windows = display.get_tab_list(Meta.TabList.DOCKS, screen.get_active_workspace ());
|
||||
let windowTracker = Shell.WindowTracker.get_default();
|
||||
let textureCache = St.TextureCache.get_default();
|
||||
for (let i = 0; i < windows.length; i++) {
|
||||
@ -165,6 +165,10 @@ const CtrlAltTabPopup = new Lang.Class({
|
||||
this._select(this._previous());
|
||||
else if (keysym == Clutter.Right)
|
||||
this._select(this._next());
|
||||
else
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
|
||||
return Clutter.EVENT_STOP;
|
||||
},
|
||||
|
||||
_finish : function(time) {
|
||||
|
@ -582,6 +582,7 @@ const Dash = new Lang.Class({
|
||||
this._showLabelTimeoutId = 0;
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._showLabelTimeoutId, '[gnome-shell] item.showLabel');
|
||||
if (this._resetHoverTimeoutId > 0) {
|
||||
Mainloop.source_remove(this._resetHoverTimeoutId);
|
||||
this._resetHoverTimeoutId = 0;
|
||||
@ -599,6 +600,7 @@ const Dash = new Lang.Class({
|
||||
this._resetHoverTimeoutId = 0;
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._resetHoverTimeoutId, '[gnome-shell] this._labelShowing');
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -63,8 +63,11 @@ const DateMenuButton = new Lang.Class({
|
||||
hbox.add(vbox);
|
||||
|
||||
// Date
|
||||
// Having the ability to go to the current date if the user is already
|
||||
// on the current date can be confusing. So don't make the button reactive
|
||||
// until the selected date changes.
|
||||
this._date = new St.Button({ style_class: 'datemenu-date-label',
|
||||
can_focus: true,
|
||||
reactive: false
|
||||
});
|
||||
this._date.connect('clicked',
|
||||
Lang.bind(this, function() {
|
||||
@ -82,6 +85,9 @@ const DateMenuButton = new Lang.Class({
|
||||
// and the calender makes those dates unclickable when instantiated with
|
||||
// a null event source
|
||||
this._eventList.setDate(date);
|
||||
|
||||
// Make the button reactive only if the selected date is not the current date.
|
||||
this._date.can_focus = this._date.reactive = !this._isToday(date)
|
||||
}));
|
||||
vbox.add(this._calendar.actor);
|
||||
|
||||
@ -132,6 +138,13 @@ const DateMenuButton = new Lang.Class({
|
||||
this._sessionUpdated();
|
||||
},
|
||||
|
||||
_isToday: function(date) {
|
||||
let now = new Date();
|
||||
return now.getYear() == date.getYear() &&
|
||||
now.getMonth() == date.getMonth() &&
|
||||
now.getDay() == date.getDay();
|
||||
},
|
||||
|
||||
_appInstalledChanged: function() {
|
||||
this._calendarApp = undefined;
|
||||
this._updateEventsVisibility();
|
||||
|
@ -395,6 +395,7 @@ const _Draggable = new Lang.Class({
|
||||
|
||||
this._updateHoverId = GLib.idle_add(GLib.PRIORITY_DEFAULT,
|
||||
Lang.bind(this, this._updateDragHover));
|
||||
GLib.Source.set_name_by_id(this._updateHoverId, '[gnome-shell] this._updateDragHover');
|
||||
},
|
||||
|
||||
_updateDragPosition : function (event) {
|
||||
|
@ -551,6 +551,7 @@ const EndSessionDialog = new Lang.Class({
|
||||
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._timerId, '[gnome-shell] this._confirm');
|
||||
},
|
||||
|
||||
_stopTimer: function() {
|
||||
|
@ -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;
|
||||
@ -45,8 +47,11 @@ function _patchLayoutClass(layoutClass, styleProps) {
|
||||
layoutClass.prototype.hookup_style = function(container) {
|
||||
container.connect('style-changed', Lang.bind(this, function() {
|
||||
let node = container.get_theme_node();
|
||||
for (let prop in styleProps)
|
||||
this[prop] = node.get_length(styleProps[prop]);
|
||||
for (let prop in styleProps) {
|
||||
let [found, length] = node.lookup_length(styleProps[prop], false);
|
||||
if (found)
|
||||
this[prop] = length;
|
||||
}
|
||||
}));
|
||||
};
|
||||
layoutClass.prototype.child_set = function(actor, props) {
|
||||
|
@ -155,7 +155,7 @@ const CandidatePopup = new Lang.Class({
|
||||
|
||||
panelService.connect('set-cursor-location',
|
||||
Lang.bind(this, function(ps, x, y, w, h) {
|
||||
Main.layoutManager.setDummyCursorPosition(x, y);
|
||||
Main.layoutManager.setDummyCursorGeometry(x, y, w, h);
|
||||
if (this._boxPointer.actor.visible)
|
||||
this._boxPointer.setPosition(Main.layoutManager.dummyCursor, 0);
|
||||
}));
|
||||
|
@ -214,6 +214,20 @@ const IconGrid = new Lang.Class({
|
||||
this._grid.connect('get-preferred-width', Lang.bind(this, this._getPreferredWidth));
|
||||
this._grid.connect('get-preferred-height', Lang.bind(this, this._getPreferredHeight));
|
||||
this._grid.connect('allocate', Lang.bind(this, this._allocate));
|
||||
this._grid.connect('actor-added', Lang.bind(this, this._childAdded));
|
||||
this._grid.connect('actor-removed', Lang.bind(this, this._childRemoved));
|
||||
},
|
||||
|
||||
_keyFocusIn: function(actor) {
|
||||
this.emit('key-focus-in', actor);
|
||||
},
|
||||
|
||||
_childAdded: function(grid, child) {
|
||||
child._iconGridKeyFocusInId = child.connect('key-focus-in', Lang.bind(this, this._keyFocusIn));
|
||||
},
|
||||
|
||||
_childRemoved: function(grid, child) {
|
||||
child.disconnect(child._iconGridKeyFocusInId);
|
||||
},
|
||||
|
||||
_getPreferredWidth: function (grid, forHeight, alloc) {
|
||||
@ -527,6 +541,7 @@ const IconGrid = new Lang.Class({
|
||||
}
|
||||
}
|
||||
});
|
||||
Signals.addSignalMethods(IconGrid.prototype);
|
||||
|
||||
const PaginatedIconGrid = new Lang.Class({
|
||||
Name: 'PaginatedIconGrid',
|
||||
@ -630,6 +645,10 @@ const PaginatedIconGrid = new Lang.Class({
|
||||
return this._nPages;
|
||||
},
|
||||
|
||||
getPageHeight: function() {
|
||||
return this._availableHeightPerPageForItems();
|
||||
},
|
||||
|
||||
getPageY: function(pageNumber) {
|
||||
if (!this._nPages)
|
||||
return 0;
|
||||
|
@ -266,12 +266,14 @@ const Keyboard = new Lang.Class({
|
||||
return;
|
||||
}
|
||||
|
||||
if (!this._showIdleId)
|
||||
this._showIdleId = GLib.idle_add(GLib.PRIORITY_DEFAULT_IDLE,
|
||||
Lang.bind(this, function() {
|
||||
this.Show(time);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
if (!this._showIdleId) {
|
||||
this._showIdleId = GLib.idle_add(GLib.PRIORITY_DEFAULT_IDLE,
|
||||
Lang.bind(this, function() {
|
||||
this.Show(time);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._showIdleId, '[gnome-shell] this.Show');
|
||||
}
|
||||
},
|
||||
|
||||
_createLayersForGroup: function (gname) {
|
||||
@ -500,6 +502,7 @@ const Keyboard = new Lang.Class({
|
||||
this._show(monitor);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._keyboardRestingId, '[gnome-shell] this._clearKeyboardRestTimer');
|
||||
},
|
||||
|
||||
_show: function(monitor) {
|
||||
@ -526,6 +529,7 @@ const Keyboard = new Lang.Class({
|
||||
this._hide();
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._keyboardRestingId, '[gnome-shell] this._clearKeyboardRestTimer');
|
||||
},
|
||||
|
||||
_hide: function() {
|
||||
|
213
js/ui/layout.js
213
js/ui/layout.js
@ -22,11 +22,6 @@ const KEYBOARD_ANIMATION_TIME = 0.15;
|
||||
const BACKGROUND_FADE_ANIMATION_TIME = 1.0;
|
||||
const DEFAULT_BACKGROUND_COLOR = Clutter.Color.from_pixel(0x2e3436ff);
|
||||
|
||||
// The message tray takes this much pressure
|
||||
// in the pressure barrier at once to release it.
|
||||
const MESSAGE_TRAY_PRESSURE_THRESHOLD = 250; // pixels
|
||||
const MESSAGE_TRAY_PRESSURE_TIMEOUT = 1000; // ms
|
||||
|
||||
const HOT_CORNER_PRESSURE_THRESHOLD = 100; // pixels
|
||||
const HOT_CORNER_PRESSURE_TIMEOUT = 1000; // ms
|
||||
|
||||
@ -150,7 +145,6 @@ const LayoutManager = new Lang.Class({
|
||||
|
||||
this._keyboardIndex = -1;
|
||||
this._rightPanelBarrier = null;
|
||||
this._trayBarrier = null;
|
||||
|
||||
this._inOverview = false;
|
||||
this._updateRegionIdle = 0;
|
||||
@ -210,7 +204,6 @@ const LayoutManager = new Lang.Class({
|
||||
this.trayBox = new St.Widget({ name: 'trayBox',
|
||||
layout_manager: new Clutter.BinLayout() });
|
||||
this.addChrome(this.trayBox);
|
||||
this._setupTrayPressure();
|
||||
|
||||
this.modalDialogGroup = new St.Widget({ name: 'modalDialogGroup',
|
||||
layout_manager: new Clutter.BinLayout() });
|
||||
@ -223,7 +216,7 @@ const LayoutManager = new Lang.Class({
|
||||
this._keyboardHeightNotifyId = 0;
|
||||
|
||||
// A dummy actor that tracks the mouse or text cursor, based on the
|
||||
// position set in setDummyCursorPosition.
|
||||
// position and size set in setDummyCursorGeometry.
|
||||
this.dummyCursor = new St.Widget({ width: 0, height: 0 });
|
||||
this.uiGroup.add_actor(this.dummyCursor);
|
||||
|
||||
@ -449,50 +442,9 @@ const LayoutManager = new Lang.Class({
|
||||
}
|
||||
},
|
||||
|
||||
_setupTrayPressure: function() {
|
||||
this._trayPressure = new PressureBarrier(MESSAGE_TRAY_PRESSURE_THRESHOLD,
|
||||
MESSAGE_TRAY_PRESSURE_TIMEOUT,
|
||||
Shell.KeyBindingMode.NORMAL |
|
||||
Shell.KeyBindingMode.OVERVIEW);
|
||||
this._trayPressure.setEventFilter(this._trayBarrierEventFilter);
|
||||
this._trayPressure.connect('trigger', function(barrier) {
|
||||
if (Main.layoutManager.bottomMonitor.inFullscreen)
|
||||
return;
|
||||
|
||||
Main.messageTray.openTray();
|
||||
});
|
||||
},
|
||||
|
||||
_updateTrayBarrier: function() {
|
||||
let monitor = this.bottomMonitor;
|
||||
|
||||
if (this._trayBarrier) {
|
||||
this._trayPressure.removeBarrier(this._trayBarrier);
|
||||
this._trayBarrier.destroy();
|
||||
this._trayBarrier = null;
|
||||
}
|
||||
|
||||
this._trayBarrier = new Meta.Barrier({ display: global.display,
|
||||
x1: monitor.x, x2: monitor.x + monitor.width,
|
||||
y1: monitor.y + monitor.height, y2: monitor.y + monitor.height,
|
||||
directions: Meta.BarrierDirection.NEGATIVE_Y });
|
||||
this._trayPressure.addBarrier(this._trayBarrier);
|
||||
},
|
||||
|
||||
_trayBarrierEventFilter: function(event) {
|
||||
// Throw out all events where the pointer was grabbed by another
|
||||
// client, as the client that grabbed the pointer expects to have
|
||||
// complete control over it
|
||||
if (event.grabbed && Main.modalCount == 0)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
},
|
||||
|
||||
_monitorsChanged: function() {
|
||||
this._updateMonitors();
|
||||
this._updateBoxes();
|
||||
this._updateTrayBarrier();
|
||||
this._updateHotCorners();
|
||||
this._updateBackgrounds();
|
||||
this._updateFullscreen();
|
||||
@ -603,7 +555,7 @@ const LayoutManager = new Lang.Class({
|
||||
this._updateBackgrounds();
|
||||
|
||||
// We need to force an update of the regions now before we scale
|
||||
// the UI group to get the coorect allocation for the struts.
|
||||
// the UI group to get the correct allocation for the struts.
|
||||
this._updateRegions();
|
||||
|
||||
this.trayBox.hide();
|
||||
@ -628,10 +580,11 @@ const LayoutManager = new Lang.Class({
|
||||
// until the event loop is uncontended and idle.
|
||||
// This helps to prevent us from running the animation
|
||||
// when the system is bogged down
|
||||
GLib.idle_add(GLib.PRIORITY_LOW, Lang.bind(this, function() {
|
||||
let id = GLib.idle_add(GLib.PRIORITY_LOW, Lang.bind(this, function() {
|
||||
this._startupAnimation();
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] this._startupAnimation');
|
||||
},
|
||||
|
||||
_startupAnimation: function() {
|
||||
@ -728,7 +681,7 @@ const LayoutManager = new Lang.Class({
|
||||
this._updateRegions();
|
||||
},
|
||||
|
||||
// setDummyCursorPosition:
|
||||
// setDummyCursorGeometry:
|
||||
//
|
||||
// The cursor dummy is a standard widget commonly used for popup
|
||||
// menus and box pointers to track, as the box pointer API only
|
||||
@ -737,9 +690,10 @@ const LayoutManager = new Lang.Class({
|
||||
// is what you should use. Given that the menu should not track
|
||||
// the actual mouse pointer as it moves, you need to call this
|
||||
// function before you show the menu to ensure it is at the right
|
||||
// position.
|
||||
setDummyCursorPosition: function(x, y) {
|
||||
// position and has the right size.
|
||||
setDummyCursorGeometry: function(x, y, w, h) {
|
||||
this.dummyCursor.set_position(Math.round(x), Math.round(y));
|
||||
this.dummyCursor.set_size(Math.round(w), Math.round(h));
|
||||
},
|
||||
|
||||
// addChrome:
|
||||
@ -1016,19 +970,39 @@ const LayoutManager = new Lang.Class({
|
||||
continue;
|
||||
|
||||
// Ensure that the strut rects goes all the way to the screen edge,
|
||||
// as this really what mutter expects.
|
||||
// as this really what mutter expects. However skip this step
|
||||
// in cases where this would render an entire monitor unusable.
|
||||
switch (side) {
|
||||
case Meta.Side.TOP:
|
||||
y1 = 0;
|
||||
let hasMonitorsAbove = this.monitors.some(Lang.bind(this,
|
||||
function(mon) {
|
||||
return this._isAboveOrBelowPrimary(mon) &&
|
||||
mon.y < primary.y;
|
||||
}));
|
||||
if (!hasMonitorsAbove)
|
||||
y1 = 0;
|
||||
break;
|
||||
case Meta.Side.BOTTOM:
|
||||
y2 = global.screen_height;
|
||||
if (this.primaryIndex == this.bottomIndex)
|
||||
y2 = global.screen_height;
|
||||
break;
|
||||
case Meta.Side.LEFT:
|
||||
x1 = 0;
|
||||
let hasMonitorsLeft = this.monitors.some(Lang.bind(this,
|
||||
function(mon) {
|
||||
return !this._isAboveOrBelowPrimary(mon) &&
|
||||
mon.x < primary.x;
|
||||
}));
|
||||
if (!hasMonitorsLeft)
|
||||
x1 = 0;
|
||||
break;
|
||||
case Meta.Side.RIGHT:
|
||||
x2 = global.screen_width;
|
||||
let hasMonitorsRight = this.monitors.some(Lang.bind(this,
|
||||
function(mon) {
|
||||
return !this._isAboveOrBelowPrimary(mon) &&
|
||||
mon.x > primary.x;
|
||||
}));
|
||||
if (!hasMonitorsRight)
|
||||
x2 = global.screen_width;
|
||||
break;
|
||||
}
|
||||
|
||||
@ -1074,10 +1048,10 @@ const HotCorner = new Lang.Class({
|
||||
|
||||
this._setupFallbackCornerIfNeeded(layoutManager);
|
||||
|
||||
this._pressureBarrier = new PressureBarrier(HOT_CORNER_PRESSURE_THRESHOLD,
|
||||
HOT_CORNER_PRESSURE_TIMEOUT,
|
||||
Shell.KeyBindingMode.NORMAL |
|
||||
Shell.KeyBindingMode.OVERVIEW);
|
||||
this._pressureBarrier = new TriggerablePressureBarrier(HOT_CORNER_PRESSURE_THRESHOLD,
|
||||
HOT_CORNER_PRESSURE_TIMEOUT,
|
||||
Shell.KeyBindingMode.NORMAL |
|
||||
Shell.KeyBindingMode.OVERVIEW);
|
||||
this._pressureBarrier.connect('trigger', Lang.bind(this, this._toggleOverview));
|
||||
|
||||
// Cache the three ripples instead of dynamically creating and destroying them.
|
||||
@ -1255,14 +1229,12 @@ const PressureBarrier = new Lang.Class({
|
||||
Name: 'PressureBarrier',
|
||||
|
||||
_init: function(threshold, timeout, keybindingMode) {
|
||||
this._threshold = threshold;
|
||||
this._timeout = timeout;
|
||||
this.threshold = threshold;
|
||||
this.timeout = timeout;
|
||||
this._keybindingMode = keybindingMode;
|
||||
this._barriers = [];
|
||||
this._eventFilter = null;
|
||||
|
||||
this._isTriggered = false;
|
||||
this._reset();
|
||||
this.reset();
|
||||
},
|
||||
|
||||
addBarrier: function(barrier) {
|
||||
@ -1291,10 +1263,10 @@ const PressureBarrier = new Lang.Class({
|
||||
this._eventFilter = filter;
|
||||
},
|
||||
|
||||
_reset: function() {
|
||||
reset: function() {
|
||||
this._barrierEvents = [];
|
||||
this._currentPressure = 0;
|
||||
this._lastTime = 0;
|
||||
this.currentPressure = 0;
|
||||
},
|
||||
|
||||
_isHorizontal: function(barrier) {
|
||||
@ -1315,12 +1287,21 @@ const PressureBarrier = new Lang.Class({
|
||||
return Math.abs(event.dy);
|
||||
},
|
||||
|
||||
get currentPressure() {
|
||||
return this._currentPressure;
|
||||
},
|
||||
|
||||
set currentPressure(value) {
|
||||
this._currentPressure = value;
|
||||
this.emit('pressure-changed');
|
||||
},
|
||||
|
||||
_trimBarrierEvents: function() {
|
||||
// Events are guaranteed to be sorted in time order from
|
||||
// oldest to newest, so just look for the first old event,
|
||||
// and then chop events after that off.
|
||||
let i = 0;
|
||||
let threshold = this._lastTime - this._timeout;
|
||||
let threshold = this._lastTime - this.timeout;
|
||||
|
||||
while (i < this._barrierEvents.length) {
|
||||
let [time, distance] = this._barrierEvents[i];
|
||||
@ -1333,21 +1314,75 @@ const PressureBarrier = new Lang.Class({
|
||||
|
||||
for (i = 0; i < firstNewEvent; i++) {
|
||||
let [time, distance] = this._barrierEvents[i];
|
||||
this._currentPressure -= distance;
|
||||
this.currentPressure = distance;
|
||||
}
|
||||
|
||||
this._barrierEvents = this._barrierEvents.slice(firstNewEvent);
|
||||
},
|
||||
|
||||
_onBarrierLeft: function(barrier, event) {
|
||||
this._reset();
|
||||
this.reset();
|
||||
},
|
||||
|
||||
_shouldUseEvent: function(barrier, event) {
|
||||
if (this._eventFilter && this._eventFilter(event))
|
||||
return false;
|
||||
|
||||
// Throw out all events not in the proper keybinding mode
|
||||
if (!(this._keybindingMode & Main.keybindingMode))
|
||||
return false;
|
||||
|
||||
let slide = this._getDistanceAlongBarrier(barrier, event);
|
||||
let distance = this._getDistanceAcrossBarrier(barrier, event);
|
||||
|
||||
// Throw out events where the cursor is move more
|
||||
// along the axis of the barrier than moving with
|
||||
// the barrier.
|
||||
if (slide > distance)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
},
|
||||
|
||||
_appendEvent: function(barrier, event) {
|
||||
let distance = this._getDistanceAcrossBarrier(barrier, event);
|
||||
|
||||
this._lastTime = event.time;
|
||||
|
||||
this._trimBarrierEvents();
|
||||
distance = Math.min(15, distance);
|
||||
|
||||
this._barrierEvents.push([event.time, distance]);
|
||||
this.currentPressure += distance;
|
||||
},
|
||||
|
||||
_onBarrierHit: function(barrier, event) {
|
||||
if (!this._shouldUseEvent(barrier, event))
|
||||
return;
|
||||
|
||||
this._appendEvent(barrier, event);
|
||||
}
|
||||
});
|
||||
Signals.addSignalMethods(PressureBarrier.prototype);
|
||||
|
||||
const TriggerablePressureBarrier = new Lang.Class({
|
||||
Name: 'TriggerablePressureBarrier',
|
||||
Extends: PressureBarrier,
|
||||
|
||||
_init: function(threshold, timeout, keybindingMode) {
|
||||
this.parent(threshold, timeout, keybindingMode);
|
||||
this._isTriggered = false;
|
||||
},
|
||||
|
||||
_trigger: function() {
|
||||
this._isTriggered = true;
|
||||
this.emit('trigger');
|
||||
this._reset();
|
||||
this.reset();
|
||||
},
|
||||
|
||||
_onBarrierLeft: function() {
|
||||
this.parent();
|
||||
this._isTriggered = false;
|
||||
},
|
||||
|
||||
_onBarrierHit: function(barrier, event) {
|
||||
@ -1356,37 +1391,17 @@ const PressureBarrier = new Lang.Class({
|
||||
if (this._isTriggered)
|
||||
return;
|
||||
|
||||
if (this._eventFilter && this._eventFilter(event))
|
||||
if (!this._shouldUseEvent(barrier, event))
|
||||
return;
|
||||
|
||||
// Throw out all events not in the proper keybinding mode
|
||||
if (!(this._keybindingMode & Main.keybindingMode))
|
||||
return;
|
||||
|
||||
let slide = this._getDistanceAlongBarrier(barrier, event);
|
||||
let distance = this._getDistanceAcrossBarrier(barrier, event);
|
||||
|
||||
if (distance >= this._threshold) {
|
||||
if (distance >= this.threshold) {
|
||||
this._trigger();
|
||||
return;
|
||||
}
|
||||
|
||||
// Throw out events where the cursor is move more
|
||||
// along the axis of the barrier than moving with
|
||||
// the barrier.
|
||||
if (slide > distance)
|
||||
return;
|
||||
this._appendEvent(barrier, event);
|
||||
|
||||
this._lastTime = event.time;
|
||||
|
||||
this._trimBarrierEvents();
|
||||
distance = Math.min(15, distance);
|
||||
|
||||
this._barrierEvents.push([event.time, distance]);
|
||||
this._currentPressure += distance;
|
||||
|
||||
if (this._currentPressure >= this._threshold)
|
||||
if (this.currentPressure >= this.threshold)
|
||||
this._trigger();
|
||||
}
|
||||
},
|
||||
});
|
||||
Signals.addSignalMethods(PressureBarrier.prototype);
|
||||
|
@ -843,9 +843,10 @@ const LookingGlass = new Lang.Class({
|
||||
System.gc();
|
||||
this._timeoutId = Mainloop.timeout_add(500, Lang.bind(this, function () {
|
||||
gcIcon.icon_name = 'gnome-fs-trash-full';
|
||||
Mainloop.source_remove(this._timeoutId);
|
||||
this._timeoutId = 0;
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] gcIcon.icon_name = \'gnome-fs-trash-full\'');
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}));
|
||||
|
||||
|
@ -43,6 +43,7 @@ const DEFAULT_BACKGROUND_COLOR = Clutter.Color.from_pixel(0x2e3436ff);
|
||||
|
||||
const A11Y_SCHEMA = 'org.gnome.desktop.a11y.keyboard';
|
||||
const STICKY_KEYS_ENABLE = 'stickykeys-enable';
|
||||
const GNOMESHELL_STARTED_MESSAGE_ID = 'f3ea493c22934e26811cd62abe8e203a';
|
||||
|
||||
let componentManager = null;
|
||||
let panel = null;
|
||||
@ -55,7 +56,7 @@ let screenShield = null;
|
||||
let notificationDaemon = null;
|
||||
let windowAttentionHandler = null;
|
||||
let ctrlAltTabManager = null;
|
||||
let osdWindow = null;
|
||||
let osdWindowManager = null;
|
||||
let sessionMode = null;
|
||||
let shellDBusService = null;
|
||||
let shellMountOpDBusService = null;
|
||||
@ -103,9 +104,6 @@ function start() {
|
||||
global.logError = window.log;
|
||||
global.log = window.log;
|
||||
|
||||
if (!Meta.is_wayland_compositor)
|
||||
Meta.is_wayland_compositor = function () { return false; };
|
||||
|
||||
// Chain up async errors reported from C
|
||||
global.connect('notify-error', function (global, msg, detail) { notifyError(msg, detail); });
|
||||
|
||||
@ -158,7 +156,7 @@ function _initializeUI() {
|
||||
screencastService = new Screencast.ScreencastService();
|
||||
xdndHandler = new XdndHandler.XdndHandler();
|
||||
ctrlAltTabManager = new CtrlAltTab.CtrlAltTabManager();
|
||||
osdWindow = new OsdWindow.OsdWindow();
|
||||
osdWindowManager = new OsdWindow.OsdWindowManager();
|
||||
overview = new Overview.Overview();
|
||||
wm = new WindowManager.WindowManager();
|
||||
magnifier = new Magnifier.Magnifier();
|
||||
@ -191,8 +189,6 @@ function _initializeUI() {
|
||||
|
||||
_startDate = new Date();
|
||||
|
||||
log('GNOME Shell started at ' + _startDate);
|
||||
|
||||
let perfModuleName = GLib.getenv("SHELL_PERF_MODULE");
|
||||
if (perfModuleName) {
|
||||
let perfOutput = GLib.getenv("SHELL_PERF_OUTPUT");
|
||||
@ -216,6 +212,17 @@ function _initializeUI() {
|
||||
if (screenShield) {
|
||||
screenShield.lockIfWasLocked();
|
||||
}
|
||||
if (LoginManager.haveSystemd() &&
|
||||
sessionMode.currentMode != 'gdm' &&
|
||||
sessionMode.currentMode != 'initial-setup') {
|
||||
// Do not import globally to not depend
|
||||
// on systemd on non-systemd systems.
|
||||
let GSystem = imports.gi.GSystem;
|
||||
GSystem.log_structured_print('GNOME Shell started at ' + _startDate,
|
||||
['MESSAGE_ID=' + GNOMESHELL_STARTED_MESSAGE_ID]);
|
||||
} else {
|
||||
log('GNOME Shell started at ' + _startDate);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@ -611,5 +618,6 @@ function queueDeferredWork(workId) {
|
||||
_deferredTimeoutId = 0;
|
||||
return GLib.SOURCE_REMOVE;
|
||||
});
|
||||
GLib.Source.set_name_by_id(_deferredTimeoutId, '[gnome-shell] _runAllDeferredWork');
|
||||
}
|
||||
}
|
||||
|
1963
js/ui/messageTray.js
1963
js/ui/messageTray.js
File diff suppressed because it is too large
Load Diff
@ -91,21 +91,6 @@ const rewriteRules = {
|
||||
]
|
||||
};
|
||||
|
||||
const STANDARD_TRAY_ICON_IMPLEMENTATIONS = {
|
||||
'bluetooth-applet': 'bluetooth',
|
||||
'gnome-volume-control-applet': 'volume', // renamed to gnome-sound-applet
|
||||
// when moved to control center
|
||||
'gnome-sound-applet': 'volume',
|
||||
'nm-applet': 'network',
|
||||
'gnome-power-manager': 'battery',
|
||||
'keyboard': 'keyboard',
|
||||
'a11y-keyboard': 'a11y',
|
||||
'kbd-scrolllock': 'keyboard',
|
||||
'kbd-numlock': 'keyboard',
|
||||
'kbd-capslock': 'keyboard',
|
||||
'ibus-ui-gtk': 'keyboard'
|
||||
};
|
||||
|
||||
const FdoNotificationDaemon = new Lang.Class({
|
||||
Name: 'FdoNotificationDaemon',
|
||||
|
||||
@ -120,16 +105,10 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
|
||||
this._nextNotificationId = 1;
|
||||
|
||||
this._trayManager = new Shell.TrayManager();
|
||||
this._trayIconAddedId = this._trayManager.connect('tray-icon-added', Lang.bind(this, this._onTrayIconAdded));
|
||||
this._trayIconRemovedId = this._trayManager.connect('tray-icon-removed', Lang.bind(this, this._onTrayIconRemoved));
|
||||
|
||||
Shell.WindowTracker.get_default().connect('notify::focus-app',
|
||||
Lang.bind(this, this._onFocusAppChanged));
|
||||
Main.overview.connect('hidden',
|
||||
Lang.bind(this, this._onFocusAppChanged));
|
||||
|
||||
this._trayManager.manage_screen(global.screen, Main.messageTray.actor);
|
||||
},
|
||||
|
||||
_imageForNotificationData: function(hints) {
|
||||
@ -170,28 +149,23 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
return null;
|
||||
},
|
||||
|
||||
_lookupSource: function(title, pid, trayIcon) {
|
||||
_lookupSource: function(title, pid) {
|
||||
for (let i = 0; i < this._sources.length; i++) {
|
||||
let source = this._sources[i];
|
||||
if (source.pid == pid &&
|
||||
(source.initialTitle == title || source.trayIcon || trayIcon))
|
||||
if (source.pid == pid && source.initialTitle == title)
|
||||
return source;
|
||||
}
|
||||
return null;
|
||||
},
|
||||
|
||||
// Returns the source associated with ndata.notification if it is set.
|
||||
// If the existing or requested source is associated with a tray icon
|
||||
// and passed in pid matches a pid of an existing source, the title
|
||||
// match is ignored to enable representing a tray icon and notifications
|
||||
// from the same application with a single source.
|
||||
//
|
||||
// If no existing source is found, a new source is created as long as
|
||||
// pid is provided.
|
||||
//
|
||||
// Either a pid or ndata.notification is needed to retrieve or
|
||||
// create a source.
|
||||
_getSource: function(title, pid, ndata, sender, trayIcon) {
|
||||
_getSource: function(title, pid, ndata, sender) {
|
||||
if (!pid && !(ndata && ndata.notification))
|
||||
return null;
|
||||
|
||||
@ -202,13 +176,13 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
if (ndata && ndata.notification)
|
||||
return ndata.notification.source;
|
||||
|
||||
let source = this._lookupSource(title, pid, trayIcon);
|
||||
let source = this._lookupSource(title, pid);
|
||||
if (source) {
|
||||
source.setTitle(title);
|
||||
return source;
|
||||
}
|
||||
|
||||
let source = new FdoNotificationDaemonSource(title, pid, sender, trayIcon, ndata ? ndata.hints['desktop-entry'] : null);
|
||||
let source = new FdoNotificationDaemonSource(title, pid, sender, ndata ? ndata.hints['desktop-entry'] : null);
|
||||
|
||||
this._sources.push(source);
|
||||
source.connect('destroy', Lang.bind(this, function() {
|
||||
@ -244,11 +218,12 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
// Ignore replacesId since we already sent back a
|
||||
// NotificationClosed for that id.
|
||||
id = this._nextNotificationId++;
|
||||
Mainloop.idle_add(Lang.bind(this,
|
||||
function () {
|
||||
this._emitNotificationClosed(id, NotificationClosedReason.DISMISSED);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
let idle_id = Mainloop.idle_add(Lang.bind(this,
|
||||
function () {
|
||||
this._emitNotificationClosed(id, NotificationClosedReason.DISMISSED);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(idle_id, '[gnome-shell] this._emitNotificationClosed');
|
||||
return invocation.return_value(GLib.Variant.new('(u)', [id]));
|
||||
}
|
||||
|
||||
@ -333,13 +308,14 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
},
|
||||
|
||||
_makeButton: function(id, label, useActionIcons) {
|
||||
let button = new St.Button({ can_focus: true });
|
||||
let button = new St.Button({ can_focus: true,
|
||||
x_expand: true,
|
||||
style_class: 'notification-button' });
|
||||
let iconName = id.endsWith('-symbolic') ? id : id + '-symbolic';
|
||||
|
||||
if (useActionIcons && Gtk.IconTheme.get_default().has_icon(iconName)) {
|
||||
button.add_style_class_name('notification-icon-button');
|
||||
button.child = new St.Icon({ icon_name: iconName });
|
||||
button.child = new St.Icon({ icon_name: iconName, icon_size: 16 });
|
||||
} else {
|
||||
button.add_style_class_name('notification-button');
|
||||
button.label = label;
|
||||
}
|
||||
return button;
|
||||
@ -378,8 +354,6 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
let gicon = this._iconForNotificationData(icon, hints);
|
||||
let gimage = this._imageForNotificationData(hints);
|
||||
|
||||
let image = null;
|
||||
|
||||
// If an icon is not specified, we use 'image-data' or 'image-path' hint for an icon
|
||||
// and don't show a large image. There are currently many applications that use
|
||||
// notify_notification_set_icon_from_pixbuf() from libnotify, which in turn sets
|
||||
@ -388,10 +362,7 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
// So the logic here does the right thing for this case. If both an icon and either
|
||||
// one of 'image-data' or 'image-path' are specified, we show both an icon and
|
||||
// a large image.
|
||||
if (gicon && gimage)
|
||||
image = new St.Icon({ gicon: gimage,
|
||||
icon_size: notification.IMAGE_SIZE });
|
||||
else if (!gicon && gimage)
|
||||
if (!gicon && gimage)
|
||||
gicon = gimage;
|
||||
else if (!gicon)
|
||||
gicon = this._fallbackIconForNotificationData(hints);
|
||||
@ -401,7 +372,6 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
clear: true,
|
||||
soundFile: hints['sound-file'],
|
||||
soundName: hints['sound-name'] });
|
||||
notification.setImage(image);
|
||||
|
||||
let hasDefaultAction = false;
|
||||
|
||||
@ -441,7 +411,6 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
notification.setUrgency(MessageTray.Urgency.CRITICAL);
|
||||
break;
|
||||
}
|
||||
notification.setResident(hints.resident == true);
|
||||
// 'transient' is a reserved keyword in JS, so we have to retrieve the value
|
||||
// of the 'transient' hint with hints['transient'] rather than hints.transient
|
||||
notification.setTransient(hints['transient'] == true);
|
||||
@ -469,7 +438,6 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
'body-markup',
|
||||
// 'icon-multi',
|
||||
'icon-static',
|
||||
'persistence',
|
||||
'sound',
|
||||
];
|
||||
},
|
||||
@ -491,7 +459,7 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
for (let i = 0; i < this._sources.length; i++) {
|
||||
let source = this._sources[i];
|
||||
if (source.app == tracker.focus_app) {
|
||||
source.destroyNonResidentNotifications();
|
||||
source.destroyNotifications();
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -506,30 +474,15 @@ const FdoNotificationDaemon = new Lang.Class({
|
||||
this._dbusImpl.emit_signal('ActionInvoked',
|
||||
GLib.Variant.new('(us)', [id, action]));
|
||||
},
|
||||
|
||||
_onTrayIconAdded: function(o, icon) {
|
||||
let wmClass = icon.wm_class ? icon.wm_class.toLowerCase() : '';
|
||||
if (STANDARD_TRAY_ICON_IMPLEMENTATIONS[wmClass] !== undefined)
|
||||
return;
|
||||
|
||||
let source = this._getSource(icon.title || icon.wm_class || C_("program", "Unknown"), icon.pid, null, null, icon);
|
||||
},
|
||||
|
||||
_onTrayIconRemoved: function(o, icon) {
|
||||
let source = this._lookupSource(null, icon.pid, true);
|
||||
if (source)
|
||||
source.destroy();
|
||||
}
|
||||
});
|
||||
|
||||
const FdoNotificationDaemonSource = new Lang.Class({
|
||||
Name: 'FdoNotificationDaemonSource',
|
||||
Extends: MessageTray.Source,
|
||||
|
||||
_init: function(title, pid, sender, trayIcon, appId) {
|
||||
_init: function(title, pid, sender, appId) {
|
||||
// Need to set the app before chaining up, so
|
||||
// methods called from the parent constructor can find it
|
||||
this.trayIcon = trayIcon;
|
||||
this.pid = pid;
|
||||
this.app = this._getApp(appId);
|
||||
|
||||
@ -549,12 +502,6 @@ const FdoNotificationDaemonSource = new Lang.Class({
|
||||
Lang.bind(this, this._onNameVanished));
|
||||
else
|
||||
this._nameWatcherId = 0;
|
||||
|
||||
if (this.trayIcon) {
|
||||
// Try again finding the app, using the WM_CLASS from the tray icon
|
||||
this._setSummaryIcon(this.trayIcon);
|
||||
this.useNotificationIcon = false;
|
||||
}
|
||||
},
|
||||
|
||||
_createPolicy: function() {
|
||||
@ -570,48 +517,23 @@ const FdoNotificationDaemonSource = new Lang.Class({
|
||||
// Destroy the notification source when its sender is removed from DBus.
|
||||
// Only do so if this.app is set to avoid removing "notify-send" sources, senders
|
||||
// of which аre removed from DBus immediately.
|
||||
// Sender being removed from DBus would normally result in a tray icon being removed,
|
||||
// so allow the code path that handles the tray icon being removed to handle that case.
|
||||
if (!this.trayIcon && this.app)
|
||||
if (this.app)
|
||||
this.destroy();
|
||||
},
|
||||
|
||||
processNotification: function(notification, gicon) {
|
||||
if (gicon)
|
||||
this._gicon = gicon;
|
||||
if (!this.trayIcon)
|
||||
this.iconUpdated();
|
||||
|
||||
this.iconUpdated();
|
||||
|
||||
let tracker = Shell.WindowTracker.get_default();
|
||||
if (notification.resident && this.app && tracker.focus_app == this.app)
|
||||
if (this.app && tracker.focus_app == this.app)
|
||||
this.pushNotification(notification);
|
||||
else
|
||||
this.notify(notification);
|
||||
},
|
||||
|
||||
handleSummaryClick: function(button) {
|
||||
if (!this.trayIcon)
|
||||
return false;
|
||||
|
||||
let event = Clutter.get_current_event();
|
||||
|
||||
// Left clicks are passed through only where there aren't unacknowledged
|
||||
// notifications, so it possible to open them in summary mode; right
|
||||
// clicks are always forwarded, as the right click menu is not useful for
|
||||
// tray icons
|
||||
if (button == 1 &&
|
||||
this.notifications.length > 0)
|
||||
return false;
|
||||
|
||||
let id = global.stage.connect('deactivate', Lang.bind(this, function () {
|
||||
global.stage.disconnect(id);
|
||||
this.trayIcon.click(event);
|
||||
}));
|
||||
|
||||
Main.overview.hide();
|
||||
return true;
|
||||
},
|
||||
|
||||
_getApp: function(appId) {
|
||||
let app;
|
||||
|
||||
@ -619,16 +541,6 @@ const FdoNotificationDaemonSource = new Lang.Class({
|
||||
if (app != null)
|
||||
return app;
|
||||
|
||||
if (this.trayIcon) {
|
||||
app = Shell.AppSystem.get_default().lookup_startup_wmclass(this.trayIcon.wm_class);
|
||||
if (app != null)
|
||||
return app;
|
||||
|
||||
app = Shell.AppSystem.get_default().lookup_desktop_wmclass(this.trayIcon.wm_class);
|
||||
if (app != null)
|
||||
return app;
|
||||
}
|
||||
|
||||
if (appId) {
|
||||
app = Shell.AppSystem.get_default().lookup_app(appId + '.desktop');
|
||||
if (app != null)
|
||||
@ -650,12 +562,11 @@ const FdoNotificationDaemonSource = new Lang.Class({
|
||||
|
||||
open: function() {
|
||||
this.openApp();
|
||||
this.destroyNonResidentNotifications();
|
||||
this.destroyNotifications();
|
||||
},
|
||||
|
||||
_lastNotificationRemoved: function() {
|
||||
if (!this.trayIcon)
|
||||
this.destroy();
|
||||
this.destroy();
|
||||
},
|
||||
|
||||
openApp: function() {
|
||||
@ -676,11 +587,7 @@ const FdoNotificationDaemonSource = new Lang.Class({
|
||||
},
|
||||
|
||||
createIcon: function(size) {
|
||||
if (this.trayIcon) {
|
||||
return new Clutter.Clone({ width: size,
|
||||
height: size,
|
||||
source: this.trayIcon });
|
||||
} else if (this.app) {
|
||||
if (this.app) {
|
||||
return this.app.create_icon_texture(size);
|
||||
} else if (this._gicon) {
|
||||
return new St.Icon({ gicon: this._gicon,
|
||||
|
@ -73,14 +73,17 @@ const LevelBar = new Lang.Class({
|
||||
const OsdWindow = new Lang.Class({
|
||||
Name: 'OsdWindow',
|
||||
|
||||
_init: function() {
|
||||
_init: function(monitorIndex) {
|
||||
this._popupSize = 0;
|
||||
this.actor = new St.Widget({ x_expand: true,
|
||||
y_expand: true,
|
||||
x_align: Clutter.ActorAlign.CENTER,
|
||||
y_align: Clutter.ActorAlign.CENTER });
|
||||
this._currentMonitor = undefined;
|
||||
this.setMonitor (-1);
|
||||
|
||||
this._monitorIndex = monitorIndex;
|
||||
let constraint = new Layout.MonitorConstraint({ index: monitorIndex });
|
||||
this.actor.add_constraint(constraint);
|
||||
|
||||
this._box = new St.BoxLayout({ style_class: 'osd-window',
|
||||
vertical: true });
|
||||
this.actor.add_actor(this._box);
|
||||
@ -109,7 +112,6 @@ const OsdWindow = new Lang.Class({
|
||||
Main.layoutManager.connect('monitors-changed',
|
||||
Lang.bind(this, this._monitorsChanged));
|
||||
this._monitorsChanged();
|
||||
|
||||
Main.uiGroup.add_child(this.actor);
|
||||
},
|
||||
|
||||
@ -125,7 +127,7 @@ const OsdWindow = new Lang.Class({
|
||||
|
||||
setLevel: function(level) {
|
||||
this._level.actor.visible = (level != undefined);
|
||||
if (level) {
|
||||
if (level != undefined) {
|
||||
if (this.actor.visible)
|
||||
Tweener.addTween(this._level,
|
||||
{ level: level,
|
||||
@ -156,6 +158,7 @@ const OsdWindow = new Lang.Class({
|
||||
Mainloop.source_remove(this._hideTimeoutId);
|
||||
this._hideTimeoutId = Mainloop.timeout_add(HIDE_TIMEOUT,
|
||||
Lang.bind(this, this._hide));
|
||||
GLib.Source.set_name_by_id(this._hideTimeoutId, '[gnome-shell] this._hide');
|
||||
},
|
||||
|
||||
cancel: function() {
|
||||
@ -188,12 +191,9 @@ const OsdWindow = new Lang.Class({
|
||||
|
||||
_monitorsChanged: function() {
|
||||
/* assume 110x110 on a 640x480 display and scale from there */
|
||||
let monitor;
|
||||
|
||||
if (this._currentMonitor >= 0)
|
||||
monitor = Main.layoutManager.monitors[this._currentMonitor];
|
||||
else
|
||||
monitor = Main.layoutManager.primaryMonitor;
|
||||
let monitor = Main.layoutManager.monitors[this._monitorIndex];
|
||||
if (!monitor)
|
||||
return; // we are about to be removed
|
||||
|
||||
let scalew = monitor.width / 640.0;
|
||||
let scaleh = monitor.height / 480.0;
|
||||
@ -222,23 +222,56 @@ const OsdWindow = new Lang.Class({
|
||||
// but the theme takes measures in unscaled dimensions
|
||||
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
|
||||
this._box.style = 'min-height: %dpx;'.format(Math.max(minWidth, minHeight) / scaleFactor);
|
||||
},
|
||||
|
||||
setMonitor: function(index) {
|
||||
let constraint;
|
||||
|
||||
if (index < 0)
|
||||
index = -1;
|
||||
if (this._currentMonitor == index)
|
||||
return;
|
||||
|
||||
if (index < 0)
|
||||
constraint = new Layout.MonitorConstraint({ primary: true });
|
||||
else
|
||||
constraint = new Layout.MonitorConstraint({ index: index });
|
||||
|
||||
this.actor.clear_constraints();
|
||||
this.actor.add_constraint(constraint);
|
||||
this._currentMonitor = index;
|
||||
}
|
||||
});
|
||||
|
||||
const OsdWindowManager = new Lang.Class({
|
||||
Name: 'OsdWindowManager',
|
||||
|
||||
_init: function() {
|
||||
this._osdWindows = [];
|
||||
Main.layoutManager.connect('monitors-changed',
|
||||
Lang.bind(this, this._monitorsChanged));
|
||||
this._monitorsChanged();
|
||||
},
|
||||
|
||||
_monitorsChanged: function() {
|
||||
for (let i = 0; i < Main.layoutManager.monitors.length; i++) {
|
||||
if (this._osdWindows[i] == undefined)
|
||||
this._osdWindows[i] = new OsdWindow(i);
|
||||
}
|
||||
|
||||
for (let i = Main.layoutManager.monitors.length; i < this._osdWindows.length; i++) {
|
||||
this._osdWindows[i].actor.destroy();
|
||||
this._osdWindows[i] = null;
|
||||
}
|
||||
|
||||
this._osdWindows.length = Main.layoutManager.monitors.length;
|
||||
},
|
||||
|
||||
_showOsdWindow: function(monitorIndex, icon, label, level) {
|
||||
this._osdWindows[monitorIndex].setIcon(icon);
|
||||
this._osdWindows[monitorIndex].setLabel(label);
|
||||
this._osdWindows[monitorIndex].setLevel(level);
|
||||
this._osdWindows[monitorIndex].show();
|
||||
},
|
||||
|
||||
show: function(monitorIndex, icon, label, level) {
|
||||
if (monitorIndex != -1) {
|
||||
for (let i = 0; i < this._osdWindows.length; i++) {
|
||||
if (i == monitorIndex)
|
||||
this._showOsdWindow(i, icon, label, level);
|
||||
else
|
||||
this._osdWindows[i].cancel();
|
||||
}
|
||||
} else {
|
||||
for (let i = 0; i < this._osdWindows.length; i++)
|
||||
this._showOsdWindow(i, icon, label, level);
|
||||
}
|
||||
},
|
||||
|
||||
hideAll: function() {
|
||||
for (let i = 0; i < this._osdWindows.length; i++)
|
||||
this._osdWindows[i].cancel();
|
||||
}
|
||||
});
|
||||
|
@ -263,8 +263,6 @@ const Overview = new Lang.Class({
|
||||
this._overview.add(this._controls.actor, { y_fill: true, expand: true });
|
||||
this._controls.actor.connect('scroll-event', Lang.bind(this, this._onScrollEvent));
|
||||
|
||||
this._stack.add_actor(this._controls.indicatorActor);
|
||||
|
||||
// TODO - recalculate everything when desktop size changes
|
||||
this.dashIconSize = this._dash.iconSize;
|
||||
this._dash.connect('icon-size-changed',
|
||||
@ -365,6 +363,7 @@ const Overview = new Lang.Class({
|
||||
this._lastHoveredWindow = null;
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._windowSwitchTimeoutId, '[gnome-shell] Main.activateWindow');
|
||||
}
|
||||
|
||||
return DND.DragMotionResult.CONTINUE;
|
||||
|
@ -259,13 +259,18 @@ const ThumbnailsSlider = new Lang.Class({
|
||||
|
||||
Main.layoutManager.connect('monitors-changed', Lang.bind(this, this._updateSlide));
|
||||
this.actor.connect('notify::hover', Lang.bind(this, this._updateSlide));
|
||||
global.window_manager.connect('switch-workspace', Lang.bind(this, this._updateSlide));
|
||||
this._thumbnailsBox.actor.bind_property('visible', this.actor, 'visible', GObject.BindingFlags.SYNC_CREATE);
|
||||
},
|
||||
|
||||
_getAlwaysZoomOut: function() {
|
||||
// Always show the pager when hover, during a drag, or if workspaces are
|
||||
// actually used, e.g. there are windows on more than one
|
||||
let alwaysZoomOut = this.actor.hover || this._inDrag || !Meta.prefs_get_dynamic_workspaces() || global.screen.n_workspaces > 2;
|
||||
// actually used, e.g. there are windows on any non-active workspace
|
||||
let alwaysZoomOut = this.actor.hover ||
|
||||
this._inDrag ||
|
||||
!Meta.prefs_get_dynamic_workspaces() ||
|
||||
global.screen.n_workspaces > 2 ||
|
||||
global.screen.get_active_workspace_index() != 0;
|
||||
|
||||
if (!alwaysZoomOut) {
|
||||
let monitors = Main.layoutManager.monitors;
|
||||
@ -391,111 +396,6 @@ const DashSpacer = new Lang.Class({
|
||||
}
|
||||
});
|
||||
|
||||
const MessagesIndicator = new Lang.Class({
|
||||
Name: 'MessagesIndicator',
|
||||
|
||||
_init: function(viewSelector) {
|
||||
this._count = 0;
|
||||
this._sources = [];
|
||||
this._viewSelector = viewSelector;
|
||||
|
||||
this._container = new St.BoxLayout({ style_class: 'messages-indicator-contents',
|
||||
reactive: true,
|
||||
track_hover: true,
|
||||
x_expand: true,
|
||||
y_expand: true,
|
||||
x_align: Clutter.ActorAlign.CENTER });
|
||||
|
||||
this._icon = new St.Icon({ icon_name: 'user-idle-symbolic',
|
||||
icon_size: 16 });
|
||||
this._container.add_actor(this._icon);
|
||||
|
||||
this._label = new St.Label();
|
||||
this._container.add_actor(this._label);
|
||||
|
||||
this._highlight = new St.Widget({ style_class: 'messages-indicator-highlight',
|
||||
x_expand: true,
|
||||
y_expand: true,
|
||||
y_align: Clutter.ActorAlign.END,
|
||||
visible: false });
|
||||
|
||||
this._container.connect('notify::hover', Lang.bind(this,
|
||||
function() {
|
||||
this._highlight.visible = this._container.hover;
|
||||
}));
|
||||
|
||||
let clickAction = new Clutter.ClickAction();
|
||||
this._container.add_action(clickAction);
|
||||
clickAction.connect('clicked', Lang.bind(this,
|
||||
function() {
|
||||
Main.messageTray.openTray();
|
||||
}));
|
||||
|
||||
Main.messageTray.connect('showing', Lang.bind(this,
|
||||
function() {
|
||||
this._highlight.visible = false;
|
||||
this._container.hover = false;
|
||||
}));
|
||||
|
||||
let layout = new Clutter.BinLayout();
|
||||
this.actor = new St.Widget({ layout_manager: layout,
|
||||
style_class: 'messages-indicator',
|
||||
y_expand: true,
|
||||
y_align: Clutter.ActorAlign.END,
|
||||
visible: false });
|
||||
this.actor.add_actor(this._container);
|
||||
this.actor.add_actor(this._highlight);
|
||||
|
||||
Main.messageTray.connect('source-added', Lang.bind(this, this._onSourceAdded));
|
||||
Main.messageTray.connect('source-removed', Lang.bind(this, this._onSourceRemoved));
|
||||
|
||||
let sources = Main.messageTray.getSources();
|
||||
sources.forEach(Lang.bind(this, function(source) { this._onSourceAdded(null, source); }));
|
||||
|
||||
this._viewSelector.connect('page-changed', Lang.bind(this, this._updateVisibility));
|
||||
Main.overview.connect('showing', Lang.bind(this, this._updateVisibility));
|
||||
},
|
||||
|
||||
_onSourceAdded: function(tray, source) {
|
||||
if (source.trayIcon)
|
||||
return;
|
||||
|
||||
source.connect('count-updated', Lang.bind(this, this._updateCount));
|
||||
this._sources.push(source);
|
||||
this._updateCount();
|
||||
},
|
||||
|
||||
_onSourceRemoved: function(tray, source) {
|
||||
this._sources.splice(this._sources.indexOf(source), 1);
|
||||
this._updateCount();
|
||||
},
|
||||
|
||||
_updateCount: function() {
|
||||
let count = 0;
|
||||
let hasChats = false;
|
||||
this._sources.forEach(Lang.bind(this,
|
||||
function(source) {
|
||||
count += source.indicatorCount;
|
||||
hasChats |= source.isChat;
|
||||
}));
|
||||
|
||||
this._count = count;
|
||||
this._label.text = ngettext("%d new message",
|
||||
"%d new messages",
|
||||
count).format(count);
|
||||
|
||||
this._icon.visible = hasChats;
|
||||
this._updateVisibility();
|
||||
},
|
||||
|
||||
_updateVisibility: function() {
|
||||
let activePage = this._viewSelector.getActivePage();
|
||||
let visible = ((this._count > 0) && (activePage == ViewSelector.ViewPage.WINDOWS));
|
||||
|
||||
this.actor.visible = visible;
|
||||
}
|
||||
});
|
||||
|
||||
const ControlsLayout = new Lang.Class({
|
||||
Name: 'ControlsLayout',
|
||||
Extends: Clutter.BinLayout,
|
||||
@ -524,9 +424,6 @@ const ControlsManager = new Lang.Class({
|
||||
this.viewSelector.connect('page-changed', Lang.bind(this, this._setVisibility));
|
||||
this.viewSelector.connect('page-empty', Lang.bind(this, this._onPageEmpty));
|
||||
|
||||
this._indicator = new MessagesIndicator(this.viewSelector);
|
||||
this.indicatorActor = this._indicator.actor;
|
||||
|
||||
let layout = new ControlsLayout();
|
||||
this.actor = new St.Widget({ layout_manager: layout,
|
||||
reactive: true,
|
||||
|
@ -595,6 +595,7 @@ const ActivitiesButton = new Lang.Class({
|
||||
Mainloop.source_remove(this._xdndTimeOut);
|
||||
this._xdndTimeOut = Mainloop.timeout_add(BUTTON_DND_ACTIVATION_TIMEOUT,
|
||||
Lang.bind(this, this._xdndToggleOverview, actor));
|
||||
GLib.Source.set_name_by_id(this._xdndTimeOut, '[gnome-shell] this._xdndToggleOverview');
|
||||
|
||||
return DND.DragMotionResult.CONTINUE;
|
||||
},
|
||||
|
@ -107,6 +107,7 @@ const PointerWatcher = new Lang.Class({
|
||||
|
||||
this._timeoutId = Mainloop.timeout_add(minInterval,
|
||||
Lang.bind(this, this._onTimeout));
|
||||
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout');
|
||||
},
|
||||
|
||||
_onTimeout: function() {
|
||||
|
@ -251,8 +251,16 @@ const PopupSeparatorMenuItem = new Lang.Class({
|
||||
this.actor.add(this.label);
|
||||
this.actor.label_actor = this.label;
|
||||
|
||||
this.label.connect('notify::text',
|
||||
Lang.bind(this, this._syncVisibility));
|
||||
this._syncVisibility();
|
||||
|
||||
this._separator = new Separator.HorizontalSeparator({ style_class: 'popup-separator-menu-item' });
|
||||
this.actor.add(this._separator.actor, { expand: true });
|
||||
},
|
||||
|
||||
_syncVisibility: function() {
|
||||
this.label.visible = this.label.text != '';
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -850,6 +850,7 @@ const ScreenShield = new Lang.Class({
|
||||
this.lock(false);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._lockTimeoutId, '[gnome-shell] this.lock');
|
||||
}
|
||||
|
||||
this._activateFade(this._longLightbox, STANDARD_FADE_TIME);
|
||||
@ -1041,6 +1042,7 @@ const ScreenShield = new Lang.Class({
|
||||
|
||||
if (!this._arrowAnimationId) {
|
||||
this._arrowAnimationId = Mainloop.timeout_add(6000, Lang.bind(this, this._animateArrows));
|
||||
GLib.Source.set_name_by_id(this._arrowAnimationId, '[gnome-shell] this._animateArrows');
|
||||
this._animateArrows();
|
||||
}
|
||||
|
||||
@ -1108,10 +1110,11 @@ const ScreenShield = new Lang.Class({
|
||||
if (params.fadeToBlack && params.animateFade) {
|
||||
// Take a beat
|
||||
|
||||
Mainloop.timeout_add(1000 * MANUAL_FADE_TIME, Lang.bind(this, function() {
|
||||
let id = Mainloop.timeout_add(1000 * MANUAL_FADE_TIME, Lang.bind(this, function() {
|
||||
this._activateFade(this._shortLightbox, MANUAL_FADE_TIME);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] this._activateFade');
|
||||
} else {
|
||||
if (params.fadeToBlack)
|
||||
this._activateFade(this._shortLightbox, 0);
|
||||
|
@ -11,6 +11,7 @@ const Shell = imports.gi.Shell;
|
||||
const Signals = imports.signals;
|
||||
const St = imports.gi.St;
|
||||
|
||||
const GrabHelper = imports.ui.grabHelper;
|
||||
const Lightbox = imports.ui.lightbox;
|
||||
const Main = imports.ui.main;
|
||||
const Tweener = imports.ui.tweener;
|
||||
@ -139,6 +140,7 @@ const SelectArea = new Lang.Class({
|
||||
this._startY = -1;
|
||||
this._lastX = 0;
|
||||
this._lastY = 0;
|
||||
this._result = null;
|
||||
|
||||
this._initRubberbandColors();
|
||||
|
||||
@ -148,12 +150,12 @@ const SelectArea = new Lang.Class({
|
||||
y: 0 });
|
||||
Main.uiGroup.add_actor(this._group);
|
||||
|
||||
this._grabHelper = new GrabHelper.GrabHelper(this._group);
|
||||
|
||||
this._group.connect('button-press-event',
|
||||
Lang.bind(this, this._onButtonPress));
|
||||
this._group.connect('button-release-event',
|
||||
Lang.bind(this, this._onButtonRelease));
|
||||
this._group.connect('key-press-event',
|
||||
Lang.bind(this, this._onKeyPress));
|
||||
this._group.connect('motion-event',
|
||||
Lang.bind(this, this._onMotionEvent));
|
||||
|
||||
@ -169,10 +171,12 @@ const SelectArea = new Lang.Class({
|
||||
},
|
||||
|
||||
show: function() {
|
||||
if (!Main.pushModal(this._group) || this._group.visible)
|
||||
if (!this._grabHelper.grab({ actor: this._group,
|
||||
onUngrab: Lang.bind(this, this._onUngrab) }))
|
||||
return;
|
||||
|
||||
global.screen.set_cursor(Meta.Cursor.CROSSHAIR);
|
||||
Main.uiGroup.set_child_above_sibling(this._group, null);
|
||||
this._group.visible = true;
|
||||
},
|
||||
|
||||
@ -202,13 +206,6 @@ const SelectArea = new Lang.Class({
|
||||
height: Math.abs(this._startY - this._lastY) };
|
||||
},
|
||||
|
||||
_onKeyPress: function(actor, event) {
|
||||
if (event.get_key_symbol() == Clutter.Escape)
|
||||
this._destroy(null, false);
|
||||
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
},
|
||||
|
||||
_onMotionEvent: function(actor, event) {
|
||||
if (this._startX == -1 || this._startY == -1)
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
@ -230,24 +227,28 @@ const SelectArea = new Lang.Class({
|
||||
},
|
||||
|
||||
_onButtonRelease: function(actor, event) {
|
||||
this._destroy(this._getGeometry(), true);
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
},
|
||||
|
||||
_destroy: function(geometry, fade) {
|
||||
this._result = this._getGeometry();
|
||||
Tweener.addTween(this._group,
|
||||
{ opacity: 0,
|
||||
time: fade ? 0.2 : 0,
|
||||
time: 0.2,
|
||||
transition: 'easeOutQuad',
|
||||
onComplete: Lang.bind(this,
|
||||
function() {
|
||||
Main.popModal(this._group);
|
||||
this._group.destroy();
|
||||
global.screen.set_cursor(Meta.Cursor.DEFAULT);
|
||||
|
||||
this.emit('finished', geometry);
|
||||
this._grabHelper.ungrab();
|
||||
})
|
||||
});
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
},
|
||||
|
||||
_onUngrab: function() {
|
||||
global.screen.set_cursor(Meta.Cursor.DEFAULT);
|
||||
this.emit('finished', this._result);
|
||||
|
||||
GLib.idle_add(GLib.PRIORITY_DEFAULT, Lang.bind(this,
|
||||
function() {
|
||||
this._group.destroy();
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
}
|
||||
});
|
||||
Signals.addSignalMethods(SelectArea.prototype);
|
||||
|
@ -39,11 +39,12 @@ const Main = imports.ui.main;
|
||||
function sleep(milliseconds) {
|
||||
let cb;
|
||||
|
||||
Mainloop.timeout_add(milliseconds, function() {
|
||||
let id = Mainloop.timeout_add(milliseconds, function() {
|
||||
if (cb)
|
||||
cb();
|
||||
return GLib.SOURCE_REMOVE;
|
||||
});
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] sleep');
|
||||
|
||||
return function(callback) {
|
||||
cb = callback;
|
||||
|
@ -68,6 +68,9 @@ const SearchSystem = new Lang.Class({
|
||||
_unregisterProvider: function (provider) {
|
||||
let index = this._providers.indexOf(provider);
|
||||
this._providers.splice(index, 1);
|
||||
|
||||
if (provider.display)
|
||||
provider.display.destroy();
|
||||
},
|
||||
|
||||
getProviders: function() {
|
||||
@ -629,8 +632,11 @@ const SearchResults = new Lang.Class({
|
||||
if (newDefaultResult != this._defaultResult) {
|
||||
if (this._defaultResult)
|
||||
this._defaultResult.setSelected(false);
|
||||
if (newDefaultResult)
|
||||
if (newDefaultResult) {
|
||||
newDefaultResult.setSelected(this._highlightDefault);
|
||||
if (this._highlightDefault)
|
||||
Util.ensureActorVisibleInScrollView(this._scrollView, newDefaultResult.actor);
|
||||
}
|
||||
|
||||
this._defaultResult = newDefaultResult;
|
||||
}
|
||||
@ -667,8 +673,11 @@ const SearchResults = new Lang.Class({
|
||||
|
||||
highlightDefault: function(highlight) {
|
||||
this._highlightDefault = highlight;
|
||||
if (this._defaultResult)
|
||||
if (this._defaultResult) {
|
||||
this._defaultResult.setSelected(highlight);
|
||||
if (highlight)
|
||||
Util.ensureActorVisibleInScrollView(this._scrollView, this._defaultResult.actor);
|
||||
}
|
||||
},
|
||||
|
||||
navigateFocus: function(direction) {
|
||||
|
@ -140,13 +140,14 @@ function _loadModes() {
|
||||
|
||||
function listModes() {
|
||||
_loadModes();
|
||||
Mainloop.idle_add(function() {
|
||||
let id = Mainloop.idle_add(function() {
|
||||
let names = Object.getOwnPropertyNames(_modes);
|
||||
for (let i = 0; i < names.length; i++)
|
||||
if (_modes[names[i]].isPrimary)
|
||||
print(names[i]);
|
||||
Mainloop.quit('listModes');
|
||||
});
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] listModes');
|
||||
Mainloop.run('listModes');
|
||||
}
|
||||
|
||||
|
@ -141,12 +141,7 @@ const GnomeShell = new Lang.Class({
|
||||
if (params['icon'])
|
||||
icon = Gio.Icon.new_for_string(params['icon']);
|
||||
|
||||
Main.osdWindow.setIcon(icon);
|
||||
Main.osdWindow.setMonitor (monitorIndex);
|
||||
Main.osdWindow.setLabel(params['label']);
|
||||
Main.osdWindow.setLevel(params['level']);
|
||||
|
||||
Main.osdWindow.show();
|
||||
Main.osdWindowManager.show(monitorIndex, icon, params['label'], params['level']);
|
||||
},
|
||||
|
||||
FocusApp: function(id) {
|
||||
|
@ -103,6 +103,7 @@ const ATIndicator = new Lang.Class({
|
||||
return;
|
||||
|
||||
this._syncMenuVisbilityIdle = Mainloop.idle_add(Lang.bind(this, this._syncMenuVisibility));
|
||||
GLib.Source.set_name_by_id(this._syncMenuVisbilityIdle, '[gnome-shell] this._syncMenuVisibility');
|
||||
},
|
||||
|
||||
_buildItemExtended: function(string, initial_value, writable, on_set) {
|
||||
|
@ -292,6 +292,10 @@ const InputSourcePopup = new Lang.Class({
|
||||
this._select(this._previous());
|
||||
else if (keysym == Clutter.Right)
|
||||
this._select(this._next());
|
||||
else
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
|
||||
return Clutter.EVENT_STOP;
|
||||
},
|
||||
|
||||
_finish : function() {
|
||||
|
@ -56,8 +56,8 @@ const Indicator = new Lang.Class({
|
||||
this._agent = Gio.DBusExportedObject.wrapJSObject(AgentIface, this);
|
||||
this._agent.export(Gio.DBus.system, '/org/freedesktop/GeoClue2/Agent');
|
||||
|
||||
this._item.status.text = _("On");
|
||||
this._onOffAction = this._item.menu.addAction(_("Turn Off"), Lang.bind(this, this._onOnOffAction));
|
||||
this._item.status.text = _("Enabled");
|
||||
this._onOffAction = this._item.menu.addAction(_("Disable"), Lang.bind(this, this._onOnOffAction));
|
||||
|
||||
this.menu.addMenuItem(this._item);
|
||||
|
||||
@ -97,6 +97,7 @@ const Indicator = new Lang.Class({
|
||||
}
|
||||
|
||||
this._indicator.visible = this._proxy.InUse;
|
||||
this._updateMenuLabels();
|
||||
},
|
||||
|
||||
_connectToGeoclue: function() {
|
||||
@ -122,7 +123,7 @@ const Indicator = new Lang.Class({
|
||||
this._propertiesChangedId = this._proxy.connect('g-properties-changed',
|
||||
Lang.bind(this, this._onGeocluePropsChanged));
|
||||
|
||||
this._updateMenu();
|
||||
this._availableAccuracyLevel = this._proxy.AvailableAccuracyLevel;
|
||||
this._syncIndicator();
|
||||
|
||||
this._proxy.AddAgentRemote('gnome-shell', Lang.bind(this, this._onAgentRegistered));
|
||||
@ -158,14 +159,18 @@ const Indicator = new Lang.Class({
|
||||
this.menu.setSensitive(sensitive);
|
||||
},
|
||||
|
||||
_onMaxAccuracyLevelChanged: function() {
|
||||
_updateMenuLabels: function() {
|
||||
if (this._getMaxAccuracyLevel() == 0) {
|
||||
this._item.status.text = _("Off");
|
||||
this._onOffAction.label.text = _("Turn On");
|
||||
this._item.status.text = _("Disabled");
|
||||
this._onOffAction.label.text = _("Enable");
|
||||
} else {
|
||||
this._item.status.text = _("On");
|
||||
this._onOffAction.label.text = _("Turn Off");
|
||||
this._item.status.text = this._indicator.visible ? _("In Use") : _("Enabled");
|
||||
this._onOffAction.label.text = _("Disable");
|
||||
}
|
||||
},
|
||||
|
||||
_onMaxAccuracyLevelChanged: function() {
|
||||
this._updateMenuLabels();
|
||||
|
||||
// Gotta ensure geoclue is up and we are registered as agent to it
|
||||
// before we emit the notify for this property change.
|
||||
@ -182,17 +187,12 @@ const Indicator = new Lang.Class({
|
||||
this._agent.emit_property_changed('MaxAccuracyLevel', variant);
|
||||
},
|
||||
|
||||
_updateMenu: function() {
|
||||
this._availableAccuracyLevel = this._proxy.AvailableAccuracyLevel;
|
||||
this.menu.actor.visible = (this._availableAccuracyLevel != 0);
|
||||
},
|
||||
|
||||
_onGeocluePropsChanged: function(proxy, properties) {
|
||||
let unpacked = properties.deep_unpack();
|
||||
if ("InUse" in unpacked)
|
||||
this._syncIndicator();
|
||||
if ("AvailableAccuracyLevel" in unpacked)
|
||||
this._updateMenu();
|
||||
this._availableAccuracyLevel = this._proxy.AvailableAccuracyLevel;
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -423,18 +423,18 @@ const NMConnectionDevice = new Lang.Class({
|
||||
case NetworkManager.DeviceState.UNMANAGED:
|
||||
/* Translators: this is for network devices that are physically present but are not
|
||||
under NetworkManager's control (and thus cannot be used in the menu) */
|
||||
return _("unmanaged");
|
||||
return _("Unmanaged");
|
||||
case NetworkManager.DeviceState.DEACTIVATING:
|
||||
return _("disconnecting...");
|
||||
return _("Disconnecting");
|
||||
case NetworkManager.DeviceState.PREPARE:
|
||||
case NetworkManager.DeviceState.CONFIG:
|
||||
case NetworkManager.DeviceState.IP_CONFIG:
|
||||
case NetworkManager.DeviceState.IP_CHECK:
|
||||
case NetworkManager.DeviceState.SECONDARIES:
|
||||
return _("connecting...");
|
||||
return _("Connecting");
|
||||
case NetworkManager.DeviceState.NEED_AUTH:
|
||||
/* Translators: this is for network connections that require some kind of key or password */
|
||||
return _("authentication required");
|
||||
return _("Authentication required");
|
||||
case NetworkManager.DeviceState.UNAVAILABLE:
|
||||
// This state is actually a compound of various states (generically unavailable,
|
||||
// firmware missing), that are exposed by different properties (whose state may
|
||||
@ -442,13 +442,13 @@ const NMConnectionDevice = new Lang.Class({
|
||||
if (this._device.firmware_missing) {
|
||||
/* Translators: this is for devices that require some kind of firmware or kernel
|
||||
module, which is missing */
|
||||
return _("firmware missing");
|
||||
return _("Firmware missing");
|
||||
}
|
||||
/* Translators: this is for a network device that cannot be activated (for example it
|
||||
is disabled by rfkill, or it has no coverage */
|
||||
return _("unavailable");
|
||||
return _("Unavailable");
|
||||
case NetworkManager.DeviceState.FAILED:
|
||||
return _("connection failed");
|
||||
return _("Connection failed");
|
||||
default:
|
||||
log('Device state invalid, is %d'.format(this._device.state));
|
||||
return 'invalid';
|
||||
|
@ -4,6 +4,7 @@ const Gio = imports.gi.Gio;
|
||||
const Lang = imports.lang;
|
||||
const Signals = imports.signals;
|
||||
|
||||
const Main = imports.ui.main;
|
||||
const PanelMenu = imports.ui.panelMenu;
|
||||
const PopupMenu = imports.ui.popupMenu;
|
||||
|
||||
@ -83,10 +84,18 @@ const Indicator = new Lang.Class({
|
||||
this._item.icon.icon_name = 'airplane-mode-symbolic';
|
||||
this._item.status.text = _("On");
|
||||
this._offItem = this._item.menu.addAction(_("Turn Off"), Lang.bind(this, function() {
|
||||
this._proxy.AirplaneMode = false;
|
||||
this._manager.airplaneMode = false;
|
||||
}));
|
||||
this._item.menu.addSettingsAction(_("Network Settings"), 'gnome-network-panel.desktop');
|
||||
this.menu.addMenuItem(this._item);
|
||||
|
||||
Main.sessionMode.connect('updated', Lang.bind(this, this._sessionUpdated));
|
||||
this._sessionUpdated();
|
||||
},
|
||||
|
||||
_sessionUpdated: function() {
|
||||
let sensitive = !Main.sessionMode.isLocked && !Main.sessionMode.isGreeter;
|
||||
this.menu.setSensitive(sensitive);
|
||||
},
|
||||
|
||||
_sync: function() {
|
||||
|
@ -56,7 +56,10 @@ const AltSwitcher = new Lang.Class({
|
||||
}
|
||||
|
||||
if (this.actor.get_child() != childToShow) {
|
||||
let hasFocus = this.actor.contains(global.stage.get_key_focus());
|
||||
this.actor.set_child(childToShow);
|
||||
if (hasFocus)
|
||||
childToShow.grab_key_focus();
|
||||
|
||||
// The actors might respond to hover, so
|
||||
// sync the pointer to make sure they update.
|
||||
|
@ -161,11 +161,12 @@ const SwitcherPopup = new Lang.Class({
|
||||
// disturbed by the popup briefly flashing.
|
||||
this._initialDelayTimeoutId = Mainloop.timeout_add(POPUP_DELAY_TIMEOUT,
|
||||
Lang.bind(this, function () {
|
||||
Main.osdWindow.cancel();
|
||||
Main.osdWindowManager.hideAll();
|
||||
this.actor.opacity = 255;
|
||||
this._initialDelayTimeoutId = 0;
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(this._initialDelayTimeoutId, '[gnome-shell] Main.osdWindow.cancel');
|
||||
return true;
|
||||
},
|
||||
|
||||
@ -189,10 +190,11 @@ const SwitcherPopup = new Lang.Class({
|
||||
|
||||
this._disableHover();
|
||||
|
||||
if (this._keyPressHandler(keysym, backwards, action) != Clutter.EVENT_PROPAGATE)
|
||||
return Clutter.EVENT_STOP;
|
||||
|
||||
if (keysym == Clutter.Escape)
|
||||
this.destroy();
|
||||
else
|
||||
this._keyPressHandler(keysym, backwards, action);
|
||||
|
||||
return Clutter.EVENT_STOP;
|
||||
},
|
||||
@ -250,6 +252,7 @@ const SwitcherPopup = new Lang.Class({
|
||||
Mainloop.source_remove(this._motionTimeoutId);
|
||||
|
||||
this._motionTimeoutId = Mainloop.timeout_add(DISABLE_HOVER_TIMEOUT, Lang.bind(this, this._mouseTimedOut));
|
||||
GLib.Source.set_name_by_id(this._motionTimeoutId, '[gnome-shell] this._mouseTimedOut');
|
||||
},
|
||||
|
||||
_mouseTimedOut: function() {
|
||||
|
@ -282,7 +282,7 @@ const ViewSelector = new Lang.Class({
|
||||
return Clutter.EVENT_STOP;
|
||||
} else if (this._shouldTriggerSearch(symbol)) {
|
||||
this.startSearch(event);
|
||||
} else if (!this._searchActive) {
|
||||
} else if (!this._searchActive && !global.stage.key_focus) {
|
||||
if (symbol == Clutter.Tab || symbol == Clutter.Down) {
|
||||
this._activePage.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false);
|
||||
return true;
|
||||
@ -383,9 +383,11 @@ const ViewSelector = new Lang.Class({
|
||||
this._iconClickedId = this._entry.connect('secondary-icon-clicked',
|
||||
Lang.bind(this, this.reset));
|
||||
|
||||
if (this._searchTimeoutId == 0)
|
||||
if (this._searchTimeoutId == 0) {
|
||||
this._searchTimeoutId = Mainloop.timeout_add(150,
|
||||
Lang.bind(this, this._doSearch));
|
||||
GLib.Source.set_name_by_id(this._searchTimeoutId, '[gnome-shell] this._doSearch');
|
||||
}
|
||||
} else {
|
||||
if (this._iconClickedId > 0) {
|
||||
this._entry.disconnect(this._iconClickedId);
|
||||
|
@ -15,6 +15,7 @@ const WorkspaceSwitcherPopup = imports.ui.workspaceSwitcherPopup;
|
||||
const Main = imports.ui.main;
|
||||
const ModalDialog = imports.ui.modalDialog;
|
||||
const Tweener = imports.ui.tweener;
|
||||
const WindowMenu = imports.ui.windowMenu;
|
||||
|
||||
const SHELL_KEYBINDINGS_SCHEMA = 'org.gnome.shell.keybindings';
|
||||
const WINDOW_ANIMATION_TIME = 0.25;
|
||||
@ -82,6 +83,7 @@ const DisplayChangeDialog = new Lang.Class({
|
||||
{ expand: false, x_fill: false, x_align: St.Align.END });
|
||||
|
||||
this._timeoutId = Mainloop.timeout_add(ONE_SECOND, Lang.bind(this, this._tick));
|
||||
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._tick');
|
||||
},
|
||||
|
||||
close: function(timestamp) {
|
||||
@ -271,18 +273,20 @@ const WorkspaceTracker = new Lang.Class({
|
||||
this._queueCheckWorkspaces();
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(workspace._keepAliveId, '[gnome-shell] this._queueCheckWorkspaces');
|
||||
},
|
||||
|
||||
_windowRemoved: function(workspace, window) {
|
||||
workspace._lastRemovedWindow = window;
|
||||
this._queueCheckWorkspaces();
|
||||
Mainloop.timeout_add(LAST_WINDOW_GRACE_TIME, Lang.bind(this, function() {
|
||||
let id = Mainloop.timeout_add(LAST_WINDOW_GRACE_TIME, Lang.bind(this, function() {
|
||||
if (workspace._lastRemovedWindow == window) {
|
||||
workspace._lastRemovedWindow = null;
|
||||
this._queueCheckWorkspaces();
|
||||
}
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] this._queueCheckWorkspaces');
|
||||
},
|
||||
|
||||
_windowLeftMonitor: function(metaScreen, monitorIndex, metaWin) {
|
||||
@ -460,8 +464,6 @@ const WindowManager = new Lang.Class({
|
||||
|
||||
this._dimmedWindows = [];
|
||||
|
||||
this._animationBlockCount = 0;
|
||||
|
||||
this._allowedKeybindings = {};
|
||||
|
||||
this._switchData = null;
|
||||
@ -477,6 +479,7 @@ const WindowManager = new Lang.Class({
|
||||
this._shellwm.connect('switch-workspace', Lang.bind(this, this._switchWorkspace));
|
||||
this._shellwm.connect('show-tile-preview', Lang.bind(this, this._showTilePreview));
|
||||
this._shellwm.connect('hide-tile-preview', Lang.bind(this, this._hideTilePreview));
|
||||
this._shellwm.connect('show-window-menu', Lang.bind(this, this._showWindowMenu));
|
||||
this._shellwm.connect('minimize', Lang.bind(this, this._minimizeWindow));
|
||||
this._shellwm.connect('maximize', Lang.bind(this, this._maximizeWindow));
|
||||
this._shellwm.connect('unmaximize', Lang.bind(this, this._unmaximizeWindow));
|
||||
@ -504,6 +507,10 @@ const WindowManager = new Lang.Class({
|
||||
Shell.KeyBindingMode.NORMAL |
|
||||
Shell.KeyBindingMode.OVERVIEW,
|
||||
Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
this.setCustomKeybindingHandler('switch-to-workspace-last',
|
||||
Shell.KeyBindingMode.NORMAL |
|
||||
Shell.KeyBindingMode.OVERVIEW,
|
||||
Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
this.setCustomKeybindingHandler('move-to-workspace-left',
|
||||
Shell.KeyBindingMode.NORMAL |
|
||||
Shell.KeyBindingMode.OVERVIEW,
|
||||
@ -604,6 +611,9 @@ const WindowManager = new Lang.Class({
|
||||
this.setCustomKeybindingHandler('move-to-workspace-12',
|
||||
Shell.KeyBindingMode.NORMAL,
|
||||
Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
this.setCustomKeybindingHandler('move-to-workspace-last',
|
||||
Shell.KeyBindingMode.NORMAL,
|
||||
Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
this.setCustomKeybindingHandler('switch-applications',
|
||||
Shell.KeyBindingMode.NORMAL,
|
||||
Lang.bind(this, this._startAppSwitcher));
|
||||
@ -659,6 +669,8 @@ const WindowManager = new Lang.Class({
|
||||
this._dimWindow(this._dimmedWindows[i]);
|
||||
}));
|
||||
|
||||
this._windowMenuManager = new WindowMenu.WindowMenuManager();
|
||||
|
||||
if (Main.sessionMode.hasWorkspaces)
|
||||
this._workspaceTracker = new WorkspaceTracker(this);
|
||||
|
||||
@ -694,16 +706,8 @@ const WindowManager = new Lang.Class({
|
||||
this._allowedKeybindings[name] = modes;
|
||||
},
|
||||
|
||||
blockAnimations: function() {
|
||||
this._animationBlockCount++;
|
||||
},
|
||||
|
||||
unblockAnimations: function() {
|
||||
this._animationBlockCount = Math.max(0, this._animationBlockCount - 1);
|
||||
},
|
||||
|
||||
_shouldAnimate: function() {
|
||||
return !(Main.overview.visible || this._animationBlockCount > 0);
|
||||
return !Main.overview.visible;
|
||||
},
|
||||
|
||||
_shouldAnimateActor: function(actor) {
|
||||
@ -1149,6 +1153,10 @@ const WindowManager = new Lang.Class({
|
||||
this._tilePreview.hide();
|
||||
},
|
||||
|
||||
_showWindowMenu: function(shellwm, window, menu, rect) {
|
||||
this._windowMenuManager.showWindowMenuForWindow(window, menu, rect);
|
||||
},
|
||||
|
||||
_startAppSwitcher : function(display, screen, window, binding) {
|
||||
/* prevent a corner case where both popups show up at once */
|
||||
if (this._workspaceSwitcherPopup != null)
|
||||
@ -1205,7 +1213,10 @@ const WindowManager = new Lang.Class({
|
||||
let newWs;
|
||||
let direction;
|
||||
|
||||
if (isNaN(target)) {
|
||||
if (target == 'last') {
|
||||
direction = Meta.MotionDirection.DOWN;
|
||||
newWs = screen.get_workspace_by_index(screen.n_workspaces - 1);
|
||||
} else if (isNaN(target)) {
|
||||
direction = Meta.MotionDirection[target.toUpperCase()];
|
||||
newWs = screen.get_active_workspace().get_neighbor(direction);
|
||||
} else if (target > 0) {
|
||||
|
185
js/ui/windowMenu.js
Normal file
185
js/ui/windowMenu.js
Normal file
@ -0,0 +1,185 @@
|
||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*
|
||||
|
||||
const Gtk = imports.gi.Gtk;
|
||||
const Lang = imports.lang;
|
||||
const Meta = imports.gi.Meta;
|
||||
const St = imports.gi.St;
|
||||
const Shell = imports.gi.Shell;
|
||||
|
||||
const BoxPointer = imports.ui.boxpointer;
|
||||
const Main = imports.ui.main;
|
||||
const PopupMenu = imports.ui.popupMenu;
|
||||
const RemoteMenu = imports.ui.remoteMenu;
|
||||
|
||||
const WindowMenu = new Lang.Class({
|
||||
Name: 'WindowMenu',
|
||||
Extends: PopupMenu.PopupMenu,
|
||||
|
||||
_init: function(window, sourceActor) {
|
||||
this.parent(sourceActor, 0, St.Side.TOP);
|
||||
|
||||
this.actor.add_style_class_name('window-menu');
|
||||
|
||||
Main.layoutManager.uiGroup.add_actor(this.actor);
|
||||
this.actor.hide();
|
||||
|
||||
this._buildMenu(window);
|
||||
},
|
||||
|
||||
_buildMenu: function(window) {
|
||||
let type = window.get_window_type();
|
||||
|
||||
let item;
|
||||
|
||||
item = this.addAction(_("Minimize"), Lang.bind(this, function(event) {
|
||||
window.minimize();
|
||||
}));
|
||||
if (!window.can_minimize())
|
||||
item.setSensitive(false);
|
||||
|
||||
if (window.get_maximized()) {
|
||||
item = this.addAction(_("Unmaximize"), Lang.bind(this, function() {
|
||||
window.unmaximize(Meta.MaximizeFlags.BOTH);
|
||||
}));
|
||||
} else {
|
||||
item = this.addAction(_("Maximize"), Lang.bind(this, function() {
|
||||
window.maximize(Meta.MaximizeFlags.BOTH);
|
||||
}));
|
||||
}
|
||||
if (!window.can_maximize())
|
||||
item.setSensitive(false);
|
||||
|
||||
item = this.addAction(_("Move"), Lang.bind(this, function(event) {
|
||||
window.begin_grab_op(Meta.GrabOp.KEYBOARD_MOVING, true, event.get_time());
|
||||
}));
|
||||
if (!window.allows_move())
|
||||
item.setSensitive(false);
|
||||
|
||||
item = this.addAction(_("Resize"), Lang.bind(this, function(event) {
|
||||
window.begin_grab_op(Meta.GrabOp.KEYBOARD_RESIZING_UNKNOWN, true, event.get_time());
|
||||
}));
|
||||
if (!window.allows_resize())
|
||||
item.setSensitive(false);
|
||||
|
||||
if (!window.titlebar_is_onscreen() && type != Meta.WindowType.DOCK && type != Meta.WindowType.DESKTOP) {
|
||||
this.addAction(_("Move Titlebar Onscreen"), Lang.bind(this, function(event) {
|
||||
window.shove_titlebar_onscreen();
|
||||
}));
|
||||
}
|
||||
|
||||
item = this.addAction(_("Always on Top"), Lang.bind(this, function() {
|
||||
if (window.is_above())
|
||||
window.unmake_above();
|
||||
else
|
||||
window.make_above();
|
||||
}));
|
||||
if (window.is_above())
|
||||
item.setOrnament(PopupMenu.Ornament.DOT);
|
||||
if (window.get_maximized() ||
|
||||
type == Meta.WindowType.DOCK ||
|
||||
type == Meta.WindowType.DESKTOP ||
|
||||
type == Meta.WindowType.SPLASHSCREEN)
|
||||
item.setSensitive(false);
|
||||
|
||||
if (Main.sessionMode.hasWorkspaces &&
|
||||
(!Meta.prefs_get_workspaces_only_on_primary() ||
|
||||
window.is_on_primary_monitor())) {
|
||||
let isSticky = window.is_on_all_workspaces();
|
||||
|
||||
item = this.addAction(_("Always on Visible Workspace"), Lang.bind(this, function() {
|
||||
if (isSticky)
|
||||
window.unstick();
|
||||
else
|
||||
window.stick();
|
||||
}));
|
||||
if (isSticky)
|
||||
item.setOrnament(PopupMenu.Ornament.DOT);
|
||||
if (window.is_always_on_all_workspaces())
|
||||
item.setSensitive(false);
|
||||
|
||||
let nWorkspaces = global.screen.n_workspaces;
|
||||
|
||||
if (!isSticky) {
|
||||
let workspace = window.get_workspace();
|
||||
let idx = workspace.index();
|
||||
if (idx > 0) {
|
||||
this.addAction(_("Move to Workspace Up"), Lang.bind(this, function(event) {
|
||||
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.UP));
|
||||
}));
|
||||
}
|
||||
if (idx < nWorkspaces) {
|
||||
this.addAction(_("Move to Workspace Down"), Lang.bind(this, function(event) {
|
||||
window.change_workspace(workspace.get_neighbor(Meta.MotionDirection.DOWN));
|
||||
}));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
|
||||
|
||||
item = this.addAction(_("Close"), Lang.bind(this, function(event) {
|
||||
window.delete(event.get_time());
|
||||
}));
|
||||
if (!window.can_close())
|
||||
item.setSensitive(false);
|
||||
}
|
||||
});
|
||||
|
||||
const AppMenu = new Lang.Class({
|
||||
Name: 'AppMenu',
|
||||
Extends: RemoteMenu.RemoteMenu,
|
||||
|
||||
_init: function(window, sourceActor) {
|
||||
let app = Shell.WindowTracker.get_default().get_window_app(window);
|
||||
|
||||
this.parent(sourceActor, app.menu, app.action_group);
|
||||
|
||||
this.actor.add_style_class_name('fallback-app-menu');
|
||||
let variant = window.get_gtk_theme_variant();
|
||||
if (variant)
|
||||
this.actor.add_style_class_name(variant);
|
||||
|
||||
Main.layoutManager.uiGroup.add_actor(this.actor);
|
||||
this.actor.hide();
|
||||
}
|
||||
});
|
||||
|
||||
const WindowMenuManager = new Lang.Class({
|
||||
Name: 'WindowMenuManager',
|
||||
|
||||
_init: function() {
|
||||
this._manager = new PopupMenu.PopupMenuManager({ actor: Main.layoutManager.dummyCursor });
|
||||
|
||||
this._sourceActor = new St.Widget({ reactive: true, visible: false });
|
||||
this._sourceActor.connect('button-press-event', Lang.bind(this,
|
||||
function() {
|
||||
this._manager.activeMenu.toggle();
|
||||
}));
|
||||
Main.uiGroup.add_actor(this._sourceActor);
|
||||
},
|
||||
|
||||
showWindowMenuForWindow: function(window, type, rect) {
|
||||
let menuType = (type == Meta.WindowMenuType.WM) ? WindowMenu : AppMenu;
|
||||
let menu = new menuType(window, this._sourceActor);
|
||||
|
||||
this._manager.addMenu(menu);
|
||||
|
||||
menu.connect('activate', function() {
|
||||
window.check_alive(global.get_current_time());
|
||||
});
|
||||
|
||||
this._sourceActor.set_size(rect.width, rect.height);
|
||||
this._sourceActor.set_position(rect.x, rect.y);
|
||||
this._sourceActor.show();
|
||||
|
||||
menu.open(BoxPointer.PopupAnimation.NONE);
|
||||
menu.actor.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false);
|
||||
menu.connect('open-state-changed', Lang.bind(this, function(menu_, isOpen) {
|
||||
if (isOpen)
|
||||
return;
|
||||
|
||||
this._sourceActor.hide();
|
||||
menu.destroy();
|
||||
}));
|
||||
}
|
||||
});
|
@ -8,6 +8,8 @@ const Meta = imports.gi.Meta;
|
||||
const Pango = imports.gi.Pango;
|
||||
const Shell = imports.gi.Shell;
|
||||
const St = imports.gi.St;
|
||||
const Atk = imports.gi.Atk;
|
||||
|
||||
const Signals = imports.signals;
|
||||
|
||||
const DND = imports.ui.dnd;
|
||||
@ -121,6 +123,7 @@ const WindowClone = new Lang.Class({
|
||||
// the hierarchy that is sized to only the visible portion.
|
||||
this.actor = new St.Widget({ reactive: true,
|
||||
can_focus: true,
|
||||
accessible_role: Atk.Role.PUSH_BUTTON,
|
||||
layout_manager: new WindowCloneLayout() });
|
||||
|
||||
this.actor.add_child(this._windowClone);
|
||||
@ -197,6 +200,10 @@ const WindowClone = new Lang.Class({
|
||||
this.emit('size-changed');
|
||||
},
|
||||
|
||||
hasAttachedDialogs: function() {
|
||||
return this.actor.get_n_children() > 1;
|
||||
},
|
||||
|
||||
_doAddAttachedDialog: function(metaWin, realWin) {
|
||||
let clone = new Clutter.Clone({ source: realWin });
|
||||
clone._updateId = metaWin.connect('size-changed', Lang.bind(this, function() {
|
||||
@ -424,6 +431,7 @@ const WindowOverlay = new Lang.Class({
|
||||
text: metaWindow.title });
|
||||
title.clutter_text.ellipsize = Pango.EllipsizeMode.END;
|
||||
title._spacing = 0;
|
||||
windowClone.actor.label_actor = title;
|
||||
|
||||
this._updateCaptionId = metaWindow.connect('notify::title',
|
||||
Lang.bind(this, function(w) {
|
||||
@ -578,7 +586,8 @@ const WindowOverlay = new Lang.Class({
|
||||
},
|
||||
|
||||
_windowCanClose: function() {
|
||||
return this._windowClone.metaWindow.can_close();
|
||||
return this._windowClone.metaWindow.can_close() &&
|
||||
!this._windowClone.hasAttachedDialogs();
|
||||
},
|
||||
|
||||
_onWindowAdded: function(workspace, win) {
|
||||
@ -590,11 +599,12 @@ const WindowOverlay = new Lang.Class({
|
||||
|
||||
// use an idle handler to avoid mapping problems -
|
||||
// see comment in Workspace._windowAdded
|
||||
Mainloop.idle_add(Lang.bind(this,
|
||||
function() {
|
||||
this._windowClone.emit('selected');
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
let id = Mainloop.idle_add(Lang.bind(this,
|
||||
function() {
|
||||
this._windowClone.emit('selected');
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] this._windowClone.emit');
|
||||
}
|
||||
},
|
||||
|
||||
@ -665,8 +675,10 @@ const WindowOverlay = new Lang.Class({
|
||||
},
|
||||
|
||||
_onLeave: function() {
|
||||
if (this._idleToggleCloseId == 0)
|
||||
if (this._idleToggleCloseId == 0) {
|
||||
this._idleToggleCloseId = Mainloop.timeout_add(750, Lang.bind(this, this._idleToggleCloseButton));
|
||||
GLib.Source.set_name_by_id(this._idleToggleCloseId, '[gnome-shell] this._idleToggleCloseButton');
|
||||
}
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
},
|
||||
|
||||
@ -1414,6 +1426,7 @@ const Workspace = new Lang.Class({
|
||||
this._currentLayout = null;
|
||||
this._repositionWindowsId = Mainloop.timeout_add(750,
|
||||
Lang.bind(this, this._delayedWindowRepositioning));
|
||||
GLib.Source.set_name_by_id(this._repositionWindowsId, '[gnome-shell] this._delayedWindowRepositioning');
|
||||
},
|
||||
|
||||
_doAddWindow : function(metaWin) {
|
||||
@ -1425,14 +1438,15 @@ const Workspace = new Lang.Class({
|
||||
if (!win) {
|
||||
// Newly-created windows are added to a workspace before
|
||||
// the compositor finds out about them...
|
||||
Mainloop.idle_add(Lang.bind(this,
|
||||
function () {
|
||||
if (this.actor &&
|
||||
metaWin.get_compositor_private() &&
|
||||
metaWin.get_workspace() == this.metaWorkspace)
|
||||
this._doAddWindow(metaWin);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
let id = Mainloop.idle_add(Lang.bind(this,
|
||||
function () {
|
||||
if (this.actor &&
|
||||
metaWin.get_compositor_private() &&
|
||||
metaWin.get_workspace() == this.metaWorkspace)
|
||||
this._doAddWindow(metaWin);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] this._doAddWindow');
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -52,6 +52,7 @@ const WorkspaceSwitcherPopup = new Lang.Class({
|
||||
this._globalSignals.push(global.screen.connect('workspace-removed', Lang.bind(this, this._redisplay)));
|
||||
|
||||
this._timeoutId = Mainloop.timeout_add(DISPLAY_TIMEOUT, Lang.bind(this, this._onTimeout));
|
||||
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout');
|
||||
},
|
||||
|
||||
_getPreferredHeight : function (actor, forWidth, alloc) {
|
||||
@ -145,6 +146,7 @@ const WorkspaceSwitcherPopup = new Lang.Class({
|
||||
if (this._timeoutId != 0)
|
||||
Mainloop.source_remove(this._timeoutId);
|
||||
this._timeoutId = Mainloop.timeout_add(DISPLAY_TIMEOUT, Lang.bind(this, this._onTimeout));
|
||||
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._onTimeout');
|
||||
this._show();
|
||||
},
|
||||
|
||||
|
@ -386,14 +386,15 @@ const WorkspaceThumbnail = new Lang.Class({
|
||||
if (!win) {
|
||||
// Newly-created windows are added to a workspace before
|
||||
// the compositor finds out about them...
|
||||
Mainloop.idle_add(Lang.bind(this,
|
||||
function () {
|
||||
let id = Mainloop.idle_add(Lang.bind(this,
|
||||
function () {
|
||||
if (!this._removed &&
|
||||
metaWin.get_compositor_private() &&
|
||||
metaWin.get_workspace() == this.metaWorkspace)
|
||||
this._doAddWindow(metaWin);
|
||||
return GLib.SOURCE_REMOVE;
|
||||
}));
|
||||
GLib.Source.set_name_by_id(id, '[gnome-shell] this._doAddWindow');
|
||||
return;
|
||||
}
|
||||
|
||||
@ -825,10 +826,14 @@ const ThumbnailsBox = new Lang.Class({
|
||||
window.change_workspace_by_index(window.get_workspace().index() + 1, true);
|
||||
});
|
||||
|
||||
if (isWindow)
|
||||
if (isWindow) {
|
||||
// ... and bam, a workspace, good as new.
|
||||
// Move the window to our monitor first if necessary.
|
||||
let thumbMonitor = this._thumbnails[newWorkspaceIndex].monitorIndex;
|
||||
if (source.metaWindow.get_monitor() != thumbMonitor)
|
||||
source.metaWindow.move_to_monitor(thumbMonitor);
|
||||
source.metaWindow.change_workspace_by_index(newWorkspaceIndex, true);
|
||||
else if (source.shellWorkspaceLaunch) {
|
||||
} else if (source.shellWorkspaceLaunch) {
|
||||
source.shellWorkspaceLaunch({ workspace: newWorkspaceIndex,
|
||||
timestamp: time });
|
||||
// This new workspace will be automatically removed if the application fails
|
||||
@ -902,7 +907,10 @@ const ThumbnailsBox = new Lang.Class({
|
||||
},
|
||||
|
||||
_workspacesChanged: function() {
|
||||
let oldNumWorkspaces = this._thumbnails.length;
|
||||
let validThumbnails = this._thumbnails.filter(function(t) {
|
||||
return t.state <= ThumbnailState.NORMAL;
|
||||
});
|
||||
let oldNumWorkspaces = validThumbnails.length;
|
||||
let newNumWorkspaces = global.screen.n_workspaces;
|
||||
let active = global.screen.get_active_workspace_index();
|
||||
|
||||
|
@ -33,6 +33,7 @@ id
|
||||
it
|
||||
ja
|
||||
kk
|
||||
km
|
||||
kn
|
||||
ko
|
||||
ku
|
||||
|
@ -55,6 +55,7 @@ js/ui/unlockDialog.js
|
||||
js/ui/viewSelector.js
|
||||
js/ui/windowAttentionHandler.js
|
||||
js/ui/windowManager.js
|
||||
js/ui/windowMenu.js
|
||||
src/calendar-server/evolution-calendar.desktop.in.in
|
||||
# Please do not remove this file from POTFILES.in. Run "git submodule init && git submodule update" to get it.
|
||||
src/gvc/gvc-mixer-control.c
|
||||
|
52
po/ar.po
52
po/ar.po
@ -7,9 +7,8 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: HEAD\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-21 09:54+0000\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2014-03-26 01:34+0200\n"
|
||||
"PO-Revision-Date: 2014-03-21 11:05+0100\n"
|
||||
"Last-Translator: Abderrahim Kitouni <a.kitouni@gmail.com>\n"
|
||||
"Language-Team: Arabic <doc@arabeyes.org>\n"
|
||||
@ -296,25 +295,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "ادخل"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "أغلق الجلسة"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "غير مدرج؟"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:611
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(مثلا مستخدم أو %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:616 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "اسم المستخدم: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:917
|
||||
msgid "Login Window"
|
||||
msgstr "نافذة الولوج"
|
||||
|
||||
@ -697,7 +696,6 @@ msgstr "%H:%M"
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 24h format. i.e. "Yesterday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:962
|
||||
#| msgid "Yesterday, %H\\u2236%M"
|
||||
msgid "Yesterday, %H∶%M"
|
||||
msgstr "بالأمس، %H∶%M"
|
||||
|
||||
@ -718,7 +716,6 @@ msgstr "%d %B، %H:%M"
|
||||
#. number followed by a time string in 24h format.
|
||||
#. i.e. "May 25 2012, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:982
|
||||
#| msgid "%B %d, %H∶%M"
|
||||
msgid "%B %d %Y, %H∶%M"
|
||||
msgstr "%d %B، %H:%M"
|
||||
|
||||
@ -730,14 +727,12 @@ msgstr "%l:%M %p"
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:998
|
||||
#| msgid "Yesterday, %l\\u2236%M %p"
|
||||
msgid "Yesterday, %l∶%M %p"
|
||||
msgstr "بالأمس، %l∶%M %p"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 12h format. i.e. "Monday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1005
|
||||
#| msgid "%l∶%M %p"
|
||||
msgid "%A, %l∶%M %p"
|
||||
msgstr "%l:%M %p"
|
||||
|
||||
@ -745,7 +740,6 @@ msgstr "%l:%M %p"
|
||||
#. followed by a time string in 12h format.
|
||||
#. i.e. "May 25, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1012
|
||||
#| msgid "%B %d, %H∶%M"
|
||||
msgid "%B %d, %l∶%M %p"
|
||||
msgstr "%d %B، %H:%M"
|
||||
|
||||
@ -753,7 +747,6 @@ msgstr "%d %B، %H:%M"
|
||||
#. number followed by a time string in 12h format.
|
||||
#. i.e. "May 25 2012, 2:30 pm"*/
|
||||
#: ../js/ui/components/telepathyClient.js:1018
|
||||
#| msgid "%B %d %Y, %l\\u2236%M %p"
|
||||
msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%d %B %Y، %l∶%M %p"
|
||||
|
||||
@ -985,9 +978,6 @@ msgid "Log Out"
|
||||
msgstr "خروج"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:69
|
||||
#, javascript-format
|
||||
#| msgid "%s will be logged out automatically in %d second."
|
||||
#| msgid_plural "%s will be logged out automatically in %d seconds."
|
||||
msgid "%s will be logged out automatically in %d second."
|
||||
msgid_plural "%s will be logged out automatically in %d seconds."
|
||||
msgstr[0] "سيُخرج %s تلقائيا الآن."
|
||||
@ -998,9 +988,6 @@ msgstr[4] "سيُخرج %s تلقائيا بعد %d ثانية."
|
||||
msgstr[5] "سيُخرج %s تلقائيا بعد %d ثانية."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:74
|
||||
#, javascript-format
|
||||
#| msgid "You will be logged out automatically in %d second."
|
||||
#| msgid_plural "You will be logged out automatically in %d seconds."
|
||||
msgid "You will be logged out automatically in %d second."
|
||||
msgid_plural "You will be logged out automatically in %d seconds."
|
||||
msgstr[0] "ستُخرج تلقائيا الآن."
|
||||
@ -1026,9 +1013,6 @@ msgid "Install Updates & Power Off"
|
||||
msgstr "ثبّت التحديثات ثم أطفئ"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:89
|
||||
#, javascript-format
|
||||
#| msgid "The system will power off automatically in %d second."
|
||||
#| msgid_plural "The system will power off automatically in %d seconds."
|
||||
msgid "The system will power off automatically in %d second."
|
||||
msgid_plural "The system will power off automatically in %d seconds."
|
||||
msgstr[0] "سيُطفأ النظام تلقائيا الآن."
|
||||
@ -1059,9 +1043,6 @@ msgid "Restart"
|
||||
msgstr "إعادة التشغيل"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:107
|
||||
#, javascript-format
|
||||
#| msgid "The system will restart automatically in %d second."
|
||||
#| msgid_plural "The system will restart automatically in %d seconds."
|
||||
msgid "The system will restart automatically in %d second."
|
||||
msgid_plural "The system will restart automatically in %d seconds."
|
||||
msgstr[0] "سيُعاد تشغيل النظام تلقائيا الآن."
|
||||
@ -1077,11 +1058,6 @@ msgid "Restart & Install Updates"
|
||||
msgstr "أعد التشغيل و ثبّت التحديثات"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:123
|
||||
#, 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."
|
||||
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."
|
||||
@ -1237,9 +1213,6 @@ msgid "Unknown"
|
||||
msgstr "غير معروف"
|
||||
|
||||
#: ../js/ui/overviewControls.js:483 ../js/ui/screenShield.js:151
|
||||
#, javascript-format
|
||||
#| msgid "%d new message"
|
||||
#| msgid_plural "%d new messages"
|
||||
msgid "%d new message"
|
||||
msgid_plural "%d new messages"
|
||||
msgstr[0] "لا رسائل جديدة"
|
||||
@ -1298,9 +1271,6 @@ msgid "%A, %B %d"
|
||||
msgstr "%A، %d %B"
|
||||
|
||||
#: ../js/ui/screenShield.js:153
|
||||
#, javascript-format
|
||||
#| msgid "%d new notification"
|
||||
#| msgid_plural "%d new notifications"
|
||||
msgid "%d new notification"
|
||||
msgid_plural "%d new notifications"
|
||||
msgstr[0] "لا تنبيهات جديدة"
|
||||
@ -1419,9 +1389,6 @@ msgid "Bluetooth Settings"
|
||||
msgstr "إعدادات بلوتوث"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
#| msgid "%d Connected Device"
|
||||
#| msgid_plural "%d Connected Devices"
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
msgstr[0] "لا أجهزة موصّلة"
|
||||
@ -1614,13 +1581,11 @@ msgstr "يَحسِب…"
|
||||
|
||||
#: ../js/ui/status/power.js:86
|
||||
#, javascript-format
|
||||
#| msgid "%d\\u2236%02d Remaining (%d%%)"
|
||||
msgid "%d∶%02d Remaining (%d%%)"
|
||||
msgstr "بقي %d∶%02d (%d%%)"
|
||||
|
||||
#: ../js/ui/status/power.js:91
|
||||
#, javascript-format
|
||||
#| msgid "%d\\u2236%02d Until Full (%d%%)"
|
||||
msgid "%d∶%02d Until Full (%d%%)"
|
||||
msgstr "بقي على الاكتمال %d∶%02d (%d%%)"
|
||||
|
||||
@ -1705,9 +1670,6 @@ msgid "Keep Changes"
|
||||
msgstr "أبق على التغييرات"
|
||||
|
||||
#: ../js/ui/windowManager.js:97
|
||||
#, javascript-format
|
||||
#| msgid "Settings changes will revert in %d second"
|
||||
#| msgid_plural "Settings changes will revert in %d seconds"
|
||||
msgid "Settings changes will revert in %d second"
|
||||
msgid_plural "Settings changes will revert in %d seconds"
|
||||
msgstr[0] "سيُتراجع عن التغييرات الآن"
|
||||
|
316
po/be.po
316
po/be.po
@ -5,7 +5,7 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell.master\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-02-22 08:29+0000\n"
|
||||
"POT-Creation-Date: 2014-04-30 19:59+0000\n"
|
||||
"PO-Revision-Date: 2012-10-16 12:05+0300\n"
|
||||
"Last-Translator: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>\n"
|
||||
"Language-Team: Belarusian <i18n-bel-gnome@googlegroups.com>\n"
|
||||
@ -107,8 +107,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Абалонка GNOME запусціць толькі тыя пашырэнні, аўтары якіх сцвярджаюць, што "
|
||||
"яны працуюць з бягучай версіяй абалонкі. Уключэнне гэтай настройкі выключыць "
|
||||
"гэту праверку, і для ўсіх пашырэнняў будзе ажыццёўлена спроба загрузкі незалежна ад "
|
||||
"сцвярджэнняў іх аўтараў."
|
||||
"гэту праверку, і для ўсіх пашырэнняў будзе ажыццёўлена спроба загрузкі "
|
||||
"незалежна ад сцвярджэнняў іх аўтараў."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
|
||||
msgid "List of desktop file IDs for favorite applications"
|
||||
@ -228,10 +228,17 @@ msgid ""
|
||||
"Configures the maximum level of location accuracy applications are allowed "
|
||||
"to see. Valid options are 'off' (disable location tracking), 'country', "
|
||||
"'city', 'neighborhood', 'street', and 'exact' (typically requires GPS "
|
||||
"receiver). Please keep in mind that this only controls what Geoclue will "
|
||||
"receiver). Please keep in mind that this only controls what GeoClue will "
|
||||
"allow applications to see and they can find user's location on their own "
|
||||
"using network resources (albeit with street-level accuracy at best)."
|
||||
msgstr ""
|
||||
"Настройка максімальнай дакладнасці вызначэння месцапалажэння, даступнай праграмам. "
|
||||
"Магчымыя значэнні: \"off\" (выключыць вызначэнне месцапалажэння), \"country\" (краіна), "
|
||||
"\"city\" (горад), \"neighborhood\" (раён), \"street\" (вуліца) і \"exact\" (дэталёва, "
|
||||
"звычайна патрабуе GPS-прыёмнік). Увага: гэта настройка вызначае толькі тое, што "
|
||||
"даступна праграмам з дапамогай службы GeoClue, але яны могуць самастойна вызначаць "
|
||||
"месцапалажэнне з дапамогай спецыяльных сеціўных рэсурсаў (праўда, максімальная дакладнасць "
|
||||
"такіх рэсурсаў - назва вуліцы)."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
|
||||
msgid "The application icon mode."
|
||||
@ -288,7 +295,8 @@ msgstr ""
|
||||
#: ../js/extensionPrefs/main.js:127
|
||||
#, javascript-format
|
||||
msgid "There was an error loading the preferences dialog for %s:"
|
||||
msgstr "Падчас спробы загрузкі дыялогавага акенца настроек для %s адбылася памылка:"
|
||||
msgstr ""
|
||||
"Падчас спробы загрузкі дыялогавага акенца настроек для %s адбылася памылка:"
|
||||
|
||||
#: ../js/extensionPrefs/main.js:167
|
||||
msgid "Extension"
|
||||
@ -303,7 +311,7 @@ msgstr ""
|
||||
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:136
|
||||
#: ../js/ui/components/polkitAgent.js:166 ../js/ui/endSessionDialog.js:429
|
||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||
#: ../js/ui/status/network.js:883
|
||||
#: ../js/ui/status/network.js:878
|
||||
msgid "Cancel"
|
||||
msgstr "Скасаваць"
|
||||
|
||||
@ -321,25 +329,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Увайсці"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Выбар сеанса"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Няма ў спісе?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:598
|
||||
#: ../js/gdm/loginDialog.js:614
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(напр., карыстальнік ці %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:603 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Імя карыстальніка: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:868
|
||||
#: ../js/gdm/loginDialog.js:920
|
||||
msgid "Login Window"
|
||||
msgstr "Акно ўваходу"
|
||||
|
||||
@ -364,27 +372,27 @@ msgstr "Не ўдалося разабраць загад:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Не ўдалося выканаць \"%s\":"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Тут размешчаныя часта ўжываныя праграмы"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Часта"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Усе"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1552
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Новае акно"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1574 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Выдаліць са спіса ўпадабанага"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1580
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Дадаць у спіс упадабанага"
|
||||
|
||||
@ -527,44 +535,44 @@ msgstr "Сб"
|
||||
msgid "calendar:MY"
|
||||
msgstr "calendar:MY"
|
||||
|
||||
#: ../js/ui/calendar.js:446
|
||||
#: ../js/ui/calendar.js:450
|
||||
msgid "Previous month"
|
||||
msgstr "Папярэдні месяц"
|
||||
|
||||
#: ../js/ui/calendar.js:456
|
||||
#: ../js/ui/calendar.js:460
|
||||
msgid "Next month"
|
||||
msgstr "Наступны месяц"
|
||||
|
||||
#. Translators: Text to show if there are no events */
|
||||
#: ../js/ui/calendar.js:762
|
||||
#: ../js/ui/calendar.js:772
|
||||
msgid "Nothing Scheduled"
|
||||
msgstr "Нічога не прымеркавана"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||
#: ../js/ui/calendar.js:780
|
||||
#: ../js/ui/calendar.js:790
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A, %d %B"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||
#: ../js/ui/calendar.js:783
|
||||
#: ../js/ui/calendar.js:793
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%A, %d %B, %Y"
|
||||
|
||||
#: ../js/ui/calendar.js:794
|
||||
#: ../js/ui/calendar.js:804
|
||||
msgid "Today"
|
||||
msgstr "Сёння"
|
||||
|
||||
#: ../js/ui/calendar.js:798
|
||||
#: ../js/ui/calendar.js:808
|
||||
msgid "Tomorrow"
|
||||
msgstr "Заўтра"
|
||||
|
||||
#: ../js/ui/calendar.js:809
|
||||
#: ../js/ui/calendar.js:819
|
||||
msgid "This week"
|
||||
msgstr "На гэтым тыдні"
|
||||
|
||||
#: ../js/ui/calendar.js:817
|
||||
#: ../js/ui/calendar.js:827
|
||||
msgid "Next week"
|
||||
msgstr "На наступным тыдні"
|
||||
|
||||
@ -597,8 +605,8 @@ msgstr "Пароль:"
|
||||
msgid "Type again:"
|
||||
msgstr "Паўтарыце пароль:"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:250
|
||||
#: ../js/ui/status/network.js:327 ../js/ui/status/network.js:886
|
||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:240
|
||||
#: ../js/ui/status/network.js:322 ../js/ui/status/network.js:881
|
||||
msgid "Connect"
|
||||
msgstr "Злучыць"
|
||||
|
||||
@ -805,13 +813,13 @@ msgstr "Удзельнік %s запрашае вас далучыцца да %s
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1291
|
||||
msgid "Decline"
|
||||
msgstr "Адмовіцца"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1296
|
||||
msgid "Accept"
|
||||
msgstr "Прыняць"
|
||||
|
||||
@ -848,97 +856,97 @@ msgstr "%s пасылае вам %s"
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s просіць дазволу на прагляд вашага сеткавага стану"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1342
|
||||
msgid "Network error"
|
||||
msgstr "Сеткавая памылка"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1344
|
||||
msgid "Authentication failed"
|
||||
msgstr "Няўдалая ідэнтыфікацыя"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Encryption error"
|
||||
msgstr "Памылка шыфравання"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Сертыфікат не пададзены"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "Сертыфікат не заслугоўвае даверу"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate expired"
|
||||
msgstr "Сертыфікат састарэў"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate not activated"
|
||||
msgstr "Сертыфікат не актывізаваны"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "Назва камп'ютара ў сертыфікаце не адпавядае патрэбнай"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "Адбітак сертыфіката не адпавядае патрэбнаму"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "Сертыфікат уласнаручна падпісаны"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Уключаны рэжым па-за сеткай"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Encryption is not available"
|
||||
msgstr "Шыфраванне недаступнае"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "Хібны сертыфікат"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Connection has been refused"
|
||||
msgstr "Адмоўлена ў злучэнні"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Connection can't be established"
|
||||
msgstr "Не ўдалося ўсталяваць злучэнне"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been lost"
|
||||
msgstr "Злучэнне страчана"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "Гэты конт ужо злучаны з серверам"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr "Злучэнне заменена новым для таго ж самага рэсурсу"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "Такі конт ужо існуе на серверы"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "Сервер надта заняты і не можа абслужыць гэта злучэнне"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "Сертыфікат быў адкліканы"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr "Для сертыфіката выкарыстаны слабы або небяспечны алгарытм шыфравання"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -946,22 +954,22 @@ msgstr ""
|
||||
"Даўжыня сертыфіката сервера або глыбіня яго ланцуга перавышае абмежаванне, "
|
||||
"выстаўленае крыптаграфічнай бібліятэкай"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid "Internal error"
|
||||
msgstr "Унутраная памылка"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1398
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "Не ўдалося злучыцца з %s"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1403
|
||||
msgid "View account"
|
||||
msgstr "Праглядзець конт"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1434
|
||||
#: ../js/ui/components/telepathyClient.js:1440
|
||||
msgid "Unknown reason"
|
||||
msgstr "Невядомая прычына"
|
||||
|
||||
@ -977,22 +985,22 @@ msgstr "Паказаць праграмы"
|
||||
msgid "Dash"
|
||||
msgstr "Прыборная дошка"
|
||||
|
||||
#: ../js/ui/dateMenu.js:86
|
||||
#: ../js/ui/dateMenu.js:91
|
||||
msgid "Open Calendar"
|
||||
msgstr "Адкрыць каляндар"
|
||||
|
||||
#: ../js/ui/dateMenu.js:90
|
||||
#: ../js/ui/dateMenu.js:95
|
||||
msgid "Open Clocks"
|
||||
msgstr "Адкрыць гадзіннікі"
|
||||
|
||||
#: ../js/ui/dateMenu.js:97
|
||||
#: ../js/ui/dateMenu.js:102
|
||||
msgid "Date & Time Settings"
|
||||
msgstr "Настройкі даты і часу"
|
||||
|
||||
#. Translators: This is the date format to use when the calendar popup is
|
||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||
#. */
|
||||
#: ../js/ui/dateMenu.js:187
|
||||
#: ../js/ui/dateMenu.js:192
|
||||
msgid "%A %B %e, %Y"
|
||||
msgstr "%A, %e %B, %Y"
|
||||
|
||||
@ -1108,7 +1116,9 @@ msgstr "Выключыць камп'ютар пасля ўсталявання
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:315
|
||||
msgid "Running on battery power: please plug in before installing updates."
|
||||
msgstr "Камп'ютар сілкуецца ад акумулятара: падлучыце да знешняй крыніцы энергіі перад усталяваннем абновак."
|
||||
msgstr ""
|
||||
"Камп'ютар сілкуецца ад акумулятара: падлучыце да знешняй крыніцы энергіі "
|
||||
"перад усталяваннем абновак."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:332
|
||||
msgid "Some applications are busy or have unsaved work."
|
||||
@ -1143,25 +1153,26 @@ msgstr "Сцягнуць і ўсталяваць \"%s\" з extensions.gnome.org?
|
||||
msgid "Keyboard"
|
||||
msgstr "Клавіятура"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:641
|
||||
#: ../js/ui/lookingGlass.js:643
|
||||
msgid "No extensions installed"
|
||||
msgstr "Няма ўсталяваных пашырэнняў"
|
||||
|
||||
#. Translators: argument is an extension UUID. */
|
||||
#: ../js/ui/lookingGlass.js:695
|
||||
#: ../js/ui/lookingGlass.js:697
|
||||
#, javascript-format
|
||||
msgid "%s has not emitted any errors."
|
||||
msgstr "%s не зрабіў ніякіх памылак."
|
||||
|
||||
#: ../js/ui/lookingGlass.js:701
|
||||
#: ../js/ui/lookingGlass.js:703
|
||||
msgid "Hide Errors"
|
||||
msgstr "Хаваць памылкі"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:705 ../js/ui/lookingGlass.js:765
|
||||
#: ../js/ui/lookingGlass.js:707 ../js/ui/lookingGlass.js:767
|
||||
msgid "Show Errors"
|
||||
msgstr "Паказваць памылкі"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:714
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Уключана"
|
||||
|
||||
@ -1169,64 +1180,64 @@ msgstr "Уключана"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:717 ../js/ui/status/network.js:560
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Выключана"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:719
|
||||
#: ../js/ui/lookingGlass.js:721
|
||||
msgid "Error"
|
||||
msgstr "Памылка"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:721
|
||||
#: ../js/ui/lookingGlass.js:723
|
||||
msgid "Out of date"
|
||||
msgstr "Састарэла"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:723
|
||||
#: ../js/ui/lookingGlass.js:725
|
||||
msgid "Downloading"
|
||||
msgstr "Сцягванне"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:747
|
||||
#: ../js/ui/lookingGlass.js:749
|
||||
msgid "View Source"
|
||||
msgstr "Паглядзець выточны код"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:756
|
||||
#: ../js/ui/lookingGlass.js:758
|
||||
msgid "Web Page"
|
||||
msgstr "Сеціўная старонка"
|
||||
|
||||
#: ../js/ui/messageTray.js:1324
|
||||
#: ../js/ui/messageTray.js:1326
|
||||
msgid "Open"
|
||||
msgstr "Адкрыць"
|
||||
|
||||
#: ../js/ui/messageTray.js:1331
|
||||
#: ../js/ui/messageTray.js:1333
|
||||
msgid "Remove"
|
||||
msgstr "Выдаліць"
|
||||
|
||||
#: ../js/ui/messageTray.js:1628
|
||||
#: ../js/ui/messageTray.js:1630
|
||||
msgid "Notifications"
|
||||
msgstr "Апавяшчэнні"
|
||||
|
||||
#: ../js/ui/messageTray.js:1635
|
||||
#: ../js/ui/messageTray.js:1637
|
||||
msgid "Clear Messages"
|
||||
msgstr "Ачысціць спіс апавяшчэнняў"
|
||||
|
||||
#: ../js/ui/messageTray.js:1654
|
||||
#: ../js/ui/messageTray.js:1656
|
||||
msgid "Notification Settings"
|
||||
msgstr "Настройкі апавяшчэння"
|
||||
|
||||
#: ../js/ui/messageTray.js:1707
|
||||
#: ../js/ui/messageTray.js:1709
|
||||
msgid "Tray Menu"
|
||||
msgstr "Меню трэя"
|
||||
|
||||
#: ../js/ui/messageTray.js:1924
|
||||
#: ../js/ui/messageTray.js:1926
|
||||
msgid "No Messages"
|
||||
msgstr "Апавяшчэнні адсутнічаюць"
|
||||
|
||||
#: ../js/ui/messageTray.js:1962
|
||||
#: ../js/ui/messageTray.js:1964
|
||||
msgid "Message Tray"
|
||||
msgstr "Абшар апавяшчэнняў"
|
||||
|
||||
#: ../js/ui/messageTray.js:2946
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
msgid "System Information"
|
||||
msgstr "Сістэмная інфармацыя"
|
||||
|
||||
@ -1243,11 +1254,11 @@ msgstr[0] "%d новае паведамленне"
|
||||
msgstr[1] "%d новыя паведамленні"
|
||||
msgstr[2] "%d новых паведамленняў"
|
||||
|
||||
#: ../js/ui/overview.js:83
|
||||
#: ../js/ui/overview.js:84
|
||||
msgid "Undo"
|
||||
msgstr "Адрабіць"
|
||||
|
||||
#: ../js/ui/overview.js:123
|
||||
#: ../js/ui/overview.js:124
|
||||
msgid "Overview"
|
||||
msgstr "Агляд"
|
||||
|
||||
@ -1255,7 +1266,7 @@ msgstr "Агляд"
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters. */
|
||||
#: ../js/ui/overview.js:257
|
||||
#: ../js/ui/overview.js:250
|
||||
msgid "Type to search…"
|
||||
msgstr "Увядзіце тэкст для пошуку..."
|
||||
|
||||
@ -1299,27 +1310,27 @@ msgstr[0] "%d новае апавяшчэнне"
|
||||
msgstr[1] "%d новыя апавяшчэнні"
|
||||
msgstr[2] "%d новых апавяшчэнняў"
|
||||
|
||||
#: ../js/ui/screenShield.js:473 ../js/ui/status/system.js:342
|
||||
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:342
|
||||
msgid "Lock"
|
||||
msgstr "Заблакіраваць"
|
||||
|
||||
#: ../js/ui/screenShield.js:707
|
||||
#: ../js/ui/screenShield.js:708
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "GNOME патрабуе блакіравання экрана"
|
||||
|
||||
#: ../js/ui/screenShield.js:834 ../js/ui/screenShield.js:1301
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
|
||||
msgid "Unable to lock"
|
||||
msgstr "Не ўдалося заблакіраваць"
|
||||
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1302
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "Блакіраванне стрымана праграмай"
|
||||
|
||||
#: ../js/ui/search.js:589
|
||||
#: ../js/ui/search.js:603
|
||||
msgid "Searching…"
|
||||
msgstr "Пошук..."
|
||||
|
||||
#: ../js/ui/search.js:632
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Нічога не знойдзена."
|
||||
|
||||
@ -1391,23 +1402,22 @@ msgstr "Высокая кантраснасць"
|
||||
msgid "Large Text"
|
||||
msgstr "Буйны тэкст"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:62
|
||||
#: ../js/ui/status/location.js:162 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:328 ../js/ui/status/network.js:1235
|
||||
#: ../js/ui/status/network.js:1346 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:86
|
||||
#: ../js/ui/status/rfkill.js:114
|
||||
msgid "Turn Off"
|
||||
msgstr "Выключыць"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Настройкі Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:100
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
@ -1415,7 +1425,7 @@ msgstr[0] "%d злучанае прыстасаванне"
|
||||
msgstr[1] "%d злучаныя прыстасаванні"
|
||||
msgstr[2] "%d злучаных прыстасаванняў"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:102 ../js/ui/status/network.js:1263
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "Няма злучэння"
|
||||
|
||||
@ -1427,156 +1437,167 @@ msgstr "Яркасць"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Паказаць клавіятурную раскладку"
|
||||
|
||||
#: ../js/ui/status/location.js:52
|
||||
#: ../js/ui/status/location.js:53
|
||||
msgid "Location"
|
||||
msgstr "Месцапалажэнне"
|
||||
|
||||
#: ../js/ui/status/location.js:61 ../js/ui/status/location.js:161
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Укл."
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
msgid "Disable"
|
||||
msgstr "Выключыць"
|
||||
|
||||
#: ../js/ui/status/location.js:158 ../js/ui/status/network.js:246
|
||||
#: ../js/ui/status/network.js:425 ../js/ui/status/network.js:1261
|
||||
msgid "Off"
|
||||
msgstr "Выключана"
|
||||
|
||||
#: ../js/ui/status/location.js:159 ../js/ui/status/network.js:1235
|
||||
msgid "Turn On"
|
||||
#: ../js/ui/status/location.js:165
|
||||
msgid "Enable"
|
||||
msgstr "Уключыць"
|
||||
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "Ужыта"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<невядома>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Выключана"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
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:431
|
||||
#: ../js/ui/status/network.js:426
|
||||
msgid "unmanaged"
|
||||
msgstr "непадкантрольна"
|
||||
|
||||
#: ../js/ui/status/network.js:433
|
||||
#: ../js/ui/status/network.js:428
|
||||
msgid "disconnecting..."
|
||||
msgstr "адлучэнне..."
|
||||
|
||||
#: ../js/ui/status/network.js:439 ../js/ui/status/network.js:1363
|
||||
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
|
||||
msgid "connecting..."
|
||||
msgstr "усталяванне злучэння..."
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password */
|
||||
#: ../js/ui/status/network.js:442 ../js/ui/status/network.js:1366
|
||||
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
|
||||
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:450
|
||||
#: ../js/ui/status/network.js:445
|
||||
msgid "firmware missing"
|
||||
msgstr "няма апаратнага апраграмавання"
|
||||
|
||||
#. Translators: this is for a network device that cannot be activated (for example it
|
||||
#. is disabled by rfkill, or it has no coverage */
|
||||
#: ../js/ui/status/network.js:454
|
||||
#: ../js/ui/status/network.js:449
|
||||
msgid "unavailable"
|
||||
msgstr "недаступна"
|
||||
|
||||
#: ../js/ui/status/network.js:456 ../js/ui/status/network.js:1368
|
||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
|
||||
msgid "connection failed"
|
||||
msgstr "не ўдалося злучыцца"
|
||||
|
||||
#: ../js/ui/status/network.js:472
|
||||
#: ../js/ui/status/network.js:467
|
||||
msgid "Wired Settings"
|
||||
msgstr "Настройкі праваднога злучэння"
|
||||
|
||||
#: ../js/ui/status/network.js:514 ../js/ui/status/network.js:592
|
||||
#: ../js/ui/status/network.js:509 ../js/ui/status/network.js:587
|
||||
msgid "Mobile Broadband Settings"
|
||||
msgstr "Настройкі мабільнага злучэння"
|
||||
|
||||
#: ../js/ui/status/network.js:556 ../js/ui/status/network.js:1259
|
||||
#: ../js/ui/status/network.js:551 ../js/ui/status/network.js:1258
|
||||
msgid "Hardware Disabled"
|
||||
msgstr "Прыстасаванне выключана"
|
||||
|
||||
#: ../js/ui/status/network.js:600
|
||||
#: ../js/ui/status/network.js:595
|
||||
msgid "Use as Internet connection"
|
||||
msgstr "Ужыць для злучэння з Інтэрнэтам"
|
||||
|
||||
#: ../js/ui/status/network.js:781
|
||||
#: ../js/ui/status/network.js:776
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "Рэжым самалёта ўключаны"
|
||||
|
||||
#: ../js/ui/status/network.js:782
|
||||
#: ../js/ui/status/network.js:777
|
||||
msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr "У рэжыме самалёта выключаецца Wi-Fi."
|
||||
|
||||
#: ../js/ui/status/network.js:783
|
||||
#: ../js/ui/status/network.js:778
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "Выключыць рэжым самалёта"
|
||||
|
||||
#: ../js/ui/status/network.js:792
|
||||
#: ../js/ui/status/network.js:787
|
||||
msgid "Wi-Fi is Off"
|
||||
msgstr "Wi-Fi выключаны"
|
||||
|
||||
#: ../js/ui/status/network.js:793
|
||||
#: ../js/ui/status/network.js:788
|
||||
msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr "Каб злучыцца з сеткай, спачатку трэба ўключыць Wi-Fi."
|
||||
|
||||
#: ../js/ui/status/network.js:794
|
||||
#: ../js/ui/status/network.js:789
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "Уключыць Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:819
|
||||
#: ../js/ui/status/network.js:814
|
||||
msgid "Wi-Fi Networks"
|
||||
msgstr "Сеткі Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:821
|
||||
#: ../js/ui/status/network.js:816
|
||||
msgid "Select a network"
|
||||
msgstr "Выберыце сетку"
|
||||
|
||||
#: ../js/ui/status/network.js:850
|
||||
#: ../js/ui/status/network.js:845
|
||||
msgid "No Networks"
|
||||
msgstr "Няма сетак"
|
||||
|
||||
#: ../js/ui/status/network.js:871 ../js/ui/status/rfkill.js:103
|
||||
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:112
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr "Задзейнічаць апаратны выключальнік"
|
||||
|
||||
#: ../js/ui/status/network.js:1141
|
||||
#: ../js/ui/status/network.js:1136
|
||||
msgid "Select Network"
|
||||
msgstr "Выбраць сетку"
|
||||
|
||||
#: ../js/ui/status/network.js:1147
|
||||
#: ../js/ui/status/network.js:1142
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Настройкі Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:1252
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Уключыць"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Хотспот уключаны"
|
||||
|
||||
#: ../js/ui/status/network.js:1255
|
||||
#: ../js/ui/status/network.js:1254
|
||||
msgid "Connecting"
|
||||
msgstr "Злучэнне"
|
||||
|
||||
#: ../js/ui/status/network.js:1434 ../js/ui/status/rfkill.js:88
|
||||
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:89
|
||||
msgid "Network Settings"
|
||||
msgstr "Сеткавыя настройкі"
|
||||
|
||||
#: ../js/ui/status/network.js:1436
|
||||
#: ../js/ui/status/network.js:1435
|
||||
msgid "VPN Settings"
|
||||
msgstr "Настройкі VPN"
|
||||
|
||||
#: ../js/ui/status/network.js:1455
|
||||
#: ../js/ui/status/network.js:1454
|
||||
msgid "VPN"
|
||||
msgstr "VPN"
|
||||
|
||||
#: ../js/ui/status/network.js:1598
|
||||
#: ../js/ui/status/network.js:1607
|
||||
msgid "Network Manager"
|
||||
msgstr "Сеткавы кіраўнік"
|
||||
|
||||
#: ../js/ui/status/network.js:1637
|
||||
#: ../js/ui/status/network.js:1646
|
||||
msgid "Connection failed"
|
||||
msgstr "Не ўдалося злучыцца"
|
||||
|
||||
#: ../js/ui/status/network.js:1638
|
||||
#: ../js/ui/status/network.js:1647
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Не ўдалося ўключыць сеткавае злучэнне"
|
||||
|
||||
@ -1610,10 +1631,14 @@ msgstr "UPS"
|
||||
msgid "Battery"
|
||||
msgstr "Батарэя"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:82
|
||||
#: ../js/ui/status/rfkill.js:83
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Рэжым самалёта"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:85
|
||||
msgid "On"
|
||||
msgstr "Укл."
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Перамяніць карыстальніка"
|
||||
@ -1750,4 +1775,3 @@ msgstr "Пароль не можа быць пустым"
|
||||
#: ../src/shell-polkit-authentication-agent.c:343
|
||||
msgid "Authentication dialog was dismissed by the user"
|
||||
msgstr "Карыстальнік праігнараваў дыялогавае акенца ідэнтыфікацыі"
|
||||
|
||||
|
1062
po/ca@valencia.po
1062
po/ca@valencia.po
File diff suppressed because it is too large
Load Diff
145
po/de.po
145
po/de.po
@ -20,9 +20,9 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell master\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-13 13:12+0000\n"
|
||||
"PO-Revision-Date: 2014-03-09 03:26+0100\n"
|
||||
"Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
|
||||
"POT-Creation-Date: 2014-03-28 20:56+0000\n"
|
||||
"PO-Revision-Date: 2014-03-29 08:34+0100\n"
|
||||
"Last-Translator: Benjamin Steinwender <b@stbe.at>\n"
|
||||
"Language-Team: Deutsch <gnome-de@gnome.org>\n"
|
||||
"Language: de_DE\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@ -348,25 +348,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Anmelden"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Sitzung wählen"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Nicht aufgeführt?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:614
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(z.B. Benutzer oder %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Benutzername:"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:920
|
||||
msgid "Login Window"
|
||||
msgstr "Anmeldefenster"
|
||||
|
||||
@ -391,27 +391,27 @@ msgstr "Befehl konnte nicht verarbeitet werden:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Ausführung von »%s« ist gescheitert:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Häufig genutzte Anwendungen werden hier erscheinen"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Häufig"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Alle"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1552
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Neues Fenster"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1574 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Aus Favoriten entfernen"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1580
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Zu Favoriten hinzufügen"
|
||||
|
||||
@ -831,13 +831,13 @@ msgstr "%s lädt Sie ein, %s beizutreten"
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1291
|
||||
msgid "Decline"
|
||||
msgstr "Ablehnen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1296
|
||||
msgid "Accept"
|
||||
msgstr "Annehmen"
|
||||
|
||||
@ -874,102 +874,102 @@ msgstr "%s sendet Ihnen %s"
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s bittet um das Recht, Ihre Online-Verfügbarkeit sehen zu dürfen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1342
|
||||
msgid "Network error"
|
||||
msgstr "Netzwerkfehler"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1344
|
||||
msgid "Authentication failed"
|
||||
msgstr "Legitimierung fehlgeschlagen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Encryption error"
|
||||
msgstr "Verschlüsselungsfehler"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Zertifikat wurde nicht bereitgestellt"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "Zertifikat nicht vertrauenswürdig"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate expired"
|
||||
msgstr "Zertifikat abgelaufen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate not activated"
|
||||
msgstr "Zertifikat nicht aktiviert"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "Rechnername des Zertifikats stimmt nicht überein"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "Fingerabdruck des Zertifikats stimmt nicht überein"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "Selbstsigniertes Zertifikat"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Der Status ist auf »Abgemeldet« gesetzt"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Encryption is not available"
|
||||
msgstr "Verschlüsselung ist nicht verfügbar"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "Zertifikat ist ungültig"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Connection has been refused"
|
||||
msgstr "Verbindungsaufbau wurde verweigert"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Connection can't be established"
|
||||
msgstr "Verbindung kann nicht hergestellt werden"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been lost"
|
||||
msgstr "Verbindung wurde unterbrochen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "Dieses Konto ist bereits mit dem Server verbunden"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr ""
|
||||
"Die Verbindung wurde durch eine neue Verbindung mit der gleichen Ressource "
|
||||
"ersetzt"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "Dieses Konto ist bereits auf dem Server vorhanden"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr ""
|
||||
"Der Server ist derzeit überlastet und kann die Verbindung nicht annehmen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "Zertifikat wurde zurückgezogen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr ""
|
||||
"Das Zertifikat verwendet einen unsicheren Chiffrier-Algorithmus oder ist "
|
||||
"kryptografisch schwach"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -978,22 +978,22 @@ msgstr ""
|
||||
"überschreiten die durch die kryptografische Bibliothek gegebenen "
|
||||
"Beschränkungen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid "Internal error"
|
||||
msgstr "Interner Fehler"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1398
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "Verbindung zu %s fehlgeschlagen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1403
|
||||
msgid "View account"
|
||||
msgstr "Konto anzeigen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1439
|
||||
#: ../js/ui/components/telepathyClient.js:1440
|
||||
msgid "Unknown reason"
|
||||
msgstr "Unbekannter Grund"
|
||||
|
||||
@ -1191,7 +1191,8 @@ msgstr "Fehler verbergen"
|
||||
msgid "Show Errors"
|
||||
msgstr "Fehler anzeigen"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Aktiviert"
|
||||
|
||||
@ -1199,8 +1200,8 @@ msgstr "Aktiviert"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Deaktiviert"
|
||||
|
||||
@ -1256,7 +1257,7 @@ msgstr "Keine Nachrichten"
|
||||
msgid "Message Tray"
|
||||
msgstr "Benachrichtigungsfeld"
|
||||
|
||||
#: ../js/ui/messageTray.js:2957
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
msgid "System Information"
|
||||
msgstr "Systeminformationen"
|
||||
|
||||
@ -1350,7 +1351,7 @@ msgstr "Sperrung wurde von einer Anwendung blockiert"
|
||||
msgid "Searching…"
|
||||
msgstr "Suche läuft …"
|
||||
|
||||
#: ../js/ui/search.js:646
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Keine Ergebnisse."
|
||||
|
||||
@ -1422,30 +1423,29 @@ msgstr "Hoher Kontrast"
|
||||
msgid "Large Text"
|
||||
msgstr "Große Schrift"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:159 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
msgid "Turn Off"
|
||||
msgstr "Ausschalten"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Bluetooth-Einstellungen"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:100
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
msgstr[0] "%d Verbundes Gerät"
|
||||
msgstr[1] "%d Verbundene Geräte"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:102 ../js/ui/status/network.js:1262
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "Nicht verbunden"
|
||||
|
||||
@ -1457,28 +1457,33 @@ msgstr "Helligkeit"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Tastaturbelegung anzeigen"
|
||||
|
||||
#: ../js/ui/status/location.js:52
|
||||
#: ../js/ui/status/location.js:53
|
||||
msgid "Location"
|
||||
msgstr "Ort"
|
||||
|
||||
#: ../js/ui/status/location.js:58 ../js/ui/status/location.js:158
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "An"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
#| msgid "Disabled"
|
||||
msgid "Disable"
|
||||
msgstr "Deaktivieren"
|
||||
|
||||
#: ../js/ui/status/location.js:155 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Aus"
|
||||
#: ../js/ui/status/location.js:165
|
||||
#| msgid "Enabled"
|
||||
msgid "Enable"
|
||||
msgstr "Aktivieren"
|
||||
|
||||
#: ../js/ui/status/location.js:156 ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Einschalten"
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "In Verwendung"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<Unbekannt>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Aus"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
msgstr "Verbunden"
|
||||
@ -1585,6 +1590,10 @@ msgstr "Wählen Sie ein Netzwerk aus"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Drahtlos-Einstellungen"
|
||||
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Einschalten"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Hotspot aktiv"
|
||||
@ -1651,6 +1660,10 @@ msgstr "Akku"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Flugzeugmodus"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "An"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Benutzer wechseln"
|
||||
|
143
po/el.po
143
po/el.po
@ -7,8 +7,8 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell.po.master\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-16 18:36+0000\n"
|
||||
"PO-Revision-Date: 2014-03-16 21:04+0300\n"
|
||||
"POT-Creation-Date: 2014-03-27 21:19+0000\n"
|
||||
"PO-Revision-Date: 2014-03-28 08:41+0300\n"
|
||||
"Last-Translator: Dimitris Spingos (Δημήτρης Σπίγγος) <dmtrs32@gmail.com>\n"
|
||||
"Language-Team: team@lists.gnome.gr\n"
|
||||
"Language: el\n"
|
||||
@ -47,7 +47,7 @@ msgstr "Άνοιγμα του μενού εφαρμογών"
|
||||
|
||||
#: ../data/gnome-shell.desktop.in.in.h:1
|
||||
msgid "GNOME Shell"
|
||||
msgstr "GNOME Shell"
|
||||
msgstr "Κέλυφος GNOME Shell"
|
||||
|
||||
#: ../data/gnome-shell.desktop.in.in.h:2
|
||||
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
|
||||
@ -57,21 +57,21 @@ msgstr "Διαχείριση παραθύρων και εκκίνηση εφαρ
|
||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||
#: ../js/extensionPrefs/main.js:155
|
||||
msgid "GNOME Shell Extension Preferences"
|
||||
msgstr "Προτιμήσεις επεκτάσεων του GNOME Shell"
|
||||
msgstr "Προτιμήσεις επεκτάσεων του κελύφους GNOME Shell"
|
||||
|
||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:2
|
||||
msgid "Configure GNOME Shell Extensions"
|
||||
msgstr "Ρύθμιση επεκτάσεων του GNOME Shell"
|
||||
msgstr "Ρύθμιση επεκτάσεων του κελύφους GNOME Shell"
|
||||
|
||||
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
|
||||
msgid "GNOME Shell (wayland compositor)"
|
||||
msgstr "GNOME Shell (συνθετητής wayland)"
|
||||
msgstr "Κέλυφος GNOME Shell (συνθετητής wayland)"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
|
||||
msgid "Enable internal tools useful for developers and testers from Alt-F2"
|
||||
msgstr ""
|
||||
"Ενεργοποίηση εσωτερικών εργαλείων χρήσιμων για τους προγραμματιστές και τους "
|
||||
"δοκιμαστές με το Alt-F2"
|
||||
"δοκιμαστές, με το Alt-F2"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:2
|
||||
msgid ""
|
||||
@ -79,7 +79,7 @@ msgid ""
|
||||
"dialog."
|
||||
msgstr ""
|
||||
"Επιτρέπει την πρόσβαση σε εσωτερικά εργαλεία αποσφαλμάτωσης και "
|
||||
"παρακολούθησης με τη χρήση του διαλόγου Alt-F2."
|
||||
"παρακολούθησης, με τη χρήση του διαλόγου Alt-F2."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
|
||||
msgid "UUIDs of extensions to enable"
|
||||
@ -92,10 +92,10 @@ msgid ""
|
||||
"list. You can also manipulate this list with the EnableExtension and "
|
||||
"DisableExtension D-Bus methods on org.gnome.Shell."
|
||||
msgstr ""
|
||||
"Η επεκτάσεις του κελύφους GNOME έχουν μια ιδιότητα UUID· αυτό το κλειδί "
|
||||
"Οι επεκτάσεις του κελύφους GNOME έχουν μια ιδιότητα UUID. Αυτό το κλειδί "
|
||||
"εμφανίζει τις επεκτάσεις που πρέπει να φορτωθούν. Οποιαδήποτε επέκταση που "
|
||||
"επιθυμεί να φορτωθεί πρέπει να είναι στον κατάλογο. Μπορείτε ακόμη να "
|
||||
"χειριστείτε αυτόν τον κατάλογο με τις μεθόδους διαύλου δεδομένων "
|
||||
"χειρισθείτε αυτόν τον κατάλογο με τις μεθόδους διαύλου δεδομένων "
|
||||
"EnableExtension and DisableExtension στο org.gnome.Shell."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
|
||||
@ -152,7 +152,7 @@ msgid ""
|
||||
"Whether to remember password for mounting encrypted or remote filesystems"
|
||||
msgstr ""
|
||||
"Εάν θα θυμάται τον κωδικό πρόσβασης για προσάρτηση κρυπτογραφημένων ή "
|
||||
"απομακρυσμένων συστημάτων αρχείων"
|
||||
"απομεμακρυσμένων συστημάτων αρχείων"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
|
||||
msgid ""
|
||||
@ -161,9 +161,9 @@ msgid ""
|
||||
"'Remember Password' checkbox will be present. This key sets the default "
|
||||
"state of the checkbox."
|
||||
msgstr ""
|
||||
"Το κέλυφος θα ζητήσει έναν κωδικό όταν μια κρυπτογραφημένη συσκευή ή ένα "
|
||||
"απομακρυσμένο σύστημα αρχείων προσαρτάται. Εάν ο κωδικός μπορεί να "
|
||||
"αποθηκευτεί για μελλοντική χρήση θα παρουσιάζεται ένα πλαίσιο ελέγχου 'Να "
|
||||
"Το κέλυφος θα ζητήσει έναν κωδικό όταν προσαρτάται μια κρυπτογραφημένη "
|
||||
"συσκευή ή ένα απομεμακρυσμένο σύστημα αρχείων. Εάν ο κωδικός μπορεί να "
|
||||
"αποθηκευθεί για μελλοντική χρήση, θα παρουσιάζεται ένα πλαίσιο ελέγχου 'Να "
|
||||
"μην απαιτείται ο κωδικός πρόσβασης'. Αυτό το κλειδί ορίζει την προεπιλεγμένη "
|
||||
"κατάσταση του πλαισίου ελέγχου."
|
||||
|
||||
@ -174,7 +174,7 @@ msgstr "Εμφάνιση του αριθμού εβδομάδας στο ημε
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
|
||||
msgid "If true, display the ISO week date in the calendar."
|
||||
msgstr ""
|
||||
"Αν αληθές, εμφανίζει τον αριθμό εβδομάδας σύμφωνα με το ISO στο ημερολόγιο."
|
||||
"Αν true, εμφανίζει τον αριθμό εβδομάδας σύμφωνα με το ISO στο ημερολόγιο."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
|
||||
msgid "Keybinding to open the application menu"
|
||||
@ -240,7 +240,7 @@ msgid ""
|
||||
"allow applications to see and they can find user's location on their own "
|
||||
"using network resources (albeit with street-level accuracy at best)."
|
||||
msgstr ""
|
||||
"Ρυθμίζει το μέγιστο επίπεδο ακρίβειας στην εντόπιση της θέσης που "
|
||||
"Ρυθμίζει το μέγιστο επίπεδο ακρίβειας στην εντόπιση θέσης το οποίο "
|
||||
"επιτρέπεται να βλέπουν οι εφαρμογές. Οι έγκυρες επιλογές είναι "
|
||||
"'όχι' (απενεργοποίηση εντοπισμού θέσης), 'χώρα', 'πόλη', 'γειτονιά', 'οδός' "
|
||||
"και 'ακριβώς' (τυπικά, απαιτεί δέκτη GPS). Παρακαλούμε να θυμάστε ότι αυτό "
|
||||
@ -344,25 +344,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Σύνδεση"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Επιλογή συνεδρίας"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Δεν είστε στη λίστα;"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:611
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(π.χ., χρήστης ή %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:616 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Όνομα χρήστη: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:917
|
||||
msgid "Login Window"
|
||||
msgstr "Παράθυρο σύνδεσης"
|
||||
|
||||
@ -387,27 +387,27 @@ msgstr "Δεν ήταν δυνατό να γίνει ανάλυση της εν
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Η εκτέλεση του “%s” απέτυχε:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Οι πιο συχνά χρησιμοποιούμενες εφαρμογές θα εμφανιστούν εδώ"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Συχνά"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Όλα"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1555
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Νέο παράθυρο"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1577 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Αφαίρεση από τα αγαπημένα"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1583
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Προσθήκη στα αγαπημένα"
|
||||
|
||||
@ -567,13 +567,13 @@ msgstr "Τίποτα προγραμματισμένο"
|
||||
#: ../js/ui/calendar.js:790
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A, %B %d"
|
||||
msgstr "%A, %d %B"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||
#: ../js/ui/calendar.js:793
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%A, %B %d, %Y"
|
||||
msgstr "%A, %d %B %Y"
|
||||
|
||||
#: ../js/ui/calendar.js:804
|
||||
msgid "Today"
|
||||
@ -960,8 +960,8 @@ msgstr "Το πιστοποιητικό έχει ανακληθεί"
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr ""
|
||||
"Το πιστοποιητικό χρησιμοποιεί έναν μη ασφαλή αλγόριθμο αποτυπώματος ή είναι "
|
||||
"αδύναμο κρυπτογραφικά"
|
||||
"Το πιστοποιητικό χρησιμοποιεί έναν μη ασφαλή αλγόριθμο αποκρυπτογράφησης "
|
||||
"αποτυπώματος ή είναι κρυπτογραφικά ασθενές"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
msgid ""
|
||||
@ -1020,7 +1020,7 @@ msgstr "Ρυθμίσεις ημερομηνίας & ώρας"
|
||||
#. */
|
||||
#: ../js/ui/dateMenu.js:192
|
||||
msgid "%A %B %e, %Y"
|
||||
msgstr "%A %B %e, %Y"
|
||||
msgstr "%A, %e %B %Y"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:66
|
||||
#, javascript-format
|
||||
@ -1066,8 +1066,8 @@ msgstr "Εγκατάσταση ενημερώσεων & τερματισμός"
|
||||
#, 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 δευτερόλεπτο."
|
||||
msgstr[1] "Το σύστημα θα τερματιστεί αυτόματα σε %d δευτερόλεπτα."
|
||||
msgstr[0] "Το σύστημα θα τερματισθεί αυτόματα σε %d δευτερόλεπτο."
|
||||
msgstr[1] "Το σύστημα θα τερματισθεί αυτόματα σε %d δευτερόλεπτα."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:93
|
||||
msgctxt "checkbox"
|
||||
@ -1137,7 +1137,7 @@ msgstr ""
|
||||
#: ../js/ui/endSessionDialog.js:332
|
||||
msgid "Some applications are busy or have unsaved work."
|
||||
msgstr ""
|
||||
"Κάποιες εφαρμογές είναι απασχολημένες ή έχουν εργασία που δεν αποθηκεύτηκε."
|
||||
"Κάποιες εφαρμογές είναι απασχολημένες ή έχουν εργασία που δεν αποθηκεύθηκε."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:339
|
||||
msgid "Other users are logged in."
|
||||
@ -1186,7 +1186,8 @@ msgstr "Απόκρυψη σφαλμάτων"
|
||||
msgid "Show Errors"
|
||||
msgstr "Εμφάνιση σφαλμάτων"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Ενεργοποιημένο"
|
||||
|
||||
@ -1194,8 +1195,8 @@ msgstr "Ενεργοποιημένο"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Απενεργοποιημένο"
|
||||
|
||||
@ -1313,7 +1314,7 @@ msgstr "Κλείσιμο"
|
||||
#. long format */
|
||||
#: ../js/ui/screenShield.js:88
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A, %B %d"
|
||||
msgstr "%A, %d %B"
|
||||
|
||||
#: ../js/ui/screenShield.js:153
|
||||
#, javascript-format
|
||||
@ -1342,7 +1343,7 @@ msgstr "Το κλείδωμα εμποδίσθηκε από μια εφαρμο
|
||||
msgid "Searching…"
|
||||
msgstr "Αναζήτηση…"
|
||||
|
||||
#: ../js/ui/search.js:646
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Δε βρέθηκαν αποτελέσματα."
|
||||
|
||||
@ -1414,30 +1415,29 @@ msgstr "Υψηλή αντίθεση"
|
||||
msgid "Large Text"
|
||||
msgstr "Μεγάλο κείμενο"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:60
|
||||
#: ../js/ui/status/location.js:167 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
msgid "Turn Off"
|
||||
msgstr "Σβήσιμο"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Ρυθμίσεις Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:103
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
msgstr[0] "%d συνδεμένη συσκευή"
|
||||
msgstr[1] "%d συνδεμένες συσκευές"
|
||||
msgstr[0] "%d συνδεδεμένη συσκευή"
|
||||
msgstr[1] "%d συνδεδεμένες συσκευές"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:105 ../js/ui/status/network.js:1262
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "Χωρίς σύνδεση"
|
||||
|
||||
@ -1453,24 +1453,27 @@ msgstr "Εμφάνιση διάταξης πληκτρολογίου"
|
||||
msgid "Location"
|
||||
msgstr "Θέση"
|
||||
|
||||
#: ../js/ui/status/location.js:59 ../js/ui/status/location.js:166
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
msgid "Disable"
|
||||
msgstr "Απενεργοποίηση"
|
||||
|
||||
#: ../js/ui/status/location.js:165
|
||||
msgid "Enable"
|
||||
msgstr "Ενεργοποίηση"
|
||||
|
||||
#: ../js/ui/status/location.js:163 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Εκτός σύνδεσης"
|
||||
|
||||
#: ../js/ui/status/location.js:164 ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Ενεργοποίηση"
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "Σε χρήση"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<άγνωστο>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Εκτός σύνδεσης"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
msgstr "Συνδέθηκε"
|
||||
@ -1479,7 +1482,7 @@ msgstr "Συνδέθηκε"
|
||||
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||
#: ../js/ui/status/network.js:426
|
||||
msgid "unmanaged"
|
||||
msgstr "μη διαχειριζόμενες"
|
||||
msgstr "χωρίς διαχείριση"
|
||||
|
||||
#: ../js/ui/status/network.js:428
|
||||
msgid "disconnecting..."
|
||||
@ -1498,7 +1501,7 @@ msgstr "απαιτείται πιστοποίηση"
|
||||
#. module, which is missing */
|
||||
#: ../js/ui/status/network.js:445
|
||||
msgid "firmware missing"
|
||||
msgstr "έλλειψη υλικολογισμικού"
|
||||
msgstr "έλλειψη λογισμικού υλικού (firmware)"
|
||||
|
||||
#. Translators: this is for a network device that cannot be activated (for example it
|
||||
#. is disabled by rfkill, or it has no coverage */
|
||||
@ -1520,7 +1523,7 @@ msgstr "Ρυθμίσεις Κινήτης Ευρυζωνικής"
|
||||
|
||||
#: ../js/ui/status/network.js:551 ../js/ui/status/network.js:1258
|
||||
msgid "Hardware Disabled"
|
||||
msgstr "Το Υλικό Απενεργοποιήθηκε"
|
||||
msgstr "Το Υλικό απενεργοποιήθηκε"
|
||||
|
||||
#: ../js/ui/status/network.js:595
|
||||
msgid "Use as Internet connection"
|
||||
@ -1551,7 +1554,7 @@ msgstr ""
|
||||
|
||||
#: ../js/ui/status/network.js:789
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "Ενεργοποιήστε το ασύρματο δικτύο"
|
||||
msgstr "Ενεργοποίηση του ασυρμάτου δικτύου Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:814
|
||||
msgid "Wi-Fi Networks"
|
||||
@ -1567,7 +1570,7 @@ msgstr "Χωρίς δίκτυα"
|
||||
|
||||
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr "Χρησιμοποιήστε διακόπτη υλικού για τερματισμό"
|
||||
msgstr "Χρήση διακόπτη υλικού για τερματισμό"
|
||||
|
||||
#: ../js/ui/status/network.js:1136
|
||||
msgid "Select Network"
|
||||
@ -1577,6 +1580,10 @@ msgstr "Επιλογή δικτύου"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Ρυθμίσεις Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Ενεργοποίηση"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Ενεργό θερμό σημείο"
|
||||
@ -1643,6 +1650,10 @@ msgstr "Μπαταρία"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Κατάσταση λειτουργίας αεροπλάνου"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Ενεργοποίηση"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Αλλαγή χρήστη"
|
||||
@ -1756,8 +1767,8 @@ msgstr ""
|
||||
#: ../src/main.c:361
|
||||
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
|
||||
msgstr ""
|
||||
"Χρησιμοποιήστε μια συγκεκριμένη κατάσταση λειτουργίας, π.χ. \"gdm\" για την "
|
||||
"οθόνη σύνδεσης"
|
||||
"Χρήση μιας συγκεκριμένης κατάστασης λειτουργίας, π.χ. \"gdm\" για την οθόνη "
|
||||
"σύνδεσης"
|
||||
|
||||
#: ../src/main.c:367
|
||||
msgid "List possible modes"
|
||||
|
1428
po/en_GB.po
1428
po/en_GB.po
File diff suppressed because it is too large
Load Diff
204
po/eu.po
204
po/eu.po
@ -11,8 +11,8 @@ msgstr ""
|
||||
"Project-Id-Version: eu\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-20 20:35+0000\n"
|
||||
"PO-Revision-Date: 2014-03-20 22:56+0100\n"
|
||||
"POT-Creation-Date: 2014-03-30 07:57+0000\n"
|
||||
"PO-Revision-Date: 2014-03-30 12:56+0200\n"
|
||||
"Last-Translator: Iñaki Larrañaga Murgoitio <dooteo@zundan.com>\n"
|
||||
"Language-Team: Basque <librezale@librezale.org>\n"
|
||||
"Language: eu\n"
|
||||
@ -82,16 +82,10 @@ msgstr ""
|
||||
"elkarrizketa-koadroa erabiliz."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
|
||||
#| msgid "Uuids of extensions to enable"
|
||||
msgid "UUIDs of extensions to enable"
|
||||
msgstr "Gaitzeko hedapenen UUIDak"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
|
||||
#| msgid ""
|
||||
#| "GNOME Shell extensions have a uuid property; this key lists extensions "
|
||||
#| "which should be loaded. Any extension that wants to be loaded needs to be "
|
||||
#| "in this list. You can also manipulate this list with the EnableExtension "
|
||||
#| "and DisableExtension DBus methods on org.gnome.Shell."
|
||||
msgid ""
|
||||
"GNOME Shell extensions have a UUID property; this key lists extensions which "
|
||||
"should be loaded. Any extension that wants to be loaded needs to be in this "
|
||||
@ -100,9 +94,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"GNOME Shell gehigarriek UUID propietatea dute; kargatu beharko liratekeen "
|
||||
"gehigarriak zerrendatzen ditu gako honek. Kargatzea nahi diren gehigarri "
|
||||
"guztiak zerrenda honetan agertu behar dute. Zerrenda hau alda dezakezu "
|
||||
"DBus-eko "
|
||||
"'EnableExtension' (gehitu hedapena) eta 'DisableExtension' (desgaitu "
|
||||
"guztiak zerrenda honetan agertu behar dute. Zerrenda hau alda dezakezu DBus-"
|
||||
"eko 'EnableExtension' (gehitu hedapena) eta 'DisableExtension' (desgaitu "
|
||||
"hedapena) metodoekin 'org.gnome.Shell'-en."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
|
||||
@ -115,10 +108,10 @@ msgid ""
|
||||
"running version. Enabling this option will disable this check and try to "
|
||||
"load all extensions regardless of the versions they claim to support."
|
||||
msgstr ""
|
||||
"GNOME Shell-ek unean exekutatzen ari den bertsioarekin bat datozen "
|
||||
"hedapenak soilik kargatzen ditu. Aukera hau gaitzean egiaztapen hau "
|
||||
"desgaitzen da eta hedapen guztiak kargatzen saiatzen da, onartzen duten "
|
||||
"bertsioari ez ikusi eginez."
|
||||
"GNOME Shell-ek unean exekutatzen ari den bertsioarekin bat datozen hedapenak "
|
||||
"soilik kargatzen ditu. Aukera hau gaitzean egiaztapen hau desgaitzen da eta "
|
||||
"hedapen guztiak kargatzen saiatzen da, onartzen duten bertsioari ez ikusi "
|
||||
"eginez."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
|
||||
msgid "List of desktop file IDs for favorite applications"
|
||||
@ -140,14 +133,10 @@ msgid "History for the looking glass dialog"
|
||||
msgstr "Ikuskatzailearen elkarrizketa-koadroaren historia"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
|
||||
#| msgid "Always show the 'Log out' menuitem in the user menu."
|
||||
msgid "Always show the 'Log out' menu item in the user menu."
|
||||
msgstr "Erakutsi beti erabiltzaile-menuko 'Amaitu saioa' menu-elementua."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
|
||||
#| msgid ""
|
||||
#| "This key overrides the automatic hiding of the 'Log out' menuitem in "
|
||||
#| "single-user, single-session situations."
|
||||
msgid ""
|
||||
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
|
||||
"user, single-session situations."
|
||||
@ -246,14 +235,14 @@ msgid ""
|
||||
"allow applications to see and they can find user's location on their own "
|
||||
"using network resources (albeit with street-level accuracy at best)."
|
||||
msgstr ""
|
||||
"Kokalekua zehazteko baimendutako aplikazioen gehienezko "
|
||||
"maila konfiguratzen du. Balio erabilgarriak: "
|
||||
"'off' (desgaitu kokalekua araztea), 'country' (herrialdea), 'city' (herria), "
|
||||
"'neighborhood' (auzoteria), 'street' (kalea) eta 'exact' (GPS hartzailea "
|
||||
"behar izan ohi du). Jakin ezazu honek GeoClue-ek aplikazioei zer ikus "
|
||||
"dezaketen bakarrik kontrolatzen duela, eta aplikazio horiek beraien kasa "
|
||||
"aurki dezaketela erabiltzailearen kokalekua sarearen baliabideak "
|
||||
"erabiliz (hala ere, onenean kale-mailaren zaheaztasunarekin)."
|
||||
"Kokalekua zehazteko baimendutako aplikazioen gehienezko maila konfiguratzen "
|
||||
"du. Balio erabilgarriak: 'off' (desgaitu kokalekua araztea), "
|
||||
"'country' (herrialdea), 'city' (herria), 'neighborhood' (auzoteria), "
|
||||
"'street' (kalea) eta 'exact' (GPS hartzailea behar izan ohi du). Jakin ezazu "
|
||||
"honek GeoClue-ek aplikazioei zer ikus dezaketen bakarrik kontrolatzen duela, "
|
||||
"eta aplikazio horiek beraien kasa aurki dezaketela erabiltzailearen "
|
||||
"kokalekua sarearen baliabideak erabiliz (hala ere, onenean kale-mailaren "
|
||||
"zaheaztasunarekin)."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
|
||||
msgid "The application icon mode."
|
||||
@ -344,25 +333,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Hasi saioa"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Aukeratu saioa"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Ez zaude zerrendan?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:614
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(adib., erabiltzailea edo %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Erabiltzaile-izena: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:920
|
||||
msgid "Login Window"
|
||||
msgstr "Saio-hasierako leihoa"
|
||||
|
||||
@ -384,31 +373,30 @@ msgstr "Ezin izan da komandoa analizatu:"
|
||||
|
||||
#: ../js/misc/util.js:156
|
||||
#, javascript-format
|
||||
#| msgid "Execution of '%s' failed:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Huts egin du '%s' exekutatzean:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Maiztasunez erabilitako aplikazioak hemen agertuko dira"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Askotan"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Denak"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1555
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Leiho berria"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1577 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Kendu gogokoetatik"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1583
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Gehitu gogokoei"
|
||||
|
||||
@ -656,9 +644,6 @@ msgstr "Haririk gabeko sareak autentifikazioa eskatzen du"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:312
|
||||
#, javascript-format
|
||||
#| msgid ""
|
||||
#| "Passwords or encryption keys are required to access the wireless network "
|
||||
#| "'%s'."
|
||||
msgid ""
|
||||
"Passwords or encryption keys are required to access the wireless network "
|
||||
"“%s”."
|
||||
@ -696,7 +681,6 @@ msgstr "Bandazabal mugikorreko sarearen pasahitza"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:339
|
||||
#, javascript-format
|
||||
#| msgid "A password is required to connect to '%s'."
|
||||
msgid "A password is required to connect to “%s”."
|
||||
msgstr "Pasahitza behar da '%s'(e)ra konektatzeko."
|
||||
|
||||
@ -746,23 +730,18 @@ msgstr "Mututu"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:955
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%H∶%M"
|
||||
msgid "%H∶%M"
|
||||
msgstr "%H∶%M"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 24h format. i.e. "Yesterday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:962
|
||||
#| msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||
msgid "Yesterday, %H∶%M"
|
||||
msgstr "Atzo, %H:%M"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 24h format. i.e. "Monday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:969
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%H∶%M"
|
||||
msgid "%A, %H∶%M"
|
||||
msgstr "%A, %H∶%M"
|
||||
|
||||
@ -770,8 +749,6 @@ msgstr "%A, %H∶%M"
|
||||
#. followed by a time string in 24h format.
|
||||
#. i.e. "May 25, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:976
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%H∶%M"
|
||||
msgid "%B %d, %H∶%M"
|
||||
msgstr "%B %d, %H∶%M"
|
||||
|
||||
@ -784,8 +761,6 @@ msgstr "%Y %B %d, %H∶%M"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:991
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%l∶%M %p"
|
||||
msgid "%l∶%M %p"
|
||||
msgstr "%l∶%M %p"
|
||||
|
||||
@ -798,7 +773,6 @@ msgstr "Atzo, %I:%M %p"
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 12h format. i.e. "Monday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1005
|
||||
#| msgid "%a %l:%M %p"
|
||||
msgid "%A, %l∶%M %p"
|
||||
msgstr "%A, %l∶%M %p"
|
||||
|
||||
@ -806,7 +780,6 @@ msgstr "%A, %l∶%M %p"
|
||||
#. followed by a time string in 12h format.
|
||||
#. i.e. "May 25, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1012
|
||||
#| msgid "%a %b %e, %l:%M %p"
|
||||
msgid "%B %d, %l∶%M %p"
|
||||
msgstr "%B %d, %l∶%M %p"
|
||||
|
||||
@ -814,7 +787,6 @@ msgstr "%B %d, %l∶%M %p"
|
||||
#. number followed by a time string in 12h format.
|
||||
#. i.e. "May 25 2012, 2:30 pm"*/
|
||||
#: ../js/ui/components/telepathyClient.js:1018
|
||||
#| msgid "%a %b %e, %l:%M %p"
|
||||
msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%Y %B %d, %l∶%M %p"
|
||||
|
||||
@ -843,13 +815,13 @@ msgstr "%s(e)k gonbidatzen zaitu '%s'(e)ra elkartzeko"
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1291
|
||||
msgid "Decline"
|
||||
msgstr "Ukatu"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1296
|
||||
msgid "Accept"
|
||||
msgstr "Onartu"
|
||||
|
||||
@ -886,100 +858,100 @@ msgstr "%s fitxategia ari zaizu bidaltzen: %s"
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s(e)k baimena nahiko luke linean noiz zauden jakiteko"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1342
|
||||
msgid "Network error"
|
||||
msgstr "Sareko errorea"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1344
|
||||
msgid "Authentication failed"
|
||||
msgstr "Autentifikazioak huts egin du"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Encryption error"
|
||||
msgstr "Zifratze-errorea"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Ez da ziurtagiririk eman"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "Ziurtagiria ez da fidagarria"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate expired"
|
||||
msgstr "Ziurtagiria iraungituta"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate not activated"
|
||||
msgstr "Ziurtagiria aktibatu gabe"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "Ziurtagiriaren ostalari-izena ez dator bat"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "Ziurtagiriaren hatz-marka ez dator bat"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "Ziurtagiria bere buruarekin sinatuta"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Egoera lineaz kanpo da"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Encryption is not available"
|
||||
msgstr "Zifratzea ez dago eskuragarri"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "Ziurtagiria baliogabea da"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Connection has been refused"
|
||||
msgstr "Konexioa ukatu egin da"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Connection can't be established"
|
||||
msgstr "Konexioa ezin da burutu"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been lost"
|
||||
msgstr "Konexioa galdu egin da"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "Kontu hau jadanik zerbitzariarekin konektatuta dago"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr ""
|
||||
"Konexioa ordezkatu egin da baliabide bera darabilen konexio berri batengatik"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "Kontua badago lehendik zerbitzarian"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "Zerbitzaria oso lanpetuta dago konexioa maneiatzeko"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "Ziurtagiria errebokatu egin da"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr ""
|
||||
"Ziurtagiriak zifratze-algoritmo ez-segurua darabil edo kriptografikoki ahula "
|
||||
"da"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -987,22 +959,22 @@ msgstr ""
|
||||
"Zerbitzariaren ziurtagiriaren luzerak edo ziurtagiri-katearen sakonerak "
|
||||
"liburutegi kriptografikoak ezarritako mugak gainditzen ditu"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid "Internal error"
|
||||
msgstr "Barneko errorea"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1398
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "Ezin da %s(e)ra konektatu"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1403
|
||||
msgid "View account"
|
||||
msgstr "Ikusi kontua"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1439
|
||||
#: ../js/ui/components/telepathyClient.js:1440
|
||||
msgid "Unknown reason"
|
||||
msgstr "Arrazoi ezezaguna"
|
||||
|
||||
@ -1129,8 +1101,6 @@ msgstr[1] ""
|
||||
"segundotan."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:129
|
||||
#| msgctxt "button"
|
||||
#| msgid "Restart & Install"
|
||||
msgctxt "button"
|
||||
msgid "Restart & Install"
|
||||
msgstr "Berrabiarazi eta instalatu"
|
||||
@ -1176,7 +1146,6 @@ msgstr "Instalatu"
|
||||
|
||||
#: ../js/ui/extensionDownloader.js:204
|
||||
#, javascript-format
|
||||
#| msgid "Download and install '%s' from extensions.gnome.org?"
|
||||
msgid "Download and install “%s” from extensions.gnome.org?"
|
||||
msgstr "Deskargatu eta instalatu '%s' extensions.gnome.org gunetik?"
|
||||
|
||||
@ -1202,7 +1171,8 @@ msgstr "Ezkutatu erroreak"
|
||||
msgid "Show Errors"
|
||||
msgstr "Erakutsi erroreak"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Gaituta"
|
||||
|
||||
@ -1210,8 +1180,8 @@ msgstr "Gaituta"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Desgaituta"
|
||||
|
||||
@ -1358,7 +1328,7 @@ msgstr "Beste aplikazio batek blokeatu du"
|
||||
msgid "Searching…"
|
||||
msgstr "Bilatzen…"
|
||||
|
||||
#: ../js/ui/search.js:646
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Emaitzarik ez."
|
||||
|
||||
@ -1434,8 +1404,7 @@ msgstr "Testu handia"
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/location.js:60
|
||||
#: ../js/ui/status/location.js:167 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
@ -1454,7 +1423,6 @@ msgstr[0] "Gailu %d konektatuta"
|
||||
msgstr[1] "%d gailu konektatuta"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
#| msgid "Connect"
|
||||
msgid "Not Connected"
|
||||
msgstr "Konektatu gabe"
|
||||
|
||||
@ -1467,30 +1435,33 @@ msgid "Show Keyboard Layout"
|
||||
msgstr "Erakutsi teklatuaren diseinua"
|
||||
|
||||
#: ../js/ui/status/location.js:53
|
||||
#| msgid "Notifications"
|
||||
msgid "Location"
|
||||
msgstr "Kokalekua"
|
||||
|
||||
#: ../js/ui/status/location.js:59 ../js/ui/status/location.js:166
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Aktibatuta"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
#| msgid "Disabled"
|
||||
msgid "Disable"
|
||||
msgstr "Desgaitu"
|
||||
|
||||
#: ../js/ui/status/location.js:163 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Desaktibatuta"
|
||||
#: ../js/ui/status/location.js:165
|
||||
#| msgid "Enabled"
|
||||
msgid "Enable"
|
||||
msgstr "Gaitu"
|
||||
|
||||
#: ../js/ui/status/location.js:164 ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Piztu"
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "Erabiltzen"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<ezezaguna>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Desaktibatuta"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
#| msgid "Connect"
|
||||
msgid "Connected"
|
||||
msgstr "Konektatuta"
|
||||
|
||||
@ -1530,17 +1501,14 @@ msgid "connection failed"
|
||||
msgstr "konexioak huts egin du"
|
||||
|
||||
#: ../js/ui/status/network.js:467
|
||||
#| msgid "Settings"
|
||||
msgid "Wired Settings"
|
||||
msgstr "Haridunaren ezarpenak"
|
||||
|
||||
#: ../js/ui/status/network.js:509 ../js/ui/status/network.js:587
|
||||
#| msgid "Mobile broadband"
|
||||
msgid "Mobile Broadband Settings"
|
||||
msgstr "Bandazabal mugikorraren ezarpenak"
|
||||
|
||||
#: ../js/ui/status/network.js:551 ../js/ui/status/network.js:1258
|
||||
#| msgid "hardware disabled"
|
||||
msgid "Hardware Disabled"
|
||||
msgstr "Hardwarea desgaituta"
|
||||
|
||||
@ -1549,7 +1517,6 @@ msgid "Use as Internet connection"
|
||||
msgstr "Erabili Interneteko konexio gisa"
|
||||
|
||||
#: ../js/ui/status/network.js:776
|
||||
#| msgid "Airplane Mode"
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "Hegazkin modua piztuta"
|
||||
|
||||
@ -1558,7 +1525,6 @@ msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr "Haririk gabekoa desgaitu egiten da hegazkin modua piztean."
|
||||
|
||||
#: ../js/ui/status/network.js:778
|
||||
#| msgid "Airplane Mode"
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "Itzali hegazkin modua"
|
||||
|
||||
@ -1571,7 +1537,6 @@ msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr "Haririk gabekoa piztu egin behar da sare batera konektatzeko."
|
||||
|
||||
#: ../js/ui/status/network.js:789
|
||||
#| msgid "Turn On"
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "Piztu haririk gabekoa"
|
||||
|
||||
@ -1596,16 +1561,18 @@ msgid "Select Network"
|
||||
msgstr "Hautatu sarea"
|
||||
|
||||
#: ../js/ui/status/network.js:1142
|
||||
#| msgid "Settings"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Haririk gabekoaren ezarpenak"
|
||||
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Piztu"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Wifigune aktiboa"
|
||||
|
||||
#: ../js/ui/status/network.js:1254
|
||||
#| msgid "Connection"
|
||||
msgid "Connecting"
|
||||
msgstr "Konektatzen"
|
||||
|
||||
@ -1614,7 +1581,6 @@ msgid "Network Settings"
|
||||
msgstr "Sarearen ezarpenak"
|
||||
|
||||
#: ../js/ui/status/network.js:1435
|
||||
#| msgid "Settings"
|
||||
msgid "VPN Settings"
|
||||
msgstr "VPNaren ezarpenak"
|
||||
|
||||
@ -1668,6 +1634,10 @@ msgstr "Bateria"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Hegazkin modua"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Aktibatuta"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Aldatu erabiltzailea"
|
||||
@ -1718,7 +1688,6 @@ msgstr "Bilatu"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:19
|
||||
#, javascript-format
|
||||
#| msgid "'%s' is ready"
|
||||
msgid "“%s” is ready"
|
||||
msgstr "'%s' prest dago"
|
||||
|
||||
@ -1788,7 +1757,6 @@ msgstr "Zerrendatu modu posibleak"
|
||||
|
||||
#: ../src/shell-app.c:666
|
||||
#, c-format
|
||||
#| msgid "Failed to launch '%s'"
|
||||
msgid "Failed to launch “%s”"
|
||||
msgstr "Huts egin du '%s' abiaraztean"
|
||||
|
||||
|
137
po/fr.po
137
po/fr.po
@ -18,8 +18,8 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell master fr\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-15 13:20+0000\n"
|
||||
"PO-Revision-Date: 2014-03-22 15:35+0100\n"
|
||||
"POT-Creation-Date: 2014-03-31 07:57+0000\n"
|
||||
"PO-Revision-Date: 2014-03-31 18:25+0200\n"
|
||||
"Last-Translator: Mathieu Stumpf <psychoslave@culture-libre.org>\n"
|
||||
"Language-Team: français <gnomefr@traduc.org>\n"
|
||||
"Language: French\n"
|
||||
@ -354,25 +354,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Se connecter"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Choisir une session"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Absent de la liste ?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:614
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(par ex. utilisateur ou %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Nom d'utilisateur : "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:920
|
||||
msgid "Login Window"
|
||||
msgstr "Fenêtre de connexion"
|
||||
|
||||
@ -397,27 +397,27 @@ msgstr "Impossible d'analyser la commande :"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Exécution de « %s » impossible :"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Les applications fréquemment utilisées apparaîtront ici"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Fréquemment utilisées"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Toutes"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1555
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Nouvelle fenêtre"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1577 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Enlever des favoris"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1583
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Ajouter aux favoris"
|
||||
|
||||
@ -857,13 +857,13 @@ msgstr "%s vous invite à rejoindre %s"
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1291
|
||||
msgid "Decline"
|
||||
msgstr "Refuser"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1296
|
||||
msgid "Accept"
|
||||
msgstr "Accepter"
|
||||
|
||||
@ -900,101 +900,101 @@ msgstr "%s vous envoie %s"
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s aimerait être autorisé à savoir lorsque vous êtes en ligne"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1342
|
||||
msgid "Network error"
|
||||
msgstr "Erreur réseau"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1344
|
||||
msgid "Authentication failed"
|
||||
msgstr "L'authentification a échoué"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Encryption error"
|
||||
msgstr "Erreur de chiffrement"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Certificat non fourni"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "Certificat non validé"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate expired"
|
||||
msgstr "Certificat expiré"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate not activated"
|
||||
msgstr "Certificat non activé"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "Le nom de l'hôte du certificat ne correspond pas"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "L'empreinte du certificat ne correspond pas"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "Certificat auto-signé"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Le statut est hors ligne"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Encryption is not available"
|
||||
msgstr "Chiffrement non disponible"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "Certificat non valide"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Connection has been refused"
|
||||
msgstr "La connexion a été refusée"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Connection can't be established"
|
||||
msgstr "La connexion ne peut pas être établie"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been lost"
|
||||
msgstr "La connexion a été perdue"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "Ce compte est déjà connectée au serveur"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr ""
|
||||
"La connexion a été remplacée par une nouvelle connexion utilisant la même "
|
||||
"ressource"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "Ce compte existe déjà sur le serveur"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "Le serveur est actuellement trop chargé pour traiter la connexion"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "Le certificat a été révoqué"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr ""
|
||||
"Le certificat utilise un algorithme de chiffrement douteux, ou est faible "
|
||||
"cryptographiquement"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -1002,22 +1002,22 @@ msgstr ""
|
||||
"La longueur du certificat du serveur, ou la taille de sa chaîne de "
|
||||
"certification, dépasse les limites de la bibliothèque de cryptographie"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid "Internal error"
|
||||
msgstr "Erreur interne"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1398
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "Impossible de se connecter à %s"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1403
|
||||
msgid "View account"
|
||||
msgstr "Afficher le compte"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1439
|
||||
#: ../js/ui/components/telepathyClient.js:1440
|
||||
msgid "Unknown reason"
|
||||
msgstr "Raison inconnue"
|
||||
|
||||
@ -1218,7 +1218,8 @@ msgstr "Masquer les erreurs"
|
||||
msgid "Show Errors"
|
||||
msgstr "Afficher les erreurs"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Activé"
|
||||
|
||||
@ -1226,8 +1227,8 @@ msgstr "Activé"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Désactivé"
|
||||
|
||||
@ -1374,7 +1375,7 @@ msgstr "Le verrouillage a été bloqué par une application"
|
||||
msgid "Searching…"
|
||||
msgstr "Recherche en cours…"
|
||||
|
||||
#: ../js/ui/search.js:646
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Aucun résultat."
|
||||
|
||||
@ -1446,30 +1447,29 @@ msgstr "Contraste élevé"
|
||||
msgid "Large Text"
|
||||
msgstr "Grand texte"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:60
|
||||
#: ../js/ui/status/location.js:167 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
msgid "Turn Off"
|
||||
msgstr "Éteindre"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Paramètres Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:103
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
msgstr[0] "%d périphérique connecté"
|
||||
msgstr[1] "%d périphériques connectés"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:105 ../js/ui/status/network.js:1262
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "Non connecté"
|
||||
|
||||
@ -1485,24 +1485,27 @@ msgstr "Afficher la disposition du clavier"
|
||||
msgid "Location"
|
||||
msgstr "Localisation"
|
||||
|
||||
#: ../js/ui/status/location.js:59 ../js/ui/status/location.js:166
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Activé"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
msgid "Disable"
|
||||
msgstr "Désactiver"
|
||||
|
||||
#: ../js/ui/status/location.js:163 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Désactivé"
|
||||
|
||||
#: ../js/ui/status/location.js:164 ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
#: ../js/ui/status/location.js:165
|
||||
msgid "Enable"
|
||||
msgstr "Activer"
|
||||
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "En cours d'utilisation"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<inconnu>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Désactivé"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
msgstr "Connecté"
|
||||
@ -1606,6 +1609,10 @@ msgstr "Sélectionner un réseau"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Paramètres Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Activer"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Hotspot activé"
|
||||
@ -1672,6 +1679,10 @@ msgstr "Batterie"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Mode avion"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Activé"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Changer d'utilisateur"
|
||||
|
225
po/hu.po
225
po/hu.po
@ -5,21 +5,22 @@
|
||||
# Gabor Kelemen <kelemeng at gnome dot hu>, 2009, 2010, 2011, 2012, 2013, 2014.
|
||||
# Lukács Bence <lukacs.bence1 at gmail dot com>, 2012.
|
||||
# Balázs Úr <urbalazs at gmail dot com>, 2012.
|
||||
# Balázs Úr <urbalazs@gmail.com>, 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: 2014-03-19 08:31+0000\n"
|
||||
"PO-Revision-Date: 2014-03-19 10:44+0100\n"
|
||||
"Last-Translator: Gabor Kelemen <kelemeng at gnome dot hu>\n"
|
||||
"POT-Creation-Date: 2014-04-13 07:59+0000\n"
|
||||
"PO-Revision-Date: 2014-04-13 15:41+0200\n"
|
||||
"Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
|
||||
"Language-Team: Hungarian <openscope at googlegroups dot com>\n"
|
||||
"Language: hu\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 1.4\n"
|
||||
"X-Generator: Lokalize 1.2\n"
|
||||
|
||||
#: ../data/50-gnome-shell-system.xml.in.h:1
|
||||
msgid "System"
|
||||
@ -226,14 +227,6 @@ msgid "The maximum accuracy level of location."
|
||||
msgstr "A hely maximális pontossági szintje."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
|
||||
#| msgid ""
|
||||
#| "Configures the maximum level of location accuracy applications are "
|
||||
#| "allowed to see. Valid options are 'off' (disable location tracking), "
|
||||
#| "'country', 'city', 'neighborhood', 'street', and 'exact' (typically "
|
||||
#| "requires GPS receiver). Please keep in mind that this only controls what "
|
||||
#| "Geoclue will allow applications to see and they can find user's location "
|
||||
#| "on their own using network resources (albeit with street-level accuracy "
|
||||
#| "at best)."
|
||||
msgid ""
|
||||
"Configures the maximum level of location accuracy applications are allowed "
|
||||
"to see. Valid options are 'off' (disable location tracking), 'country', "
|
||||
@ -338,33 +331,33 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Bejelentkezés"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Válasszon munkamenetet"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Nincs a listán?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:616
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(például: felhasználó vagy %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Felhasználónév: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:924
|
||||
msgid "Login Window"
|
||||
msgstr "Bejelentkezési ablak"
|
||||
|
||||
#: ../js/gdm/util.js:322
|
||||
#: ../js/gdm/util.js:323
|
||||
msgid "Authentication error"
|
||||
msgstr "Hitelesítési hiba"
|
||||
|
||||
#: ../js/gdm/util.js:452
|
||||
#: ../js/gdm/util.js:453
|
||||
msgid "(or swipe finger)"
|
||||
msgstr "(vagy húzza le az ujját)"
|
||||
|
||||
@ -381,27 +374,27 @@ msgstr "A parancs nem dolgozható fel:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "„%s” végrehajtása meghiúsult:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Itt jelennek meg a gyakran használt alkalmazások"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Gyakori"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Összes"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1555
|
||||
#: ../js/ui/appDisplay.js:1567
|
||||
msgid "New Window"
|
||||
msgstr "Új ablak"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1577 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1589 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Eltávolítás a Kedvencek közül"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1583
|
||||
#: ../js/ui/appDisplay.js:1595
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Hozzáadás a Kedvencekhez"
|
||||
|
||||
@ -415,7 +408,7 @@ msgstr "%s felvéve a Kedvencek közé."
|
||||
msgid "%s has been removed from your favorites."
|
||||
msgstr "%s eltávolítva a Kedvencek közül"
|
||||
|
||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
|
||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
|
||||
#: ../js/ui/status/system.js:334
|
||||
msgid "Settings"
|
||||
msgstr "Beállítások"
|
||||
@ -585,11 +578,11 @@ msgstr "Ezen a héten"
|
||||
msgid "Next week"
|
||||
msgstr "Jövő héten"
|
||||
|
||||
#: ../js/ui/components/automountManager.js:90
|
||||
#: ../js/ui/components/automountManager.js:91
|
||||
msgid "External drive connected"
|
||||
msgstr "Külső meghajtó csatlakoztatva"
|
||||
|
||||
#: ../js/ui/components/automountManager.js:101
|
||||
#: ../js/ui/components/automountManager.js:102
|
||||
msgid "External drive disconnected"
|
||||
msgstr "Külső meghajtó leválasztva"
|
||||
|
||||
@ -734,77 +727,77 @@ msgid "Mute"
|
||||
msgstr "Némítás"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:955
|
||||
#: ../js/ui/components/telepathyClient.js:958
|
||||
msgid "%H∶%M"
|
||||
msgstr "%k.%M"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 24h format. i.e. "Yesterday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:962
|
||||
#: ../js/ui/components/telepathyClient.js:965
|
||||
msgid "Yesterday, %H∶%M"
|
||||
msgstr "Tegnap, %k.%M"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 24h format. i.e. "Monday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:969
|
||||
#: ../js/ui/components/telepathyClient.js:972
|
||||
msgid "%A, %H∶%M"
|
||||
msgstr "%A %k.%M"
|
||||
|
||||
#. Translators: this is the month name and day number
|
||||
#. followed by a time string in 24h format.
|
||||
#. i.e. "May 25, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:976
|
||||
#: ../js/ui/components/telepathyClient.js:979
|
||||
msgid "%B %d, %H∶%M"
|
||||
msgstr "%B %d., %k.%M"
|
||||
|
||||
#. Translators: this is the month name, day number, year
|
||||
#. number followed by a time string in 24h format.
|
||||
#. i.e. "May 25 2012, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:982
|
||||
#: ../js/ui/components/telepathyClient.js:985
|
||||
msgid "%B %d %Y, %H∶%M"
|
||||
msgstr "%Y. %B %d., %k.%M"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:991
|
||||
#: ../js/ui/components/telepathyClient.js:994
|
||||
msgid "%l∶%M %p"
|
||||
msgstr "%P %l.%M"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:998
|
||||
#: ../js/ui/components/telepathyClient.js:1001
|
||||
msgid "Yesterday, %l∶%M %p"
|
||||
msgstr "Tegnap %l.%M %P"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 12h format. i.e. "Monday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1005
|
||||
#: ../js/ui/components/telepathyClient.js:1008
|
||||
msgid "%A, %l∶%M %p"
|
||||
msgstr "%A, %l.%M %P"
|
||||
|
||||
#. Translators: this is the month name and day number
|
||||
#. followed by a time string in 12h format.
|
||||
#. i.e. "May 25, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1012
|
||||
#: ../js/ui/components/telepathyClient.js:1015
|
||||
msgid "%B %d, %l∶%M %p"
|
||||
msgstr "%B %d., %l.%M %p"
|
||||
|
||||
#. Translators: this is the month name, day number, year
|
||||
#. number followed by a time string in 12h format.
|
||||
#. i.e. "May 25 2012, 2:30 pm"*/
|
||||
#: ../js/ui/components/telepathyClient.js:1018
|
||||
#: ../js/ui/components/telepathyClient.js:1021
|
||||
msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%Y. %B %d., %l.%M %p"
|
||||
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name. */
|
||||
#: ../js/ui/components/telepathyClient.js:1051
|
||||
#: ../js/ui/components/telepathyClient.js:1054
|
||||
#, javascript-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "%s mostantól %s néven ismert"
|
||||
|
||||
#. translators: argument is a room name like
|
||||
#. * room@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1154
|
||||
#: ../js/ui/components/telepathyClient.js:1158
|
||||
#, javascript-format
|
||||
msgid "Invitation to %s"
|
||||
msgstr "Meghívás ide: %s"
|
||||
@ -812,38 +805,38 @@ msgstr "Meghívás ide: %s"
|
||||
#. translators: first argument is the name of a contact and the second
|
||||
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||
#. * for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1162
|
||||
#: ../js/ui/components/telepathyClient.js:1166
|
||||
#, javascript-format
|
||||
msgid "%s is inviting you to join %s"
|
||||
msgstr "%s kéri, hogy csatlakozzon ehhez: %s"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1168
|
||||
#: ../js/ui/components/telepathyClient.js:1203
|
||||
#: ../js/ui/components/telepathyClient.js:1237
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
msgid "Decline"
|
||||
msgstr "Elutasítás"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1174
|
||||
#: ../js/ui/components/telepathyClient.js:1243
|
||||
#: ../js/ui/components/telepathyClient.js:1300
|
||||
msgid "Accept"
|
||||
msgstr "Elfogadás"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1189
|
||||
#: ../js/ui/components/telepathyClient.js:1193
|
||||
#, javascript-format
|
||||
msgid "Video call from %s"
|
||||
msgstr "Videohívás tőle: %s"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1192
|
||||
#: ../js/ui/components/telepathyClient.js:1196
|
||||
#, javascript-format
|
||||
msgid "Call from %s"
|
||||
msgstr "Hívás tőle: %s"
|
||||
|
||||
#. translators: this is a button label (verb), not a noun */
|
||||
#: ../js/ui/components/telepathyClient.js:1206
|
||||
#: ../js/ui/components/telepathyClient.js:1210
|
||||
msgid "Answer"
|
||||
msgstr "Válasz"
|
||||
|
||||
@ -852,111 +845,111 @@ msgstr "Válasz"
|
||||
#. * file name. The string will be something
|
||||
#. * like: "Alice is sending you test.ogg"
|
||||
#. */
|
||||
#: ../js/ui/components/telepathyClient.js:1227
|
||||
#: ../js/ui/components/telepathyClient.js:1231
|
||||
#, javascript-format
|
||||
msgid "%s is sending you %s"
|
||||
msgstr "%s a következőt küldi: %s"
|
||||
|
||||
#. To translators: The parameter is the contact's alias */
|
||||
#: ../js/ui/components/telepathyClient.js:1256
|
||||
#: ../js/ui/components/telepathyClient.js:1260
|
||||
#, javascript-format
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s engedélyt kér, hogy láthassa az Ön elérhető állapotát"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Network error"
|
||||
msgstr "Hálózati hiba"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Authentication failed"
|
||||
msgstr "A hitelesítés meghiúsult"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Encryption error"
|
||||
msgstr "Titkosítási hiba"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Nincs megadva tanúsítvány"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "A tanúsítvány nem megbízható"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate expired"
|
||||
msgstr "A tanúsítvány lejárt"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate not activated"
|
||||
msgstr "A tanúsítvány nincs aktiválva"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "A tanúsítvány gépneve eltér"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "A tanúsítvány ujjlenyomata eltér"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "A tanúsítvány önaláírt"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Az állapot beállítva kilépettre"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Encryption is not available"
|
||||
msgstr "A titkosítás nem érhető el"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "A tanúsítvány érvénytelen"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been refused"
|
||||
msgstr "A kapcsolat visszautasítva"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "Connection can't be established"
|
||||
msgstr "A kapcsolat nem hozható létre"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid "Connection has been lost"
|
||||
msgstr "A kapcsolat elveszett"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "Ez a fiók már kapcsolódik a kiszolgálóhoz"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr ""
|
||||
"A kapcsolatot leváltotta egy új, ugyanazt az erőforrást használó kapcsolat"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "A fiók már létezik a kiszolgálón"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "A kiszolgáló pillanatnyilag túl elfoglalt a kapcsolat kezeléséhez"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "A tanúsítvány visszavonva"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr ""
|
||||
"A tanúsítvány nem biztonságos titkosító algoritmust használ, vagy "
|
||||
"titkosításilag gyenge"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1390
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -964,22 +957,22 @@ msgstr ""
|
||||
"A kiszolgáló tanúsítványának hossza, vagy a kiszolgáló tanúsítványláncának "
|
||||
"mélysége túllépi a titkosítási programkönyvtár korlátozásait"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1392
|
||||
msgid "Internal error"
|
||||
msgstr "Belső hiba"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "Nem lehet kapcsolódni ehhez: %s"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1407
|
||||
msgid "View account"
|
||||
msgstr "Fiók megtekintése"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1439
|
||||
#: ../js/ui/components/telepathyClient.js:1444
|
||||
msgid "Unknown reason"
|
||||
msgstr "Ismeretlen ok"
|
||||
|
||||
@ -1136,13 +1129,13 @@ msgid "Other users are logged in."
|
||||
msgstr "Más felhasználók vannak bejelentkezve."
|
||||
|
||||
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||
#: ../js/ui/endSessionDialog.js:618
|
||||
#: ../js/ui/endSessionDialog.js:619
|
||||
#, javascript-format
|
||||
msgid "%s (remote)"
|
||||
msgstr "%s (távoli)"
|
||||
|
||||
#. Translators: Console here refers to a tty like a VT console */
|
||||
#: ../js/ui/endSessionDialog.js:621
|
||||
#: ../js/ui/endSessionDialog.js:622
|
||||
#, javascript-format
|
||||
msgid "%s (console)"
|
||||
msgstr "%s (konzol)"
|
||||
@ -1157,7 +1150,7 @@ msgid "Download and install “%s” from extensions.gnome.org?"
|
||||
msgstr ""
|
||||
"Letölti és telepíti a következőt az extensions.gnome.org webhelyről: „%s”?"
|
||||
|
||||
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
|
||||
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
|
||||
msgid "Keyboard"
|
||||
msgstr "Billentyűzet"
|
||||
|
||||
@ -1179,7 +1172,8 @@ msgstr "Hibák elrejtése"
|
||||
msgid "Show Errors"
|
||||
msgstr "Hibák megjelenítése"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Engedélyezve"
|
||||
|
||||
@ -1187,8 +1181,8 @@ msgstr "Engedélyezve"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Tiltva"
|
||||
|
||||
@ -1244,11 +1238,11 @@ msgstr "Nincs üzenet"
|
||||
msgid "Message Tray"
|
||||
msgstr "Üzenettálca"
|
||||
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
#: ../js/ui/messageTray.js:2967
|
||||
msgid "System Information"
|
||||
msgstr "Rendszerinformációk"
|
||||
|
||||
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
|
||||
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
|
||||
msgctxt "program"
|
||||
msgid "Unknown"
|
||||
msgstr "Ismeretlen"
|
||||
@ -1286,7 +1280,7 @@ msgstr "Kilépés"
|
||||
msgid "Activities"
|
||||
msgstr "Tevékenységek"
|
||||
|
||||
#: ../js/ui/panel.js:914
|
||||
#: ../js/ui/panel.js:915
|
||||
msgid "Top Bar"
|
||||
msgstr "Felső sáv"
|
||||
|
||||
@ -1323,11 +1317,11 @@ msgstr "Zárolás"
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "A GNOME-nak zárolnia kell a képernyőt"
|
||||
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
|
||||
msgid "Unable to lock"
|
||||
msgstr "Nem lehet zárolni"
|
||||
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "A zárolást egy alkalmazás blokkolta"
|
||||
|
||||
@ -1335,7 +1329,7 @@ msgstr "A zárolást egy alkalmazás blokkolta"
|
||||
msgid "Searching…"
|
||||
msgstr "Keresés…"
|
||||
|
||||
#: ../js/ui/search.js:646
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Nincs találat."
|
||||
|
||||
@ -1399,11 +1393,11 @@ msgstr "Billentyűszűrés"
|
||||
msgid "Mouse Keys"
|
||||
msgstr "Egérbillentyűk"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:143
|
||||
#: ../js/ui/status/accessibility.js:144
|
||||
msgid "High Contrast"
|
||||
msgstr "Nagy kontraszt"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:192
|
||||
#: ../js/ui/status/accessibility.js:193
|
||||
msgid "Large Text"
|
||||
msgstr "Nagy szöveg"
|
||||
|
||||
@ -1411,8 +1405,7 @@ msgstr "Nagy szöveg"
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/location.js:60
|
||||
#: ../js/ui/status/location.js:167 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
@ -1446,26 +1439,30 @@ msgstr "Billentyűzetkiosztás megjelenítése"
|
||||
msgid "Location"
|
||||
msgstr "Hely"
|
||||
|
||||
#: ../js/ui/status/location.js:59 ../js/ui/status/location.js:166
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Be"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
#| msgid "Disabled"
|
||||
msgid "Disable"
|
||||
msgstr "Letiltás"
|
||||
|
||||
#: ../js/ui/status/location.js:163 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Ki"
|
||||
#: ../js/ui/status/location.js:165
|
||||
#| msgid "Enabled"
|
||||
msgid "Enable"
|
||||
msgstr "Engedélyezés"
|
||||
|
||||
#: ../js/ui/status/location.js:164 ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Bekapcsolás"
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "Használatban"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<ismeretlen>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Ki"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
#| msgid "Connect"
|
||||
msgid "Connected"
|
||||
msgstr "Kapcsolódva"
|
||||
|
||||
@ -1568,6 +1565,10 @@ msgstr "Válasszon hálózatot"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Wi-Fi beállítások"
|
||||
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Bekapcsolás"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "A hotspot aktív"
|
||||
@ -1634,6 +1635,10 @@ msgstr "Akkumulátor"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Repülőgép üzemmód"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Be"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Felhasználóváltás"
|
||||
@ -1702,7 +1707,7 @@ msgstr "Beállítások visszavonása"
|
||||
msgid "Keep Changes"
|
||||
msgstr "Módosítások megtartása"
|
||||
|
||||
#: ../js/ui/windowManager.js:97
|
||||
#: ../js/ui/windowManager.js:98
|
||||
#, javascript-format
|
||||
msgid "Settings changes will revert in %d second"
|
||||
msgid_plural "Settings changes will revert in %d seconds"
|
||||
@ -1765,7 +1770,7 @@ msgstr "A jelszavak nem egyeznek."
|
||||
msgid "Password cannot be blank"
|
||||
msgstr "A jelszó nem lehet üres"
|
||||
|
||||
#: ../src/shell-polkit-authentication-agent.c:343
|
||||
#: ../src/shell-polkit-authentication-agent.c:346
|
||||
msgid "Authentication dialog was dismissed by the user"
|
||||
msgstr "A hitelesítési ablakot a felhasználó bezárta"
|
||||
|
||||
|
351
po/ja.po
351
po/ja.po
@ -8,14 +8,15 @@
|
||||
# Hideki Yamane <henrich@debian.org>, 2011.
|
||||
# Takanori MATSUURA <t.matsuu@gmail.com>, 2012.
|
||||
# Yoji TOYODA <bsyamato@sea.plala.or.jp>, 2013.
|
||||
# Ikuya Awashiro <ikuya@fruitsbasket.info>, 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: 2014-03-17 15:45+0000\n"
|
||||
"PO-Revision-Date: 2014-03-24 08:19+0900\n"
|
||||
"Last-Translator: Jiro Matsuzawa <jmatsuzawa@gnome.org>\n"
|
||||
"POT-Creation-Date: 2014-04-12 20:01+0000\n"
|
||||
"PO-Revision-Date: 2014-04-13 13:11+0900\n"
|
||||
"Last-Translator: Ikuya Awashiro <ikuya@fruitsbasket.info>\n"
|
||||
"Language-Team: Japanese <gnome-translation@gnome.gr.jp>\n"
|
||||
"Language: ja\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@ -78,20 +79,16 @@ msgid "Allows access to internal debugging and monitoring tools using the Alt-F2
|
||||
msgstr "Alt-F2 ダイアログを利用した内部のデバッグツールとモニターツールへのアクセスを許可します。"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
|
||||
#, fuzzy
|
||||
#| msgid "Uuids of extensions to enable"
|
||||
msgid "UUIDs of extensions to enable"
|
||||
msgstr "有効にする拡張機能の UUID"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
|
||||
#, fuzzy
|
||||
#| msgid "GNOME Shell extensions have a uuid property; this key lists extensions which should be loaded. Any extension that wants to be loaded needs to be in this list. You can also manipulate this list with the EnableExtension and DisableExtension DBus methods on org.gnome.Shell."
|
||||
msgid "GNOME Shell extensions have a UUID property; this key lists extensions which should be loaded. Any extension that wants to be loaded needs to be in this list. You can also manipulate this list with the EnableExtension and DisableExtension D-Bus methods on org.gnome.Shell."
|
||||
msgstr "GNOME Shell の拡張機能には UUID プロパティがあり、このキーは、ロードしたい拡張機能の UUID のリストです。ロードしたい拡張機能はこのリストに含めなければなりません。このリストは org.gnome.Shell の EnableExtensions や DisableExtensions といった DBus メソッドでも操作できます。"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
|
||||
msgid "Disables the validation of extension version compatibility"
|
||||
msgstr ""
|
||||
msgstr "拡張機能のバージョン互換の検証を無効にする"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:6
|
||||
msgid "GNOME Shell will only load extensions that claim to support the current running version. Enabling this option will disable this check and try to load all extensions regardless of the versions they claim to support."
|
||||
@ -114,14 +111,10 @@ msgid "History for the looking glass dialog"
|
||||
msgstr "looking glass ダイアログの履歴"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
|
||||
#, fuzzy
|
||||
#| msgid "Always show the 'Log out' menuitem in the user menu."
|
||||
msgid "Always show the 'Log out' menu item in the user menu."
|
||||
msgstr "ユーザーメニューに「ログアウト」を常に表示する"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
|
||||
#, fuzzy
|
||||
#| msgid "This key overrides the automatic hiding of the 'Log out' menuitem in single-user, single-session situations."
|
||||
msgid "This key overrides the automatic hiding of the 'Log out' menu item in single-user, single-session situations."
|
||||
msgstr "このキーは、単一ユーザー、単一セッション状況で「ログアウト」メニューアイテムを自動的に非表示にする機能よりも優先します。"
|
||||
|
||||
@ -191,7 +184,7 @@ msgstr "使いたいキーボードの種類です。"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
|
||||
msgid "The maximum accuracy level of location."
|
||||
msgstr ""
|
||||
msgstr "場所の最大精度レベルです。"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
|
||||
msgid "Configures the maximum level of location accuracy applications are allowed to see. Valid options are 'off' (disable location tracking), 'country', 'city', 'neighborhood', 'street', and 'exact' (typically requires GPS receiver). Please keep in mind that this only controls what GeoClue will allow applications to see and they can find user's location on their own using network resources (albeit with street-level accuracy at best)."
|
||||
@ -271,33 +264,33 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "サインイン"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "セッションを選択する"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "アカウントが見つかりませんか?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:616
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(たとえば、user あるいは %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "ユーザー名: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:924
|
||||
msgid "Login Window"
|
||||
msgstr "ログインウィンドウ"
|
||||
|
||||
#: ../js/gdm/util.js:322
|
||||
#: ../js/gdm/util.js:323
|
||||
msgid "Authentication error"
|
||||
msgstr "認証エラー"
|
||||
|
||||
#: ../js/gdm/util.js:452
|
||||
#: ../js/gdm/util.js:453
|
||||
msgid "(or swipe finger)"
|
||||
msgstr "(あるいは指でスワイプする)"
|
||||
|
||||
@ -310,32 +303,31 @@ msgid "Could not parse command:"
|
||||
msgstr "次のコマンドは解析できません:"
|
||||
|
||||
#: ../js/misc/util.js:156
|
||||
#, fuzzy, javascript-format
|
||||
#| msgid "Execution of '%s' failed:"
|
||||
#, javascript-format
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "'%s'の実行に失敗しました:"
|
||||
msgstr "”%s”の実行に失敗しました:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "よく使うアプリケーションがここに表示されます"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "常用"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "すべて"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1555
|
||||
#: ../js/ui/appDisplay.js:1567
|
||||
msgid "New Window"
|
||||
msgstr "新しいウィンドウで開く"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1577 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1589 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "お気に入りから削除"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1583
|
||||
#: ../js/ui/appDisplay.js:1595
|
||||
msgid "Add to Favorites"
|
||||
msgstr "お気に入りに追加"
|
||||
|
||||
@ -349,7 +341,7 @@ msgstr "%s をお気に入りに追加しました。"
|
||||
msgid "%s has been removed from your favorites."
|
||||
msgstr "%s をお気に入りから削除しました。"
|
||||
|
||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
|
||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
|
||||
#: ../js/ui/status/system.js:334
|
||||
msgid "Settings"
|
||||
msgstr "設定"
|
||||
@ -519,11 +511,11 @@ msgstr "今週"
|
||||
msgid "Next week"
|
||||
msgstr "来週"
|
||||
|
||||
#: ../js/ui/components/automountManager.js:90
|
||||
#: ../js/ui/components/automountManager.js:91
|
||||
msgid "External drive connected"
|
||||
msgstr "外付けドライブが接続されました"
|
||||
|
||||
#: ../js/ui/components/automountManager.js:101
|
||||
#: ../js/ui/components/automountManager.js:102
|
||||
msgid "External drive disconnected"
|
||||
msgstr "外付けドライブが外されました"
|
||||
|
||||
@ -582,10 +574,9 @@ msgid "Authentication required by wireless network"
|
||||
msgstr "無線ネットワークでは認証が要求されます"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:312
|
||||
#, fuzzy, javascript-format
|
||||
#| msgid "Passwords or encryption keys are required to access the wireless network '%s'."
|
||||
#, javascript-format
|
||||
msgid "Passwords or encryption keys are required to access the wireless network “%s”."
|
||||
msgstr "無線ネットワーク '%s' にアクセスするにはパスワードか、または暗号化キーが必要です。"
|
||||
msgstr "無線ネットワーク ”%s” にアクセスするにはパスワードか、または暗号化キーが必要です。"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:316
|
||||
msgid "Wired 802.1X authentication"
|
||||
@ -616,10 +607,9 @@ msgid "Mobile broadband network password"
|
||||
msgstr "モバイルブロードバンドネットワークのパスワード"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:339
|
||||
#, fuzzy, javascript-format
|
||||
#| msgid "A password is required to connect to '%s'."
|
||||
#, javascript-format
|
||||
msgid "A password is required to connect to “%s”."
|
||||
msgstr "'%s' への接続にパスワードが必要です。"
|
||||
msgstr "”%s” への接続にはパスワードが必要です。"
|
||||
|
||||
#: ../js/ui/components/polkitAgent.js:54
|
||||
msgid "Authentication Required"
|
||||
@ -666,97 +656,77 @@ msgid "Mute"
|
||||
msgstr "ミュート"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:955
|
||||
#, fuzzy
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%H∶%M"
|
||||
#: ../js/ui/components/telepathyClient.js:958
|
||||
msgid "%H∶%M"
|
||||
msgstr "%H∶%M"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 24h format. i.e. "Yesterday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:962
|
||||
#, fuzzy
|
||||
#| msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||
#: ../js/ui/components/telepathyClient.js:965
|
||||
msgid "Yesterday, %H∶%M"
|
||||
msgstr "<b>昨日</b> <b>%H:%M</b>"
|
||||
msgstr "昨日 %H:%M"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 24h format. i.e. "Monday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:969
|
||||
#, fuzzy
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%H∶%M"
|
||||
#: ../js/ui/components/telepathyClient.js:972
|
||||
msgid "%A, %H∶%M"
|
||||
msgstr "%H∶%M"
|
||||
msgstr "%A %H∶%M"
|
||||
|
||||
#. Translators: this is the month name and day number
|
||||
#. followed by a time string in 24h format.
|
||||
#. i.e. "May 25, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:976
|
||||
#, fuzzy
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%H∶%M"
|
||||
#: ../js/ui/components/telepathyClient.js:979
|
||||
msgid "%B %d, %H∶%M"
|
||||
msgstr "%H∶%M"
|
||||
msgstr "%B%-e日 %H∶%M"
|
||||
|
||||
#. Translators: this is the month name, day number, year
|
||||
#. number followed by a time string in 24h format.
|
||||
#. i.e. "May 25 2012, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:982
|
||||
#: ../js/ui/components/telepathyClient.js:985
|
||||
msgid "%B %d %Y, %H∶%M"
|
||||
msgstr ""
|
||||
msgstr "%Y年%B%-e日 %H∶%M"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:991
|
||||
#, fuzzy
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%l∶%M %p"
|
||||
#: ../js/ui/components/telepathyClient.js:994
|
||||
msgid "%l∶%M %p"
|
||||
msgstr "%l∶%M %p"
|
||||
msgstr "%p%l∶%M"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:998
|
||||
#: ../js/ui/components/telepathyClient.js:1001
|
||||
msgid "Yesterday, %l∶%M %p"
|
||||
msgstr ""
|
||||
msgstr "昨日 %p%l∶%M"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 12h format. i.e. "Monday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1005
|
||||
#, fuzzy
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%l∶%M %p"
|
||||
#: ../js/ui/components/telepathyClient.js:1008
|
||||
msgid "%A, %l∶%M %p"
|
||||
msgstr "%l∶%M %p"
|
||||
msgstr "%A %p%l∶%M"
|
||||
|
||||
#. Translators: this is the month name and day number
|
||||
#. followed by a time string in 12h format.
|
||||
#. i.e. "May 25, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1012
|
||||
#, fuzzy
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%l∶%M %p"
|
||||
#: ../js/ui/components/telepathyClient.js:1015
|
||||
msgid "%B %d, %l∶%M %p"
|
||||
msgstr "%l∶%M %p"
|
||||
msgstr "%B%-e日 %p%l∶%M"
|
||||
|
||||
#. Translators: this is the month name, day number, year
|
||||
#. number followed by a time string in 12h format.
|
||||
#. i.e. "May 25 2012, 2:30 pm"*/
|
||||
#: ../js/ui/components/telepathyClient.js:1018
|
||||
#: ../js/ui/components/telepathyClient.js:1021
|
||||
msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr ""
|
||||
msgstr "%Y年%B%-e日 %p%l∶%M"
|
||||
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name. */
|
||||
#: ../js/ui/components/telepathyClient.js:1051
|
||||
#: ../js/ui/components/telepathyClient.js:1054
|
||||
#, javascript-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "%s は %s になりました"
|
||||
|
||||
#. translators: argument is a room name like
|
||||
#. * room@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1154
|
||||
#: ../js/ui/components/telepathyClient.js:1158
|
||||
#, javascript-format
|
||||
msgid "Invitation to %s"
|
||||
msgstr "%s への招待"
|
||||
@ -764,38 +734,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:1162
|
||||
#: ../js/ui/components/telepathyClient.js:1166
|
||||
#, javascript-format
|
||||
msgid "%s is inviting you to join %s"
|
||||
msgstr "%s さんがあなたを %s に招待しています"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1168
|
||||
#: ../js/ui/components/telepathyClient.js:1203
|
||||
#: ../js/ui/components/telepathyClient.js:1237
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
msgid "Decline"
|
||||
msgstr "拒否する"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1174
|
||||
#: ../js/ui/components/telepathyClient.js:1243
|
||||
#: ../js/ui/components/telepathyClient.js:1300
|
||||
msgid "Accept"
|
||||
msgstr "受け入れる"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1189
|
||||
#: ../js/ui/components/telepathyClient.js:1193
|
||||
#, javascript-format
|
||||
msgid "Video call from %s"
|
||||
msgstr "%s さんからビデオでの呼び出し"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1192
|
||||
#: ../js/ui/components/telepathyClient.js:1196
|
||||
#, javascript-format
|
||||
msgid "Call from %s"
|
||||
msgstr "%s さんからの呼び出し"
|
||||
|
||||
#. translators: this is a button label (verb), not a noun */
|
||||
#: ../js/ui/components/telepathyClient.js:1206
|
||||
#: ../js/ui/components/telepathyClient.js:1210
|
||||
msgid "Answer"
|
||||
msgstr "応答"
|
||||
|
||||
@ -804,125 +774,125 @@ msgstr "応答"
|
||||
#. * file name. The string will be something
|
||||
#. * like: "Alice is sending you test.ogg"
|
||||
#. */
|
||||
#: ../js/ui/components/telepathyClient.js:1227
|
||||
#: ../js/ui/components/telepathyClient.js:1231
|
||||
#, javascript-format
|
||||
msgid "%s is sending you %s"
|
||||
msgstr "%s さんがあなたに %s を送信しようとしています"
|
||||
|
||||
#. To translators: The parameter is the contact's alias */
|
||||
#: ../js/ui/components/telepathyClient.js:1256
|
||||
#: ../js/ui/components/telepathyClient.js:1260
|
||||
#, javascript-format
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s さんが、あなたがオンライン状態になったことを知る許可を欲しいと思っています"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Network error"
|
||||
msgstr "ネットワークエラー"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Authentication failed"
|
||||
msgstr "認証失敗"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Encryption error"
|
||||
msgstr "暗号化のエラーです"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate not provided"
|
||||
msgstr "証明書がありません"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "信用のない証明書です"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate expired"
|
||||
msgstr "証明書の有効期限が切れています"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate not activated"
|
||||
msgstr "証明書は利用できません"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "証明書のホスト名が一致しません"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "証明書の指紋が一致しません"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "証明書自身の署名です"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Status is set to offline"
|
||||
msgstr "状態はオフラインに設定されています"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Encryption is not available"
|
||||
msgstr "暗号が利用できません"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "証明書が正しくありません"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been refused"
|
||||
msgstr "接続が拒否されました"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "Connection can't be established"
|
||||
msgstr "接続を確立できませんでした"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid "Connection has been lost"
|
||||
msgstr "接続が失われました"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "このアカウントはすでにサーバーに接続済みです"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid "Connection has been replaced by a new connection using the same resource"
|
||||
msgstr "接続は同じリソースを使って新しい接続で置き換わりました"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "アカウントがサーバーにすでに存在します"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "サーバーがビジー状態にあるため、この接続を処理できません"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "証明書が無効化されました"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid "Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr "証明書が安全でない暗号のアルゴリズムを使っているか、暗号的に弱いです"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1390
|
||||
msgid "The length of the server certificate, or the depth of the server certificate chain, exceed the limits imposed by the cryptography library"
|
||||
msgstr "サーバー証明書の長さや、サーバー証明書のチェーンの深さが暗号ライブラリで規定されている長さを越えています"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1392
|
||||
msgid "Internal error"
|
||||
msgstr "内部エラー"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "%s に接続できません"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1407
|
||||
msgid "View account"
|
||||
msgstr "アカウントを表示"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1439
|
||||
#: ../js/ui/components/telepathyClient.js:1444
|
||||
msgid "Unknown reason"
|
||||
msgstr "原因不明"
|
||||
|
||||
@ -993,7 +963,7 @@ msgstr "電源オフ"
|
||||
#: ../js/ui/endSessionDialog.js:87
|
||||
msgctxt "title"
|
||||
msgid "Install Updates & Power Off"
|
||||
msgstr ""
|
||||
msgstr "更新をインストールして電源オフ"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:89
|
||||
#, javascript-format
|
||||
@ -1004,7 +974,7 @@ msgstr[0] "%d 秒後に自動的にシステムの電源を切ります。"
|
||||
#: ../js/ui/endSessionDialog.js:93
|
||||
msgctxt "checkbox"
|
||||
msgid "Install pending software updates"
|
||||
msgstr ""
|
||||
msgstr "未実行のソフトウェアアップデートをインストールする"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:96 ../js/ui/endSessionDialog.js:113
|
||||
msgctxt "button"
|
||||
@ -1039,9 +1009,6 @@ msgid_plural "The system will automatically restart and install updates in %d se
|
||||
msgstr[0] "%d 秒後にシステムを再起動して更新をインストールします。"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:129
|
||||
#, fuzzy
|
||||
#| msgctxt "button"
|
||||
#| msgid "Restart & Install"
|
||||
msgctxt "button"
|
||||
msgid "Restart & Install"
|
||||
msgstr "再起動とインストール"
|
||||
@ -1049,16 +1016,16 @@ msgstr "再起動とインストール"
|
||||
#: ../js/ui/endSessionDialog.js:130
|
||||
msgctxt "button"
|
||||
msgid "Install & Power Off"
|
||||
msgstr ""
|
||||
msgstr "インストールと電源オフ"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:131
|
||||
msgctxt "checkbox"
|
||||
msgid "Power off after updates are installed"
|
||||
msgstr ""
|
||||
msgstr "更新をインストール後電源をオフにする"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:315
|
||||
msgid "Running on battery power: please plug in before installing updates."
|
||||
msgstr ""
|
||||
msgstr "バッテリーで動作中です: 更新をインストールする前に電源に接続してください。"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:332
|
||||
msgid "Some applications are busy or have unsaved work."
|
||||
@ -1069,13 +1036,13 @@ msgid "Other users are logged in."
|
||||
msgstr "他のユーザーがログインしています。"
|
||||
|
||||
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||
#: ../js/ui/endSessionDialog.js:618
|
||||
#: ../js/ui/endSessionDialog.js:619
|
||||
#, javascript-format
|
||||
msgid "%s (remote)"
|
||||
msgstr "%s (リモート)"
|
||||
|
||||
#. Translators: Console here refers to a tty like a VT console */
|
||||
#: ../js/ui/endSessionDialog.js:621
|
||||
#: ../js/ui/endSessionDialog.js:622
|
||||
#, javascript-format
|
||||
msgid "%s (console)"
|
||||
msgstr "%s (コンソール)"
|
||||
@ -1085,12 +1052,11 @@ msgid "Install"
|
||||
msgstr "インストール"
|
||||
|
||||
#: ../js/ui/extensionDownloader.js:204
|
||||
#, fuzzy, javascript-format
|
||||
#| msgid "Download and install '%s' from extensions.gnome.org?"
|
||||
#, javascript-format
|
||||
msgid "Download and install “%s” from extensions.gnome.org?"
|
||||
msgstr "extensions.gnome.org から '%s' をダウンロードしてインストールしますか?"
|
||||
msgstr "extensions.gnome.org から ”%s” をダウンロードしてインストールしますか?"
|
||||
|
||||
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
|
||||
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
|
||||
msgid "Keyboard"
|
||||
msgstr "キーボード"
|
||||
|
||||
@ -1112,7 +1078,8 @@ msgstr "エラーを非表示"
|
||||
msgid "Show Errors"
|
||||
msgstr "エラーを表示"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "有効"
|
||||
|
||||
@ -1120,8 +1087,8 @@ msgstr "有効"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "無効"
|
||||
|
||||
@ -1177,11 +1144,11 @@ msgstr "メッセージなし"
|
||||
msgid "Message Tray"
|
||||
msgstr "メッセージトレイ"
|
||||
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
#: ../js/ui/messageTray.js:2967
|
||||
msgid "System Information"
|
||||
msgstr "システム情報"
|
||||
|
||||
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
|
||||
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
|
||||
msgctxt "program"
|
||||
msgid "Unknown"
|
||||
msgstr "不明なプログラム"
|
||||
@ -1218,7 +1185,7 @@ msgstr "終了"
|
||||
msgid "Activities"
|
||||
msgstr "アクティビティ"
|
||||
|
||||
#: ../js/ui/panel.js:914
|
||||
#: ../js/ui/panel.js:915
|
||||
msgid "Top Bar"
|
||||
msgstr "トップバー"
|
||||
|
||||
@ -1254,11 +1221,11 @@ msgstr "ロック"
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "画面をロックする必要があります"
|
||||
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
|
||||
msgid "Unable to lock"
|
||||
msgstr "ロックできません"
|
||||
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "アプリケーションによってロックがブロックされました"
|
||||
|
||||
@ -1266,7 +1233,7 @@ msgstr "アプリケーションによってロックがブロックされまし
|
||||
msgid "Searching…"
|
||||
msgstr "検索しています…"
|
||||
|
||||
#: ../js/ui/search.js:646
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "一致するものがありません。"
|
||||
|
||||
@ -1330,11 +1297,11 @@ msgstr "バウンスキー"
|
||||
msgid "Mouse Keys"
|
||||
msgstr "マウスキー"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:143
|
||||
#: ../js/ui/status/accessibility.js:144
|
||||
msgid "High Contrast"
|
||||
msgstr "ハイコントラスト"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:192
|
||||
#: ../js/ui/status/accessibility.js:193
|
||||
msgid "Large Text"
|
||||
msgstr "大きな文字"
|
||||
|
||||
@ -1342,8 +1309,7 @@ msgstr "大きな文字"
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/location.js:60
|
||||
#: ../js/ui/status/location.js:167 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
@ -1373,34 +1339,33 @@ msgid "Show Keyboard Layout"
|
||||
msgstr "キーボードレイアウトの表示"
|
||||
|
||||
#: ../js/ui/status/location.js:53
|
||||
#, fuzzy
|
||||
#| msgid "Notifications"
|
||||
msgid "Location"
|
||||
msgstr "通知"
|
||||
msgstr "場所"
|
||||
|
||||
#: ../js/ui/status/location.js:59 ../js/ui/status/location.js:166
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "オン"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
msgid "Disable"
|
||||
msgstr "無効"
|
||||
|
||||
#: ../js/ui/status/location.js:163 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "オフ"
|
||||
#: ../js/ui/status/location.js:165
|
||||
msgid "Enable"
|
||||
msgstr "有効"
|
||||
|
||||
#: ../js/ui/status/location.js:164 ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "オンにする"
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "使用中"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "< 不明 >"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "オフ"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
#, fuzzy
|
||||
#| msgid "Connect"
|
||||
msgid "Connected"
|
||||
msgstr "接続"
|
||||
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) */
|
||||
@ -1438,10 +1403,8 @@ msgid "connection failed"
|
||||
msgstr "接続失敗"
|
||||
|
||||
#: ../js/ui/status/network.js:467
|
||||
#, fuzzy
|
||||
#| msgid "Wi-Fi Settings"
|
||||
msgid "Wired Settings"
|
||||
msgstr "Wi-Fi 設定"
|
||||
msgstr "有線設定"
|
||||
|
||||
#: ../js/ui/status/network.js:509 ../js/ui/status/network.js:587
|
||||
msgid "Mobile Broadband Settings"
|
||||
@ -1453,39 +1416,31 @@ msgstr "ハードウェア無効"
|
||||
|
||||
#: ../js/ui/status/network.js:595
|
||||
msgid "Use as Internet connection"
|
||||
msgstr ""
|
||||
msgstr "インターネット接続に使用"
|
||||
|
||||
#: ../js/ui/status/network.js:776
|
||||
#, fuzzy
|
||||
#| msgid "Airplane Mode"
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "機内モード"
|
||||
msgstr "機内モードオン"
|
||||
|
||||
#: ../js/ui/status/network.js:777
|
||||
msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr ""
|
||||
msgstr "機内モードがオンになっていると、Wi-Fiは無効になります"
|
||||
|
||||
#: ../js/ui/status/network.js:778
|
||||
#, fuzzy
|
||||
#| msgid "Airplane Mode"
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "機内モード"
|
||||
msgstr "機内モードをオフにする"
|
||||
|
||||
#: ../js/ui/status/network.js:787
|
||||
#, fuzzy
|
||||
#| msgid "Wi-Fi Settings"
|
||||
msgid "Wi-Fi is Off"
|
||||
msgstr "Wi-Fi 設定"
|
||||
msgstr "Wi-Fi オフ"
|
||||
|
||||
#: ../js/ui/status/network.js:788
|
||||
msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr ""
|
||||
msgstr "ネットワークに接続するには Wi-Fi をオンにする必要があります。"
|
||||
|
||||
#: ../js/ui/status/network.js:789
|
||||
#, fuzzy
|
||||
#| msgid "Turn On"
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "オンにする"
|
||||
msgstr "Wi-Fi をオンにする"
|
||||
|
||||
#: ../js/ui/status/network.js:814
|
||||
msgid "Wi-Fi Networks"
|
||||
@ -1501,7 +1456,7 @@ msgstr "ネットワークなし"
|
||||
|
||||
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr ""
|
||||
msgstr "オフにハードウェアスイッチを使用する"
|
||||
|
||||
#: ../js/ui/status/network.js:1136
|
||||
msgid "Select Network"
|
||||
@ -1511,25 +1466,25 @@ msgstr "ネットワークを選択"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Wi-Fi 設定"
|
||||
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "オンにする"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr ""
|
||||
msgstr "アクセスポイント使用中"
|
||||
|
||||
#: ../js/ui/status/network.js:1254
|
||||
#, fuzzy
|
||||
#| msgid "Connection"
|
||||
msgid "Connecting"
|
||||
msgstr "接続"
|
||||
msgstr "接続中"
|
||||
|
||||
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
|
||||
msgid "Network Settings"
|
||||
msgstr "ネットワーク設定"
|
||||
|
||||
#: ../js/ui/status/network.js:1435
|
||||
#, fuzzy
|
||||
#| msgid "Settings"
|
||||
msgid "VPN Settings"
|
||||
msgstr "設定"
|
||||
msgstr "VPN 設定"
|
||||
|
||||
#: ../js/ui/status/network.js:1454
|
||||
msgid "VPN"
|
||||
@ -1581,6 +1536,10 @@ msgstr "バッテリー"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "機内モード"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "オン"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "ユーザーの切り替え"
|
||||
@ -1630,10 +1589,9 @@ msgid "Search"
|
||||
msgstr "検索"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:19
|
||||
#, fuzzy, javascript-format
|
||||
#| msgid "'%s' is ready"
|
||||
#, javascript-format
|
||||
msgid "“%s” is ready"
|
||||
msgstr "'%s' は準備完了です"
|
||||
msgstr "”%s” は準備完了です"
|
||||
|
||||
#: ../js/ui/windowManager.js:56
|
||||
msgid "Do you want to keep these display settings?"
|
||||
@ -1650,7 +1608,7 @@ msgstr "設定を元に戻す"
|
||||
msgid "Keep Changes"
|
||||
msgstr "変更を保存"
|
||||
|
||||
#: ../js/ui/windowManager.js:97
|
||||
#: ../js/ui/windowManager.js:98
|
||||
#, javascript-format
|
||||
msgid "Settings changes will revert in %d second"
|
||||
msgid_plural "Settings changes will revert in %d seconds"
|
||||
@ -1697,10 +1655,9 @@ msgid "List possible modes"
|
||||
msgstr "使用可能なモードを一覧表示する"
|
||||
|
||||
#: ../src/shell-app.c:666
|
||||
#, fuzzy, c-format
|
||||
#| msgid "Failed to launch '%s'"
|
||||
#, c-format
|
||||
msgid "Failed to launch “%s”"
|
||||
msgstr "'%s'の起動に失敗しました"
|
||||
msgstr "”%s”の起動に失敗しました"
|
||||
|
||||
#: ../src/shell-keyring-prompt.c:714
|
||||
msgid "Passwords do not match."
|
||||
@ -1710,7 +1667,7 @@ msgstr "パスワードが一致しません。"
|
||||
msgid "Password cannot be blank"
|
||||
msgstr "パスワードを空白にすることはできません。"
|
||||
|
||||
#: ../src/shell-polkit-authentication-agent.c:343
|
||||
#: ../src/shell-polkit-authentication-agent.c:346
|
||||
msgid "Authentication dialog was dismissed by the user"
|
||||
msgstr "認証ダイアログはユーザーに拒否されました"
|
||||
|
||||
|
293
po/ko.po
293
po/ko.po
@ -18,8 +18,8 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-05 08:30+0000\n"
|
||||
"PO-Revision-Date: 2014-03-05 19:53+0900\n"
|
||||
"POT-Creation-Date: 2014-03-28 20:56+0000\n"
|
||||
"PO-Revision-Date: 2014-03-29 16:13+0900\n"
|
||||
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
|
||||
"Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
|
||||
"Language: Korean\n"
|
||||
@ -108,7 +108,10 @@ msgid ""
|
||||
"GNOME Shell will only load extensions that claim to support the current "
|
||||
"running version. Enabling this option will disable this check and try to "
|
||||
"load all extensions regardless of the versions they claim to support."
|
||||
msgstr "그놈 셸에서 현재 실행 중인 버전을 지원하는 확장 기능만 읽어들입니다. 이 옵션을 사용하면 이 버전 검사를 하지 않고, 지원한다고 지정된 버전에 관계없이 모든 확장 기능을 읽어들입니다."
|
||||
msgstr ""
|
||||
"그놈 셸에서 현재 실행 중인 버전을 지원하는 확장 기능만 읽어들입니다. 이 옵션"
|
||||
"을 사용하면 이 버전 검사를 하지 않고, 지원한다고 지정된 버전에 관계없이 모든 "
|
||||
"확장 기능을 읽어들입니다."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
|
||||
msgid "List of desktop file IDs for favorite applications"
|
||||
@ -136,7 +139,9 @@ msgstr "사용자 메뉴에 '로그아웃' 메뉴 항목을 항상 표시합니
|
||||
msgid ""
|
||||
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
|
||||
"user, single-session situations."
|
||||
msgstr "이 키를 설정하면, 단일 사용자 및 단일 세션에서 '로그아웃' 메뉴 항목 자동 감추기 기능을 사용하지 않습니다."
|
||||
msgstr ""
|
||||
"이 키를 설정하면, 단일 사용자 및 단일 세션에서 '로그아웃' 메뉴 항목 자동 감추"
|
||||
"기 기능을 사용하지 않습니다."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
|
||||
msgid ""
|
||||
@ -225,7 +230,13 @@ msgid ""
|
||||
"receiver). Please keep in mind that this only controls what GeoClue will "
|
||||
"allow applications to see and they can find user's location on their own "
|
||||
"using network resources (albeit with street-level accuracy at best)."
|
||||
msgstr "프로그램에서 확인할 수 있는 위치의 정확도 최대 단계를 설정합니다. 쓸 수 있는 값은 'off'(위치 추적 기능 사용하지 않음), 'country'(국가), 'city'(도시), 'neighborhood'(이웃), 'street'(길), 'exact'(정확한 위치, 보통 GPS 리시버 필요)입니다. 단 이 옵션은 GeoClue를 사용하는 프로그램이 쓸 수 있는 위치 정보만 설정합니다. 그래서 응용 프로그램이 자체적으로 네트워크를 사용해 사용자 위치를 알아낼 수는 있습니다(이 경우 보통 길 위치 정도만 알아낼 수 있지만)."
|
||||
msgstr ""
|
||||
"프로그램에서 확인할 수 있는 위치의 정확도 최대 단계를 설정합니다. 쓸 수 있는 "
|
||||
"값은 'off'(위치 추적 기능 사용하지 않음), 'country'(국가), 'city'(도시), "
|
||||
"'neighborhood'(이웃), 'street'(길), 'exact'(정확한 위치, 보통 GPS 리시버 필"
|
||||
"요)입니다. 단 이 옵션은 GeoClue를 사용하는 프로그램이 쓸 수 있는 위치 정보만 "
|
||||
"설정합니다. 그래서 응용 프로그램이 자체적으로 네트워크를 사용해 사용자 위치"
|
||||
"를 알아낼 수는 있습니다(이 경우 보통 길 위치 정도만 알아낼 수 있지만)."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
|
||||
msgid "The application icon mode."
|
||||
@ -292,7 +303,7 @@ msgstr "위의 콤보상자를 사용해 설정할 확장을 선택하십시오.
|
||||
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:136
|
||||
#: ../js/ui/components/polkitAgent.js:166 ../js/ui/endSessionDialog.js:429
|
||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||
#: ../js/ui/status/network.js:873
|
||||
#: ../js/ui/status/network.js:878
|
||||
msgid "Cancel"
|
||||
msgstr "취소"
|
||||
|
||||
@ -310,25 +321,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "로그인"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "세션 선택"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "목록에 없습니까?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:598
|
||||
#: ../js/gdm/loginDialog.js:614
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(예를 들어, 사용자 또는 %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:603 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "사용자 이름: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:868
|
||||
#: ../js/gdm/loginDialog.js:920
|
||||
msgid "Login Window"
|
||||
msgstr "로그인 창"
|
||||
|
||||
@ -353,27 +364,27 @@ msgstr "명령어를 파싱할 수 없습니다:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "“%s” 실행이 실패했습니다:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "자주 사용하는 프로그램이 여기 나타납니다"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "자주"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "모두"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1552
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "새 창"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1574 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "즐겨찾기에서 제거"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1580
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "즐겨찾기에 추가"
|
||||
|
||||
@ -517,44 +528,44 @@ msgstr "토"
|
||||
msgid "calendar:MY"
|
||||
msgstr "calendar:YM"
|
||||
|
||||
#: ../js/ui/calendar.js:446
|
||||
#: ../js/ui/calendar.js:450
|
||||
msgid "Previous month"
|
||||
msgstr "이전 달"
|
||||
|
||||
#: ../js/ui/calendar.js:456
|
||||
#: ../js/ui/calendar.js:460
|
||||
msgid "Next month"
|
||||
msgstr "다음 달"
|
||||
|
||||
#. Translators: Text to show if there are no events */
|
||||
#: ../js/ui/calendar.js:762
|
||||
#: ../js/ui/calendar.js:772
|
||||
msgid "Nothing Scheduled"
|
||||
msgstr "일정이 없습니다"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||
#: ../js/ui/calendar.js:780
|
||||
#: ../js/ui/calendar.js:790
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%B %d일 %A"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||
#: ../js/ui/calendar.js:783
|
||||
#: ../js/ui/calendar.js:793
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%Y년 %B %d일 %A"
|
||||
|
||||
#: ../js/ui/calendar.js:794
|
||||
#: ../js/ui/calendar.js:804
|
||||
msgid "Today"
|
||||
msgstr "오늘"
|
||||
|
||||
#: ../js/ui/calendar.js:798
|
||||
#: ../js/ui/calendar.js:808
|
||||
msgid "Tomorrow"
|
||||
msgstr "내일"
|
||||
|
||||
#: ../js/ui/calendar.js:809
|
||||
#: ../js/ui/calendar.js:819
|
||||
msgid "This week"
|
||||
msgstr "이번주"
|
||||
|
||||
#: ../js/ui/calendar.js:817
|
||||
#: ../js/ui/calendar.js:827
|
||||
msgid "Next week"
|
||||
msgstr "다음주"
|
||||
|
||||
@ -588,7 +599,7 @@ msgid "Type again:"
|
||||
msgstr "다시 입력하십시오:"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:240
|
||||
#: ../js/ui/status/network.js:317 ../js/ui/status/network.js:876
|
||||
#: ../js/ui/status/network.js:322 ../js/ui/status/network.js:881
|
||||
msgid "Connect"
|
||||
msgstr "연결"
|
||||
|
||||
@ -791,13 +802,13 @@ msgstr "%s 님이 %s에 입장하도록 초대합니다"
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1291
|
||||
msgid "Decline"
|
||||
msgstr "거부"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1296
|
||||
msgid "Accept"
|
||||
msgstr "허용"
|
||||
|
||||
@ -834,97 +845,97 @@ msgstr "%s님이 %s 파일을 보냅니다"
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "연결 상태인지 알 수 있는 권한을 %s님이 요청합니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1342
|
||||
msgid "Network error"
|
||||
msgstr "네트워크 오류"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1344
|
||||
msgid "Authentication failed"
|
||||
msgstr "인증이 실패했습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Encryption error"
|
||||
msgstr "암호화 오류"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Certificate not provided"
|
||||
msgstr "인증서가 없습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "인증서를 신뢰할 수 없습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate expired"
|
||||
msgstr "인증서가 만료되었습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate not activated"
|
||||
msgstr "인증서를 활성화하지 않았습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "인증서 호스트 이름이 맞지 않습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "인증서 핑거프린트가 맞지 않습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "인증서가 자기 서명한 인증서입니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Status is set to offline"
|
||||
msgstr "상태를 오프라인으로 설정"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Encryption is not available"
|
||||
msgstr "암호화를 사용할 수 없습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "인증서가 올바르지 않습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Connection has been refused"
|
||||
msgstr "연결이 거부되었습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Connection can't be established"
|
||||
msgstr "연결할 수 없습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been lost"
|
||||
msgstr "연결이 끊어졌습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "이 계정은 이미 서버에 연결했습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr "같은 자원을 사용하는 새로운 연결로 바꾸었습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "계정이 이미 서버에 있습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "서버가 처리할 작업이 많아 연결을 처리할 수 없습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "인증서를 철회했습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr "인증서가 보안에 취약한 알고리즘을 사용하거나 암호화 기능이 취약합니다."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -932,22 +943,22 @@ msgstr ""
|
||||
"서버 인증서의 길이, 또는 서버 인증서 체인의 단계가 암호화 라이브러리의 제한"
|
||||
"을 넘어갑니다."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid "Internal error"
|
||||
msgstr "내부 오류"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1398
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "%s에 연결할 수 없습니다"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1403
|
||||
msgid "View account"
|
||||
msgstr "계정 보기"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1434
|
||||
#: ../js/ui/components/telepathyClient.js:1440
|
||||
msgid "Unknown reason"
|
||||
msgstr "알 수 없는 이유"
|
||||
|
||||
@ -963,22 +974,22 @@ msgstr "프로그램 표시"
|
||||
msgid "Dash"
|
||||
msgstr "대시보드"
|
||||
|
||||
#: ../js/ui/dateMenu.js:86
|
||||
#: ../js/ui/dateMenu.js:91
|
||||
msgid "Open Calendar"
|
||||
msgstr "달력 열기"
|
||||
|
||||
#: ../js/ui/dateMenu.js:90
|
||||
#: ../js/ui/dateMenu.js:95
|
||||
msgid "Open Clocks"
|
||||
msgstr "시계 열기"
|
||||
|
||||
#: ../js/ui/dateMenu.js:97
|
||||
#: ../js/ui/dateMenu.js:102
|
||||
msgid "Date & Time Settings"
|
||||
msgstr "날짜 및 시각 설정"
|
||||
|
||||
#. Translators: This is the date format to use when the calendar popup is
|
||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||
#. */
|
||||
#: ../js/ui/dateMenu.js:187
|
||||
#: ../js/ui/dateMenu.js:192
|
||||
msgid "%A %B %e, %Y"
|
||||
msgstr "%Y년 %B %e일 %A"
|
||||
|
||||
@ -1110,31 +1121,33 @@ msgstr "설치"
|
||||
#: ../js/ui/extensionDownloader.js:204
|
||||
#, javascript-format
|
||||
msgid "Download and install “%s” from extensions.gnome.org?"
|
||||
msgstr "extensions.gnome.org 사이트에서 “%s” 확장을 다운로드해 설치하시겠습니까?"
|
||||
msgstr ""
|
||||
"extensions.gnome.org 사이트에서 “%s” 확장을 다운로드해 설치하시겠습니까?"
|
||||
|
||||
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
|
||||
msgid "Keyboard"
|
||||
msgstr "키보드"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:641
|
||||
#: ../js/ui/lookingGlass.js:643
|
||||
msgid "No extensions installed"
|
||||
msgstr "확장을 설치하지 않았습니다"
|
||||
|
||||
#. Translators: argument is an extension UUID. */
|
||||
#: ../js/ui/lookingGlass.js:695
|
||||
#: ../js/ui/lookingGlass.js:697
|
||||
#, javascript-format
|
||||
msgid "%s has not emitted any errors."
|
||||
msgstr "%s에서 발생한 에러가 없습니다."
|
||||
|
||||
#: ../js/ui/lookingGlass.js:701
|
||||
#: ../js/ui/lookingGlass.js:703
|
||||
msgid "Hide Errors"
|
||||
msgstr "오류 숨기기"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:705 ../js/ui/lookingGlass.js:765
|
||||
#: ../js/ui/lookingGlass.js:707 ../js/ui/lookingGlass.js:767
|
||||
msgid "Show Errors"
|
||||
msgstr "오류 보이기"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:714
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "사용"
|
||||
|
||||
@ -1142,28 +1155,28 @@ msgstr "사용"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:717 ../js/ui/status/network.js:550
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "사용 않음"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:719
|
||||
#: ../js/ui/lookingGlass.js:721
|
||||
msgid "Error"
|
||||
msgstr "오류"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:721
|
||||
#: ../js/ui/lookingGlass.js:723
|
||||
msgid "Out of date"
|
||||
msgstr "오래 된 버전"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:723
|
||||
#: ../js/ui/lookingGlass.js:725
|
||||
msgid "Downloading"
|
||||
msgstr "다운로드 중"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:747
|
||||
#: ../js/ui/lookingGlass.js:749
|
||||
msgid "View Source"
|
||||
msgstr "소스 보기"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:756
|
||||
#: ../js/ui/lookingGlass.js:758
|
||||
msgid "Web Page"
|
||||
msgstr "웹페이지"
|
||||
|
||||
@ -1199,7 +1212,7 @@ msgstr "메시지 없음"
|
||||
msgid "Message Tray"
|
||||
msgstr "메시지 트레이"
|
||||
|
||||
#: ../js/ui/messageTray.js:2948
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
msgid "System Information"
|
||||
msgstr "시스템 정보"
|
||||
|
||||
@ -1214,11 +1227,11 @@ msgid "%d new message"
|
||||
msgid_plural "%d new messages"
|
||||
msgstr[0] "새 메시지 %d개"
|
||||
|
||||
#: ../js/ui/overview.js:83
|
||||
#: ../js/ui/overview.js:84
|
||||
msgid "Undo"
|
||||
msgstr "실행 취소"
|
||||
|
||||
#: ../js/ui/overview.js:123
|
||||
#: ../js/ui/overview.js:124
|
||||
msgid "Overview"
|
||||
msgstr "개요"
|
||||
|
||||
@ -1226,7 +1239,7 @@ msgstr "개요"
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters. */
|
||||
#: ../js/ui/overview.js:257
|
||||
#: ../js/ui/overview.js:250
|
||||
msgid "Type to search…"
|
||||
msgstr "검색하려면 입력하십시오…"
|
||||
|
||||
@ -1268,27 +1281,27 @@ msgid "%d new notification"
|
||||
msgid_plural "%d new notifications"
|
||||
msgstr[0] "새 알림 %d개"
|
||||
|
||||
#: ../js/ui/screenShield.js:473 ../js/ui/status/system.js:342
|
||||
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:342
|
||||
msgid "Lock"
|
||||
msgstr "잠그기"
|
||||
|
||||
#: ../js/ui/screenShield.js:707
|
||||
#: ../js/ui/screenShield.js:708
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "그놈에서 화면을 잠궈야 합니다"
|
||||
|
||||
#: ../js/ui/screenShield.js:834 ../js/ui/screenShield.js:1301
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
|
||||
msgid "Unable to lock"
|
||||
msgstr "잠글 수 없습니다"
|
||||
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1302
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "프로그램이 잠금을 막았습니다"
|
||||
|
||||
#: ../js/ui/search.js:589
|
||||
#: ../js/ui/search.js:603
|
||||
msgid "Searching…"
|
||||
msgstr "검색하는 중…"
|
||||
|
||||
#: ../js/ui/search.js:632
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "결과가 없습니다."
|
||||
|
||||
@ -1360,29 +1373,28 @@ msgstr "고대비"
|
||||
msgid "Large Text"
|
||||
msgstr "큰 글자"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "블루투스"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:159 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:318 ../js/ui/status/network.js:1225
|
||||
#: ../js/ui/status/network.js:1336 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
msgid "Turn Off"
|
||||
msgstr "끄기"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "블루투스 설정"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:100
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
msgstr[0] "연결된 장치 %d개"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:102 ../js/ui/status/network.js:1253
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "연결되지 않음"
|
||||
|
||||
@ -1394,160 +1406,167 @@ msgstr "밝기"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "키보드 배치 표시"
|
||||
|
||||
#: ../js/ui/status/location.js:52
|
||||
#: ../js/ui/status/location.js:53
|
||||
msgid "Location"
|
||||
msgstr "위치"
|
||||
|
||||
#: ../js/ui/status/location.js:58 ../js/ui/status/location.js:158
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "켜기"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
msgid "Disable"
|
||||
msgstr "사용 않기"
|
||||
|
||||
#: ../js/ui/status/location.js:155 ../js/ui/status/network.js:415
|
||||
#: ../js/ui/status/network.js:1251 ../js/ui/status/network.js:1455
|
||||
msgid "Off"
|
||||
msgstr "끄기"
|
||||
#: ../js/ui/status/location.js:165
|
||||
msgid "Enable"
|
||||
msgstr "사용"
|
||||
|
||||
#: ../js/ui/status/location.js:156 ../js/ui/status/network.js:1225
|
||||
msgid "Turn On"
|
||||
msgstr "켜기"
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "사용 중"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<알 수 없음>"
|
||||
|
||||
#: ../js/ui/status/network.js:417
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "끄기"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
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:421
|
||||
#: ../js/ui/status/network.js:426
|
||||
msgid "unmanaged"
|
||||
msgstr "관리되지 않음"
|
||||
|
||||
#: ../js/ui/status/network.js:423
|
||||
#: ../js/ui/status/network.js:428
|
||||
msgid "disconnecting..."
|
||||
msgstr "연결 끊는 중..."
|
||||
|
||||
#: ../js/ui/status/network.js:429 ../js/ui/status/network.js:1353
|
||||
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
|
||||
msgid "connecting..."
|
||||
msgstr "연결하는 중..."
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password */
|
||||
#: ../js/ui/status/network.js:432 ../js/ui/status/network.js:1356
|
||||
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
|
||||
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:440
|
||||
#: ../js/ui/status/network.js:445
|
||||
msgid "firmware missing"
|
||||
msgstr "펌웨어 없음"
|
||||
|
||||
#. Translators: this is for a network device that cannot be activated (for example it
|
||||
#. is disabled by rfkill, or it has no coverage */
|
||||
#: ../js/ui/status/network.js:444
|
||||
#: ../js/ui/status/network.js:449
|
||||
msgid "unavailable"
|
||||
msgstr "사용 불가"
|
||||
|
||||
#: ../js/ui/status/network.js:446 ../js/ui/status/network.js:1358
|
||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
|
||||
msgid "connection failed"
|
||||
msgstr "연결 실패"
|
||||
|
||||
#: ../js/ui/status/network.js:462
|
||||
#: ../js/ui/status/network.js:467
|
||||
msgid "Wired Settings"
|
||||
msgstr "유선 네트워크 설정"
|
||||
|
||||
#: ../js/ui/status/network.js:504 ../js/ui/status/network.js:582
|
||||
#: ../js/ui/status/network.js:509 ../js/ui/status/network.js:587
|
||||
msgid "Mobile Broadband Settings"
|
||||
msgstr "휴대전화 네트워크 설정"
|
||||
|
||||
#: ../js/ui/status/network.js:546 ../js/ui/status/network.js:1249
|
||||
#: ../js/ui/status/network.js:551 ../js/ui/status/network.js:1258
|
||||
msgid "Hardware Disabled"
|
||||
msgstr "하드웨어 사용 않음"
|
||||
|
||||
#: ../js/ui/status/network.js:590
|
||||
#: ../js/ui/status/network.js:595
|
||||
msgid "Use as Internet connection"
|
||||
msgstr "인터넷 연결에 사용"
|
||||
|
||||
#: ../js/ui/status/network.js:771
|
||||
#: ../js/ui/status/network.js:776
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "비행기 모드 켜짐"
|
||||
|
||||
#: ../js/ui/status/network.js:772
|
||||
#: ../js/ui/status/network.js:777
|
||||
msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr "비행기 모드에서는 와이파이를 사용하지 않습니다."
|
||||
|
||||
#: ../js/ui/status/network.js:773
|
||||
#: ../js/ui/status/network.js:778
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "비행기 모드 끄기"
|
||||
|
||||
#: ../js/ui/status/network.js:782
|
||||
#: ../js/ui/status/network.js:787
|
||||
msgid "Wi-Fi is Off"
|
||||
msgstr "와이파이 꺼짐"
|
||||
|
||||
#: ../js/ui/status/network.js:783
|
||||
#: ../js/ui/status/network.js:788
|
||||
msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr "네트워크에 연결하려면 와이파이를 켜야 합니다."
|
||||
|
||||
#: ../js/ui/status/network.js:784
|
||||
#: ../js/ui/status/network.js:789
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "와이파이 켜기"
|
||||
|
||||
#: ../js/ui/status/network.js:809
|
||||
#: ../js/ui/status/network.js:814
|
||||
msgid "Wi-Fi Networks"
|
||||
msgstr "와이파이 네트워크"
|
||||
|
||||
#: ../js/ui/status/network.js:811
|
||||
#: ../js/ui/status/network.js:816
|
||||
msgid "Select a network"
|
||||
msgstr "네트워크를 선택하십시오"
|
||||
|
||||
#: ../js/ui/status/network.js:840
|
||||
#: ../js/ui/status/network.js:845
|
||||
msgid "No Networks"
|
||||
msgstr "네트워크 없음"
|
||||
|
||||
#: ../js/ui/status/network.js:861 ../js/ui/status/rfkill.js:103
|
||||
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr "끄려면 하드웨어 스위치를 사용하십시오"
|
||||
|
||||
#: ../js/ui/status/network.js:1131
|
||||
#: ../js/ui/status/network.js:1136
|
||||
msgid "Select Network"
|
||||
msgstr "네트워크 선택"
|
||||
|
||||
#: ../js/ui/status/network.js:1137
|
||||
#: ../js/ui/status/network.js:1142
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "와이파이 설정"
|
||||
|
||||
#: ../js/ui/status/network.js:1242
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "켜기"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "핫스팟 사용 중"
|
||||
|
||||
#: ../js/ui/status/network.js:1245
|
||||
#: ../js/ui/status/network.js:1254
|
||||
msgid "Connecting"
|
||||
msgstr "연결하는 중"
|
||||
|
||||
#: ../js/ui/status/network.js:1424 ../js/ui/status/rfkill.js:88
|
||||
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
|
||||
msgid "Network Settings"
|
||||
msgstr "네트워크 설정"
|
||||
|
||||
#: ../js/ui/status/network.js:1426
|
||||
#: ../js/ui/status/network.js:1435
|
||||
msgid "VPN Settings"
|
||||
msgstr "가상사설망 설정"
|
||||
|
||||
#: ../js/ui/status/network.js:1445
|
||||
#: ../js/ui/status/network.js:1454
|
||||
msgid "VPN"
|
||||
msgstr "가상사설망"
|
||||
|
||||
#: ../js/ui/status/network.js:1598
|
||||
#: ../js/ui/status/network.js:1607
|
||||
msgid "Network Manager"
|
||||
msgstr "네트워크 관리"
|
||||
|
||||
#: ../js/ui/status/network.js:1637
|
||||
#: ../js/ui/status/network.js:1646
|
||||
msgid "Connection failed"
|
||||
msgstr "연결이 실패했습니다"
|
||||
|
||||
#: ../js/ui/status/network.js:1638
|
||||
#: ../js/ui/status/network.js:1647
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "네트워크 연결이 실패했습니다"
|
||||
|
||||
@ -1585,6 +1604,10 @@ msgstr "배터리"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "비행기 모드"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "켜기"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "사용자 바꾸기"
|
||||
|
329
po/lv.po
329
po/lv.po
@ -4,22 +4,24 @@
|
||||
# Rudolfs <rudolfs.mazurs@gmail.com>, 2011.
|
||||
# Rūdofls Mazurs <rudolfs.mazurs@gmail.com>, 2011, 2012, 2013, 2014.
|
||||
# Pēteris Krišjānis <pecisk@gmail.com>, 2011.
|
||||
# Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2014.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-07 08:31+0000\n"
|
||||
"PO-Revision-Date: 2014-03-08 11:48+0200\n"
|
||||
"POT-Creation-Date: 2014-04-11 14:54+0000\n"
|
||||
"PO-Revision-Date: 2014-04-12 12:35+0300\n"
|
||||
"Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
|
||||
"Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
|
||||
"Language-Team: Latviešu <lata-l10n@googlegroups.com>\n"
|
||||
"Language: lv\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 != 0 ? 1 : "
|
||||
"2);\n"
|
||||
"X-Generator: Lokalize 1.5\n"
|
||||
"X-Generator: Gtranslator 2.91.6\n"
|
||||
|
||||
#: ../data/50-gnome-shell-system.xml.in.h:1
|
||||
msgid "System"
|
||||
@ -82,16 +84,10 @@ msgstr ""
|
||||
"F2 dialoglodziņu."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
|
||||
#| msgid "Uuids of extensions to enable"
|
||||
msgid "UUIDs of extensions to enable"
|
||||
msgstr "UUID paplašinājumiem, kurus aktivēt"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
|
||||
#| msgid ""
|
||||
#| "GNOME Shell extensions have a uuid property; this key lists extensions "
|
||||
#| "which should be loaded. Any extension that wants to be loaded needs to be "
|
||||
#| "in this list. You can also manipulate this list with the EnableExtension "
|
||||
#| "and DisableExtension DBus methods on org.gnome.Shell."
|
||||
msgid ""
|
||||
"GNOME Shell extensions have a UUID property; this key lists extensions which "
|
||||
"should be loaded. Any extension that wants to be loaded needs to be in this "
|
||||
@ -138,14 +134,10 @@ msgid "History for the looking glass dialog"
|
||||
msgstr "Looking glass dialoglodziņa vēsture"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
|
||||
#| msgid "Always show the 'Log out' menuitem in the user menu."
|
||||
msgid "Always show the 'Log out' menu item in the user menu."
|
||||
msgstr "Lietotāja izvēlnē vienmēr rādīt izvēlnes vienumu “Izrakstīties”."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:12
|
||||
#| msgid ""
|
||||
#| "This key overrides the automatic hiding of the 'Log out' menuitem in "
|
||||
#| "single-user, single-session situations."
|
||||
msgid ""
|
||||
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
|
||||
"user, single-session situations."
|
||||
@ -301,7 +293,6 @@ msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||
msgstr "Peles režīmā aizkavēt fokusa izmaiņas, līdz rādītājs pārstāj kustēties"
|
||||
|
||||
#: ../js/extensionPrefs/main.js:127
|
||||
#, javascript-format
|
||||
msgid "There was an error loading the preferences dialog for %s:"
|
||||
msgstr "Ielādējot %s iestatījumu dialogu, gadījās kļūda:"
|
||||
|
||||
@ -316,7 +307,7 @@ msgstr "Izvēlieties konfigurējamo paplašinājumu no saraksta."
|
||||
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:136
|
||||
#: ../js/ui/components/polkitAgent.js:166 ../js/ui/endSessionDialog.js:429
|
||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||
#: ../js/ui/status/network.js:873
|
||||
#: ../js/ui/status/network.js:878
|
||||
msgid "Cancel"
|
||||
msgstr "Atcelt"
|
||||
|
||||
@ -334,25 +325,24 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Ierakstīties"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Izvēlieties sesiju"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Nav sarakstā?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:598
|
||||
#, javascript-format
|
||||
#: ../js/gdm/loginDialog.js:614
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(piemēram, lietotājs vai %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:603 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Lietotājvārds: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:868
|
||||
#: ../js/gdm/loginDialog.js:920
|
||||
msgid "Login Window"
|
||||
msgstr "Ierakstīšanās logs"
|
||||
|
||||
@ -373,42 +363,38 @@ msgid "Could not parse command:"
|
||||
msgstr "Neizdevās apstrādāt komandu:"
|
||||
|
||||
#: ../js/misc/util.js:156
|
||||
#, javascript-format
|
||||
#| msgid "Execution of '%s' failed:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "“%s” izpilde neizdevās:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Šeit parādīsies biežāk izmantotās lietotnes"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Biežāk izmantotās"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Visas"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1552
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Jauns logs"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1574 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Izņemt no izlases"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1580
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Pievienot izlasei"
|
||||
|
||||
#: ../js/ui/appFavorites.js:87
|
||||
#, javascript-format
|
||||
msgid "%s has been added to your favorites."
|
||||
msgstr "%s ir pievienots izlasei."
|
||||
|
||||
#: ../js/ui/appFavorites.js:121
|
||||
#, javascript-format
|
||||
msgid "%s has been removed from your favorites."
|
||||
msgstr "%s ir izņemts no izlases."
|
||||
|
||||
@ -541,44 +527,44 @@ msgstr "Se"
|
||||
msgid "calendar:MY"
|
||||
msgstr "calendar:YM"
|
||||
|
||||
#: ../js/ui/calendar.js:446
|
||||
#: ../js/ui/calendar.js:450
|
||||
msgid "Previous month"
|
||||
msgstr "Iepriekšējais mēnesis"
|
||||
|
||||
#: ../js/ui/calendar.js:456
|
||||
#: ../js/ui/calendar.js:460
|
||||
msgid "Next month"
|
||||
msgstr "Nākamais mēnesis"
|
||||
|
||||
#. Translators: Text to show if there are no events */
|
||||
#: ../js/ui/calendar.js:763
|
||||
#: ../js/ui/calendar.js:772
|
||||
msgid "Nothing Scheduled"
|
||||
msgstr "Nekas nav ieplānots"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||
#: ../js/ui/calendar.js:781
|
||||
#: ../js/ui/calendar.js:790
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A, %d. %B"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||
#: ../js/ui/calendar.js:784
|
||||
#: ../js/ui/calendar.js:793
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%A, %d. %B, %Y."
|
||||
|
||||
#: ../js/ui/calendar.js:795
|
||||
#: ../js/ui/calendar.js:804
|
||||
msgid "Today"
|
||||
msgstr "Šodien"
|
||||
|
||||
#: ../js/ui/calendar.js:799
|
||||
#: ../js/ui/calendar.js:808
|
||||
msgid "Tomorrow"
|
||||
msgstr "Rīt"
|
||||
|
||||
#: ../js/ui/calendar.js:810
|
||||
#: ../js/ui/calendar.js:819
|
||||
msgid "This week"
|
||||
msgstr "Šonedēļ"
|
||||
|
||||
#: ../js/ui/calendar.js:818
|
||||
#: ../js/ui/calendar.js:827
|
||||
msgid "Next week"
|
||||
msgstr "Nākamnedēļ"
|
||||
|
||||
@ -595,7 +581,6 @@ msgid "Removable Devices"
|
||||
msgstr "Izņemamās ierīces"
|
||||
|
||||
#: ../js/ui/components/autorunManager.js:596
|
||||
#, javascript-format
|
||||
msgid "Open with %s"
|
||||
msgstr "Atvērt ar %s"
|
||||
|
||||
@ -612,7 +597,7 @@ msgid "Type again:"
|
||||
msgstr "Ierakstiet vēlreiz:"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:240
|
||||
#: ../js/ui/status/network.js:317 ../js/ui/status/network.js:876
|
||||
#: ../js/ui/status/network.js:322 ../js/ui/status/network.js:881
|
||||
msgid "Connect"
|
||||
msgstr "Savienot"
|
||||
|
||||
@ -645,10 +630,6 @@ msgid "Authentication required by wireless network"
|
||||
msgstr "Bezvadu tīkls pieprasa autentifikāciju"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:312
|
||||
#, javascript-format
|
||||
#| msgid ""
|
||||
#| "Passwords or encryption keys are required to access the wireless network "
|
||||
#| "'%s'."
|
||||
msgid ""
|
||||
"Passwords or encryption keys are required to access the wireless network "
|
||||
"“%s”."
|
||||
@ -685,8 +666,6 @@ msgid "Mobile broadband network password"
|
||||
msgstr "Mobilās platjoslas tīkla parole"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:339
|
||||
#, javascript-format
|
||||
#| msgid "A password is required to connect to '%s'."
|
||||
msgid "A password is required to connect to “%s”."
|
||||
msgstr "Lai savienotos ar “%s”, ir nepieciešama parole."
|
||||
|
||||
@ -736,23 +715,18 @@ msgstr "Apklusināt"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:955
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%H∶%M"
|
||||
msgid "%H∶%M"
|
||||
msgstr "%H.%M"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 24h format. i.e. "Yesterday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:962
|
||||
#| msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||
msgid "Yesterday, %H∶%M"
|
||||
msgstr "Vakar, %H.%M"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 24h format. i.e. "Monday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:969
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%H∶%M"
|
||||
msgid "%A, %H∶%M"
|
||||
msgstr "%A, %H.%M"
|
||||
|
||||
@ -760,8 +734,6 @@ msgstr "%A, %H.%M"
|
||||
#. followed by a time string in 24h format.
|
||||
#. i.e. "May 25, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:976
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%H∶%M"
|
||||
msgid "%B %d, %H∶%M"
|
||||
msgstr "%d. %B, %H.%M"
|
||||
|
||||
@ -774,8 +746,6 @@ msgstr "%d. %B, %Y., %H.%M"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:991
|
||||
#| msgctxt "event list time"
|
||||
#| msgid "%l∶%M %p"
|
||||
msgid "%l∶%M %p"
|
||||
msgstr "%l.%M %p"
|
||||
|
||||
@ -788,7 +758,6 @@ msgstr "Vakar, %l:%M %p"
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 12h format. i.e. "Monday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1005
|
||||
#| msgid "%a %l:%M %p"
|
||||
msgid "%A, %l∶%M %p"
|
||||
msgstr "%A, %l.%M %p"
|
||||
|
||||
@ -796,7 +765,6 @@ msgstr "%A, %l.%M %p"
|
||||
#. followed by a time string in 12h format.
|
||||
#. i.e. "May 25, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1012
|
||||
#| msgid "%a %b %e, %l:%M %p"
|
||||
msgid "%B %d, %l∶%M %p"
|
||||
msgstr "%d. %B, %l.%M %p"
|
||||
|
||||
@ -804,21 +772,18 @@ msgstr "%d. %B, %l.%M %p"
|
||||
#. number followed by a time string in 12h format.
|
||||
#. i.e. "May 25 2012, 2:30 pm"*/
|
||||
#: ../js/ui/components/telepathyClient.js:1018
|
||||
#| msgid "%a %b %e, %l:%M %p"
|
||||
msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%d. %B, %Y., %l.%M %p"
|
||||
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name. */
|
||||
#: ../js/ui/components/telepathyClient.js:1051
|
||||
#, javascript-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "%s tagad saucas %s"
|
||||
|
||||
#. translators: argument is a room name like
|
||||
#. * room@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1154
|
||||
#, javascript-format
|
||||
msgid "Invitation to %s"
|
||||
msgstr "Ielūgums uz %s"
|
||||
|
||||
@ -826,32 +791,29 @@ msgstr "Ielūgums uz %s"
|
||||
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||
#. * for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1162
|
||||
#, javascript-format
|
||||
msgid "%s is inviting you to join %s"
|
||||
msgstr "%s jūs ielūdz pievienoties %s"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1291
|
||||
msgid "Decline"
|
||||
msgstr "Noraidīt"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1296
|
||||
msgid "Accept"
|
||||
msgstr "Pieņemt"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1189
|
||||
#, javascript-format
|
||||
msgid "Video call from %s"
|
||||
msgstr "Video zvans no %s"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1192
|
||||
#, javascript-format
|
||||
msgid "Call from %s"
|
||||
msgstr "Zvans no %s"
|
||||
|
||||
@ -866,111 +828,109 @@ msgstr "Atbildēt"
|
||||
#. * like: "Alice is sending you test.ogg"
|
||||
#. */
|
||||
#: ../js/ui/components/telepathyClient.js:1227
|
||||
#, javascript-format
|
||||
msgid "%s is sending you %s"
|
||||
msgstr "%s sūta jums %s"
|
||||
|
||||
#. To translators: The parameter is the contact's alias */
|
||||
#: ../js/ui/components/telepathyClient.js:1256
|
||||
#, javascript-format
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s vēlas saņemt atļauju redzēt jūsu tiešsaistes statusu"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1342
|
||||
msgid "Network error"
|
||||
msgstr "Tīkla kļūda"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1344
|
||||
msgid "Authentication failed"
|
||||
msgstr "Autentifikācija neizdevās"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Encryption error"
|
||||
msgstr "Šifrēšanas kļūda"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Nav sertifikāta"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "Neuzticams sertifikāts"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate expired"
|
||||
msgstr "Sertifikāts izbeidzies"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate not activated"
|
||||
msgstr "Sertifikāts nav aktivizēts"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "Sertifikātu servera nosaukumu nesakritība"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "Sertifikāta ciparnospiedumu nesakritība"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "Sertifikāts ir pašparakstīts"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Statuss ir “nesaistē”"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Encryption is not available"
|
||||
msgstr "Šifrēšana nav pieejama"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "Sertifikāts nav derīgs"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Connection has been refused"
|
||||
msgstr "Savienojums atteikts"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Connection can't be established"
|
||||
msgstr "Nevar izveidot savienojumu"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been lost"
|
||||
msgstr "Savienojums pārtrūka"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "Šis konts jau ir savienots ar serveri"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr ""
|
||||
"Savienojums tika aizvietots ar jaunu savienojumu, kurš izmanto to pašu "
|
||||
"resursu"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "Uz servera šāds konts jau ir"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "Serveris ir pārāk aizņemts, lai apstrādātu savienojumu"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "Sertifikāts tika atsaukts"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr ""
|
||||
"Sertifikāts izmanto nedrošu šifrēšanas algoritmu vai arī ir kriptogrāfiski "
|
||||
"vājš"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -978,22 +938,21 @@ msgstr ""
|
||||
"Servera sertifikāta garums vai sertifikāta ķēdes dziļums pārsniedz "
|
||||
"ierobežojumus, ko nosaka kriptogrāfijas bibliotēka"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid "Internal error"
|
||||
msgstr "Iekšēja kļūda"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#, javascript-format
|
||||
#: ../js/ui/components/telepathyClient.js:1398
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "Nevar savienoties ar %s"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1403
|
||||
msgid "View account"
|
||||
msgstr "Skatīt kontu"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1434
|
||||
#: ../js/ui/components/telepathyClient.js:1440
|
||||
msgid "Unknown reason"
|
||||
msgstr "Nezināms iemesls"
|
||||
|
||||
@ -1029,7 +988,6 @@ msgid "%A %B %e, %Y"
|
||||
msgstr "%A, %e. %B, %Y."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:66
|
||||
#, javascript-format
|
||||
msgctxt "title"
|
||||
msgid "Log Out %s"
|
||||
msgstr "Izrakstīt %s"
|
||||
@ -1040,7 +998,6 @@ msgid "Log Out"
|
||||
msgstr "Izrakstīties"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:69
|
||||
#, 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 tiks automātiski izrakstīts no sesijas pēc %d sekundes."
|
||||
@ -1048,7 +1005,6 @@ msgstr[1] "%s tiks automātiski izrakstīts no sesijas pēc %d sekundēm."
|
||||
msgstr[2] "%s tiks automātiski izrakstīts no sesijas pēc %d sekundēm."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:74
|
||||
#, 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] "Jūs tiksiet automātiski izrakstīts no sesijas pēc %d sekundes."
|
||||
@ -1071,7 +1027,6 @@ msgid "Install Updates & Power Off"
|
||||
msgstr "Instalēt atjauninājumus un izslēgt"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:89
|
||||
#, 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] "Sistēma tiks izslēgta automātiski pēc %d sekundes."
|
||||
@ -1099,7 +1054,6 @@ msgid "Restart"
|
||||
msgstr "Pārstartēt"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:107
|
||||
#, javascript-format
|
||||
msgid "The system will restart automatically in %d second."
|
||||
msgid_plural "The system will restart automatically in %d seconds."
|
||||
msgstr[0] "Sistēma tiks automātiski pārstartēta pēc %d sekundes."
|
||||
@ -1112,7 +1066,6 @@ msgid "Restart & Install Updates"
|
||||
msgstr "Pārstartēt un instalēt atjauninājumus"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:123
|
||||
#, 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."
|
||||
@ -1127,8 +1080,6 @@ msgstr[2] ""
|
||||
"sekundēm."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:129
|
||||
#| msgctxt "button"
|
||||
#| msgid "Restart & Install"
|
||||
msgctxt "button"
|
||||
msgid "Restart & Install"
|
||||
msgstr "Pārstartēt un instalēt"
|
||||
@ -1159,13 +1110,11 @@ msgstr "Citi lietotāji ir ierakstījušies."
|
||||
|
||||
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||
#: ../js/ui/endSessionDialog.js:618
|
||||
#, javascript-format
|
||||
msgid "%s (remote)"
|
||||
msgstr "%s (attālināts)"
|
||||
|
||||
#. Translators: Console here refers to a tty like a VT console */
|
||||
#: ../js/ui/endSessionDialog.js:621
|
||||
#, javascript-format
|
||||
msgid "%s (console)"
|
||||
msgstr "%s (konsole)"
|
||||
|
||||
@ -1174,8 +1123,6 @@ msgid "Install"
|
||||
msgstr "Instalēt"
|
||||
|
||||
#: ../js/ui/extensionDownloader.js:204
|
||||
#, javascript-format
|
||||
#| msgid "Download and install '%s' from extensions.gnome.org?"
|
||||
msgid "Download and install “%s” from extensions.gnome.org?"
|
||||
msgstr "Lejupielādēt un instalēt “%s” no extensions.gnome.org?"
|
||||
|
||||
@ -1189,7 +1136,6 @@ msgstr "Nav instalētu paplašinājumu"
|
||||
|
||||
#. Translators: argument is an extension UUID. */
|
||||
#: ../js/ui/lookingGlass.js:697
|
||||
#, javascript-format
|
||||
msgid "%s has not emitted any errors."
|
||||
msgstr "%s nav izdevis nevienu kļūdu."
|
||||
|
||||
@ -1201,7 +1147,8 @@ msgstr "Slēpt kļūdas"
|
||||
msgid "Show Errors"
|
||||
msgstr "Rādīt kļūdas"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Aktivēta"
|
||||
|
||||
@ -1209,8 +1156,8 @@ msgstr "Aktivēta"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:550
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Deaktivēta"
|
||||
|
||||
@ -1266,7 +1213,7 @@ msgstr "Nav ziņojumu"
|
||||
msgid "Message Tray"
|
||||
msgstr "Ziņojumu paplāte"
|
||||
|
||||
#: ../js/ui/messageTray.js:2948
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
msgid "System Information"
|
||||
msgstr "Sistēmas informācija"
|
||||
|
||||
@ -1276,18 +1223,17 @@ msgid "Unknown"
|
||||
msgstr "Nezināma"
|
||||
|
||||
#: ../js/ui/overviewControls.js:483 ../js/ui/screenShield.js:151
|
||||
#, javascript-format
|
||||
msgid "%d new message"
|
||||
msgid_plural "%d new messages"
|
||||
msgstr[0] "%d jauns ziņojums"
|
||||
msgstr[1] "%d jauni ziņojumi"
|
||||
msgstr[2] "%d jaunu ziņojumu"
|
||||
|
||||
#: ../js/ui/overview.js:83
|
||||
#: ../js/ui/overview.js:84
|
||||
msgid "Undo"
|
||||
msgstr "Atsaukt"
|
||||
|
||||
#: ../js/ui/overview.js:123
|
||||
#: ../js/ui/overview.js:124
|
||||
msgid "Overview"
|
||||
msgstr "Pārskats"
|
||||
|
||||
@ -1295,7 +1241,7 @@ msgstr "Pārskats"
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters. */
|
||||
#: ../js/ui/overview.js:257
|
||||
#: ../js/ui/overview.js:250
|
||||
msgid "Type to search…"
|
||||
msgstr "Rakstiet, lai meklētu…"
|
||||
|
||||
@ -1332,34 +1278,33 @@ msgid "%A, %B %d"
|
||||
msgstr "%A, %d. %B"
|
||||
|
||||
#: ../js/ui/screenShield.js:153
|
||||
#, javascript-format
|
||||
msgid "%d new notification"
|
||||
msgid_plural "%d new notifications"
|
||||
msgstr[0] "%d jauns paziņojums"
|
||||
msgstr[1] "%d jauni paziņojumi"
|
||||
msgstr[2] "%d jaunu paziņojumu"
|
||||
|
||||
#: ../js/ui/screenShield.js:473 ../js/ui/status/system.js:342
|
||||
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:342
|
||||
msgid "Lock"
|
||||
msgstr "Bloķēt"
|
||||
|
||||
#: ../js/ui/screenShield.js:707
|
||||
#: ../js/ui/screenShield.js:708
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "GNOME vajag bloķēt ekrānu"
|
||||
|
||||
#: ../js/ui/screenShield.js:834 ../js/ui/screenShield.js:1301
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
|
||||
msgid "Unable to lock"
|
||||
msgstr "Nevar bloķēt"
|
||||
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1302
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "Lietotne neļāva bloķēt"
|
||||
|
||||
#: ../js/ui/search.js:589
|
||||
#: ../js/ui/search.js:603
|
||||
msgid "Searching…"
|
||||
msgstr "Meklē…"
|
||||
|
||||
#: ../js/ui/search.js:632
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Nav rezultātu."
|
||||
|
||||
@ -1431,31 +1376,29 @@ msgstr "Augsts kontrasts"
|
||||
msgid "Large Text"
|
||||
msgstr "Liels teksts"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:159 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:318 ../js/ui/status/network.js:1225
|
||||
#: ../js/ui/status/network.js:1336 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
msgid "Turn Off"
|
||||
msgstr "Izslēgt"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Bluetooth iestatījumi"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:100
|
||||
#, javascript-format
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
msgstr[0] "%d savienota ierīce"
|
||||
msgstr[1] "%d savienotas ierīces"
|
||||
msgstr[2] "%d savienotu ierīču"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:102 ../js/ui/status/network.js:1253
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "Nav savienots"
|
||||
|
||||
@ -1467,169 +1410,169 @@ msgstr "Gaišums"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Rādīt tastatūras izkārtojumu"
|
||||
|
||||
#: ../js/ui/status/location.js:52
|
||||
#| msgid "Notifications"
|
||||
#: ../js/ui/status/location.js:53
|
||||
msgid "Location"
|
||||
msgstr "Atrašanās vieta"
|
||||
|
||||
#: ../js/ui/status/location.js:58 ../js/ui/status/location.js:158
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
#| msgid "Disabled"
|
||||
msgid "Disable"
|
||||
msgstr "Izslēgt"
|
||||
|
||||
#: ../js/ui/status/location.js:165
|
||||
#| msgid "Enabled"
|
||||
msgid "Enable"
|
||||
msgstr "Ieslēgt"
|
||||
|
||||
#: ../js/ui/status/location.js:155 ../js/ui/status/network.js:415
|
||||
#: ../js/ui/status/network.js:1251 ../js/ui/status/network.js:1455
|
||||
msgid "Off"
|
||||
msgstr "Izslēgts"
|
||||
|
||||
#: ../js/ui/status/location.js:156 ../js/ui/status/network.js:1225
|
||||
msgid "Turn On"
|
||||
msgstr "Ieslēgt"
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "Tiek izmantots"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<nezināms>"
|
||||
|
||||
#: ../js/ui/status/network.js:417
|
||||
#| msgid "Connect"
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Izslēgts"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
msgstr "Savienots"
|
||||
|
||||
#. 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:421
|
||||
#: ../js/ui/status/network.js:426
|
||||
msgid "unmanaged"
|
||||
msgstr "nepārvaldīts"
|
||||
|
||||
#: ../js/ui/status/network.js:423
|
||||
#: ../js/ui/status/network.js:428
|
||||
msgid "disconnecting..."
|
||||
msgstr "atvienojas..."
|
||||
|
||||
#: ../js/ui/status/network.js:429 ../js/ui/status/network.js:1353
|
||||
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
|
||||
msgid "connecting..."
|
||||
msgstr "savienojas..."
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password */
|
||||
#: ../js/ui/status/network.js:432 ../js/ui/status/network.js:1356
|
||||
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
|
||||
msgid "authentication required"
|
||||
msgstr "nepieciešama autentifikācija"
|
||||
|
||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||
#. module, which is missing */
|
||||
#: ../js/ui/status/network.js:440
|
||||
#: ../js/ui/status/network.js:445
|
||||
msgid "firmware missing"
|
||||
msgstr "trūkst aparātprogrammatūras"
|
||||
|
||||
#. 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:444
|
||||
#: ../js/ui/status/network.js:449
|
||||
msgid "unavailable"
|
||||
msgstr "nav pieejams"
|
||||
|
||||
#: ../js/ui/status/network.js:446 ../js/ui/status/network.js:1358
|
||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
|
||||
msgid "connection failed"
|
||||
msgstr "savienojums neizdevās"
|
||||
|
||||
#: ../js/ui/status/network.js:462
|
||||
#| msgid "Wi-Fi Settings"
|
||||
#: ../js/ui/status/network.js:467
|
||||
msgid "Wired Settings"
|
||||
msgstr "Vadu tīkla iestatījumi"
|
||||
|
||||
#: ../js/ui/status/network.js:504 ../js/ui/status/network.js:582
|
||||
#: ../js/ui/status/network.js:509 ../js/ui/status/network.js:587
|
||||
msgid "Mobile Broadband Settings"
|
||||
msgstr "Mobilās platjoslas iestatījumi"
|
||||
|
||||
#: ../js/ui/status/network.js:546 ../js/ui/status/network.js:1249
|
||||
#: ../js/ui/status/network.js:551 ../js/ui/status/network.js:1258
|
||||
msgid "Hardware Disabled"
|
||||
msgstr "Izslēgts aparatūrā"
|
||||
|
||||
#: ../js/ui/status/network.js:590
|
||||
#: ../js/ui/status/network.js:595
|
||||
msgid "Use as Internet connection"
|
||||
msgstr "Izmantot kā interneta savienojumu"
|
||||
|
||||
#: ../js/ui/status/network.js:771
|
||||
#| msgid "Airplane Mode"
|
||||
#: ../js/ui/status/network.js:776
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "Lidmašīnas režīms ir ieslēgts"
|
||||
|
||||
#: ../js/ui/status/network.js:772
|
||||
#: ../js/ui/status/network.js:777
|
||||
msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr "Wi-Fi tiek izslēgts, kad ir ieslēgts lidmašīnas režīms."
|
||||
|
||||
#: ../js/ui/status/network.js:773
|
||||
#| msgid "Airplane Mode"
|
||||
#: ../js/ui/status/network.js:778
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "Izslēgt lidmašīnas režīmu"
|
||||
|
||||
#: ../js/ui/status/network.js:782
|
||||
#| msgid "Wi-Fi Settings"
|
||||
#: ../js/ui/status/network.js:787
|
||||
msgid "Wi-Fi is Off"
|
||||
msgstr "Wi-Fi ir izslēgts"
|
||||
|
||||
#: ../js/ui/status/network.js:783
|
||||
#: ../js/ui/status/network.js:788
|
||||
msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr "Lai savienotos ar tīklu, jāieslēdz Wi-Fi."
|
||||
|
||||
#: ../js/ui/status/network.js:784
|
||||
#| msgid "Turn On"
|
||||
#: ../js/ui/status/network.js:789
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "Ieslēgt Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:809
|
||||
#: ../js/ui/status/network.js:814
|
||||
msgid "Wi-Fi Networks"
|
||||
msgstr "Bezvadu tīkli"
|
||||
|
||||
#: ../js/ui/status/network.js:811
|
||||
#: ../js/ui/status/network.js:816
|
||||
msgid "Select a network"
|
||||
msgstr "Izvēlieties tīklu"
|
||||
|
||||
#: ../js/ui/status/network.js:840
|
||||
#: ../js/ui/status/network.js:845
|
||||
msgid "No Networks"
|
||||
msgstr "Nav tīklu"
|
||||
|
||||
#: ../js/ui/status/network.js:861 ../js/ui/status/rfkill.js:103
|
||||
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr "Lai izslēgtu, izmantot aparatūras slēdzi"
|
||||
|
||||
#: ../js/ui/status/network.js:1131
|
||||
#: ../js/ui/status/network.js:1136
|
||||
msgid "Select Network"
|
||||
msgstr "Izvēlieties tīklu"
|
||||
|
||||
#: ../js/ui/status/network.js:1137
|
||||
#: ../js/ui/status/network.js:1142
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Wi-Fi iestatījumi"
|
||||
|
||||
#: ../js/ui/status/network.js:1242
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Ieslēgt"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Tīklājs ir aktīvs"
|
||||
|
||||
#: ../js/ui/status/network.js:1245
|
||||
#| msgid "Connection"
|
||||
#: ../js/ui/status/network.js:1254
|
||||
msgid "Connecting"
|
||||
msgstr "Savienojas"
|
||||
|
||||
#: ../js/ui/status/network.js:1424 ../js/ui/status/rfkill.js:88
|
||||
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
|
||||
msgid "Network Settings"
|
||||
msgstr "Tīkla iestatījumi"
|
||||
|
||||
#: ../js/ui/status/network.js:1426
|
||||
#| msgid "Settings"
|
||||
#: ../js/ui/status/network.js:1435
|
||||
msgid "VPN Settings"
|
||||
msgstr "VPN iestatījumi"
|
||||
|
||||
#: ../js/ui/status/network.js:1445
|
||||
#: ../js/ui/status/network.js:1454
|
||||
msgid "VPN"
|
||||
msgstr "VPN"
|
||||
|
||||
#: ../js/ui/status/network.js:1598
|
||||
#: ../js/ui/status/network.js:1607
|
||||
msgid "Network Manager"
|
||||
msgstr "Tīkla pārvaldnieks"
|
||||
|
||||
#: ../js/ui/status/network.js:1637
|
||||
#: ../js/ui/status/network.js:1646
|
||||
msgid "Connection failed"
|
||||
msgstr "Neizdevās savienoties"
|
||||
|
||||
#: ../js/ui/status/network.js:1638
|
||||
#: ../js/ui/status/network.js:1647
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Neizdevās tīkla savienojuma aktivēšana"
|
||||
|
||||
@ -1646,12 +1589,10 @@ msgid "Estimating…"
|
||||
msgstr "Novērtē…"
|
||||
|
||||
#: ../js/ui/status/power.js:86
|
||||
#, javascript-format
|
||||
msgid "%d∶%02d Remaining (%d%%)"
|
||||
msgstr "Atlicis %d.%02d (%d%%)"
|
||||
|
||||
#: ../js/ui/status/power.js:91
|
||||
#, javascript-format
|
||||
msgid "%d∶%02d Until Full (%d%%)"
|
||||
msgstr "Līdz pilnai %d.%02d (%d%%)"
|
||||
|
||||
@ -1667,6 +1608,10 @@ msgstr "Baterija"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Lidmašīnas režīms"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Ieslēgt"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Mainīt lietotāju"
|
||||
@ -1716,8 +1661,6 @@ msgid "Search"
|
||||
msgstr "Meklēt"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:19
|
||||
#, javascript-format
|
||||
#| msgid "'%s' is ready"
|
||||
msgid "“%s” is ready"
|
||||
msgstr "“%s” ir gatavs"
|
||||
|
||||
@ -1737,7 +1680,6 @@ msgid "Keep Changes"
|
||||
msgstr "Paturēt izmaiņas"
|
||||
|
||||
#: ../js/ui/windowManager.js:97
|
||||
#, javascript-format
|
||||
msgid "Settings changes will revert in %d second"
|
||||
msgid_plural "Settings changes will revert in %d seconds"
|
||||
msgstr[0] "Izmaiņas tiks atgrieztas pēc %d sekundes"
|
||||
@ -1790,7 +1732,6 @@ msgstr "Uzskaitīt iespējamās metodes"
|
||||
|
||||
#: ../src/shell-app.c:666
|
||||
#, c-format
|
||||
#| msgid "Failed to launch '%s'"
|
||||
msgid "Failed to launch “%s”"
|
||||
msgstr "Neizdevās palaist “%s”"
|
||||
|
||||
|
217
po/pl.po
217
po/pl.po
@ -12,8 +12,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2014-03-04 18:14+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 18:15+0100\n"
|
||||
"POT-Creation-Date: 2014-03-27 19:22+0100\n"
|
||||
"PO-Revision-Date: 2014-03-27 19:23+0100\n"
|
||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||
"Language-Team: Polish <gnomepl@aviary.pl>\n"
|
||||
"Language: pl\n"
|
||||
@ -325,7 +325,7 @@ msgstr ""
|
||||
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:136
|
||||
#: ../js/ui/components/polkitAgent.js:166 ../js/ui/endSessionDialog.js:429
|
||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||
#: ../js/ui/status/network.js:873
|
||||
#: ../js/ui/status/network.js:878
|
||||
msgid "Cancel"
|
||||
msgstr "Anuluj"
|
||||
|
||||
@ -343,25 +343,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Zaloguj"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Wybór sesji"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Inny użytkownik?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:598
|
||||
#: ../js/gdm/loginDialog.js:611
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(np. użytkownik lub %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:603 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:616 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Nazwa użytkownika: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:868
|
||||
#: ../js/gdm/loginDialog.js:917
|
||||
msgid "Login Window"
|
||||
msgstr "Okno logowania"
|
||||
|
||||
@ -386,27 +386,27 @@ msgstr "Nie można przetworzyć polecenia:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Wykonanie polecenia \"%s\" się nie powiodło:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "W tym miejscu pojawią się często używane programy"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Często używane"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Wszystkie"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1552
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Nowe okno"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1574 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Usuń z ulubionych"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1580
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Dodaj do ulubionych"
|
||||
|
||||
@ -549,44 +549,44 @@ msgstr "S"
|
||||
msgid "calendar:MY"
|
||||
msgstr "calendar:MY"
|
||||
|
||||
#: ../js/ui/calendar.js:446
|
||||
#: ../js/ui/calendar.js:450
|
||||
msgid "Previous month"
|
||||
msgstr "Poprzedni miesiąc"
|
||||
|
||||
#: ../js/ui/calendar.js:456
|
||||
#: ../js/ui/calendar.js:460
|
||||
msgid "Next month"
|
||||
msgstr "Następny miesiąc"
|
||||
|
||||
#. Translators: Text to show if there are no events */
|
||||
#: ../js/ui/calendar.js:762
|
||||
#: ../js/ui/calendar.js:772
|
||||
msgid "Nothing Scheduled"
|
||||
msgstr "Nic nie zaplanowano"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||
#: ../js/ui/calendar.js:780
|
||||
#: ../js/ui/calendar.js:790
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A, %e %B"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||
#: ../js/ui/calendar.js:783
|
||||
#: ../js/ui/calendar.js:793
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%A, %e %B %Y"
|
||||
|
||||
#: ../js/ui/calendar.js:794
|
||||
#: ../js/ui/calendar.js:804
|
||||
msgid "Today"
|
||||
msgstr "Dzisiaj"
|
||||
|
||||
#: ../js/ui/calendar.js:798
|
||||
#: ../js/ui/calendar.js:808
|
||||
msgid "Tomorrow"
|
||||
msgstr "Jutro"
|
||||
|
||||
#: ../js/ui/calendar.js:809
|
||||
#: ../js/ui/calendar.js:819
|
||||
msgid "This week"
|
||||
msgstr "Ten tydzień"
|
||||
|
||||
#: ../js/ui/calendar.js:817
|
||||
#: ../js/ui/calendar.js:827
|
||||
msgid "Next week"
|
||||
msgstr "Następny tydzień"
|
||||
|
||||
@ -620,7 +620,7 @@ msgid "Type again:"
|
||||
msgstr "Proszę wpisać ponownie:"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:240
|
||||
#: ../js/ui/status/network.js:317 ../js/ui/status/network.js:876
|
||||
#: ../js/ui/status/network.js:322 ../js/ui/status/network.js:881
|
||||
msgid "Connect"
|
||||
msgstr "Połącz"
|
||||
|
||||
@ -984,7 +984,7 @@ msgstr "Nie można połączyć się z kontem %s"
|
||||
msgid "View account"
|
||||
msgstr "Wyświetl konto"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1434
|
||||
#: ../js/ui/components/telepathyClient.js:1439
|
||||
msgid "Unknown reason"
|
||||
msgstr "Nieznana przyczyna"
|
||||
|
||||
@ -1000,22 +1000,22 @@ msgstr "Wyświetl programy"
|
||||
msgid "Dash"
|
||||
msgstr "Ulubione"
|
||||
|
||||
#: ../js/ui/dateMenu.js:86
|
||||
#: ../js/ui/dateMenu.js:91
|
||||
msgid "Open Calendar"
|
||||
msgstr "Otwórz kalendarz"
|
||||
|
||||
#: ../js/ui/dateMenu.js:90
|
||||
#: ../js/ui/dateMenu.js:95
|
||||
msgid "Open Clocks"
|
||||
msgstr "Otwórz zegar"
|
||||
|
||||
#: ../js/ui/dateMenu.js:97
|
||||
#: ../js/ui/dateMenu.js:102
|
||||
msgid "Date & Time Settings"
|
||||
msgstr "Ustawienia daty i czasu"
|
||||
|
||||
#. 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:187
|
||||
#: ../js/ui/dateMenu.js:192
|
||||
msgid "%A %B %e, %Y"
|
||||
msgstr "%A, %e %B %Y"
|
||||
|
||||
@ -1169,25 +1169,26 @@ msgstr ""
|
||||
msgid "Keyboard"
|
||||
msgstr "Klawiatura"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:641
|
||||
#: ../js/ui/lookingGlass.js:643
|
||||
msgid "No extensions installed"
|
||||
msgstr "Nie zainstalowano rozszerzeń"
|
||||
|
||||
#. Translators: argument is an extension UUID. */
|
||||
#: ../js/ui/lookingGlass.js:695
|
||||
#: ../js/ui/lookingGlass.js:697
|
||||
#, javascript-format
|
||||
msgid "%s has not emitted any errors."
|
||||
msgstr "Rozszerzenie %s nie wysłało żadnych błędów."
|
||||
|
||||
#: ../js/ui/lookingGlass.js:701
|
||||
#: ../js/ui/lookingGlass.js:703
|
||||
msgid "Hide Errors"
|
||||
msgstr "Ukryj błędy"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:705 ../js/ui/lookingGlass.js:765
|
||||
#: ../js/ui/lookingGlass.js:707 ../js/ui/lookingGlass.js:767
|
||||
msgid "Show Errors"
|
||||
msgstr "Wyświetl błędy"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:714
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Włączone"
|
||||
|
||||
@ -1195,28 +1196,28 @@ msgstr "Włączone"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:717 ../js/ui/status/network.js:550
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Wyłączone"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:719
|
||||
#: ../js/ui/lookingGlass.js:721
|
||||
msgid "Error"
|
||||
msgstr "Błąd"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:721
|
||||
#: ../js/ui/lookingGlass.js:723
|
||||
msgid "Out of date"
|
||||
msgstr "Nieaktualne"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:723
|
||||
#: ../js/ui/lookingGlass.js:725
|
||||
msgid "Downloading"
|
||||
msgstr "Pobieranie"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:747
|
||||
#: ../js/ui/lookingGlass.js:749
|
||||
msgid "View Source"
|
||||
msgstr "Wyświetl źródło"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:756
|
||||
#: ../js/ui/lookingGlass.js:758
|
||||
msgid "Web Page"
|
||||
msgstr "Strona WWW"
|
||||
|
||||
@ -1252,7 +1253,7 @@ msgstr "Brak wiadomości"
|
||||
msgid "Message Tray"
|
||||
msgstr "Obszar powiadamiania"
|
||||
|
||||
#: ../js/ui/messageTray.js:2948
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
msgid "System Information"
|
||||
msgstr "Informacje systemowe"
|
||||
|
||||
@ -1269,11 +1270,11 @@ msgstr[0] "%d nowa wiadomość"
|
||||
msgstr[1] "%d nowe wiadomości"
|
||||
msgstr[2] "%d nowych wiadomości"
|
||||
|
||||
#: ../js/ui/overview.js:83
|
||||
#: ../js/ui/overview.js:84
|
||||
msgid "Undo"
|
||||
msgstr "Cofnij"
|
||||
|
||||
#: ../js/ui/overview.js:123
|
||||
#: ../js/ui/overview.js:124
|
||||
msgid "Overview"
|
||||
msgstr "Podgląd"
|
||||
|
||||
@ -1281,7 +1282,7 @@ msgstr "Podgląd"
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters. */
|
||||
#: ../js/ui/overview.js:257
|
||||
#: ../js/ui/overview.js:250
|
||||
msgid "Type to search…"
|
||||
msgstr "Wyszukiwanie…"
|
||||
|
||||
@ -1325,27 +1326,27 @@ msgstr[0] "%d nowe powiadomienie"
|
||||
msgstr[1] "%d nowe powiadomienia"
|
||||
msgstr[2] "%d nowych powiadomień"
|
||||
|
||||
#: ../js/ui/screenShield.js:473 ../js/ui/status/system.js:342
|
||||
#: ../js/ui/screenShield.js:474 ../js/ui/status/system.js:342
|
||||
msgid "Lock"
|
||||
msgstr "Zablokuj ekran"
|
||||
|
||||
#: ../js/ui/screenShield.js:707
|
||||
#: ../js/ui/screenShield.js:708
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "Środowisko GNOME musi zablokować ekran"
|
||||
|
||||
#: ../js/ui/screenShield.js:834 ../js/ui/screenShield.js:1301
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
|
||||
msgid "Unable to lock"
|
||||
msgstr "Nie można zablokować"
|
||||
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1302
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "Blokowanie zostało zablokowane przez program"
|
||||
|
||||
#: ../js/ui/search.js:589
|
||||
#: ../js/ui/search.js:603
|
||||
msgid "Searching…"
|
||||
msgstr "Wyszukiwanie…"
|
||||
|
||||
#: ../js/ui/search.js:632
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Brak wyników."
|
||||
|
||||
@ -1417,23 +1418,22 @@ msgstr "Wysoki kontrast"
|
||||
msgid "Large Text"
|
||||
msgstr "Duży tekst"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:159 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:318 ../js/ui/status/network.js:1225
|
||||
#: ../js/ui/status/network.js:1336 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
msgid "Turn Off"
|
||||
msgstr "Wyłącz"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Ustawienia Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:100
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
@ -1441,7 +1441,7 @@ msgstr[0] "%d połączone urządzenie"
|
||||
msgstr[1] "%d połączone urządzenia"
|
||||
msgstr[2] "%d połączonych urządzeń"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:102 ../js/ui/status/network.js:1253
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "Nie połączono"
|
||||
|
||||
@ -1453,160 +1453,167 @@ msgstr "Jasność"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Wyświetl układ klawiatury"
|
||||
|
||||
#: ../js/ui/status/location.js:52
|
||||
#: ../js/ui/status/location.js:53
|
||||
msgid "Location"
|
||||
msgstr "Położenie"
|
||||
|
||||
#: ../js/ui/status/location.js:58 ../js/ui/status/location.js:158
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Włączone"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
msgid "Disable"
|
||||
msgstr "Wyłącz"
|
||||
|
||||
#: ../js/ui/status/location.js:155 ../js/ui/status/network.js:415
|
||||
#: ../js/ui/status/network.js:1251 ../js/ui/status/network.js:1455
|
||||
msgid "Off"
|
||||
msgstr "Wyłączone"
|
||||
|
||||
#: ../js/ui/status/location.js:156 ../js/ui/status/network.js:1225
|
||||
msgid "Turn On"
|
||||
#: ../js/ui/status/location.js:165
|
||||
msgid "Enable"
|
||||
msgstr "Włącz"
|
||||
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "Używane"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<nieznane>"
|
||||
|
||||
#: ../js/ui/status/network.js:417
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Wyłączone"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
msgstr "Połączono"
|
||||
|
||||
#. 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:421
|
||||
#: ../js/ui/status/network.js:426
|
||||
msgid "unmanaged"
|
||||
msgstr "niezarządzane"
|
||||
|
||||
#: ../js/ui/status/network.js:423
|
||||
#: ../js/ui/status/network.js:428
|
||||
msgid "disconnecting..."
|
||||
msgstr "rozłączanie…"
|
||||
|
||||
#: ../js/ui/status/network.js:429 ../js/ui/status/network.js:1353
|
||||
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
|
||||
msgid "connecting..."
|
||||
msgstr "łączenie…"
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password */
|
||||
#: ../js/ui/status/network.js:432 ../js/ui/status/network.js:1356
|
||||
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
|
||||
msgid "authentication required"
|
||||
msgstr "wymagane jest uwierzytelnienie"
|
||||
|
||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||
#. module, which is missing */
|
||||
#: ../js/ui/status/network.js:440
|
||||
#: ../js/ui/status/network.js:445
|
||||
msgid "firmware missing"
|
||||
msgstr "brak oprogramowania sprzętowego"
|
||||
|
||||
#. 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:444
|
||||
#: ../js/ui/status/network.js:449
|
||||
msgid "unavailable"
|
||||
msgstr "niedostępne"
|
||||
|
||||
#: ../js/ui/status/network.js:446 ../js/ui/status/network.js:1358
|
||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
|
||||
msgid "connection failed"
|
||||
msgstr "połączenie się nie powiodło"
|
||||
|
||||
#: ../js/ui/status/network.js:462
|
||||
#: ../js/ui/status/network.js:467
|
||||
msgid "Wired Settings"
|
||||
msgstr "Ustawienia sieci przewodowej"
|
||||
|
||||
#: ../js/ui/status/network.js:504 ../js/ui/status/network.js:582
|
||||
#: ../js/ui/status/network.js:509 ../js/ui/status/network.js:587
|
||||
msgid "Mobile Broadband Settings"
|
||||
msgstr "Ustawienia sieci komórkowej"
|
||||
|
||||
#: ../js/ui/status/network.js:546 ../js/ui/status/network.js:1249
|
||||
#: ../js/ui/status/network.js:551 ../js/ui/status/network.js:1258
|
||||
msgid "Hardware Disabled"
|
||||
msgstr "Sprzęt jest wyłączony"
|
||||
|
||||
#: ../js/ui/status/network.js:590
|
||||
#: ../js/ui/status/network.js:595
|
||||
msgid "Use as Internet connection"
|
||||
msgstr "Użyj jako połączenie internetowe"
|
||||
|
||||
#: ../js/ui/status/network.js:771
|
||||
#: ../js/ui/status/network.js:776
|
||||
msgid "Airplane Mode is On"
|
||||
msgstr "Tryb samolotowy jest włączony"
|
||||
|
||||
#: ../js/ui/status/network.js:772
|
||||
#: ../js/ui/status/network.js:777
|
||||
msgid "Wi-Fi is disabled when airplane mode is on."
|
||||
msgstr "Sieć Wi-Fi jest wyłączona, kiedy tryb samolotowy jest włączony."
|
||||
|
||||
#: ../js/ui/status/network.js:773
|
||||
#: ../js/ui/status/network.js:778
|
||||
msgid "Turn Off Airplane Mode"
|
||||
msgstr "Wyłącz tryb samolotowy"
|
||||
|
||||
#: ../js/ui/status/network.js:782
|
||||
#: ../js/ui/status/network.js:787
|
||||
msgid "Wi-Fi is Off"
|
||||
msgstr "Sieć Wi-Fi jest wyłączona"
|
||||
|
||||
#: ../js/ui/status/network.js:783
|
||||
#: ../js/ui/status/network.js:788
|
||||
msgid "Wi-Fi needs to be turned on in order to connect to a network."
|
||||
msgstr "Wi-Fi musi być włączone, aby połączyć z siecią."
|
||||
|
||||
#: ../js/ui/status/network.js:784
|
||||
#: ../js/ui/status/network.js:789
|
||||
msgid "Turn On Wi-Fi"
|
||||
msgstr "Włącz sieć Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:809
|
||||
#: ../js/ui/status/network.js:814
|
||||
msgid "Wi-Fi Networks"
|
||||
msgstr "Sieci Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:811
|
||||
#: ../js/ui/status/network.js:816
|
||||
msgid "Select a network"
|
||||
msgstr "Wybór sieci"
|
||||
|
||||
#: ../js/ui/status/network.js:840
|
||||
#: ../js/ui/status/network.js:845
|
||||
msgid "No Networks"
|
||||
msgstr "Brak sieci"
|
||||
|
||||
#: ../js/ui/status/network.js:861 ../js/ui/status/rfkill.js:103
|
||||
#: ../js/ui/status/network.js:866 ../js/ui/status/rfkill.js:103
|
||||
msgid "Use hardware switch to turn off"
|
||||
msgstr "Należy użyć przełącznika sprzętowego, aby wyłączyć"
|
||||
|
||||
#: ../js/ui/status/network.js:1131
|
||||
#: ../js/ui/status/network.js:1136
|
||||
msgid "Select Network"
|
||||
msgstr "Wybierz sieć"
|
||||
|
||||
#: ../js/ui/status/network.js:1137
|
||||
#: ../js/ui/status/network.js:1142
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Ustawienia sieci Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:1242
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Włącz"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Hotspot jest aktywny"
|
||||
|
||||
#: ../js/ui/status/network.js:1245
|
||||
#: ../js/ui/status/network.js:1254
|
||||
msgid "Connecting"
|
||||
msgstr "Łączenie"
|
||||
|
||||
#: ../js/ui/status/network.js:1424 ../js/ui/status/rfkill.js:88
|
||||
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
|
||||
msgid "Network Settings"
|
||||
msgstr "Ustawienia sieci"
|
||||
|
||||
#: ../js/ui/status/network.js:1426
|
||||
#: ../js/ui/status/network.js:1435
|
||||
msgid "VPN Settings"
|
||||
msgstr "Ustawienia sieci VPN"
|
||||
|
||||
#: ../js/ui/status/network.js:1445
|
||||
#: ../js/ui/status/network.js:1454
|
||||
msgid "VPN"
|
||||
msgstr "VPN"
|
||||
|
||||
#: ../js/ui/status/network.js:1598
|
||||
#: ../js/ui/status/network.js:1607
|
||||
msgid "Network Manager"
|
||||
msgstr "Menedżer sieci"
|
||||
|
||||
#: ../js/ui/status/network.js:1637
|
||||
#: ../js/ui/status/network.js:1646
|
||||
msgid "Connection failed"
|
||||
msgstr "Połączenie się nie powiodło"
|
||||
|
||||
#: ../js/ui/status/network.js:1638
|
||||
#: ../js/ui/status/network.js:1647
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Aktywacja połączenia sieciowego się nie powiodła"
|
||||
|
||||
@ -1644,6 +1651,10 @@ msgstr "Akumulator"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Tryb samolotowy"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Włączone"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Przełącz użytkownika"
|
||||
|
125
po/pt.po
125
po/pt.po
@ -11,8 +11,8 @@ msgstr ""
|
||||
"Project-Id-Version: 3.8\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-12 18:33+0000\n"
|
||||
"PO-Revision-Date: 2014-03-12 22:30+0100\n"
|
||||
"POT-Creation-Date: 2014-03-27 20:52+0000\n"
|
||||
"PO-Revision-Date: 2014-03-27 21:51+0100\n"
|
||||
"Last-Translator: Tiago S. <almosthumane@portugalmail.pt>\n"
|
||||
"Language-Team: Portuguese <gnome_pt@yahoogroups.com>\n"
|
||||
"Language: pt\n"
|
||||
@ -95,8 +95,8 @@ msgid ""
|
||||
"DisableExtension D-Bus methods on org.gnome.Shell."
|
||||
msgstr ""
|
||||
"As extensões da Interface GNOME têm uma propriedade UUID; esta chave lista "
|
||||
"extensões que deverão ser lidas. Qualquer extensão que deseje ser lida tem de "
|
||||
"estar nesta lista. Pode também manipular esta lista com os métodos D-Bus "
|
||||
"extensões que deverão ser lidas. Qualquer extensão que deseje ser lida tem "
|
||||
"de estar nesta lista. Pode também manipular esta lista com os métodos D-Bus "
|
||||
"EnableExtension e DisableExtension de org.gnome.Shell."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
|
||||
@ -109,9 +109,9 @@ msgid ""
|
||||
"running version. Enabling this option will disable this check and try to "
|
||||
"load all extensions regardless of the versions they claim to support."
|
||||
msgstr ""
|
||||
"A Interface GNOME só irá ler extensões que indiquem suportar a versão "
|
||||
"atual. Ativar esta opção irá desativar esta verificação e tentará ler todas "
|
||||
"as extensões, independentemente das versões que elas indiquem suportar."
|
||||
"A Interface GNOME só irá ler extensões que indiquem suportar a versão atual. "
|
||||
"Ativar esta opção irá desativar esta verificação e tentará ler todas as "
|
||||
"extensões, independentemente das versões que elas indiquem suportar."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
|
||||
msgid "List of desktop file IDs for favorite applications"
|
||||
@ -237,12 +237,12 @@ msgid ""
|
||||
"using network resources (albeit with street-level accuracy at best)."
|
||||
msgstr ""
|
||||
"Configura o nível máximo de precisão de localização que é permitido às "
|
||||
"aplicações ver. Opções válidas são 'off' (desativa o rastreamento de posição), "
|
||||
"'country' (país), 'city' (cidade), 'neighborhood' (bairro), 'street' (rua) e "
|
||||
"'exact' (exata) (por norma requer um receptor GPS). Note que isto apenas "
|
||||
"controla o que o GeoClue irá permitir às aplicações ver e elas poderão "
|
||||
"encontrar a localização do utilizador por si, utilizando recursos de rede "
|
||||
"(com uma precisão máxima de nível de rua)."
|
||||
"aplicações ver. Opções válidas são 'off' (desativa o rastreamento de "
|
||||
"posição), 'country' (país), 'city' (cidade), 'neighborhood' (bairro), "
|
||||
"'street' (rua) e 'exact' (exata) (por norma requer um receptor GPS). Note "
|
||||
"que isto apenas controla o que o GeoClue irá permitir às aplicações ver e "
|
||||
"elas poderão encontrar a localização do utilizador por si, utilizando "
|
||||
"recursos de rede (com uma precisão máxima de nível de rua)."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
|
||||
msgid "The application icon mode."
|
||||
@ -332,25 +332,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Iniciar Sessão"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Selecionar Sessão"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Não está listada?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:611
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(por ex., utilizador ou %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:616 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Utilizador: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:917
|
||||
msgid "Login Window"
|
||||
msgstr "Janela de Início de Sessão"
|
||||
|
||||
@ -375,27 +375,27 @@ msgstr "Incapaz de processar o comando:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Falha ao executar “%s”:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "As aplicações frequentemente utilizadas irão ser apresentadas aqui"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Frequente"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Todas"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1552
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Nova Janela"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1574 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Remover dos Favoritos"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1580
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Adicionar aos Favoritos"
|
||||
|
||||
@ -538,44 +538,44 @@ msgstr "Sáb"
|
||||
msgid "calendar:MY"
|
||||
msgstr "calendário:MY"
|
||||
|
||||
#: ../js/ui/calendar.js:448
|
||||
#: ../js/ui/calendar.js:450
|
||||
msgid "Previous month"
|
||||
msgstr "Mês anterior"
|
||||
|
||||
#: ../js/ui/calendar.js:458
|
||||
#: ../js/ui/calendar.js:460
|
||||
msgid "Next month"
|
||||
msgstr "Mês seguinte"
|
||||
|
||||
#. Translators: Text to show if there are no events */
|
||||
#: ../js/ui/calendar.js:770
|
||||
#: ../js/ui/calendar.js:772
|
||||
msgid "Nothing Scheduled"
|
||||
msgstr "Nada Agendado"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||
#: ../js/ui/calendar.js:788
|
||||
#: ../js/ui/calendar.js:790
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A, %B %d"
|
||||
|
||||
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||
#: ../js/ui/calendar.js:791
|
||||
#: ../js/ui/calendar.js:793
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%A, %B %d, %Y"
|
||||
|
||||
#: ../js/ui/calendar.js:802
|
||||
#: ../js/ui/calendar.js:804
|
||||
msgid "Today"
|
||||
msgstr "Hoje"
|
||||
|
||||
#: ../js/ui/calendar.js:806
|
||||
#: ../js/ui/calendar.js:808
|
||||
msgid "Tomorrow"
|
||||
msgstr "Amanhã"
|
||||
|
||||
#: ../js/ui/calendar.js:817
|
||||
#: ../js/ui/calendar.js:819
|
||||
msgid "This week"
|
||||
msgstr "Esta semana"
|
||||
|
||||
#: ../js/ui/calendar.js:825
|
||||
#: ../js/ui/calendar.js:827
|
||||
msgid "Next week"
|
||||
msgstr "Próxima semana"
|
||||
|
||||
@ -1171,7 +1171,8 @@ msgstr "Esconder Erros"
|
||||
msgid "Show Errors"
|
||||
msgstr "Apresentar Erros"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Ativo"
|
||||
|
||||
@ -1179,8 +1180,8 @@ msgstr "Ativo"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Inativo"
|
||||
|
||||
@ -1236,7 +1237,7 @@ msgstr "Nenhuma Mensagem"
|
||||
msgid "Message Tray"
|
||||
msgstr "Zona de Notificações"
|
||||
|
||||
#: ../js/ui/messageTray.js:2957
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
msgid "System Information"
|
||||
msgstr "Informação do Sistema"
|
||||
|
||||
@ -1327,7 +1328,7 @@ msgstr "Trancar foi bloqueado por uma aplicação"
|
||||
msgid "Searching…"
|
||||
msgstr "A Procurar…"
|
||||
|
||||
#: ../js/ui/search.js:646
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Nenhum resultado."
|
||||
|
||||
@ -1399,30 +1400,29 @@ msgstr "Alto Contraste"
|
||||
msgid "Large Text"
|
||||
msgstr "Texto Grande"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:159 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
msgid "Turn Off"
|
||||
msgstr "Desligar"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Definições Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:100
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
msgstr[0] "%d Dispositivo Ligado"
|
||||
msgstr[1] "%d Dispositivos Ligados"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:102 ../js/ui/status/network.js:1262
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "Desligado"
|
||||
|
||||
@ -1434,28 +1434,33 @@ msgstr "Luminosidade"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Apresentar a Disposição de Teclado"
|
||||
|
||||
#: ../js/ui/status/location.js:52
|
||||
#: ../js/ui/status/location.js:53
|
||||
msgid "Location"
|
||||
msgstr "Localização"
|
||||
|
||||
#: ../js/ui/status/location.js:58 ../js/ui/status/location.js:158
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Ligado"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
#| msgid "Disabled"
|
||||
msgid "Disable"
|
||||
msgstr "Desativar"
|
||||
|
||||
#: ../js/ui/status/location.js:155 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Desligado"
|
||||
#: ../js/ui/status/location.js:165
|
||||
#| msgid "Enabled"
|
||||
msgid "Enable"
|
||||
msgstr "Ativar"
|
||||
|
||||
#: ../js/ui/status/location.js:156 ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Ligar"
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "Em Uso"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<desconhecido>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Desligado"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
msgstr "Ligado"
|
||||
@ -1559,6 +1564,10 @@ msgstr "Selecionar Rede"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Definições de Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Ligar"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Hotspot Ativo"
|
||||
@ -1625,6 +1634,10 @@ msgstr "Bateria"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Modo Avião"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Ligado"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Alternar Utilizador"
|
||||
|
624
po/pt_BR.po
624
po/pt_BR.po
File diff suppressed because it is too large
Load Diff
228
po/ru.po
228
po/ru.po
@ -18,17 +18,17 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-11 17:10+0000\n"
|
||||
"PO-Revision-Date: 2014-03-20 23:00+0300\n"
|
||||
"Last-Translator: Yuri Myasoedov <omerta13@yandex.ru>\n"
|
||||
"POT-Creation-Date: 2014-03-31 07:57+0000\n"
|
||||
"PO-Revision-Date: 2014-03-31 18:47+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.4\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"
|
||||
@ -303,6 +303,7 @@ msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||
msgstr "Задержка изменения фокуса в режиме мыши после остановки указателя"
|
||||
|
||||
#: ../js/extensionPrefs/main.js:127
|
||||
#, javascript-format
|
||||
msgid "There was an error loading the preferences dialog for %s:"
|
||||
msgstr "Возникла ошибка загрузки диалогового окна параметров для %s:"
|
||||
|
||||
@ -335,24 +336,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Войти"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Выбрать сеанс"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Нет в списке?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:614
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(например, пользователь или %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Имя пользователя: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:920
|
||||
msgid "Login Window"
|
||||
msgstr "Окно входа в систему"
|
||||
|
||||
@ -373,38 +375,41 @@ msgid "Could not parse command:"
|
||||
msgstr "Не удалось разобрать команду:"
|
||||
|
||||
#: ../js/misc/util.js:156
|
||||
#, javascript-format
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Не удалось выполнить «%s»:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Здесь появляются часто используемые приложения"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Популярные"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Все"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1552
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Новое окно"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1574 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Удалить из избранного"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1580
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Добавить в избранное"
|
||||
|
||||
#: ../js/ui/appFavorites.js:87
|
||||
#, javascript-format
|
||||
msgid "%s has been added to your favorites."
|
||||
msgstr "Приложение %s добавлено в избранное."
|
||||
|
||||
#: ../js/ui/appFavorites.js:121
|
||||
#, javascript-format
|
||||
msgid "%s has been removed from your favorites."
|
||||
msgstr "Приложение %s удалено из избранного."
|
||||
|
||||
@ -537,46 +542,46 @@ msgstr "Сб"
|
||||
msgid "calendar:MY"
|
||||
msgstr "calendar:MY"
|
||||
|
||||
#: ../js/ui/calendar.js:448
|
||||
#: ../js/ui/calendar.js:450
|
||||
msgid "Previous month"
|
||||
msgstr "Предыдущий месяц"
|
||||
|
||||
#: ../js/ui/calendar.js:458
|
||||
#: ../js/ui/calendar.js:460
|
||||
msgid "Next month"
|
||||
msgstr "Следующий месяц"
|
||||
|
||||
#. Translators: Text to show if there are no events */
|
||||
#: ../js/ui/calendar.js:770
|
||||
#: ../js/ui/calendar.js:772
|
||||
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:788
|
||||
#: ../js/ui/calendar.js:790
|
||||
msgctxt "calendar heading"
|
||||
msgid "%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:791
|
||||
#: ../js/ui/calendar.js:793
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%A, %d %b., %Y"
|
||||
|
||||
#: ../js/ui/calendar.js:802
|
||||
#: ../js/ui/calendar.js:804
|
||||
msgid "Today"
|
||||
msgstr "Сегодня"
|
||||
|
||||
#: ../js/ui/calendar.js:806
|
||||
#: ../js/ui/calendar.js:808
|
||||
msgid "Tomorrow"
|
||||
msgstr "Завтра"
|
||||
|
||||
#: ../js/ui/calendar.js:817
|
||||
#: ../js/ui/calendar.js:819
|
||||
msgid "This week"
|
||||
msgstr "Эта неделя"
|
||||
|
||||
#: ../js/ui/calendar.js:825
|
||||
#: ../js/ui/calendar.js:827
|
||||
msgid "Next week"
|
||||
msgstr "Следующая неделя"
|
||||
|
||||
@ -593,6 +598,7 @@ msgid "Removable Devices"
|
||||
msgstr "Съёмные устройства"
|
||||
|
||||
#: ../js/ui/components/autorunManager.js:596
|
||||
#, javascript-format
|
||||
msgid "Open with %s"
|
||||
msgstr "Открыть с помощью %s"
|
||||
|
||||
@ -642,6 +648,7 @@ msgid "Authentication required by wireless network"
|
||||
msgstr "Беспроводная сеть требует подтверждения подлинности"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:312
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Passwords or encryption keys are required to access the wireless network "
|
||||
"“%s”."
|
||||
@ -677,6 +684,7 @@ msgid "Mobile broadband network password"
|
||||
msgstr "Пароль для мобильной широкополосной сети"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:339
|
||||
#, javascript-format
|
||||
msgid "A password is required to connect to “%s”."
|
||||
msgstr "Для подключения к «%s» требуется пароль."
|
||||
|
||||
@ -794,12 +802,14 @@ msgstr "%d %b., %Y, %l∶%M %p"
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name. */
|
||||
#: ../js/ui/components/telepathyClient.js:1051
|
||||
#, javascript-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "%s теперь известен как %s"
|
||||
|
||||
#. translators: argument is a room name like
|
||||
#. * room@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1154
|
||||
#, javascript-format
|
||||
msgid "Invitation to %s"
|
||||
msgstr "Приглашение в %s"
|
||||
|
||||
@ -807,29 +817,32 @@ msgstr "Приглашение в %s"
|
||||
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||
#. * for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1162
|
||||
#, javascript-format
|
||||
msgid "%s is inviting you to join %s"
|
||||
msgstr "%s приглашает вас присоединиться к %s"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1291
|
||||
msgid "Decline"
|
||||
msgstr "Отказаться"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1296
|
||||
msgid "Accept"
|
||||
msgstr "Принять"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1189
|
||||
#, javascript-format
|
||||
msgid "Video call from %s"
|
||||
msgstr "Видеозвонок от %s"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1192
|
||||
#, javascript-format
|
||||
msgid "Call from %s"
|
||||
msgstr "Вас вызывает %s"
|
||||
|
||||
@ -844,108 +857,110 @@ msgstr "Ответить"
|
||||
#. * like: "Alice is sending you test.ogg"
|
||||
#. */
|
||||
#: ../js/ui/components/telepathyClient.js:1227
|
||||
#, javascript-format
|
||||
msgid "%s is sending you %s"
|
||||
msgstr "%s отправляет вам %s"
|
||||
|
||||
#. To translators: The parameter is the contact's alias */
|
||||
#: ../js/ui/components/telepathyClient.js:1256
|
||||
#, javascript-format
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s хотел бы получить разрешение видеть, когда вы в сети"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1342
|
||||
msgid "Network error"
|
||||
msgstr "Ошибка сети"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1344
|
||||
msgid "Authentication failed"
|
||||
msgstr "Ошибка аутентификации"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Encryption error"
|
||||
msgstr "Ошибка шифрования"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Сертификат не предоставляется"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "Недоверенный сертификат"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate expired"
|
||||
msgstr "Срок действия сертификата истёк"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate not activated"
|
||||
msgstr "Сертификат не активирован"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "Имя узла сертификата не совпадает"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "Отпечаток сертификата не совпадает"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "Самоподписанный сертификат"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Установлен статус «не в сети»"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Encryption is not available"
|
||||
msgstr "Шифрование недоступно"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "Недействительный сертификат"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Connection has been refused"
|
||||
msgstr "В соединении отказано"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Connection can't be established"
|
||||
msgstr "Соединение не может быть установлено"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been lost"
|
||||
msgstr "Соединение потеряно"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "Эта учётная запись уже подключена к серверу"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr "Соединение было заменено новым, используя тот же источник"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "Учётная запись уже существует на сервере"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr ""
|
||||
"Сервер в настоящее время сильно перегружен, чтобы обработать соединение"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "Сертификат аннулирован"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr ""
|
||||
"Сертификат использует небезопасный алгоритм шифрования или он "
|
||||
"криптографически нестоек"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -953,21 +968,22 @@ msgstr ""
|
||||
"Длина сертификата сервера, или глубина цепочки сертификатов сервера, "
|
||||
"превышает пределы, установленные библиотекой криптографии"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid "Internal error"
|
||||
msgstr "Внутренняя ошибка"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1398
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "Не удалось подключиться к %s"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1403
|
||||
msgid "View account"
|
||||
msgstr "Показать учётную запись"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1434
|
||||
#: ../js/ui/components/telepathyClient.js:1440
|
||||
msgid "Unknown reason"
|
||||
msgstr "Неизвестная причина"
|
||||
|
||||
@ -1004,6 +1020,7 @@ msgid "%A %B %e, %Y"
|
||||
msgstr "%A, %e %b., %Y"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:66
|
||||
#, javascript-format
|
||||
msgctxt "title"
|
||||
msgid "Log Out %s"
|
||||
msgstr "Завершение сеанса пользователя %s"
|
||||
@ -1014,6 +1031,7 @@ msgid "Log Out"
|
||||
msgstr "Завершение сеанса"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:69
|
||||
#, 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] ""
|
||||
@ -1023,6 +1041,7 @@ msgstr[1] ""
|
||||
msgstr[2] "Сеанс пользователя %s будет автоматически завершён через %d секунд."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:74
|
||||
#, 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] "Сеанс будет автоматически завершён через %d секунду."
|
||||
@ -1045,6 +1064,7 @@ msgid "Install Updates & Power Off"
|
||||
msgstr "Установить обновления и выключить"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:89
|
||||
#, 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 секунду."
|
||||
@ -1072,6 +1092,7 @@ msgid "Restart"
|
||||
msgstr "Перезапуск"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:107
|
||||
#, javascript-format
|
||||
msgid "The system will restart automatically in %d second."
|
||||
msgid_plural "The system will restart automatically in %d seconds."
|
||||
msgstr[0] "Система будет автоматически перезапущена через %d секунду."
|
||||
@ -1084,6 +1105,7 @@ msgid "Restart & Install Updates"
|
||||
msgstr "Перезапуск и установка обновлений"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:123
|
||||
#, 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."
|
||||
@ -1125,11 +1147,13 @@ msgstr "В системе имеются открытые сеансы друг
|
||||
|
||||
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||
#: ../js/ui/endSessionDialog.js:618
|
||||
#, javascript-format
|
||||
msgid "%s (remote)"
|
||||
msgstr "%s (удалённый)"
|
||||
|
||||
#. Translators: Console here refers to a tty like a VT console */
|
||||
#: ../js/ui/endSessionDialog.js:621
|
||||
#, javascript-format
|
||||
msgid "%s (console)"
|
||||
msgstr "%s (консоль)"
|
||||
|
||||
@ -1138,6 +1162,7 @@ msgid "Install"
|
||||
msgstr "Установить"
|
||||
|
||||
#: ../js/ui/extensionDownloader.js:204
|
||||
#, javascript-format
|
||||
msgid "Download and install “%s” from extensions.gnome.org?"
|
||||
msgstr "Загрузить и установить расширение «%s» из extensions.gnome.org?"
|
||||
|
||||
@ -1151,6 +1176,7 @@ msgstr "Расширения не установлены"
|
||||
|
||||
#. Translators: argument is an extension UUID. */
|
||||
#: ../js/ui/lookingGlass.js:697
|
||||
#, javascript-format
|
||||
msgid "%s has not emitted any errors."
|
||||
msgstr "%s не сообщал о каких-либо ошибках."
|
||||
|
||||
@ -1162,7 +1188,8 @@ msgstr "Скрыть ошибки"
|
||||
msgid "Show Errors"
|
||||
msgstr "Показать ошибки"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Включено"
|
||||
|
||||
@ -1170,8 +1197,8 @@ msgstr "Включено"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Выключено"
|
||||
|
||||
@ -1227,7 +1254,7 @@ msgstr "Нет сообщений"
|
||||
msgid "Message Tray"
|
||||
msgstr "Панель сообщений"
|
||||
|
||||
#: ../js/ui/messageTray.js:2948
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
msgid "System Information"
|
||||
msgstr "Системная информация"
|
||||
|
||||
@ -1237,6 +1264,7 @@ msgid "Unknown"
|
||||
msgstr "Неизвестно"
|
||||
|
||||
#: ../js/ui/overviewControls.js:483 ../js/ui/screenShield.js:151
|
||||
#, javascript-format
|
||||
msgid "%d new message"
|
||||
msgid_plural "%d new messages"
|
||||
msgstr[0] "%d новое сообщение"
|
||||
@ -1293,6 +1321,7 @@ msgid "%A, %B %d"
|
||||
msgstr "%A, %d %b., %Y"
|
||||
|
||||
#: ../js/ui/screenShield.js:153
|
||||
#, javascript-format
|
||||
msgid "%d new notification"
|
||||
msgid_plural "%d new notifications"
|
||||
msgstr[0] "%d новое уведомление"
|
||||
@ -1315,11 +1344,11 @@ msgstr "Не удалось заблокировать"
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "Блокировке помешало приложение"
|
||||
|
||||
#: ../js/ui/search.js:589
|
||||
#: ../js/ui/search.js:603
|
||||
msgid "Searching…"
|
||||
msgstr "Поиск…"
|
||||
|
||||
#: ../js/ui/search.js:632
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Нет результатов."
|
||||
|
||||
@ -1391,30 +1420,30 @@ msgstr "Высокая контрастность"
|
||||
msgid "Large Text"
|
||||
msgstr "Крупный текст"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:159 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1230
|
||||
#: ../js/ui/status/network.js:1341 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
msgid "Turn Off"
|
||||
msgstr "Выключить"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Настроить Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:100
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
msgstr[0] "Подключено %d устройство"
|
||||
msgstr[1] "Подключено %d устройства"
|
||||
msgstr[2] "Подключено %d устройств"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:102 ../js/ui/status/network.js:1258
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "Не подключено"
|
||||
|
||||
@ -1426,28 +1455,31 @@ msgstr "Яркость"
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Показать раскладку клавиатуры"
|
||||
|
||||
#: ../js/ui/status/location.js:52
|
||||
#: ../js/ui/status/location.js:53
|
||||
msgid "Location"
|
||||
msgstr "Местоположение"
|
||||
|
||||
#: ../js/ui/status/location.js:58 ../js/ui/status/location.js:158
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Включено"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
msgid "Disable"
|
||||
msgstr "Выключить"
|
||||
|
||||
#: ../js/ui/status/location.js:155 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1256 ../js/ui/status/network.js:1460
|
||||
msgid "Off"
|
||||
msgstr "Выключено"
|
||||
|
||||
#: ../js/ui/status/location.js:156 ../js/ui/status/network.js:1230
|
||||
msgid "Turn On"
|
||||
#: ../js/ui/status/location.js:165
|
||||
msgid "Enable"
|
||||
msgstr "Включить"
|
||||
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "Используется"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<неизвестно>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Выключено"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
msgstr "Подключено"
|
||||
@ -1462,12 +1494,12 @@ msgstr "не управляется"
|
||||
msgid "disconnecting..."
|
||||
msgstr "отключение…"
|
||||
|
||||
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1358
|
||||
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
|
||||
msgid "connecting..."
|
||||
msgstr "подключение…"
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password */
|
||||
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1361
|
||||
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
|
||||
msgid "authentication required"
|
||||
msgstr "требуется подтверждение подлинности"
|
||||
|
||||
@ -1483,7 +1515,7 @@ msgstr "отсутствует прошивка"
|
||||
msgid "unavailable"
|
||||
msgstr "недоступное"
|
||||
|
||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1363
|
||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
|
||||
msgid "connection failed"
|
||||
msgstr "сбой подключения"
|
||||
|
||||
@ -1495,7 +1527,7 @@ msgstr "Параметры проводных соединений"
|
||||
msgid "Mobile Broadband Settings"
|
||||
msgstr "Параметры широкополосной мобильной связи"
|
||||
|
||||
#: ../js/ui/status/network.js:551 ../js/ui/status/network.js:1254
|
||||
#: ../js/ui/status/network.js:551 ../js/ui/status/network.js:1258
|
||||
msgid "Hardware Disabled"
|
||||
msgstr "Оборудование выключено"
|
||||
|
||||
@ -1551,35 +1583,39 @@ msgstr "Выбрать сеть"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Параметры Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:1247
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Включить"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Точка доступа включена"
|
||||
|
||||
#: ../js/ui/status/network.js:1250
|
||||
#: ../js/ui/status/network.js:1254
|
||||
msgid "Connecting"
|
||||
msgstr "Подключение"
|
||||
|
||||
#: ../js/ui/status/network.js:1429 ../js/ui/status/rfkill.js:88
|
||||
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
|
||||
msgid "Network Settings"
|
||||
msgstr "Настроить сеть"
|
||||
|
||||
#: ../js/ui/status/network.js:1431
|
||||
#: ../js/ui/status/network.js:1435
|
||||
msgid "VPN Settings"
|
||||
msgstr "Параметры VPN"
|
||||
|
||||
#: ../js/ui/status/network.js:1450
|
||||
#: ../js/ui/status/network.js:1454
|
||||
msgid "VPN"
|
||||
msgstr "VPN"
|
||||
|
||||
#: ../js/ui/status/network.js:1603
|
||||
#: ../js/ui/status/network.js:1607
|
||||
msgid "Network Manager"
|
||||
msgstr "Диспетчер сети"
|
||||
|
||||
#: ../js/ui/status/network.js:1642
|
||||
#: ../js/ui/status/network.js:1646
|
||||
msgid "Connection failed"
|
||||
msgstr "Сбой подключения"
|
||||
|
||||
#: ../js/ui/status/network.js:1643
|
||||
#: ../js/ui/status/network.js:1647
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Не удалось активировать сетевое подключение"
|
||||
|
||||
@ -1596,10 +1632,12 @@ msgid "Estimating…"
|
||||
msgstr "Выполняется подсчёт…"
|
||||
|
||||
#: ../js/ui/status/power.js:86
|
||||
#, javascript-format
|
||||
msgid "%d∶%02d Remaining (%d%%)"
|
||||
msgstr "Осталось %d∶%02d (%d%%)"
|
||||
|
||||
#: ../js/ui/status/power.js:91
|
||||
#, javascript-format
|
||||
msgid "%d∶%02d Until Full (%d%%)"
|
||||
msgstr "До полного заряда %d∶%02d (%d%%)"
|
||||
|
||||
@ -1616,6 +1654,10 @@ msgstr "Батарея"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Режим авиаперелёта"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Включено"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Сменить пользователя"
|
||||
@ -1665,6 +1707,7 @@ msgid "Search"
|
||||
msgstr "Поиск"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:19
|
||||
#, javascript-format
|
||||
msgid "“%s” is ready"
|
||||
msgstr "Окно «%s» ожидает"
|
||||
|
||||
@ -1684,6 +1727,7 @@ msgid "Keep Changes"
|
||||
msgstr "Сохранить изменения"
|
||||
|
||||
#: ../js/ui/windowManager.js:97
|
||||
#, javascript-format
|
||||
msgid "Settings changes will revert in %d second"
|
||||
msgid_plural "Settings changes will revert in %d seconds"
|
||||
msgstr[0] "Изменения параметров будут отменены через %d секунду"
|
||||
|
163
po/sl.po
163
po/sl.po
@ -9,16 +9,15 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell master\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-21 20:37+0000\n"
|
||||
"PO-Revision-Date: 2014-03-22 09:59+0100\n"
|
||||
"POT-Creation-Date: 2014-03-31 16:26+0000\n"
|
||||
"PO-Revision-Date: 2014-03-31 20:50+0100\n"
|
||||
"Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
|
||||
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
|
||||
"Language: Slovenian\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n"
|
||||
"%100==4 ? 3 : 0);\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n%100==4 ? 3 : 0);\n"
|
||||
"X-Poedit-SourceCharset: utf-8\n"
|
||||
"X-Generator: Poedit 1.5.4\n"
|
||||
|
||||
@ -83,12 +82,10 @@ msgstr ""
|
||||
"vnosnega polja."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
|
||||
#, fuzzy
|
||||
msgid "UUIDs of extensions to enable"
|
||||
msgstr "Določila UUID razširitev za omogočenje"
|
||||
msgstr "Določila UUID razširitev, ki bodo omogočene"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"GNOME Shell extensions have a UUID property; this key lists extensions which "
|
||||
"should be loaded. Any extension that wants to be loaded needs to be in this "
|
||||
@ -96,12 +93,13 @@ msgid ""
|
||||
"DisableExtension D-Bus methods on org.gnome.Shell."
|
||||
msgstr ""
|
||||
"Razširitve lupine GNOME imajo določila UUID; ključ določa seznam razširitev, "
|
||||
"ki bodo naložene. Razširitev, ki naj se naloži, mora biti na tem seznamu. "
|
||||
"Upravljanje seznama je mogoče tudi preko vodila DBUs na org.gnome.Shell."
|
||||
"ki bodo naložene. Razširitev, ki se naj naloži, mora biti zavedena na tem "
|
||||
"seznamu. Upravljanje seznama je mogoče tudi preko vodila D-BUs na org.gnome."
|
||||
"Shell."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
|
||||
msgid "Disables the validation of extension version compatibility"
|
||||
msgstr ""
|
||||
msgstr "Onemogoči overjanje skladnosti različice razširitve"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:6
|
||||
msgid ""
|
||||
@ -109,6 +107,9 @@ msgid ""
|
||||
"running version. Enabling this option will disable this check and try to "
|
||||
"load all extensions regardless of the versions they claim to support."
|
||||
msgstr ""
|
||||
"Lupina GNOME naloži le razširitve, ki so skladne z nameščeno različico. "
|
||||
"Izbrana možnost onemogoči preverjanje skladnosti, zato so lahko naložene "
|
||||
"tudi razširitve, katerih skladnost ni potrjena."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
|
||||
msgid "List of desktop file IDs for favorite applications"
|
||||
@ -221,7 +222,7 @@ msgstr "Vrsta tipkovnice za uporabo."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
|
||||
msgid "The maximum accuracy level of location."
|
||||
msgstr ""
|
||||
msgstr "Raven natančnosti določanja mesta."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
|
||||
msgid ""
|
||||
@ -232,6 +233,11 @@ msgid ""
|
||||
"allow applications to see and they can find user's location on their own "
|
||||
"using network resources (albeit with street-level accuracy at best)."
|
||||
msgstr ""
|
||||
"Možnost določa raven natančnosti določanja položaja. Veljavne možnosti so "
|
||||
"'onemogočeno' (sledenje ni zagnano), 'država', 'mesto', 'okraj', 'ulica' in "
|
||||
"'natančno' (zahteva sprejemnik GPS). Možnost določa le položaj, ki ga "
|
||||
"programom javlja GeoClue. Programi lahko položaj uporabnika določijo tudi "
|
||||
"sami z uporabo omrežnih virov (na ravni ulice)."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
|
||||
msgid "The application icon mode."
|
||||
@ -322,25 +328,25 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Prijava"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Izbor seje"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Ali je ni na seznamu?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:614
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(na primer, uporabnika ali %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:619 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Uporabniško ime: "
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:920
|
||||
msgid "Login Window"
|
||||
msgstr "Prijavno okno"
|
||||
|
||||
@ -365,27 +371,27 @@ msgstr "Ukaza ni mogoče razčleniti:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Izvedba “%s” je spodletela:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Pogosto uporabljeni programi bodo prikazani tu"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Pogosto"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Vse"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1555
|
||||
#: ../js/ui/appDisplay.js:1566
|
||||
msgid "New Window"
|
||||
msgstr "Novo okno"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1577 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1588 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Odstrani iz priljubljenih"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1583
|
||||
#: ../js/ui/appDisplay.js:1594
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Dodaj med priljubljene"
|
||||
|
||||
@ -632,13 +638,13 @@ msgid "Authentication required by wireless network"
|
||||
msgstr "Zahtevana overitev za brezžično omrežje"
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:312
|
||||
#, fuzzy, javascript-format
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Passwords or encryption keys are required to access the wireless network "
|
||||
"“%s”."
|
||||
msgstr ""
|
||||
"Za povezavo v brezžično omrežje '%s' je zahtevana overitev ali nastavitev "
|
||||
"šifrirnega ključa."
|
||||
"Za povezavo v brezžično omrežje “%s” je zahtevano geslo oziroma šifrirni "
|
||||
"ključ."
|
||||
|
||||
#: ../js/ui/components/networkAgent.js:316
|
||||
msgid "Wired 802.1X authentication"
|
||||
@ -804,13 +810,13 @@ msgstr "%s vas vabi, da se pridružite v %s"
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1291
|
||||
msgid "Decline"
|
||||
msgstr "Zavrni"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1296
|
||||
msgid "Accept"
|
||||
msgstr "Sprejmi"
|
||||
|
||||
@ -847,98 +853,98 @@ msgstr "%s pošilja %s"
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s želi dovoljenje za pogled dosegljivosti"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1342
|
||||
msgid "Network error"
|
||||
msgstr "Napaka omrežja"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1344
|
||||
msgid "Authentication failed"
|
||||
msgstr "Overitev je spodletela"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Encryption error"
|
||||
msgstr "Napaka šifriranja"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Potrdilo ni na voljo"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "Potrdilo ni zaupljivo"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate expired"
|
||||
msgstr "Potrdilo je preteklo"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate not activated"
|
||||
msgstr "Potrdilo ni potrjeno"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "Neustrezno ime gostitelja potrdila"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "Neustrezen prstni odtis potrdila"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "Potrdilo je samo-podpisano"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Stanje je nastavljeno na brez povezave"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Encryption is not available"
|
||||
msgstr "Šifriranje ni na voljo."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "Potrdilo je neveljavno."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Connection has been refused"
|
||||
msgstr "Povezava je zavrnjena."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Connection can't be established"
|
||||
msgstr "Povezave ni mogoče vzpostaviti."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been lost"
|
||||
msgstr "Povezava je prekinjena."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "Račun je s strežnikom že povezan"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr "Povezava je zamenjana z novo povezavo, ki uporablja isti vir."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "Račun na strežniku že obstaja"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "Strežnik je trenutno preveč zaposlen za upravljanje s povezavo."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "Potrdilo je preklicano"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr ""
|
||||
"Potrdilo ne uporablja varnega algoritma ali pa uporablja šibko šifriranje."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -946,22 +952,22 @@ msgstr ""
|
||||
"Dolžina potrdila strežnika ali pa globina verige potrdila presega omejitev, "
|
||||
"ki je določena s šifrirno knjižnico."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid "Internal error"
|
||||
msgstr "Notranja napaka"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1398
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "Povezava z %s ni mogoča."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1403
|
||||
msgid "View account"
|
||||
msgstr "Poglej račun"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1439
|
||||
#: ../js/ui/components/telepathyClient.js:1440
|
||||
msgid "Unknown reason"
|
||||
msgstr "Neznan vzrok"
|
||||
|
||||
@ -1110,11 +1116,13 @@ msgstr "Namesti in ugasni računalnik"
|
||||
#: ../js/ui/endSessionDialog.js:131
|
||||
msgctxt "checkbox"
|
||||
msgid "Power off after updates are installed"
|
||||
msgstr ""
|
||||
msgstr "Izklopi napravo po uspešnem nameščanju posodobitev"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:315
|
||||
msgid "Running on battery power: please plug in before installing updates."
|
||||
msgstr ""
|
||||
"Naprava deluje na bateriji: priporočeno jo je priključiti v omrežje pred "
|
||||
"nameščanjem posodobitev."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:332
|
||||
msgid "Some applications are busy or have unsaved work."
|
||||
@ -1168,7 +1176,8 @@ msgstr "Skrij napake"
|
||||
msgid "Show Errors"
|
||||
msgstr "Pokaži napake"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Omogočeno"
|
||||
|
||||
@ -1176,8 +1185,8 @@ msgstr "Omogočeno"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Onemogočeno"
|
||||
|
||||
@ -1328,7 +1337,7 @@ msgstr "Zaklep je preprečil program"
|
||||
msgid "Searching…"
|
||||
msgstr "Iskanje ..."
|
||||
|
||||
#: ../js/ui/search.js:646
|
||||
#: ../js/ui/search.js:649
|
||||
msgid "No results."
|
||||
msgstr "Ni najdenih zadetkov."
|
||||
|
||||
@ -1404,8 +1413,7 @@ msgstr "Veliko besedilo"
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/location.js:60
|
||||
#: ../js/ui/status/location.js:167 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
@ -1441,24 +1449,27 @@ msgstr "Pokaži razporeditev tipkovnice"
|
||||
msgid "Location"
|
||||
msgstr "Mesto"
|
||||
|
||||
#: ../js/ui/status/location.js:59 ../js/ui/status/location.js:166
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Povezano"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
msgid "Disable"
|
||||
msgstr "Onemogoči"
|
||||
|
||||
#: ../js/ui/status/location.js:163 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Nepovezano"
|
||||
|
||||
#: ../js/ui/status/location.js:164 ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
#: ../js/ui/status/location.js:165
|
||||
msgid "Enable"
|
||||
msgstr "Omogoči"
|
||||
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "V uporabi"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<neznano>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Nepovezano"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
msgid "Connected"
|
||||
msgstr "Povezano"
|
||||
@ -1562,6 +1573,10 @@ msgstr "Izbor omrežja"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Nastavitve Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Omogoči"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Vroča točka je dejavna"
|
||||
@ -1628,6 +1643,10 @@ msgstr "Baterija"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Način letala"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Povezano"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Preklopi uporabnika"
|
||||
|
286
po/tg.po
286
po/tg.po
@ -8,8 +8,8 @@ msgstr ""
|
||||
"Project-Id-Version: Tajik Gnome\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2014-03-16 20:30+0000\n"
|
||||
"PO-Revision-Date: 2014-03-17 12:24+0500\n"
|
||||
"POT-Creation-Date: 2014-04-25 07:23+0000\n"
|
||||
"PO-Revision-Date: 2014-04-25 16:51+0500\n"
|
||||
"Last-Translator: Victor Ibragimov <victor.ibragimov@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: tg\n"
|
||||
@ -225,14 +225,6 @@ msgid "The maximum accuracy level of location."
|
||||
msgstr "Сатҳи аксари саҳеҳии ҷойгиршавӣ."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
|
||||
#| msgid ""
|
||||
#| "Configures the maximum level of location accuracy applications are "
|
||||
#| "allowed to see. Valid options are 'off' (disable location tracking), "
|
||||
#| "'country', 'city', 'neighborhood', 'street', and 'exact' (typically "
|
||||
#| "requires GPS receiver). Please keep in mind that this only controls what "
|
||||
#| "Geoclue will allow applications to see and they can find user's location "
|
||||
#| "on their own using network resources (albeit with street-level accuracy "
|
||||
#| "at best)."
|
||||
msgid ""
|
||||
"Configures the maximum level of location accuracy applications are allowed "
|
||||
"to see. Valid options are 'off' (disable location tracking), 'country', "
|
||||
@ -344,33 +336,33 @@ msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Ворид шудан"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:270
|
||||
#: ../js/gdm/loginDialog.js:271
|
||||
msgid "Choose Session"
|
||||
msgstr "Интихоби ҷаласа"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:430
|
||||
#: ../js/gdm/loginDialog.js:431
|
||||
msgid "Not listed?"
|
||||
msgstr "Вуҷуд надора?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:608
|
||||
#: ../js/gdm/loginDialog.js:616
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(масалан, корбар ё %s)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:613 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/gdm/loginDialog.js:621 ../js/ui/components/networkAgent.js:262
|
||||
#: ../js/ui/components/networkAgent.js:280
|
||||
msgid "Username: "
|
||||
msgstr "Номи корбар:"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:884
|
||||
#: ../js/gdm/loginDialog.js:924
|
||||
msgid "Login Window"
|
||||
msgstr "Равзанаи воридшавӣ"
|
||||
|
||||
#: ../js/gdm/util.js:322
|
||||
#: ../js/gdm/util.js:323
|
||||
msgid "Authentication error"
|
||||
msgstr "Хатои санҷиши ҳаққоният"
|
||||
|
||||
#: ../js/gdm/util.js:452
|
||||
#: ../js/gdm/util.js:453
|
||||
msgid "(or swipe finger)"
|
||||
msgstr "(ё бо ангут ламс кунед)"
|
||||
|
||||
@ -387,27 +379,27 @@ msgstr "Фармон иҷро нашудааст:"
|
||||
msgid "Execution of “%s” failed:"
|
||||
msgstr "Иҷрокунии “%s” қатъ шудааст:"
|
||||
|
||||
#: ../js/ui/appDisplay.js:629
|
||||
#: ../js/ui/appDisplay.js:636
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Барномаҳои бештар истифодашуда ин ҷо намоиш дода мешаванд"
|
||||
|
||||
#: ../js/ui/appDisplay.js:740
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
msgid "Frequent"
|
||||
msgstr "Роиҷ"
|
||||
|
||||
#: ../js/ui/appDisplay.js:747
|
||||
#: ../js/ui/appDisplay.js:754
|
||||
msgid "All"
|
||||
msgstr "Ҳама"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1555
|
||||
#: ../js/ui/appDisplay.js:1567
|
||||
msgid "New Window"
|
||||
msgstr "Равзанаи нав"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1577 ../js/ui/dash.js:285
|
||||
#: ../js/ui/appDisplay.js:1589 ../js/ui/dash.js:285
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "Тоза кардан аз Баргузидаҳо"
|
||||
|
||||
#: ../js/ui/appDisplay.js:1583
|
||||
#: ../js/ui/appDisplay.js:1595
|
||||
msgid "Add to Favorites"
|
||||
msgstr "Илова кардан ба Баргузидаҳо"
|
||||
|
||||
@ -421,7 +413,7 @@ msgstr "%s ба баргузидаҳои шумо илова шудааст."
|
||||
msgid "%s has been removed from your favorites."
|
||||
msgstr "%s аз баргузидаҳои шумо тоза шудааст."
|
||||
|
||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:809
|
||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:810
|
||||
#: ../js/ui/status/system.js:334
|
||||
msgid "Settings"
|
||||
msgstr "Танзимот"
|
||||
@ -591,11 +583,11 @@ msgstr "Ҳафтаи ҷорӣ"
|
||||
msgid "Next week"
|
||||
msgstr "Ҳафтаи навбатӣ"
|
||||
|
||||
#: ../js/ui/components/automountManager.js:90
|
||||
#: ../js/ui/components/automountManager.js:91
|
||||
msgid "External drive connected"
|
||||
msgstr "Диски берунӣ васл шудааст"
|
||||
|
||||
#: ../js/ui/components/automountManager.js:101
|
||||
#: ../js/ui/components/automountManager.js:102
|
||||
msgid "External drive disconnected"
|
||||
msgstr "Диски берунӣ ҷудо шудааст"
|
||||
|
||||
@ -740,77 +732,77 @@ msgid "Mute"
|
||||
msgstr "Бесадо кардан"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:955
|
||||
#: ../js/ui/components/telepathyClient.js:958
|
||||
msgid "%H∶%M"
|
||||
msgstr "%H∶%M"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 24h format. i.e. "Yesterday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:962
|
||||
#: ../js/ui/components/telepathyClient.js:965
|
||||
msgid "Yesterday, %H∶%M"
|
||||
msgstr "Дирӯз, %H∶%M"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 24h format. i.e. "Monday, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:969
|
||||
#: ../js/ui/components/telepathyClient.js:972
|
||||
msgid "%A, %H∶%M"
|
||||
msgstr "%A, %H∶%M"
|
||||
|
||||
#. Translators: this is the month name and day number
|
||||
#. followed by a time string in 24h format.
|
||||
#. i.e. "May 25, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:976
|
||||
#: ../js/ui/components/telepathyClient.js:979
|
||||
msgid "%B %d, %H∶%M"
|
||||
msgstr "%B %d, %H∶%M"
|
||||
|
||||
#. Translators: this is the month name, day number, year
|
||||
#. number followed by a time string in 24h format.
|
||||
#. i.e. "May 25 2012, 14:30" */
|
||||
#: ../js/ui/components/telepathyClient.js:982
|
||||
#: ../js/ui/components/telepathyClient.js:985
|
||||
msgid "%B %d %Y, %H∶%M"
|
||||
msgstr "%B %d %Y, %H∶%M"
|
||||
|
||||
#. Translators: Time in 24h format */
|
||||
#: ../js/ui/components/telepathyClient.js:991
|
||||
#: ../js/ui/components/telepathyClient.js:994
|
||||
msgid "%l∶%M %p"
|
||||
msgstr "%l∶%M %p"
|
||||
|
||||
#. Translators: this is the word "Yesterday" followed by a
|
||||
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:998
|
||||
#: ../js/ui/components/telepathyClient.js:1001
|
||||
msgid "Yesterday, %l∶%M %p"
|
||||
msgstr "Дирӯз, %l∶%M %p"
|
||||
|
||||
#. Translators: this is the week day name followed by a time
|
||||
#. string in 12h format. i.e. "Monday, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1005
|
||||
#: ../js/ui/components/telepathyClient.js:1008
|
||||
msgid "%A, %l∶%M %p"
|
||||
msgstr "%A, %l∶%M %p"
|
||||
|
||||
#. Translators: this is the month name and day number
|
||||
#. followed by a time string in 12h format.
|
||||
#. i.e. "May 25, 2:30 pm" */
|
||||
#: ../js/ui/components/telepathyClient.js:1012
|
||||
#: ../js/ui/components/telepathyClient.js:1015
|
||||
msgid "%B %d, %l∶%M %p"
|
||||
msgstr "%B %d, %l∶%M %p"
|
||||
|
||||
#. Translators: this is the month name, day number, year
|
||||
#. number followed by a time string in 12h format.
|
||||
#. i.e. "May 25 2012, 2:30 pm"*/
|
||||
#: ../js/ui/components/telepathyClient.js:1018
|
||||
#: ../js/ui/components/telepathyClient.js:1021
|
||||
msgid "%B %d %Y, %l∶%M %p"
|
||||
msgstr "%B %d %Y, %l∶%M %p"
|
||||
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name. */
|
||||
#: ../js/ui/components/telepathyClient.js:1051
|
||||
#: ../js/ui/components/telepathyClient.js:1054
|
||||
#, javascript-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "%s аллакой бо номи %s номида мешавад"
|
||||
|
||||
#. translators: argument is a room name like
|
||||
#. * room@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1154
|
||||
#: ../js/ui/components/telepathyClient.js:1158
|
||||
#, javascript-format
|
||||
msgid "Invitation to %s"
|
||||
msgstr "Даъватнома барои to %s"
|
||||
@ -818,38 +810,38 @@ msgstr "Даъватнома барои to %s"
|
||||
#. translators: first argument is the name of a contact and the second
|
||||
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||
#. * for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1162
|
||||
#: ../js/ui/components/telepathyClient.js:1166
|
||||
#, javascript-format
|
||||
msgid "%s is inviting you to join %s"
|
||||
msgstr "%s шуморо барои ҳамроҳ шудан ба %s даъват мекунад"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1164
|
||||
#: ../js/ui/components/telepathyClient.js:1199
|
||||
#: ../js/ui/components/telepathyClient.js:1233
|
||||
#: ../js/ui/components/telepathyClient.js:1290
|
||||
#: ../js/ui/components/telepathyClient.js:1168
|
||||
#: ../js/ui/components/telepathyClient.js:1203
|
||||
#: ../js/ui/components/telepathyClient.js:1237
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
msgid "Decline"
|
||||
msgstr "Рад кардан"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1170
|
||||
#: ../js/ui/components/telepathyClient.js:1239
|
||||
#: ../js/ui/components/telepathyClient.js:1295
|
||||
#: ../js/ui/components/telepathyClient.js:1174
|
||||
#: ../js/ui/components/telepathyClient.js:1243
|
||||
#: ../js/ui/components/telepathyClient.js:1300
|
||||
msgid "Accept"
|
||||
msgstr "Қабул кардан"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1189
|
||||
#: ../js/ui/components/telepathyClient.js:1193
|
||||
#, javascript-format
|
||||
msgid "Video call from %s"
|
||||
msgstr "Занги видеоӣ аз %s"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1192
|
||||
#: ../js/ui/components/telepathyClient.js:1196
|
||||
#, javascript-format
|
||||
msgid "Call from %s"
|
||||
msgstr "Занг аз %s"
|
||||
|
||||
#. translators: this is a button label (verb), not a noun */
|
||||
#: ../js/ui/components/telepathyClient.js:1206
|
||||
#: ../js/ui/components/telepathyClient.js:1210
|
||||
msgid "Answer"
|
||||
msgstr "Ҷавоб"
|
||||
|
||||
@ -858,110 +850,110 @@ msgstr "Ҷавоб"
|
||||
#. * file name. The string will be something
|
||||
#. * like: "Alice is sending you test.ogg"
|
||||
#. */
|
||||
#: ../js/ui/components/telepathyClient.js:1227
|
||||
#: ../js/ui/components/telepathyClient.js:1231
|
||||
#, javascript-format
|
||||
msgid "%s is sending you %s"
|
||||
msgstr "%s ба шумо %s-ро мефиристад"
|
||||
|
||||
#. To translators: The parameter is the contact's alias */
|
||||
#: ../js/ui/components/telepathyClient.js:1256
|
||||
#: ../js/ui/components/telepathyClient.js:1260
|
||||
#, javascript-format
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s аз шумо иҷозат мепурсад, ки тавонад шуморо дар онлайн бинад"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1341
|
||||
#: ../js/ui/components/telepathyClient.js:1346
|
||||
msgid "Network error"
|
||||
msgstr "Хатои шабака"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1343
|
||||
#: ../js/ui/components/telepathyClient.js:1348
|
||||
msgid "Authentication failed"
|
||||
msgstr "Санҷиши ҳаққоният қатъ шудааст."
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1345
|
||||
#: ../js/ui/components/telepathyClient.js:1350
|
||||
msgid "Encryption error"
|
||||
msgstr "Хатои рамзгузорӣ"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1347
|
||||
#: ../js/ui/components/telepathyClient.js:1352
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Гувоҳинома таъмин нашудааст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1349
|
||||
#: ../js/ui/components/telepathyClient.js:1354
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "Гувоҳиномаи беэътибор"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1351
|
||||
#: ../js/ui/components/telepathyClient.js:1356
|
||||
msgid "Certificate expired"
|
||||
msgstr "Гувоҳинома аз мӯҳлаташ гузашт"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1353
|
||||
#: ../js/ui/components/telepathyClient.js:1358
|
||||
msgid "Certificate not activated"
|
||||
msgstr "Гувоҳинома фаъол нашудааст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1355
|
||||
#: ../js/ui/components/telepathyClient.js:1360
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "Номувофиқати гувоҳиномаи номи мизоҷон"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1357
|
||||
#: ../js/ui/components/telepathyClient.js:1362
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "Номувофиқати гувоҳиномаи нақши ангуштон"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1359
|
||||
#: ../js/ui/components/telepathyClient.js:1364
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "Гувоҳиномаи худимзошуда"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1361
|
||||
#: ../js/ui/components/telepathyClient.js:1366
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Вазъият ба \"офлайн\" гузаштааст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1363
|
||||
#: ../js/ui/components/telepathyClient.js:1368
|
||||
msgid "Encryption is not available"
|
||||
msgstr "Рамзгузорӣ дастрас нест"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1365
|
||||
#: ../js/ui/components/telepathyClient.js:1370
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "Гувоҳинома нодуруст аст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1367
|
||||
#: ../js/ui/components/telepathyClient.js:1372
|
||||
msgid "Connection has been refused"
|
||||
msgstr "Пайваст рад карда шудааст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1369
|
||||
#: ../js/ui/components/telepathyClient.js:1374
|
||||
msgid "Connection can't be established"
|
||||
msgstr "Пайвастшавӣ имконнопазир аст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1371
|
||||
#: ../js/ui/components/telepathyClient.js:1376
|
||||
msgid "Connection has been lost"
|
||||
msgstr "Пайваст гум шудааст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1373
|
||||
#: ../js/ui/components/telepathyClient.js:1378
|
||||
msgid "This account is already connected to the server"
|
||||
msgstr "Ин ҳисоб аллакай ба сервер пайваст шудааст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1375
|
||||
#: ../js/ui/components/telepathyClient.js:1380
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr "Пайваст тавассути сарчашмаи якхела бо пайвасти нав ҷойиваз карда шуд"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1377
|
||||
#: ../js/ui/components/telepathyClient.js:1382
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "Ҳисоб дар сервер аллакай мавҷуд аст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1379
|
||||
#: ../js/ui/components/telepathyClient.js:1384
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "Барои коркарди ин пайваст сервер дар айни ҳол хеле машғул мебошад"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1381
|
||||
#: ../js/ui/components/telepathyClient.js:1386
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "Гувоҳинома лағв карда шуд"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1383
|
||||
#: ../js/ui/components/telepathyClient.js:1388
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr ""
|
||||
"Гувоҳинома алгоритми хатарноки рамзро истифода мебарад, ё ки рамзгузории "
|
||||
"суст дорад"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1385
|
||||
#: ../js/ui/components/telepathyClient.js:1390
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -969,22 +961,22 @@ msgstr ""
|
||||
"Дарозии гувоҳиномаи сервер, ё ки чуқурии занҷири гувоҳиномаи сервер, аз "
|
||||
"маҳдудиятҳое, ки бо китобхонаи рамзгузорӣ таъин шудаанд, дарозтар мебошад"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1387
|
||||
#: ../js/ui/components/telepathyClient.js:1392
|
||||
msgid "Internal error"
|
||||
msgstr "Хатогии дохилӣ"
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example. */
|
||||
#: ../js/ui/components/telepathyClient.js:1397
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#, javascript-format
|
||||
msgid "Unable to connect to %s"
|
||||
msgstr "Пайвастшавӣ ба %s имконнопазир аст"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1402
|
||||
#: ../js/ui/components/telepathyClient.js:1407
|
||||
msgid "View account"
|
||||
msgstr "Намоиш додани ҳисоб"
|
||||
|
||||
#: ../js/ui/components/telepathyClient.js:1439
|
||||
#: ../js/ui/components/telepathyClient.js:1444
|
||||
msgid "Unknown reason"
|
||||
msgstr "Сабаби номаълум"
|
||||
|
||||
@ -1140,13 +1132,13 @@ msgid "Other users are logged in."
|
||||
msgstr "Корбарони дигар ворид шудаанд."
|
||||
|
||||
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||
#: ../js/ui/endSessionDialog.js:618
|
||||
#: ../js/ui/endSessionDialog.js:619
|
||||
#, javascript-format
|
||||
msgid "%s (remote)"
|
||||
msgstr "%s (дурдаст)"
|
||||
|
||||
#. Translators: Console here refers to a tty like a VT console */
|
||||
#: ../js/ui/endSessionDialog.js:621
|
||||
#: ../js/ui/endSessionDialog.js:622
|
||||
#, javascript-format
|
||||
msgid "%s (console)"
|
||||
msgstr "%s (консол)"
|
||||
@ -1160,7 +1152,7 @@ msgstr "Насб кардан"
|
||||
msgid "Download and install “%s” from extensions.gnome.org?"
|
||||
msgstr "“%s”-ро аз extensions.gnome.org боргирӣ ва насб мекунед?"
|
||||
|
||||
#: ../js/ui/keyboard.js:641 ../js/ui/status/keyboard.js:335
|
||||
#: ../js/ui/keyboard.js:645 ../js/ui/status/keyboard.js:335
|
||||
msgid "Keyboard"
|
||||
msgstr "Клавиатура"
|
||||
|
||||
@ -1182,7 +1174,8 @@ msgstr "Пинҳон кардани хатоҳо"
|
||||
msgid "Show Errors"
|
||||
msgstr "Намоиш додани хатоҳо"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:716
|
||||
#: ../js/ui/lookingGlass.js:716 ../js/ui/status/location.js:59
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "Enabled"
|
||||
msgstr "Фаъол"
|
||||
|
||||
@ -1190,8 +1183,8 @@ msgstr "Фаъол"
|
||||
#. because it's disabled by rfkill (airplane mode) */
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/network.js:555
|
||||
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||
#: ../js/ui/lookingGlass.js:719 ../js/ui/status/location.js:164
|
||||
#: ../js/ui/status/network.js:555 ../src/gvc/gvc-mixer-control.c:1830
|
||||
msgid "Disabled"
|
||||
msgstr "Ғайрифаъол"
|
||||
|
||||
@ -1247,11 +1240,11 @@ msgstr "Ягон паём нест"
|
||||
msgid "Message Tray"
|
||||
msgstr "Қуттии паёмҳо"
|
||||
|
||||
#: ../js/ui/messageTray.js:2962
|
||||
#: ../js/ui/messageTray.js:2967
|
||||
msgid "System Information"
|
||||
msgstr "Маълумоти система"
|
||||
|
||||
#: ../js/ui/notificationDaemon.js:515 ../src/shell-app.c:425
|
||||
#: ../js/ui/notificationDaemon.js:516 ../src/shell-app.c:425
|
||||
msgctxt "program"
|
||||
msgid "Unknown"
|
||||
msgstr "Номаълум"
|
||||
@ -1289,7 +1282,7 @@ msgstr "Баромад"
|
||||
msgid "Activities"
|
||||
msgstr "Фаъолиятҳо"
|
||||
|
||||
#: ../js/ui/panel.js:914
|
||||
#: ../js/ui/panel.js:915
|
||||
msgid "Top Bar"
|
||||
msgstr "Панели боло"
|
||||
|
||||
@ -1326,19 +1319,19 @@ msgstr "Қулф кардан"
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "GNOME бояд экранро қулф кунад"
|
||||
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1309
|
||||
#: ../js/ui/screenShield.js:835 ../js/ui/screenShield.js:1312
|
||||
msgid "Unable to lock"
|
||||
msgstr "Қулф карда намешавад"
|
||||
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1310
|
||||
#: ../js/ui/screenShield.js:836 ../js/ui/screenShield.js:1313
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "Қулф аз тарави барнома баста шудааст"
|
||||
|
||||
#: ../js/ui/search.js:603
|
||||
#: ../js/ui/search.js:606
|
||||
msgid "Searching…"
|
||||
msgstr "Ҷустуҷӯ рафта истодааст..."
|
||||
|
||||
#: ../js/ui/search.js:646
|
||||
#: ../js/ui/search.js:652
|
||||
msgid "No results."
|
||||
msgstr "Ягон натиҷа нест."
|
||||
|
||||
@ -1402,38 +1395,37 @@ msgstr "Тугмаҳои ҷастухез"
|
||||
msgid "Mouse Keys"
|
||||
msgstr "Тугмаҳои муш"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:143
|
||||
#: ../js/ui/status/accessibility.js:144
|
||||
msgid "High Contrast"
|
||||
msgstr "Контрасти баланд"
|
||||
|
||||
#: ../js/ui/status/accessibility.js:192
|
||||
#: ../js/ui/status/accessibility.js:193
|
||||
msgid "Large Text"
|
||||
msgstr "Матни бузург"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:48
|
||||
#: ../js/ui/status/bluetooth.js:49
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:50 ../js/ui/status/location.js:60
|
||||
#: ../js/ui/status/location.js:167 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:151
|
||||
#: ../js/ui/status/network.js:323 ../js/ui/status/network.js:1234
|
||||
#: ../js/ui/status/network.js:1345 ../js/ui/status/rfkill.js:85
|
||||
#: ../js/ui/status/rfkill.js:105
|
||||
msgid "Turn Off"
|
||||
msgstr "Хомӯш кардан"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:53
|
||||
#: ../js/ui/status/bluetooth.js:54
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Танзимоти Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:103
|
||||
#: ../js/ui/status/bluetooth.js:104
|
||||
#, javascript-format
|
||||
msgid "%d Connected Device"
|
||||
msgid_plural "%d Connected Devices"
|
||||
msgstr[0] "%d дастгоҳи пайвастшуда"
|
||||
msgstr[1] "%d дастгоҳи пайвастшуда"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:105 ../js/ui/status/network.js:1262
|
||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/network.js:1262
|
||||
msgid "Not Connected"
|
||||
msgstr "Пайваст нашудааст"
|
||||
|
||||
@ -1449,63 +1441,70 @@ msgstr "Намоиш додани тарҳбандии клавиатура"
|
||||
msgid "Location"
|
||||
msgstr "Ҷойгиршавӣ"
|
||||
|
||||
#: ../js/ui/status/location.js:59 ../js/ui/status/location.js:166
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Фаъол"
|
||||
#: ../js/ui/status/location.js:60 ../js/ui/status/location.js:168
|
||||
msgid "Disable"
|
||||
msgstr "Ғайрифаъол кардан"
|
||||
|
||||
#: ../js/ui/status/location.js:163 ../js/ui/status/network.js:420
|
||||
#: ../js/ui/status/network.js:1260 ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Хомӯш"
|
||||
|
||||
#: ../js/ui/status/location.js:164 ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
#: ../js/ui/status/location.js:165
|
||||
msgid "Enable"
|
||||
msgstr "Фаъол кардан"
|
||||
|
||||
#: ../js/ui/status/location.js:167
|
||||
msgid "In Use"
|
||||
msgstr "Дар истифода"
|
||||
|
||||
#: ../js/ui/status/network.js:74
|
||||
msgid "<unknown>"
|
||||
msgstr "<номаълум>"
|
||||
|
||||
#: ../js/ui/status/network.js:420 ../js/ui/status/network.js:1260
|
||||
#: ../js/ui/status/network.js:1464
|
||||
msgid "Off"
|
||||
msgstr "Хомӯш"
|
||||
|
||||
#: ../js/ui/status/network.js:422
|
||||
#| msgid "Connect"
|
||||
msgid "Connected"
|
||||
msgstr "Пайваст шудааст"
|
||||
|
||||
#. Translators: this is for network devices that are physically present but are not
|
||||
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||
#: ../js/ui/status/network.js:426
|
||||
msgid "unmanaged"
|
||||
msgstr "идоранашуда"
|
||||
#| msgid "unmanaged"
|
||||
msgid "Unmanaged"
|
||||
msgstr "Идоранашуда"
|
||||
|
||||
#: ../js/ui/status/network.js:428
|
||||
msgid "disconnecting..."
|
||||
msgstr "қатъ кардани пайваст..."
|
||||
#| msgid "disconnecting..."
|
||||
msgid "Disconnecting"
|
||||
msgstr "Пайваст қатъ шуда истодааст"
|
||||
|
||||
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1362
|
||||
msgid "connecting..."
|
||||
msgstr "пайвастшавӣ..."
|
||||
#: ../js/ui/status/network.js:434 ../js/ui/status/network.js:1254
|
||||
msgid "Connecting"
|
||||
msgstr "Пайвастшавӣ"
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password */
|
||||
#: ../js/ui/status/network.js:437 ../js/ui/status/network.js:1365
|
||||
msgid "authentication required"
|
||||
msgstr "санҷиши ҳаққоният лозим аст"
|
||||
#: ../js/ui/status/network.js:437
|
||||
#| msgid "authentication required"
|
||||
msgid "Authentication required"
|
||||
msgstr "Санҷиши ҳаққоният лозим аст"
|
||||
|
||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||
#. module, which is missing */
|
||||
#: ../js/ui/status/network.js:445
|
||||
msgid "firmware missing"
|
||||
msgstr "нармафзори дарунсохт вуҷуд надорад"
|
||||
#| msgid "firmware missing"
|
||||
msgid "Firmware missing"
|
||||
msgstr "Нармафзори дарунсохт вуҷуд надорад"
|
||||
|
||||
#. Translators: this is for a network device that cannot be activated (for example it
|
||||
#. is disabled by rfkill, or it has no coverage */
|
||||
#: ../js/ui/status/network.js:449
|
||||
msgid "unavailable"
|
||||
msgstr "дастнорас"
|
||||
#| msgid "unavailable"
|
||||
msgid "Unavailable"
|
||||
msgstr "Дастнорас"
|
||||
|
||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1367
|
||||
msgid "connection failed"
|
||||
msgstr "пайваст қатъ шудааст"
|
||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1646
|
||||
msgid "Connection failed"
|
||||
msgstr "Пайваст қатъ шудааст"
|
||||
|
||||
#: ../js/ui/status/network.js:467
|
||||
msgid "Wired Settings"
|
||||
@ -1571,13 +1570,26 @@ msgstr "Интихоби шабака"
|
||||
msgid "Wi-Fi Settings"
|
||||
msgstr "Танзимоти Wi-Fi"
|
||||
|
||||
#: ../js/ui/status/network.js:1234
|
||||
msgid "Turn On"
|
||||
msgstr "Фаъол кардан"
|
||||
|
||||
#: ../js/ui/status/network.js:1251
|
||||
msgid "Hotspot Active"
|
||||
msgstr "Hotspot фаъол аст"
|
||||
|
||||
#: ../js/ui/status/network.js:1254
|
||||
msgid "Connecting"
|
||||
msgstr "Пайвастшавӣ"
|
||||
#: ../js/ui/status/network.js:1362
|
||||
msgid "connecting..."
|
||||
msgstr "пайвастшавӣ..."
|
||||
|
||||
#. Translators: this is for network connections that require some kind of key or password */
|
||||
#: ../js/ui/status/network.js:1365
|
||||
msgid "authentication required"
|
||||
msgstr "санҷиши ҳаққоният лозим аст"
|
||||
|
||||
#: ../js/ui/status/network.js:1367
|
||||
msgid "connection failed"
|
||||
msgstr "пайваст қатъ шудааст"
|
||||
|
||||
#: ../js/ui/status/network.js:1433 ../js/ui/status/rfkill.js:88
|
||||
msgid "Network Settings"
|
||||
@ -1595,10 +1607,6 @@ msgstr "VPN"
|
||||
msgid "Network Manager"
|
||||
msgstr "Мудири шабака"
|
||||
|
||||
#: ../js/ui/status/network.js:1646
|
||||
msgid "Connection failed"
|
||||
msgstr "Пайваст қатъ шудааст"
|
||||
|
||||
#: ../js/ui/status/network.js:1647
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Фаъолсозии пайвасти шабака қатъ шудааст."
|
||||
@ -1637,6 +1645,10 @@ msgstr "Батарея"
|
||||
msgid "Airplane Mode"
|
||||
msgstr "Ҳолати ҳавопаймо"
|
||||
|
||||
#: ../js/ui/status/rfkill.js:84
|
||||
msgid "On"
|
||||
msgstr "Фаъол"
|
||||
|
||||
#: ../js/ui/status/system.js:314
|
||||
msgid "Switch User"
|
||||
msgstr "Таъвизи корбар"
|
||||
@ -1705,7 +1717,7 @@ msgstr "Барқарор кардани тағйирот"
|
||||
msgid "Keep Changes"
|
||||
msgstr "Нигоҳ доштани тағйирот"
|
||||
|
||||
#: ../js/ui/windowManager.js:97
|
||||
#: ../js/ui/windowManager.js:98
|
||||
#, javascript-format
|
||||
msgid "Settings changes will revert in %d second"
|
||||
msgid_plural "Settings changes will revert in %d seconds"
|
||||
@ -1768,7 +1780,7 @@ msgstr "Паролҳо мувофиқат намекунанд."
|
||||
msgid "Password cannot be blank"
|
||||
msgstr "Парол бояд холӣ набошад"
|
||||
|
||||
#: ../src/shell-polkit-authentication-agent.c:343
|
||||
#: ../src/shell-polkit-authentication-agent.c:346
|
||||
msgid "Authentication dialog was dismissed by the user"
|
||||
msgstr "Равзанаи гуфтугӯи санҷиши ҳакконият бо корбар бекор карда шуд"
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user