Compare commits
187 Commits
Author | SHA1 | Date | |
---|---|---|---|
cf7cf45003 | |||
633dd0d9de | |||
b929320d4c | |||
7296bedd8e | |||
e9fbbf4000 | |||
dd44219aa5 | |||
8cc1fe007d | |||
c0b45c9fc4 | |||
41315f45a9 | |||
04d28a0eea | |||
1e9cd3f785 | |||
f462dd6a4c | |||
34e75fc595 | |||
dac513e046 | |||
2c538d247b | |||
f3b7f61e54 | |||
d47ecf19f5 | |||
da19b344b5 | |||
eb66407926 | |||
61c5b8e7d2 | |||
4b09d57ec2 | |||
a16f699dfc | |||
b908a3d70a | |||
d519c7263e | |||
5dedc5d8ba | |||
3ca1784ff4 | |||
b54d512f3f | |||
9d8fb19f55 | |||
1ac4ab7edc | |||
c9b73ac731 | |||
e0b87f1e14 | |||
394743efc8 | |||
27a86a4756 | |||
8ee0ef2cde | |||
43f4682ec4 | |||
5f081b8f8d | |||
5023542882 | |||
88d0731d80 | |||
06cb8c52d7 | |||
4d1358b7ed | |||
0cfa7c1c56 | |||
76928390a3 | |||
af1f9cd76d | |||
2f39f3d146 | |||
f72f39bc26 | |||
2659ba6bb4 | |||
0b8c0c202e | |||
37c8132632 | |||
02f2f694e4 | |||
d175a588f7 | |||
4bb41f2f66 | |||
088c46c7be | |||
4228c40b3d | |||
d581d29198 | |||
5a7e854f9e | |||
6e13823ccc | |||
5c5f2fdf8f | |||
96aa33f4ef | |||
25fd23e703 | |||
99cf4e5787 | |||
66a4cb5875 | |||
da14e2c349 | |||
4cda61a16a | |||
002afda503 | |||
cb7a2e8c6a | |||
d21ae1dad1 | |||
4548859509 | |||
09c6e6427a | |||
8c34398a15 | |||
a65b705080 | |||
7e28c71074 | |||
726f4a6715 | |||
a444b43548 | |||
473bb139d1 | |||
d084770cea | |||
619389ed20 | |||
ad043e009e | |||
89b9d079b1 | |||
58a8845047 | |||
3e6c8e68b4 | |||
40cd92f701 | |||
e216addf7c | |||
9291594330 | |||
f6010864ea | |||
13e6a6def5 | |||
575b373cd5 | |||
0892065649 | |||
766ef367fb | |||
0c7d9958f5 | |||
425b8f6073 | |||
63593e45a6 | |||
a6ee9806de | |||
a6579f4ceb | |||
639622a4fe | |||
e28ec2f5ab | |||
873753c735 | |||
ff14951be4 | |||
b47b445558 | |||
6e9a2fea89 | |||
64d2679b3c | |||
3c3d4dfccb | |||
0ccffed517 | |||
20c18c1fc0 | |||
a21c0097c2 | |||
404d9ef2af | |||
503fa1cbce | |||
63f7991d0f | |||
ae301c1f39 | |||
8e911fb719 | |||
a0d84e44c5 | |||
81fb7ebb31 | |||
3751211590 | |||
6b4cba09be | |||
6a7d184b7b | |||
bde5cfc8bb | |||
777c7a952b | |||
c79bdd9029 | |||
6a154efe65 | |||
627f3ef36b | |||
3d28836f2c | |||
c28bd04958 | |||
a6fb3acb42 | |||
8a8b3bf96e | |||
f7624e5f05 | |||
55edfd2e4a | |||
91878dd52c | |||
c132358ec9 | |||
e426f8ac47 | |||
740dca8afc | |||
6ae06d319c | |||
30bc2b2f9c | |||
7dc8e9d657 | |||
1ab2fa5bf0 | |||
779a1077bf | |||
815bf7a53a | |||
91a382dfb5 | |||
2d8d4cd57d | |||
0c5fe2b3bf | |||
56c487347f | |||
0a572fce1b | |||
e898e29910 | |||
843f076225 | |||
fdb732c8c2 | |||
33896a4e8f | |||
51e016a0d6 | |||
8737b06559 | |||
15ab285174 | |||
3a4782cc64 | |||
0256a6d47b | |||
8b0e846e0e | |||
41acb5d3cc | |||
a2f9b8ea9b | |||
6237a1c505 | |||
7c08db0b0f | |||
df1270ac49 | |||
46edc053d4 | |||
908046c31a | |||
8380c79875 | |||
8a4879a96a | |||
cdf1a77f08 | |||
3f9857ccbd | |||
1d65a31420 | |||
dafdf0838a | |||
f9cf135f68 | |||
a1878e54c9 | |||
95e5d899a9 | |||
ee8321df67 | |||
4918213e68 | |||
ed7f349fc6 | |||
2888f22a24 | |||
fcb217f681 | |||
9ffa9fe1a8 | |||
905020c507 | |||
02f5500641 | |||
465af55d6e | |||
80a3bb85aa | |||
ea26bd3003 | |||
508a511d2a | |||
2d80cb71db | |||
e31693bbee | |||
fb561f10a7 | |||
0c57d53e03 | |||
3b1b9f589b | |||
ac8d39acf4 | |||
664e795217 | |||
82bf323f63 | |||
547ac85113 |
65
NEWS
@ -1,3 +1,68 @@
|
|||||||
|
3.11.1
|
||||||
|
======
|
||||||
|
* power: Use UPower directly instead of gnome-settings-daemon [Bastien; #710273]
|
||||||
|
* Implement support for new GTK+ notification API [Jasper, Giovanni, Florian;
|
||||||
|
#710137, #710596]
|
||||||
|
* gdm: Don't allow user-list to fill up the entire screen [Florian; #710555]
|
||||||
|
* Don't autostart remote search providers at login [Giovanni; #708830]
|
||||||
|
* Fix spacing in end-session dialog [Sebastien; #710543]
|
||||||
|
* Prepare for js24 [Tim; #711052]
|
||||||
|
* Misc bug fixes and cleanups [Jasper, Florian, Adel, Tim, Sebastien; #710347,
|
||||||
|
#710144, #710541, #691409, #710745, #688331, #704912]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Giovanni Campagna, Adel Gadllah, Sebastien Lafargue, Tim Lunn,
|
||||||
|
Florian Müllner, Bastien Nocera, Jasper St. Pierre, Rico Tzschichholz
|
||||||
|
|
||||||
|
Translations:
|
||||||
|
Stas Solovey [ru], Yosef Or Boczko [he], Rafael Ferreira [pt_BR]
|
||||||
|
|
||||||
|
3.10.1
|
||||||
|
======
|
||||||
|
* Make sure lock screen is drawn once before switching user [Giovanni; #708051]
|
||||||
|
* Fix signal strength indicators in network selector [Jasper; #708442]
|
||||||
|
* Scroll search results when focusing provider icons [Jasper; #708868]
|
||||||
|
* Add separate hover/active states to page indicators [Carlos; #708852]
|
||||||
|
* Tweak appearance of user name and avatar [Yash; #702309]
|
||||||
|
* Hide "Turn On" in network menu when disabled by hardware [Giovanni; #709635]
|
||||||
|
* Cancel open keyring prompts when the screen is locked [Florian; #708910]
|
||||||
|
* Differentiate "Not Connected" and "Off" in network menu [Giovanni; #709043]
|
||||||
|
* Make network settings items point to the right device [Giovanni; #709246]
|
||||||
|
* Remove animation of window preview titles [Sebastien; #709392]
|
||||||
|
* Add 'Notifications' switch to tray menu [Florian; #707073]
|
||||||
|
* Make dropdown arrows consistent [Carlos; #709564]
|
||||||
|
* power: Use icon from primary device for status [Jasper; #709925]
|
||||||
|
* Fix XDND drags to overview [Adel; #708887]
|
||||||
|
* Fix workspace switcher disappearing with too many workspaces [Jasper; #694881]
|
||||||
|
* Handle search results with 'special:' prefix specially [Giovanni; #707055]
|
||||||
|
* gdm: Support pre-authenticated logins from oVirt [Vinzenz; #702162]
|
||||||
|
* Use ARROW role for labels representing arrows [Alejandro; #710120]
|
||||||
|
* Make selected view in app picker persistent [Florian; #710042]
|
||||||
|
* Make network selector navigable by keyboard [Alejandro; #710144]
|
||||||
|
* Misc bug fixes [Florian, Adel, Jasper, Aleksander, Giovanni, Dan, Michael,
|
||||||
|
Tim; #709034, #709263, #698486, #709286, #709248, #709543, #696564, #703265,
|
||||||
|
#709638, #709866, #709998, #710019, #710104, #710115]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Giovanni Campagna, Michael Catanzaro, Vinzenz Feenstra, Adel Gadllah,
|
||||||
|
Yash Girdhar, Sebastien Lafargue, Tim Lunn, Aleksander Morgado,
|
||||||
|
Florian Müllner, Alejandro Piñeiro, Carlos Soriano, Jasper St. Pierre,
|
||||||
|
Dieter Verfaillie, Dan Winship
|
||||||
|
|
||||||
|
Translations:
|
||||||
|
Inaki Larranaga Murgoitio [eu], Christian Kirbach [de], Muhammet Kara [tr],
|
||||||
|
Aurimas Černius [lt], Ryan Lortie [eo], Rūdolfs Mazurs [lv],
|
||||||
|
Dušan Kazik [sk], Fran Diéguez [gl], Enrico Nicoletto [pt_BR],
|
||||||
|
Kjartan Maraas [nb], Victor Ibragimov [tg], Matej Urbančič [sl],
|
||||||
|
A S Alam [pa], Nilamdyuti Goswami [as], Daniel Mustieles [es],
|
||||||
|
Cheng-Chia Tseng [zh_HK, zh_TW], Mattias Põldaru [et], Kenneth Nielsen [da],
|
||||||
|
Milo Casagrande [it], Marek Černocký [cs], Ihar Hrachyshka [be],
|
||||||
|
Мирослав Николић [sr, sr@latin], Arash Mousavi [fa], Yuri Myasoedov [ru],
|
||||||
|
Gil Forcada [ca], Carles Ferrando [ca@valencia], Andika Triwidada [id],
|
||||||
|
Timo Jyrinki [fi], Piotr Drąg [pl], Rafael Ferreira [pt_BR],
|
||||||
|
Gabor Kelemen [hu], Yosef Or Boczko [he], Daniel Korostil [uk],
|
||||||
|
Wouter Bolsterlee [nl], António Lima [pt]
|
||||||
|
|
||||||
3.10.0.1
|
3.10.0.1
|
||||||
=========
|
=========
|
||||||
* Fix login screen [Ray; #708691]
|
* Fix login screen [Ray; #708691]
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
AC_PREREQ(2.63)
|
AC_PREREQ(2.63)
|
||||||
AC_INIT([gnome-shell],[3.10.0.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
AC_INIT([gnome-shell],[3.11.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||||
|
|
||||||
AC_CONFIG_HEADERS([config.h])
|
AC_CONFIG_HEADERS([config.h])
|
||||||
AC_CONFIG_SRCDIR([src/shell-global.c])
|
AC_CONFIG_SRCDIR([src/shell-global.c])
|
||||||
@ -16,6 +16,7 @@ m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
|
|||||||
|
|
||||||
# Checks for programs.
|
# Checks for programs.
|
||||||
AC_PROG_CC
|
AC_PROG_CC
|
||||||
|
AC_PROG_CXX
|
||||||
|
|
||||||
# Initialize libtool
|
# Initialize libtool
|
||||||
LT_PREREQ([2.2.6])
|
LT_PREREQ([2.2.6])
|
||||||
@ -59,8 +60,8 @@ AM_CONDITIONAL(BUILD_RECORDER, $build_recorder)
|
|||||||
|
|
||||||
CLUTTER_MIN_VERSION=1.13.4
|
CLUTTER_MIN_VERSION=1.13.4
|
||||||
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
|
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
|
||||||
GJS_MIN_VERSION=1.35.4
|
GJS_MIN_VERSION=1.38.1
|
||||||
MUTTER_MIN_VERSION=3.10.0
|
MUTTER_MIN_VERSION=3.11.1
|
||||||
GTK_MIN_VERSION=3.7.9
|
GTK_MIN_VERSION=3.7.9
|
||||||
GIO_MIN_VERSION=2.37.0
|
GIO_MIN_VERSION=2.37.0
|
||||||
LIBECAL_MIN_VERSION=3.5.3
|
LIBECAL_MIN_VERSION=3.5.3
|
||||||
|
@ -1,6 +1,3 @@
|
|||||||
wandadir = $(pkgdatadir)
|
|
||||||
dist_wanda_DATA = wanda.png
|
|
||||||
|
|
||||||
desktopdir=$(datadir)/applications
|
desktopdir=$(datadir)/applications
|
||||||
desktop_DATA = gnome-shell.desktop gnome-shell-extension-prefs.desktop
|
desktop_DATA = gnome-shell.desktop gnome-shell-extension-prefs.desktop
|
||||||
if HAVE_MUTTER_WAYLAND
|
if HAVE_MUTTER_WAYLAND
|
||||||
@ -45,8 +42,10 @@ dist_theme_DATA = \
|
|||||||
theme/message-tray-background.png \
|
theme/message-tray-background.png \
|
||||||
theme/more-results.svg \
|
theme/more-results.svg \
|
||||||
theme/noise-texture.png \
|
theme/noise-texture.png \
|
||||||
theme/page-indicator-active.svg \
|
theme/page-indicator-active.svg \
|
||||||
theme/page-indicator-inactive.svg \
|
theme/page-indicator-inactive.svg \
|
||||||
|
theme/page-indicator-checked.svg \
|
||||||
|
theme/page-indicator-hover.svg \
|
||||||
theme/panel-button-border.svg \
|
theme/panel-button-border.svg \
|
||||||
theme/panel-button-highlight-narrow.svg \
|
theme/panel-button-highlight-narrow.svg \
|
||||||
theme/panel-button-highlight-wide.svg \
|
theme/panel-button-highlight-wide.svg \
|
||||||
|
@ -37,6 +37,13 @@
|
|||||||
application view, rather than being displayed inline in the main view.
|
application view, rather than being displayed inline in the main view.
|
||||||
</_description>
|
</_description>
|
||||||
</key>
|
</key>
|
||||||
|
<key name="app-picker-view" type="u">
|
||||||
|
<default>0</default>
|
||||||
|
<summary>App Picker View</summary>
|
||||||
|
<description>
|
||||||
|
Index of the currently selected view in the application picker.
|
||||||
|
</description>
|
||||||
|
</key>
|
||||||
<key name="command-history" type="as">
|
<key name="command-history" type="as">
|
||||||
<default>[]</default>
|
<default>[]</default>
|
||||||
<_summary>History for command (Alt-F2) dialog</_summary>
|
<_summary>History for command (Alt-F2) dialog</_summary>
|
||||||
|
@ -157,7 +157,7 @@ StScrollBar StButton#vhandle:active {
|
|||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popup-submenu-menu-item-triangle {
|
.unicode-arrow {
|
||||||
font-size: 120%;
|
font-size: 120%;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -306,16 +306,13 @@ StScrollBar StButton#vhandle:active {
|
|||||||
font-size: 12pt;
|
font-size: 12pt;
|
||||||
border-bottom: 1px solid #666;
|
border-bottom: 1px solid #666;
|
||||||
padding: 12px;
|
padding: 12px;
|
||||||
}
|
|
||||||
|
|
||||||
.nm-dialog-item:checked {
|
|
||||||
background-color: #333;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nm-dialog-item-box {
|
|
||||||
spacing: 20px;
|
spacing: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.nm-dialog-item:selected {
|
||||||
|
background-color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
.nm-dialog-icons {
|
.nm-dialog-icons {
|
||||||
spacing: .5em;
|
spacing: .5em;
|
||||||
}
|
}
|
||||||
@ -693,7 +690,9 @@ StScrollBar StButton#vhandle:active {
|
|||||||
padding-bottom: 32px;
|
padding-bottom: 32px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.workspace-thumbnails-background {
|
.workspace-thumbnails {
|
||||||
|
spacing: 11px;
|
||||||
|
visible-width: 32px; /* Amount visible before hovering */
|
||||||
border: 1px solid rgba(128, 128, 128, 0.4);
|
border: 1px solid rgba(128, 128, 128, 0.4);
|
||||||
border-right: 0px;
|
border-right: 0px;
|
||||||
border-radius: 9px 0px 0px 9px;
|
border-radius: 9px 0px 0px 9px;
|
||||||
@ -701,18 +700,13 @@ StScrollBar StButton#vhandle:active {
|
|||||||
padding: 11px 7px 11px 11px;
|
padding: 11px 7px 11px 11px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.workspace-thumbnails-background:rtl {
|
.workspace-thumbnails:rtl {
|
||||||
border-right: 1px;
|
border-right: 1px;
|
||||||
border-left: 0px;
|
border-left: 0px;
|
||||||
border-radius: 0px 9px 9px 0px;
|
border-radius: 0px 9px 9px 0px;
|
||||||
padding: 11px 11px 11px 7px;
|
padding: 11px 11px 11px 7px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.workspace-thumbnails {
|
|
||||||
spacing: 11px;
|
|
||||||
visible-width: 32px; /* Amount visible before hovering */
|
|
||||||
}
|
|
||||||
|
|
||||||
.workspace-thumbnail-indicator {
|
.workspace-thumbnail-indicator {
|
||||||
border: 4px solid rgba(255,255,255,0.7);
|
border: 4px solid rgba(255,255,255,0.7);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
@ -950,11 +944,19 @@ StScrollBar StButton#vhandle:active {
|
|||||||
background-image: url(page-indicator-inactive.svg);
|
background-image: url(page-indicator-inactive.svg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-indicator:hover .page-indicator-icon,
|
.page-indicator:hover .page-indicator-icon {
|
||||||
.page-indicator:checked .page-indicator-icon {
|
background-image: url(page-indicator-hover.svg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.page-indicator:active .page-indicator-icon {
|
||||||
background-image: url(page-indicator-active.svg);
|
background-image: url(page-indicator-active.svg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.page-indicator:checked .page-indicator-icon,
|
||||||
|
.page-indicator:checked:active .page-indicator-icon {
|
||||||
|
background-image: url(page-indicator-checked.svg);
|
||||||
|
}
|
||||||
|
|
||||||
.no-frequent-applications-label {
|
.no-frequent-applications-label {
|
||||||
font-size: 18pt;
|
font-size: 18pt;
|
||||||
color: #999999;
|
color: #999999;
|
||||||
@ -1965,6 +1967,11 @@ StScrollBar StButton#vhandle:active {
|
|||||||
padding-left: 50px;
|
padding-left: 50px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.end-session-dialog-session-list,
|
||||||
|
.end-session-dialog-app-list {
|
||||||
|
spacing: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
.end-session-dialog-list-header {
|
.end-session-dialog-list-header {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
@ -2268,7 +2275,7 @@ StScrollBar StButton#vhandle:active {
|
|||||||
|
|
||||||
.framed-user-icon {
|
.framed-user-icon {
|
||||||
border: 2px solid #8b8b8b;
|
border: 2px solid #8b8b8b;
|
||||||
border-radius: 5px;
|
border-radius: 3px;
|
||||||
background-size: contain;
|
background-size: contain;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2312,7 +2319,7 @@ StScrollBar StButton#vhandle:active {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.login-dialog-user-list-item {
|
.login-dialog-user-list-item {
|
||||||
border-radius: 10px;
|
border-radius: 5px;
|
||||||
padding: .2em;
|
padding: .2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2325,19 +2332,20 @@ StScrollBar StButton#vhandle:active {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.login-dialog-user-list-item .login-dialog-user-list-item-name {
|
.login-dialog-user-list-item .login-dialog-user-list-item-name {
|
||||||
font-size: 20pt;
|
font-size: 20px;
|
||||||
padding-left: 9px;
|
padding-left: 18px;
|
||||||
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login-dialog-user-list:expanded .login-dialog-user-list-item {
|
.login-dialog-user-list:expanded .login-dialog-user-list-item {
|
||||||
color: #666666;
|
color: #bfbfbf;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login-dialog-user-list-item,
|
.login-dialog-user-list-item,
|
||||||
.login-dialog-user-list-item:hover .login-dialog-user-list-item-name,
|
.login-dialog-user-list-item:hover .login-dialog-user-list-item-name,
|
||||||
.login-dialog-user-list:expanded .login-dialog-user-list-item:focus .login-dialog-user-list-item-name,
|
.login-dialog-user-list:expanded .login-dialog-user-list-item:focus .login-dialog-user-list-item-name,
|
||||||
.login-dialog-user-list:expanded .login-dialog-user-list-item:logged-in {
|
.login-dialog-user-list:expanded .login-dialog-user-list-item:logged-in {
|
||||||
color: white;
|
color: #bfbfbf;
|
||||||
text-shadow: black 0px 2px 2px;
|
text-shadow: black 0px 2px 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2369,7 +2377,7 @@ StScrollBar StButton#vhandle:active {
|
|||||||
|
|
||||||
.login-dialog-user-list-item-icon {
|
.login-dialog-user-list-item-icon {
|
||||||
border: 2px solid #8b8b8b;
|
border: 2px solid #8b8b8b;
|
||||||
border-radius: 8px;
|
border-radius: 3px;
|
||||||
width: 64px;
|
width: 64px;
|
||||||
height: 64px;
|
height: 64px;
|
||||||
}
|
}
|
||||||
@ -2381,6 +2389,10 @@ StScrollBar StButton#vhandle:active {
|
|||||||
padding-top: 1em;
|
padding-top: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.login-dialog-user-selection-box {
|
||||||
|
padding: 100px 0;
|
||||||
|
}
|
||||||
|
|
||||||
.login-dialog-user-selection-box .login-dialog-not-listed-label {
|
.login-dialog-user-selection-box .login-dialog-not-listed-label {
|
||||||
padding-left: 2px;
|
padding-left: 2px;
|
||||||
}
|
}
|
||||||
@ -2486,10 +2498,11 @@ StScrollBar StButton#vhandle:active {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.user-widget-label {
|
.user-widget-label {
|
||||||
font-size: 16pt;
|
font-size: 20px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
padding-left: 15px;
|
padding-left: 18px;
|
||||||
|
color:white;
|
||||||
text-shadow: black 0px 4px 3px 0px;
|
text-shadow: black 0px 4px 3px 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
id="svg4703"
|
id="svg4703"
|
||||||
version="1.1"
|
version="1.1"
|
||||||
inkscape:version="0.48.4 r9939"
|
inkscape:version="0.48.4 r9939"
|
||||||
sodipodi:docname="page-indicator-active.svg">
|
sodipodi:docname="page-indicator-pushed.svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs4705" />
|
id="defs4705" />
|
||||||
<sodipodi:namedview
|
<sodipodi:namedview
|
||||||
@ -24,18 +24,22 @@
|
|||||||
borderopacity="1.0"
|
borderopacity="1.0"
|
||||||
inkscape:pageopacity="0.0"
|
inkscape:pageopacity="0.0"
|
||||||
inkscape:pageshadow="2"
|
inkscape:pageshadow="2"
|
||||||
inkscape:zoom="22.197802"
|
inkscape:zoom="31.392433"
|
||||||
inkscape:cx="2.1522887"
|
inkscape:cx="1.0245308"
|
||||||
inkscape:cy="16.782904"
|
inkscape:cy="13.3715"
|
||||||
inkscape:current-layer="layer1"
|
inkscape:current-layer="layer1"
|
||||||
showgrid="true"
|
showgrid="true"
|
||||||
inkscape:grid-bbox="true"
|
inkscape:grid-bbox="true"
|
||||||
inkscape:document-units="px"
|
inkscape:document-units="px"
|
||||||
inkscape:window-width="1920"
|
inkscape:window-width="2560"
|
||||||
inkscape:window-height="1021"
|
inkscape:window-height="1374"
|
||||||
inkscape:window-x="0"
|
inkscape:window-x="0"
|
||||||
inkscape:window-y="27"
|
inkscape:window-y="27"
|
||||||
inkscape:window-maximized="1" />
|
inkscape:window-maximized="1">
|
||||||
|
<inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid6140" />
|
||||||
|
</sodipodi:namedview>
|
||||||
<metadata
|
<metadata
|
||||||
id="metadata4708">
|
id="metadata4708">
|
||||||
<rdf:RDF>
|
<rdf:RDF>
|
||||||
@ -44,7 +48,7 @@
|
|||||||
<dc:format>image/svg+xml</dc:format>
|
<dc:format>image/svg+xml</dc:format>
|
||||||
<dc:type
|
<dc:type
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
<dc:title />
|
<dc:title></dc:title>
|
||||||
</cc:Work>
|
</cc:Work>
|
||||||
</rdf:RDF>
|
</rdf:RDF>
|
||||||
</metadata>
|
</metadata>
|
||||||
@ -54,14 +58,14 @@
|
|||||||
inkscape:groupmode="layer"
|
inkscape:groupmode="layer"
|
||||||
transform="translate(0,2)">
|
transform="translate(0,2)">
|
||||||
<path
|
<path
|
||||||
transform="matrix(0.72823872,0,0,0.8336417,-1512.2872,-525.55618)"
|
transform="matrix(0.54617904,0,0,0.62523128,-1131.9904,-392.39214)"
|
||||||
d="m 2099.9808,638.83099 c 0,5.29998 -4.9184,9.59645 -10.9854,9.59645 -6.0671,0 -10.9854,-4.29647 -10.9854,-9.59645 0,-5.29997 4.9183,-9.59645 10.9854,-9.59645 6.067,0 10.9854,4.29648 10.9854,9.59645 z"
|
d="m 2099.9808,638.83099 a 10.985409,9.5964489 0 1 1 -21.9708,0 10.985409,9.5964489 0 1 1 21.9708,0 z"
|
||||||
sodipodi:ry="9.5964489"
|
sodipodi:ry="9.5964489"
|
||||||
sodipodi:rx="10.985409"
|
sodipodi:rx="10.985409"
|
||||||
sodipodi:cy="638.83099"
|
sodipodi:cy="638.83099"
|
||||||
sodipodi:cx="2088.9954"
|
sodipodi:cx="2088.9954"
|
||||||
id="path4711"
|
id="path4711"
|
||||||
style="fill:#fdffff;fill-opacity:0.94117647;stroke:none"
|
style="fill:#fdffff;fill-opacity:1;stroke:none"
|
||||||
sodipodi:type="arc" />
|
sodipodi:type="arc" />
|
||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
67
data/theme/page-indicator-checked.svg
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
width="18"
|
||||||
|
height="18"
|
||||||
|
id="svg4703"
|
||||||
|
version="1.1"
|
||||||
|
inkscape:version="0.48.4 r9939"
|
||||||
|
sodipodi:docname="page-indicator-active.svg">
|
||||||
|
<defs
|
||||||
|
id="defs4705" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="base"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1.0"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:zoom="22.197802"
|
||||||
|
inkscape:cx="2.1522887"
|
||||||
|
inkscape:cy="16.782904"
|
||||||
|
inkscape:current-layer="layer1"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:grid-bbox="true"
|
||||||
|
inkscape:document-units="px"
|
||||||
|
inkscape:window-width="1920"
|
||||||
|
inkscape:window-height="1021"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="27"
|
||||||
|
inkscape:window-maximized="1" />
|
||||||
|
<metadata
|
||||||
|
id="metadata4708">
|
||||||
|
<rdf:RDF>
|
||||||
|
<cc:Work
|
||||||
|
rdf:about="">
|
||||||
|
<dc:format>image/svg+xml</dc:format>
|
||||||
|
<dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
|
<dc:title />
|
||||||
|
</cc:Work>
|
||||||
|
</rdf:RDF>
|
||||||
|
</metadata>
|
||||||
|
<g
|
||||||
|
id="layer1"
|
||||||
|
inkscape:label="Layer 1"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
transform="translate(0,2)">
|
||||||
|
<path
|
||||||
|
transform="matrix(0.72823872,0,0,0.8336417,-1512.2872,-525.55618)"
|
||||||
|
d="m 2099.9808,638.83099 c 0,5.29998 -4.9184,9.59645 -10.9854,9.59645 -6.0671,0 -10.9854,-4.29647 -10.9854,-9.59645 0,-5.29997 4.9183,-9.59645 10.9854,-9.59645 6.067,0 10.9854,4.29648 10.9854,9.59645 z"
|
||||||
|
sodipodi:ry="9.5964489"
|
||||||
|
sodipodi:rx="10.985409"
|
||||||
|
sodipodi:cy="638.83099"
|
||||||
|
sodipodi:cx="2088.9954"
|
||||||
|
id="path4711"
|
||||||
|
style="fill:#fdffff;fill-opacity:0.94117647;stroke:none"
|
||||||
|
sodipodi:type="arc" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.1 KiB |
67
data/theme/page-indicator-hover.svg
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
width="18"
|
||||||
|
height="18"
|
||||||
|
id="svg5266"
|
||||||
|
version="1.1"
|
||||||
|
inkscape:version="0.48.4 r9939"
|
||||||
|
sodipodi:docname="page-indicator-inactive.svg">
|
||||||
|
<defs
|
||||||
|
id="defs5268" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="base"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1.0"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:zoom="11.313709"
|
||||||
|
inkscape:cx="-2.307566"
|
||||||
|
inkscape:cy="17.859535"
|
||||||
|
inkscape:current-layer="layer1"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:grid-bbox="true"
|
||||||
|
inkscape:document-units="px"
|
||||||
|
inkscape:window-width="2560"
|
||||||
|
inkscape:window-height="1374"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="27"
|
||||||
|
inkscape:window-maximized="1" />
|
||||||
|
<metadata
|
||||||
|
id="metadata5271">
|
||||||
|
<rdf:RDF>
|
||||||
|
<cc:Work
|
||||||
|
rdf:about="">
|
||||||
|
<dc:format>image/svg+xml</dc:format>
|
||||||
|
<dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
|
<dc:title></dc:title>
|
||||||
|
</cc:Work>
|
||||||
|
</rdf:RDF>
|
||||||
|
</metadata>
|
||||||
|
<g
|
||||||
|
id="layer1"
|
||||||
|
inkscape:label="Layer 1"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
transform="translate(0,2)">
|
||||||
|
<path
|
||||||
|
sodipodi:type="arc"
|
||||||
|
style="fill:none;fill-opacity:0;stroke:#ffffff;stroke-width:2.93356276000000005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||||
|
id="path5274"
|
||||||
|
sodipodi:cx="2088.9954"
|
||||||
|
sodipodi:cy="638.83099"
|
||||||
|
sodipodi:rx="10.985409"
|
||||||
|
sodipodi:ry="9.5964489"
|
||||||
|
d="m 2099.9808,638.83099 c 0,5.29998 -4.9184,9.59645 -10.9854,9.59645 -6.0671,0 -10.9854,-4.29647 -10.9854,-9.59645 0,-5.29997 4.9183,-9.59645 10.9854,-9.59645 6.067,0 10.9854,4.29648 10.9854,9.59645 z"
|
||||||
|
transform="matrix(0.63720887,0,0,0.72943648,-1322.1264,-458.98661)" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.2 KiB |
@ -25,14 +25,14 @@
|
|||||||
inkscape:pageopacity="0"
|
inkscape:pageopacity="0"
|
||||||
inkscape:pageshadow="2"
|
inkscape:pageshadow="2"
|
||||||
inkscape:zoom="11.313709"
|
inkscape:zoom="11.313709"
|
||||||
inkscape:cx="13.381365"
|
inkscape:cx="-2.307566"
|
||||||
inkscape:cy="17.859535"
|
inkscape:cy="17.859535"
|
||||||
inkscape:current-layer="layer1"
|
inkscape:current-layer="layer1"
|
||||||
showgrid="true"
|
showgrid="true"
|
||||||
inkscape:grid-bbox="true"
|
inkscape:grid-bbox="true"
|
||||||
inkscape:document-units="px"
|
inkscape:document-units="px"
|
||||||
inkscape:window-width="1920"
|
inkscape:window-width="2560"
|
||||||
inkscape:window-height="1021"
|
inkscape:window-height="1374"
|
||||||
inkscape:window-x="0"
|
inkscape:window-x="0"
|
||||||
inkscape:window-y="27"
|
inkscape:window-y="27"
|
||||||
inkscape:window-maximized="1" />
|
inkscape:window-maximized="1" />
|
||||||
@ -55,7 +55,7 @@
|
|||||||
transform="translate(0,2)">
|
transform="translate(0,2)">
|
||||||
<path
|
<path
|
||||||
sodipodi:type="arc"
|
sodipodi:type="arc"
|
||||||
style="fill:#ffffff;fill-opacity:0;stroke:#ffffff;stroke-width:2.93356276;stroke-miterlimit:4;stroke-opacity:0.39215686;stroke-dasharray:none"
|
style="fill:none;fill-opacity:0;stroke:#ffffff;stroke-width:2.93356276000000005;stroke-miterlimit:4;stroke-opacity:0.39215686000000000;stroke-dasharray:none"
|
||||||
id="path5274"
|
id="path5274"
|
||||||
sodipodi:cx="2088.9954"
|
sodipodi:cx="2088.9954"
|
||||||
sodipodi:cy="638.83099"
|
sodipodi:cy="638.83099"
|
||||||
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
BIN
data/wanda.png
Before Width: | Height: | Size: 13 KiB |
@ -21,6 +21,7 @@ nobase_dist_js_DATA = \
|
|||||||
gdm/batch.js \
|
gdm/batch.js \
|
||||||
gdm/fingerprint.js \
|
gdm/fingerprint.js \
|
||||||
gdm/loginDialog.js \
|
gdm/loginDialog.js \
|
||||||
|
gdm/oVirt.js \
|
||||||
gdm/realmd.js \
|
gdm/realmd.js \
|
||||||
gdm/util.js \
|
gdm/util.js \
|
||||||
extensionPrefs/main.js \
|
extensionPrefs/main.js \
|
||||||
@ -89,7 +90,6 @@ nobase_dist_js_DATA = \
|
|||||||
ui/screenShield.js \
|
ui/screenShield.js \
|
||||||
ui/scripting.js \
|
ui/scripting.js \
|
||||||
ui/search.js \
|
ui/search.js \
|
||||||
ui/searchDisplay.js \
|
|
||||||
ui/shellDBus.js \
|
ui/shellDBus.js \
|
||||||
ui/status/accessibility.js \
|
ui/status/accessibility.js \
|
||||||
ui/status/brightness.js \
|
ui/status/brightness.js \
|
||||||
@ -106,7 +106,6 @@ nobase_dist_js_DATA = \
|
|||||||
ui/unlockDialog.js \
|
ui/unlockDialog.js \
|
||||||
ui/userWidget.js \
|
ui/userWidget.js \
|
||||||
ui/viewSelector.js \
|
ui/viewSelector.js \
|
||||||
ui/wanda.js \
|
|
||||||
ui/windowAttentionHandler.js \
|
ui/windowAttentionHandler.js \
|
||||||
ui/windowManager.js \
|
ui/windowManager.js \
|
||||||
ui/workspace.js \
|
ui/workspace.js \
|
||||||
|
@ -13,13 +13,15 @@ const _ = Gettext.gettext;
|
|||||||
const Config = imports.misc.config;
|
const Config = imports.misc.config;
|
||||||
const ExtensionUtils = imports.misc.extensionUtils;
|
const ExtensionUtils = imports.misc.extensionUtils;
|
||||||
|
|
||||||
const GnomeShellIface = <interface name="org.gnome.Shell.Extensions">
|
const GnomeShellIface = '<node> \
|
||||||
<signal name="ExtensionStatusChanged">
|
<interface name="org.gnome.Shell.Extensions"> \
|
||||||
<arg type="s" name="uuid"/>
|
<signal name="ExtensionStatusChanged"> \
|
||||||
<arg type="i" name="state"/>
|
<arg type="s" name="uuid"/> \
|
||||||
<arg type="s" name="error"/>
|
<arg type="i" name="state"/> \
|
||||||
</signal>
|
<arg type="s" name="error"/> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const GnomeShellProxy = Gio.DBusProxy.makeProxyWrapper(GnomeShellIface);
|
const GnomeShellProxy = Gio.DBusProxy.makeProxyWrapper(GnomeShellIface);
|
||||||
|
|
||||||
|
@ -59,6 +59,7 @@ const AuthPrompt = new Lang.Class({
|
|||||||
this._userVerifier.connect('verification-complete', Lang.bind(this, this._onVerificationComplete));
|
this._userVerifier.connect('verification-complete', Lang.bind(this, this._onVerificationComplete));
|
||||||
this._userVerifier.connect('reset', Lang.bind(this, this._onReset));
|
this._userVerifier.connect('reset', Lang.bind(this, this._onReset));
|
||||||
this._userVerifier.connect('smartcard-status-changed', Lang.bind(this, this._onSmartcardStatusChanged));
|
this._userVerifier.connect('smartcard-status-changed', Lang.bind(this, this._onSmartcardStatusChanged));
|
||||||
|
this._userVerifier.connect('ovirt-user-authenticated', Lang.bind(this, this._onOVirtUserAuthenticated));
|
||||||
this.smartcardDetected = this._userVerifier.smartcardDetected;
|
this.smartcardDetected = this._userVerifier.smartcardDetected;
|
||||||
|
|
||||||
this.connect('next', Lang.bind(this, function() {
|
this.connect('next', Lang.bind(this, function() {
|
||||||
@ -219,6 +220,11 @@ const AuthPrompt = new Lang.Class({
|
|||||||
this.emit('prompted');
|
this.emit('prompted');
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_onOVirtUserAuthenticated: function() {
|
||||||
|
if (this.verificationStatus != AuthPromptStatus.VERIFICATION_SUCCEEDED)
|
||||||
|
this.reset();
|
||||||
|
},
|
||||||
|
|
||||||
_onSmartcardStatusChanged: function() {
|
_onSmartcardStatusChanged: function() {
|
||||||
this.smartcardDetected = this._userVerifier.smartcardDetected;
|
this.smartcardDetected = this._userVerifier.smartcardDetected;
|
||||||
|
|
||||||
@ -444,10 +450,11 @@ const AuthPrompt = new Lang.Class({
|
|||||||
// The user is constant at the unlock screen, so it will immediately
|
// The user is constant at the unlock screen, so it will immediately
|
||||||
// respond to the request with the username
|
// respond to the request with the username
|
||||||
beginRequestType = BeginRequestType.PROVIDE_USERNAME;
|
beginRequestType = BeginRequestType.PROVIDE_USERNAME;
|
||||||
} else if (this.smartcardDetected &&
|
} else if (this._userVerifier.serviceIsForeground(GdmUtil.OVIRT_SERVICE_NAME) ||
|
||||||
this._userVerifier.serviceIsForeground(GdmUtil.SMARTCARD_SERVICE_NAME)) {
|
(this.smartcardDetected &&
|
||||||
|
this._userVerifier.serviceIsForeground(GdmUtil.SMARTCARD_SERVICE_NAME))) {
|
||||||
// We don't need to know the username if the user preempted the login screen
|
// We don't need to know the username if the user preempted the login screen
|
||||||
// with a smartcard.
|
// with a smartcard or with preauthenticated oVirt credentials
|
||||||
beginRequestType = BeginRequestType.DONT_PROVIDE_USERNAME;
|
beginRequestType = BeginRequestType.DONT_PROVIDE_USERNAME;
|
||||||
} else {
|
} else {
|
||||||
// In all other cases, we should get the username up front.
|
// In all other cases, we should get the username up front.
|
||||||
|
@ -5,11 +5,13 @@ const Lang = imports.lang;
|
|||||||
const Shell = imports.gi.Shell;
|
const Shell = imports.gi.Shell;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
const FprintManagerIface = <interface name='net.reactivated.Fprint.Manager'>
|
const FprintManagerIface = '<node> \
|
||||||
<method name='GetDefaultDevice'>
|
<interface name="net.reactivated.Fprint.Manager"> \
|
||||||
<arg type='o' direction='out' />
|
<method name="GetDefaultDevice"> \
|
||||||
</method>
|
<arg type="o" direction="out" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const FprintManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(FprintManagerIface);
|
const FprintManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(FprintManagerIface);
|
||||||
|
|
||||||
|
@ -619,7 +619,7 @@ const LoginDialog = new Lang.Class({
|
|||||||
|
|
||||||
// Translators: this message is shown below the username entry field
|
// Translators: this message is shown below the username entry field
|
||||||
// to clue the user in on how to login to the local network realm
|
// to clue the user in on how to login to the local network realm
|
||||||
this._authPrompt.setMessage(_("(e.g., user or %s)").format(hint), AuthPrompt.MessageType.HINT);
|
this._authPrompt.setMessage(_("(e.g., user or %s)").format(hint), GdmUtil.MessageType.HINT);
|
||||||
},
|
},
|
||||||
|
|
||||||
_askForUsernameAndBeginVerification: function() {
|
_askForUsernameAndBeginVerification: function() {
|
||||||
|
64
js/gdm/oVirt.js
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||||
|
|
||||||
|
const Gio = imports.gi.Gio;
|
||||||
|
const Lang = imports.lang;
|
||||||
|
const Signals = imports.signals;
|
||||||
|
|
||||||
|
const OVirtCredentialsIface = '<node> \
|
||||||
|
<interface name="org.ovirt.vdsm.Credentials"> \
|
||||||
|
<signal name="UserAuthenticated"> \
|
||||||
|
<arg type="s" name="token"/> \
|
||||||
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
|
const OVirtCredentialsInfo = Gio.DBusInterfaceInfo.new_for_xml(OVirtCredentialsIface);
|
||||||
|
|
||||||
|
let _oVirtCredentialsManager = null;
|
||||||
|
|
||||||
|
function OVirtCredentials() {
|
||||||
|
var self = new Gio.DBusProxy({ g_connection: Gio.DBus.system,
|
||||||
|
g_interface_name: OVirtCredentialsInfo.name,
|
||||||
|
g_interface_info: OVirtCredentialsInfo,
|
||||||
|
g_name: 'org.ovirt.vdsm.Credentials',
|
||||||
|
g_object_path: '/org/ovirt/vdsm/Credentials',
|
||||||
|
g_flags: (Gio.DBusProxyFlags.DO_NOT_LOAD_PROPERTIES) });
|
||||||
|
self.init(null);
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
|
||||||
|
const OVirtCredentialsManager = new Lang.Class({
|
||||||
|
Name: 'OVirtCredentialsManager',
|
||||||
|
_init: function() {
|
||||||
|
this._token = null;
|
||||||
|
|
||||||
|
this._credentials = new OVirtCredentials();
|
||||||
|
this._credentials.connectSignal('UserAuthenticated',
|
||||||
|
Lang.bind(this, this._onUserAuthenticated));
|
||||||
|
},
|
||||||
|
|
||||||
|
_onUserAuthenticated: function(proxy, sender, [token]) {
|
||||||
|
this._token = token;
|
||||||
|
this.emit('user-authenticated', token);
|
||||||
|
},
|
||||||
|
|
||||||
|
hasToken: function() {
|
||||||
|
return this._token != null;
|
||||||
|
},
|
||||||
|
|
||||||
|
getToken: function() {
|
||||||
|
return this._token;
|
||||||
|
},
|
||||||
|
|
||||||
|
resetToken: function() {
|
||||||
|
this._token = null;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
Signals.addSignalMethods(OVirtCredentialsManager.prototype);
|
||||||
|
|
||||||
|
function getOVirtCredentialsManager() {
|
||||||
|
if (!_oVirtCredentialsManager)
|
||||||
|
_oVirtCredentialsManager = new OVirtCredentialsManager();
|
||||||
|
|
||||||
|
return _oVirtCredentialsManager;
|
||||||
|
}
|
@ -5,52 +5,58 @@ const Lang = imports.lang;
|
|||||||
const Shell = imports.gi.Shell;
|
const Shell = imports.gi.Shell;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
const ProviderIface = <interface name='org.freedesktop.realmd.Provider'>
|
const ProviderIface = '<node> \
|
||||||
<property name="Name" type="s" access="read"/>
|
<interface name="org.freedesktop.realmd.Provider"> \
|
||||||
<property name="Version" type="s" access="read"/>
|
<property name="Name" type="s" access="read"/> \
|
||||||
<property name="Realms" type="ao" access="read"/>
|
<property name="Version" type="s" access="read"/> \
|
||||||
<method name="Discover">
|
<property name="Realms" type="ao" access="read"/> \
|
||||||
<arg name="string" type="s" direction="in"/>
|
<method name="Discover"> \
|
||||||
<arg name="options" type="a{sv}" direction="in"/>
|
<arg name="string" type="s" direction="in"/> \
|
||||||
<arg name="relevance" type="i" direction="out"/>
|
<arg name="options" type="a{sv}" direction="in"/> \
|
||||||
<arg name="realm" type="ao" direction="out"/>
|
<arg name="relevance" type="i" direction="out"/> \
|
||||||
</method>
|
<arg name="realm" type="ao" direction="out"/> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
const Provider = Gio.DBusProxy.makeProxyWrapper(ProviderIface);
|
const Provider = Gio.DBusProxy.makeProxyWrapper(ProviderIface);
|
||||||
|
|
||||||
const ServiceIface = <interface name="org.freedesktop.realmd.Service">
|
const ServiceIface = '<node> \
|
||||||
<method name="Cancel">
|
<interface name="org.freedesktop.realmd.Service"> \
|
||||||
<arg name="operation" type="s" direction="in"/>
|
<method name="Cancel"> \
|
||||||
</method>
|
<arg name="operation" type="s" direction="in"/> \
|
||||||
<method name="Release" />
|
</method> \
|
||||||
<method name="SetLocale">
|
<method name="Release" /> \
|
||||||
<arg name="locale" type="s" direction="in"/>
|
<method name="SetLocale"> \
|
||||||
</method>
|
<arg name="locale" type="s" direction="in"/> \
|
||||||
<signal name="Diagnostics">
|
</method> \
|
||||||
<arg name="data" type="s"/>
|
<signal name="Diagnostics"> \
|
||||||
<arg name="operation" type="s"/>
|
<arg name="data" type="s"/> \
|
||||||
</signal>
|
<arg name="operation" type="s"/> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
const Service = Gio.DBusProxy.makeProxyWrapper(ServiceIface);
|
const Service = Gio.DBusProxy.makeProxyWrapper(ServiceIface);
|
||||||
|
|
||||||
const RealmIface = <interface name="org.freedesktop.realmd.Realm">
|
const RealmIface = '<node> \
|
||||||
<property name="Name" type="s" access="read"/>
|
<interface name="org.freedesktop.realmd.Realm"> \
|
||||||
<property name="Configured" type="s" access="read"/>
|
<property name="Name" type="s" access="read"/> \
|
||||||
<property name="Details" type="a(ss)" access="read"/>
|
<property name="Configured" type="s" access="read"/> \
|
||||||
<property name="LoginFormats" type="as" access="read"/>
|
<property name="Details" type="a(ss)" access="read"/> \
|
||||||
<property name="LoginPolicy" type="s" access="read"/>
|
<property name="LoginFormats" type="as" access="read"/> \
|
||||||
<property name="PermittedLogins" type="as" access="read"/>
|
<property name="LoginPolicy" type="s" access="read"/> \
|
||||||
<property name="SupportedInterfaces" type="as" access="read"/>
|
<property name="PermittedLogins" type="as" access="read"/> \
|
||||||
<method name="ChangeLoginPolicy">
|
<property name="SupportedInterfaces" type="as" access="read"/> \
|
||||||
<arg name="login_policy" type="s" direction="in"/>
|
<method name="ChangeLoginPolicy"> \
|
||||||
<arg name="permitted_add" type="as" direction="in"/>
|
<arg name="login_policy" type="s" direction="in"/> \
|
||||||
<arg name="permitted_remove" type="as" direction="in"/>
|
<arg name="permitted_add" type="as" direction="in"/> \
|
||||||
<arg name="options" type="a{sv}" direction="in"/>
|
<arg name="permitted_remove" type="as" direction="in"/> \
|
||||||
</method>
|
<arg name="options" type="a{sv}" direction="in"/> \
|
||||||
<method name="Deconfigure">
|
</method> \
|
||||||
<arg name="options" type="a{sv}" direction="in"/>
|
<method name="Deconfigure"> \
|
||||||
</method>
|
<arg name="options" type="a{sv}" direction="in"/> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
const Realm = Gio.DBusProxy.makeProxyWrapper(RealmIface);
|
const Realm = Gio.DBusProxy.makeProxyWrapper(RealmIface);
|
||||||
|
|
||||||
const Manager = new Lang.Class({
|
const Manager = new Lang.Class({
|
||||||
|
@ -10,6 +10,7 @@ const St = imports.gi.St;
|
|||||||
|
|
||||||
const Batch = imports.gdm.batch;
|
const Batch = imports.gdm.batch;
|
||||||
const Fprint = imports.gdm.fingerprint;
|
const Fprint = imports.gdm.fingerprint;
|
||||||
|
const OVirt = imports.gdm.oVirt;
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
const Params = imports.misc.params;
|
const Params = imports.misc.params;
|
||||||
const ShellEntry = imports.ui.shellEntry;
|
const ShellEntry = imports.ui.shellEntry;
|
||||||
@ -19,6 +20,7 @@ const Tweener = imports.ui.tweener;
|
|||||||
const PASSWORD_SERVICE_NAME = 'gdm-password';
|
const PASSWORD_SERVICE_NAME = 'gdm-password';
|
||||||
const FINGERPRINT_SERVICE_NAME = 'gdm-fingerprint';
|
const FINGERPRINT_SERVICE_NAME = 'gdm-fingerprint';
|
||||||
const SMARTCARD_SERVICE_NAME = 'gdm-smartcard';
|
const SMARTCARD_SERVICE_NAME = 'gdm-smartcard';
|
||||||
|
const OVIRT_SERVICE_NAME = 'gdm-ovirtcred';
|
||||||
const FADE_ANIMATION_TIME = 0.16;
|
const FADE_ANIMATION_TIME = 0.16;
|
||||||
const CLONE_FADE_ANIMATION_TIME = 0.25;
|
const CLONE_FADE_ANIMATION_TIME = 0.25;
|
||||||
|
|
||||||
@ -151,6 +153,14 @@ const ShellUserVerifier = new Lang.Class({
|
|||||||
this.reauthenticating = false;
|
this.reauthenticating = false;
|
||||||
|
|
||||||
this._failCounter = 0;
|
this._failCounter = 0;
|
||||||
|
|
||||||
|
this._oVirtCredentialsManager = OVirt.getOVirtCredentialsManager();
|
||||||
|
|
||||||
|
if (this._oVirtCredentialsManager.hasToken())
|
||||||
|
this._oVirtUserAuthenticated(this._oVirtCredentialsManager.getToken());
|
||||||
|
|
||||||
|
this._oVirtCredentialsManager.connect('user-authenticated',
|
||||||
|
Lang.bind(this, this._oVirtUserAuthenticated));
|
||||||
},
|
},
|
||||||
|
|
||||||
begin: function(userName, hold) {
|
begin: function(userName, hold) {
|
||||||
@ -277,6 +287,11 @@ const ShellUserVerifier = new Lang.Class({
|
|||||||
}));
|
}));
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_oVirtUserAuthenticated: function(token) {
|
||||||
|
this._preemptingService = OVIRT_SERVICE_NAME;
|
||||||
|
this.emit('ovirt-user-authenticated');
|
||||||
|
},
|
||||||
|
|
||||||
_checkForSmartcard: function() {
|
_checkForSmartcard: function() {
|
||||||
let smartcardDetected;
|
let smartcardDetected;
|
||||||
|
|
||||||
@ -455,6 +470,12 @@ const ShellUserVerifier = new Lang.Class({
|
|||||||
if (!this.serviceIsForeground(serviceName))
|
if (!this.serviceIsForeground(serviceName))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (serviceName == OVIRT_SERVICE_NAME) {
|
||||||
|
// The only question asked by this service is "Token?"
|
||||||
|
this.answerQuery(serviceName, this._oVirtCredentialsManager.getToken());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
this.emit('ask-question', serviceName, secretQuestion, '\u25cf');
|
this.emit('ask-question', serviceName, secretQuestion, '\u25cf');
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -515,6 +536,16 @@ const ShellUserVerifier = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_onConversationStopped: function(client, serviceName) {
|
_onConversationStopped: function(client, serviceName) {
|
||||||
|
// If the login failed with the preauthenticated oVirt credentials
|
||||||
|
// then discard the credentials and revert to default authentication
|
||||||
|
// mechanism.
|
||||||
|
if (this.serviceIsForeground(OVIRT_SERVICE_NAME)) {
|
||||||
|
this._oVirtCredentialsManager.resetToken();
|
||||||
|
this._preemptingService = null;
|
||||||
|
this._verificationFailed(false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// if the password service fails, then cancel everything.
|
// if the password service fails, then cancel everything.
|
||||||
// But if, e.g., fingerprint fails, still give
|
// But if, e.g., fingerprint fails, still give
|
||||||
// password authentication a chance to succeed
|
// password authentication a chance to succeed
|
||||||
|
@ -4,15 +4,17 @@ const Gio = imports.gi.Gio;
|
|||||||
const Lang = imports.lang;
|
const Lang = imports.lang;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
const PresenceIface = <interface name="org.gnome.SessionManager.Presence">
|
const PresenceIface = '<node> \
|
||||||
<method name="SetStatus">
|
<interface name="org.gnome.SessionManager.Presence"> \
|
||||||
<arg type="u" direction="in"/>
|
<method name="SetStatus"> \
|
||||||
</method>
|
<arg type="u" direction="in"/> \
|
||||||
<property name="status" type="u" access="readwrite"/>
|
</method> \
|
||||||
<signal name="StatusChanged">
|
<property name="status" type="u" access="readwrite"/> \
|
||||||
<arg type="u" direction="out"/>
|
<signal name="StatusChanged"> \
|
||||||
</signal>
|
<arg type="u" direction="out"/> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const PresenceStatus = {
|
const PresenceStatus = {
|
||||||
AVAILABLE: 0,
|
AVAILABLE: 0,
|
||||||
@ -30,14 +32,16 @@ function Presence(initCallback, cancellable) {
|
|||||||
// Note inhibitors are immutable objects, so they don't
|
// Note inhibitors are immutable objects, so they don't
|
||||||
// change at runtime (changes always come in the form
|
// change at runtime (changes always come in the form
|
||||||
// of new inhibitors)
|
// of new inhibitors)
|
||||||
const InhibitorIface = <interface name="org.gnome.SessionManager.Inhibitor">
|
const InhibitorIface = '<node> \
|
||||||
<method name="GetAppId">
|
<interface name="org.gnome.SessionManager.Inhibitor"> \
|
||||||
<arg type="s" direction="out" />
|
<method name="GetAppId"> \
|
||||||
</method>
|
<arg type="s" direction="out" /> \
|
||||||
<method name="GetReason">
|
</method> \
|
||||||
<arg type="s" direction="out" />
|
<method name="GetReason"> \
|
||||||
</method>
|
<arg type="s" direction="out" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
var InhibitorProxy = Gio.DBusProxy.makeProxyWrapper(InhibitorIface);
|
var InhibitorProxy = Gio.DBusProxy.makeProxyWrapper(InhibitorIface);
|
||||||
function Inhibitor(objectPath, initCallback, cancellable) {
|
function Inhibitor(objectPath, initCallback, cancellable) {
|
||||||
@ -45,27 +49,29 @@ function Inhibitor(objectPath, initCallback, cancellable) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Not the full interface, only the methods we use
|
// Not the full interface, only the methods we use
|
||||||
const SessionManagerIface = <interface name="org.gnome.SessionManager">
|
const SessionManagerIface = '<node> \
|
||||||
<method name="Logout">
|
<interface name="org.gnome.SessionManager"> \
|
||||||
<arg type="u" direction="in" />
|
<method name="Logout"> \
|
||||||
</method>
|
<arg type="u" direction="in" /> \
|
||||||
<method name="Shutdown" />
|
</method> \
|
||||||
<method name="Reboot" />
|
<method name="Shutdown" /> \
|
||||||
<method name="CanShutdown">
|
<method name="Reboot" /> \
|
||||||
<arg type="b" direction="out" />
|
<method name="CanShutdown"> \
|
||||||
</method>
|
<arg type="b" direction="out" /> \
|
||||||
<method name="IsInhibited">
|
</method> \
|
||||||
<arg type="u" direction="in" />
|
<method name="IsInhibited"> \
|
||||||
<arg type="b" direction="out" />
|
<arg type="u" direction="in" /> \
|
||||||
</method>
|
<arg type="b" direction="out" /> \
|
||||||
<property name="SessionIsActive" type="b" access="read"/>
|
</method> \
|
||||||
<signal name="InhibitorAdded">
|
<property name="SessionIsActive" type="b" access="read"/> \
|
||||||
<arg type="o" direction="out"/>
|
<signal name="InhibitorAdded"> \
|
||||||
</signal>
|
<arg type="o" direction="out"/> \
|
||||||
<signal name="InhibitorRemoved">
|
</signal> \
|
||||||
<arg type="o" direction="out"/>
|
<signal name="InhibitorRemoved"> \
|
||||||
</signal>
|
<arg type="o" direction="out"/> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
var SessionManagerProxy = Gio.DBusProxy.makeProxyWrapper(SessionManagerIface);
|
var SessionManagerProxy = Gio.DBusProxy.makeProxyWrapper(SessionManagerIface);
|
||||||
function SessionManager(initCallback, cancellable) {
|
function SessionManager(initCallback, cancellable) {
|
||||||
|
@ -7,58 +7,66 @@ const Mainloop = imports.mainloop;
|
|||||||
const Shell = imports.gi.Shell;
|
const Shell = imports.gi.Shell;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
const SystemdLoginManagerIface = <interface name='org.freedesktop.login1.Manager'>
|
const SystemdLoginManagerIface = '<node> \
|
||||||
<method name='Suspend'>
|
<interface name="org.freedesktop.login1.Manager"> \
|
||||||
<arg type='b' direction='in'/>
|
<method name="Suspend"> \
|
||||||
</method>
|
<arg type="b" direction="in"/> \
|
||||||
<method name='CanSuspend'>
|
</method> \
|
||||||
<arg type='s' direction='out'/>
|
<method name="CanSuspend"> \
|
||||||
</method>
|
<arg type="s" direction="out"/> \
|
||||||
<method name='Inhibit'>
|
</method> \
|
||||||
<arg type='s' direction='in'/>
|
<method name="Inhibit"> \
|
||||||
<arg type='s' direction='in'/>
|
<arg type="s" direction="in"/> \
|
||||||
<arg type='s' direction='in'/>
|
<arg type="s" direction="in"/> \
|
||||||
<arg type='s' direction='in'/>
|
<arg type="s" direction="in"/> \
|
||||||
<arg type='h' direction='out'/>
|
<arg type="s" direction="in"/> \
|
||||||
</method>
|
<arg type="h" direction="out"/> \
|
||||||
<method name='GetSession'>
|
</method> \
|
||||||
<arg type='s' direction='in'/>
|
<method name="GetSession"> \
|
||||||
<arg type='o' direction='out'/>
|
<arg type="s" direction="in"/> \
|
||||||
</method>
|
<arg type="o" direction="out"/> \
|
||||||
<method name='ListSessions'>
|
</method> \
|
||||||
<arg name='sessions' type='a(susso)' direction='out'/>
|
<method name="ListSessions"> \
|
||||||
</method>
|
<arg name="sessions" type="a(susso)" direction="out"/> \
|
||||||
<signal name='PrepareForSleep'>
|
</method> \
|
||||||
<arg type='b' direction='out'/>
|
<signal name="PrepareForSleep"> \
|
||||||
</signal>
|
<arg type="b" direction="out"/> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const SystemdLoginSessionIface = <interface name='org.freedesktop.login1.Session'>
|
const SystemdLoginSessionIface = '<node> \
|
||||||
<signal name='Lock' />
|
<interface name="org.freedesktop.login1.Session"> \
|
||||||
<signal name='Unlock' />
|
<signal name="Lock" /> \
|
||||||
</interface>;
|
<signal name="Unlock" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const SystemdLoginManager = Gio.DBusProxy.makeProxyWrapper(SystemdLoginManagerIface);
|
const SystemdLoginManager = Gio.DBusProxy.makeProxyWrapper(SystemdLoginManagerIface);
|
||||||
const SystemdLoginSession = Gio.DBusProxy.makeProxyWrapper(SystemdLoginSessionIface);
|
const SystemdLoginSession = Gio.DBusProxy.makeProxyWrapper(SystemdLoginSessionIface);
|
||||||
|
|
||||||
const ConsoleKitManagerIface = <interface name='org.freedesktop.ConsoleKit.Manager'>
|
const ConsoleKitManagerIface = '<node> \
|
||||||
<method name='CanRestart'>
|
<interface name="org.freedesktop.ConsoleKit.Manager"> \
|
||||||
<arg type='b' direction='out'/>
|
<method name="CanRestart"> \
|
||||||
</method>
|
<arg type="b" direction="out"/> \
|
||||||
<method name='CanStop'>
|
</method> \
|
||||||
<arg type='b' direction='out'/>
|
<method name="CanStop"> \
|
||||||
</method>
|
<arg type="b" direction="out"/> \
|
||||||
<method name='Restart' />
|
</method> \
|
||||||
<method name='Stop' />
|
<method name="Restart" /> \
|
||||||
<method name='GetCurrentSession'>
|
<method name="Stop" /> \
|
||||||
<arg type='o' direction='out' />
|
<method name="GetCurrentSession"> \
|
||||||
</method>
|
<arg type="o" direction="out" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const ConsoleKitSessionIface = <interface name='org.freedesktop.ConsoleKit.Session'>
|
const ConsoleKitSessionIface = '<node> \
|
||||||
<signal name='Lock' />
|
<interface name="org.freedesktop.ConsoleKit.Session"> \
|
||||||
<signal name='Unlock' />
|
<signal name="Lock" /> \
|
||||||
</interface>;
|
<signal name="Unlock" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const ConsoleKitSession = Gio.DBusProxy.makeProxyWrapper(ConsoleKitSessionIface);
|
const ConsoleKitSession = Gio.DBusProxy.makeProxyWrapper(ConsoleKitSessionIface);
|
||||||
const ConsoleKitManager = Gio.DBusProxy.makeProxyWrapper(ConsoleKitManagerIface);
|
const ConsoleKitManager = Gio.DBusProxy.makeProxyWrapper(ConsoleKitManagerIface);
|
||||||
|
@ -92,37 +92,41 @@ function _findProviderForSid(sid) {
|
|||||||
// The following are not the complete interfaces, just the methods we need
|
// The following are not the complete interfaces, just the methods we need
|
||||||
// (or may need in the future)
|
// (or may need in the future)
|
||||||
|
|
||||||
const ModemGsmNetworkInterface = <interface name="org.freedesktop.ModemManager.Modem.Gsm.Network">
|
const ModemGsmNetworkInterface = '<node> \
|
||||||
<method name="GetRegistrationInfo">
|
<interface name="org.freedesktop.ModemManager.Modem.Gsm.Network"> \
|
||||||
<arg type="(uss)" direction="out" />
|
<method name="GetRegistrationInfo"> \
|
||||||
</method>
|
<arg type="(uss)" direction="out" /> \
|
||||||
<method name="GetSignalQuality">
|
</method> \
|
||||||
<arg type="u" direction="out" />
|
<method name="GetSignalQuality"> \
|
||||||
</method>
|
<arg type="u" direction="out" /> \
|
||||||
<property name="AccessTechnology" type="u" access="read" />
|
</method> \
|
||||||
<signal name="SignalQuality">
|
<property name="AccessTechnology" type="u" access="read" /> \
|
||||||
<arg type="u" direction="out" />
|
<signal name="SignalQuality"> \
|
||||||
</signal>
|
<arg type="u" direction="out" /> \
|
||||||
<signal name="RegistrationInfo">
|
</signal> \
|
||||||
<arg type="u" direction="out" />
|
<signal name="RegistrationInfo"> \
|
||||||
<arg type="s" direction="out" />
|
<arg type="u" direction="out" /> \
|
||||||
<arg type="s" direction="out" />
|
<arg type="s" direction="out" /> \
|
||||||
</signal>
|
<arg type="s" direction="out" /> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const ModemGsmNetworkProxy = Gio.DBusProxy.makeProxyWrapper(ModemGsmNetworkInterface);
|
const ModemGsmNetworkProxy = Gio.DBusProxy.makeProxyWrapper(ModemGsmNetworkInterface);
|
||||||
|
|
||||||
const ModemCdmaInterface = <interface name="org.freedesktop.ModemManager.Modem.Cdma">
|
const ModemCdmaInterface = '<node> \
|
||||||
<method name="GetSignalQuality">
|
<interface name="org.freedesktop.ModemManager.Modem.Cdma"> \
|
||||||
<arg type="u" direction="out" />
|
<method name="GetSignalQuality"> \
|
||||||
</method>
|
<arg type="u" direction="out" /> \
|
||||||
<method name="GetServingSystem">
|
</method> \
|
||||||
<arg type="(usu)" direction="out" />
|
<method name="GetServingSystem"> \
|
||||||
</method>
|
<arg type="(usu)" direction="out" /> \
|
||||||
<signal name="SignalQuality">
|
</method> \
|
||||||
<arg type="u" direction="out" />
|
<signal name="SignalQuality"> \
|
||||||
</signal>
|
<arg type="u" direction="out" /> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const ModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(ModemCdmaInterface);
|
const ModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(ModemCdmaInterface);
|
||||||
|
|
||||||
@ -218,20 +222,26 @@ Signals.addSignalMethods(ModemCdma.prototype);
|
|||||||
// Support for the new ModemManager1 interface (MM >= 0.7)
|
// Support for the new ModemManager1 interface (MM >= 0.7)
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
const BroadbandModemInterface = <interface name="org.freedesktop.ModemManager1.Modem">
|
const BroadbandModemInterface = '<node> \
|
||||||
<property name="SignalQuality" type="(ub)" access="read" />
|
<interface name="org.freedesktop.ModemManager1.Modem"> \
|
||||||
</interface>;
|
<property name="SignalQuality" type="(ub)" access="read" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
const BroadbandModemProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemInterface);
|
const BroadbandModemProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemInterface);
|
||||||
|
|
||||||
const BroadbandModem3gppInterface = <interface name="org.freedesktop.ModemManager1.Modem.Modem3gpp">
|
const BroadbandModem3gppInterface = '<node> \
|
||||||
<property name="OperatorCode" type="s" access="read" />
|
<interface name="org.freedesktop.ModemManager1.Modem.Modem3gpp"> \
|
||||||
<property name="OperatorName" type="s" access="read" />
|
<property name="OperatorCode" type="s" access="read" /> \
|
||||||
</interface>;
|
<property name="OperatorName" type="s" access="read" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
const BroadbandModem3gppProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModem3gppInterface);
|
const BroadbandModem3gppProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModem3gppInterface);
|
||||||
|
|
||||||
const BroadbandModemCdmaInterface = <interface name="org.freedesktop.ModemManager1.Modem.ModemCdma">
|
const BroadbandModemCdmaInterface = '<node> \
|
||||||
<property name="Sid" type="u" access="read" />
|
<interface name="org.freedesktop.ModemManager1.Modem.ModemCdma"> \
|
||||||
</interface>;
|
<property name="Sid" type="u" access="read" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
const BroadbandModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemCdmaInterface);
|
const BroadbandModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemCdmaInterface);
|
||||||
|
|
||||||
const BroadbandModem = new Lang.Class({
|
const BroadbandModem = new Lang.Class({
|
||||||
|
@ -8,19 +8,21 @@ const Signals = imports.signals;
|
|||||||
|
|
||||||
// Specified in the D-Bus specification here:
|
// Specified in the D-Bus specification here:
|
||||||
// http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager
|
// http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager
|
||||||
const ObjectManagerIface = <interface name="org.freedesktop.DBus.ObjectManager">
|
const ObjectManagerIface = '<node> \
|
||||||
<method name="GetManagedObjects">
|
<interface name="org.freedesktop.DBus.ObjectManager"> \
|
||||||
<arg name="objects" type="a{oa{sa{sv}}}" direction="out"/>
|
<method name="GetManagedObjects"> \
|
||||||
</method>
|
<arg name="objects" type="a{oa{sa{sv}}}" direction="out"/> \
|
||||||
<signal name="InterfacesAdded">
|
</method> \
|
||||||
<arg name="objectPath" type="o"/>
|
<signal name="InterfacesAdded"> \
|
||||||
<arg name="interfaces" type="a{sa{sv}}" />
|
<arg name="objectPath" type="o"/> \
|
||||||
</signal>
|
<arg name="interfaces" type="a{sa{sv}}" /> \
|
||||||
<signal name="InterfacesRemoved">
|
</signal> \
|
||||||
<arg name="objectPath" type="o"/>
|
<signal name="InterfacesRemoved"> \
|
||||||
<arg name="interfaces" type="as" />
|
<arg name="objectPath" type="o"/> \
|
||||||
</signal>
|
<arg name="interfaces" type="as" /> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const ObjectManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(ObjectManagerIface);
|
const ObjectManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(ObjectManagerIface);
|
||||||
|
|
||||||
|
@ -7,12 +7,14 @@ const Signals = imports.signals;
|
|||||||
|
|
||||||
const ObjectManager = imports.misc.objectManager;
|
const ObjectManager = imports.misc.objectManager;
|
||||||
|
|
||||||
const SmartcardTokenIface = <interface name="org.gnome.SettingsDaemon.Smartcard.Token">
|
const SmartcardTokenIface = '<node> \
|
||||||
<property name="Name" type="s" access="read"/>
|
<interface name="org.gnome.SettingsDaemon.Smartcard.Token"> \
|
||||||
<property name="Driver" type="o" access="read"/>
|
<property name="Name" type="s" access="read"/> \
|
||||||
<property name="IsInserted" type="b" access="read"/>
|
<property name="Driver" type="o" access="read"/> \
|
||||||
<property name="UsedToLogin" type="b" access="read"/>
|
<property name="IsInserted" type="b" access="read"/> \
|
||||||
</interface>;
|
<property name="UsedToLogin" type="b" access="read"/> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
let _smartcardManager = null;
|
let _smartcardManager = null;
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||||
|
|
||||||
const Clutter = imports.gi.Clutter;
|
const Clutter = imports.gi.Clutter;
|
||||||
|
const Gio = imports.gi.Gio;
|
||||||
const GLib = imports.gi.GLib;
|
const GLib = imports.gi.GLib;
|
||||||
const Lang = imports.lang;
|
const Lang = imports.lang;
|
||||||
const St = imports.gi.St;
|
const St = imports.gi.St;
|
||||||
@ -79,6 +80,22 @@ function spawnCommandLine(command_line) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// spawnApp:
|
||||||
|
// @argv: an argv array
|
||||||
|
//
|
||||||
|
// Runs @argv as if it was an application, handling startup notification
|
||||||
|
function spawnApp(argv) {
|
||||||
|
try {
|
||||||
|
let app = Gio.AppInfo.create_from_commandline(argv.join(' '), null,
|
||||||
|
Gio.AppInfoCreateFlags.SUPPORTS_STARTUP_NOTIFICATION);
|
||||||
|
|
||||||
|
let context = global.create_app_launch_context();
|
||||||
|
app.launch([], context);
|
||||||
|
} catch(err) {
|
||||||
|
_handleSpawnError(argv[0], err);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// trySpawn:
|
// trySpawn:
|
||||||
// @argv: an argv array
|
// @argv: an argv array
|
||||||
//
|
//
|
||||||
|
@ -106,6 +106,8 @@ const AppSwitcherPopup = new Lang.Class({
|
|||||||
|
|
||||||
this._switcherList = new AppSwitcher(apps, this);
|
this._switcherList = new AppSwitcher(apps, this);
|
||||||
this._items = this._switcherList.icons;
|
this._items = this._switcherList.icons;
|
||||||
|
if (this._items.length == 0)
|
||||||
|
return false;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
@ -375,6 +377,9 @@ const WindowSwitcherPopup = new Lang.Class({
|
|||||||
this._switcherList = new WindowList(windows, mode);
|
this._switcherList = new WindowList(windows, mode);
|
||||||
this._items = this._switcherList.icons;
|
this._items = this._switcherList.icons;
|
||||||
|
|
||||||
|
if (this._items.length == 0)
|
||||||
|
return false;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -744,10 +744,15 @@ const AppDisplay = new Lang.Class({
|
|||||||
this._views[i].control.connect('clicked', Lang.bind(this,
|
this._views[i].control.connect('clicked', Lang.bind(this,
|
||||||
function(actor) {
|
function(actor) {
|
||||||
this._showView(viewIndex);
|
this._showView(viewIndex);
|
||||||
|
global.settings.set_uint('app-picker-view', viewIndex);
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
let initialView = Math.min(global.settings.get_uint('app-picker-view'),
|
||||||
|
this._views.length - 1);
|
||||||
let frequentUseful = this._views[Views.FREQUENT].view.hasUsefulData();
|
let frequentUseful = this._views[Views.FREQUENT].view.hasUsefulData();
|
||||||
this._showView(frequentUseful ? Views.FREQUENT : Views.ALL);
|
if (initialView == Views.FREQUENT && !frequentUseful)
|
||||||
|
initialView = Views.ALL;
|
||||||
|
this._showView(initialView);
|
||||||
this._updateFrequentVisibility();
|
this._updateFrequentVisibility();
|
||||||
|
|
||||||
// We need a dummy actor to catch the keyboard focus if the
|
// We need a dummy actor to catch the keyboard focus if the
|
||||||
@ -877,6 +882,10 @@ const AppSearchProvider = new Lang.Class({
|
|||||||
callback(metas);
|
callback(metas);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
filterResults: function(results, maxNumber) {
|
||||||
|
return results.slice(0, maxNumber);
|
||||||
|
},
|
||||||
|
|
||||||
getInitialResultSet: function(terms) {
|
getInitialResultSet: function(terms) {
|
||||||
this.searchSystem.setResults(this, this._appSys.initial_search(terms));
|
this.searchSystem.setResults(this, this._appSys.initial_search(terms));
|
||||||
},
|
},
|
||||||
|
@ -315,13 +315,12 @@ const Background = new Lang.Class({
|
|||||||
|
|
||||||
this._brightness = 1.0;
|
this._brightness = 1.0;
|
||||||
this._vignetteSharpness = 0.2;
|
this._vignetteSharpness = 0.2;
|
||||||
this._saturation = 1.0;
|
|
||||||
this._cancellable = new Gio.Cancellable();
|
this._cancellable = new Gio.Cancellable();
|
||||||
this.isLoaded = false;
|
this.isLoaded = false;
|
||||||
|
|
||||||
this._settings.connect('changed', Lang.bind(this, function() {
|
this._settingsChangedSignalId = this._settings.connect('changed', Lang.bind(this, function() {
|
||||||
this.emit('changed');
|
this.emit('changed');
|
||||||
}));
|
}));
|
||||||
|
|
||||||
this._load();
|
this._load();
|
||||||
},
|
},
|
||||||
@ -362,6 +361,10 @@ const Background = new Lang.Class({
|
|||||||
|
|
||||||
this.actor.disconnect(this._destroySignalId);
|
this.actor.disconnect(this._destroySignalId);
|
||||||
this._destroySignalId = 0;
|
this._destroySignalId = 0;
|
||||||
|
|
||||||
|
if (this._settingsChangedSignalId != 0)
|
||||||
|
this._settings.disconnect(this._settingsChangedSignalId);
|
||||||
|
this._settingsChangedSignalId = 0;
|
||||||
},
|
},
|
||||||
|
|
||||||
_setLoaded: function() {
|
_setLoaded: function() {
|
||||||
@ -412,7 +415,6 @@ const Background = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_addImage: function(content, index, filename) {
|
_addImage: function(content, index, filename) {
|
||||||
content.saturation = this._saturation;
|
|
||||||
content.brightness = this._brightness;
|
content.brightness = this._brightness;
|
||||||
content.vignette_sharpness = this._vignetteSharpness;
|
content.vignette_sharpness = this._vignetteSharpness;
|
||||||
|
|
||||||
@ -428,7 +430,6 @@ const Background = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_updateImage: function(content, index, filename) {
|
_updateImage: function(content, index, filename) {
|
||||||
content.saturation = this._saturation;
|
|
||||||
content.brightness = this._brightness;
|
content.brightness = this._brightness;
|
||||||
content.vignette_sharpness = this._vignetteSharpness;
|
content.vignette_sharpness = this._vignetteSharpness;
|
||||||
|
|
||||||
@ -586,24 +587,6 @@ const Background = new Lang.Class({
|
|||||||
this._loadFile(filename);
|
this._loadFile(filename);
|
||||||
},
|
},
|
||||||
|
|
||||||
get saturation() {
|
|
||||||
return this._saturation;
|
|
||||||
},
|
|
||||||
|
|
||||||
set saturation(saturation) {
|
|
||||||
this._saturation = saturation;
|
|
||||||
|
|
||||||
if (this._pattern && this._pattern.content)
|
|
||||||
this._pattern.content.saturation = saturation;
|
|
||||||
|
|
||||||
let keys = Object.keys(this._images);
|
|
||||||
for (let i = 0; i < keys.length; i++) {
|
|
||||||
let image = this._images[keys[i]];
|
|
||||||
if (image && image.content)
|
|
||||||
image.content.saturation = saturation;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
get brightness() {
|
get brightness() {
|
||||||
return this._brightness;
|
return this._brightness;
|
||||||
},
|
},
|
||||||
@ -747,7 +730,6 @@ const BackgroundManager = new Lang.Class({
|
|||||||
let newBackground = this._createBackground(monitorIndex);
|
let newBackground = this._createBackground(monitorIndex);
|
||||||
newBackground.vignetteSharpness = background.vignetteSharpness;
|
newBackground.vignetteSharpness = background.vignetteSharpness;
|
||||||
newBackground.brightness = background.brightness;
|
newBackground.brightness = background.brightness;
|
||||||
newBackground.saturation = background.saturation;
|
|
||||||
newBackground.visible = background.visible;
|
newBackground.visible = background.visible;
|
||||||
|
|
||||||
newBackground.loadedSignalId = newBackground.connect('loaded',
|
newBackground.loadedSignalId = newBackground.connect('loaded',
|
||||||
|
@ -185,7 +185,9 @@ const BoxPointer = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_getPreferredHeight: function(actor, forWidth, alloc) {
|
_getPreferredHeight: function(actor, forWidth, alloc) {
|
||||||
let [minSize, naturalSize] = this.bin.get_preferred_height(forWidth);
|
let themeNode = this.actor.get_theme_node();
|
||||||
|
let borderWidth = themeNode.get_length('-arrow-border-width');
|
||||||
|
let [minSize, naturalSize] = this.bin.get_preferred_height(forWidth - 2 * borderWidth);
|
||||||
alloc.min_size = minSize;
|
alloc.min_size = minSize;
|
||||||
alloc.natural_size = naturalSize;
|
alloc.natural_size = naturalSize;
|
||||||
this._adjustAllocationForArrow(false, alloc);
|
this._adjustAllocationForArrow(false, alloc);
|
||||||
|
@ -190,16 +190,18 @@ const EmptyEventSource = new Lang.Class({
|
|||||||
});
|
});
|
||||||
Signals.addSignalMethods(EmptyEventSource.prototype);
|
Signals.addSignalMethods(EmptyEventSource.prototype);
|
||||||
|
|
||||||
const CalendarServerIface = <interface name="org.gnome.Shell.CalendarServer">
|
const CalendarServerIface = '<node> \
|
||||||
<method name="GetEvents">
|
<interface name="org.gnome.Shell.CalendarServer"> \
|
||||||
<arg type="x" direction="in" />
|
<method name="GetEvents"> \
|
||||||
<arg type="x" direction="in" />
|
<arg type="x" direction="in" /> \
|
||||||
<arg type="b" direction="in" />
|
<arg type="x" direction="in" /> \
|
||||||
<arg type="a(sssbxxa{sv})" direction="out" />
|
<arg type="b" direction="in" /> \
|
||||||
</method>
|
<arg type="a(sssbxxa{sv})" direction="out" /> \
|
||||||
<property name="HasCalendars" type="b" access="read" />
|
</method> \
|
||||||
<signal name="Changed" />
|
<property name="HasCalendars" type="b" access="read" /> \
|
||||||
</interface>;
|
<signal name="Changed" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const CalendarServerInfo = Gio.DBusInterfaceInfo.new_for_xml(CalendarServerIface);
|
const CalendarServerInfo = Gio.DBusInterfaceInfo.new_for_xml(CalendarServerIface);
|
||||||
|
|
||||||
|
@ -75,12 +75,14 @@ function startAppForMount(app, mount) {
|
|||||||
|
|
||||||
/******************************************/
|
/******************************************/
|
||||||
|
|
||||||
const HotplugSnifferIface = <interface name="org.gnome.Shell.HotplugSniffer">
|
const HotplugSnifferIface = '<node> \
|
||||||
<method name="SniffURI">
|
<interface name="org.gnome.Shell.HotplugSniffer"> \
|
||||||
<arg type="s" direction="in" />
|
<method name="SniffURI"> \
|
||||||
<arg type="as" direction="out" />
|
<arg type="s" direction="in" /> \
|
||||||
</method>
|
<arg type="as" direction="out" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const HotplugSnifferProxy = Gio.DBusProxy.makeProxyWrapper(HotplugSnifferIface);
|
const HotplugSnifferProxy = Gio.DBusProxy.makeProxyWrapper(HotplugSnifferIface);
|
||||||
function HotplugSniffer() {
|
function HotplugSniffer() {
|
||||||
|
@ -13,8 +13,6 @@ const ModalDialog = imports.ui.modalDialog;
|
|||||||
const ShellEntry = imports.ui.shellEntry;
|
const ShellEntry = imports.ui.shellEntry;
|
||||||
const CheckBox = imports.ui.checkBox;
|
const CheckBox = imports.ui.checkBox;
|
||||||
|
|
||||||
let prompter = null;
|
|
||||||
|
|
||||||
const KeyringDialog = new Lang.Class({
|
const KeyringDialog = new Lang.Class({
|
||||||
Name: 'KeyringDialog',
|
Name: 'KeyringDialog',
|
||||||
Extends: ModalDialog.ModalDialog,
|
Extends: ModalDialog.ModalDialog,
|
||||||
@ -248,11 +246,13 @@ const KeyringPrompter = new Lang.Class({
|
|||||||
function() {
|
function() {
|
||||||
let dialog = this._enabled ? new KeyringDialog()
|
let dialog = this._enabled ? new KeyringDialog()
|
||||||
: new KeyringDummyDialog();
|
: new KeyringDummyDialog();
|
||||||
return dialog.prompt;
|
this._currentPrompt = dialog.prompt;
|
||||||
|
return this._currentPrompt;
|
||||||
}));
|
}));
|
||||||
this._dbusId = null;
|
this._dbusId = null;
|
||||||
this._registered = false;
|
this._registered = false;
|
||||||
this._enabled = false;
|
this._enabled = false;
|
||||||
|
this._currentPrompt = null;
|
||||||
},
|
},
|
||||||
|
|
||||||
enable: function() {
|
enable: function() {
|
||||||
@ -267,6 +267,10 @@ const KeyringPrompter = new Lang.Class({
|
|||||||
|
|
||||||
disable: function() {
|
disable: function() {
|
||||||
this._enabled = false;
|
this._enabled = false;
|
||||||
|
|
||||||
|
if (this._prompter.prompting)
|
||||||
|
this._currentPrompt.cancel();
|
||||||
|
this._currentPrompt = null;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -13,7 +13,6 @@ const Tp = imports.gi.TelepathyGLib;
|
|||||||
const History = imports.misc.history;
|
const History = imports.misc.history;
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
const MessageTray = imports.ui.messageTray;
|
const MessageTray = imports.ui.messageTray;
|
||||||
const NotificationDaemon = imports.ui.notificationDaemon;
|
|
||||||
const Params = imports.misc.params;
|
const Params = imports.misc.params;
|
||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
|
|
||||||
@ -416,7 +415,7 @@ const TelepathyClient = new Lang.Class({
|
|||||||
_ensureAppSource: function() {
|
_ensureAppSource: function() {
|
||||||
if (this._appSource == null) {
|
if (this._appSource == null) {
|
||||||
this._appSource = new MessageTray.Source(_("Chat"), 'empathy');
|
this._appSource = new MessageTray.Source(_("Chat"), 'empathy');
|
||||||
this._appSource.policy = new NotificationDaemon.NotificationApplicationPolicy('empathy');
|
this._appSource.policy = new MessageTray.NotificationApplicationPolicy('empathy');
|
||||||
|
|
||||||
Main.messageTray.add(this._appSource);
|
Main.messageTray.add(this._appSource);
|
||||||
this._appSource.connect('destroy', Lang.bind(this, function () {
|
this._appSource.connect('destroy', Lang.bind(this, function () {
|
||||||
@ -447,6 +446,7 @@ const ChatSource = new Lang.Class({
|
|||||||
this._closedId = this._channel.connect('invalidated', Lang.bind(this, this._channelClosed));
|
this._closedId = this._channel.connect('invalidated', Lang.bind(this, this._channelClosed));
|
||||||
|
|
||||||
this._notification = new ChatNotification(this);
|
this._notification = new ChatNotification(this);
|
||||||
|
this._notification.connect('clicked', Lang.bind(this, this.open));
|
||||||
this._notification.setUrgency(MessageTray.Urgency.HIGH);
|
this._notification.setUrgency(MessageTray.Urgency.HIGH);
|
||||||
this._notifyTimeoutId = 0;
|
this._notifyTimeoutId = 0;
|
||||||
|
|
||||||
@ -488,7 +488,7 @@ const ChatSource = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_createPolicy: function() {
|
_createPolicy: function() {
|
||||||
return new NotificationDaemon.NotificationApplicationPolicy('empathy');
|
return new MessageTray.NotificationApplicationPolicy('empathy');
|
||||||
},
|
},
|
||||||
|
|
||||||
_updateAlias: function() {
|
_updateAlias: function() {
|
||||||
@ -545,20 +545,19 @@ const ChatSource = new Lang.Class({
|
|||||||
this._notification.update(this._notification.title, null, { customContent: true });
|
this._notification.update(this._notification.title, null, { customContent: true });
|
||||||
},
|
},
|
||||||
|
|
||||||
open: function(notification) {
|
open: function() {
|
||||||
if (this._client.is_handling_channel(this._channel)) {
|
if (this._client.is_handling_channel(this._channel)) {
|
||||||
// We are handling the channel, try to pass it to Empathy
|
// We are handling the channel, try to pass it to Empathy
|
||||||
this._client.delegate_channels_async([this._channel],
|
this._client.delegate_channels_async([this._channel],
|
||||||
global.get_current_time(),
|
global.get_current_time(),
|
||||||
'org.freedesktop.Telepathy.Client.Empathy.Chat', null);
|
'org.freedesktop.Telepathy.Client.Empathy.Chat', null);
|
||||||
}
|
} else {
|
||||||
else {
|
// We are not the handler, just ask to present the channel
|
||||||
// We are not the handler, just ask to present the channel
|
let dbus = Tp.DBusDaemon.dup();
|
||||||
let dbus = Tp.DBusDaemon.dup();
|
let cd = Tp.ChannelDispatcher.new(dbus);
|
||||||
let cd = Tp.ChannelDispatcher.new(dbus);
|
|
||||||
|
|
||||||
cd.present_channel_async(this._channel, global.get_current_time(), null);
|
cd.present_channel_async(this._channel, global.get_current_time(), null);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
_getLogMessages: function() {
|
_getLogMessages: function() {
|
||||||
@ -1061,7 +1060,7 @@ const ApproverSource = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_createPolicy: function() {
|
_createPolicy: function() {
|
||||||
return new NotificationDaemon.NotificationApplicationPolicy('empathy');
|
return new MessageTray.NotificationApplicationPolicy('empathy');
|
||||||
},
|
},
|
||||||
|
|
||||||
destroy: function() {
|
destroy: function() {
|
||||||
@ -1096,22 +1095,16 @@ const RoomInviteNotification = new Lang.Class({
|
|||||||
* for example. */
|
* for example. */
|
||||||
this.addBody(_("%s is inviting you to join %s").format(inviter.get_alias(), channel.get_identifier()));
|
this.addBody(_("%s is inviting you to join %s").format(inviter.get_alias(), channel.get_identifier()));
|
||||||
|
|
||||||
this.addButton('decline', _("Decline"));
|
this.addAction(_("Decline"), Lang.bind(this, function() {
|
||||||
this.addButton('accept', _("Accept"));
|
dispatchOp.leave_channels_async(Tp.ChannelGroupChangeReason.NONE, '', function(src, result) {
|
||||||
|
src.leave_channels_finish(result);
|
||||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
});
|
||||||
switch (action) {
|
this.destroy();
|
||||||
case 'decline':
|
}));
|
||||||
dispatchOp.leave_channels_async(Tp.ChannelGroupChangeReason.NONE,
|
this.addAction(_("Accept"), Lang.bind(this, function() {
|
||||||
'', function(src, result) {
|
dispatchOp.handle_with_time_async('', global.get_current_time(), function(src, result) {
|
||||||
src.leave_channels_finish(result)});
|
src.handle_with_time_finish(result);
|
||||||
break;
|
});
|
||||||
case 'accept':
|
|
||||||
dispatchOp.handle_with_time_async('', global.get_current_time(),
|
|
||||||
function(src, result) {
|
|
||||||
src.handle_with_time_finish(result)});
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
this.destroy();
|
this.destroy();
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
@ -1137,23 +1130,17 @@ const AudioVideoNotification = new Lang.Class({
|
|||||||
|
|
||||||
this.setUrgency(MessageTray.Urgency.CRITICAL);
|
this.setUrgency(MessageTray.Urgency.CRITICAL);
|
||||||
|
|
||||||
this.addButton('reject', _("Decline"));
|
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 */
|
/* translators: this is a button label (verb), not a noun */
|
||||||
this.addButton('answer', _("Answer"));
|
this.addAction(_("Answer"), Lang.bind(this, function() {
|
||||||
|
dispatchOp.handle_with_time_async('', global.get_current_time(), function(src, result) {
|
||||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
src.handle_with_time_finish(result);
|
||||||
switch (action) {
|
});
|
||||||
case 'reject':
|
|
||||||
dispatchOp.leave_channels_async(Tp.ChannelGroupChangeReason.NONE,
|
|
||||||
'', function(src, result) {
|
|
||||||
src.leave_channels_finish(result)});
|
|
||||||
break;
|
|
||||||
case 'answer':
|
|
||||||
dispatchOp.handle_with_time_async('', global.get_current_time(),
|
|
||||||
function(src, result) {
|
|
||||||
src.handle_with_time_finish(result)});
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
this.destroy();
|
this.destroy();
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
@ -1177,22 +1164,16 @@ const FileTransferNotification = new Lang.Class({
|
|||||||
{ customContent: true });
|
{ customContent: true });
|
||||||
this.setResident(true);
|
this.setResident(true);
|
||||||
|
|
||||||
this.addButton('decline', _("Decline"));
|
this.addAction(_("Decline"), Lang.bind(this, function() {
|
||||||
this.addButton('accept', _("Accept"));
|
dispatchOp.leave_channels_async(Tp.ChannelGroupChangeReason.NONE, '', function(src, result) {
|
||||||
|
src.leave_channels_finish(result);
|
||||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
});
|
||||||
switch (action) {
|
this.destroy();
|
||||||
case 'decline':
|
}));
|
||||||
dispatchOp.leave_channels_async(Tp.ChannelGroupChangeReason.NONE,
|
this.addAction(_("Accept"), Lang.bind(this, function() {
|
||||||
'', function(src, result) {
|
dispatchOp.handle_with_time_async('', global.get_current_time(), function(src, result) {
|
||||||
src.leave_channels_finish(result)});
|
src.handle_with_time_finish(result);
|
||||||
break;
|
});
|
||||||
case 'accept':
|
|
||||||
dispatchOp.handle_with_time_async('', global.get_current_time(),
|
|
||||||
function(src, result) {
|
|
||||||
src.handle_with_time_finish(result)});
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
this.destroy();
|
this.destroy();
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
@ -1240,27 +1221,20 @@ const SubscriptionRequestNotification = new Lang.Class({
|
|||||||
|
|
||||||
this.addActor(layout);
|
this.addActor(layout);
|
||||||
|
|
||||||
this.addButton('decline', _("Decline"));
|
this.addAction(_("Decline"), Lang.bind(this, function() {
|
||||||
this.addButton('accept', _("Accept"));
|
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);
|
||||||
|
});
|
||||||
|
|
||||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
contact.request_subscription_async('', function(src, result) {
|
||||||
switch (action) {
|
src.request_subscription_finish(result);
|
||||||
case 'decline':
|
});
|
||||||
contact.remove_async(function(src, result) {
|
|
||||||
src.remove_finish(result)});
|
|
||||||
break;
|
|
||||||
case 'accept':
|
|
||||||
// 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)});
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
// rely on _subscriptionStatesChangedCb to destroy the
|
|
||||||
// notification
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
this._changedId = contact.connect('subscription-states-changed',
|
this._changedId = contact.connect('subscription-states-changed',
|
||||||
@ -1359,18 +1333,11 @@ const AccountNotification = new Lang.Class({
|
|||||||
|
|
||||||
this._account = account;
|
this._account = account;
|
||||||
|
|
||||||
this.addButton('view', _("View account"));
|
this.addAction(_("View account"), Lang.bind(this, function() {
|
||||||
|
let cmd = 'empathy-accounts --select-account=' +
|
||||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
account.get_path_suffix();
|
||||||
switch (action) {
|
let app_info = Gio.app_info_create_from_commandline(cmd, null, 0);
|
||||||
case 'view':
|
app_info.launch([], global.create_app_launch_context());
|
||||||
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());
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
this.destroy();
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
this._enabledId = account.connect('notify::enabled',
|
this._enabledId = account.connect('notify::enabled',
|
||||||
|
@ -43,20 +43,22 @@ const _DIALOG_ICON_SIZE = 32;
|
|||||||
|
|
||||||
const GSM_SESSION_MANAGER_LOGOUT_FORCE = 2;
|
const GSM_SESSION_MANAGER_LOGOUT_FORCE = 2;
|
||||||
|
|
||||||
const EndSessionDialogIface = <interface name="org.gnome.SessionManager.EndSessionDialog">
|
const EndSessionDialogIface = '<node> \
|
||||||
<method name="Open">
|
<interface name="org.gnome.SessionManager.EndSessionDialog"> \
|
||||||
<arg type="u" direction="in" />
|
<method name="Open"> \
|
||||||
<arg type="u" direction="in" />
|
<arg type="u" direction="in" /> \
|
||||||
<arg type="u" direction="in" />
|
<arg type="u" direction="in" /> \
|
||||||
<arg type="ao" direction="in" />
|
<arg type="u" direction="in" /> \
|
||||||
</method>
|
<arg type="ao" direction="in" /> \
|
||||||
<method name="Close" />
|
</method> \
|
||||||
<signal name="ConfirmedLogout" />
|
<method name="Close" /> \
|
||||||
<signal name="ConfirmedReboot" />
|
<signal name="ConfirmedLogout" /> \
|
||||||
<signal name="ConfirmedShutdown" />
|
<signal name="ConfirmedReboot" /> \
|
||||||
<signal name="Canceled" />
|
<signal name="ConfirmedShutdown" /> \
|
||||||
<signal name="Closed" />
|
<signal name="Canceled" /> \
|
||||||
</interface>;
|
<signal name="Closed" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const logoutDialogContent = {
|
const logoutDialogContent = {
|
||||||
subjectWithUser: C_("title", "Log Out %s"),
|
subjectWithUser: C_("title", "Log Out %s"),
|
||||||
@ -131,13 +133,15 @@ const DialogContent = {
|
|||||||
|
|
||||||
const MAX_USERS_IN_SESSION_DIALOG = 5;
|
const MAX_USERS_IN_SESSION_DIALOG = 5;
|
||||||
|
|
||||||
const LogindSessionIface = <interface name='org.freedesktop.login1.Session'>
|
const LogindSessionIface = '<node> \
|
||||||
<property name="Id" type="s" access="read"/>
|
<interface name="org.freedesktop.login1.Session"> \
|
||||||
<property name="Remote" type="b" access="read"/>
|
<property name="Id" type="s" access="read"/> \
|
||||||
<property name="Class" type="s" access="read"/>
|
<property name="Remote" type="b" access="read"/> \
|
||||||
<property name="Type" type="s" access="read"/>
|
<property name="Class" type="s" access="read"/> \
|
||||||
<property name="State" type="s" access="read"/>
|
<property name="Type" type="s" access="read"/> \
|
||||||
</interface>;
|
<property name="State" type="s" access="read"/> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const LogindSession = Gio.DBusProxy.makeProxyWrapper(LogindSessionIface);
|
const LogindSession = Gio.DBusProxy.makeProxyWrapper(LogindSessionIface);
|
||||||
|
|
||||||
@ -269,13 +273,15 @@ const EndSessionDialog = new Lang.Class({
|
|||||||
|
|
||||||
this._applicationHeader = new St.Label({ style_class: 'end-session-dialog-list-header',
|
this._applicationHeader = new St.Label({ style_class: 'end-session-dialog-list-header',
|
||||||
text: _("Some applications are busy or have unsaved work.") });
|
text: _("Some applications are busy or have unsaved work.") });
|
||||||
this._applicationList = new St.BoxLayout({ vertical: true });
|
this._applicationList = new St.BoxLayout({ style_class: 'end-session-dialog-app-list',
|
||||||
|
vertical: true });
|
||||||
this._inhibitorSection.add_actor(this._applicationHeader);
|
this._inhibitorSection.add_actor(this._applicationHeader);
|
||||||
this._inhibitorSection.add_actor(this._applicationList);
|
this._inhibitorSection.add_actor(this._applicationList);
|
||||||
|
|
||||||
this._sessionHeader = new St.Label({ style_class: 'end-session-dialog-list-header',
|
this._sessionHeader = new St.Label({ style_class: 'end-session-dialog-list-header',
|
||||||
text: _("Other users are logged in.") });
|
text: _("Other users are logged in.") });
|
||||||
this._sessionList = new St.BoxLayout({ vertical: true });
|
this._sessionList = new St.BoxLayout({ style_class: 'end-session-dialog-session-list',
|
||||||
|
vertical: true });
|
||||||
this._inhibitorSection.add_actor(this._sessionHeader);
|
this._inhibitorSection.add_actor(this._sessionHeader);
|
||||||
this._inhibitorSection.add_actor(this._sessionList);
|
this._inhibitorSection.add_actor(this._sessionList);
|
||||||
|
|
||||||
|
@ -76,7 +76,11 @@ function disableExtension(uuid) {
|
|||||||
theme.unload_stylesheet(extension.stylesheet.get_path());
|
theme.unload_stylesheet(extension.stylesheet.get_path());
|
||||||
}
|
}
|
||||||
|
|
||||||
extension.stateObj.disable();
|
try {
|
||||||
|
extension.stateObj.disable();
|
||||||
|
} catch(e) {
|
||||||
|
logExtensionError(uuid, e);
|
||||||
|
}
|
||||||
|
|
||||||
for (let i = 0; i < order.length; i++) {
|
for (let i = 0; i < order.length; i++) {
|
||||||
let uuid = order[i];
|
let uuid = order[i];
|
||||||
@ -89,8 +93,10 @@ function disableExtension(uuid) {
|
|||||||
|
|
||||||
extensionOrder.splice(orderIdx, 1);
|
extensionOrder.splice(orderIdx, 1);
|
||||||
|
|
||||||
extension.state = ExtensionState.DISABLED;
|
if ( extension.state != ExtensionState.ERROR ) {
|
||||||
_signals.emit('extension-state-changed', extension);
|
extension.state = ExtensionState.DISABLED;
|
||||||
|
_signals.emit('extension-state-changed', extension);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function enableExtension(uuid) {
|
function enableExtension(uuid) {
|
||||||
@ -117,10 +123,15 @@ function enableExtension(uuid) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
extension.stateObj.enable();
|
try {
|
||||||
|
extension.stateObj.enable();
|
||||||
extension.state = ExtensionState.ENABLED;
|
extension.state = ExtensionState.ENABLED;
|
||||||
_signals.emit('extension-state-changed', extension);
|
_signals.emit('extension-state-changed', extension);
|
||||||
|
return;
|
||||||
|
} catch(e) {
|
||||||
|
logExtensionError(uuid, e);
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function logExtensionError(uuid, error) {
|
function logExtensionError(uuid, error) {
|
||||||
@ -150,7 +161,8 @@ function loadExtension(extension) {
|
|||||||
} else {
|
} else {
|
||||||
let enabled = enabledExtensions.indexOf(extension.uuid) != -1;
|
let enabled = enabledExtensions.indexOf(extension.uuid) != -1;
|
||||||
if (enabled) {
|
if (enabled) {
|
||||||
initExtension(extension.uuid);
|
if (!initExtension(extension.uuid))
|
||||||
|
return;
|
||||||
if (extension.state == ExtensionState.DISABLED)
|
if (extension.state == ExtensionState.DISABLED)
|
||||||
enableExtension(extension.uuid);
|
enableExtension(extension.uuid);
|
||||||
} else {
|
} else {
|
||||||
@ -205,7 +217,12 @@ function initExtension(uuid) {
|
|||||||
extensionModule = extension.imports.extension;
|
extensionModule = extension.imports.extension;
|
||||||
|
|
||||||
if (extensionModule.init) {
|
if (extensionModule.init) {
|
||||||
extensionState = extensionModule.init(extension);
|
try {
|
||||||
|
extensionState = extensionModule.init(extension);
|
||||||
|
} catch(e) {
|
||||||
|
logExtensionError(uuid, e);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!extensionState)
|
if (!extensionState)
|
||||||
@ -214,6 +231,7 @@ function initExtension(uuid) {
|
|||||||
|
|
||||||
extension.state = ExtensionState.DISABLED;
|
extension.state = ExtensionState.DISABLED;
|
||||||
_signals.emit('extension-loaded', uuid);
|
_signals.emit('extension-loaded', uuid);
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getEnabledExtensions() {
|
function getEnabledExtensions() {
|
||||||
@ -235,11 +253,7 @@ function onEnabledExtensionsChanged() {
|
|||||||
newEnabledExtensions.filter(function(uuid) {
|
newEnabledExtensions.filter(function(uuid) {
|
||||||
return enabledExtensions.indexOf(uuid) == -1;
|
return enabledExtensions.indexOf(uuid) == -1;
|
||||||
}).forEach(function(uuid) {
|
}).forEach(function(uuid) {
|
||||||
try {
|
|
||||||
enableExtension(uuid);
|
enableExtension(uuid);
|
||||||
} catch(e) {
|
|
||||||
logExtensionError(uuid, e);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// Find and disable all the newly disabled extensions: UUIDs found in the
|
// Find and disable all the newly disabled extensions: UUIDs found in the
|
||||||
@ -247,11 +261,7 @@ function onEnabledExtensionsChanged() {
|
|||||||
enabledExtensions.filter(function(item) {
|
enabledExtensions.filter(function(item) {
|
||||||
return newEnabledExtensions.indexOf(item) == -1;
|
return newEnabledExtensions.indexOf(item) == -1;
|
||||||
}).forEach(function(uuid) {
|
}).forEach(function(uuid) {
|
||||||
try {
|
|
||||||
disableExtension(uuid);
|
disableExtension(uuid);
|
||||||
} catch(e) {
|
|
||||||
logExtensionError(uuid, e);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
enabledExtensions = newEnabledExtensions;
|
enabledExtensions = newEnabledExtensions;
|
||||||
@ -263,11 +273,7 @@ function _loadExtensions() {
|
|||||||
|
|
||||||
let finder = new ExtensionUtils.ExtensionFinder();
|
let finder = new ExtensionUtils.ExtensionFinder();
|
||||||
finder.connect('extension-found', function(signals, extension) {
|
finder.connect('extension-found', function(signals, extension) {
|
||||||
try {
|
loadExtension(extension);
|
||||||
loadExtension(extension);
|
|
||||||
} catch(e) {
|
|
||||||
logExtensionError(extension.uuid, e);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
finder.scanExtensions();
|
finder.scanExtensions();
|
||||||
}
|
}
|
||||||
|
@ -23,27 +23,29 @@ const KEYBOARD_TYPE = 'keyboard-type';
|
|||||||
const A11Y_APPLICATIONS_SCHEMA = 'org.gnome.desktop.a11y.applications';
|
const A11Y_APPLICATIONS_SCHEMA = 'org.gnome.desktop.a11y.applications';
|
||||||
const SHOW_KEYBOARD = 'screen-keyboard-enabled';
|
const SHOW_KEYBOARD = 'screen-keyboard-enabled';
|
||||||
|
|
||||||
const CaribouKeyboardIface = <interface name='org.gnome.Caribou.Keyboard'>
|
const CaribouKeyboardIface = '<node> \
|
||||||
<method name='Show'>
|
<interface name="org.gnome.Caribou.Keyboard"> \
|
||||||
<arg type='u' direction='in' />
|
<method name="Show"> \
|
||||||
</method>
|
<arg type="u" direction="in" /> \
|
||||||
<method name='Hide'>
|
</method> \
|
||||||
<arg type='u' direction='in' />
|
<method name="Hide"> \
|
||||||
</method>
|
<arg type="u" direction="in" /> \
|
||||||
<method name='SetCursorLocation'>
|
</method> \
|
||||||
<arg type='i' direction='in' />
|
<method name="SetCursorLocation"> \
|
||||||
<arg type='i' direction='in' />
|
<arg type="i" direction="in" /> \
|
||||||
<arg type='i' direction='in' />
|
<arg type="i" direction="in" /> \
|
||||||
<arg type='i' direction='in' />
|
<arg type="i" direction="in" /> \
|
||||||
</method>
|
<arg type="i" direction="in" /> \
|
||||||
<method name='SetEntryLocation'>
|
</method> \
|
||||||
<arg type='i' direction='in' />
|
<method name="SetEntryLocation"> \
|
||||||
<arg type='i' direction='in' />
|
<arg type="i" direction="in" /> \
|
||||||
<arg type='i' direction='in' />
|
<arg type="i" direction="in" /> \
|
||||||
<arg type='i' direction='in' />
|
<arg type="i" direction="in" /> \
|
||||||
</method>
|
<arg type="i" direction="in" /> \
|
||||||
<property name='Name' access='read' type='s' />
|
</method> \
|
||||||
</interface>;
|
<property name="Name" access="read" type="s" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const Key = new Lang.Class({
|
const Key = new Lang.Class({
|
||||||
Name: 'Key',
|
Name: 'Key',
|
||||||
|
@ -251,7 +251,7 @@ const LayoutManager = new Lang.Class({
|
|||||||
|
|
||||||
this._inOverview = true;
|
this._inOverview = true;
|
||||||
this._updateVisibility();
|
this._updateVisibility();
|
||||||
this._queueUpdateRegions();
|
this._updateRegions();
|
||||||
},
|
},
|
||||||
|
|
||||||
hideOverview: function() {
|
hideOverview: function() {
|
||||||
@ -362,7 +362,7 @@ const LayoutManager = new Lang.Class({
|
|||||||
BackgroundMenu.addBackgroundMenu(bgManager.background.actor);
|
BackgroundMenu.addBackgroundMenu(bgManager.background.actor);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
this._bgManagers.push(bgManager);
|
this._bgManagers[monitorIndex] = bgManager;
|
||||||
|
|
||||||
return bgManager.background;
|
return bgManager.background;
|
||||||
},
|
},
|
||||||
|
@ -629,55 +629,6 @@ const Inspector = new Lang.Class({
|
|||||||
|
|
||||||
Signals.addSignalMethods(Inspector.prototype);
|
Signals.addSignalMethods(Inspector.prototype);
|
||||||
|
|
||||||
const Memory = new Lang.Class({
|
|
||||||
Name: 'Memory',
|
|
||||||
|
|
||||||
_init: function() {
|
|
||||||
this.actor = new St.BoxLayout({ vertical: true });
|
|
||||||
this._glibc_uordblks = new St.Label();
|
|
||||||
this.actor.add(this._glibc_uordblks);
|
|
||||||
|
|
||||||
this._js_bytes = new St.Label();
|
|
||||||
this.actor.add(this._js_bytes);
|
|
||||||
|
|
||||||
this._gjs_boxed = new St.Label();
|
|
||||||
this.actor.add(this._gjs_boxed);
|
|
||||||
|
|
||||||
this._gjs_gobject = new St.Label();
|
|
||||||
this.actor.add(this._gjs_gobject);
|
|
||||||
|
|
||||||
this._gjs_function = new St.Label();
|
|
||||||
this.actor.add(this._gjs_function);
|
|
||||||
|
|
||||||
this._gjs_closure = new St.Label();
|
|
||||||
this.actor.add(this._gjs_closure);
|
|
||||||
|
|
||||||
this._last_gc_seconds_ago = new St.Label();
|
|
||||||
this.actor.add(this._last_gc_seconds_ago);
|
|
||||||
|
|
||||||
this._gcbutton = new St.Button({ label: 'Full GC',
|
|
||||||
style_class: 'lg-obj-inspector-button' });
|
|
||||||
this._gcbutton.connect('clicked', Lang.bind(this, function () { System.gc(); this._renderText(); }));
|
|
||||||
this.actor.add(this._gcbutton, { x_align: St.Align.START,
|
|
||||||
x_fill: false });
|
|
||||||
|
|
||||||
this.actor.connect('notify::mapped', Lang.bind(this, this._renderText));
|
|
||||||
},
|
|
||||||
|
|
||||||
_renderText: function() {
|
|
||||||
if (!this.actor.mapped)
|
|
||||||
return;
|
|
||||||
let memInfo = global.get_memory_info();
|
|
||||||
this._glibc_uordblks.text = 'glibc_uordblks: ' + memInfo.glibc_uordblks;
|
|
||||||
this._js_bytes.text = 'js bytes: ' + memInfo.js_bytes;
|
|
||||||
this._gjs_boxed.text = 'gjs_boxed: ' + memInfo.gjs_boxed;
|
|
||||||
this._gjs_gobject.text = 'gjs_gobject: ' + memInfo.gjs_gobject;
|
|
||||||
this._gjs_function.text = 'gjs_function: ' + memInfo.gjs_function;
|
|
||||||
this._gjs_closure.text = 'gjs_closure: ' + memInfo.gjs_closure;
|
|
||||||
this._last_gc_seconds_ago.text = 'last_gc_seconds_ago: ' + memInfo.last_gc_seconds_ago;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const Extensions = new Lang.Class({
|
const Extensions = new Lang.Class({
|
||||||
Name: 'Extensions',
|
Name: 'Extensions',
|
||||||
|
|
||||||
@ -880,6 +831,19 @@ const LookingGlass = new Lang.Class({
|
|||||||
return true;
|
return true;
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
let gcIcon = new St.Icon({ icon_name: 'gnome-fs-trash-full',
|
||||||
|
icon_size: 24 });
|
||||||
|
toolbar.add_actor(gcIcon);
|
||||||
|
gcIcon.reactive = true;
|
||||||
|
gcIcon.connect('button-press-event', Lang.bind(this, function () {
|
||||||
|
gcIcon.icon_name = 'gnome-fs-trash-empty';
|
||||||
|
System.gc();
|
||||||
|
this._timeoutId = Mainloop.timeout_add(500, Lang.bind(this, function () {
|
||||||
|
gcIcon.icon_name = 'gnome-fs-trash-full';
|
||||||
|
Mainloop.source_remove(this._timeoutId);
|
||||||
|
}));
|
||||||
|
}));
|
||||||
|
|
||||||
let notebook = new Notebook();
|
let notebook = new Notebook();
|
||||||
this._notebook = notebook;
|
this._notebook = notebook;
|
||||||
this.actor.add(notebook.actor, { expand: true });
|
this.actor.add(notebook.actor, { expand: true });
|
||||||
@ -907,9 +871,6 @@ const LookingGlass = new Lang.Class({
|
|||||||
this._windowList = new WindowList(this);
|
this._windowList = new WindowList(this);
|
||||||
notebook.appendPage('Windows', this._windowList.actor);
|
notebook.appendPage('Windows', this._windowList.actor);
|
||||||
|
|
||||||
this._memory = new Memory();
|
|
||||||
notebook.appendPage('Memory', this._memory.actor);
|
|
||||||
|
|
||||||
this._extensions = new Extensions(this);
|
this._extensions = new Extensions(this);
|
||||||
notebook.appendPage('Extensions', this._extensions.actor);
|
notebook.appendPage('Extensions', this._extensions.actor);
|
||||||
|
|
||||||
|
@ -9,85 +9,89 @@ const ZOOM_SERVICE_PATH = '/org/gnome/Magnifier/ZoomRegion';
|
|||||||
|
|
||||||
// Subset of gnome-mag's Magnifier dbus interface -- to be expanded. See:
|
// Subset of gnome-mag's Magnifier dbus interface -- to be expanded. See:
|
||||||
// http://git.gnome.org/browse/gnome-mag/tree/xml/...Magnifier.xml
|
// http://git.gnome.org/browse/gnome-mag/tree/xml/...Magnifier.xml
|
||||||
const MagnifierIface = <interface name="org.gnome.Magnifier">
|
const MagnifierIface = '<node> \
|
||||||
<method name="setActive">
|
<interface name="org.gnome.Magnifier"> \
|
||||||
<arg type="b" direction="in" />
|
<method name="setActive"> \
|
||||||
</method>
|
<arg type="b" direction="in" /> \
|
||||||
<method name="isActive">
|
</method> \
|
||||||
<arg type="b" direction="out" />
|
<method name="isActive"> \
|
||||||
</method>
|
<arg type="b" direction="out" /> \
|
||||||
<method name="showCursor" />
|
</method> \
|
||||||
<method name="hideCursor" />
|
<method name="showCursor" /> \
|
||||||
<method name="createZoomRegion">
|
<method name="hideCursor" /> \
|
||||||
<arg type="d" direction="in" />
|
<method name="createZoomRegion"> \
|
||||||
<arg type="d" direction="in" />
|
<arg type="d" direction="in" /> \
|
||||||
<arg type="ai" direction="in" />
|
<arg type="d" direction="in" /> \
|
||||||
<arg type="ai" direction="in" />
|
<arg type="ai" direction="in" /> \
|
||||||
<arg type="o" direction="out" />
|
<arg type="ai" direction="in" /> \
|
||||||
</method>
|
<arg type="o" direction="out" /> \
|
||||||
<method name="addZoomRegion">
|
</method> \
|
||||||
<arg type="o" direction="in" />
|
<method name="addZoomRegion"> \
|
||||||
<arg type="b" direction="out" />
|
<arg type="o" direction="in" /> \
|
||||||
</method>
|
<arg type="b" direction="out" /> \
|
||||||
<method name="getZoomRegions">
|
</method> \
|
||||||
<arg type="ao" direction="out" />
|
<method name="getZoomRegions"> \
|
||||||
</method>
|
<arg type="ao" direction="out" /> \
|
||||||
<method name="clearAllZoomRegions" />
|
</method> \
|
||||||
<method name="fullScreenCapable">
|
<method name="clearAllZoomRegions" /> \
|
||||||
<arg type="b" direction="out" />
|
<method name="fullScreenCapable"> \
|
||||||
</method>
|
<arg type="b" direction="out" /> \
|
||||||
<method name="setCrosswireSize">
|
</method> \
|
||||||
<arg type="i" direction="in" />
|
<method name="setCrosswireSize"> \
|
||||||
</method>
|
<arg type="i" direction="in" /> \
|
||||||
<method name="getCrosswireSize">
|
</method> \
|
||||||
<arg type="i" direction="out" />
|
<method name="getCrosswireSize"> \
|
||||||
</method>
|
<arg type="i" direction="out" /> \
|
||||||
<method name="setCrosswireLength">
|
</method> \
|
||||||
<arg type="i" direction="in" />
|
<method name="setCrosswireLength"> \
|
||||||
</method>
|
<arg type="i" direction="in" /> \
|
||||||
<method name="getCrosswireLength">
|
</method> \
|
||||||
<arg type="i" direction="out" />
|
<method name="getCrosswireLength"> \
|
||||||
</method>
|
<arg type="i" direction="out" /> \
|
||||||
<method name="setCrosswireClip">
|
</method> \
|
||||||
<arg type="b" direction="in" />
|
<method name="setCrosswireClip"> \
|
||||||
</method>
|
<arg type="b" direction="in" /> \
|
||||||
<method name="getCrosswireClip">
|
</method> \
|
||||||
<arg type="b" direction="out" />
|
<method name="getCrosswireClip"> \
|
||||||
</method>
|
<arg type="b" direction="out" /> \
|
||||||
<method name="setCrosswireColor">
|
</method> \
|
||||||
<arg type="u" direction="in" />
|
<method name="setCrosswireColor"> \
|
||||||
</method>
|
<arg type="u" direction="in" /> \
|
||||||
<method name="getCrosswireColor">
|
</method> \
|
||||||
<arg type="u" direction="out" />
|
<method name="getCrosswireColor"> \
|
||||||
</method>
|
<arg type="u" direction="out" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
// Subset of gnome-mag's ZoomRegion dbus interface -- to be expanded. See:
|
// Subset of gnome-mag's ZoomRegion dbus interface -- to be expanded. See:
|
||||||
// http://git.gnome.org/browse/gnome-mag/tree/xml/...ZoomRegion.xml
|
// http://git.gnome.org/browse/gnome-mag/tree/xml/...ZoomRegion.xml
|
||||||
const ZoomRegionIface = <interface name="org.gnome.Magnifier.ZoomRegion">
|
const ZoomRegionIface = '<node> \
|
||||||
<method name="setMagFactor">
|
<interface name="org.gnome.Magnifier.ZoomRegion"> \
|
||||||
<arg type="d" direction="in" />
|
<method name="setMagFactor"> \
|
||||||
<arg type="d" direction="in" />
|
<arg type="d" direction="in" /> \
|
||||||
</method>
|
<arg type="d" direction="in" /> \
|
||||||
<method name="getMagFactor">
|
</method> \
|
||||||
<arg type="d" direction="out" />
|
<method name="getMagFactor"> \
|
||||||
<arg type="d" direction="out" />
|
<arg type="d" direction="out" /> \
|
||||||
</method>
|
<arg type="d" direction="out" /> \
|
||||||
<method name="setRoi">
|
</method> \
|
||||||
<arg type="ai" direction="in" />
|
<method name="setRoi"> \
|
||||||
</method>
|
<arg type="ai" direction="in" /> \
|
||||||
<method name="getRoi">
|
</method> \
|
||||||
<arg type="ai" direction="out" />
|
<method name="getRoi"> \
|
||||||
</method>
|
<arg type="ai" direction="out" /> \
|
||||||
<method name="shiftContentsTo">
|
</method> \
|
||||||
<arg type="i" direction="in" />
|
<method name="shiftContentsTo"> \
|
||||||
<arg type="i" direction="in" />
|
<arg type="i" direction="in" /> \
|
||||||
<arg type="b" direction="out" />
|
<arg type="i" direction="in" /> \
|
||||||
</method>
|
<arg type="b" direction="out" /> \
|
||||||
<method name="moveResize">
|
</method> \
|
||||||
<arg type="ai" direction="in" />
|
<method name="moveResize"> \
|
||||||
</method>
|
<arg type="ai" direction="in" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
// For making unique ZoomRegion DBus proxy object paths of the form:
|
// For making unique ZoomRegion DBus proxy object paths of the form:
|
||||||
// '/org/gnome/Magnifier/ZoomRegion/zoomer0',
|
// '/org/gnome/Magnifier/ZoomRegion/zoomer0',
|
||||||
|
@ -280,10 +280,6 @@ const URLHighlighter = new Lang.Class({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
function strHasSuffix(string, suffix) {
|
|
||||||
return string.substr(-suffix.length) == suffix;
|
|
||||||
}
|
|
||||||
|
|
||||||
// NotificationPolicy:
|
// NotificationPolicy:
|
||||||
// An object that holds all bits of configurable policy related to a notification
|
// An object that holds all bits of configurable policy related to a notification
|
||||||
// source, such as whether to play sound or honour the critical bit.
|
// source, such as whether to play sound or honour the critical bit.
|
||||||
@ -310,6 +306,126 @@ const NotificationPolicy = new Lang.Class({
|
|||||||
});
|
});
|
||||||
Signals.addSignalMethods(NotificationPolicy.prototype);
|
Signals.addSignalMethods(NotificationPolicy.prototype);
|
||||||
|
|
||||||
|
const NotificationGenericPolicy = new Lang.Class({
|
||||||
|
Name: 'NotificationGenericPolicy',
|
||||||
|
Extends: NotificationPolicy,
|
||||||
|
|
||||||
|
_init: function() {
|
||||||
|
// Don't chain to parent, it would try setting
|
||||||
|
// our properties to the defaults
|
||||||
|
|
||||||
|
this.id = 'generic';
|
||||||
|
|
||||||
|
this._masterSettings = new Gio.Settings({ schema: 'org.gnome.desktop.notifications' });
|
||||||
|
this._masterSettings.connect('changed', Lang.bind(this, this._changed));
|
||||||
|
},
|
||||||
|
|
||||||
|
store: function() { },
|
||||||
|
|
||||||
|
destroy: function() {
|
||||||
|
this._masterSettings.run_dispose();
|
||||||
|
},
|
||||||
|
|
||||||
|
_changed: function(settings, key) {
|
||||||
|
this.emit('policy-changed', key);
|
||||||
|
},
|
||||||
|
|
||||||
|
get enable() {
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
|
||||||
|
get enableSound() {
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
|
||||||
|
get showBanners() {
|
||||||
|
return this._masterSettings.get_boolean('show-banners');
|
||||||
|
},
|
||||||
|
|
||||||
|
get forceExpanded() {
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
|
||||||
|
get showInLockScreen() {
|
||||||
|
return this._masterSettings.get_boolean('show-in-lock-screen');
|
||||||
|
},
|
||||||
|
|
||||||
|
get detailsInLockScreen() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const NotificationApplicationPolicy = new Lang.Class({
|
||||||
|
Name: 'NotificationApplicationPolicy',
|
||||||
|
Extends: NotificationPolicy,
|
||||||
|
|
||||||
|
_init: function(id) {
|
||||||
|
// Don't chain to parent, it would try setting
|
||||||
|
// our properties to the defaults
|
||||||
|
|
||||||
|
this.id = id;
|
||||||
|
this._canonicalId = this._canonicalizeId(id);
|
||||||
|
|
||||||
|
this._masterSettings = new Gio.Settings({ schema: 'org.gnome.desktop.notifications' });
|
||||||
|
this._settings = new Gio.Settings({ schema: 'org.gnome.desktop.notifications.application',
|
||||||
|
path: '/org/gnome/desktop/notifications/application/' + this._canonicalId + '/' });
|
||||||
|
|
||||||
|
this._masterSettings.connect('changed', Lang.bind(this, this._changed));
|
||||||
|
this._settings.connect('changed', Lang.bind(this, this._changed));
|
||||||
|
},
|
||||||
|
|
||||||
|
store: function() {
|
||||||
|
this._settings.set_string('application-id', this.id + '.desktop');
|
||||||
|
|
||||||
|
let apps = this._masterSettings.get_strv('application-children');
|
||||||
|
if (apps.indexOf(this._canonicalId) < 0) {
|
||||||
|
apps.push(this._canonicalId);
|
||||||
|
this._masterSettings.set_strv('application-children', apps);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
destroy: function() {
|
||||||
|
this._masterSettings.run_dispose();
|
||||||
|
this._settings.run_dispose();
|
||||||
|
},
|
||||||
|
|
||||||
|
_changed: function(settings, key) {
|
||||||
|
this.emit('policy-changed', key);
|
||||||
|
},
|
||||||
|
|
||||||
|
_canonicalizeId: function(id) {
|
||||||
|
// Keys are restricted to lowercase alphanumeric characters and dash,
|
||||||
|
// and two dashes cannot be in succession
|
||||||
|
return id.toLowerCase().replace(/[^a-z0-9\-]/g, '-').replace(/--+/g, '-');
|
||||||
|
},
|
||||||
|
|
||||||
|
get enable() {
|
||||||
|
return this._settings.get_boolean('enable');
|
||||||
|
},
|
||||||
|
|
||||||
|
get enableSound() {
|
||||||
|
return this._settings.get_boolean('enable-sound-alerts');
|
||||||
|
},
|
||||||
|
|
||||||
|
get showBanners() {
|
||||||
|
return this._masterSettings.get_boolean('show-banners') &&
|
||||||
|
this._settings.get_boolean('show-banners');
|
||||||
|
},
|
||||||
|
|
||||||
|
get forceExpanded() {
|
||||||
|
return this._settings.get_boolean('force-expanded');
|
||||||
|
},
|
||||||
|
|
||||||
|
get showInLockScreen() {
|
||||||
|
return this._masterSettings.get_boolean('show-in-lock-screen') &&
|
||||||
|
this._settings.get_boolean('show-in-lock-screen');
|
||||||
|
},
|
||||||
|
|
||||||
|
get detailsInLockScreen() {
|
||||||
|
return this._settings.get_boolean('details-in-lock-screen');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// Notification:
|
// Notification:
|
||||||
// @source: the notification's Source
|
// @source: the notification's Source
|
||||||
// @title: the title
|
// @title: the title
|
||||||
@ -383,7 +499,6 @@ const Notification = new Lang.Class({
|
|||||||
this.focused = false;
|
this.focused = false;
|
||||||
this.acknowledged = false;
|
this.acknowledged = false;
|
||||||
this._destroyed = false;
|
this._destroyed = false;
|
||||||
this._useActionIcons = false;
|
|
||||||
this._customContent = false;
|
this._customContent = false;
|
||||||
this.bannerBodyText = null;
|
this.bannerBodyText = null;
|
||||||
this.bannerBodyMarkup = false;
|
this.bannerBodyMarkup = false;
|
||||||
@ -438,7 +553,12 @@ const Notification = new Lang.Class({
|
|||||||
this._bannerLabel = this._bannerUrlHighlighter.actor;
|
this._bannerLabel = this._bannerUrlHighlighter.actor;
|
||||||
this._bannerBox.add_actor(this._bannerLabel);
|
this._bannerBox.add_actor(this._bannerLabel);
|
||||||
|
|
||||||
this.update(title, banner, params);
|
// If called with only one argument we assume the caller
|
||||||
|
// will call .update() later on. This is the case of
|
||||||
|
// NotificationDaemon, which wants to use the same code
|
||||||
|
// for new and updated notifications
|
||||||
|
if (arguments.length != 1)
|
||||||
|
this.update(title, banner, params);
|
||||||
},
|
},
|
||||||
|
|
||||||
// update:
|
// update:
|
||||||
@ -711,19 +831,8 @@ const Notification = new Lang.Class({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// addButton:
|
addButton: function(button, callback) {
|
||||||
// @id: the action ID
|
|
||||||
// @label: the label for the action's button
|
|
||||||
//
|
|
||||||
// Adds a button with the given @label to the notification. All
|
|
||||||
// action buttons will appear in a single row at the bottom of
|
|
||||||
// the notification.
|
|
||||||
//
|
|
||||||
// If the button is clicked, the notification will emit the
|
|
||||||
// %action-invoked signal with @id as a parameter
|
|
||||||
addButton: function(id, label) {
|
|
||||||
if (!this._buttonBox) {
|
if (!this._buttonBox) {
|
||||||
|
|
||||||
let box = new St.BoxLayout({ style_class: 'notification-actions' });
|
let box = new St.BoxLayout({ style_class: 'notification-actions' });
|
||||||
this.setActionArea(box, { x_expand: false,
|
this.setActionArea(box, { x_expand: false,
|
||||||
y_expand: false,
|
y_expand: false,
|
||||||
@ -731,49 +840,40 @@ const Notification = new Lang.Class({
|
|||||||
y_fill: false,
|
y_fill: false,
|
||||||
x_align: St.Align.END });
|
x_align: St.Align.END });
|
||||||
this._buttonBox = box;
|
this._buttonBox = box;
|
||||||
|
global.focus_manager.add_group(this._buttonBox);
|
||||||
}
|
}
|
||||||
|
|
||||||
let button = new St.Button({ can_focus: true });
|
|
||||||
button._actionId = id;
|
|
||||||
|
|
||||||
let iconName = strHasSuffix(id, '-symbolic') ? id : id + '-symbolic';
|
|
||||||
if (this._useActionIcons && Gtk.IconTheme.get_default().has_icon(iconName)) {
|
|
||||||
button.add_style_class_name('notification-icon-button');
|
|
||||||
button.child = new St.Icon({ icon_name: iconName });
|
|
||||||
} else {
|
|
||||||
button.add_style_class_name('notification-button');
|
|
||||||
button.label = label;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this._buttonBox.get_n_children() > 0)
|
|
||||||
global.focus_manager.remove_group(this._buttonBox);
|
|
||||||
|
|
||||||
this._buttonBox.add(button);
|
this._buttonBox.add(button);
|
||||||
global.focus_manager.add_group(this._buttonBox);
|
button.connect('clicked', Lang.bind(this, function() {
|
||||||
button.connect('clicked', Lang.bind(this, this._onActionInvoked, id));
|
callback();
|
||||||
|
|
||||||
|
if (!this.resident) {
|
||||||
|
// We don't hide a resident notification when the user invokes one of its actions,
|
||||||
|
// because it is common for such notifications to update themselves with new
|
||||||
|
// information based on the action. We'd like to display the updated information
|
||||||
|
// in place, rather than pop-up a new notification.
|
||||||
|
this.emit('done-displaying');
|
||||||
|
this.destroy();
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
|
||||||
this.updated();
|
this.updated();
|
||||||
|
return button;
|
||||||
},
|
},
|
||||||
|
|
||||||
// setButtonSensitive:
|
// addAction:
|
||||||
// @id: the action ID
|
// @label: the label for the action's button
|
||||||
// @sensitive: whether the button should be sensitive
|
// @callback: the callback for the action
|
||||||
//
|
//
|
||||||
// If the notification contains a button with action ID @id,
|
// Adds a button with the given @label to the notification. All
|
||||||
// its sensitivity will be set to @sensitive. Insensitive
|
// action buttons will appear in a single row at the bottom of
|
||||||
// buttons cannot be clicked.
|
// the notification.
|
||||||
setButtonSensitive: function(id, sensitive) {
|
addAction: function(label, callback) {
|
||||||
if (!this._buttonBox)
|
let button = new St.Button({ style_class: 'notification-button',
|
||||||
return;
|
label: label,
|
||||||
|
can_focus: true });
|
||||||
|
|
||||||
let button = this._buttonBox.get_children().filter(function(b) {
|
return this.addButton(button, callback);
|
||||||
return b._actionId == id;
|
|
||||||
})[0];
|
|
||||||
|
|
||||||
if (!button || button.reactive == sensitive)
|
|
||||||
return;
|
|
||||||
|
|
||||||
button.reactive = sensitive;
|
|
||||||
},
|
},
|
||||||
|
|
||||||
setUrgency: function(urgency) {
|
setUrgency: function(urgency) {
|
||||||
@ -792,10 +892,6 @@ const Notification = new Lang.Class({
|
|||||||
this.forFeedback = forFeedback;
|
this.forFeedback = forFeedback;
|
||||||
},
|
},
|
||||||
|
|
||||||
setUseActionIcons: function(useIcons) {
|
|
||||||
this._useActionIcons = useIcons;
|
|
||||||
},
|
|
||||||
|
|
||||||
_styleChanged: function() {
|
_styleChanged: function() {
|
||||||
this._spacing = this._table.get_theme_node().get_length('spacing-columns');
|
this._spacing = this._table.get_theme_node().get_length('spacing-columns');
|
||||||
},
|
},
|
||||||
@ -1020,18 +1116,6 @@ const Notification = new Lang.Class({
|
|||||||
this.actor.add_style_class_name('notification-unexpanded');
|
this.actor.add_style_class_name('notification-unexpanded');
|
||||||
},
|
},
|
||||||
|
|
||||||
_onActionInvoked: function(actor, mouseButtonClicked, id) {
|
|
||||||
this.emit('action-invoked', id);
|
|
||||||
if (!this.resident) {
|
|
||||||
// We don't hide a resident notification when the user invokes one of its actions,
|
|
||||||
// because it is common for such notifications to update themselves with new
|
|
||||||
// information based on the action. We'd like to display the updated information
|
|
||||||
// in place, rather than pop-up a new notification.
|
|
||||||
this.emit('done-displaying');
|
|
||||||
this.destroy();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
_onClicked: function() {
|
_onClicked: function() {
|
||||||
this.emit('clicked');
|
this.emit('clicked');
|
||||||
// We hide all types of notifications once the user clicks on them because the common
|
// We hide all types of notifications once the user clicks on them because the common
|
||||||
@ -1206,6 +1290,10 @@ const Source = new Lang.Class({
|
|||||||
return this.count > 1;
|
return this.count > 1;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
get isClearable() {
|
||||||
|
return !this.trayIcon && !this.isChat && !this.resident;
|
||||||
|
},
|
||||||
|
|
||||||
countUpdated: function() {
|
countUpdated: function() {
|
||||||
this.emit('count-updated');
|
this.emit('count-updated');
|
||||||
},
|
},
|
||||||
@ -1277,25 +1365,25 @@ const Source = new Lang.Class({
|
|||||||
return this._mainIcon.actor;
|
return this._mainIcon.actor;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_onNotificationDestroy: function(notification) {
|
||||||
|
let index = this.notifications.indexOf(notification);
|
||||||
|
if (index < 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
this.notifications.splice(index, 1);
|
||||||
|
if (this.notifications.length == 0)
|
||||||
|
this._lastNotificationRemoved();
|
||||||
|
|
||||||
|
this.countUpdated();
|
||||||
|
},
|
||||||
|
|
||||||
pushNotification: function(notification) {
|
pushNotification: function(notification) {
|
||||||
if (this.notifications.indexOf(notification) < 0) {
|
if (this.notifications.indexOf(notification) >= 0)
|
||||||
this.notifications.push(notification);
|
return;
|
||||||
this.emit('notification-added', notification);
|
|
||||||
}
|
|
||||||
|
|
||||||
notification.connect('clicked', Lang.bind(this, this.open));
|
notification.connect('destroy', Lang.bind(this, this._onNotificationDestroy));
|
||||||
notification.connect('destroy', Lang.bind(this,
|
this.notifications.push(notification);
|
||||||
function () {
|
this.emit('notification-added', notification);
|
||||||
let index = this.notifications.indexOf(notification);
|
|
||||||
if (index < 0)
|
|
||||||
return;
|
|
||||||
|
|
||||||
this.notifications.splice(index, 1);
|
|
||||||
if (this.notifications.length == 0)
|
|
||||||
this._lastNotificationRemoved();
|
|
||||||
|
|
||||||
this.countUpdated();
|
|
||||||
}));
|
|
||||||
|
|
||||||
this.countUpdated();
|
this.countUpdated();
|
||||||
},
|
},
|
||||||
@ -1507,26 +1595,42 @@ const MessageTrayMenu = new Lang.Class({
|
|||||||
|
|
||||||
this._tray = tray;
|
this._tray = tray;
|
||||||
|
|
||||||
|
this._presence = new GnomeSession.Presence(Lang.bind(this, function(proxy, error) {
|
||||||
|
if (error) {
|
||||||
|
logError(error, 'Error while reading gnome-session presence');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
this._onStatusChanged(proxy.status);
|
||||||
|
}));
|
||||||
|
this._presence.connectSignal('StatusChanged', Lang.bind(this, function(proxy, senderName, [status]) {
|
||||||
|
this._onStatusChanged(status);
|
||||||
|
}));
|
||||||
|
|
||||||
|
this._accountManager = Tp.AccountManager.dup();
|
||||||
|
this._accountManager.connect('most-available-presence-changed',
|
||||||
|
Lang.bind(this, this._onIMPresenceChanged));
|
||||||
|
this._accountManager.prepare_async(null, Lang.bind(this, this._onIMPresenceChanged));
|
||||||
|
|
||||||
this.actor.hide();
|
this.actor.hide();
|
||||||
Main.layoutManager.addChrome(this.actor);
|
Main.layoutManager.addChrome(this.actor);
|
||||||
|
|
||||||
|
this._busyItem = new PopupMenu.PopupSwitchMenuItem(_("Notifications"));
|
||||||
|
this._busyItem.connect('toggled', Lang.bind(this, this._updatePresence));
|
||||||
|
this.addMenuItem(this._busyItem);
|
||||||
|
|
||||||
|
let separator = new PopupMenu.PopupSeparatorMenuItem();
|
||||||
|
this.addMenuItem(separator);
|
||||||
|
|
||||||
this._clearItem = this.addAction(_("Clear Messages"), function() {
|
this._clearItem = this.addAction(_("Clear Messages"), function() {
|
||||||
let toDestroy = [];
|
let toDestroy = tray.getSources().filter(function(source) {
|
||||||
let sources = tray.getSources();
|
return source.isClearable;
|
||||||
for (let i = 0; i < sources.length; i++) {
|
})
|
||||||
// We exclude trayIcons, chat and resident sources
|
|
||||||
if (sources[i].trayIcon ||
|
|
||||||
sources[i].isChat ||
|
|
||||||
sources[i].resident)
|
|
||||||
continue;
|
|
||||||
toDestroy.push(sources[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
for (let i = 0; i < toDestroy.length; i++) {
|
toDestroy.forEach(function(source) {
|
||||||
toDestroy[i].destroy();
|
source.destroy();
|
||||||
}
|
});
|
||||||
|
|
||||||
toDestroy = null;
|
|
||||||
tray.close();
|
tray.close();
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -1541,9 +1645,43 @@ const MessageTrayMenu = new Lang.Class({
|
|||||||
settingsItem.connect('activate', function() { tray.close(); });
|
settingsItem.connect('activate', function() { tray.close(); });
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_onStatusChanged: function(status) {
|
||||||
|
this._sessionStatus = status;
|
||||||
|
this._busyItem.setToggleState(status != GnomeSession.PresenceStatus.BUSY);
|
||||||
|
},
|
||||||
|
|
||||||
|
_onIMPresenceChanged: function(am, type) {
|
||||||
|
if (type == Tp.ConnectionPresenceType.AVAILABLE &&
|
||||||
|
this._sessionStatus == GnomeSession.PresenceStatus.BUSY)
|
||||||
|
this._presence.SetStatusRemote(GnomeSession.PresenceStatus.AVAILABLE);
|
||||||
|
},
|
||||||
|
|
||||||
_updateClearSensitivity: function() {
|
_updateClearSensitivity: function() {
|
||||||
this._clearItem.setSensitive(this._tray.clearableCount > 0);
|
this._clearItem.setSensitive(this._tray.clearableCount > 0);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_updatePresence: function(item, state) {
|
||||||
|
let status = state ? GnomeSession.PresenceStatus.AVAILABLE
|
||||||
|
: GnomeSession.PresenceStatus.BUSY;
|
||||||
|
this._presence.SetStatusRemote(status);
|
||||||
|
|
||||||
|
let [type, s ,msg] = this._accountManager.get_most_available_presence();
|
||||||
|
let newType = 0;
|
||||||
|
let newStatus;
|
||||||
|
if (status == GnomeSession.PresenceStatus.BUSY &&
|
||||||
|
type == Tp.ConnectionPresenceType.AVAILABLE) {
|
||||||
|
newType = Tp.ConnectionPresenceType.BUSY;
|
||||||
|
newStatus = 'busy';
|
||||||
|
} else if (status == GnomeSession.PresenceStatus.AVAILABLE &&
|
||||||
|
type == Tp.ConnectionPresenceType.BUSY) {
|
||||||
|
newType = Tp.ConnectionPresenceType.AVAILABLE;
|
||||||
|
newStatus = 'available';
|
||||||
|
}
|
||||||
|
|
||||||
|
if (newType > 0)
|
||||||
|
this._accountManager.set_all_requested_presences(newType,
|
||||||
|
newStatus, msg);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
const MessageTrayMenuButton = new Lang.Class({
|
const MessageTrayMenuButton = new Lang.Class({
|
||||||
@ -1926,7 +2064,7 @@ const MessageTray = new Lang.Class({
|
|||||||
this._summary.insert_child_at_index(summaryItem.actor, this._chatSummaryItemsCount);
|
this._summary.insert_child_at_index(summaryItem.actor, this._chatSummaryItemsCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!source.trayIcon && !source.isChat && !source.resident)
|
if (source.isClearable)
|
||||||
this.clearableCount++;
|
this.clearableCount++;
|
||||||
|
|
||||||
this._sources.set(source, obj);
|
this._sources.set(source, obj);
|
||||||
@ -1970,7 +2108,7 @@ const MessageTray = new Lang.Class({
|
|||||||
if (source.isChat)
|
if (source.isChat)
|
||||||
this._chatSummaryItemsCount--;
|
this._chatSummaryItemsCount--;
|
||||||
|
|
||||||
if (!source.trayIcon && !source.isChat && !source.resident)
|
if (source.isClearable)
|
||||||
this.clearableCount--;
|
this.clearableCount--;
|
||||||
|
|
||||||
source.disconnect(obj.notifyId);
|
source.disconnect(obj.notifyId);
|
||||||
@ -2035,7 +2173,10 @@ const MessageTray = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
toggleAndNavigate: function() {
|
toggleAndNavigate: function() {
|
||||||
if (this.toggle())
|
if (!this.toggle())
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (this._traySummoned)
|
||||||
this._summary.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false);
|
this._summary.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -4,6 +4,7 @@ const Clutter = imports.gi.Clutter;
|
|||||||
const GdkPixbuf = imports.gi.GdkPixbuf;
|
const GdkPixbuf = imports.gi.GdkPixbuf;
|
||||||
const Gio = imports.gi.Gio;
|
const Gio = imports.gi.Gio;
|
||||||
const GLib = imports.gi.GLib;
|
const GLib = imports.gi.GLib;
|
||||||
|
const Gtk = imports.gi.Gtk;
|
||||||
const Lang = imports.lang;
|
const Lang = imports.lang;
|
||||||
const Shell = imports.gi.Shell;
|
const Shell = imports.gi.Shell;
|
||||||
const Mainloop = imports.mainloop;
|
const Mainloop = imports.mainloop;
|
||||||
@ -15,54 +16,56 @@ const MessageTray = imports.ui.messageTray;
|
|||||||
const Params = imports.misc.params;
|
const Params = imports.misc.params;
|
||||||
const Util = imports.misc.util;
|
const Util = imports.misc.util;
|
||||||
|
|
||||||
let nextNotificationId = 1;
|
|
||||||
|
|
||||||
// Should really be defined in Gio.js
|
// Should really be defined in Gio.js
|
||||||
const BusIface = <interface name="org.freedesktop.DBus">
|
const BusIface = '<node> \
|
||||||
<method name="GetConnectionUnixProcessID">
|
<interface name="org.freedesktop.DBus"> \
|
||||||
<arg type="s" direction="in" />
|
<method name="GetConnectionUnixProcessID"> \
|
||||||
<arg type="u" direction="out" />
|
<arg type="s" direction="in" /> \
|
||||||
</method>
|
<arg type="u" direction="out" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
var BusProxy = Gio.DBusProxy.makeProxyWrapper(BusIface);
|
var BusProxy = Gio.DBusProxy.makeProxyWrapper(BusIface);
|
||||||
function Bus() {
|
function Bus() {
|
||||||
return new BusProxy(Gio.DBus.session, 'org.freedesktop.DBus', '/org/freedesktop/DBus');
|
return new BusProxy(Gio.DBus.session, 'org.freedesktop.DBus', '/org/freedesktop/DBus');
|
||||||
}
|
}
|
||||||
|
|
||||||
const NotificationDaemonIface = <interface name="org.freedesktop.Notifications">
|
const FdoNotificationsIface = '<node> \
|
||||||
<method name="Notify">
|
<interface name="org.freedesktop.Notifications"> \
|
||||||
<arg type="s" direction="in"/>
|
<method name="Notify"> \
|
||||||
<arg type="u" direction="in"/>
|
<arg type="s" direction="in"/> \
|
||||||
<arg type="s" direction="in"/>
|
<arg type="u" direction="in"/> \
|
||||||
<arg type="s" direction="in"/>
|
<arg type="s" direction="in"/> \
|
||||||
<arg type="s" direction="in"/>
|
<arg type="s" direction="in"/> \
|
||||||
<arg type="as" direction="in"/>
|
<arg type="s" direction="in"/> \
|
||||||
<arg type="a{sv}" direction="in"/>
|
<arg type="as" direction="in"/> \
|
||||||
<arg type="i" direction="in"/>
|
<arg type="a{sv}" direction="in"/> \
|
||||||
<arg type="u" direction="out"/>
|
<arg type="i" direction="in"/> \
|
||||||
</method>
|
<arg type="u" direction="out"/> \
|
||||||
<method name="CloseNotification">
|
</method> \
|
||||||
<arg type="u" direction="in"/>
|
<method name="CloseNotification"> \
|
||||||
</method>
|
<arg type="u" direction="in"/> \
|
||||||
<method name="GetCapabilities">
|
</method> \
|
||||||
<arg type="as" direction="out"/>
|
<method name="GetCapabilities"> \
|
||||||
</method>
|
<arg type="as" direction="out"/> \
|
||||||
<method name="GetServerInformation">
|
</method> \
|
||||||
<arg type="s" direction="out"/>
|
<method name="GetServerInformation"> \
|
||||||
<arg type="s" direction="out"/>
|
<arg type="s" direction="out"/> \
|
||||||
<arg type="s" direction="out"/>
|
<arg type="s" direction="out"/> \
|
||||||
<arg type="s" direction="out"/>
|
<arg type="s" direction="out"/> \
|
||||||
</method>
|
<arg type="s" direction="out"/> \
|
||||||
<signal name="NotificationClosed">
|
</method> \
|
||||||
<arg type="u"/>
|
<signal name="NotificationClosed"> \
|
||||||
<arg type="u"/>
|
<arg type="u"/> \
|
||||||
</signal>
|
<arg type="u"/> \
|
||||||
<signal name="ActionInvoked">
|
</signal> \
|
||||||
<arg type="u"/>
|
<signal name="ActionInvoked"> \
|
||||||
<arg type="s"/>
|
<arg type="u"/> \
|
||||||
</signal>
|
<arg type="s"/> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const NotificationClosedReason = {
|
const NotificationClosedReason = {
|
||||||
EXPIRED: 1,
|
EXPIRED: 1,
|
||||||
@ -103,131 +106,11 @@ const STANDARD_TRAY_ICON_IMPLEMENTATIONS = {
|
|||||||
'ibus-ui-gtk': 'keyboard'
|
'ibus-ui-gtk': 'keyboard'
|
||||||
};
|
};
|
||||||
|
|
||||||
const NotificationGenericPolicy = new Lang.Class({
|
const FdoNotificationDaemon = new Lang.Class({
|
||||||
Name: 'NotificationGenericPolicy',
|
Name: 'FdoNotificationDaemon',
|
||||||
Extends: MessageTray.NotificationPolicy,
|
|
||||||
|
|
||||||
_init: function() {
|
_init: function() {
|
||||||
// Don't chain to parent, it would try setting
|
this._dbusImpl = Gio.DBusExportedObject.wrapJSObject(FdoNotificationsIface, this);
|
||||||
// our properties to the defaults
|
|
||||||
|
|
||||||
this.id = 'generic';
|
|
||||||
|
|
||||||
this._masterSettings = new Gio.Settings({ schema: 'org.gnome.desktop.notifications' });
|
|
||||||
this._masterSettings.connect('changed', Lang.bind(this, this._changed));
|
|
||||||
},
|
|
||||||
|
|
||||||
store: function() { },
|
|
||||||
|
|
||||||
destroy: function() {
|
|
||||||
this._masterSettings.run_dispose();
|
|
||||||
},
|
|
||||||
|
|
||||||
_changed: function(settings, key) {
|
|
||||||
this.emit('policy-changed', key);
|
|
||||||
},
|
|
||||||
|
|
||||||
get enable() {
|
|
||||||
return true;
|
|
||||||
},
|
|
||||||
|
|
||||||
get enableSound() {
|
|
||||||
return true;
|
|
||||||
},
|
|
||||||
|
|
||||||
get showBanners() {
|
|
||||||
return this._masterSettings.get_boolean('show-banners');
|
|
||||||
},
|
|
||||||
|
|
||||||
get forceExpanded() {
|
|
||||||
return false;
|
|
||||||
},
|
|
||||||
|
|
||||||
get showInLockScreen() {
|
|
||||||
return this._masterSettings.get_boolean('show-in-lock-screen');
|
|
||||||
},
|
|
||||||
|
|
||||||
get detailsInLockScreen() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const NotificationApplicationPolicy = new Lang.Class({
|
|
||||||
Name: 'NotificationApplicationPolicy',
|
|
||||||
Extends: MessageTray.NotificationPolicy,
|
|
||||||
|
|
||||||
_init: function(id) {
|
|
||||||
// Don't chain to parent, it would try setting
|
|
||||||
// our properties to the defaults
|
|
||||||
|
|
||||||
this.id = id;
|
|
||||||
this._canonicalId = this._canonicalizeId(id)
|
|
||||||
|
|
||||||
this._masterSettings = new Gio.Settings({ schema: 'org.gnome.desktop.notifications' });
|
|
||||||
this._settings = new Gio.Settings({ schema: 'org.gnome.desktop.notifications.application',
|
|
||||||
path: '/org/gnome/desktop/notifications/application/' + this._canonicalId + '/' });
|
|
||||||
|
|
||||||
this._masterSettings.connect('changed', Lang.bind(this, this._changed));
|
|
||||||
this._settings.connect('changed', Lang.bind(this, this._changed));
|
|
||||||
},
|
|
||||||
|
|
||||||
store: function() {
|
|
||||||
this._settings.set_string('application-id', this.id + '.desktop');
|
|
||||||
|
|
||||||
let apps = this._masterSettings.get_strv('application-children');
|
|
||||||
if (apps.indexOf(this._canonicalId) < 0) {
|
|
||||||
apps.push(this._canonicalId);
|
|
||||||
this._masterSettings.set_strv('application-children', apps);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
destroy: function() {
|
|
||||||
this._masterSettings.run_dispose();
|
|
||||||
this._settings.run_dispose();
|
|
||||||
},
|
|
||||||
|
|
||||||
_changed: function(settings, key) {
|
|
||||||
this.emit('policy-changed', key);
|
|
||||||
},
|
|
||||||
|
|
||||||
_canonicalizeId: function(id) {
|
|
||||||
// Keys are restricted to lowercase alphanumeric characters and dash,
|
|
||||||
// and two dashes cannot be in succession
|
|
||||||
return id.toLowerCase().replace(/[^a-z0-9\-]/g, '-').replace(/--+/g, '-');
|
|
||||||
},
|
|
||||||
|
|
||||||
get enable() {
|
|
||||||
return this._settings.get_boolean('enable');
|
|
||||||
},
|
|
||||||
|
|
||||||
get enableSound() {
|
|
||||||
return this._settings.get_boolean('enable-sound-alerts');
|
|
||||||
},
|
|
||||||
|
|
||||||
get showBanners() {
|
|
||||||
return this._masterSettings.get_boolean('show-banners') &&
|
|
||||||
this._settings.get_boolean('show-banners');
|
|
||||||
},
|
|
||||||
|
|
||||||
get forceExpanded() {
|
|
||||||
return this._settings.get_boolean('force-expanded');
|
|
||||||
},
|
|
||||||
|
|
||||||
get showInLockScreen() {
|
|
||||||
return this._masterSettings.get_boolean('show-in-lock-screen') &&
|
|
||||||
this._settings.get_boolean('show-in-lock-screen');
|
|
||||||
},
|
|
||||||
|
|
||||||
get detailsInLockScreen() {
|
|
||||||
return this._settings.get_boolean('details-in-lock-screen');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const NotificationDaemon = new Lang.Class({
|
|
||||||
Name: 'NotificationDaemon',
|
|
||||||
|
|
||||||
_init: function() {
|
|
||||||
this._dbusImpl = Gio.DBusExportedObject.wrapJSObject(NotificationDaemonIface, this);
|
|
||||||
this._dbusImpl.export(Gio.DBus.session, '/org/freedesktop/Notifications');
|
this._dbusImpl.export(Gio.DBus.session, '/org/freedesktop/Notifications');
|
||||||
|
|
||||||
this._sources = [];
|
this._sources = [];
|
||||||
@ -235,6 +118,8 @@ const NotificationDaemon = new Lang.Class({
|
|||||||
this._notifications = {};
|
this._notifications = {};
|
||||||
this._busProxy = new Bus();
|
this._busProxy = new Bus();
|
||||||
|
|
||||||
|
this._nextNotificationId = 1;
|
||||||
|
|
||||||
this._trayManager = new Shell.TrayManager();
|
this._trayManager = new Shell.TrayManager();
|
||||||
this._trayIconAddedId = this._trayManager.connect('tray-icon-added', Lang.bind(this, this._onTrayIconAdded));
|
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));
|
this._trayIconRemovedId = this._trayManager.connect('tray-icon-removed', Lang.bind(this, this._onTrayIconRemoved));
|
||||||
@ -333,7 +218,7 @@ const NotificationDaemon = new Lang.Class({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let source = new Source(title, pid, sender, trayIcon, ndata ? ndata.hints['desktop-entry'] : null);
|
let source = new FdoNotificationDaemonSource(title, pid, sender, trayIcon, ndata ? ndata.hints['desktop-entry'] : null);
|
||||||
source.setTransient(isForTransientNotification);
|
source.setTransient(isForTransientNotification);
|
||||||
|
|
||||||
if (!isForTransientNotification) {
|
if (!isForTransientNotification) {
|
||||||
@ -372,7 +257,7 @@ const NotificationDaemon = new Lang.Class({
|
|||||||
hints['category'] == 'presence.offline')) {
|
hints['category'] == 'presence.offline')) {
|
||||||
// Ignore replacesId since we already sent back a
|
// Ignore replacesId since we already sent back a
|
||||||
// NotificationClosed for that id.
|
// NotificationClosed for that id.
|
||||||
id = nextNotificationId++;
|
id = this._nextNotificationId++;
|
||||||
Mainloop.idle_add(Lang.bind(this,
|
Mainloop.idle_add(Lang.bind(this,
|
||||||
function () {
|
function () {
|
||||||
this._emitNotificationClosed(id, NotificationClosedReason.DISMISSED);
|
this._emitNotificationClosed(id, NotificationClosedReason.DISMISSED);
|
||||||
@ -396,12 +281,13 @@ const NotificationDaemon = new Lang.Class({
|
|||||||
if (!hints['image-path'] && hints['image_path'])
|
if (!hints['image-path'] && hints['image_path'])
|
||||||
hints['image-path'] = hints['image_path']; // version 1.1 of the spec
|
hints['image-path'] = hints['image_path']; // version 1.1 of the spec
|
||||||
|
|
||||||
if (!hints['image-data'])
|
if (!hints['image-data']) {
|
||||||
if (hints['image_data'])
|
if (hints['image_data'])
|
||||||
hints['image-data'] = hints['image_data']; // version 1.1 of the spec
|
hints['image-data'] = hints['image_data']; // version 1.1 of the spec
|
||||||
else if (hints['icon_data'] && !hints['image-path'])
|
else if (hints['icon_data'] && !hints['image-path'])
|
||||||
// early versions of the spec; 'icon_data' should only be used if 'image-path' is not available
|
// early versions of the spec; 'icon_data' should only be used if 'image-path' is not available
|
||||||
hints['image-data'] = hints['icon_data'];
|
hints['image-data'] = hints['icon_data'];
|
||||||
|
}
|
||||||
|
|
||||||
let ndata = { appName: appName,
|
let ndata = { appName: appName,
|
||||||
icon: icon,
|
icon: icon,
|
||||||
@ -415,7 +301,7 @@ const NotificationDaemon = new Lang.Class({
|
|||||||
ndata.notification = this._notifications[replacesId].notification;
|
ndata.notification = this._notifications[replacesId].notification;
|
||||||
} else {
|
} else {
|
||||||
replacesId = 0;
|
replacesId = 0;
|
||||||
ndata.id = id = nextNotificationId++;
|
ndata.id = id = this._nextNotificationId++;
|
||||||
}
|
}
|
||||||
this._notifications[id] = ndata;
|
this._notifications[id] = ndata;
|
||||||
|
|
||||||
@ -470,6 +356,19 @@ const NotificationDaemon = new Lang.Class({
|
|||||||
return invocation.return_value(GLib.Variant.new('(u)', [id]));
|
return invocation.return_value(GLib.Variant.new('(u)', [id]));
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_makeButton: function(id, label, useActionIcons) {
|
||||||
|
let button = new St.Button({ can_focus: true });
|
||||||
|
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 });
|
||||||
|
} else {
|
||||||
|
button.add_style_class_name('notification-button');
|
||||||
|
button.label = label;
|
||||||
|
}
|
||||||
|
return button;
|
||||||
|
},
|
||||||
|
|
||||||
_notifyForSource: function(source, ndata) {
|
_notifyForSource: function(source, ndata) {
|
||||||
let [id, icon, summary, body, actions, hints, notification] =
|
let [id, icon, summary, body, actions, hints, notification] =
|
||||||
[ndata.id, ndata.icon, ndata.summary, ndata.body,
|
[ndata.id, ndata.icon, ndata.summary, ndata.body,
|
||||||
@ -495,10 +394,6 @@ const NotificationDaemon = new Lang.Class({
|
|||||||
}
|
}
|
||||||
this._emitNotificationClosed(ndata.id, notificationClosedReason);
|
this._emitNotificationClosed(ndata.id, notificationClosedReason);
|
||||||
}));
|
}));
|
||||||
notification.connect('action-invoked', Lang.bind(this,
|
|
||||||
function(n, actionId) {
|
|
||||||
this._emitActionInvoked(ndata.id, actionId);
|
|
||||||
}));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mark music notifications so they can be shown in the screen shield
|
// Mark music notifications so they can be shown in the screen shield
|
||||||
@ -532,18 +427,33 @@ const NotificationDaemon = new Lang.Class({
|
|||||||
soundName: hints['sound-name'] });
|
soundName: hints['sound-name'] });
|
||||||
notification.setImage(image);
|
notification.setImage(image);
|
||||||
|
|
||||||
|
let hasDefaultAction = false;
|
||||||
|
|
||||||
if (actions.length) {
|
if (actions.length) {
|
||||||
notification.setUseActionIcons(hints['action-icons'] == true);
|
let useActionIcons = (hints['action-icons'] == true);
|
||||||
|
|
||||||
for (let i = 0; i < actions.length - 1; i += 2) {
|
for (let i = 0; i < actions.length - 1; i += 2) {
|
||||||
if (actions[i] == 'default')
|
let [actionId, label] = [actions[i], actions[i+1]];
|
||||||
notification.connect('clicked', Lang.bind(this,
|
if (actionId == 'default') {
|
||||||
function() {
|
hasDefaultAction = true;
|
||||||
this._emitActionInvoked(ndata.id, "default");
|
} else {
|
||||||
}));
|
notification.addButton(this._makeButton(actionId, label, useActionIcons), Lang.bind(this, function() {
|
||||||
else
|
this._emitActionInvoked(ndata.id, actionId);
|
||||||
notification.addButton(actions[i], actions[i + 1]);
|
}));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (hasDefaultAction) {
|
||||||
|
notification.connect('clicked', Lang.bind(this, function() {
|
||||||
|
this._emitActionInvoked(ndata.id, 'default');
|
||||||
|
}));
|
||||||
|
} else {
|
||||||
|
notification.connect('clicked', Lang.bind(this, function() {
|
||||||
|
source.open();
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
switch (hints.urgency) {
|
switch (hints.urgency) {
|
||||||
case Urgency.LOW:
|
case Urgency.LOW:
|
||||||
notification.setUrgency(MessageTray.Urgency.LOW);
|
notification.setUrgency(MessageTray.Urgency.LOW);
|
||||||
@ -636,8 +546,8 @@ const NotificationDaemon = new Lang.Class({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
const Source = new Lang.Class({
|
const FdoNotificationDaemonSource = new Lang.Class({
|
||||||
Name: 'NotificationDaemonSource',
|
Name: 'FdoNotificationDaemonSource',
|
||||||
Extends: MessageTray.Source,
|
Extends: MessageTray.Source,
|
||||||
|
|
||||||
_init: function(title, pid, sender, trayIcon, appId) {
|
_init: function(title, pid, sender, trayIcon, appId) {
|
||||||
@ -674,9 +584,9 @@ const Source = new Lang.Class({
|
|||||||
_createPolicy: function() {
|
_createPolicy: function() {
|
||||||
if (this.app) {
|
if (this.app) {
|
||||||
let id = this.app.get_id().replace(/\.desktop$/,'');
|
let id = this.app.get_id().replace(/\.desktop$/,'');
|
||||||
return new NotificationApplicationPolicy(id);
|
return new MessageTray.NotificationApplicationPolicy(id);
|
||||||
} else {
|
} else {
|
||||||
return new NotificationGenericPolicy();
|
return new MessageTray.NotificationGenericPolicy();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -752,22 +662,6 @@ const Source = new Lang.Class({
|
|||||||
return null;
|
return null;
|
||||||
},
|
},
|
||||||
|
|
||||||
_setApp: function(appId) {
|
|
||||||
if (this.app)
|
|
||||||
return;
|
|
||||||
|
|
||||||
this.app = this._getApp(appId);
|
|
||||||
if (!this.app)
|
|
||||||
return;
|
|
||||||
|
|
||||||
// Only override the icon if we were previously using
|
|
||||||
// notification-based icons (ie, not a trayicon) or if it was unset before
|
|
||||||
if (!this.trayIcon) {
|
|
||||||
this.useNotificationIcon = false;
|
|
||||||
this.iconUpdated();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
setTitle: function(title) {
|
setTitle: function(title) {
|
||||||
// Do nothing if .app is set, we don't want to override the
|
// Do nothing if .app is set, we don't want to override the
|
||||||
// app name with whatever is provided through libnotify (usually
|
// app name with whatever is provided through libnotify (usually
|
||||||
@ -778,9 +672,9 @@ const Source = new Lang.Class({
|
|||||||
this.parent(title);
|
this.parent(title);
|
||||||
},
|
},
|
||||||
|
|
||||||
open: function(notification) {
|
open: function() {
|
||||||
this.destroyNonResidentNotifications();
|
|
||||||
this.openApp();
|
this.openApp();
|
||||||
|
this.destroyNonResidentNotifications();
|
||||||
},
|
},
|
||||||
|
|
||||||
_lastNotificationRemoved: function() {
|
_lastNotificationRemoved: function() {
|
||||||
@ -792,11 +686,8 @@ const Source = new Lang.Class({
|
|||||||
if (this.app == null)
|
if (this.app == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
let windows = this.app.get_windows();
|
this.app.activate();
|
||||||
if (windows.length > 0) {
|
Main.overview.hide();
|
||||||
let mostRecentWindow = windows[0];
|
|
||||||
Main.activateWindow(mostRecentWindow);
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
destroy: function() {
|
destroy: function() {
|
||||||
@ -823,3 +714,276 @@ const Source = new Lang.Class({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
const GtkNotificationDaemonNotification = new Lang.Class({
|
||||||
|
Name: 'GtkNotificationDaemonNotification',
|
||||||
|
Extends: MessageTray.Notification,
|
||||||
|
|
||||||
|
_init: function(source, notification) {
|
||||||
|
this.parent(source);
|
||||||
|
this._serialized = GLib.Variant.new('a{sv}', notification);
|
||||||
|
|
||||||
|
let { "title": title,
|
||||||
|
"body": body,
|
||||||
|
"icon": gicon,
|
||||||
|
"urgent": urgent,
|
||||||
|
"buttons": buttons,
|
||||||
|
"default-action": defaultAction,
|
||||||
|
"default-action-target": defaultActionTarget } = notification;
|
||||||
|
|
||||||
|
this.setUrgency(urgent.unpack() ? MessageTray.Urgency.CRITICAL
|
||||||
|
: MessageTray.Urgency.NORMAL);
|
||||||
|
|
||||||
|
if (buttons) {
|
||||||
|
buttons.deep_unpack().forEach(Lang.bind(this, function(button) {
|
||||||
|
this.addAction(button.label.unpack(),
|
||||||
|
Lang.bind(this, this._onButtonClicked, button));
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
|
this._defaultAction = defaultAction ? defaultAction.unpack() : null;
|
||||||
|
this._defaultActionTarget = defaultActionTarget;
|
||||||
|
|
||||||
|
this.update(title.unpack(), body ? body.unpack() : null,
|
||||||
|
{ gicon: gicon ? Gio.icon_deserialize(gicon) : null });
|
||||||
|
},
|
||||||
|
|
||||||
|
_activateAction: function(namespacedActionId, target) {
|
||||||
|
if (namespacedActionId) {
|
||||||
|
if (namespacedActionId.startsWith('app.')) {
|
||||||
|
let actionId = namespacedActionId.slice('app.'.length);
|
||||||
|
this.source.activateAction(actionId, target);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.source.open();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
_onButtonClicked: function(button) {
|
||||||
|
let { 'action': action, 'target': actionTarget } = button;
|
||||||
|
this._activateAction(action.unpack(), actionTarget);
|
||||||
|
},
|
||||||
|
|
||||||
|
_onClicked: function() {
|
||||||
|
this._activateAction(this._defaultAction, this._defaultActionTarget);
|
||||||
|
this.parent();
|
||||||
|
},
|
||||||
|
|
||||||
|
serialize: function() {
|
||||||
|
return this._serialized;
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
const FdoApplicationIface = '<node> \
|
||||||
|
<interface name="org.freedesktop.Application"> \
|
||||||
|
<method name="ActivateAction"> \
|
||||||
|
<arg type="s" direction="in" /> \
|
||||||
|
<arg type="av" direction="in" /> \
|
||||||
|
<arg type="a{sv}" direction="in" /> \
|
||||||
|
</method> \
|
||||||
|
<method name="Activate"> \
|
||||||
|
<arg type="a{sv}" direction="in" /> \
|
||||||
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
const FdoApplicationProxy = Gio.DBusProxy.makeProxyWrapper(FdoApplicationIface);
|
||||||
|
|
||||||
|
function objectPathFromAppId(appId) {
|
||||||
|
return '/' + appId.replace(/\./g, '/');
|
||||||
|
}
|
||||||
|
|
||||||
|
function getPlatformData() {
|
||||||
|
let startupId = GLib.Variant.new('s', '_TIME' + global.get_current_time());
|
||||||
|
return { "desktop-startup-id": startupId };
|
||||||
|
}
|
||||||
|
|
||||||
|
function InvalidAppError() {}
|
||||||
|
|
||||||
|
const GtkNotificationDaemonAppSource = new Lang.Class({
|
||||||
|
Name: 'GtkNotificationDaemonAppSource',
|
||||||
|
Extends: MessageTray.Source,
|
||||||
|
|
||||||
|
_init: function(appId) {
|
||||||
|
this._appId = appId;
|
||||||
|
this._objectPath = objectPathFromAppId(appId);
|
||||||
|
|
||||||
|
this._app = Shell.AppSystem.get_default().lookup_app(appId + '.desktop');
|
||||||
|
if (!this._app)
|
||||||
|
throw new InvalidAppError();
|
||||||
|
|
||||||
|
this._notifications = {};
|
||||||
|
|
||||||
|
this.parent(this._app.get_name());
|
||||||
|
},
|
||||||
|
|
||||||
|
createIcon: function(size) {
|
||||||
|
return this._app.create_icon_texture(size);
|
||||||
|
},
|
||||||
|
|
||||||
|
_createPolicy: function() {
|
||||||
|
return new MessageTray.NotificationApplicationPolicy(this._appId);
|
||||||
|
},
|
||||||
|
|
||||||
|
_createApp: function() {
|
||||||
|
return new FdoApplicationProxy(Gio.DBus.session, this._appId, this._objectPath);
|
||||||
|
},
|
||||||
|
|
||||||
|
activateAction: function(actionId, target) {
|
||||||
|
let app = this._createApp();
|
||||||
|
app.ActivateActionRemote(actionId, target ? [target] : [], getPlatformData());
|
||||||
|
},
|
||||||
|
|
||||||
|
open: function() {
|
||||||
|
let app = this._createApp();
|
||||||
|
app.ActivateRemote(getPlatformData());
|
||||||
|
},
|
||||||
|
|
||||||
|
addNotification: function(notificationId, notificationParams, showBanner) {
|
||||||
|
if (this._notifications[notificationId])
|
||||||
|
this._notifications[notificationId].destroy();
|
||||||
|
|
||||||
|
let notification = new GtkNotificationDaemonNotification(this, notificationParams);
|
||||||
|
notification.connect('destroy', Lang.bind(this, function() {
|
||||||
|
delete this._notifications[notificationId];
|
||||||
|
}));
|
||||||
|
this._notifications[notificationId] = notification;
|
||||||
|
|
||||||
|
if (showBanner)
|
||||||
|
this.notify(notification);
|
||||||
|
else
|
||||||
|
this.pushNotification(notification);
|
||||||
|
},
|
||||||
|
|
||||||
|
removeNotification: function(notificationId) {
|
||||||
|
if (this._notifications[notificationId])
|
||||||
|
this._notifications[notificationId].destroy(MessageTray.NotificationDestroyedReason.SOURCE_CLOSED);
|
||||||
|
},
|
||||||
|
|
||||||
|
serialize: function() {
|
||||||
|
let notifications = [];
|
||||||
|
for (let notificationId in this._notifications) {
|
||||||
|
let notification = this._notifications[notificationId];
|
||||||
|
notifications.push([notificationId, notification.serialize()]);
|
||||||
|
}
|
||||||
|
return [this._appId, notifications];
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
const GtkNotificationsIface = '<node> \
|
||||||
|
<interface name="org.gtk.Notifications"> \
|
||||||
|
<method name="AddNotification"> \
|
||||||
|
<arg type="s" direction="in" /> \
|
||||||
|
<arg type="s" direction="in" /> \
|
||||||
|
<arg type="a{sv}" direction="in" /> \
|
||||||
|
</method> \
|
||||||
|
<method name="RemoveNotification"> \
|
||||||
|
<arg type="s" direction="in" /> \
|
||||||
|
<arg type="s" direction="in" /> \
|
||||||
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
|
const GtkNotificationDaemon = new Lang.Class({
|
||||||
|
Name: 'GtkNotificationDaemon',
|
||||||
|
|
||||||
|
_init: function() {
|
||||||
|
this._sources = {};
|
||||||
|
|
||||||
|
this._loadNotifications();
|
||||||
|
|
||||||
|
this._dbusImpl = Gio.DBusExportedObject.wrapJSObject(GtkNotificationsIface, this);
|
||||||
|
this._dbusImpl.export(Gio.DBus.session, '/org/gtk/Notifications');
|
||||||
|
|
||||||
|
Gio.DBus.session.own_name('org.gtk.Notifications', Gio.BusNameOwnerFlags.REPLACE, null, null);
|
||||||
|
},
|
||||||
|
|
||||||
|
_ensureAppSource: function(appId) {
|
||||||
|
if (this._sources[appId])
|
||||||
|
return this._sources[appId];
|
||||||
|
|
||||||
|
let source = new GtkNotificationDaemonAppSource(appId);
|
||||||
|
|
||||||
|
source.connect('destroy', Lang.bind(this, function() {
|
||||||
|
delete this._sources[appId];
|
||||||
|
this._saveNotifications();
|
||||||
|
}));
|
||||||
|
source.connect('count-updated', Lang.bind(this, this._saveNotifications));
|
||||||
|
Main.messageTray.add(source);
|
||||||
|
this._sources[appId] = source;
|
||||||
|
return source;
|
||||||
|
},
|
||||||
|
|
||||||
|
_loadNotifications: function() {
|
||||||
|
this._isLoading = true;
|
||||||
|
|
||||||
|
let value = global.get_persistent_state('a(sa(sv))', 'notifications');
|
||||||
|
if (value) {
|
||||||
|
let sources = value.deep_unpack();
|
||||||
|
sources.forEach(Lang.bind(this, function([appId, notifications]) {
|
||||||
|
if (notifications.length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
let source;
|
||||||
|
try {
|
||||||
|
source = this._ensureAppSource(appId);
|
||||||
|
} catch(e if e instanceof InvalidAppError) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
notifications.forEach(function([notificationId, notification]) {
|
||||||
|
source.addNotification(notificationId, notification.deep_unpack(), false);
|
||||||
|
});
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
|
this._isLoading = false;
|
||||||
|
},
|
||||||
|
|
||||||
|
_saveNotifications: function() {
|
||||||
|
if (this._isLoading)
|
||||||
|
return;
|
||||||
|
|
||||||
|
let sources = [];
|
||||||
|
for (let appId in this._sources) {
|
||||||
|
let source = this._sources[appId];
|
||||||
|
sources.push(source.serialize());
|
||||||
|
}
|
||||||
|
|
||||||
|
global.set_persistent_state('notifications', new GLib.Variant('a(sa(sv))', sources));
|
||||||
|
},
|
||||||
|
|
||||||
|
AddNotificationAsync: function(params, invocation) {
|
||||||
|
let [appId, notificationId, notification] = params;
|
||||||
|
|
||||||
|
let source;
|
||||||
|
try {
|
||||||
|
source = this._ensureAppSource(appId);
|
||||||
|
} catch(e if e instanceof InvalidAppError) {
|
||||||
|
invocation.return_dbus_error('org.gtk.Notifications.InvalidApp', 'The app by ID "%s" could not be found'.format(appId));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
source.addNotification(notificationId, notification, true);
|
||||||
|
|
||||||
|
invocation.return_value(null);
|
||||||
|
},
|
||||||
|
|
||||||
|
RemoveNotificationAsync: function(params, invocation) {
|
||||||
|
let [appId, notificationId] = params;
|
||||||
|
let source = this._sources[appId];
|
||||||
|
if (source)
|
||||||
|
source.removeNotification(notificationId);
|
||||||
|
|
||||||
|
invocation.return_value(null);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
const NotificationDaemon = new Lang.Class({
|
||||||
|
Name: 'NotificationDaemon',
|
||||||
|
|
||||||
|
_init: function() {
|
||||||
|
this._fdoNotificationDaemon = new FdoNotificationDaemon();
|
||||||
|
this._gtkNotificationDaemon = new GtkNotificationDaemon();
|
||||||
|
},
|
||||||
|
});
|
||||||
|
@ -78,10 +78,8 @@ const ShellInfo = new Lang.Class({
|
|||||||
}
|
}
|
||||||
|
|
||||||
this._undoCallback = undoCallback;
|
this._undoCallback = undoCallback;
|
||||||
if (undoCallback) {
|
if (undoCallback)
|
||||||
notification.addButton('system-undo', _("Undo"));
|
notification.addAction(_("Undo"), Lang.bind(this, this._onUndoClicked));
|
||||||
notification.connect('action-invoked', Lang.bind(this, this._onUndoClicked));
|
|
||||||
}
|
|
||||||
|
|
||||||
this._source.notify(notification);
|
this._source.notify(notification);
|
||||||
}
|
}
|
||||||
@ -148,7 +146,7 @@ const Overview = new Lang.Class({
|
|||||||
// Dash elements, or mouseover handlers in the workspaces.
|
// Dash elements, or mouseover handlers in the workspaces.
|
||||||
this._coverPane = new Clutter.Actor({ opacity: 0,
|
this._coverPane = new Clutter.Actor({ opacity: 0,
|
||||||
reactive: true });
|
reactive: true });
|
||||||
this._stack.add_actor(this._coverPane);
|
Main.layoutManager.overviewGroup.add_child(this._coverPane);
|
||||||
this._coverPane.connect('event', Lang.bind(this, function (actor, event) { return true; }));
|
this._coverPane.connect('event', Lang.bind(this, function (actor, event) { return true; }));
|
||||||
|
|
||||||
this._stack.add_actor(this._overview);
|
this._stack.add_actor(this._overview);
|
||||||
|
@ -55,18 +55,21 @@ const SlideLayout = new Lang.Class({
|
|||||||
vfunc_allocate: function(container, box, flags) {
|
vfunc_allocate: function(container, box, flags) {
|
||||||
let child = container.get_first_child();
|
let child = container.get_first_child();
|
||||||
|
|
||||||
let [, , natWidth, natHeight] = child.get_preferred_size();
|
|
||||||
let availWidth = Math.round(box.x2 - box.x1);
|
let availWidth = Math.round(box.x2 - box.x1);
|
||||||
let availHeight = Math.round(box.y2 - box.y1);
|
let availHeight = Math.round(box.y2 - box.y1);
|
||||||
|
let [, natWidth] = child.get_preferred_width(availHeight);
|
||||||
|
|
||||||
|
// Align the actor inside the clipped box, as the actor's alignment
|
||||||
|
// flags only determine what to do if the allocated box is bigger
|
||||||
|
// than the actor's box.
|
||||||
let realDirection = getRtlSlideDirection(this._direction, child);
|
let realDirection = getRtlSlideDirection(this._direction, child);
|
||||||
let translationX = (realDirection == SlideDirection.LEFT) ?
|
let alignX = (realDirection == SlideDirection.LEFT) ? (availWidth - natWidth) : 0;
|
||||||
(availWidth - natWidth) : (natWidth - availWidth);
|
|
||||||
|
|
||||||
let actorBox = new Clutter.ActorBox({ x1: translationX,
|
let actorBox = new Clutter.ActorBox();
|
||||||
y1: 0,
|
actorBox.x1 = alignX;
|
||||||
x2: child.x_expand ? availWidth : natWidth,
|
actorBox.x2 = actorBox.x1 + child.x_expand ? availWidth : natWidth;
|
||||||
y2: child.y_expand ? availHeight : natHeight });
|
actorBox.y1 = 0;
|
||||||
|
actorBox.y2 = actorBox.y1 + availHeight;
|
||||||
|
|
||||||
child.allocate(actorBox, flags);
|
child.allocate(actorBox, flags);
|
||||||
},
|
},
|
||||||
@ -236,11 +239,6 @@ const ThumbnailsSlider = new Lang.Class({
|
|||||||
|
|
||||||
this._thumbnailsBox = thumbnailsBox;
|
this._thumbnailsBox = thumbnailsBox;
|
||||||
|
|
||||||
// SlideLayout reads the actor's expand flags to decide
|
|
||||||
// whether to allocate the natural size to its child, or the whole
|
|
||||||
// available allocation
|
|
||||||
this._thumbnailsBox.actor.y_expand = true;
|
|
||||||
|
|
||||||
this.actor.request_mode = Clutter.RequestMode.WIDTH_FOR_HEIGHT;
|
this.actor.request_mode = Clutter.RequestMode.WIDTH_FOR_HEIGHT;
|
||||||
this.actor.reactive = true;
|
this.actor.reactive = true;
|
||||||
this.actor.track_hover = true;
|
this.actor.track_hover = true;
|
||||||
@ -324,7 +322,6 @@ const DashSlider = new Lang.Class({
|
|||||||
// whether to allocate the natural size to its child, or the whole
|
// whether to allocate the natural size to its child, or the whole
|
||||||
// available allocation
|
// available allocation
|
||||||
this._dash.actor.x_expand = true;
|
this._dash.actor.x_expand = true;
|
||||||
this._dash.actor.y_expand = true;
|
|
||||||
|
|
||||||
this.actor.x_align = Clutter.ActorAlign.START;
|
this.actor.x_align = Clutter.ActorAlign.START;
|
||||||
this.actor.y_expand = true;
|
this.actor.y_expand = true;
|
||||||
|
@ -213,9 +213,7 @@ const AppMenuButton = new Lang.Class({
|
|||||||
this._label = new TextShadower();
|
this._label = new TextShadower();
|
||||||
this._label.actor.y_align = Clutter.ActorAlign.CENTER;
|
this._label.actor.y_align = Clutter.ActorAlign.CENTER;
|
||||||
this._hbox.add_actor(this._label.actor);
|
this._hbox.add_actor(this._label.actor);
|
||||||
this._arrow = new St.Label({ text: '\u25BE',
|
this._arrow = PopupMenu.unicodeArrow(St.Side.BOTTOM);
|
||||||
y_expand: true,
|
|
||||||
y_align: Clutter.ActorAlign.CENTER });
|
|
||||||
this._hbox.add_actor(this._arrow);
|
this._hbox.add_actor(this._arrow);
|
||||||
|
|
||||||
this._iconBottomClip = 0;
|
this._iconBottomClip = 0;
|
||||||
@ -833,9 +831,7 @@ const AggregateMenu = new Lang.Class({
|
|||||||
this._indicators.add_child(this._rfkill.indicators);
|
this._indicators.add_child(this._rfkill.indicators);
|
||||||
this._indicators.add_child(this._volume.indicators);
|
this._indicators.add_child(this._volume.indicators);
|
||||||
this._indicators.add_child(this._power.indicators);
|
this._indicators.add_child(this._power.indicators);
|
||||||
this._indicators.add_child(new St.Label({ text: '\u25BE',
|
this._indicators.add_child(PopupMenu.unicodeArrow(St.Side.BOTTOM));
|
||||||
y_expand: true,
|
|
||||||
y_align: Clutter.ActorAlign.CENTER }));
|
|
||||||
|
|
||||||
this.menu.addMenuItem(this._volume.menu);
|
this.menu.addMenuItem(this._volume.menu);
|
||||||
this.menu.addMenuItem(this._brightness.menu);
|
this.menu.addMenuItem(this._brightness.menu);
|
||||||
|
@ -42,6 +42,33 @@ function isPopupMenuItemVisible(child) {
|
|||||||
return child.visible;
|
return child.visible;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @side Side to which the arrow points.
|
||||||
|
*/
|
||||||
|
function unicodeArrow(side) {
|
||||||
|
let arrowChar;
|
||||||
|
switch (side) {
|
||||||
|
case St.Side.TOP:
|
||||||
|
arrowChar = '\u25B4';
|
||||||
|
break;
|
||||||
|
case St.Side.RIGHT:
|
||||||
|
arrowChar = '\u25B8';
|
||||||
|
break;
|
||||||
|
case St.Side.BOTTOM:
|
||||||
|
arrowChar = '\u25BE';
|
||||||
|
break;
|
||||||
|
case St.Side.LEFT:
|
||||||
|
arrowChar = '\u25C2';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return new St.Label({ text: arrowChar,
|
||||||
|
style_class: 'unicode-arrow',
|
||||||
|
accessible_role: Atk.Role.ARROW,
|
||||||
|
y_expand: true,
|
||||||
|
y_align: Clutter.ActorAlign.CENTER });
|
||||||
|
}
|
||||||
|
|
||||||
const PopupBaseMenuItem = new Lang.Class({
|
const PopupBaseMenuItem = new Lang.Class({
|
||||||
Name: 'PopupBaseMenuItem',
|
Name: 'PopupBaseMenuItem',
|
||||||
|
|
||||||
@ -962,8 +989,7 @@ const PopupSubMenuMenuItem = new Lang.Class({
|
|||||||
y_align: Clutter.ActorAlign.CENTER });
|
y_align: Clutter.ActorAlign.CENTER });
|
||||||
this.actor.add_child(this.status);
|
this.actor.add_child(this.status);
|
||||||
|
|
||||||
this._triangle = new St.Label({ text: '\u25B8',
|
this._triangle = unicodeArrow(St.Side.RIGHT);
|
||||||
style_class: 'popup-submenu-menu-item-triangle' });
|
|
||||||
this._triangle.pivot_point = new Clutter.Point({ x: 0.5, y: 0.6 });
|
this._triangle.pivot_point = new Clutter.Point({ x: 0.5, y: 0.6 });
|
||||||
|
|
||||||
this._triangleBin = new St.Widget({ y_expand: true,
|
this._triangleBin = new St.Widget({ y_expand: true,
|
||||||
|
@ -11,52 +11,56 @@ const Search = imports.ui.search;
|
|||||||
|
|
||||||
const KEY_FILE_GROUP = 'Shell Search Provider';
|
const KEY_FILE_GROUP = 'Shell Search Provider';
|
||||||
|
|
||||||
const SearchProviderIface = <interface name="org.gnome.Shell.SearchProvider">
|
const SearchProviderIface = '<node> \
|
||||||
<method name="GetInitialResultSet">
|
<interface name="org.gnome.Shell.SearchProvider"> \
|
||||||
<arg type="as" direction="in" />
|
<method name="GetInitialResultSet"> \
|
||||||
<arg type="as" direction="out" />
|
<arg type="as" direction="in" /> \
|
||||||
</method>
|
<arg type="as" direction="out" /> \
|
||||||
<method name="GetSubsearchResultSet">
|
</method> \
|
||||||
<arg type="as" direction="in" />
|
<method name="GetSubsearchResultSet"> \
|
||||||
<arg type="as" direction="in" />
|
<arg type="as" direction="in" /> \
|
||||||
<arg type="as" direction="out" />
|
<arg type="as" direction="in" /> \
|
||||||
</method>
|
<arg type="as" direction="out" /> \
|
||||||
<method name="GetResultMetas">
|
</method> \
|
||||||
<arg type="as" direction="in" />
|
<method name="GetResultMetas"> \
|
||||||
<arg type="aa{sv}" direction="out" />
|
<arg type="as" direction="in" /> \
|
||||||
</method>
|
<arg type="aa{sv}" direction="out" /> \
|
||||||
<method name="ActivateResult">
|
</method> \
|
||||||
<arg type="s" direction="in" />
|
<method name="ActivateResult"> \
|
||||||
</method>
|
<arg type="s" direction="in" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const SearchProvider2Iface = <interface name="org.gnome.Shell.SearchProvider2">
|
const SearchProvider2Iface = '<node> \
|
||||||
<method name="GetInitialResultSet">
|
<interface name="org.gnome.Shell.SearchProvider2"> \
|
||||||
<arg type="as" direction="in" />
|
<method name="GetInitialResultSet"> \
|
||||||
<arg type="as" direction="out" />
|
<arg type="as" direction="in" /> \
|
||||||
</method>
|
<arg type="as" direction="out" /> \
|
||||||
<method name="GetSubsearchResultSet">
|
</method> \
|
||||||
<arg type="as" direction="in" />
|
<method name="GetSubsearchResultSet"> \
|
||||||
<arg type="as" direction="in" />
|
<arg type="as" direction="in" /> \
|
||||||
<arg type="as" direction="out" />
|
<arg type="as" direction="in" /> \
|
||||||
</method>
|
<arg type="as" direction="out" /> \
|
||||||
<method name="GetResultMetas">
|
</method> \
|
||||||
<arg type="as" direction="in" />
|
<method name="GetResultMetas"> \
|
||||||
<arg type="aa{sv}" direction="out" />
|
<arg type="as" direction="in" /> \
|
||||||
</method>
|
<arg type="aa{sv}" direction="out" /> \
|
||||||
<method name="ActivateResult">
|
</method> \
|
||||||
<arg type="s" direction="in" />
|
<method name="ActivateResult"> \
|
||||||
<arg type="as" direction="in" />
|
<arg type="s" direction="in" /> \
|
||||||
<arg type="u" direction="in" />
|
<arg type="as" direction="in" /> \
|
||||||
</method>
|
<arg type="u" direction="in" /> \
|
||||||
<method name="LaunchSearch">
|
</method> \
|
||||||
<arg type="as" direction="in" />
|
<method name="LaunchSearch"> \
|
||||||
<arg type="u" direction="in" />
|
<arg type="as" direction="in" /> \
|
||||||
</method>
|
<arg type="u" direction="in" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
var SearchProviderProxy = Gio.DBusProxy.makeProxyWrapper(SearchProviderIface);
|
var SearchProviderProxyInfo = Gio.DBusInterfaceInfo.new_for_xml(SearchProviderIface);
|
||||||
var SearchProvider2Proxy = Gio.DBusProxy.makeProxyWrapper(SearchProvider2Iface);
|
var SearchProvider2ProxyInfo = Gio.DBusInterfaceInfo.new_for_xml(SearchProvider2Iface);
|
||||||
|
|
||||||
function loadRemoteSearchProviders(addProviderCallback) {
|
function loadRemoteSearchProviders(addProviderCallback) {
|
||||||
let objectPaths = {};
|
let objectPaths = {};
|
||||||
@ -172,12 +176,18 @@ function loadRemoteSearchProviders(addProviderCallback) {
|
|||||||
const RemoteSearchProvider = new Lang.Class({
|
const RemoteSearchProvider = new Lang.Class({
|
||||||
Name: 'RemoteSearchProvider',
|
Name: 'RemoteSearchProvider',
|
||||||
|
|
||||||
_init: function(appInfo, dbusName, dbusPath, proxyType) {
|
_init: function(appInfo, dbusName, dbusPath, proxyInfo) {
|
||||||
if (!proxyType)
|
if (!proxyInfo)
|
||||||
proxyType = SearchProviderProxy;
|
proxyInfo = SearchProviderProxyInfo;
|
||||||
|
|
||||||
this.proxy = new proxyType(Gio.DBus.session,
|
this.proxy = new Gio.DBusProxy({ g_bus_type: Gio.BusType.SESSION,
|
||||||
dbusName, dbusPath, Lang.bind(this, this._onProxyConstructed));
|
g_name: dbusName,
|
||||||
|
g_object_path: dbusPath,
|
||||||
|
g_interface_info: proxyInfo,
|
||||||
|
g_interface_name: proxyInfo.name,
|
||||||
|
g_flags: (Gio.DBusProxyFlags.DO_NOT_AUTO_START_AT_CONSTRUCTION |
|
||||||
|
Gio.DBusProxyFlags.DO_NOT_LOAD_PROPERTIES) });
|
||||||
|
this.proxy.init_async(GLib.PRIORITY_DEFAULT, null, null);
|
||||||
|
|
||||||
this.appInfo = appInfo;
|
this.appInfo = appInfo;
|
||||||
this.id = appInfo.get_id();
|
this.id = appInfo.get_id();
|
||||||
@ -186,10 +196,6 @@ const RemoteSearchProvider = new Lang.Class({
|
|||||||
this._cancellable = new Gio.Cancellable();
|
this._cancellable = new Gio.Cancellable();
|
||||||
},
|
},
|
||||||
|
|
||||||
_onProxyConstructed: function(proxy) {
|
|
||||||
// Do nothing
|
|
||||||
},
|
|
||||||
|
|
||||||
createIcon: function(size, meta) {
|
createIcon: function(size, meta) {
|
||||||
let gicon;
|
let gicon;
|
||||||
if (meta['icon']) {
|
if (meta['icon']) {
|
||||||
@ -207,40 +213,45 @@ const RemoteSearchProvider = new Lang.Class({
|
|||||||
icon_size: size });
|
icon_size: size });
|
||||||
},
|
},
|
||||||
|
|
||||||
|
filterResults: function(results, maxNumber) {
|
||||||
|
if (results.length <= maxNumber)
|
||||||
|
return results;
|
||||||
|
|
||||||
|
let regularResults = results.filter(function(r) { return !r.startsWith('special:'); });
|
||||||
|
let specialResults = results.filter(function(r) { return r.startsWith('special:'); });
|
||||||
|
|
||||||
|
return regularResults.slice(0, maxNumber).concat(specialResults.slice(0, maxNumber));
|
||||||
|
},
|
||||||
|
|
||||||
_getResultsFinished: function(results, error) {
|
_getResultsFinished: function(results, error) {
|
||||||
if (error)
|
if (error) {
|
||||||
return;
|
if (!error.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED))
|
||||||
this.searchSystem.setResults(this, results[0]);
|
log('Received error from DBus search provider %s: %s'.format(this.id, String(error)));
|
||||||
|
} else {
|
||||||
|
this.searchSystem.setResults(this, results[0]);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
getInitialResultSet: function(terms) {
|
getInitialResultSet: function(terms) {
|
||||||
this._cancellable.cancel();
|
this._cancellable.cancel();
|
||||||
this._cancellable.reset();
|
this._cancellable.reset();
|
||||||
try {
|
this.proxy.GetInitialResultSetRemote(terms,
|
||||||
this.proxy.GetInitialResultSetRemote(terms,
|
Lang.bind(this, this._getResultsFinished),
|
||||||
Lang.bind(this, this._getResultsFinished),
|
this._cancellable);
|
||||||
this._cancellable);
|
|
||||||
} catch(e) {
|
|
||||||
log('Error calling GetInitialResultSet for provider %s: %s'.format(this.id, e.toString()));
|
|
||||||
this.searchSystem.setResults(this, []);
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
getSubsearchResultSet: function(previousResults, newTerms) {
|
getSubsearchResultSet: function(previousResults, newTerms) {
|
||||||
this._cancellable.cancel();
|
this._cancellable.cancel();
|
||||||
this._cancellable.reset();
|
this._cancellable.reset();
|
||||||
try {
|
this.proxy.GetSubsearchResultSetRemote(previousResults, newTerms,
|
||||||
this.proxy.GetSubsearchResultSetRemote(previousResults, newTerms,
|
Lang.bind(this, this._getResultsFinished),
|
||||||
Lang.bind(this, this._getResultsFinished),
|
this._cancellable);
|
||||||
this._cancellable);
|
|
||||||
} catch(e) {
|
|
||||||
log('Error calling GetSubsearchResultSet for provider %s: %s'.format(this.id, e.toString()));
|
|
||||||
this.searchSystem.setResults(this, []);
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
_getResultMetasFinished: function(results, error, callback) {
|
_getResultMetasFinished: function(results, error, callback) {
|
||||||
if (error) {
|
if (error) {
|
||||||
|
if (!error.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED))
|
||||||
|
log('Received error from DBus search provider %s during GetResultMetas: %s'.format(this.id, String(error)));
|
||||||
callback([]);
|
callback([]);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -265,14 +276,9 @@ const RemoteSearchProvider = new Lang.Class({
|
|||||||
getResultMetas: function(ids, callback) {
|
getResultMetas: function(ids, callback) {
|
||||||
this._cancellable.cancel();
|
this._cancellable.cancel();
|
||||||
this._cancellable.reset();
|
this._cancellable.reset();
|
||||||
try {
|
this.proxy.GetResultMetasRemote(ids,
|
||||||
this.proxy.GetResultMetasRemote(ids,
|
Lang.bind(this, this._getResultMetasFinished, callback),
|
||||||
Lang.bind(this, this._getResultMetasFinished, callback),
|
this._cancellable);
|
||||||
this._cancellable);
|
|
||||||
} catch(e) {
|
|
||||||
log('Error calling GetResultMetas for provider %s: %s'.format(this.id, e.toString()));
|
|
||||||
callback([]);
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
activateResult: function(id) {
|
activateResult: function(id) {
|
||||||
@ -292,7 +298,7 @@ const RemoteSearchProvider2 = new Lang.Class({
|
|||||||
Extends: RemoteSearchProvider,
|
Extends: RemoteSearchProvider,
|
||||||
|
|
||||||
_init: function(appInfo, dbusName, dbusPath) {
|
_init: function(appInfo, dbusName, dbusPath) {
|
||||||
this.parent(appInfo, dbusName, dbusPath, SearchProvider2Proxy);
|
this.parent(appInfo, dbusName, dbusPath, SearchProvider2ProxyInfo);
|
||||||
|
|
||||||
this.canLaunchSearch = true;
|
this.canLaunchSearch = true;
|
||||||
},
|
},
|
||||||
|
@ -19,6 +19,7 @@ const Background = imports.ui.background;
|
|||||||
const GnomeSession = imports.misc.gnomeSession;
|
const GnomeSession = imports.misc.gnomeSession;
|
||||||
const Hash = imports.misc.hash;
|
const Hash = imports.misc.hash;
|
||||||
const Layout = imports.ui.layout;
|
const Layout = imports.ui.layout;
|
||||||
|
const OVirt = imports.gdm.oVirt;
|
||||||
const LoginManager = imports.misc.loginManager;
|
const LoginManager = imports.misc.loginManager;
|
||||||
const Lightbox = imports.ui.lightbox;
|
const Lightbox = imports.ui.lightbox;
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
@ -545,6 +546,13 @@ const ScreenShield = new Lang.Class({
|
|||||||
this._liftShield(true, 0);
|
this._liftShield(true, 0);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
this._oVirtCredentialsManager = OVirt.getOVirtCredentialsManager();
|
||||||
|
this._oVirtCredentialsManager.connect('user-authenticated',
|
||||||
|
Lang.bind(this, function() {
|
||||||
|
if (this._isLocked)
|
||||||
|
this._liftShield(true, 0);
|
||||||
|
}));
|
||||||
|
|
||||||
this._inhibitor = null;
|
this._inhibitor = null;
|
||||||
this._aboutToSuspend = false;
|
this._aboutToSuspend = false;
|
||||||
this._loginManager = LoginManager.getLoginManager();
|
this._loginManager = LoginManager.getLoginManager();
|
||||||
|
@ -9,27 +9,29 @@ const Signals = imports.signals;
|
|||||||
const Hash = imports.misc.hash;
|
const Hash = imports.misc.hash;
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
|
|
||||||
const ScreencastIface = <interface name="org.gnome.Shell.Screencast">
|
const ScreencastIface = '<node> \
|
||||||
<method name="Screencast">
|
<interface name="org.gnome.Shell.Screencast"> \
|
||||||
<arg type="s" direction="in" name="file_template"/>
|
<method name="Screencast"> \
|
||||||
<arg type="a{sv}" direction="in" name="options"/>
|
<arg type="s" direction="in" name="file_template"/> \
|
||||||
<arg type="b" direction="out" name="success"/>
|
<arg type="a{sv}" direction="in" name="options"/> \
|
||||||
<arg type="s" direction="out" name="filename_used"/>
|
<arg type="b" direction="out" name="success"/> \
|
||||||
</method>
|
<arg type="s" direction="out" name="filename_used"/> \
|
||||||
<method name="ScreencastArea">
|
</method> \
|
||||||
<arg type="i" direction="in" name="x"/>
|
<method name="ScreencastArea"> \
|
||||||
<arg type="i" direction="in" name="y"/>
|
<arg type="i" direction="in" name="x"/> \
|
||||||
<arg type="i" direction="in" name="width"/>
|
<arg type="i" direction="in" name="y"/> \
|
||||||
<arg type="i" direction="in" name="height"/>
|
<arg type="i" direction="in" name="width"/> \
|
||||||
<arg type="s" direction="in" name="file_template"/>
|
<arg type="i" direction="in" name="height"/> \
|
||||||
<arg type="a{sv}" direction="in" name="options"/>
|
<arg type="s" direction="in" name="file_template"/> \
|
||||||
<arg type="b" direction="out" name="success"/>
|
<arg type="a{sv}" direction="in" name="options"/> \
|
||||||
<arg type="s" direction="out" name="filename_used"/>
|
<arg type="b" direction="out" name="success"/> \
|
||||||
</method>
|
<arg type="s" direction="out" name="filename_used"/> \
|
||||||
<method name="StopScreencast">
|
</method> \
|
||||||
<arg type="b" direction="out" name="success"/>
|
<method name="StopScreencast"> \
|
||||||
</method>
|
<arg type="b" direction="out" name="success"/> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const ScreencastService = new Lang.Class({
|
const ScreencastService = new Lang.Class({
|
||||||
Name: 'ScreencastService',
|
Name: 'ScreencastService',
|
||||||
|
@ -15,45 +15,47 @@ const Lightbox = imports.ui.lightbox;
|
|||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
const Tweener = imports.ui.tweener;
|
const Tweener = imports.ui.tweener;
|
||||||
|
|
||||||
const ScreenshotIface = <interface name="org.gnome.Shell.Screenshot">
|
const ScreenshotIface = '<node> \
|
||||||
<method name="ScreenshotArea">
|
<interface name="org.gnome.Shell.Screenshot"> \
|
||||||
<arg type="i" direction="in" name="x"/>
|
<method name="ScreenshotArea"> \
|
||||||
<arg type="i" direction="in" name="y"/>
|
<arg type="i" direction="in" name="x"/> \
|
||||||
<arg type="i" direction="in" name="width"/>
|
<arg type="i" direction="in" name="y"/> \
|
||||||
<arg type="i" direction="in" name="height"/>
|
<arg type="i" direction="in" name="width"/> \
|
||||||
<arg type="b" direction="in" name="flash"/>
|
<arg type="i" direction="in" name="height"/> \
|
||||||
<arg type="s" direction="in" name="filename"/>
|
<arg type="b" direction="in" name="flash"/> \
|
||||||
<arg type="b" direction="out" name="success"/>
|
<arg type="s" direction="in" name="filename"/> \
|
||||||
<arg type="s" direction="out" name="filename_used"/>
|
<arg type="b" direction="out" name="success"/> \
|
||||||
</method>
|
<arg type="s" direction="out" name="filename_used"/> \
|
||||||
<method name="ScreenshotWindow">
|
</method> \
|
||||||
<arg type="b" direction="in" name="include_frame"/>
|
<method name="ScreenshotWindow"> \
|
||||||
<arg type="b" direction="in" name="include_cursor"/>
|
<arg type="b" direction="in" name="include_frame"/> \
|
||||||
<arg type="b" direction="in" name="flash"/>
|
<arg type="b" direction="in" name="include_cursor"/> \
|
||||||
<arg type="s" direction="in" name="filename"/>
|
<arg type="b" direction="in" name="flash"/> \
|
||||||
<arg type="b" direction="out" name="success"/>
|
<arg type="s" direction="in" name="filename"/> \
|
||||||
<arg type="s" direction="out" name="filename_used"/>
|
<arg type="b" direction="out" name="success"/> \
|
||||||
</method>
|
<arg type="s" direction="out" name="filename_used"/> \
|
||||||
<method name="Screenshot">
|
</method> \
|
||||||
<arg type="b" direction="in" name="include_cursor"/>
|
<method name="Screenshot"> \
|
||||||
<arg type="b" direction="in" name="flash"/>
|
<arg type="b" direction="in" name="include_cursor"/> \
|
||||||
<arg type="s" direction="in" name="filename"/>
|
<arg type="b" direction="in" name="flash"/> \
|
||||||
<arg type="b" direction="out" name="success"/>
|
<arg type="s" direction="in" name="filename"/> \
|
||||||
<arg type="s" direction="out" name="filename_used"/>
|
<arg type="b" direction="out" name="success"/> \
|
||||||
</method>
|
<arg type="s" direction="out" name="filename_used"/> \
|
||||||
<method name="SelectArea">
|
</method> \
|
||||||
<arg type="i" direction="out" name="x"/>
|
<method name="SelectArea"> \
|
||||||
<arg type="i" direction="out" name="y"/>
|
<arg type="i" direction="out" name="x"/> \
|
||||||
<arg type="i" direction="out" name="width"/>
|
<arg type="i" direction="out" name="y"/> \
|
||||||
<arg type="i" direction="out" name="height"/>
|
<arg type="i" direction="out" name="width"/> \
|
||||||
</method>
|
<arg type="i" direction="out" name="height"/> \
|
||||||
<method name="FlashArea">
|
</method> \
|
||||||
<arg type="i" direction="in" name="x"/>
|
<method name="FlashArea"> \
|
||||||
<arg type="i" direction="in" name="y"/>
|
<arg type="i" direction="in" name="x"/> \
|
||||||
<arg type="i" direction="in" name="width"/>
|
<arg type="i" direction="in" name="y"/> \
|
||||||
<arg type="i" direction="in" name="height"/>
|
<arg type="i" direction="in" name="width"/> \
|
||||||
</method>
|
<arg type="i" direction="in" name="height"/> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const ScreenshotService = new Lang.Class({
|
const ScreenshotService = new Lang.Class({
|
||||||
Name: 'ScreenshotService',
|
Name: 'ScreenshotService',
|
||||||
|
@ -69,16 +69,18 @@ function waitLeisure() {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
const PerfHelperIface = <interface name="org.gnome.Shell.PerfHelper">
|
const PerfHelperIface = '<node> \
|
||||||
<method name="CreateWindow">
|
<interface name="org.gnome.Shell.PerfHelper"> \
|
||||||
<arg type="i" direction="in" />
|
<method name="CreateWindow"> \
|
||||||
<arg type="i" direction="in" />
|
<arg type="i" direction="in" /> \
|
||||||
<arg type="b" direction="in" />
|
<arg type="i" direction="in" /> \
|
||||||
<arg type="b" direction="in" />
|
<arg type="b" direction="in" /> \
|
||||||
</method>
|
<arg type="b" direction="in" /> \
|
||||||
<method name="WaitWindows" />
|
</method> \
|
||||||
<method name="DestroyWindows" />
|
<method name="WaitWindows" /> \
|
||||||
</interface>;
|
<method name="DestroyWindows" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
var PerfHelperProxy = Gio.DBusProxy.makeProxyWrapper(PerfHelperIface);
|
var PerfHelperProxy = Gio.DBusProxy.makeProxyWrapper(PerfHelperIface);
|
||||||
function PerfHelper() {
|
function PerfHelper() {
|
||||||
|
579
js/ui/search.js
@ -1,10 +1,26 @@
|
|||||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||||
|
|
||||||
|
const Clutter = imports.gi.Clutter;
|
||||||
const Lang = imports.lang;
|
const Lang = imports.lang;
|
||||||
|
const Gtk = imports.gi.Gtk;
|
||||||
|
const Meta = imports.gi.Meta;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
const St = imports.gi.St;
|
||||||
|
const Atk = imports.gi.Atk;
|
||||||
|
|
||||||
|
const DND = imports.ui.dnd;
|
||||||
|
const IconGrid = imports.ui.iconGrid;
|
||||||
|
const Main = imports.ui.main;
|
||||||
|
const Overview = imports.ui.overview;
|
||||||
|
const Separator = imports.ui.separator;
|
||||||
|
const Search = imports.ui.search;
|
||||||
|
const Util = imports.misc.util;
|
||||||
|
|
||||||
const SEARCH_PROVIDERS_SCHEMA = 'org.gnome.desktop.search-providers';
|
const SEARCH_PROVIDERS_SCHEMA = 'org.gnome.desktop.search-providers';
|
||||||
|
|
||||||
|
const MAX_LIST_SEARCH_RESULTS_ROWS = 3;
|
||||||
|
const MAX_GRID_SEARCH_RESULTS_ROWS = 1;
|
||||||
|
|
||||||
const SearchSystem = new Lang.Class({
|
const SearchSystem = new Lang.Class({
|
||||||
Name: 'SearchSystem',
|
Name: 'SearchSystem',
|
||||||
|
|
||||||
@ -82,24 +98,563 @@ const SearchSystem = new Lang.Class({
|
|||||||
if (isSubSearch) {
|
if (isSubSearch) {
|
||||||
for (let i = 0; i < this._providers.length; i++) {
|
for (let i = 0; i < this._providers.length; i++) {
|
||||||
let [provider, previousResults] = previousResultsArr[i];
|
let [provider, previousResults] = previousResultsArr[i];
|
||||||
try {
|
results.push([provider, []]);
|
||||||
results.push([provider, []]);
|
provider.getSubsearchResultSet(previousResults, terms);
|
||||||
provider.getSubsearchResultSet(previousResults, terms);
|
|
||||||
} catch (error) {
|
|
||||||
log('A ' + error.name + ' has occured in ' + provider.id + ': ' + error.message);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (let i = 0; i < this._providers.length; i++) {
|
for (let i = 0; i < this._providers.length; i++) {
|
||||||
let provider = this._providers[i];
|
let provider = this._providers[i];
|
||||||
try {
|
results.push([provider, []]);
|
||||||
results.push([provider, []]);
|
provider.getInitialResultSet(terms);
|
||||||
provider.getInitialResultSet(terms);
|
|
||||||
} catch (error) {
|
|
||||||
log('A ' + error.name + ' has occured in ' + provider.id + ': ' + error.message);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
Signals.addSignalMethods(SearchSystem.prototype);
|
Signals.addSignalMethods(SearchSystem.prototype);
|
||||||
|
|
||||||
|
const MaxWidthBin = new Lang.Class({
|
||||||
|
Name: 'MaxWidthBin',
|
||||||
|
Extends: St.Bin,
|
||||||
|
|
||||||
|
vfunc_allocate: function(box, flags) {
|
||||||
|
let themeNode = this.get_theme_node();
|
||||||
|
let maxWidth = themeNode.get_max_width();
|
||||||
|
let availWidth = box.x2 - box.x1;
|
||||||
|
let adjustedBox = box;
|
||||||
|
|
||||||
|
if (availWidth > maxWidth) {
|
||||||
|
let excessWidth = availWidth - maxWidth;
|
||||||
|
adjustedBox.x1 += Math.floor(excessWidth / 2);
|
||||||
|
adjustedBox.x2 -= Math.floor(excessWidth / 2);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.parent(adjustedBox, flags);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const SearchResult = new Lang.Class({
|
||||||
|
Name: 'SearchResult',
|
||||||
|
|
||||||
|
_init: function(provider, metaInfo, terms) {
|
||||||
|
this.provider = provider;
|
||||||
|
this.metaInfo = metaInfo;
|
||||||
|
this.terms = terms;
|
||||||
|
|
||||||
|
this.actor = new St.Button({ reactive: true,
|
||||||
|
can_focus: true,
|
||||||
|
track_hover: true,
|
||||||
|
x_align: St.Align.START,
|
||||||
|
y_fill: true });
|
||||||
|
|
||||||
|
this.actor._delegate = this;
|
||||||
|
this.actor.connect('clicked', Lang.bind(this, this.activate));
|
||||||
|
},
|
||||||
|
|
||||||
|
activate: function() {
|
||||||
|
this.provider.activateResult(this.metaInfo.id, this.terms);
|
||||||
|
Main.overview.toggle();
|
||||||
|
},
|
||||||
|
|
||||||
|
setSelected: function(selected) {
|
||||||
|
if (selected)
|
||||||
|
this.actor.add_style_pseudo_class('selected');
|
||||||
|
else
|
||||||
|
this.actor.remove_style_pseudo_class('selected');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const ListSearchResult = new Lang.Class({
|
||||||
|
Name: 'ListSearchResult',
|
||||||
|
Extends: SearchResult,
|
||||||
|
|
||||||
|
ICON_SIZE: 64,
|
||||||
|
|
||||||
|
_init: function(provider, metaInfo, terms) {
|
||||||
|
this.parent(provider, metaInfo, terms);
|
||||||
|
|
||||||
|
this.actor.style_class = 'list-search-result';
|
||||||
|
this.actor.x_fill = true;
|
||||||
|
|
||||||
|
let content = new St.BoxLayout({ style_class: 'list-search-result-content',
|
||||||
|
vertical: false });
|
||||||
|
this.actor.set_child(content);
|
||||||
|
|
||||||
|
// An icon for, or thumbnail of, content
|
||||||
|
let icon = this.metaInfo['createIcon'](this.ICON_SIZE);
|
||||||
|
if (icon) {
|
||||||
|
content.add(icon);
|
||||||
|
}
|
||||||
|
|
||||||
|
let details = new St.BoxLayout({ vertical: true });
|
||||||
|
content.add(details, { x_fill: true,
|
||||||
|
y_fill: false,
|
||||||
|
x_align: St.Align.START,
|
||||||
|
y_align: St.Align.MIDDLE });
|
||||||
|
|
||||||
|
let title = new St.Label({ style_class: 'list-search-result-title',
|
||||||
|
text: this.metaInfo['name'] })
|
||||||
|
details.add(title, { x_fill: false,
|
||||||
|
y_fill: false,
|
||||||
|
x_align: St.Align.START,
|
||||||
|
y_align: St.Align.START });
|
||||||
|
this.actor.label_actor = title;
|
||||||
|
|
||||||
|
if (this.metaInfo['description']) {
|
||||||
|
let description = new St.Label({ style_class: 'list-search-result-description' });
|
||||||
|
description.clutter_text.set_markup(this.metaInfo['description']);
|
||||||
|
details.add(description, { x_fill: false,
|
||||||
|
y_fill: false,
|
||||||
|
x_align: St.Align.START,
|
||||||
|
y_align: St.Align.END });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const GridSearchResult = new Lang.Class({
|
||||||
|
Name: 'GridSearchResult',
|
||||||
|
Extends: SearchResult,
|
||||||
|
|
||||||
|
_init: function(provider, metaInfo, terms) {
|
||||||
|
this.parent(provider, metaInfo, terms);
|
||||||
|
|
||||||
|
this.actor.style_class = 'grid-search-result';
|
||||||
|
|
||||||
|
let content = provider.createResultObject(metaInfo, terms);
|
||||||
|
let dragSource = null;
|
||||||
|
|
||||||
|
if (content == null) {
|
||||||
|
let actor = new St.Bin();
|
||||||
|
let icon = new IconGrid.BaseIcon(this.metaInfo['name'],
|
||||||
|
{ createIcon: this.metaInfo['createIcon'] });
|
||||||
|
actor.set_child(icon.actor);
|
||||||
|
actor.label_actor = icon.label;
|
||||||
|
dragSource = icon.icon;
|
||||||
|
content = { actor: actor, icon: icon };
|
||||||
|
} else {
|
||||||
|
if (content._delegate && content._delegate.getDragActorSource)
|
||||||
|
dragSource = content._delegate.getDragActorSource();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.actor.set_child(content.actor);
|
||||||
|
this.actor.label_actor = content.actor.label_actor;
|
||||||
|
this.icon = content.icon;
|
||||||
|
|
||||||
|
let draggable = DND.makeDraggable(this.actor);
|
||||||
|
draggable.connect('drag-begin',
|
||||||
|
Lang.bind(this, function() {
|
||||||
|
Main.overview.beginItemDrag(this);
|
||||||
|
}));
|
||||||
|
draggable.connect('drag-cancelled',
|
||||||
|
Lang.bind(this, function() {
|
||||||
|
Main.overview.cancelledItemDrag(this);
|
||||||
|
}));
|
||||||
|
draggable.connect('drag-end',
|
||||||
|
Lang.bind(this, function() {
|
||||||
|
Main.overview.endItemDrag(this);
|
||||||
|
}));
|
||||||
|
|
||||||
|
if (!dragSource)
|
||||||
|
// not exactly right, but alignment problems are hard to notice
|
||||||
|
dragSource = content;
|
||||||
|
this._dragActorSource = dragSource;
|
||||||
|
},
|
||||||
|
|
||||||
|
getDragActorSource: function() {
|
||||||
|
return this._dragActorSource;
|
||||||
|
},
|
||||||
|
|
||||||
|
getDragActor: function() {
|
||||||
|
return this.metaInfo['createIcon'](Main.overview.dashIconSize);
|
||||||
|
},
|
||||||
|
|
||||||
|
shellWorkspaceLaunch: function(params) {
|
||||||
|
if (this.provider.dragActivateResult)
|
||||||
|
this.provider.dragActivateResult(this.metaInfo.id, params);
|
||||||
|
else
|
||||||
|
this.provider.activateResult(this.metaInfo.id, this.terms);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const SearchResultsBase = new Lang.Class({
|
||||||
|
Name: 'SearchResultsBase',
|
||||||
|
|
||||||
|
_init: function(provider) {
|
||||||
|
this.provider = provider;
|
||||||
|
|
||||||
|
this._terms = [];
|
||||||
|
|
||||||
|
this.actor = new St.BoxLayout({ style_class: 'search-section',
|
||||||
|
vertical: true });
|
||||||
|
|
||||||
|
this._resultDisplayBin = new St.Bin({ x_fill: true,
|
||||||
|
y_fill: true });
|
||||||
|
this.actor.add(this._resultDisplayBin, { expand: true });
|
||||||
|
|
||||||
|
let separator = new Separator.HorizontalSeparator({ style_class: 'search-section-separator' });
|
||||||
|
this.actor.add(separator.actor);
|
||||||
|
},
|
||||||
|
|
||||||
|
destroy: function() {
|
||||||
|
this.actor.destroy();
|
||||||
|
this._terms = [];
|
||||||
|
},
|
||||||
|
|
||||||
|
_clearResultDisplay: function() {
|
||||||
|
},
|
||||||
|
|
||||||
|
clear: function() {
|
||||||
|
this._clearResultDisplay();
|
||||||
|
this.actor.hide();
|
||||||
|
},
|
||||||
|
|
||||||
|
_keyFocusIn: function(actor) {
|
||||||
|
this.emit('key-focus-in', actor);
|
||||||
|
},
|
||||||
|
|
||||||
|
_setMoreIconVisible: function(visible) {
|
||||||
|
},
|
||||||
|
|
||||||
|
updateSearch: function(providerResults, terms, callback) {
|
||||||
|
this._terms = terms;
|
||||||
|
|
||||||
|
if (providerResults.length == 0) {
|
||||||
|
this._clearResultDisplay();
|
||||||
|
this.actor.hide();
|
||||||
|
callback();
|
||||||
|
} else {
|
||||||
|
let maxResults = this._getMaxDisplayedResults();
|
||||||
|
let results = this.provider.filterResults(providerResults, maxResults);
|
||||||
|
let hasMoreResults = results.length < providerResults.length;
|
||||||
|
|
||||||
|
this.provider.getResultMetas(results, Lang.bind(this, function(metas) {
|
||||||
|
this.clear();
|
||||||
|
|
||||||
|
// To avoid CSS transitions causing flickering when
|
||||||
|
// the first search result stays the same, we hide the
|
||||||
|
// content while filling in the results.
|
||||||
|
this.actor.hide();
|
||||||
|
this._clearResultDisplay();
|
||||||
|
this._renderResults(metas);
|
||||||
|
this._setMoreIconVisible(hasMoreResults && this.provider.canLaunchSearch);
|
||||||
|
this.actor.show();
|
||||||
|
callback();
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const ListSearchResults = new Lang.Class({
|
||||||
|
Name: 'ListSearchResults',
|
||||||
|
Extends: SearchResultsBase,
|
||||||
|
|
||||||
|
_init: function(provider) {
|
||||||
|
this.parent(provider);
|
||||||
|
|
||||||
|
this._container = new St.BoxLayout({ style_class: 'search-section-content' });
|
||||||
|
this.providerIcon = new ProviderIcon(provider);
|
||||||
|
this.providerIcon.connect('key-focus-in', Lang.bind(this, this._keyFocusIn));
|
||||||
|
this.providerIcon.connect('clicked', Lang.bind(this,
|
||||||
|
function() {
|
||||||
|
provider.launchSearch(this._terms);
|
||||||
|
Main.overview.toggle();
|
||||||
|
}));
|
||||||
|
|
||||||
|
this._container.add(this.providerIcon, { x_fill: false,
|
||||||
|
y_fill: false,
|
||||||
|
x_align: St.Align.START,
|
||||||
|
y_align: St.Align.START });
|
||||||
|
|
||||||
|
this._content = new St.BoxLayout({ style_class: 'list-search-results',
|
||||||
|
vertical: true });
|
||||||
|
this._container.add(this._content, { expand: true });
|
||||||
|
|
||||||
|
this._resultDisplayBin.set_child(this._container);
|
||||||
|
},
|
||||||
|
|
||||||
|
_setMoreIconVisible: function(visible) {
|
||||||
|
this.providerIcon.moreIcon.visible = true;
|
||||||
|
},
|
||||||
|
|
||||||
|
_getMaxDisplayedResults: function() {
|
||||||
|
return MAX_LIST_SEARCH_RESULTS_ROWS;
|
||||||
|
},
|
||||||
|
|
||||||
|
_renderResults: function(metas) {
|
||||||
|
for (let i = 0; i < metas.length; i++) {
|
||||||
|
let display = new ListSearchResult(this.provider, metas[i], this._terms);
|
||||||
|
display.actor.connect('key-focus-in', Lang.bind(this, this._keyFocusIn));
|
||||||
|
this._content.add_actor(display.actor);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
_clearResultDisplay: function () {
|
||||||
|
this._content.destroy_all_children();
|
||||||
|
},
|
||||||
|
|
||||||
|
getFirstResult: function() {
|
||||||
|
if (this._content.get_n_children() > 0)
|
||||||
|
return this._content.get_child_at_index(0)._delegate;
|
||||||
|
else
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
Signals.addSignalMethods(ListSearchResults.prototype);
|
||||||
|
|
||||||
|
const GridSearchResults = new Lang.Class({
|
||||||
|
Name: 'GridSearchResults',
|
||||||
|
Extends: SearchResultsBase,
|
||||||
|
|
||||||
|
_init: function(provider) {
|
||||||
|
this.parent(provider);
|
||||||
|
|
||||||
|
this._grid = new IconGrid.IconGrid({ rowLimit: MAX_GRID_SEARCH_RESULTS_ROWS,
|
||||||
|
xAlign: St.Align.START });
|
||||||
|
this._bin = new St.Bin({ x_align: St.Align.MIDDLE });
|
||||||
|
this._bin.set_child(this._grid.actor);
|
||||||
|
|
||||||
|
this._resultDisplayBin.set_child(this._bin);
|
||||||
|
},
|
||||||
|
|
||||||
|
_getMaxDisplayedResults: function() {
|
||||||
|
return this._grid.columnsForWidth(this._bin.width) * this._grid.getRowLimit();
|
||||||
|
},
|
||||||
|
|
||||||
|
_renderResults: function(metas) {
|
||||||
|
for (let i = 0; i < metas.length; i++) {
|
||||||
|
let display = new GridSearchResult(this.provider, metas[i], this._terms);
|
||||||
|
display.actor.connect('key-focus-in', Lang.bind(this, this._keyFocusIn));
|
||||||
|
this._grid.addItem(display);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
_clearResultDisplay: function () {
|
||||||
|
this._grid.removeAll();
|
||||||
|
},
|
||||||
|
|
||||||
|
getFirstResult: function() {
|
||||||
|
if (this._grid.visibleItemsCount() > 0)
|
||||||
|
return this._grid.getItemAtIndex(0)._delegate;
|
||||||
|
else
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
Signals.addSignalMethods(GridSearchResults.prototype);
|
||||||
|
|
||||||
|
const SearchResults = new Lang.Class({
|
||||||
|
Name: 'SearchResults',
|
||||||
|
|
||||||
|
_init: function(searchSystem) {
|
||||||
|
this._searchSystem = searchSystem;
|
||||||
|
this._searchSystem.connect('search-updated', Lang.bind(this, this._updateResults));
|
||||||
|
|
||||||
|
this.actor = new St.BoxLayout({ name: 'searchResults',
|
||||||
|
vertical: true });
|
||||||
|
|
||||||
|
this._content = new St.BoxLayout({ name: 'searchResultsContent',
|
||||||
|
vertical: true });
|
||||||
|
this._contentBin = new MaxWidthBin({ name: 'searchResultsBin',
|
||||||
|
x_fill: true,
|
||||||
|
y_fill: true,
|
||||||
|
child: this._content });
|
||||||
|
|
||||||
|
let scrollChild = new St.BoxLayout();
|
||||||
|
scrollChild.add(this._contentBin, { expand: true });
|
||||||
|
|
||||||
|
this._scrollView = new St.ScrollView({ x_fill: true,
|
||||||
|
y_fill: false,
|
||||||
|
overlay_scrollbars: true,
|
||||||
|
style_class: 'search-display vfade' });
|
||||||
|
this._scrollView.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC);
|
||||||
|
this._scrollView.add_actor(scrollChild);
|
||||||
|
let action = new Clutter.PanAction({ interpolate: true });
|
||||||
|
action.connect('pan', Lang.bind(this, this._onPan));
|
||||||
|
this._scrollView.add_action(action);
|
||||||
|
|
||||||
|
this.actor.add(this._scrollView, { x_fill: true,
|
||||||
|
y_fill: true,
|
||||||
|
expand: true,
|
||||||
|
x_align: St.Align.START,
|
||||||
|
y_align: St.Align.START });
|
||||||
|
|
||||||
|
this._statusText = new St.Label({ style_class: 'search-statustext' });
|
||||||
|
this._statusBin = new St.Bin({ x_align: St.Align.MIDDLE,
|
||||||
|
y_align: St.Align.MIDDLE });
|
||||||
|
this._content.add(this._statusBin, { expand: true });
|
||||||
|
this._statusBin.add_actor(this._statusText);
|
||||||
|
this._providers = this._searchSystem.getProviders();
|
||||||
|
this._providerDisplays = {};
|
||||||
|
for (let i = 0; i < this._providers.length; i++) {
|
||||||
|
this.createProviderDisplay(this._providers[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
this._highlightDefault = false;
|
||||||
|
this._defaultResult = null;
|
||||||
|
},
|
||||||
|
|
||||||
|
_onPan: function(action) {
|
||||||
|
let [dist, dx, dy] = action.get_motion_delta(0);
|
||||||
|
let adjustment = this._scrollView.vscroll.adjustment;
|
||||||
|
adjustment.value -= (dy / this.actor.height) * adjustment.page_size;
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
|
||||||
|
_keyFocusIn: function(provider, actor) {
|
||||||
|
Util.ensureActorVisibleInScrollView(this._scrollView, actor);
|
||||||
|
},
|
||||||
|
|
||||||
|
createProviderDisplay: function(provider) {
|
||||||
|
let providerDisplay = null;
|
||||||
|
|
||||||
|
if (provider.appInfo) {
|
||||||
|
providerDisplay = new ListSearchResults(provider);
|
||||||
|
} else {
|
||||||
|
providerDisplay = new GridSearchResults(provider);
|
||||||
|
}
|
||||||
|
|
||||||
|
providerDisplay.connect('key-focus-in', Lang.bind(this, this._keyFocusIn));
|
||||||
|
this._providerDisplays[provider.id] = providerDisplay;
|
||||||
|
this._content.add(providerDisplay.actor);
|
||||||
|
},
|
||||||
|
|
||||||
|
destroyProviderDisplay: function(provider) {
|
||||||
|
this._providerDisplays[provider.id].destroy();
|
||||||
|
delete this._providerDisplays[provider.id];
|
||||||
|
},
|
||||||
|
|
||||||
|
_clearDisplay: function() {
|
||||||
|
for (let i = 0; i < this._providers.length; i++) {
|
||||||
|
let provider = this._providers[i];
|
||||||
|
let providerDisplay = this._providerDisplays[provider.id];
|
||||||
|
providerDisplay.clear();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
reset: function() {
|
||||||
|
this._searchSystem.reset();
|
||||||
|
this._statusBin.hide();
|
||||||
|
this._clearDisplay();
|
||||||
|
this._defaultResult = null;
|
||||||
|
},
|
||||||
|
|
||||||
|
startingSearch: function() {
|
||||||
|
this.reset();
|
||||||
|
this._statusText.set_text(_("Searching…"));
|
||||||
|
this._statusBin.show();
|
||||||
|
},
|
||||||
|
|
||||||
|
_maybeSetInitialSelection: function() {
|
||||||
|
let newDefaultResult = null;
|
||||||
|
|
||||||
|
for (let i = 0; i < this._providers.length; i++) {
|
||||||
|
let provider = this._providers[i];
|
||||||
|
let display = this._providerDisplays[provider.id];
|
||||||
|
|
||||||
|
if (!display.actor.visible)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
let firstResult = display.getFirstResult();
|
||||||
|
if (firstResult) {
|
||||||
|
newDefaultResult = firstResult;
|
||||||
|
break; // select this one!
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (newDefaultResult != this._defaultResult) {
|
||||||
|
if (this._defaultResult)
|
||||||
|
this._defaultResult.setSelected(false);
|
||||||
|
if (newDefaultResult)
|
||||||
|
newDefaultResult.setSelected(this._highlightDefault);
|
||||||
|
|
||||||
|
this._defaultResult = newDefaultResult;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
_updateStatusText: function () {
|
||||||
|
let haveResults = false;
|
||||||
|
|
||||||
|
for (let i = 0; i < this._providers.length; i++) {
|
||||||
|
let provider = this._providers[i];
|
||||||
|
let display = this._providerDisplays[provider.id];
|
||||||
|
if (display.getFirstResult()) {
|
||||||
|
haveResults = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!haveResults) {
|
||||||
|
this._statusText.set_text(_("No results."));
|
||||||
|
this._statusBin.show();
|
||||||
|
} else {
|
||||||
|
this._statusBin.hide();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
_updateResults: function(searchSystem, results) {
|
||||||
|
let terms = searchSystem.getTerms();
|
||||||
|
let [provider, providerResults] = results;
|
||||||
|
let display = this._providerDisplays[provider.id];
|
||||||
|
|
||||||
|
display.updateSearch(providerResults, terms, Lang.bind(this, function() {
|
||||||
|
this._maybeSetInitialSelection();
|
||||||
|
this._updateStatusText();
|
||||||
|
}));
|
||||||
|
},
|
||||||
|
|
||||||
|
activateDefault: function() {
|
||||||
|
if (this._defaultResult)
|
||||||
|
this._defaultResult.activate();
|
||||||
|
},
|
||||||
|
|
||||||
|
highlightDefault: function(highlight) {
|
||||||
|
this._highlightDefault = highlight;
|
||||||
|
if (this._defaultResult)
|
||||||
|
this._defaultResult.setSelected(highlight);
|
||||||
|
},
|
||||||
|
|
||||||
|
navigateFocus: function(direction) {
|
||||||
|
let rtl = this.actor.get_text_direction() == Clutter.TextDirection.RTL;
|
||||||
|
if (direction == Gtk.DirectionType.TAB_BACKWARD ||
|
||||||
|
direction == (rtl ? Gtk.DirectionType.RIGHT
|
||||||
|
: Gtk.DirectionType.LEFT) ||
|
||||||
|
direction == Gtk.DirectionType.UP) {
|
||||||
|
this.actor.navigate_focus(null, direction, false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
let from = this._defaultResult ? this._defaultResult.actor : null;
|
||||||
|
this.actor.navigate_focus(from, direction, false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const ProviderIcon = new Lang.Class({
|
||||||
|
Name: 'ProviderIcon',
|
||||||
|
Extends: St.Button,
|
||||||
|
|
||||||
|
PROVIDER_ICON_SIZE: 48,
|
||||||
|
|
||||||
|
_init: function(provider) {
|
||||||
|
this.provider = provider;
|
||||||
|
this.parent({ style_class: 'search-provider-icon',
|
||||||
|
reactive: true,
|
||||||
|
can_focus: true,
|
||||||
|
accessible_name: provider.appInfo.get_name(),
|
||||||
|
track_hover: true });
|
||||||
|
|
||||||
|
this._content = new St.Widget({ layout_manager: new Clutter.BinLayout() });
|
||||||
|
this.set_child(this._content);
|
||||||
|
|
||||||
|
let rtl = (this.get_text_direction() == Clutter.TextDirection.RTL);
|
||||||
|
|
||||||
|
this.moreIcon = new St.Widget({ style_class: 'search-provider-icon-more',
|
||||||
|
visible: false,
|
||||||
|
x_align: rtl ? Clutter.ActorAlign.START : Clutter.ActorAlign.END,
|
||||||
|
y_align: Clutter.ActorAlign.END,
|
||||||
|
x_expand: true,
|
||||||
|
y_expand: true });
|
||||||
|
|
||||||
|
let icon = new St.Icon({ icon_size: this.PROVIDER_ICON_SIZE,
|
||||||
|
gicon: provider.appInfo.get_icon() });
|
||||||
|
this._content.add_actor(icon);
|
||||||
|
this._content.add_actor(this.moreIcon);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
@ -1,566 +0,0 @@
|
|||||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
|
||||||
|
|
||||||
const Clutter = imports.gi.Clutter;
|
|
||||||
const Lang = imports.lang;
|
|
||||||
const Gtk = imports.gi.Gtk;
|
|
||||||
const Meta = imports.gi.Meta;
|
|
||||||
const Signals = imports.signals;
|
|
||||||
const St = imports.gi.St;
|
|
||||||
const Atk = imports.gi.Atk;
|
|
||||||
|
|
||||||
const DND = imports.ui.dnd;
|
|
||||||
const IconGrid = imports.ui.iconGrid;
|
|
||||||
const Main = imports.ui.main;
|
|
||||||
const Overview = imports.ui.overview;
|
|
||||||
const Separator = imports.ui.separator;
|
|
||||||
const Search = imports.ui.search;
|
|
||||||
const Util = imports.misc.util;
|
|
||||||
|
|
||||||
const MAX_LIST_SEARCH_RESULTS_ROWS = 3;
|
|
||||||
const MAX_GRID_SEARCH_RESULTS_ROWS = 1;
|
|
||||||
|
|
||||||
const MaxWidthBin = new Lang.Class({
|
|
||||||
Name: 'MaxWidthBin',
|
|
||||||
Extends: St.Bin,
|
|
||||||
|
|
||||||
vfunc_allocate: function(box, flags) {
|
|
||||||
let themeNode = this.get_theme_node();
|
|
||||||
let maxWidth = themeNode.get_max_width();
|
|
||||||
let availWidth = box.x2 - box.x1;
|
|
||||||
let adjustedBox = box;
|
|
||||||
|
|
||||||
if (availWidth > maxWidth) {
|
|
||||||
let excessWidth = availWidth - maxWidth;
|
|
||||||
adjustedBox.x1 += Math.floor(excessWidth / 2);
|
|
||||||
adjustedBox.x2 -= Math.floor(excessWidth / 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
this.parent(adjustedBox, flags);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const SearchResult = new Lang.Class({
|
|
||||||
Name: 'SearchResult',
|
|
||||||
|
|
||||||
_init: function(provider, metaInfo, terms) {
|
|
||||||
this.provider = provider;
|
|
||||||
this.metaInfo = metaInfo;
|
|
||||||
this.terms = terms;
|
|
||||||
|
|
||||||
this.actor = new St.Button({ reactive: true,
|
|
||||||
can_focus: true,
|
|
||||||
track_hover: true,
|
|
||||||
x_align: St.Align.START,
|
|
||||||
y_fill: true });
|
|
||||||
|
|
||||||
this.actor._delegate = this;
|
|
||||||
this.actor.connect('clicked', Lang.bind(this, this.activate));
|
|
||||||
},
|
|
||||||
|
|
||||||
activate: function() {
|
|
||||||
this.provider.activateResult(this.metaInfo.id, this.terms);
|
|
||||||
Main.overview.toggle();
|
|
||||||
},
|
|
||||||
|
|
||||||
setSelected: function(selected) {
|
|
||||||
if (selected)
|
|
||||||
this.actor.add_style_pseudo_class('selected');
|
|
||||||
else
|
|
||||||
this.actor.remove_style_pseudo_class('selected');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const ListSearchResult = new Lang.Class({
|
|
||||||
Name: 'ListSearchResult',
|
|
||||||
Extends: SearchResult,
|
|
||||||
|
|
||||||
ICON_SIZE: 64,
|
|
||||||
|
|
||||||
_init: function(provider, metaInfo, terms) {
|
|
||||||
this.parent(provider, metaInfo, terms);
|
|
||||||
|
|
||||||
this.actor.style_class = 'list-search-result';
|
|
||||||
this.actor.x_fill = true;
|
|
||||||
|
|
||||||
let content = new St.BoxLayout({ style_class: 'list-search-result-content',
|
|
||||||
vertical: false });
|
|
||||||
this.actor.set_child(content);
|
|
||||||
|
|
||||||
// An icon for, or thumbnail of, content
|
|
||||||
let icon = this.metaInfo['createIcon'](this.ICON_SIZE);
|
|
||||||
if (icon) {
|
|
||||||
content.add(icon);
|
|
||||||
}
|
|
||||||
|
|
||||||
let details = new St.BoxLayout({ vertical: true });
|
|
||||||
content.add(details, { x_fill: true,
|
|
||||||
y_fill: false,
|
|
||||||
x_align: St.Align.START,
|
|
||||||
y_align: St.Align.MIDDLE });
|
|
||||||
|
|
||||||
let title = new St.Label({ style_class: 'list-search-result-title',
|
|
||||||
text: this.metaInfo['name'] })
|
|
||||||
details.add(title, { x_fill: false,
|
|
||||||
y_fill: false,
|
|
||||||
x_align: St.Align.START,
|
|
||||||
y_align: St.Align.START });
|
|
||||||
this.actor.label_actor = title;
|
|
||||||
|
|
||||||
if (this.metaInfo['description']) {
|
|
||||||
let description = new St.Label({ style_class: 'list-search-result-description' });
|
|
||||||
description.clutter_text.set_markup(this.metaInfo['description']);
|
|
||||||
details.add(description, { x_fill: false,
|
|
||||||
y_fill: false,
|
|
||||||
x_align: St.Align.START,
|
|
||||||
y_align: St.Align.END });
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const GridSearchResult = new Lang.Class({
|
|
||||||
Name: 'GridSearchResult',
|
|
||||||
Extends: SearchResult,
|
|
||||||
|
|
||||||
_init: function(provider, metaInfo, terms) {
|
|
||||||
this.parent(provider, metaInfo, terms);
|
|
||||||
|
|
||||||
this.actor.style_class = 'grid-search-result';
|
|
||||||
|
|
||||||
let content = provider.createResultObject(metaInfo, terms);
|
|
||||||
let dragSource = null;
|
|
||||||
|
|
||||||
if (content == null) {
|
|
||||||
let actor = new St.Bin();
|
|
||||||
let icon = new IconGrid.BaseIcon(this.metaInfo['name'],
|
|
||||||
{ createIcon: this.metaInfo['createIcon'] });
|
|
||||||
actor.set_child(icon.actor);
|
|
||||||
actor.label_actor = icon.label;
|
|
||||||
dragSource = icon.icon;
|
|
||||||
content = { actor: actor, icon: icon };
|
|
||||||
} else {
|
|
||||||
if (content._delegate && content._delegate.getDragActorSource)
|
|
||||||
dragSource = content._delegate.getDragActorSource();
|
|
||||||
}
|
|
||||||
|
|
||||||
this.actor.set_child(content.actor);
|
|
||||||
this.actor.label_actor = content.actor.label_actor;
|
|
||||||
this.icon = content.icon;
|
|
||||||
|
|
||||||
let draggable = DND.makeDraggable(this.actor);
|
|
||||||
draggable.connect('drag-begin',
|
|
||||||
Lang.bind(this, function() {
|
|
||||||
Main.overview.beginItemDrag(this);
|
|
||||||
}));
|
|
||||||
draggable.connect('drag-cancelled',
|
|
||||||
Lang.bind(this, function() {
|
|
||||||
Main.overview.cancelledItemDrag(this);
|
|
||||||
}));
|
|
||||||
draggable.connect('drag-end',
|
|
||||||
Lang.bind(this, function() {
|
|
||||||
Main.overview.endItemDrag(this);
|
|
||||||
}));
|
|
||||||
|
|
||||||
if (!dragSource)
|
|
||||||
// not exactly right, but alignment problems are hard to notice
|
|
||||||
dragSource = content;
|
|
||||||
this._dragActorSource = dragSource;
|
|
||||||
},
|
|
||||||
|
|
||||||
getDragActorSource: function() {
|
|
||||||
return this._dragActorSource;
|
|
||||||
},
|
|
||||||
|
|
||||||
getDragActor: function() {
|
|
||||||
return this.metaInfo['createIcon'](Main.overview.dashIconSize);
|
|
||||||
},
|
|
||||||
|
|
||||||
shellWorkspaceLaunch: function(params) {
|
|
||||||
if (this.provider.dragActivateResult)
|
|
||||||
this.provider.dragActivateResult(this.metaInfo.id, params);
|
|
||||||
else
|
|
||||||
this.provider.activateResult(this.metaInfo.id, this.terms);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const SearchResultsBase = new Lang.Class({
|
|
||||||
Name: 'SearchResultsBase',
|
|
||||||
|
|
||||||
_init: function(provider) {
|
|
||||||
this.provider = provider;
|
|
||||||
|
|
||||||
this._terms = [];
|
|
||||||
|
|
||||||
this.actor = new St.BoxLayout({ style_class: 'search-section',
|
|
||||||
vertical: true });
|
|
||||||
|
|
||||||
this._resultDisplayBin = new St.Bin({ x_fill: true,
|
|
||||||
y_fill: true });
|
|
||||||
this.actor.add(this._resultDisplayBin, { expand: true });
|
|
||||||
|
|
||||||
let separator = new Separator.HorizontalSeparator({ style_class: 'search-section-separator' });
|
|
||||||
this.actor.add(separator.actor);
|
|
||||||
},
|
|
||||||
|
|
||||||
destroy: function() {
|
|
||||||
this.actor.destroy();
|
|
||||||
this._terms = [];
|
|
||||||
},
|
|
||||||
|
|
||||||
_clearResultDisplay: function() {
|
|
||||||
},
|
|
||||||
|
|
||||||
clear: function() {
|
|
||||||
this._clearResultDisplay();
|
|
||||||
this.actor.hide();
|
|
||||||
},
|
|
||||||
|
|
||||||
_keyFocusIn: function(icon) {
|
|
||||||
this.emit('key-focus-in', icon);
|
|
||||||
},
|
|
||||||
|
|
||||||
_setMoreIconVisible: function(visible) {
|
|
||||||
},
|
|
||||||
|
|
||||||
updateSearch: function(providerResults, terms, callback) {
|
|
||||||
this._terms = terms;
|
|
||||||
|
|
||||||
if (providerResults.length == 0) {
|
|
||||||
this._clearResultDisplay();
|
|
||||||
this.actor.hide();
|
|
||||||
callback();
|
|
||||||
} else {
|
|
||||||
let maxResults = this._getMaxDisplayedResults();
|
|
||||||
let results = providerResults.slice(0, maxResults);
|
|
||||||
let hasMoreResults = results.length < providerResults.length;
|
|
||||||
|
|
||||||
this.provider.getResultMetas(results, Lang.bind(this, function(metas) {
|
|
||||||
this.clear();
|
|
||||||
|
|
||||||
// To avoid CSS transitions causing flickering when
|
|
||||||
// the first search result stays the same, we hide the
|
|
||||||
// content while filling in the results.
|
|
||||||
this.actor.hide();
|
|
||||||
this._clearResultDisplay();
|
|
||||||
this._renderResults(metas);
|
|
||||||
this._setMoreIconVisible(hasMoreResults && this.provider.canLaunchSearch);
|
|
||||||
this.actor.show();
|
|
||||||
callback();
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const ListSearchResults = new Lang.Class({
|
|
||||||
Name: 'ListSearchResults',
|
|
||||||
Extends: SearchResultsBase,
|
|
||||||
|
|
||||||
_init: function(provider) {
|
|
||||||
this.parent(provider);
|
|
||||||
|
|
||||||
this._container = new St.BoxLayout({ style_class: 'search-section-content' });
|
|
||||||
this.providerIcon = new ProviderIcon(provider);
|
|
||||||
this.providerIcon.connect('clicked', Lang.bind(this,
|
|
||||||
function() {
|
|
||||||
provider.launchSearch(this._terms);
|
|
||||||
Main.overview.toggle();
|
|
||||||
}));
|
|
||||||
|
|
||||||
this._container.add(this.providerIcon, { x_fill: false,
|
|
||||||
y_fill: false,
|
|
||||||
x_align: St.Align.START,
|
|
||||||
y_align: St.Align.START });
|
|
||||||
|
|
||||||
this._content = new St.BoxLayout({ style_class: 'list-search-results',
|
|
||||||
vertical: true });
|
|
||||||
this._container.add(this._content, { expand: true });
|
|
||||||
|
|
||||||
this._resultDisplayBin.set_child(this._container);
|
|
||||||
},
|
|
||||||
|
|
||||||
_setMoreIconVisible: function(visible) {
|
|
||||||
this.providerIcon.moreIcon.visible = true;
|
|
||||||
},
|
|
||||||
|
|
||||||
_getMaxDisplayedResults: function() {
|
|
||||||
return MAX_LIST_SEARCH_RESULTS_ROWS;
|
|
||||||
},
|
|
||||||
|
|
||||||
_renderResults: function(metas) {
|
|
||||||
for (let i = 0; i < metas.length; i++) {
|
|
||||||
let display = new ListSearchResult(this.provider, metas[i], this._terms);
|
|
||||||
display.actor.connect('key-focus-in', Lang.bind(this, this._keyFocusIn));
|
|
||||||
this._content.add_actor(display.actor);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
_clearResultDisplay: function () {
|
|
||||||
this._content.destroy_all_children();
|
|
||||||
},
|
|
||||||
|
|
||||||
getFirstResult: function() {
|
|
||||||
if (this._content.get_n_children() > 0)
|
|
||||||
return this._content.get_child_at_index(0)._delegate;
|
|
||||||
else
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Signals.addSignalMethods(ListSearchResults.prototype);
|
|
||||||
|
|
||||||
const GridSearchResults = new Lang.Class({
|
|
||||||
Name: 'GridSearchResults',
|
|
||||||
Extends: SearchResultsBase,
|
|
||||||
|
|
||||||
_init: function(provider) {
|
|
||||||
this.parent(provider);
|
|
||||||
|
|
||||||
this._grid = new IconGrid.IconGrid({ rowLimit: MAX_GRID_SEARCH_RESULTS_ROWS,
|
|
||||||
xAlign: St.Align.START });
|
|
||||||
this._bin = new St.Bin({ x_align: St.Align.MIDDLE });
|
|
||||||
this._bin.set_child(this._grid.actor);
|
|
||||||
|
|
||||||
this._resultDisplayBin.set_child(this._bin);
|
|
||||||
},
|
|
||||||
|
|
||||||
_getMaxDisplayedResults: function() {
|
|
||||||
return this._grid.columnsForWidth(this._bin.width) * this._grid.getRowLimit();
|
|
||||||
},
|
|
||||||
|
|
||||||
_renderResults: function(metas) {
|
|
||||||
for (let i = 0; i < metas.length; i++) {
|
|
||||||
let display = new GridSearchResult(this.provider, metas[i], this._terms);
|
|
||||||
display.actor.connect('key-focus-in', Lang.bind(this, this._keyFocusIn));
|
|
||||||
this._grid.addItem(display);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
_clearResultDisplay: function () {
|
|
||||||
this._grid.removeAll();
|
|
||||||
},
|
|
||||||
|
|
||||||
getFirstResult: function() {
|
|
||||||
if (this._grid.visibleItemsCount() > 0)
|
|
||||||
return this._grid.getItemAtIndex(0)._delegate;
|
|
||||||
else
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Signals.addSignalMethods(GridSearchResults.prototype);
|
|
||||||
|
|
||||||
const SearchResults = new Lang.Class({
|
|
||||||
Name: 'SearchResults',
|
|
||||||
|
|
||||||
_init: function(searchSystem) {
|
|
||||||
this._searchSystem = searchSystem;
|
|
||||||
this._searchSystem.connect('search-updated', Lang.bind(this, this._updateResults));
|
|
||||||
|
|
||||||
this.actor = new St.BoxLayout({ name: 'searchResults',
|
|
||||||
vertical: true });
|
|
||||||
|
|
||||||
this._content = new St.BoxLayout({ name: 'searchResultsContent',
|
|
||||||
vertical: true });
|
|
||||||
this._contentBin = new MaxWidthBin({ name: 'searchResultsBin',
|
|
||||||
x_fill: true,
|
|
||||||
y_fill: true,
|
|
||||||
child: this._content });
|
|
||||||
|
|
||||||
let scrollChild = new St.BoxLayout();
|
|
||||||
scrollChild.add(this._contentBin, { expand: true });
|
|
||||||
|
|
||||||
this._scrollView = new St.ScrollView({ x_fill: true,
|
|
||||||
y_fill: false,
|
|
||||||
overlay_scrollbars: true,
|
|
||||||
style_class: 'search-display vfade' });
|
|
||||||
this._scrollView.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC);
|
|
||||||
this._scrollView.add_actor(scrollChild);
|
|
||||||
let action = new Clutter.PanAction({ interpolate: true });
|
|
||||||
action.connect('pan', Lang.bind(this, this._onPan));
|
|
||||||
this._scrollView.add_action(action);
|
|
||||||
|
|
||||||
this.actor.add(this._scrollView, { x_fill: true,
|
|
||||||
y_fill: true,
|
|
||||||
expand: true,
|
|
||||||
x_align: St.Align.START,
|
|
||||||
y_align: St.Align.START });
|
|
||||||
|
|
||||||
this._statusText = new St.Label({ style_class: 'search-statustext' });
|
|
||||||
this._statusBin = new St.Bin({ x_align: St.Align.MIDDLE,
|
|
||||||
y_align: St.Align.MIDDLE });
|
|
||||||
this._content.add(this._statusBin, { expand: true });
|
|
||||||
this._statusBin.add_actor(this._statusText);
|
|
||||||
this._providers = this._searchSystem.getProviders();
|
|
||||||
this._providerDisplays = {};
|
|
||||||
for (let i = 0; i < this._providers.length; i++) {
|
|
||||||
this.createProviderDisplay(this._providers[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
this._highlightDefault = false;
|
|
||||||
this._defaultResult = null;
|
|
||||||
},
|
|
||||||
|
|
||||||
_onPan: function(action) {
|
|
||||||
let [dist, dx, dy] = action.get_motion_delta(0);
|
|
||||||
let adjustment = this._scrollView.vscroll.adjustment;
|
|
||||||
adjustment.value -= (dy / this.actor.height) * adjustment.page_size;
|
|
||||||
return false;
|
|
||||||
},
|
|
||||||
|
|
||||||
_keyFocusIn: function(provider, icon) {
|
|
||||||
Util.ensureActorVisibleInScrollView(this._scrollView, icon);
|
|
||||||
},
|
|
||||||
|
|
||||||
createProviderDisplay: function(provider) {
|
|
||||||
let providerDisplay = null;
|
|
||||||
|
|
||||||
if (provider.appInfo) {
|
|
||||||
providerDisplay = new ListSearchResults(provider);
|
|
||||||
} else {
|
|
||||||
providerDisplay = new GridSearchResults(provider);
|
|
||||||
}
|
|
||||||
|
|
||||||
providerDisplay.connect('key-focus-in', Lang.bind(this, this._keyFocusIn));
|
|
||||||
this._providerDisplays[provider.id] = providerDisplay;
|
|
||||||
this._content.add(providerDisplay.actor);
|
|
||||||
},
|
|
||||||
|
|
||||||
destroyProviderDisplay: function(provider) {
|
|
||||||
this._providerDisplays[provider.id].destroy();
|
|
||||||
delete this._providerDisplays[provider.id];
|
|
||||||
},
|
|
||||||
|
|
||||||
_clearDisplay: function() {
|
|
||||||
for (let i = 0; i < this._providers.length; i++) {
|
|
||||||
let provider = this._providers[i];
|
|
||||||
let providerDisplay = this._providerDisplays[provider.id];
|
|
||||||
providerDisplay.clear();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
reset: function() {
|
|
||||||
this._searchSystem.reset();
|
|
||||||
this._statusBin.hide();
|
|
||||||
this._clearDisplay();
|
|
||||||
this._defaultResult = null;
|
|
||||||
},
|
|
||||||
|
|
||||||
startingSearch: function() {
|
|
||||||
this.reset();
|
|
||||||
this._statusText.set_text(_("Searching…"));
|
|
||||||
this._statusBin.show();
|
|
||||||
},
|
|
||||||
|
|
||||||
_maybeSetInitialSelection: function() {
|
|
||||||
let newDefaultResult = null;
|
|
||||||
|
|
||||||
for (let i = 0; i < this._providers.length; i++) {
|
|
||||||
let provider = this._providers[i];
|
|
||||||
let display = this._providerDisplays[provider.id];
|
|
||||||
|
|
||||||
if (!display.actor.visible)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
let firstResult = display.getFirstResult();
|
|
||||||
if (firstResult) {
|
|
||||||
newDefaultResult = firstResult;
|
|
||||||
break; // select this one!
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (newDefaultResult != this._defaultResult) {
|
|
||||||
if (this._defaultResult)
|
|
||||||
this._defaultResult.setSelected(false);
|
|
||||||
if (newDefaultResult)
|
|
||||||
newDefaultResult.setSelected(this._highlightDefault);
|
|
||||||
|
|
||||||
this._defaultResult = newDefaultResult;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
_updateStatusText: function () {
|
|
||||||
let haveResults = false;
|
|
||||||
|
|
||||||
for (let i = 0; i < this._providers.length; i++) {
|
|
||||||
let provider = this._providers[i];
|
|
||||||
let display = this._providerDisplays[provider.id];
|
|
||||||
if (display.getFirstResult()) {
|
|
||||||
haveResults = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!haveResults) {
|
|
||||||
this._statusText.set_text(_("No results."));
|
|
||||||
this._statusBin.show();
|
|
||||||
} else {
|
|
||||||
this._statusBin.hide();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
_updateResults: function(searchSystem, results) {
|
|
||||||
let terms = searchSystem.getTerms();
|
|
||||||
let [provider, providerResults] = results;
|
|
||||||
let display = this._providerDisplays[provider.id];
|
|
||||||
|
|
||||||
display.updateSearch(providerResults, terms, Lang.bind(this, function() {
|
|
||||||
this._maybeSetInitialSelection();
|
|
||||||
this._updateStatusText();
|
|
||||||
}));
|
|
||||||
},
|
|
||||||
|
|
||||||
activateDefault: function() {
|
|
||||||
if (this._defaultResult)
|
|
||||||
this._defaultResult.activate();
|
|
||||||
},
|
|
||||||
|
|
||||||
highlightDefault: function(highlight) {
|
|
||||||
this._highlightDefault = highlight;
|
|
||||||
if (this._defaultResult)
|
|
||||||
this._defaultResult.setSelected(highlight);
|
|
||||||
},
|
|
||||||
|
|
||||||
navigateFocus: function(direction) {
|
|
||||||
let rtl = this.actor.get_text_direction() == Clutter.TextDirection.RTL;
|
|
||||||
if (direction == Gtk.DirectionType.TAB_BACKWARD ||
|
|
||||||
direction == (rtl ? Gtk.DirectionType.RIGHT
|
|
||||||
: Gtk.DirectionType.LEFT) ||
|
|
||||||
direction == Gtk.DirectionType.UP) {
|
|
||||||
this.actor.navigate_focus(null, direction, false);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
let from = this._defaultResult ? this._defaultResult.actor : null;
|
|
||||||
this.actor.navigate_focus(from, direction, false);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const ProviderIcon = new Lang.Class({
|
|
||||||
Name: 'ProviderIcon',
|
|
||||||
Extends: St.Button,
|
|
||||||
|
|
||||||
PROVIDER_ICON_SIZE: 48,
|
|
||||||
|
|
||||||
_init: function(provider) {
|
|
||||||
this.provider = provider;
|
|
||||||
this.parent({ style_class: 'search-provider-icon',
|
|
||||||
reactive: true,
|
|
||||||
can_focus: true,
|
|
||||||
accessible_name: provider.appInfo.get_name(),
|
|
||||||
track_hover: true });
|
|
||||||
|
|
||||||
this._content = new St.Widget({ layout_manager: new Clutter.BinLayout() });
|
|
||||||
this.set_child(this._content);
|
|
||||||
|
|
||||||
let rtl = (this.get_text_direction() == Clutter.TextDirection.RTL);
|
|
||||||
|
|
||||||
this.moreIcon = new St.Widget({ style_class: 'search-provider-icon-more',
|
|
||||||
visible: false,
|
|
||||||
x_align: rtl ? Clutter.ActorAlign.START : Clutter.ActorAlign.END,
|
|
||||||
y_align: Clutter.ActorAlign.END,
|
|
||||||
x_expand: true,
|
|
||||||
y_expand: true });
|
|
||||||
|
|
||||||
let icon = new St.Icon({ icon_size: this.PROVIDER_ICON_SIZE,
|
|
||||||
gicon: provider.appInfo.get_icon() });
|
|
||||||
this._content.add_actor(icon);
|
|
||||||
this._content.add_actor(this.moreIcon);
|
|
||||||
}
|
|
||||||
});
|
|
@ -15,59 +15,63 @@ const Main = imports.ui.main;
|
|||||||
const Screenshot = imports.ui.screenshot;
|
const Screenshot = imports.ui.screenshot;
|
||||||
const ViewSelector = imports.ui.viewSelector;
|
const ViewSelector = imports.ui.viewSelector;
|
||||||
|
|
||||||
const GnomeShellIface = <interface name="org.gnome.Shell">
|
const GnomeShellIface = '<node> \
|
||||||
<method name="Eval">
|
<interface name="org.gnome.Shell"> \
|
||||||
<arg type="s" direction="in" name="script" />
|
<method name="Eval"> \
|
||||||
<arg type="b" direction="out" name="success" />
|
<arg type="s" direction="in" name="script" /> \
|
||||||
<arg type="s" direction="out" name="result" />
|
<arg type="b" direction="out" name="success" /> \
|
||||||
</method>
|
<arg type="s" direction="out" name="result" /> \
|
||||||
<method name="FocusSearch"/>
|
</method> \
|
||||||
<method name="ShowOSD">
|
<method name="FocusSearch"/> \
|
||||||
<arg type="a{sv}" direction="in" name="params"/>
|
<method name="ShowOSD"> \
|
||||||
</method>
|
<arg type="a{sv}" direction="in" name="params"/> \
|
||||||
<method name="FocusApp">
|
</method> \
|
||||||
<arg type="s" direction="in" name="id"/>
|
<method name="FocusApp"> \
|
||||||
</method>
|
<arg type="s" direction="in" name="id"/> \
|
||||||
<method name="ShowApplications" />
|
</method> \
|
||||||
<method name="GrabAccelerator">
|
<method name="ShowApplications" /> \
|
||||||
<arg type="s" direction="in" name="accelerator"/>
|
<method name="GrabAccelerator"> \
|
||||||
<arg type="u" direction="in" name="flags"/>
|
<arg type="s" direction="in" name="accelerator"/> \
|
||||||
<arg type="u" direction="out" name="action"/>
|
<arg type="u" direction="in" name="flags"/> \
|
||||||
</method>
|
<arg type="u" direction="out" name="action"/> \
|
||||||
<method name="GrabAccelerators">
|
</method> \
|
||||||
<arg type="a(su)" direction="in" name="accelerators"/>
|
<method name="GrabAccelerators"> \
|
||||||
<arg type="au" direction="out" name="actions"/>
|
<arg type="a(su)" direction="in" name="accelerators"/> \
|
||||||
</method>
|
<arg type="au" direction="out" name="actions"/> \
|
||||||
<method name="UngrabAccelerator">
|
</method> \
|
||||||
<arg type="u" direction="in" name="action"/>
|
<method name="UngrabAccelerator"> \
|
||||||
<arg type="b" direction="out" name="success"/>
|
<arg type="u" direction="in" name="action"/> \
|
||||||
</method>
|
<arg type="b" direction="out" name="success"/> \
|
||||||
<signal name="AcceleratorActivated">
|
</method> \
|
||||||
<arg name="action" type="u" />
|
<signal name="AcceleratorActivated"> \
|
||||||
<arg name="deviceid" type="u" />
|
<arg name="action" type="u" /> \
|
||||||
<arg name="timestamp" type="u" />
|
<arg name="deviceid" type="u" /> \
|
||||||
</signal>
|
<arg name="timestamp" type="u" /> \
|
||||||
<property name="Mode" type="s" access="read" />
|
</signal> \
|
||||||
<property name="OverviewActive" type="b" access="readwrite" />
|
<property name="Mode" type="s" access="read" /> \
|
||||||
<property name="ShellVersion" type="s" access="read" />
|
<property name="OverviewActive" type="b" access="readwrite" /> \
|
||||||
</interface>;
|
<property name="ShellVersion" type="s" access="read" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const ScreenSaverIface = <interface name="org.gnome.ScreenSaver">
|
const ScreenSaverIface = '<node> \
|
||||||
<method name="Lock">
|
<interface name="org.gnome.ScreenSaver"> \
|
||||||
</method>
|
<method name="Lock"> \
|
||||||
<method name="GetActive">
|
</method> \
|
||||||
<arg name="active" direction="out" type="b" />
|
<method name="GetActive"> \
|
||||||
</method>
|
<arg name="active" direction="out" type="b" /> \
|
||||||
<method name="SetActive">
|
</method> \
|
||||||
<arg name="value" direction="in" type="b" />
|
<method name="SetActive"> \
|
||||||
</method>
|
<arg name="value" direction="in" type="b" /> \
|
||||||
<method name="GetActiveTime">
|
</method> \
|
||||||
<arg name="value" direction="out" type="u" />
|
<method name="GetActiveTime"> \
|
||||||
</method>
|
<arg name="value" direction="out" type="u" /> \
|
||||||
<signal name="ActiveChanged">
|
</method> \
|
||||||
<arg name="new_value" type="b" />
|
<signal name="ActiveChanged"> \
|
||||||
</signal>
|
<arg name="new_value" type="b" /> \
|
||||||
</interface>;
|
</signal> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const GnomeShell = new Lang.Class({
|
const GnomeShell = new Lang.Class({
|
||||||
Name: 'GnomeShellDBus',
|
Name: 'GnomeShellDBus',
|
||||||
@ -246,41 +250,43 @@ const GnomeShell = new Lang.Class({
|
|||||||
ShellVersion: Config.PACKAGE_VERSION
|
ShellVersion: Config.PACKAGE_VERSION
|
||||||
});
|
});
|
||||||
|
|
||||||
const GnomeShellExtensionsIface = <interface name="org.gnome.Shell.Extensions">
|
const GnomeShellExtensionsIface = '<node> \
|
||||||
<method name="ListExtensions">
|
<interface name="org.gnome.Shell.Extensions"> \
|
||||||
<arg type="a{sa{sv}}" direction="out" name="extensions" />
|
<method name="ListExtensions"> \
|
||||||
</method>
|
<arg type="a{sa{sv}}" direction="out" name="extensions" /> \
|
||||||
<method name="GetExtensionInfo">
|
</method> \
|
||||||
<arg type="s" direction="in" name="extension" />
|
<method name="GetExtensionInfo"> \
|
||||||
<arg type="a{sv}" direction="out" name="info" />
|
<arg type="s" direction="in" name="extension" /> \
|
||||||
</method>
|
<arg type="a{sv}" direction="out" name="info" /> \
|
||||||
<method name="GetExtensionErrors">
|
</method> \
|
||||||
<arg type="s" direction="in" name="extension" />
|
<method name="GetExtensionErrors"> \
|
||||||
<arg type="as" direction="out" name="errors" />
|
<arg type="s" direction="in" name="extension" /> \
|
||||||
</method>
|
<arg type="as" direction="out" name="errors" /> \
|
||||||
<signal name="ExtensionStatusChanged">
|
</method> \
|
||||||
<arg type="s" name="uuid"/>
|
<signal name="ExtensionStatusChanged"> \
|
||||||
<arg type="i" name="state"/>
|
<arg type="s" name="uuid"/> \
|
||||||
<arg type="s" name="error"/>
|
<arg type="i" name="state"/> \
|
||||||
</signal>
|
<arg type="s" name="error"/> \
|
||||||
<method name="InstallRemoteExtension">
|
</signal> \
|
||||||
<arg type="s" direction="in" name="uuid"/>
|
<method name="InstallRemoteExtension"> \
|
||||||
<arg type="s" direction="out" name="result"/>
|
<arg type="s" direction="in" name="uuid"/> \
|
||||||
</method>
|
<arg type="s" direction="out" name="result"/> \
|
||||||
<method name="UninstallExtension">
|
</method> \
|
||||||
<arg type="s" direction="in" name="uuid"/>
|
<method name="UninstallExtension"> \
|
||||||
<arg type="b" direction="out" name="success"/>
|
<arg type="s" direction="in" name="uuid"/> \
|
||||||
</method>
|
<arg type="b" direction="out" name="success"/> \
|
||||||
<method name="LaunchExtensionPrefs">
|
</method> \
|
||||||
<arg type="s" direction="in" name="uuid"/>
|
<method name="LaunchExtensionPrefs"> \
|
||||||
</method>
|
<arg type="s" direction="in" name="uuid"/> \
|
||||||
<method name="ReloadExtension">
|
</method> \
|
||||||
<arg type="s" direction="in" name="uuid"/>
|
<method name="ReloadExtension"> \
|
||||||
</method>
|
<arg type="s" direction="in" name="uuid"/> \
|
||||||
<method name="CheckForUpdates">
|
</method> \
|
||||||
</method>
|
<method name="CheckForUpdates"> \
|
||||||
<property name="ShellVersion" type="s" access="read" />
|
</method> \
|
||||||
</interface>;
|
<property name="ShellVersion" type="s" access="read" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const GnomeShellExtensions = new Lang.Class({
|
const GnomeShellExtensions = new Lang.Class({
|
||||||
Name: 'GnomeShellExtensionsDBus',
|
Name: 'GnomeShellExtensionsDBus',
|
||||||
|
@ -521,36 +521,38 @@ const ShellProcessesDialog = new Lang.Class({
|
|||||||
});
|
});
|
||||||
Signals.addSignalMethods(ShellProcessesDialog.prototype);
|
Signals.addSignalMethods(ShellProcessesDialog.prototype);
|
||||||
|
|
||||||
const GnomeShellMountOpIface = <interface name="org.Gtk.MountOperationHandler">
|
const GnomeShellMountOpIface = '<node> \
|
||||||
<method name="AskPassword">
|
<interface name="org.Gtk.MountOperationHandler"> \
|
||||||
<arg type="s" direction="in" name="object_id"/>
|
<method name="AskPassword"> \
|
||||||
<arg type="s" direction="in" name="message"/>
|
<arg type="s" direction="in" name="object_id"/> \
|
||||||
<arg type="s" direction="in" name="icon_name"/>
|
<arg type="s" direction="in" name="message"/> \
|
||||||
<arg type="s" direction="in" name="default_user"/>
|
<arg type="s" direction="in" name="icon_name"/> \
|
||||||
<arg type="s" direction="in" name="default_domain"/>
|
<arg type="s" direction="in" name="default_user"/> \
|
||||||
<arg type="u" direction="in" name="flags"/>
|
<arg type="s" direction="in" name="default_domain"/> \
|
||||||
<arg type="u" direction="out" name="response"/>
|
<arg type="u" direction="in" name="flags"/> \
|
||||||
<arg type="a{sv}" direction="out" name="response_details"/>
|
<arg type="u" direction="out" name="response"/> \
|
||||||
</method>
|
<arg type="a{sv}" direction="out" name="response_details"/> \
|
||||||
<method name="AskQuestion">
|
</method> \
|
||||||
<arg type="s" direction="in" name="object_id"/>
|
<method name="AskQuestion"> \
|
||||||
<arg type="s" direction="in" name="message"/>
|
<arg type="s" direction="in" name="object_id"/> \
|
||||||
<arg type="s" direction="in" name="icon_name"/>
|
<arg type="s" direction="in" name="message"/> \
|
||||||
<arg type="as" direction="in" name="choices"/>
|
<arg type="s" direction="in" name="icon_name"/> \
|
||||||
<arg type="u" direction="out" name="response"/>
|
<arg type="as" direction="in" name="choices"/> \
|
||||||
<arg type="a{sv}" direction="out" name="response_details"/>
|
<arg type="u" direction="out" name="response"/> \
|
||||||
</method>
|
<arg type="a{sv}" direction="out" name="response_details"/> \
|
||||||
<method name="ShowProcesses">
|
</method> \
|
||||||
<arg type="s" direction="in" name="object_id"/>
|
<method name="ShowProcesses"> \
|
||||||
<arg type="s" direction="in" name="message"/>
|
<arg type="s" direction="in" name="object_id"/> \
|
||||||
<arg type="s" direction="in" name="icon_name"/>
|
<arg type="s" direction="in" name="message"/> \
|
||||||
<arg type="ai" direction="in" name="application_pids"/>
|
<arg type="s" direction="in" name="icon_name"/> \
|
||||||
<arg type="as" direction="in" name="choices"/>
|
<arg type="ai" direction="in" name="application_pids"/> \
|
||||||
<arg type="u" direction="out" name="response"/>
|
<arg type="as" direction="in" name="choices"/> \
|
||||||
<arg type="a{sv}" direction="out" name="response_details"/>
|
<arg type="u" direction="out" name="response"/> \
|
||||||
</method>
|
<arg type="a{sv}" direction="out" name="response_details"/> \
|
||||||
<method name="Close"/>
|
</method> \
|
||||||
</interface>;
|
<method name="Close"/> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const ShellMountOperationType = {
|
const ShellMountOperationType = {
|
||||||
NONE: 0,
|
NONE: 0,
|
||||||
|
@ -43,9 +43,7 @@ const ATIndicator = new Lang.Class({
|
|||||||
this._hbox = new St.BoxLayout({ style_class: 'panel-status-menu-box' });
|
this._hbox = new St.BoxLayout({ style_class: 'panel-status-menu-box' });
|
||||||
this._hbox.add_child(new St.Icon({ style_class: 'system-status-icon',
|
this._hbox.add_child(new St.Icon({ style_class: 'system-status-icon',
|
||||||
icon_name: 'preferences-desktop-accessibility-symbolic' }));
|
icon_name: 'preferences-desktop-accessibility-symbolic' }));
|
||||||
this._hbox.add_child(new St.Label({ text: '\u25BE',
|
this._hbox.add_child(PopupMenu.unicodeArrow(St.Side.BOTTOM));
|
||||||
y_expand: true,
|
|
||||||
y_align: Clutter.ActorAlign.CENTER }));
|
|
||||||
|
|
||||||
this.actor.add_child(this._hbox);
|
this.actor.add_child(this._hbox);
|
||||||
|
|
||||||
|
@ -9,7 +9,6 @@ const St = imports.gi.St;
|
|||||||
|
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
const MessageTray = imports.ui.messageTray;
|
const MessageTray = imports.ui.messageTray;
|
||||||
const NotificationDaemon = imports.ui.notificationDaemon;
|
|
||||||
const PanelMenu = imports.ui.panelMenu;
|
const PanelMenu = imports.ui.panelMenu;
|
||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
|
|
||||||
@ -55,13 +54,13 @@ const Indicator = new Lang.Class({
|
|||||||
this._item.actor.visible = on;
|
this._item.actor.visible = on;
|
||||||
|
|
||||||
if (on)
|
if (on)
|
||||||
this._item.status.text = ngettext("%d Connected Device", "%d Connected Devices").format(nDevices);
|
this._item.status.text = ngettext("%d Connected Device", "%d Connected Devices", nDevices).format(nDevices);
|
||||||
},
|
},
|
||||||
|
|
||||||
_ensureSource: function() {
|
_ensureSource: function() {
|
||||||
if (!this._source) {
|
if (!this._source) {
|
||||||
this._source = new MessageTray.Source(_("Bluetooth"), 'bluetooth-active');
|
this._source = new MessageTray.Source(_("Bluetooth"), 'bluetooth-active');
|
||||||
this._source.policy = new NotificationDaemon.NotificationApplicationPolicy('gnome-bluetooth-panel');
|
this._source.policy = new MessageTray.NotificationApplicationPolicy('gnome-bluetooth-panel');
|
||||||
Main.messageTray.add(this._source);
|
Main.messageTray.add(this._source);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -106,8 +105,8 @@ const AuthNotification = new Lang.Class({
|
|||||||
this._devicePath = device_path;
|
this._devicePath = device_path;
|
||||||
this.addBody(_("Device %s wants to pair with this computer").format(long_name));
|
this.addBody(_("Device %s wants to pair with this computer").format(long_name));
|
||||||
|
|
||||||
this.addButton('allow', _("Allow"));
|
this.addAction('allow', _("Allow"));
|
||||||
this.addButton('deny', _("Deny"));
|
this.addAction('deny', _("Deny"));
|
||||||
|
|
||||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
||||||
if (action == 'allow')
|
if (action == 'allow')
|
||||||
@ -134,9 +133,9 @@ const AuthServiceNotification = new Lang.Class({
|
|||||||
this._devicePath = device_path;
|
this._devicePath = device_path;
|
||||||
this.addBody(_("Device %s wants access to the service '%s'").format(long_name, uuid));
|
this.addBody(_("Device %s wants access to the service '%s'").format(long_name, uuid));
|
||||||
|
|
||||||
this.addButton('always-grant', _("Always grant access"));
|
this.addAction('always-grant', _("Always grant access"));
|
||||||
this.addButton('grant', _("Grant this time only"));
|
this.addAction('grant', _("Grant this time only"));
|
||||||
this.addButton('reject', _("Reject"));
|
this.addAction('reject', _("Reject"));
|
||||||
|
|
||||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
||||||
switch (action) {
|
switch (action) {
|
||||||
@ -173,8 +172,8 @@ const ConfirmNotification = new Lang.Class({
|
|||||||
this.addBody(_("Please confirm whether the Passkey '%06d' matches the one on the device.").format(pin));
|
this.addBody(_("Please confirm whether the Passkey '%06d' matches the one on the device.").format(pin));
|
||||||
|
|
||||||
/* Translators: this is the verb, not the noun */
|
/* Translators: this is the verb, not the noun */
|
||||||
this.addButton('matches', _("Matches"));
|
this.addAction('matches', _("Matches"));
|
||||||
this.addButton('does-not-match', _("Does not match"));
|
this.addAction('does-not-match', _("Does not match"));
|
||||||
|
|
||||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
||||||
if (action == 'matches')
|
if (action == 'matches')
|
||||||
@ -208,47 +207,48 @@ const PinNotification = new Lang.Class({
|
|||||||
let key = event.get_key_symbol();
|
let key = event.get_key_symbol();
|
||||||
if (key == Clutter.KEY_Return) {
|
if (key == Clutter.KEY_Return) {
|
||||||
if (this._canActivateOkButton())
|
if (this._canActivateOkButton())
|
||||||
this.emit('action-invoked', 'ok');
|
this._ok();
|
||||||
return true;
|
return true;
|
||||||
} else if (key == Clutter.KEY_Escape) {
|
} else if (key == Clutter.KEY_Escape) {
|
||||||
this.emit('action-invoked', 'cancel');
|
this._cancel();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}));
|
}));
|
||||||
this.addActor(this._entry);
|
this.addActor(this._entry);
|
||||||
|
|
||||||
this.addButton('ok', _("OK"));
|
let okButton = this.addAction(_("OK"), Lang.bind(this, this._ok));
|
||||||
this.addButton('cancel', _("Cancel"));
|
this.addAction(_("Cancel"), Lang.bind(this, this._cancel));
|
||||||
|
|
||||||
this.setButtonSensitive('ok', this._canActivateOkButton());
|
okButton.reactive = this._canActivateOkButton();
|
||||||
this._entry.clutter_text.connect('text-changed', Lang.bind(this,
|
this._entry.clutter_text.connect('text-changed', Lang.bind(this, function() {
|
||||||
function() {
|
okButton.reactive = this._canActivateOkButton();
|
||||||
this.setButtonSensitive('ok', this._canActivateOkButton());
|
|
||||||
}));
|
|
||||||
|
|
||||||
this.connect('action-invoked', Lang.bind(this, function(self, action) {
|
|
||||||
if (action == 'ok') {
|
|
||||||
if (this._numeric) {
|
|
||||||
let num = parseInt(this._entry.text);
|
|
||||||
if (isNaN(num)) {
|
|
||||||
// user reply was empty, or was invalid
|
|
||||||
// cancel the operation
|
|
||||||
num = -1;
|
|
||||||
}
|
|
||||||
this._applet.agent_reply_passkey(this._devicePath, num);
|
|
||||||
} else
|
|
||||||
this._applet.agent_reply_pincode(this._devicePath, this._entry.text);
|
|
||||||
} else {
|
|
||||||
if (this._numeric)
|
|
||||||
this._applet.agent_reply_passkey(this._devicePath, -1);
|
|
||||||
else
|
|
||||||
this._applet.agent_reply_pincode(this._devicePath, null);
|
|
||||||
}
|
|
||||||
this.destroy();
|
|
||||||
}));
|
}));
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_ok: function() {
|
||||||
|
if (this._numeric) {
|
||||||
|
let num = parseInt(this._entry.text);
|
||||||
|
if (isNaN(num)) {
|
||||||
|
// user reply was empty, or was invalid
|
||||||
|
// cancel the operation
|
||||||
|
num = -1;
|
||||||
|
}
|
||||||
|
this._applet.agent_reply_passkey(this._devicePath, num);
|
||||||
|
} else {
|
||||||
|
this._applet.agent_reply_pincode(this._devicePath, this._entry.text);
|
||||||
|
}
|
||||||
|
this.destroy();
|
||||||
|
},
|
||||||
|
|
||||||
|
_cancel: function() {
|
||||||
|
if (this._numeric)
|
||||||
|
this._applet.agent_reply_passkey(this._devicePath, -1);
|
||||||
|
else
|
||||||
|
this._applet.agent_reply_pincode(this._devicePath, null);
|
||||||
|
this.destroy();
|
||||||
|
},
|
||||||
|
|
||||||
_canActivateOkButton: function() {
|
_canActivateOkButton: function() {
|
||||||
// PINs have a fixed length of 6
|
// PINs have a fixed length of 6
|
||||||
if (this._numeric)
|
if (this._numeric)
|
||||||
|
@ -11,9 +11,11 @@ const Slider = imports.ui.slider;
|
|||||||
const BUS_NAME = 'org.gnome.SettingsDaemon.Power';
|
const BUS_NAME = 'org.gnome.SettingsDaemon.Power';
|
||||||
const OBJECT_PATH = '/org/gnome/SettingsDaemon/Power';
|
const OBJECT_PATH = '/org/gnome/SettingsDaemon/Power';
|
||||||
|
|
||||||
const BrightnessInterface = <interface name="org.gnome.SettingsDaemon.Power.Screen">
|
const BrightnessInterface = '<node> \
|
||||||
<property name='Brightness' type='i' access='readwrite'/>
|
<interface name="org.gnome.SettingsDaemon.Power.Screen"> \
|
||||||
</interface>;
|
<property name="Brightness" type="i" access="readwrite"/> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const BrightnessProxy = Gio.DBusProxy.makeProxyWrapper(BrightnessInterface);
|
const BrightnessProxy = Gio.DBusProxy.makeProxyWrapper(BrightnessInterface);
|
||||||
|
|
||||||
|
@ -41,11 +41,13 @@ const MAX_INPUT_SOURCE_ACTIVATION_TIME = 4000; // ms
|
|||||||
const BUS_NAME = 'org.gnome.SettingsDaemon.Keyboard';
|
const BUS_NAME = 'org.gnome.SettingsDaemon.Keyboard';
|
||||||
const OBJECT_PATH = '/org/gnome/SettingsDaemon/Keyboard';
|
const OBJECT_PATH = '/org/gnome/SettingsDaemon/Keyboard';
|
||||||
|
|
||||||
const KeyboardManagerInterface = <interface name="org.gnome.SettingsDaemon.Keyboard">
|
const KeyboardManagerInterface = '<node> \
|
||||||
<method name="SetInputSource">
|
<interface name="org.gnome.SettingsDaemon.Keyboard"> \
|
||||||
<arg type="u" direction="in" />
|
<method name="SetInputSource"> \
|
||||||
</method>
|
<arg type="u" direction="in" /> \
|
||||||
</interface>;
|
</method> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const KeyboardManagerProxy = Gio.DBusProxy.makeProxyWrapper(KeyboardManagerInterface);
|
const KeyboardManagerProxy = Gio.DBusProxy.makeProxyWrapper(KeyboardManagerInterface);
|
||||||
|
|
||||||
@ -339,9 +341,7 @@ const InputSourceIndicator = new Lang.Class({
|
|||||||
|
|
||||||
this._hbox = new St.BoxLayout({ style_class: 'panel-status-menu-box' });
|
this._hbox = new St.BoxLayout({ style_class: 'panel-status-menu-box' });
|
||||||
this._hbox.add_child(this._container);
|
this._hbox.add_child(this._container);
|
||||||
this._hbox.add_child(new St.Label({ text: '\u25BE',
|
this._hbox.add_child(PopupMenu.unicodeArrow(St.Side.BOTTOM));
|
||||||
y_expand: true,
|
|
||||||
y_align: Clutter.ActorAlign.CENTER }));
|
|
||||||
|
|
||||||
this.actor.add_child(this._hbox);
|
this.actor.add_child(this._hbox);
|
||||||
this.actor.add_style_class_name('panel-status-button');
|
this.actor.add_style_class_name('panel-status-button');
|
||||||
|
@ -16,7 +16,6 @@ const Main = imports.ui.main;
|
|||||||
const PanelMenu = imports.ui.panelMenu;
|
const PanelMenu = imports.ui.panelMenu;
|
||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
const MessageTray = imports.ui.messageTray;
|
const MessageTray = imports.ui.messageTray;
|
||||||
const NotificationDaemon = imports.ui.notificationDaemon;
|
|
||||||
const ModalDialog = imports.ui.modalDialog;
|
const ModalDialog = imports.ui.modalDialog;
|
||||||
const ModemManager = imports.misc.modemManager;
|
const ModemManager = imports.misc.modemManager;
|
||||||
const Util = imports.misc.util;
|
const Util = imports.misc.util;
|
||||||
@ -73,6 +72,27 @@ function ssidToLabel(ssid) {
|
|||||||
return label;
|
return label;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function ensureActiveConnectionProps(active, settings) {
|
||||||
|
if (!active._connection) {
|
||||||
|
active._connection = settings.get_connection_by_path(active.connection);
|
||||||
|
|
||||||
|
// This list is guaranteed to have only one device in it.
|
||||||
|
let device = active.get_devices()[0]._delegate;
|
||||||
|
active._primaryDevice = device;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function createSettingsAction(label, device) {
|
||||||
|
let item = new PopupMenu.PopupMenuItem(label);
|
||||||
|
|
||||||
|
item.connect('activate', function() {
|
||||||
|
Util.spawnApp(['gnome-control-center', 'network', 'show-device',
|
||||||
|
device.get_path()]);
|
||||||
|
});
|
||||||
|
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
|
||||||
const NMConnectionItem = new Lang.Class({
|
const NMConnectionItem = new Lang.Class({
|
||||||
Name: 'NMConnectionItem',
|
Name: 'NMConnectionItem',
|
||||||
|
|
||||||
@ -170,8 +190,7 @@ const NMConnectionSection = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
destroy: function() {
|
destroy: function() {
|
||||||
this.statusItem.destroy();
|
this.item.destroy();
|
||||||
this.section.destroy();
|
|
||||||
},
|
},
|
||||||
|
|
||||||
_sync: function() {
|
_sync: function() {
|
||||||
@ -268,12 +287,12 @@ const NMConnectionDevice = new Lang.Class({
|
|||||||
Extends: NMConnectionSection,
|
Extends: NMConnectionSection,
|
||||||
Abstract: true,
|
Abstract: true,
|
||||||
|
|
||||||
_init: function(client, device) {
|
_init: function(client, device, settings) {
|
||||||
this.parent(client);
|
this.parent(client);
|
||||||
this._device = device;
|
this._device = device;
|
||||||
|
this._settings = settings;
|
||||||
|
|
||||||
this._autoConnectItem = this.item.menu.addAction(_("Connect"), Lang.bind(this, this._autoConnect));
|
this._autoConnectItem = this.item.menu.addAction(_("Connect"), Lang.bind(this, this._autoConnect));
|
||||||
this.item.menu.addSettingsAction(_("Network Settings"), 'gnome-network-panel.desktop');
|
|
||||||
|
|
||||||
this._stateChangedId = this._device.connect('state-changed', Lang.bind(this, this._deviceStateChanged));
|
this._stateChangedId = this._device.connect('state-changed', Lang.bind(this, this._deviceStateChanged));
|
||||||
this._activeConnectionChangedId = this._device.connect('notify::active-connection', Lang.bind(this, this._activeConnectionChanged));
|
this._activeConnectionChangedId = this._device.connect('notify::active-connection', Lang.bind(this, this._activeConnectionChanged));
|
||||||
@ -301,6 +320,7 @@ const NMConnectionDevice = new Lang.Class({
|
|||||||
this._activeConnection = this._device.active_connection;
|
this._activeConnection = this._device.active_connection;
|
||||||
|
|
||||||
if (this._activeConnection) {
|
if (this._activeConnection) {
|
||||||
|
ensureActiveConnectionProps(this._activeConnection, this._settings);
|
||||||
let item = this._connectionItems.get(this._activeConnection._connection.get_uuid());
|
let item = this._connectionItems.get(this._activeConnection._connection.get_uuid());
|
||||||
item.setActiveConnection(this._activeConnection);
|
item.setActiveConnection(this._activeConnection);
|
||||||
}
|
}
|
||||||
@ -356,8 +376,9 @@ const NMConnectionDevice = new Lang.Class({
|
|||||||
|
|
||||||
switch(this._device.state) {
|
switch(this._device.state) {
|
||||||
case NetworkManager.DeviceState.DISCONNECTED:
|
case NetworkManager.DeviceState.DISCONNECTED:
|
||||||
|
return _("Off");
|
||||||
case NetworkManager.DeviceState.ACTIVATED:
|
case NetworkManager.DeviceState.ACTIVATED:
|
||||||
return '';
|
return this.parent();
|
||||||
case NetworkManager.DeviceState.UNMANAGED:
|
case NetworkManager.DeviceState.UNMANAGED:
|
||||||
/* Translators: this is for network devices that are physically present but are not
|
/* Translators: this is for network devices that are physically present but are not
|
||||||
under NetworkManager's control (and thus cannot be used in the menu) */
|
under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
@ -399,8 +420,11 @@ const NMDeviceModem = new Lang.Class({
|
|||||||
Extends: NMConnectionDevice,
|
Extends: NMConnectionDevice,
|
||||||
category: NMConnectionCategory.WWAN,
|
category: NMConnectionCategory.WWAN,
|
||||||
|
|
||||||
_init: function(client, device) {
|
_init: function(client, device, settings) {
|
||||||
this.parent(client, device);
|
this.parent(client, device, settings);
|
||||||
|
|
||||||
|
this.item.menu.addMenuItem(createSettingsAction(_("Mobile Broadband Settings"), device));
|
||||||
|
|
||||||
this._mobileDevice = null;
|
this._mobileDevice = null;
|
||||||
|
|
||||||
let capabilities = device.current_capabilities;
|
let capabilities = device.current_capabilities;
|
||||||
@ -414,16 +438,7 @@ const NMDeviceModem = new Lang.Class({
|
|||||||
this._mobileDevice = new ModemManager.ModemGsm(device.udi);
|
this._mobileDevice = new ModemManager.ModemGsm(device.udi);
|
||||||
|
|
||||||
if (this._mobileDevice) {
|
if (this._mobileDevice) {
|
||||||
this._operatorNameId = this._mobileDevice.connect('notify::operator-name', Lang.bind(this, function() {
|
this._operatorNameId = this._mobileDevice.connect('notify::operator-name', Lang.bind(this, this._sync));
|
||||||
if (this._operatorItem) {
|
|
||||||
let name = this._mobileDevice.operator_name;
|
|
||||||
if (name) {
|
|
||||||
this._operatorItem.label.text = name;
|
|
||||||
this._operatorItem.actor.show();
|
|
||||||
} else
|
|
||||||
this._operatorItem.actor.hide();
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
this._signalQualityId = this._mobileDevice.connect('notify::signal-quality', Lang.bind(this, function() {
|
this._signalQualityId = this._mobileDevice.connect('notify::signal-quality', Lang.bind(this, function() {
|
||||||
this.emit('icon-changed');
|
this.emit('icon-changed');
|
||||||
}));
|
}));
|
||||||
@ -448,6 +463,20 @@ const NMDeviceModem = new Lang.Class({
|
|||||||
this.parent();
|
this.parent();
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_getStatus: function() {
|
||||||
|
if (!this._client.wwan_hardware_enabled)
|
||||||
|
return _("Hardware Disabled");
|
||||||
|
else if (!this._client.wwan_enabled)
|
||||||
|
/* Translators: this is for a network device that cannot be activated
|
||||||
|
because it's disabled by rfkill (airplane mode) */
|
||||||
|
return _("Disabled");
|
||||||
|
else if (this._device.state == NetworkManager.DeviceState.ACTIVATED &&
|
||||||
|
this._mobileDevice && this._mobileDevice.operator_name)
|
||||||
|
return this._mobileDevice.operator_name;
|
||||||
|
else
|
||||||
|
return this.parent();
|
||||||
|
},
|
||||||
|
|
||||||
_getMenuIcon: function() {
|
_getMenuIcon: function() {
|
||||||
if (this._device.active_connection)
|
if (this._device.active_connection)
|
||||||
return this.getIndicatorIcon();
|
return this.getIndicatorIcon();
|
||||||
@ -477,6 +506,12 @@ const NMDeviceBluetooth = new Lang.Class({
|
|||||||
Extends: NMConnectionDevice,
|
Extends: NMConnectionDevice,
|
||||||
category: NMConnectionCategory.WWAN,
|
category: NMConnectionCategory.WWAN,
|
||||||
|
|
||||||
|
_init: function(client, device, settings) {
|
||||||
|
this.parent(client, device, settings);
|
||||||
|
|
||||||
|
this.item.menu.addMenuItem(createSettingsAction(_("Mobile Broadband Settings"), device));
|
||||||
|
},
|
||||||
|
|
||||||
_autoConnect: function() {
|
_autoConnect: function() {
|
||||||
// FIXME: DUN devices are configured like modems, so
|
// FIXME: DUN devices are configured like modems, so
|
||||||
// We need to spawn the mobile wizard
|
// We need to spawn the mobile wizard
|
||||||
@ -514,31 +549,30 @@ const NMWirelessDialogItem = new Lang.Class({
|
|||||||
this._network = network;
|
this._network = network;
|
||||||
this._ap = network.accessPoints[0];
|
this._ap = network.accessPoints[0];
|
||||||
|
|
||||||
this.actor = new St.Button({ style_class: 'nm-dialog-item',
|
this.actor = new St.BoxLayout({ style_class: 'nm-dialog-item',
|
||||||
can_focus: true,
|
can_focus: true,
|
||||||
x_fill: true });
|
reactive: true });
|
||||||
this.actor.connect('key-focus-in', Lang.bind(this, function() {
|
this.actor.connect('key-focus-in', Lang.bind(this, function() {
|
||||||
this.emit('selected');
|
this.emit('selected');
|
||||||
}));
|
}));
|
||||||
this.actor.connect('clicked', Lang.bind(this, function() {
|
let action = new Clutter.ClickAction();
|
||||||
|
action.connect('clicked', Lang.bind(this, function() {
|
||||||
this.actor.grab_key_focus();
|
this.actor.grab_key_focus();
|
||||||
}));
|
}));
|
||||||
|
this.actor.add_action(action);
|
||||||
this._content = new St.BoxLayout({ style_class: 'nm-dialog-item-box' });
|
|
||||||
this.actor.set_child(this._content);
|
|
||||||
|
|
||||||
let title = ssidToLabel(this._ap.get_ssid());
|
let title = ssidToLabel(this._ap.get_ssid());
|
||||||
this._label = new St.Label({ text: title });
|
this._label = new St.Label({ text: title });
|
||||||
|
|
||||||
this.actor.label_actor = this._label;
|
this.actor.label_actor = this._label;
|
||||||
this._content.add(this._label, { x_align: St.Align.START });
|
this.actor.add(this._label, { x_align: St.Align.START });
|
||||||
|
|
||||||
this._selectedIcon = new St.Icon({ style_class: 'nm-dialog-icon',
|
this._selectedIcon = new St.Icon({ style_class: 'nm-dialog-icon',
|
||||||
icon_name: 'object-select-symbolic' });
|
icon_name: 'object-select-symbolic' });
|
||||||
this._content.add(this._selectedIcon);
|
this.actor.add(this._selectedIcon);
|
||||||
|
|
||||||
this._icons = new St.BoxLayout({ style_class: 'nm-dialog-icons' });
|
this._icons = new St.BoxLayout({ style_class: 'nm-dialog-icons' });
|
||||||
this._content.add(this._icons, { expand: true, x_fill: false, x_align: St.Align.END });
|
this.actor.add(this._icons, { expand: true, x_fill: false, x_align: St.Align.END });
|
||||||
|
|
||||||
this._secureIcon = new St.Icon({ style_class: 'nm-dialog-icon' });
|
this._secureIcon = new St.Icon({ style_class: 'nm-dialog-icon' });
|
||||||
if (this._ap._secType != NMAccessPointSecurity.NONE)
|
if (this._ap._secType != NMAccessPointSecurity.NONE)
|
||||||
@ -547,18 +581,24 @@ const NMWirelessDialogItem = new Lang.Class({
|
|||||||
|
|
||||||
this._signalIcon = new St.Icon({ style_class: 'nm-dialog-icon' });
|
this._signalIcon = new St.Icon({ style_class: 'nm-dialog-icon' });
|
||||||
this._icons.add_actor(this._signalIcon);
|
this._icons.add_actor(this._signalIcon);
|
||||||
|
|
||||||
|
this._sync();
|
||||||
|
},
|
||||||
|
|
||||||
|
_sync: function() {
|
||||||
|
this._signalIcon.icon_name = this._getSignalIcon();
|
||||||
},
|
},
|
||||||
|
|
||||||
updateBestAP: function(ap) {
|
updateBestAP: function(ap) {
|
||||||
this._ap = ap;
|
this._ap = ap;
|
||||||
this._signalIcon.icon_name = this._getIcon();
|
this._sync();
|
||||||
},
|
},
|
||||||
|
|
||||||
setActive: function(isActive) {
|
setActive: function(isActive) {
|
||||||
this._selectedIcon.opacity = isActive ? 255 : 0;
|
this._selectedIcon.opacity = isActive ? 255 : 0;
|
||||||
},
|
},
|
||||||
|
|
||||||
_getIcon: function() {
|
_getSignalIcon: function() {
|
||||||
if (this._ap.mode == NM80211Mode.ADHOC)
|
if (this._ap.mode == NM80211Mode.ADHOC)
|
||||||
return 'network-workgroup-symbolic';
|
return 'network-workgroup-symbolic';
|
||||||
else
|
else
|
||||||
@ -915,13 +955,13 @@ const NMWirelessDialog = new Lang.Class({
|
|||||||
|
|
||||||
_selectNetwork: function(network) {
|
_selectNetwork: function(network) {
|
||||||
if (this._selectedNetwork)
|
if (this._selectedNetwork)
|
||||||
this._selectedNetwork.item.actor.checked = false;
|
this._selectedNetwork.item.actor.remove_style_pseudo_class('selected');
|
||||||
|
|
||||||
this._selectedNetwork = network;
|
this._selectedNetwork = network;
|
||||||
this._updateSensitivity();
|
this._updateSensitivity();
|
||||||
|
|
||||||
if (this._selectedNetwork)
|
if (this._selectedNetwork)
|
||||||
this._selectedNetwork.item.actor.checked = true;
|
this._selectedNetwork.item.actor.add_style_pseudo_class('selected');
|
||||||
},
|
},
|
||||||
|
|
||||||
_createNetworkItem: function(network) {
|
_createNetworkItem: function(network) {
|
||||||
@ -952,9 +992,10 @@ const NMDeviceWireless = new Lang.Class({
|
|||||||
this._toggleItem.connect('activate', Lang.bind(this, this._toggleWifi));
|
this._toggleItem.connect('activate', Lang.bind(this, this._toggleWifi));
|
||||||
this.item.menu.addMenuItem(this._toggleItem);
|
this.item.menu.addMenuItem(this._toggleItem);
|
||||||
|
|
||||||
this.item.menu.addSettingsAction(_("Network Settings"), 'gnome-network-panel.desktop');
|
this.item.menu.addMenuItem(createSettingsAction(_("Wi-Fi Settings"), device));
|
||||||
|
|
||||||
this._wirelessEnabledChangedId = this._device.connect('notify::wireless-enabled', Lang.bind(this, this._sync));
|
this._wirelessEnabledChangedId = this._client.connect('notify::wireless-enabled', Lang.bind(this, this._sync));
|
||||||
|
this._wirelessHwEnabledChangedId = this._client.connect('notify::wireless-hardware-enabled', Lang.bind(this, this._sync));
|
||||||
this._activeApChangedId = this._device.connect('notify::active-access-point', Lang.bind(this, this._activeApChanged));
|
this._activeApChangedId = this._device.connect('notify::active-access-point', Lang.bind(this, this._activeApChanged));
|
||||||
this._stateChangedId = this._device.connect('state-changed', Lang.bind(this, this._deviceStateChanged));
|
this._stateChangedId = this._device.connect('state-changed', Lang.bind(this, this._deviceStateChanged));
|
||||||
|
|
||||||
@ -974,6 +1015,14 @@ const NMDeviceWireless = new Lang.Class({
|
|||||||
this._activeAccessPoint.disconnect(this._strengthChangedId);
|
this._activeAccessPoint.disconnect(this._strengthChangedId);
|
||||||
this._strengthChangedId = 0;
|
this._strengthChangedId = 0;
|
||||||
}
|
}
|
||||||
|
if (this._wirelessEnabledChangedId) {
|
||||||
|
this._client.disconnect(this._wirelessEnabledChangedId);
|
||||||
|
this._wirelessEnabledChangedId = 0;
|
||||||
|
}
|
||||||
|
if (this._wirelessHwEnabledChangedId) {
|
||||||
|
this._client.disconnect(this._wirelessHwEnabledChangedId);
|
||||||
|
this._wirelessHwEnabledChangedId = 0;
|
||||||
|
}
|
||||||
|
|
||||||
this.item.destroy();
|
this.item.destroy();
|
||||||
},
|
},
|
||||||
@ -1032,6 +1081,7 @@ const NMDeviceWireless = new Lang.Class({
|
|||||||
|
|
||||||
_sync: function() {
|
_sync: function() {
|
||||||
this._toggleItem.label.text = this._client.wireless_enabled ? _("Turn Off") : _("Turn On");
|
this._toggleItem.label.text = this._client.wireless_enabled ? _("Turn Off") : _("Turn On");
|
||||||
|
this._toggleItem.actor.visible = this._client.wireless_hardware_enabled;
|
||||||
|
|
||||||
this.item.status.text = this._getStatus();
|
this.item.status.text = this._getStatus();
|
||||||
this.item.icon.icon_name = this._getMenuIcon();
|
this.item.icon.icon_name = this._getMenuIcon();
|
||||||
@ -1045,10 +1095,17 @@ const NMDeviceWireless = new Lang.Class({
|
|||||||
|
|
||||||
_getStatus: function() {
|
_getStatus: function() {
|
||||||
let ap = this._device.active_access_point;
|
let ap = this._device.active_access_point;
|
||||||
if (!ap)
|
|
||||||
return _("Off"); // XXX -- interpret actual status
|
|
||||||
|
|
||||||
return ssidToLabel(ap.get_ssid());
|
if (ap)
|
||||||
|
return ssidToLabel(ap.get_ssid());
|
||||||
|
else if (!this._client.wireless_hardware_enabled)
|
||||||
|
return _("Hardware Disabled");
|
||||||
|
else if (!this._client.wireless_enabled)
|
||||||
|
return _("Off");
|
||||||
|
else if (this._device.state == NetworkManager.DeviceState.DISCONNECTED)
|
||||||
|
return _("Not Connected");
|
||||||
|
else
|
||||||
|
return '';
|
||||||
},
|
},
|
||||||
|
|
||||||
_getMenuIcon: function() {
|
_getMenuIcon: function() {
|
||||||
@ -1059,7 +1116,8 @@ const NMDeviceWireless = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
getIndicatorIcon: function() {
|
getIndicatorIcon: function() {
|
||||||
if (this._device.active_connection.state == NetworkManager.ActiveConnectionState.ACTIVATING)
|
if (this._device.state >= NetworkManager.DeviceState.PREPARE &&
|
||||||
|
this._device.state < NetworkManager.DeviceState.ACTIVATED)
|
||||||
return 'network-wireless-acquiring-symbolic';
|
return 'network-wireless-acquiring-symbolic';
|
||||||
|
|
||||||
let ap = this._device.active_access_point;
|
let ap = this._device.active_access_point;
|
||||||
@ -1117,6 +1175,7 @@ const NMVPNConnectionItem = new Lang.Class({
|
|||||||
this.emit('activation-failed', reason);
|
this.emit('activation-failed', reason);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.emit('icon-changed');
|
||||||
this.parent();
|
this.parent();
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -1306,7 +1365,7 @@ const NMApplet = new Lang.Class({
|
|||||||
if (!this._source) {
|
if (!this._source) {
|
||||||
this._source = new MessageTray.Source(_("Network Manager"),
|
this._source = new MessageTray.Source(_("Network Manager"),
|
||||||
'network-transmit-receive');
|
'network-transmit-receive');
|
||||||
this._source.policy = new NotificationDaemon.NotificationApplicationPolicy('gnome-network-panel');
|
this._source.policy = new MessageTray.NotificationApplicationPolicy('gnome-network-panel');
|
||||||
|
|
||||||
this._source.connect('destroy', Lang.bind(this, function() {
|
this._source.connect('destroy', Lang.bind(this, function() {
|
||||||
this._source = null;
|
this._source = null;
|
||||||
@ -1418,28 +1477,18 @@ const NMApplet = new Lang.Class({
|
|||||||
devices.splice(pos, 1);
|
devices.splice(pos, 1);
|
||||||
},
|
},
|
||||||
|
|
||||||
_ensureActiveConnectionProps: function(a) {
|
|
||||||
if (!a._connection) {
|
|
||||||
a._connection = this._settings.get_connection_by_path(a.connection);
|
|
||||||
|
|
||||||
// This list is guaranteed to have only one device in it.
|
|
||||||
let device = a.get_devices()[0]._delegate;
|
|
||||||
a._primaryDevice = device;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
_getMainConnection: function() {
|
_getMainConnection: function() {
|
||||||
let connection;
|
let connection;
|
||||||
|
|
||||||
connection = this._client.get_primary_connection();
|
connection = this._client.get_primary_connection();
|
||||||
if (connection) {
|
if (connection) {
|
||||||
this._ensureActiveConnectionProps(connection);
|
ensureActiveConnectionProps(connection, this._settings);
|
||||||
return connection;
|
return connection;
|
||||||
}
|
}
|
||||||
|
|
||||||
connection = this._client.get_activating_connection();
|
connection = this._client.get_activating_connection();
|
||||||
if (connection) {
|
if (connection) {
|
||||||
this._ensureActiveConnectionProps(connection);
|
ensureActiveConnectionProps(connection, this._settings);
|
||||||
return connection;
|
return connection;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1475,7 +1524,7 @@ const NMApplet = new Lang.Class({
|
|||||||
return (a instanceof NMClient.VPNConnection);
|
return (a instanceof NMClient.VPNConnection);
|
||||||
});
|
});
|
||||||
vpnConnections.forEach(Lang.bind(this, function(a) {
|
vpnConnections.forEach(Lang.bind(this, function(a) {
|
||||||
this._ensureActiveConnectionProps(a);
|
ensureActiveConnectionProps(a, this._settings);
|
||||||
}));
|
}));
|
||||||
this._vpnSection.setActiveConnections(vpnConnections);
|
this._vpnSection.setActiveConnections(vpnConnections);
|
||||||
|
|
||||||
@ -1578,6 +1627,7 @@ const NMApplet = new Lang.Class({
|
|||||||
_updateIcon: function() {
|
_updateIcon: function() {
|
||||||
if (!this._client.networking_enabled || !this._mainConnection) {
|
if (!this._client.networking_enabled || !this._mainConnection) {
|
||||||
this._primaryIndicator.icon_name = 'network-offline-symbolic';
|
this._primaryIndicator.icon_name = 'network-offline-symbolic';
|
||||||
|
this._primaryIndicator.visible = true;
|
||||||
} else {
|
} else {
|
||||||
let dev = this._mainConnection._primaryDevice;
|
let dev = this._mainConnection._primaryDevice;
|
||||||
this._primaryIndicator.visible = (dev != null);
|
this._primaryIndicator.visible = (dev != null);
|
||||||
|
@ -8,20 +8,22 @@ const Main = imports.ui.main;
|
|||||||
const PanelMenu = imports.ui.panelMenu;
|
const PanelMenu = imports.ui.panelMenu;
|
||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
|
|
||||||
const BUS_NAME = 'org.gnome.SettingsDaemon.Power';
|
const BUS_NAME = 'org.freedesktop.UPower';
|
||||||
const OBJECT_PATH = '/org/gnome/SettingsDaemon/Power';
|
const OBJECT_PATH = '/org/freedesktop/UPower/devices/DisplayDevice';
|
||||||
|
|
||||||
const PowerManagerInterface = <interface name="org.gnome.SettingsDaemon.Power">
|
const DisplayDeviceInterface = '<node> \
|
||||||
<method name="GetDevices">
|
<interface name="org.freedesktop.UPower.Device"> \
|
||||||
<arg type="a(susdut)" direction="out" />
|
<property name="Type" type="u" access="read"/> \
|
||||||
</method>
|
<property name="State" type="u" access="read"/> \
|
||||||
<method name="GetPrimaryDevice">
|
<property name="Percentage" type="d" access="read"/> \
|
||||||
<arg type="(susdut)" direction="out" />
|
<property name="TimeToEmpty" type="x" access="read"/> \
|
||||||
</method>
|
<property name="TimeToFull" type="x" access="read"/> \
|
||||||
<property name="Icon" type="s" access="read" />
|
<property name="IsPresent" type="b" access="read"/> \
|
||||||
</interface>;
|
<property name="IconName" type="s" access="read"/> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const PowerManagerProxy = Gio.DBusProxy.makeProxyWrapper(PowerManagerInterface);
|
const PowerManagerProxy = Gio.DBusProxy.makeProxyWrapper(DisplayDeviceInterface);
|
||||||
|
|
||||||
const Indicator = new Lang.Class({
|
const Indicator = new Lang.Class({
|
||||||
Name: 'PowerIndicator',
|
Name: 'PowerIndicator',
|
||||||
@ -32,7 +34,7 @@ const Indicator = new Lang.Class({
|
|||||||
|
|
||||||
this._indicator = this._addIndicator();
|
this._indicator = this._addIndicator();
|
||||||
|
|
||||||
this._proxy = new PowerManagerProxy(Gio.DBus.session, BUS_NAME, OBJECT_PATH,
|
this._proxy = new PowerManagerProxy(Gio.DBus.system, BUS_NAME, OBJECT_PATH,
|
||||||
Lang.bind(this, function(proxy, error) {
|
Lang.bind(this, function(proxy, error) {
|
||||||
if (error) {
|
if (error) {
|
||||||
log(error.message);
|
log(error.message);
|
||||||
@ -43,7 +45,7 @@ const Indicator = new Lang.Class({
|
|||||||
this._sync();
|
this._sync();
|
||||||
}));
|
}));
|
||||||
|
|
||||||
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Battery"), true);
|
this._item = new PopupMenu.PopupSubMenuMenuItem("", true);
|
||||||
this._item.menu.addSettingsAction(_("Power Settings"), 'gnome-power-panel.desktop');
|
this._item.menu.addSettingsAction(_("Power Settings"), 'gnome-power-panel.desktop');
|
||||||
this.menu.addMenuItem(this._item);
|
this.menu.addMenuItem(this._item);
|
||||||
|
|
||||||
@ -56,11 +58,18 @@ const Indicator = new Lang.Class({
|
|||||||
this.menu.setSensitive(sensitive);
|
this.menu.setSensitive(sensitive);
|
||||||
},
|
},
|
||||||
|
|
||||||
_statusForDevice: function(device) {
|
_getStatus: function() {
|
||||||
let [device_id, device_type, icon, percentage, state, seconds] = device;
|
let seconds = 0;
|
||||||
|
|
||||||
if (state == UPower.DeviceState.FULLY_CHARGED)
|
if (this._proxy.State == UPower.DeviceState.FULLY_CHARGED)
|
||||||
return _("Fully Charged");
|
return _("Fully Charged");
|
||||||
|
else if (this._proxy.State == UPower.DeviceState.CHARGING)
|
||||||
|
seconds = this._proxy.TimeToFull;
|
||||||
|
else if (this._proxy.State == UPower.DeviceState.DISCHARGING)
|
||||||
|
seconds = this._proxy.TimeToEmpty;
|
||||||
|
// state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
||||||
|
else
|
||||||
|
return _("Estimating…");
|
||||||
|
|
||||||
let time = Math.round(seconds / 60);
|
let time = Math.round(seconds / 60);
|
||||||
if (time == 0) {
|
if (time == 0) {
|
||||||
@ -72,52 +81,43 @@ const Indicator = new Lang.Class({
|
|||||||
let minutes = time % 60;
|
let minutes = time % 60;
|
||||||
let hours = Math.floor(time / 60);
|
let hours = Math.floor(time / 60);
|
||||||
|
|
||||||
if (state == UPower.DeviceState.DISCHARGING) {
|
if (this._proxy.State == UPower.DeviceState.DISCHARGING) {
|
||||||
// Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
// Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
||||||
return _("%d\u2236%02d Remaining (%d%%)").format(hours, minutes, percentage);
|
return _("%d\u2236%02d Remaining (%d%%)").format(hours, minutes, this._proxy.Percentage);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state == UPower.DeviceState.CHARGING) {
|
if (this._proxy.State == UPower.DeviceState.CHARGING) {
|
||||||
// Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
// Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
||||||
return _("%d\u2236%02d Until Full (%d%%)").format(hours, minutes, percentage);
|
return _("%d\u2236%02d Until Full (%d%%)").format(hours, minutes, this._proxy.Percentage);
|
||||||
}
|
}
|
||||||
|
|
||||||
// state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
return null;
|
||||||
return _("Estimating…");
|
|
||||||
},
|
|
||||||
|
|
||||||
_syncStatusLabel: function() {
|
|
||||||
this._proxy.GetPrimaryDeviceRemote(Lang.bind(this, function(result, error) {
|
|
||||||
if (error) {
|
|
||||||
this._item.actor.hide();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
let [device] = result;
|
|
||||||
let [device_id, device_type] = device;
|
|
||||||
if (device_type == UPower.DeviceKind.BATTERY) {
|
|
||||||
this._item.status.text = this._statusForDevice(device);
|
|
||||||
this._item.actor.show();
|
|
||||||
} else {
|
|
||||||
this._item.actor.hide();
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
},
|
|
||||||
|
|
||||||
_syncIcon: function() {
|
|
||||||
let icon = this._proxy.Icon;
|
|
||||||
if (icon) {
|
|
||||||
let gicon = Gio.icon_new_for_string(icon);
|
|
||||||
this._indicator.gicon = gicon;
|
|
||||||
this._item.icon.gicon = gicon;
|
|
||||||
} else {
|
|
||||||
// If there's no battery, then we use the power icon.
|
|
||||||
this._indicator.icon_name = 'system-shutdown-symbolic';
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
_sync: function() {
|
_sync: function() {
|
||||||
this._syncIcon();
|
// Do we have batteries or a UPS?
|
||||||
this._syncStatusLabel();
|
let visible = this._proxy.IsPresent;
|
||||||
}
|
if (visible) {
|
||||||
|
this._item.actor.show();
|
||||||
|
} else {
|
||||||
|
// If there's no battery, then we use the power icon.
|
||||||
|
this._item.actor.hide();
|
||||||
|
this._indicator.icon_name = 'system-shutdown-symbolic';
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// The icons
|
||||||
|
let icon = this._proxy.IconName;
|
||||||
|
this._indicator.icon_name = icon;
|
||||||
|
this._item.icon.icon_name = icon;
|
||||||
|
|
||||||
|
// The status label
|
||||||
|
this._item.status.text = this._getStatus();
|
||||||
|
|
||||||
|
// The sub-menu heading
|
||||||
|
if (this._proxy.Type == UPower.DeviceKind.UPS)
|
||||||
|
this._item.label.text = _("UPS");
|
||||||
|
else
|
||||||
|
this._item.label.text = _("Battery");
|
||||||
|
},
|
||||||
});
|
});
|
||||||
|
@ -9,9 +9,11 @@ const PopupMenu = imports.ui.popupMenu;
|
|||||||
const BUS_NAME = 'org.gnome.SettingsDaemon.Rfkill';
|
const BUS_NAME = 'org.gnome.SettingsDaemon.Rfkill';
|
||||||
const OBJECT_PATH = '/org/gnome/SettingsDaemon/Rfkill';
|
const OBJECT_PATH = '/org/gnome/SettingsDaemon/Rfkill';
|
||||||
|
|
||||||
const RfkillManagerInterface = <interface name="org.gnome.SettingsDaemon.Rfkill">
|
const RfkillManagerInterface = '<node> \
|
||||||
<property name="AirplaneMode" type="b" access="readwrite" />
|
<interface name="org.gnome.SettingsDaemon.Rfkill"> \
|
||||||
</interface>;
|
<property name="AirplaneMode" type="b" access="readwrite" /> \
|
||||||
|
</interface> \
|
||||||
|
</node>';
|
||||||
|
|
||||||
const RfkillManagerProxy = Gio.DBusProxy.makeProxyWrapper(RfkillManagerInterface);
|
const RfkillManagerProxy = Gio.DBusProxy.makeProxyWrapper(RfkillManagerInterface);
|
||||||
|
|
||||||
|
@ -372,7 +372,11 @@ const Indicator = new Lang.Class({
|
|||||||
Main.overview.hide();
|
Main.overview.hide();
|
||||||
if (Main.screenShield)
|
if (Main.screenShield)
|
||||||
Main.screenShield.lock(false);
|
Main.screenShield.lock(false);
|
||||||
Gdm.goto_login_session_sync(null);
|
|
||||||
|
Clutter.threads_add_repaint_func_full(Clutter.RepaintFlags.POST_PAINT, function() {
|
||||||
|
Gdm.goto_login_session_sync(null);
|
||||||
|
return false;
|
||||||
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
_onQuitSessionActivate: function() {
|
_onQuitSessionActivate: function() {
|
||||||
|
@ -16,10 +16,8 @@ const OverviewControls = imports.ui.overviewControls;
|
|||||||
const Params = imports.misc.params;
|
const Params = imports.misc.params;
|
||||||
const RemoteSearch = imports.ui.remoteSearch;
|
const RemoteSearch = imports.ui.remoteSearch;
|
||||||
const Search = imports.ui.search;
|
const Search = imports.ui.search;
|
||||||
const SearchDisplay = imports.ui.searchDisplay;
|
|
||||||
const ShellEntry = imports.ui.shellEntry;
|
const ShellEntry = imports.ui.shellEntry;
|
||||||
const Tweener = imports.ui.tweener;
|
const Tweener = imports.ui.tweener;
|
||||||
const Wanda = imports.ui.wanda;
|
|
||||||
const WorkspacesView = imports.ui.workspacesView;
|
const WorkspacesView = imports.ui.workspacesView;
|
||||||
|
|
||||||
const SHELL_KEYBINDINGS_SCHEMA = 'org.gnome.shell.keybindings';
|
const SHELL_KEYBINDINGS_SCHEMA = 'org.gnome.shell.keybindings';
|
||||||
@ -103,7 +101,7 @@ const ViewSelector = new Lang.Class({
|
|||||||
this._appsPage = this._addPage(this.appDisplay.actor,
|
this._appsPage = this._addPage(this.appDisplay.actor,
|
||||||
_("Applications"), 'view-grid-symbolic');
|
_("Applications"), 'view-grid-symbolic');
|
||||||
|
|
||||||
this._searchResults = new SearchDisplay.SearchResults(this._searchSystem);
|
this._searchResults = new Search.SearchResults(this._searchSystem);
|
||||||
this._searchPage = this._addPage(this._searchResults.actor,
|
this._searchPage = this._addPage(this._searchResults.actor,
|
||||||
_("Search"), 'edit-find-symbolic',
|
_("Search"), 'edit-find-symbolic',
|
||||||
{ a11yFocus: this._entry });
|
{ a11yFocus: this._entry });
|
||||||
@ -114,8 +112,6 @@ const ViewSelector = new Lang.Class({
|
|||||||
this._searchSettings.connect('changed::sort-order', Lang.bind(this, this._reloadRemoteProviders));
|
this._searchSettings.connect('changed::sort-order', Lang.bind(this, this._reloadRemoteProviders));
|
||||||
|
|
||||||
// Default search providers
|
// Default search providers
|
||||||
// Wanda comes obviously first
|
|
||||||
this.addSearchProvider(new Wanda.WandaSearchProvider());
|
|
||||||
this.addSearchProvider(new AppDisplay.AppSearchProvider());
|
this.addSearchProvider(new AppDisplay.AppSearchProvider());
|
||||||
|
|
||||||
// Load remote search providers provided by applications
|
// Load remote search providers provided by applications
|
||||||
|
156
js/ui/wanda.js
@ -1,156 +0,0 @@
|
|||||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
|
||||||
|
|
||||||
const GdkPixbuf = imports.gi.GdkPixbuf;
|
|
||||||
const GLib = imports.gi.GLib;
|
|
||||||
const Gio = imports.gi.Gio;
|
|
||||||
const Lang = imports.lang;
|
|
||||||
const St = imports.gi.St;
|
|
||||||
|
|
||||||
const IconGrid = imports.ui.iconGrid;
|
|
||||||
const Layout = imports.ui.layout;
|
|
||||||
const Main = imports.ui.main;
|
|
||||||
const Panel = imports.ui.panel;
|
|
||||||
|
|
||||||
const FISH_NAME = 'wanda';
|
|
||||||
const FISH_FILENAME = 'wanda.png';
|
|
||||||
const FISH_SPEED = 300;
|
|
||||||
const FISH_COMMAND = 'fortune';
|
|
||||||
// The size of an individual frame in the animation
|
|
||||||
const FISH_HEIGHT = 22;
|
|
||||||
const FISH_WIDTH = 36;
|
|
||||||
|
|
||||||
const FISH_GROUP = 'Fish Animation';
|
|
||||||
|
|
||||||
const MAGIC_FISH_KEY = 'free the fish';
|
|
||||||
|
|
||||||
const WandaIcon = new Lang.Class({
|
|
||||||
Name: 'WandaIcon',
|
|
||||||
Extends: IconGrid.BaseIcon,
|
|
||||||
|
|
||||||
_init : function(fish, label, params) {
|
|
||||||
this.parent(label, params);
|
|
||||||
|
|
||||||
this._fish = fish;
|
|
||||||
this._imageFile = GLib.build_filenamev([global.datadir, fish + '.png']);
|
|
||||||
|
|
||||||
this._imgHeight = FISH_HEIGHT;
|
|
||||||
this._imgWidth = FISH_WIDTH;
|
|
||||||
},
|
|
||||||
|
|
||||||
createIcon: function(iconSize) {
|
|
||||||
this._animations = new Panel.Animation(this._imageFile, this._imgWidth, this._imgHeight, FISH_SPEED);
|
|
||||||
this._animations.play();
|
|
||||||
return this._animations.actor;
|
|
||||||
},
|
|
||||||
|
|
||||||
_createIconTexture: function(size) {
|
|
||||||
if (size == this.iconSize)
|
|
||||||
return;
|
|
||||||
|
|
||||||
this.parent(size);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const WandaIconBin = new Lang.Class({
|
|
||||||
Name: 'WandaIconBin',
|
|
||||||
|
|
||||||
_init: function(fish, label, params) {
|
|
||||||
this.actor = new St.Bin({ reactive: true,
|
|
||||||
track_hover: true });
|
|
||||||
this.icon = new WandaIcon(fish, label, params);
|
|
||||||
|
|
||||||
this.actor.child = this.icon.actor;
|
|
||||||
this.actor.label_actor = this.icon.label;
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
const FortuneDialog = new Lang.Class({
|
|
||||||
Name: 'FortuneDialog',
|
|
||||||
|
|
||||||
_init: function(name, command) {
|
|
||||||
let text;
|
|
||||||
|
|
||||||
try {
|
|
||||||
let [res, stdout, stderr, status] = GLib.spawn_command_line_sync(command);
|
|
||||||
text = String.fromCharCode.apply(null, stdout);
|
|
||||||
} catch(e) {
|
|
||||||
text = _("Sorry, no wisdom for you today:\n%s").format(e.message);
|
|
||||||
}
|
|
||||||
|
|
||||||
this._title = new St.Label({ style_class: 'prompt-dialog-headline',
|
|
||||||
text: _("%s the Oracle says").format(name) });
|
|
||||||
this._label = new St.Label({ style_class: 'prompt-dialog-description',
|
|
||||||
text: text });
|
|
||||||
this._label.clutter_text.line_wrap = true;
|
|
||||||
|
|
||||||
this._box = new St.BoxLayout({ vertical: true,
|
|
||||||
style_class: 'prompt-dialog' // this is just to force a reasonable width
|
|
||||||
});
|
|
||||||
this._box.add(this._title, { align: St.Align.MIDDLE });
|
|
||||||
this._box.add(this._label, { expand: true });
|
|
||||||
|
|
||||||
this._button = new St.Button({ button_mask: St.ButtonMask.ONE,
|
|
||||||
style_class: 'modal-dialog',
|
|
||||||
reactive: true });
|
|
||||||
this._button.connect('clicked', Lang.bind(this, this.destroy));
|
|
||||||
this._button.child = this._box;
|
|
||||||
|
|
||||||
this._bin = new St.Bin({ x_align: St.Align.MIDDLE,
|
|
||||||
y_align: St.Align.MIDDLE });
|
|
||||||
this._bin.add_constraint(new Layout.MonitorConstraint({ primary: true }));
|
|
||||||
this._bin.add_actor(this._button);
|
|
||||||
|
|
||||||
Main.layoutManager.addChrome(this._bin);
|
|
||||||
|
|
||||||
GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, 10, Lang.bind(this, this.destroy));
|
|
||||||
},
|
|
||||||
|
|
||||||
destroy: function() {
|
|
||||||
this._bin.destroy();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
function capitalize(str) {
|
|
||||||
return str[0].toUpperCase() + str.substring(1, str.length);
|
|
||||||
}
|
|
||||||
|
|
||||||
const WandaSearchProvider = new Lang.Class({
|
|
||||||
Name: 'WandaSearchProvider',
|
|
||||||
|
|
||||||
_init: function() {
|
|
||||||
this.id = 'wanda';
|
|
||||||
},
|
|
||||||
|
|
||||||
getResultMetas: function(fish, callback) {
|
|
||||||
callback([{ 'id': fish[0], // there may be many fish in the sea, but
|
|
||||||
// only one which speaks the truth!
|
|
||||||
'name': capitalize(fish[0]),
|
|
||||||
'createIcon': function(iconSize) {
|
|
||||||
return new St.Icon({ gicon: Gio.icon_new_for_string('face-smile'),
|
|
||||||
icon_size: iconSize });
|
|
||||||
}
|
|
||||||
}]);
|
|
||||||
},
|
|
||||||
|
|
||||||
getInitialResultSet: function(terms) {
|
|
||||||
if (terms.join(' ') == MAGIC_FISH_KEY) {
|
|
||||||
this.searchSystem.setResults(this, [ FISH_NAME ]);
|
|
||||||
} else {
|
|
||||||
this.searchSystem.setResults(this, []);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
getSubsearchResultSet: function(previousResults, terms) {
|
|
||||||
this.getInitialResultSet(terms);
|
|
||||||
},
|
|
||||||
|
|
||||||
activateResult: function(fish) {
|
|
||||||
if (this._dialog)
|
|
||||||
this._dialog.destroy();
|
|
||||||
this._dialog = new FortuneDialog(capitalize(fish), FISH_COMMAND);
|
|
||||||
},
|
|
||||||
|
|
||||||
createResultObject: function (resultMeta, terms) {
|
|
||||||
return new WandaIconBin(resultMeta.id, resultMeta.name);
|
|
||||||
}
|
|
||||||
});
|
|
@ -39,6 +39,9 @@ const WindowAttentionHandler = new Lang.Class({
|
|||||||
let [title, banner] = this._getTitleAndBanner(app, window);
|
let [title, banner] = this._getTitleAndBanner(app, window);
|
||||||
|
|
||||||
let notification = new MessageTray.Notification(source, title, banner);
|
let notification = new MessageTray.Notification(source, title, banner);
|
||||||
|
notification.connect('clicked', function() {
|
||||||
|
source.open();
|
||||||
|
});
|
||||||
notification.setForFeedback(true);
|
notification.setForFeedback(true);
|
||||||
|
|
||||||
source.notify(notification);
|
source.notify(notification);
|
||||||
@ -79,7 +82,7 @@ const Source = new Lang.Class({
|
|||||||
return this._app.create_icon_texture(size);
|
return this._app.create_icon_texture(size);
|
||||||
},
|
},
|
||||||
|
|
||||||
open : function(notification) {
|
open: function() {
|
||||||
Main.activateWindow(this._window);
|
Main.activateWindow(this._window);
|
||||||
this.destroy();
|
this.destroy();
|
||||||
}
|
}
|
||||||
|
@ -20,8 +20,6 @@ const FOCUS_ANIMATION_TIME = 0.15;
|
|||||||
|
|
||||||
const WINDOW_DND_SIZE = 256;
|
const WINDOW_DND_SIZE = 256;
|
||||||
|
|
||||||
const SCROLL_SCALE_AMOUNT = 100 / 5;
|
|
||||||
|
|
||||||
const WINDOW_CLONE_MAXIMUM_SCALE = 0.7;
|
const WINDOW_CLONE_MAXIMUM_SCALE = 0.7;
|
||||||
|
|
||||||
const LIGHTBOX_FADE_TIME = 0.1;
|
const LIGHTBOX_FADE_TIME = 0.1;
|
||||||
@ -345,19 +343,6 @@ const WindowOverlay = new Lang.Class({
|
|||||||
this._animateVisible();
|
this._animateVisible();
|
||||||
},
|
},
|
||||||
|
|
||||||
fadeIn: function() {
|
|
||||||
if (!this._hidden)
|
|
||||||
return;
|
|
||||||
|
|
||||||
this.show();
|
|
||||||
this.title.opacity = 0;
|
|
||||||
this._parentActor.raise_top();
|
|
||||||
Tweener.addTween(this.title,
|
|
||||||
{ opacity: 255,
|
|
||||||
time: CLOSE_BUTTON_FADE_TIME,
|
|
||||||
transition: 'easeOutQuad' });
|
|
||||||
},
|
|
||||||
|
|
||||||
chromeHeights: function () {
|
chromeHeights: function () {
|
||||||
return [Math.max(this.borderSize, this.closeButton.height - this.closeButton._overlap),
|
return [Math.max(this.borderSize, this.closeButton.height - this.closeButton._overlap),
|
||||||
this.title.height + this.title._spacing];
|
this.title.height + this.title._spacing];
|
||||||
@ -374,7 +359,6 @@ const WindowOverlay = new Lang.Class({
|
|||||||
let border = this.border;
|
let border = this.border;
|
||||||
|
|
||||||
Tweener.removeTweens(button);
|
Tweener.removeTweens(button);
|
||||||
Tweener.removeTweens(title);
|
|
||||||
Tweener.removeTweens(border);
|
Tweener.removeTweens(border);
|
||||||
|
|
||||||
let [cloneX, cloneY, cloneWidth, cloneHeight] = this._windowClone.slot;
|
let [cloneX, cloneY, cloneWidth, cloneHeight] = this._windowClone.slot;
|
||||||
@ -1144,7 +1128,7 @@ const Workspace = new Lang.Class({
|
|||||||
clone.actor.set_scale(scale, scale);
|
clone.actor.set_scale(scale, scale);
|
||||||
clone.actor.set_opacity(255);
|
clone.actor.set_opacity(255);
|
||||||
clone.overlay.relayout(false);
|
clone.overlay.relayout(false);
|
||||||
this._showWindowOverlay(clone, overlay, isOnCurrentWorkspace);
|
this._showWindowOverlay(clone, overlay);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -1174,23 +1158,19 @@ const Workspace = new Lang.Class({
|
|||||||
time: Overview.ANIMATION_TIME,
|
time: Overview.ANIMATION_TIME,
|
||||||
transition: 'easeOutQuad',
|
transition: 'easeOutQuad',
|
||||||
onComplete: Lang.bind(this, function() {
|
onComplete: Lang.bind(this, function() {
|
||||||
this._showWindowOverlay(clone, overlay, true);
|
this._showWindowOverlay(clone, overlay);
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
clone.overlay.relayout(true);
|
clone.overlay.relayout(true);
|
||||||
},
|
},
|
||||||
|
|
||||||
_showWindowOverlay: function(clone, overlay, fade) {
|
_showWindowOverlay: function(clone, overlay) {
|
||||||
if (clone.inDrag)
|
if (clone.inDrag)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (overlay) {
|
if (overlay && overlay._hidden)
|
||||||
if (fade)
|
|
||||||
overlay.fadeIn();
|
|
||||||
else
|
|
||||||
overlay.show();
|
overlay.show();
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
_delayedWindowRepositioning: function() {
|
_delayedWindowRepositioning: function() {
|
||||||
@ -1641,9 +1621,7 @@ const Workspace = new Lang.Class({
|
|||||||
metaWindow.move_to_monitor(this.monitorIndex);
|
metaWindow.move_to_monitor(this.monitorIndex);
|
||||||
|
|
||||||
let index = this.metaWorkspace ? this.metaWorkspace.index() : global.screen.get_active_workspace_index();
|
let index = this.metaWorkspace ? this.metaWorkspace.index() : global.screen.get_active_workspace_index();
|
||||||
metaWindow.change_workspace_by_index(index,
|
metaWindow.change_workspace_by_index(index, false);
|
||||||
false, // don't create workspace
|
|
||||||
time);
|
|
||||||
return true;
|
return true;
|
||||||
} else if (source.shellWorkspaceLaunch) {
|
} else if (source.shellWorkspaceLaunch) {
|
||||||
source.shellWorkspaceLaunch({ workspace: this.metaWorkspace ? this.metaWorkspace.index() : -1,
|
source.shellWorkspaceLaunch({ workspace: this.metaWorkspace ? this.metaWorkspace.index() : -1,
|
||||||
|
@ -507,9 +507,7 @@ const WorkspaceThumbnail = new Lang.Class({
|
|||||||
if (metaWindow.get_monitor() != this.monitorIndex)
|
if (metaWindow.get_monitor() != this.monitorIndex)
|
||||||
metaWindow.move_to_monitor(this.monitorIndex);
|
metaWindow.move_to_monitor(this.monitorIndex);
|
||||||
|
|
||||||
metaWindow.change_workspace_by_index(this.metaWorkspace.index(),
|
metaWindow.change_workspace_by_index(this.metaWorkspace.index(), false);
|
||||||
false, // don't create workspace
|
|
||||||
time);
|
|
||||||
return true;
|
return true;
|
||||||
} else if (source.shellWorkspaceLaunch) {
|
} else if (source.shellWorkspaceLaunch) {
|
||||||
source.shellWorkspaceLaunch({ workspace: this.metaWorkspace ? this.metaWorkspace.index() : -1,
|
source.shellWorkspaceLaunch({ workspace: this.metaWorkspace ? this.metaWorkspace.index() : -1,
|
||||||
@ -536,20 +534,6 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
this.actor.connect('allocate', Lang.bind(this, this._allocate));
|
this.actor.connect('allocate', Lang.bind(this, this._allocate));
|
||||||
this.actor._delegate = this;
|
this.actor._delegate = this;
|
||||||
|
|
||||||
// When we animate the scale, we don't animate the requested size of the thumbnails, rather
|
|
||||||
// we ask for our final size and then animate within that size. This slightly simplifies the
|
|
||||||
// interaction with the main workspace windows (instead of constantly reallocating them
|
|
||||||
// to a new size, they get a new size once, then use the standard window animation code
|
|
||||||
// allocate the windows to their new positions), however it causes problems for drawing
|
|
||||||
// the background and border wrapped around the thumbnail as we animate - we can't just pack
|
|
||||||
// the container into a box and set style properties on the box since that box would wrap
|
|
||||||
// around the final size not the animating size. So instead we fake the background with
|
|
||||||
// an actor underneath the content and adjust the allocation of our children to leave space
|
|
||||||
// for the border and padding of the background actor.
|
|
||||||
this._background = new St.Bin({ style_class: 'workspace-thumbnails-background' });
|
|
||||||
|
|
||||||
this.actor.add_actor(this._background);
|
|
||||||
|
|
||||||
let indicator = new St.Bin({ style_class: 'workspace-thumbnail-indicator' });
|
let indicator = new St.Bin({ style_class: 'workspace-thumbnail-indicator' });
|
||||||
|
|
||||||
// We don't want the indicator to affect drag-and-drop
|
// We don't want the indicator to affect drag-and-drop
|
||||||
@ -753,14 +737,12 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
|
|
||||||
// ... move them down one.
|
// ... move them down one.
|
||||||
windows.forEach(function(win) {
|
windows.forEach(function(win) {
|
||||||
win.meta_window.change_workspace_by_index(win.get_workspace() + 1,
|
win.meta_window.change_workspace_by_index(win.get_workspace() + 1, true);
|
||||||
true, time);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
if (isWindow)
|
if (isWindow)
|
||||||
// ... and bam, a workspace, good as new.
|
// ... and bam, a workspace, good as new.
|
||||||
source.metaWindow.change_workspace_by_index(newWorkspaceIndex,
|
source.metaWindow.change_workspace_by_index(newWorkspaceIndex, true);
|
||||||
true, time);
|
|
||||||
else if (source.shellWorkspaceLaunch) {
|
else if (source.shellWorkspaceLaunch) {
|
||||||
source.shellWorkspaceLaunch({ workspace: newWorkspaceIndex,
|
source.shellWorkspaceLaunch({ workspace: newWorkspaceIndex,
|
||||||
timestamp: time });
|
timestamp: time });
|
||||||
@ -1042,9 +1024,6 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_getPreferredHeight: function(actor, forWidth, alloc) {
|
_getPreferredHeight: function(actor, forWidth, alloc) {
|
||||||
// See comment about this._background in _init()
|
|
||||||
let themeNode = this._background.get_theme_node();
|
|
||||||
|
|
||||||
// Note that for getPreferredWidth/Height we cheat a bit and skip propagating
|
// Note that for getPreferredWidth/Height we cheat a bit and skip propagating
|
||||||
// the size request to our children because we know how big they are and know
|
// the size request to our children because we know how big they are and know
|
||||||
// that the actors aren't depending on the virtual functions being called.
|
// that the actors aren't depending on the virtual functions being called.
|
||||||
@ -1052,24 +1031,21 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
if (this._thumbnails.length == 0)
|
if (this._thumbnails.length == 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
let spacing = this.actor.get_theme_node().get_length('spacing');
|
let themeNode = this.actor.get_theme_node();
|
||||||
|
|
||||||
|
let spacing = themeNode.get_length('spacing');
|
||||||
let nWorkspaces = global.screen.n_workspaces;
|
let nWorkspaces = global.screen.n_workspaces;
|
||||||
let totalSpacing = (nWorkspaces - 1) * spacing;
|
let totalSpacing = (nWorkspaces - 1) * spacing;
|
||||||
|
|
||||||
[alloc.min_size, alloc.natural_size] =
|
alloc.min_size = totalSpacing;
|
||||||
themeNode.adjust_preferred_height(totalSpacing,
|
alloc.natural_size = totalSpacing + nWorkspaces * this._porthole.height * MAX_THUMBNAIL_SCALE;
|
||||||
totalSpacing + nWorkspaces * this._porthole.height * MAX_THUMBNAIL_SCALE);
|
|
||||||
},
|
},
|
||||||
|
|
||||||
_getPreferredWidth: function(actor, forHeight, alloc) {
|
_getPreferredWidth: function(actor, forHeight, alloc) {
|
||||||
// See comment about this._background in _init()
|
|
||||||
let themeNode = this._background.get_theme_node();
|
|
||||||
|
|
||||||
if (this._thumbnails.length == 0)
|
if (this._thumbnails.length == 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// We don't animate our preferred width, which is always reported according
|
let themeNode = this.actor.get_theme_node();
|
||||||
// to the actual number of current workspaces, we just animate within that
|
|
||||||
|
|
||||||
let spacing = this.actor.get_theme_node().get_length('spacing');
|
let spacing = this.actor.get_theme_node().get_length('spacing');
|
||||||
let nWorkspaces = global.screen.n_workspaces;
|
let nWorkspaces = global.screen.n_workspaces;
|
||||||
@ -1081,28 +1057,26 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
scale = Math.min(scale, MAX_THUMBNAIL_SCALE);
|
scale = Math.min(scale, MAX_THUMBNAIL_SCALE);
|
||||||
|
|
||||||
let width = Math.round(this._porthole.width * scale);
|
let width = Math.round(this._porthole.width * scale);
|
||||||
[alloc.min_size, alloc.natural_size] =
|
alloc.min_size = width;
|
||||||
themeNode.adjust_preferred_width(width, width);
|
alloc.natural_size = width;
|
||||||
},
|
},
|
||||||
|
|
||||||
_allocate: function(actor, box, flags) {
|
_allocate: function(actor, box, flags) {
|
||||||
let rtl = (Clutter.get_default_text_direction () == Clutter.TextDirection.RTL);
|
let rtl = (Clutter.get_default_text_direction () == Clutter.TextDirection.RTL);
|
||||||
|
|
||||||
// See comment about this._background in _init()
|
|
||||||
let themeNode = this._background.get_theme_node();
|
|
||||||
let contentBox = themeNode.get_content_box(box);
|
|
||||||
|
|
||||||
if (this._thumbnails.length == 0) // not visible
|
if (this._thumbnails.length == 0) // not visible
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
let themeNode = this.actor.get_theme_node();
|
||||||
|
|
||||||
let portholeWidth = this._porthole.width;
|
let portholeWidth = this._porthole.width;
|
||||||
let portholeHeight = this._porthole.height;
|
let portholeHeight = this._porthole.height;
|
||||||
let spacing = this.actor.get_theme_node().get_length('spacing');
|
let spacing = themeNode.get_length('spacing');
|
||||||
|
|
||||||
// Compute the scale we'll need once everything is updated
|
// Compute the scale we'll need once everything is updated
|
||||||
let nWorkspaces = global.screen.n_workspaces;
|
let nWorkspaces = global.screen.n_workspaces;
|
||||||
let totalSpacing = (nWorkspaces - 1) * spacing;
|
let totalSpacing = (nWorkspaces - 1) * spacing;
|
||||||
let avail = (contentBox.y2 - contentBox.y1) - totalSpacing;
|
let avail = (box.y2 - box.y1) - totalSpacing;
|
||||||
|
|
||||||
let newScale = (avail / nWorkspaces) / portholeHeight;
|
let newScale = (avail / nWorkspaces) / portholeHeight;
|
||||||
newScale = Math.min(newScale, MAX_THUMBNAIL_SCALE);
|
newScale = Math.min(newScale, MAX_THUMBNAIL_SCALE);
|
||||||
@ -1131,21 +1105,6 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
else
|
else
|
||||||
slideOffset = thumbnailWidth + themeNode.get_padding(St.Side.RIGHT);
|
slideOffset = thumbnailWidth + themeNode.get_padding(St.Side.RIGHT);
|
||||||
|
|
||||||
let childBox = new Clutter.ActorBox();
|
|
||||||
|
|
||||||
// The background is horizontally restricted to correspond to the current thumbnail size
|
|
||||||
// but otherwise covers the entire allocation
|
|
||||||
if (rtl) {
|
|
||||||
childBox.x1 = box.x1;
|
|
||||||
childBox.x2 = box.x2 - ((contentBox.x2 - contentBox.x1) - thumbnailWidth);
|
|
||||||
} else {
|
|
||||||
childBox.x1 = box.x1 + ((contentBox.x2 - contentBox.x1) - thumbnailWidth);
|
|
||||||
childBox.x2 = box.x2;
|
|
||||||
}
|
|
||||||
childBox.y1 = box.y1;
|
|
||||||
childBox.y2 = box.y2;
|
|
||||||
this._background.allocate(childBox, flags);
|
|
||||||
|
|
||||||
let indicatorY1 = this._indicatorY;
|
let indicatorY1 = this._indicatorY;
|
||||||
let indicatorY2;
|
let indicatorY2;
|
||||||
// when not animating, the workspace position overrides this._indicatorY
|
// when not animating, the workspace position overrides this._indicatorY
|
||||||
@ -1157,7 +1116,7 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
let indicatorLeftFullBorder = indicatorThemeNode.get_padding(St.Side.LEFT) + indicatorThemeNode.get_border_width(St.Side.LEFT);
|
let indicatorLeftFullBorder = indicatorThemeNode.get_padding(St.Side.LEFT) + indicatorThemeNode.get_border_width(St.Side.LEFT);
|
||||||
let indicatorRightFullBorder = indicatorThemeNode.get_padding(St.Side.RIGHT) + indicatorThemeNode.get_border_width(St.Side.RIGHT);
|
let indicatorRightFullBorder = indicatorThemeNode.get_padding(St.Side.RIGHT) + indicatorThemeNode.get_border_width(St.Side.RIGHT);
|
||||||
|
|
||||||
let y = contentBox.y1;
|
let y = box.y1;
|
||||||
|
|
||||||
if (this._dropPlaceholderPos == -1) {
|
if (this._dropPlaceholderPos == -1) {
|
||||||
Meta.later_add(Meta.LaterType.BEFORE_REDRAW, Lang.bind(this, function() {
|
Meta.later_add(Meta.LaterType.BEFORE_REDRAW, Lang.bind(this, function() {
|
||||||
@ -1165,6 +1124,8 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let childBox = new Clutter.ActorBox();
|
||||||
|
|
||||||
for (let i = 0; i < this._thumbnails.length; i++) {
|
for (let i = 0; i < this._thumbnails.length; i++) {
|
||||||
let thumbnail = this._thumbnails[i];
|
let thumbnail = this._thumbnails[i];
|
||||||
|
|
||||||
@ -1173,10 +1134,10 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
|
|
||||||
let x1, x2;
|
let x1, x2;
|
||||||
if (rtl) {
|
if (rtl) {
|
||||||
x1 = contentBox.x1 + slideOffset * thumbnail.slidePosition;
|
x1 = box.x1 + slideOffset * thumbnail.slidePosition;
|
||||||
x2 = x1 + thumbnailWidth;
|
x2 = x1 + thumbnailWidth;
|
||||||
} else {
|
} else {
|
||||||
x1 = contentBox.x2 - thumbnailWidth + slideOffset * thumbnail.slidePosition;
|
x1 = box.x2 - thumbnailWidth + slideOffset * thumbnail.slidePosition;
|
||||||
x2 = x1 + thumbnailWidth;
|
x2 = x1 + thumbnailWidth;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1223,11 +1184,11 @@ const ThumbnailsBox = new Lang.Class({
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (rtl) {
|
if (rtl) {
|
||||||
childBox.x1 = contentBox.x1;
|
childBox.x1 = box.x1;
|
||||||
childBox.x2 = contentBox.x1 + thumbnailWidth;
|
childBox.x2 = box.x1 + thumbnailWidth;
|
||||||
} else {
|
} else {
|
||||||
childBox.x1 = contentBox.x2 - thumbnailWidth;
|
childBox.x1 = box.x2 - thumbnailWidth;
|
||||||
childBox.x2 = contentBox.x2;
|
childBox.x2 = box.x2;
|
||||||
}
|
}
|
||||||
childBox.x1 -= indicatorLeftFullBorder;
|
childBox.x1 -= indicatorLeftFullBorder;
|
||||||
childBox.x2 += indicatorRightFullBorder;
|
childBox.x2 += indicatorRightFullBorder;
|
||||||
|
@ -62,7 +62,6 @@ const WorkspacesView = new Lang.Class({
|
|||||||
this._animating = false; // tweening
|
this._animating = false; // tweening
|
||||||
this._scrolling = false; // swipe-scrolling
|
this._scrolling = false; // swipe-scrolling
|
||||||
this._animatingScroll = false; // programatically updating the adjustment
|
this._animatingScroll = false; // programatically updating the adjustment
|
||||||
this._zoomOut = false; // zoom to a larger area
|
|
||||||
this._inDrag = false; // dragging a window
|
this._inDrag = false; // dragging a window
|
||||||
|
|
||||||
this._settings = new Gio.Settings({ schema: OVERRIDE_SCHEMA });
|
this._settings = new Gio.Settings({ schema: OVERRIDE_SCHEMA });
|
||||||
@ -168,14 +167,6 @@ const WorkspacesView = new Lang.Class({
|
|||||||
this._workspaces[i].setActualGeometry(geom);
|
this._workspaces[i].setActualGeometry(geom);
|
||||||
},
|
},
|
||||||
|
|
||||||
_lookupWorkspaceForMetaWindow: function (metaWindow) {
|
|
||||||
for (let i = 0; i < this._workspaces.length; i++) {
|
|
||||||
if (this._workspaces[i].containsMetaWindow(metaWindow))
|
|
||||||
return this._workspaces[i];
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
},
|
|
||||||
|
|
||||||
getActiveWorkspace: function() {
|
getActiveWorkspace: function() {
|
||||||
let active = global.screen.get_active_workspace_index();
|
let active = global.screen.get_active_workspace_index();
|
||||||
return this._workspaces[active];
|
return this._workspaces[active];
|
||||||
@ -433,10 +424,6 @@ const WorkspacesView = new Lang.Class({
|
|||||||
this._workspaces[i].actor.y += dy;
|
this._workspaces[i].actor.y += dy;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
_getWorkspaceIndexToRemove: function() {
|
|
||||||
return global.screen.get_active_workspace_index();
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
Signals.addSignalMethods(WorkspacesView.prototype);
|
Signals.addSignalMethods(WorkspacesView.prototype);
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ js/ui/panel.js
|
|||||||
js/ui/popupMenu.js
|
js/ui/popupMenu.js
|
||||||
js/ui/runDialog.js
|
js/ui/runDialog.js
|
||||||
js/ui/screenShield.js
|
js/ui/screenShield.js
|
||||||
js/ui/searchDisplay.js
|
js/ui/search.js
|
||||||
js/ui/shellEntry.js
|
js/ui/shellEntry.js
|
||||||
js/ui/shellMountOperation.js
|
js/ui/shellMountOperation.js
|
||||||
js/ui/status/accessibility.js
|
js/ui/status/accessibility.js
|
||||||
@ -52,7 +52,6 @@ js/ui/status/system.js
|
|||||||
js/ui/status/volume.js
|
js/ui/status/volume.js
|
||||||
js/ui/unlockDialog.js
|
js/ui/unlockDialog.js
|
||||||
js/ui/viewSelector.js
|
js/ui/viewSelector.js
|
||||||
js/ui/wanda.js
|
|
||||||
js/ui/windowAttentionHandler.js
|
js/ui/windowAttentionHandler.js
|
||||||
js/ui/windowManager.js
|
js/ui/windowManager.js
|
||||||
src/calendar-server/evolution-calendar.desktop.in.in
|
src/calendar-server/evolution-calendar.desktop.in.in
|
||||||
|
326
po/as.po
@ -9,8 +9,8 @@ msgstr ""
|
|||||||
"Project-Id-Version: gnome-shell master\n"
|
"Project-Id-Version: gnome-shell master\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
|
"POT-Creation-Date: 2013-09-28 19:49+0000\n"
|
||||||
"PO-Revision-Date: 2013-09-24 14:24+0530\n"
|
"PO-Revision-Date: 2013-09-30 13:31+0530\n"
|
||||||
"Last-Translator: Nilamdyuti Goswami <ngoswami@redhat.com>\n"
|
"Last-Translator: Nilamdyuti Goswami <ngoswami@redhat.com>\n"
|
||||||
"Language-Team: Assamese <kde-i18n-doc@kde.org>\n"
|
"Language-Team: Assamese <kde-i18n-doc@kde.org>\n"
|
||||||
"Language: as_IN\n"
|
"Language: as_IN\n"
|
||||||
@ -54,7 +54,6 @@ msgid "Window management and application launching"
|
|||||||
msgstr "উইন্ডো ব্যৱস্থাপনা আৰু এপ্লিকেচনৰ লঞ্চ"
|
msgstr "উইন্ডো ব্যৱস্থাপনা আৰু এপ্লিকেচনৰ লঞ্চ"
|
||||||
|
|
||||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||||
#: ../js/extensionPrefs/main.js:153
|
|
||||||
msgid "GNOME Shell Extension Preferences"
|
msgid "GNOME Shell Extension Preferences"
|
||||||
msgstr "GNOME শ্বেল সম্প্ৰসাৰন পছন্দসমূহ"
|
msgstr "GNOME শ্বেল সম্প্ৰসাৰন পছন্দসমূহ"
|
||||||
|
|
||||||
@ -276,15 +275,6 @@ msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"বিলম্বৰ ফকাচ মাউছ অৱস্থাত পৰিবৰ্তন হয় যেতিয়ালৈকে পইন্টাৰে গমন কৰা বন্ধ নকৰে"
|
"বিলম্বৰ ফকাচ মাউছ অৱস্থাত পৰিবৰ্তন হয় যেতিয়ালৈকে পইন্টাৰে গমন কৰা বন্ধ নকৰে"
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:125
|
|
||||||
#, c-format
|
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
|
||||||
msgstr "%s ৰ বাবে পছন্দসমূহ ডাইলগ ল'ড কৰোতে এটা ত্ৰুটি হৈছিল:"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:165
|
|
||||||
msgid "Extension"
|
|
||||||
msgstr "প্ৰসাৰন"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:189
|
#: ../js/extensionPrefs/main.js:189
|
||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
msgstr "উপৰত দিয়া কম্বোবাকচ ব্যৱহাৰ কৰি সংৰূপণ কৰিবলে এটা সম্প্ৰসাৰন বাছক।"
|
msgstr "উপৰত দিয়া কম্বোবাকচ ব্যৱহাৰ কৰি সংৰূপণ কৰিবলে এটা সম্প্ৰসাৰন বাছক।"
|
||||||
@ -292,7 +282,7 @@ msgstr "উপৰত দিয়া কম্বোবাকচ ব্যৱহা
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:692
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "বাতিল কৰক"
|
msgstr "বাতিল কৰক"
|
||||||
|
|
||||||
@ -314,23 +304,15 @@ msgstr "ছাইন ইন কৰক"
|
|||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "অধিবেশন বাছক"
|
msgstr "অধিবেশন বাছক"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
|
||||||
#. login screen. It can be activated to reveal an entry for
|
|
||||||
#. manually entering the username.
|
|
||||||
#: ../js/gdm/loginDialog.js:454
|
#: ../js/gdm/loginDialog.js:454
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "তালিকাভুক্ত নহয়?"
|
msgstr "তালিকাভুক্ত নহয়?"
|
||||||
|
|
||||||
#. Translators: this message is shown below the username entry field
|
|
||||||
#. to clue the user in on how to login to the local network realm
|
|
||||||
#: ../js/gdm/loginDialog.js:622
|
#: ../js/gdm/loginDialog.js:622
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(উদাহৰণ, ব্যৱহাৰকাৰী অথবা %s)"
|
msgstr "(উদাহৰণ, ব্যৱহাৰকাৰী অথবা %s)"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
|
||||||
#. is not visible here since we only care about phase2 authentication
|
|
||||||
#. (and don't even care of which one)
|
|
||||||
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
||||||
#: ../js/ui/components/networkAgent.js:277
|
#: ../js/ui/components/networkAgent.js:277
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
@ -344,11 +326,6 @@ msgstr "লগিন উইন্ডো"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "প্ৰমাণীকৰণ ত্ৰুটি"
|
msgstr "প্ৰমাণীকৰণ ত্ৰুটি"
|
||||||
|
|
||||||
#. We don't show fingerprint messages directly since it's
|
|
||||||
#. not the main auth service. Instead we use the messages
|
|
||||||
#. as a cue to display our own message.
|
|
||||||
#. Translators: this message is shown below the password entry field
|
|
||||||
#. to indicate the user can swipe their finger instead
|
|
||||||
#: ../js/gdm/util.js:436
|
#: ../js/gdm/util.js:436
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(অথবা আঙুলি স্বাইপ কৰক)"
|
msgstr "(অথবা আঙুলি স্বাইপ কৰক)"
|
||||||
@ -357,14 +334,12 @@ msgstr "(অথবা আঙুলি স্বাইপ কৰক)"
|
|||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "কমান্ড পোৱা নগল"
|
msgstr "কমান্ড পোৱা নগল"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
|
||||||
#. something nicer
|
|
||||||
#: ../js/misc/util.js:131
|
#: ../js/misc/util.js:131
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "কমান্ড বিশ্লেষন কৰিব নোৱাৰি:"
|
msgstr "কমান্ড বিশ্লেষন কৰিব নোৱাৰি:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:139
|
#: ../js/misc/util.js:139
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "'%s' ৰ প্ৰেৰণ ব্যৰ্থ হল:"
|
msgstr "'%s' ৰ প্ৰেৰণ ব্যৰ্থ হল:"
|
||||||
|
|
||||||
@ -393,16 +368,16 @@ msgid "Add to Favorites"
|
|||||||
msgstr "পছন্দলে যোগ কৰক"
|
msgstr "পছন্দলে যোগ কৰক"
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:87
|
#: ../js/ui/appFavorites.js:87
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has been added to your favorites."
|
msgid "%s has been added to your favorites."
|
||||||
msgstr "%s ক আপোনাৰ পছন্দলে যোগ কৰা হৈছে।"
|
msgstr "%s ক আপোনাৰ পছন্দলে যোগ কৰা হৈছে।"
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:121
|
#: ../js/ui/appFavorites.js:121
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s ক আপোনাৰ পছন্দৰ পৰা আতৰোৱা হৈছে।"
|
msgstr "%s ক আপোনাৰ পছন্দৰ পৰা আতৰোৱা হৈছে।"
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "সংহতিসমূহ"
|
msgstr "সংহতিসমূহ"
|
||||||
@ -413,68 +388,68 @@ msgstr "পটভূমি পৰিবৰ্তন কৰক…"
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:62
|
#: ../js/ui/calendar.js:62
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "গোটেই দিনটো"
|
msgstr "গোটেই দিনটো"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 24h format,
|
#. Translators: Shown in calendar event list, if 24h format,
|
||||||
#. \u2236 is a ratio character, similar to :
|
#. \u2236 is a ratio character, similar to : */
|
||||||
#: ../js/ui/calendar.js:68
|
#: ../js/ui/calendar.js:68
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%H\\u2236%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H\\u2236%M"
|
msgstr "%H∶%M"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space */
|
||||||
#: ../js/ui/calendar.js:77
|
#: ../js/ui/calendar.js:77
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%l\\u2236%M\\u2009%p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%l\\u2236%M\\u2009%p"
|
msgstr "%l∶%M %p"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Sunday.
|
#. Translators: Calendar grid abbreviation for Sunday.
|
||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:108
|
#: ../js/ui/calendar.js:108
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "S"
|
msgstr "S"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday
|
#. Translators: Calendar grid abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:110
|
#: ../js/ui/calendar.js:110
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "M"
|
msgstr "M"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday
|
#. Translators: Calendar grid abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:112
|
#: ../js/ui/calendar.js:112
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "T"
|
msgstr "T"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday
|
#. Translators: Calendar grid abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:114
|
#: ../js/ui/calendar.js:114
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "W"
|
msgstr "W"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday
|
#. Translators: Calendar grid abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:116
|
#: ../js/ui/calendar.js:116
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "T"
|
msgstr "T"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday
|
#. Translators: Calendar grid abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:118
|
#: ../js/ui/calendar.js:118
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "F"
|
msgstr "F"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday
|
#. Translators: Calendar grid abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:120
|
#: ../js/ui/calendar.js:120
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -485,48 +460,52 @@ msgstr "S"
|
|||||||
#. * NOTE: These list abbreviations are normally not shown together
|
#. * NOTE: These list abbreviations are normally not shown together
|
||||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||||
#. * both be 'T').
|
#. * both be 'T').
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:133
|
#: ../js/ui/calendar.js:133
|
||||||
msgctxt "list sunday"
|
msgctxt "list sunday"
|
||||||
msgid "Su"
|
msgid "Su"
|
||||||
msgstr "Su"
|
msgstr "Su"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Monday
|
#. Translators: Event list abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:135
|
#: ../js/ui/calendar.js:135
|
||||||
msgctxt "list monday"
|
msgctxt "list monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "M"
|
msgstr "M"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Tuesday
|
#. Translators: Event list abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:137
|
#: ../js/ui/calendar.js:137
|
||||||
msgctxt "list tuesday"
|
msgctxt "list tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "T"
|
msgstr "T"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Wednesday
|
#. Translators: Event list abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:139
|
#: ../js/ui/calendar.js:139
|
||||||
msgctxt "list wednesday"
|
msgctxt "list wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "W"
|
msgstr "W"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Thursday
|
#. Translators: Event list abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:141
|
#: ../js/ui/calendar.js:141
|
||||||
msgctxt "list thursday"
|
msgctxt "list thursday"
|
||||||
msgid "Th"
|
msgid "Th"
|
||||||
msgstr "Th"
|
msgstr "Th"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Friday
|
#. Translators: Event list abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:143
|
#: ../js/ui/calendar.js:143
|
||||||
msgctxt "list friday"
|
msgctxt "list friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "F"
|
msgstr "F"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Saturday
|
#. Translators: Event list abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:145
|
#: ../js/ui/calendar.js:145
|
||||||
msgctxt "list saturday"
|
msgctxt "list saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "S"
|
msgstr "S"
|
||||||
|
|
||||||
|
#: ../js/ui/calendar.js:389
|
||||||
|
msgid "calendar:MY"
|
||||||
|
msgstr "কেলেন্ডাৰ:MY"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:447
|
#: ../js/ui/calendar.js:447
|
||||||
msgid "Previous month"
|
msgid "Previous month"
|
||||||
msgstr "যোৱা মাহ"
|
msgstr "যোৱা মাহ"
|
||||||
@ -535,18 +514,18 @@ msgstr "যোৱা মাহ"
|
|||||||
msgid "Next month"
|
msgid "Next month"
|
||||||
msgstr "অহা মাহ"
|
msgstr "অহা মাহ"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events */
|
||||||
#: ../js/ui/calendar.js:753
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "একো অনুসূচীত কৰা হোৱা নাই"
|
msgstr "একো অনুসূচীত কৰা হোৱা নাই"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||||
#: ../js/ui/calendar.js:771
|
#: ../js/ui/calendar.js:771
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %B %d"
|
msgstr "%A, %B %d"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||||
#: ../js/ui/calendar.js:774
|
#: ../js/ui/calendar.js:774
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
@ -581,7 +560,7 @@ msgid "Removable Devices"
|
|||||||
msgstr "আতৰাব পৰা ডিভাইচসমূহ"
|
msgstr "আতৰাব পৰা ডিভাইচসমূহ"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:594
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "%s ৰ সৈতে খোলক"
|
msgstr "%s ৰ সৈতে খোলক"
|
||||||
|
|
||||||
@ -598,11 +577,10 @@ msgid "Type again:"
|
|||||||
msgstr "আকৌ টাইপ কৰক:"
|
msgstr "আকৌ টাইপ কৰক:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:695
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "সংযোগ কৰক"
|
msgstr "সংযোগ কৰক"
|
||||||
|
|
||||||
#. Cisco LEAP
|
|
||||||
#: ../js/ui/components/networkAgent.js:222
|
#: ../js/ui/components/networkAgent.js:222
|
||||||
#: ../js/ui/components/networkAgent.js:234
|
#: ../js/ui/components/networkAgent.js:234
|
||||||
#: ../js/ui/components/networkAgent.js:261
|
#: ../js/ui/components/networkAgent.js:261
|
||||||
@ -611,7 +589,6 @@ msgstr "সংযোগ কৰক"
|
|||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "পাছৱাৰ্ড: "
|
msgstr "পাছৱাৰ্ড: "
|
||||||
|
|
||||||
#. static WEP
|
|
||||||
#: ../js/ui/components/networkAgent.js:227
|
#: ../js/ui/components/networkAgent.js:227
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "কি': "
|
msgstr "কি': "
|
||||||
@ -633,7 +610,7 @@ msgid "Authentication required by wireless network"
|
|||||||
msgstr "বেতাঁৰ নেটৱাৰ্কৰ দ্বাৰা প্ৰমাণীকৰণৰ প্ৰয়োজন"
|
msgstr "বেতাঁৰ নেটৱাৰ্কৰ দ্বাৰা প্ৰমাণীকৰণৰ প্ৰয়োজন"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:309
|
#: ../js/ui/components/networkAgent.js:309
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
"'%s'."
|
"'%s'."
|
||||||
@ -670,7 +647,7 @@ msgid "Mobile broadband network password"
|
|||||||
msgstr "মবাইল ব্ৰডবেণ্ড নেটৱাৰ্ক পাছৱাৰ্ড"
|
msgstr "মবাইল ব্ৰডবেণ্ড নেটৱাৰ্ক পাছৱাৰ্ড"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:336
|
#: ../js/ui/components/networkAgent.js:336
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "'%s' লে সংযোগ কৰিবলে এটা পাছৱাৰ্ডৰ প্ৰয়োজন।"
|
msgstr "'%s' লে সংযোগ কৰিবলে এটা পাছৱাৰ্ডৰ প্ৰয়োজন।"
|
||||||
|
|
||||||
@ -689,23 +666,19 @@ msgstr "প্ৰমাণীত কৰক"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance.
|
#. * for instance. */
|
||||||
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "ক্ষমা কৰিব, সেয়া কাম নকৰিলে। অনুগ্ৰহ কৰি পুনৰ চেষ্টা কৰক।"
|
msgstr "ক্ষমা কৰিব, সেয়া কাম নকৰিলে। অনুগ্ৰহ কৰি পুনৰ চেষ্টা কৰক।"
|
||||||
|
|
||||||
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
|
|
||||||
#. system-users for now as Empathy does.
|
|
||||||
#: ../js/ui/components/telepathyClient.js:238
|
#: ../js/ui/components/telepathyClient.js:238
|
||||||
msgid "Invitation"
|
msgid "Invitation"
|
||||||
msgstr "নিমন্ত্ৰণ"
|
msgstr "নিমন্ত্ৰণ"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:298
|
#: ../js/ui/components/telepathyClient.js:298
|
||||||
msgid "Call"
|
msgid "Call"
|
||||||
msgstr "কল"
|
msgstr "কল"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:314
|
#: ../js/ui/components/telepathyClient.js:314
|
||||||
msgid "File Transfer"
|
msgid "File Transfer"
|
||||||
msgstr "ফাইল স্থানান্তৰ"
|
msgstr "ফাইল স্থানান্তৰ"
|
||||||
@ -722,49 +695,45 @@ msgstr "অমৌন কৰক"
|
|||||||
msgid "Mute"
|
msgid "Mute"
|
||||||
msgstr "মোন কৰক"
|
msgstr "মোন কৰক"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:942
|
#: ../js/ui/components/telepathyClient.js:942
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>যোৱাকালী</b>, <b>%H:%M</b>"
|
msgstr "<b>যোৱাকালী</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30
|
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
|
||||||
#: ../js/ui/components/telepathyClient.js:948
|
#: ../js/ui/components/telepathyClient.js:948
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%A</b>, <b>%H:%M</b>"
|
msgid "<b>%A</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"
|
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:953
|
#: ../js/ui/components/telepathyClient.js:953
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
msgstr "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"
|
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:957
|
#: ../js/ui/components/telepathyClient.js:957
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
msgstr "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgstr "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name.
|
#. IM name. */
|
||||||
#: ../js/ui/components/telepathyClient.js:986
|
#: ../js/ui/components/telepathyClient.js:986
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
msgstr "%s এতিয়া %s হিচাপে জনাজাত"
|
msgstr "%s এতিয়া %s হিচাপে জনাজাত"
|
||||||
|
|
||||||
#. translators: argument is a room name like
|
#. translators: argument is a room name like
|
||||||
#. * room@jabber.org for example.
|
#. * room@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1089
|
#: ../js/ui/components/telepathyClient.js:1089
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Invitation to %s"
|
msgid "Invitation to %s"
|
||||||
msgstr "%s লে নিমন্ত্ৰণ"
|
msgstr "%s লে নিমন্ত্ৰণ"
|
||||||
|
|
||||||
#. translators: first argument is the name of a contact and the second
|
#. 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
|
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||||
#. * for example.
|
#. * for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1097
|
#: ../js/ui/components/telepathyClient.js:1097
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is inviting you to join %s"
|
msgid "%s is inviting you to join %s"
|
||||||
msgstr "%s এ আপোনাক %s ত অংশগ্ৰহণ কৰিবলে আমন্ত্ৰণ জনাইছে"
|
msgstr "%s এ আপোনাক %s ত অংশগ্ৰহণ কৰিবলে আমন্ত্ৰণ জনাইছে"
|
||||||
|
|
||||||
@ -781,19 +750,19 @@ msgstr "নাকচ কৰক"
|
|||||||
msgid "Accept"
|
msgid "Accept"
|
||||||
msgstr "গ্ৰহন কৰক"
|
msgstr "গ্ৰহন কৰক"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1130
|
#: ../js/ui/components/telepathyClient.js:1130
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Video call from %s"
|
msgid "Video call from %s"
|
||||||
msgstr "%s ৰ পৰা ভিডিঅ' কল"
|
msgstr "%s ৰ পৰা ভিডিঅ' কল"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1133
|
#: ../js/ui/components/telepathyClient.js:1133
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Call from %s"
|
msgid "Call from %s"
|
||||||
msgstr "%s ৰ পৰা কল"
|
msgstr "%s ৰ পৰা কল"
|
||||||
|
|
||||||
#. translators: this is a button label (verb), not a noun
|
#. translators: this is a button label (verb), not a noun */
|
||||||
#: ../js/ui/components/telepathyClient.js:1142
|
#: ../js/ui/components/telepathyClient.js:1142
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "উত্তৰ দিয়ক"
|
msgstr "উত্তৰ দিয়ক"
|
||||||
@ -802,15 +771,15 @@ msgstr "উত্তৰ দিয়ক"
|
|||||||
#. * the contact's alias and the second one is the
|
#. * the contact's alias and the second one is the
|
||||||
#. * file name. The string will be something
|
#. * file name. The string will be something
|
||||||
#. * like: "Alice is sending you test.ogg"
|
#. * like: "Alice is sending you test.ogg"
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1174
|
#: ../js/ui/components/telepathyClient.js:1174
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is sending you %s"
|
msgid "%s is sending you %s"
|
||||||
msgstr "%s এ আপোনাক %s পঠাই আছে"
|
msgstr "%s এ আপোনাক %s পঠাই আছে"
|
||||||
|
|
||||||
#. To translators: The parameter is the contact's alias
|
#. To translators: The parameter is the contact's alias */
|
||||||
#: ../js/ui/components/telepathyClient.js:1209
|
#: ../js/ui/components/telepathyClient.js:1209
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s would like permission to see when you are online"
|
msgid "%s would like permission to see when you are online"
|
||||||
msgstr "আপুনি কেতিয়া অনলাইন আছে চাবলে %s এ অনুমতি বিচাৰিব"
|
msgstr "আপুনি কেতিয়া অনলাইন আছে চাবলে %s এ অনুমতি বিচাৰিব"
|
||||||
|
|
||||||
@ -920,9 +889,9 @@ msgid "Internal error"
|
|||||||
msgstr "অভ্যন্তৰীক ত্ৰুটি"
|
msgstr "অভ্যন্তৰীক ত্ৰুটি"
|
||||||
|
|
||||||
#. translators: argument is the account name, like
|
#. translators: argument is the account name, like
|
||||||
#. * name@jabber.org for example.
|
#. * name@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1357
|
#: ../js/ui/components/telepathyClient.js:1357
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Unable to connect to %s"
|
msgid "Unable to connect to %s"
|
||||||
msgstr "%s ৰ সৈতে সংযোগ কৰিবলে অক্ষম"
|
msgstr "%s ৰ সৈতে সংযোগ কৰিবলে অক্ষম"
|
||||||
|
|
||||||
@ -942,8 +911,6 @@ msgstr "উইন্ডোসমূহ"
|
|||||||
msgid "Show Applications"
|
msgid "Show Applications"
|
||||||
msgstr "এপ্লিকেচনসমূহ দেখুৱাওক"
|
msgstr "এপ্লিকেচনসমূহ দেখুৱাওক"
|
||||||
|
|
||||||
#. Translators: this is the name of the dock/favorites area on
|
|
||||||
#. the left of the overview
|
|
||||||
#: ../js/ui/dash.js:442
|
#: ../js/ui/dash.js:442
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "ডেশ"
|
msgstr "ডেশ"
|
||||||
@ -962,13 +929,13 @@ msgstr "তাৰিখ আৰু সময সংহতিসমূহ"
|
|||||||
|
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. 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").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/dateMenu.js:202
|
#: ../js/ui/dateMenu.js:202
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A %B %e, %Y"
|
msgstr "%A %B %e, %Y"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:62
|
#: ../js/ui/endSessionDialog.js:62
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgctxt "title"
|
msgctxt "title"
|
||||||
msgid "Log Out %s"
|
msgid "Log Out %s"
|
||||||
msgstr "%s লগ আউট কৰক"
|
msgstr "%s লগ আউট কৰক"
|
||||||
@ -979,14 +946,14 @@ msgid "Log Out"
|
|||||||
msgstr "লগ আউট কৰক"
|
msgstr "লগ আউট কৰক"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:65
|
#: ../js/ui/endSessionDialog.js:65
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s will be logged out automatically in %d second."
|
msgid "%s will be logged out automatically in %d second."
|
||||||
msgid_plural "%s will be logged out automatically in %d seconds."
|
msgid_plural "%s will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "%s স্বচালিতভাৱে %d ছেকেণ্ডৰ পিছত লগ আউট হৈ যাব।"
|
msgstr[0] "%s স্বচালিতভাৱে %d ছেকেণ্ডৰ পিছত লগ আউট হৈ যাব।"
|
||||||
msgstr[1] "%s স্বচালিতভাৱে %d ছেকেণ্ডৰ পিছত লগ আউট হৈ যাব।"
|
msgstr[1] "%s স্বচালিতভাৱে %d ছেকেণ্ডৰ পিছত লগ আউট হৈ যাব।"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:70
|
#: ../js/ui/endSessionDialog.js:70
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "You will be logged out automatically in %d second."
|
msgid "You will be logged out automatically in %d second."
|
||||||
msgid_plural "You will be logged out automatically in %d seconds."
|
msgid_plural "You will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "আপুনি স্বচালিতভাৱে %d ছেকেণ্ড পিছত লগ আউট হৈ যাব।"
|
msgstr[0] "আপুনি স্বচালিতভাৱে %d ছেকেণ্ড পিছত লগ আউট হৈ যাব।"
|
||||||
@ -1003,7 +970,7 @@ msgid "Power Off"
|
|||||||
msgstr "বন্ধ কৰক"
|
msgstr "বন্ধ কৰক"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:83
|
#: ../js/ui/endSessionDialog.js:83
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will power off automatically in %d second."
|
msgid "The system will power off automatically in %d second."
|
||||||
msgid_plural "The system will power off automatically in %d seconds."
|
msgid_plural "The system will power off automatically in %d seconds."
|
||||||
msgstr[0] "চিস্টেম %d ছেকেণ্ড পিছত স্বচালিতভাৱে বন্ধ কৰক হব। "
|
msgstr[0] "চিস্টেম %d ছেকেণ্ড পিছত স্বচালিতভাৱে বন্ধ কৰক হব। "
|
||||||
@ -1025,7 +992,7 @@ msgid "Restart"
|
|||||||
msgstr "পুনৰাম্ভ কৰক"
|
msgstr "পুনৰাম্ভ কৰক"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:99
|
#: ../js/ui/endSessionDialog.js:99
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will restart automatically in %d second."
|
msgid "The system will restart automatically in %d second."
|
||||||
msgid_plural "The system will restart automatically in %d seconds."
|
msgid_plural "The system will restart automatically in %d seconds."
|
||||||
msgstr[0] "চিস্টেম %d ছেকেণ্ডত স্বচালিতভাৱে পুনৰাম্ভ হব।"
|
msgstr[0] "চিস্টেম %d ছেকেণ্ডত স্বচালিতভাৱে পুনৰাম্ভ হব।"
|
||||||
@ -1037,7 +1004,7 @@ msgid "Restart & Install Updates"
|
|||||||
msgstr "পুনাৰম্ভ কৰক আৰু আপডেইটসমূহ ইনস্টল কৰক"
|
msgstr "পুনাৰম্ভ কৰক আৰু আপডেইটসমূহ ইনস্টল কৰক"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:114
|
#: ../js/ui/endSessionDialog.js:114
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will automatically restart and install updates in %d second."
|
msgid "The system will automatically restart and install updates in %d second."
|
||||||
msgid_plural ""
|
msgid_plural ""
|
||||||
"The system will automatically restart and install updates in %d seconds."
|
"The system will automatically restart and install updates in %d seconds."
|
||||||
@ -1061,15 +1028,15 @@ msgstr ""
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "অন্য ব্যৱহাৰকাৰীসকল লগ্ড ইন আছে।"
|
msgstr "অন্য ব্যৱহাৰকাৰীসকল লগ্ড ইন আছে।"
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login
|
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||||
#: ../js/ui/endSessionDialog.js:479
|
#: ../js/ui/endSessionDialog.js:479
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (দূৰৱৰ্তী)"
|
msgstr "%s (দূৰৱৰ্তী)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console
|
#. Translators: Console here refers to a tty like a VT console */
|
||||||
#: ../js/ui/endSessionDialog.js:482
|
#: ../js/ui/endSessionDialog.js:482
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (কনচৌল)"
|
msgstr "%s (কনচৌল)"
|
||||||
|
|
||||||
@ -1078,11 +1045,11 @@ msgid "Install"
|
|||||||
msgstr "ইনস্টল কৰক"
|
msgstr "ইনস্টল কৰক"
|
||||||
|
|
||||||
#: ../js/ui/extensionDownloader.js:204
|
#: ../js/ui/extensionDownloader.js:204
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||||
msgstr "extensions.gnome.org ৰ পৰা '%s' ক ডাউনল'ড আৰু ইনস্টল কৰিব নে?"
|
msgstr "extensions.gnome.org ৰ পৰা '%s' ক ডাউনল'ড আৰু ইনস্টল কৰিব নে?"
|
||||||
|
|
||||||
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
|
#: ../js/ui/keyboard.js:619
|
||||||
msgid "Keyboard"
|
msgid "Keyboard"
|
||||||
msgstr "কিবৰ্ড"
|
msgstr "কিবৰ্ড"
|
||||||
|
|
||||||
@ -1090,9 +1057,9 @@ msgstr "কিবৰ্ড"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "কোনো সম্প্ৰসাৰন ইনস্টল কৰা হোৱা নাই"
|
msgstr "কোনো সম্প্ৰসাৰন ইনস্টল কৰা হোৱা নাই"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID.
|
#. Translators: argument is an extension UUID. */
|
||||||
#: ../js/ui/lookingGlass.js:743
|
#: ../js/ui/lookingGlass.js:743
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
msgstr "%s এ কোনো ত্ৰুটি প্ৰেৰণ কৰা নাই।"
|
msgstr "%s এ কোনো ত্ৰুটি প্ৰেৰণ কৰা নাই।"
|
||||||
|
|
||||||
@ -1172,7 +1139,7 @@ msgid "Unknown"
|
|||||||
msgstr "অজ্ঞাত"
|
msgstr "অজ্ঞাত"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
msgstr[0] "%d নতুন বাৰ্তা"
|
msgstr[0] "%d নতুন বাৰ্তা"
|
||||||
@ -1189,7 +1156,7 @@ msgstr "অভাৰভিউ"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters. */
|
||||||
#: ../js/ui/overview.js:258
|
#: ../js/ui/overview.js:258
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "সন্ধান কৰিবলে টাইপ কৰক…"
|
msgstr "সন্ধান কৰিবলে টাইপ কৰক…"
|
||||||
@ -1199,20 +1166,15 @@ msgid "Quit"
|
|||||||
msgstr "প্ৰস্থান কৰক"
|
msgstr "প্ৰস্থান কৰক"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview". */
|
||||||
#: ../js/ui/panel.js:570
|
#: ../js/ui/panel.js:570
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "কাৰ্য্যসমূহ"
|
msgstr "কাৰ্য্যসমূহ"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "উপৰৰ বাৰ"
|
msgstr "উপৰৰ বাৰ"
|
||||||
|
|
||||||
#. Translators: this MUST be either "toggle-switch-us"
|
|
||||||
#. (for toggle switches containing the English words
|
|
||||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
|
||||||
#. switches containing "◯" and "|"). Other values will
|
|
||||||
#. simply result in invisible toggle switches.
|
|
||||||
#: ../js/ui/popupMenu.js:233
|
#: ../js/ui/popupMenu.js:233
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-us"
|
msgstr "toggle-switch-us"
|
||||||
@ -1226,13 +1188,13 @@ msgid "Close"
|
|||||||
msgstr "বন্ধ কৰক"
|
msgstr "বন্ধ কৰক"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format */
|
||||||
#: ../js/ui/screenShield.js:88
|
#: ../js/ui/screenShield.js:88
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %B %d"
|
msgstr "%A, %B %d"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:154
|
#: ../js/ui/screenShield.js:154
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "%d নতুন অধিসূচনা"
|
msgstr[0] "%d নতুন অধিসূচনা"
|
||||||
@ -1246,13 +1208,6 @@ msgstr "লক কৰক"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME এ পৰ্দা লক কৰিব লাগিব"
|
msgstr "GNOME এ পৰ্দা লক কৰিব লাগিব"
|
||||||
|
|
||||||
#. We could not become modal, so we can't activate the
|
|
||||||
#. screenshield. The user is probably very upset at this
|
|
||||||
#. point, but any application using global grabs is broken
|
|
||||||
#. Just tell him to stop using this app
|
|
||||||
#.
|
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
|
||||||
#. screen, where we're not affected by grabs
|
|
||||||
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "লক কৰিবলে অক্ষম"
|
msgstr "লক কৰিবলে অক্ষম"
|
||||||
@ -1261,11 +1216,11 @@ msgstr "লক কৰিবলে অক্ষম"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "লক কাৰ্য্য এটা এপ্লিকেচন দ্বাৰা প্ৰতিৰোধ কৰা হৈছিল"
|
msgstr "লক কাৰ্য্য এটা এপ্লিকেচন দ্বাৰা প্ৰতিৰোধ কৰা হৈছিল"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "সন্ধান কৰা হৈছে…"
|
msgstr "সন্ধান কৰা হৈছে…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "কোনো ফলাফল নাই।"
|
msgstr "কোনো ফলাফল নাই।"
|
||||||
|
|
||||||
@ -1337,8 +1292,6 @@ msgstr "উচ্চ কন্ট্ৰাস্ট"
|
|||||||
msgid "Large Text"
|
msgid "Large Text"
|
||||||
msgstr "ডাঙৰ লিখনী"
|
msgstr "ডাঙৰ লিখনী"
|
||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
|
||||||
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
||||||
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
||||||
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
||||||
@ -1346,7 +1299,7 @@ msgid "Bluetooth"
|
|||||||
msgstr "ব্লুটুথ"
|
msgstr "ব্লুটুথ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1040 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "বন্ধ কৰক"
|
msgstr "বন্ধ কৰক"
|
||||||
|
|
||||||
@ -1355,20 +1308,20 @@ msgid "Bluetooth Settings"
|
|||||||
msgstr "ব্লুটুথ সংহতিসমূহ"
|
msgstr "ব্লুটুথ সংহতিসমূহ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:58
|
#: ../js/ui/status/bluetooth.js:58
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d সংযুক্ত ডিভাইচ"
|
msgstr[0] "%d সংযুক্ত ডিভাইচ"
|
||||||
msgstr[1] "%d সংযুক্ত ডিভাইচসমূহ"
|
msgstr[1] "%d সংযুক্ত ডিভাইচসমূহ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "%s ৰ পৰা প্ৰমাণীকৰণ অনুৰোধ"
|
msgstr "%s ৰ পৰা প্ৰমাণীকৰণ অনুৰোধ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
||||||
#: ../js/ui/status/bluetooth.js:203
|
#: ../js/ui/status/bluetooth.js:203
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "ডিভাইচ %s এ এই কমপিউটাৰৰ লগত সংযোগ কৰিব বিচাৰে"
|
msgstr "ডিভাইচ %s এ এই কমপিউটাৰৰ লগত সংযোগ কৰিব বিচাৰে"
|
||||||
|
|
||||||
@ -1381,7 +1334,7 @@ msgid "Deny"
|
|||||||
msgstr "নাকচ কৰক"
|
msgstr "নাকচ কৰক"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:135
|
#: ../js/ui/status/bluetooth.js:135
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "ডিভাইচ %s এ সেৱা '%s' লে অভিগম বিচাৰে"
|
msgstr "ডিভাইচ %s এ সেৱা '%s' লে অভিগম বিচাৰে"
|
||||||
|
|
||||||
@ -1397,19 +1350,19 @@ msgstr "কেৱল এইবাৰৰ কাৰণে প্ৰদান ক
|
|||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "নাকচ কৰক"
|
msgstr "নাকচ কৰক"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name */
|
||||||
#: ../js/ui/status/bluetooth.js:166
|
#: ../js/ui/status/bluetooth.js:166
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "%s ৰ কাৰণে যোৰ প্ৰতিশ্ৰুতি"
|
msgstr "%s ৰ কাৰণে যোৰ প্ৰতিশ্ৰুতি"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:173
|
#: ../js/ui/status/bluetooth.js:173
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
msgstr "অনুগ্ৰহ কৰি সুনিশ্চিত কৰক যে পাছকি '%06d' ডিভাইচত থকাটোৰ সৈতে মিল খায়।"
|
msgstr "অনুগ্ৰহ কৰি সুনিশ্চিত কৰক যে পাছকি '%06d' ডিভাইচত থকাটোৰ সৈতে মিল খায়।"
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun */
|
||||||
#: ../js/ui/status/bluetooth.js:176
|
#: ../js/ui/status/bluetooth.js:176
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "মিলসমূহ"
|
msgstr "মিলসমূহ"
|
||||||
@ -1419,7 +1372,7 @@ msgid "Does not match"
|
|||||||
msgstr "মিল নাখায়"
|
msgstr "মিল নাখায়"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:196
|
#: ../js/ui/status/bluetooth.js:196
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "%s ৰ কাৰণে যোৰ অনুৰোধ"
|
msgstr "%s ৰ কাৰণে যোৰ অনুৰোধ"
|
||||||
|
|
||||||
@ -1435,25 +1388,21 @@ msgstr "ঠিক আছে"
|
|||||||
msgid "Brightness"
|
msgid "Brightness"
|
||||||
msgstr "উজ্জ্বলতা"
|
msgstr "উজ্জ্বলতা"
|
||||||
|
|
||||||
#: ../js/ui/status/keyboard.js:403
|
|
||||||
msgid "Show Keyboard Layout"
|
|
||||||
msgstr "কিবৰ্ড বিন্যাস দেখুৱাওক"
|
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:72
|
#: ../js/ui/status/network.js:72
|
||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<unknown>"
|
msgstr "<unknown>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1055
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "অফ"
|
msgstr "অফ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:961
|
||||||
#: ../js/ui/status/rfkill.js:49
|
#: ../js/ui/status/rfkill.js:49
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "নেটৱাৰ্ক সংহতিসমূহ"
|
msgstr "নেটৱাৰ্ক সংহতিসমূহ"
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:364
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "অব্যৱস্থাপিত"
|
msgstr "অব্যৱস্থাপিত"
|
||||||
@ -1462,64 +1411,64 @@ msgstr "অব্যৱস্থাপিত"
|
|||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "বিচ্ছিনিত কৰা হৈছে..."
|
msgstr "বিচ্ছিনিত কৰা হৈছে..."
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1106
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "সংযোগ কৰা হৈছে..."
|
msgstr "সংযোগ কৰা হৈছে..."
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password */
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1109
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "প্ৰমাণীকৰণৰ প্ৰয়োজন"
|
msgstr "প্ৰমাণীকৰণৰ প্ৰয়োজন"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing */
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:383
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "ফাৰ্মৱেৰ সন্ধানহীন"
|
msgstr "ফাৰ্মৱেৰ সন্ধানহীন"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage */
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:387
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "উপলব্ধ নাই"
|
msgstr "উপলব্ধ নাই"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1111
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "সংযোগ ব্যৰ্থ"
|
msgstr "সংযোগ ব্যৰ্থ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:660
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Wi-Fi নেটৱাৰ্কসমূহ"
|
msgstr "Wi-Fi নেটৱাৰ্কসমূহ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:662
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "এটা নেটৱাৰ্ক বাছক"
|
msgstr "এটা নেটৱাৰ্ক বাছক"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:686
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "কোনো নেটৱাৰ্ক নাই"
|
msgstr "কোনো নেটৱাৰ্ক নাই"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:955
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "নেটৱাৰ্ক বাছক"
|
msgstr "নেটৱাৰ্ক বাছক"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:1040
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "অন কৰক"
|
msgstr "অন কৰক"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1173
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1313
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "নেটৱাৰ্ক ব্যৱস্থাপক"
|
msgstr "নেটৱাৰ্ক ব্যৱস্থাপক"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1352
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "সংযোগ ব্যৰ্থ"
|
msgstr "সংযোগ ব্যৰ্থ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1353
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "নেটৱাৰ্ক সংযোগ সক্ৰিয়কৰণ ব্যৰ্থ হল"
|
msgstr "নেটৱাৰ্ক সংযোগ সক্ৰিয়কৰণ ব্যৰ্থ হল"
|
||||||
|
|
||||||
@ -1535,28 +1484,22 @@ msgstr "শক্তি সংহতিসমূহ"
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "সম্পূৰ্ণ চাৰ্জ হৈছে"
|
msgstr "সম্পূৰ্ণ চাৰ্জ হৈছে"
|
||||||
|
|
||||||
#. 0 is reported when UPower does not have enough data
|
|
||||||
#. to estimate battery life
|
|
||||||
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
|
||||||
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "অনুমান কৰা হৈছে…"
|
msgstr "অনুমান কৰা হৈছে…"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:77
|
#: ../js/ui/status/power.js:77
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d\\u2236%02d Remaining (%d%%)"
|
#| msgid "%d\\u2236%02d Remaining (%d%%)"
|
||||||
msgstr "%d\\u2236%02d অৱশিষ্ট (%d%%)"
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
|
msgstr "%d∶%02d অৱশিষ্ট (%d%%)"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:82
|
#: ../js/ui/status/power.js:82
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d\\u2236%02d Until Full (%d%%)"
|
#| msgid "%d\\u2236%02d Until Full (%d%%)"
|
||||||
msgstr "%d\\u2236%02d সম্পূৰ্ণ হোৱালৈ (%d%%)"
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
|
msgstr "%d∶%02d সম্পূৰ্ণ হোৱালৈ (%d%%)"
|
||||||
|
|
||||||
#. The menu only appears when airplane mode is on, so just
|
|
||||||
#. statically build it as if it was on, rather than dynamically
|
|
||||||
#. changing the menu contents.
|
|
||||||
#: ../js/ui/status/rfkill.js:43
|
#: ../js/ui/status/rfkill.js:43
|
||||||
msgid "Airplane Mode"
|
msgid "Airplane Mode"
|
||||||
msgstr "বিমান অৱস্থা"
|
msgstr "বিমান অৱস্থা"
|
||||||
@ -1614,7 +1557,7 @@ msgid "Search"
|
|||||||
msgstr "সন্ধান কৰক"
|
msgstr "সন্ধান কৰক"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:77
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
"%s"
|
"%s"
|
||||||
@ -1623,12 +1566,12 @@ msgstr ""
|
|||||||
"%s"
|
"%s"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:81
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "%s Oracle এ ক'য়"
|
msgstr "%s Oracle এ ক'য়"
|
||||||
|
|
||||||
#: ../js/ui/windowAttentionHandler.js:19
|
#: ../js/ui/windowAttentionHandler.js:19
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "'%s' is ready"
|
msgid "'%s' is ready"
|
||||||
msgstr "'%s' প্ৰস্তুত"
|
msgstr "'%s' প্ৰস্তুত"
|
||||||
|
|
||||||
@ -1638,7 +1581,7 @@ msgstr "আপুনি এই প্ৰদৰ্শন সংহতিসমূ
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/windowManager.js:75
|
#: ../js/ui/windowManager.js:75
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "সংহতিসমূহক পূৰ্ব অৱস্থালৈ নিয়ক"
|
msgstr "সংহতিসমূহক পূৰ্ব অৱস্থালৈ নিয়ক"
|
||||||
@ -1648,7 +1591,7 @@ msgid "Keep Changes"
|
|||||||
msgstr "পৰিৱৰ্তনসমূহ ৰাখক"
|
msgstr "পৰিৱৰ্তনসমূহ ৰাখক"
|
||||||
|
|
||||||
#: ../js/ui/windowManager.js:97
|
#: ../js/ui/windowManager.js:97
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Settings changes will revert in %d second"
|
msgid "Settings changes will revert in %d second"
|
||||||
msgid_plural "Settings changes will revert in %d seconds"
|
msgid_plural "Settings changes will revert in %d seconds"
|
||||||
msgstr[0] "সংহতিসমূহৰ পৰিবৰ্তন %d ছেকেণ্ডত পূৰ্ব অৱস্থালৈ যাব"
|
msgstr[0] "সংহতিসমূহৰ পৰিবৰ্তন %d ছেকেণ্ডত পূৰ্ব অৱস্থালৈ যাব"
|
||||||
@ -1713,6 +1656,23 @@ msgstr "পাছৱাৰ্ড ৰিক্ত হব নোৱাৰিব"
|
|||||||
msgid "Authentication dialog was dismissed by the user"
|
msgid "Authentication dialog was dismissed by the user"
|
||||||
msgstr "প্ৰমাণীকৰণ ডাইলগ ব্যৱহাৰকাৰী দ্বাৰা নাকচ কৰা হৈছিল"
|
msgstr "প্ৰমাণীকৰণ ডাইলগ ব্যৱহাৰকাৰী দ্বাৰা নাকচ কৰা হৈছিল"
|
||||||
|
|
||||||
|
#~ msgid "There was an error loading the preferences dialog for %s:"
|
||||||
|
#~ msgstr "%s ৰ বাবে পছন্দসমূহ ডাইলগ ল'ড কৰোতে এটা ত্ৰুটি হৈছিল:"
|
||||||
|
|
||||||
|
#~ msgid "Extension"
|
||||||
|
#~ msgstr "প্ৰসাৰন"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%H\\u2236%M"
|
||||||
|
#~ msgstr "%H\\u2236%M"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%l\\u2236%M\\u2009%p"
|
||||||
|
#~ msgstr "%l\\u2236%M\\u2009%p"
|
||||||
|
|
||||||
|
#~ msgid "Show Keyboard Layout"
|
||||||
|
#~ msgstr "কিবৰ্ড বিন্যাস দেখুৱাওক"
|
||||||
|
|
||||||
#~ msgid "Settings Menu"
|
#~ msgid "Settings Menu"
|
||||||
#~ msgstr "সংহতিসমূহ মেনু"
|
#~ msgstr "সংহতিসমূহ মেনু"
|
||||||
|
|
||||||
|
309
po/be.po
@ -5,7 +5,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: gnome-shell.master\n"
|
"Project-Id-Version: gnome-shell.master\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
|
"POT-Creation-Date: 2013-10-02 17:58+0000\n"
|
||||||
"PO-Revision-Date: 2012-10-16 12:05+0300\n"
|
"PO-Revision-Date: 2012-10-16 12:05+0300\n"
|
||||||
"Last-Translator: Kasia Bondarava <kasia.bondarava@gmail.com>\n"
|
"Last-Translator: Kasia Bondarava <kasia.bondarava@gmail.com>\n"
|
||||||
"Language-Team: Belarusian <i18n-bel-gnome@googlegroups.com>\n"
|
"Language-Team: Belarusian <i18n-bel-gnome@googlegroups.com>\n"
|
||||||
@ -52,7 +52,6 @@ msgid "Window management and application launching"
|
|||||||
msgstr "Кіраванне вокнамі і пуск праграм"
|
msgstr "Кіраванне вокнамі і пуск праграм"
|
||||||
|
|
||||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||||
#: ../js/extensionPrefs/main.js:153
|
|
||||||
msgid "GNOME Shell Extension Preferences"
|
msgid "GNOME Shell Extension Preferences"
|
||||||
msgstr "Настройкі пашырэння абалонкі GNOME"
|
msgstr "Настройкі пашырэння абалонкі GNOME"
|
||||||
|
|
||||||
@ -265,16 +264,8 @@ msgstr "Прасторы працы толькі для асноўнага ма
|
|||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
|
||||||
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||||
msgstr "Затрымліваць змяненне фокусу ў рэжыме мышы да спынення руху яе паказальніка"
|
msgstr ""
|
||||||
|
"Затрымліваць змяненне фокусу ў рэжыме мышы да спынення руху яе паказальніка"
|
||||||
#: ../js/extensionPrefs/main.js:125
|
|
||||||
#, c-format
|
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
|
||||||
msgstr "Падчас загрузкі дыялогу настроек для %s узнікла памылка:"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:165
|
|
||||||
msgid "Extension"
|
|
||||||
msgstr "Пашырэнне"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:189
|
#: ../js/extensionPrefs/main.js:189
|
||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
@ -285,7 +276,7 @@ msgstr ""
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:692
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Скасаваць"
|
msgstr "Скасаваць"
|
||||||
|
|
||||||
@ -307,23 +298,15 @@ msgstr "Увайсці"
|
|||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Выбар сеанса"
|
msgstr "Выбар сеанса"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
|
||||||
#. login screen. It can be activated to reveal an entry for
|
|
||||||
#. manually entering the username.
|
|
||||||
#: ../js/gdm/loginDialog.js:454
|
#: ../js/gdm/loginDialog.js:454
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Няма ў спісе?"
|
msgstr "Няма ў спісе?"
|
||||||
|
|
||||||
#. Translators: this message is shown below the username entry field
|
|
||||||
#. to clue the user in on how to login to the local network realm
|
|
||||||
#: ../js/gdm/loginDialog.js:622
|
#: ../js/gdm/loginDialog.js:622
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(напр., карыстальнік ці %s)"
|
msgstr "(напр., карыстальнік ці %s)"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
|
||||||
#. is not visible here since we only care about phase2 authentication
|
|
||||||
#. (and don't even care of which one)
|
|
||||||
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
||||||
#: ../js/ui/components/networkAgent.js:277
|
#: ../js/ui/components/networkAgent.js:277
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
@ -337,11 +320,6 @@ msgstr "Акно ўваходу"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Памылка ідэнтыфікацыі"
|
msgstr "Памылка ідэнтыфікацыі"
|
||||||
|
|
||||||
#. We don't show fingerprint messages directly since it's
|
|
||||||
#. not the main auth service. Instead we use the messages
|
|
||||||
#. as a cue to display our own message.
|
|
||||||
#. Translators: this message is shown below the password entry field
|
|
||||||
#. to indicate the user can swipe their finger instead
|
|
||||||
#: ../js/gdm/util.js:436
|
#: ../js/gdm/util.js:436
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(або правядзіце пальцам)"
|
msgstr "(або правядзіце пальцам)"
|
||||||
@ -350,14 +328,12 @@ msgstr "(або правядзіце пальцам)"
|
|||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Загад не знойдзены"
|
msgstr "Загад не знойдзены"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
|
||||||
#. something nicer
|
|
||||||
#: ../js/misc/util.js:131
|
#: ../js/misc/util.js:131
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Не ўдалося разабраць загад:"
|
msgstr "Не ўдалося разабраць загад:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:139
|
#: ../js/misc/util.js:139
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Не ўдалося выканаць \"%s\":"
|
msgstr "Не ўдалося выканаць \"%s\":"
|
||||||
|
|
||||||
@ -386,16 +362,16 @@ msgid "Add to Favorites"
|
|||||||
msgstr "Дадаць у спіс упадабанага"
|
msgstr "Дадаць у спіс упадабанага"
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:87
|
#: ../js/ui/appFavorites.js:87
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has been added to your favorites."
|
msgid "%s has been added to your favorites."
|
||||||
msgstr "%s дададзены ў ваш спіс упадабанага."
|
msgstr "%s дададзены ў ваш спіс упадабанага."
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:121
|
#: ../js/ui/appFavorites.js:121
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s выдалены з вашага спіса ўпадабанага."
|
msgstr "%s выдалены з вашага спіса ўпадабанага."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Настройкі"
|
msgstr "Настройкі"
|
||||||
@ -406,68 +382,68 @@ msgstr "Змяніць фон..."
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:62
|
#: ../js/ui/calendar.js:62
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Увесь дзень"
|
msgstr "Увесь дзень"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 24h format,
|
#. Translators: Shown in calendar event list, if 24h format,
|
||||||
#. \u2236 is a ratio character, similar to :
|
#. \u2236 is a ratio character, similar to : */
|
||||||
#: ../js/ui/calendar.js:68
|
#: ../js/ui/calendar.js:68
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%H\\u2236%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H\\u2236%M"
|
msgstr "%H∶%M"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space */
|
||||||
#: ../js/ui/calendar.js:77
|
#: ../js/ui/calendar.js:77
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%l\\u2236%M\\u2009%p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%l\\u2236%M\\u2009%p"
|
msgstr "%l∶%M %p"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Sunday.
|
#. Translators: Calendar grid abbreviation for Sunday.
|
||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:108
|
#: ../js/ui/calendar.js:108
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "Н"
|
msgstr "Н"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday
|
#. Translators: Calendar grid abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:110
|
#: ../js/ui/calendar.js:110
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "П"
|
msgstr "П"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday
|
#. Translators: Calendar grid abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:112
|
#: ../js/ui/calendar.js:112
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "А"
|
msgstr "А"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday
|
#. Translators: Calendar grid abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:114
|
#: ../js/ui/calendar.js:114
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "С"
|
msgstr "С"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday
|
#. Translators: Calendar grid abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:116
|
#: ../js/ui/calendar.js:116
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "Ч"
|
msgstr "Ч"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday
|
#. Translators: Calendar grid abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:118
|
#: ../js/ui/calendar.js:118
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "П"
|
msgstr "П"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday
|
#. Translators: Calendar grid abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:120
|
#: ../js/ui/calendar.js:120
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -478,48 +454,52 @@ msgstr "С"
|
|||||||
#. * NOTE: These list abbreviations are normally not shown together
|
#. * NOTE: These list abbreviations are normally not shown together
|
||||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||||
#. * both be 'T').
|
#. * both be 'T').
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:133
|
#: ../js/ui/calendar.js:133
|
||||||
msgctxt "list sunday"
|
msgctxt "list sunday"
|
||||||
msgid "Su"
|
msgid "Su"
|
||||||
msgstr "Н"
|
msgstr "Н"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Monday
|
#. Translators: Event list abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:135
|
#: ../js/ui/calendar.js:135
|
||||||
msgctxt "list monday"
|
msgctxt "list monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "Пн"
|
msgstr "Пн"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Tuesday
|
#. Translators: Event list abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:137
|
#: ../js/ui/calendar.js:137
|
||||||
msgctxt "list tuesday"
|
msgctxt "list tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "А"
|
msgstr "А"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Wednesday
|
#. Translators: Event list abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:139
|
#: ../js/ui/calendar.js:139
|
||||||
msgctxt "list wednesday"
|
msgctxt "list wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "Ср"
|
msgstr "Ср"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Thursday
|
#. Translators: Event list abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:141
|
#: ../js/ui/calendar.js:141
|
||||||
msgctxt "list thursday"
|
msgctxt "list thursday"
|
||||||
msgid "Th"
|
msgid "Th"
|
||||||
msgstr "Ч"
|
msgstr "Ч"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Friday
|
#. Translators: Event list abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:143
|
#: ../js/ui/calendar.js:143
|
||||||
msgctxt "list friday"
|
msgctxt "list friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "Пт"
|
msgstr "Пт"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Saturday
|
#. Translators: Event list abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:145
|
#: ../js/ui/calendar.js:145
|
||||||
msgctxt "list saturday"
|
msgctxt "list saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "Сб"
|
msgstr "Сб"
|
||||||
|
|
||||||
|
#: ../js/ui/calendar.js:389
|
||||||
|
msgid "calendar:MY"
|
||||||
|
msgstr "calendar:MY"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:447
|
#: ../js/ui/calendar.js:447
|
||||||
msgid "Previous month"
|
msgid "Previous month"
|
||||||
msgstr "Папярэдні месяц"
|
msgstr "Папярэдні месяц"
|
||||||
@ -528,18 +508,18 @@ msgstr "Папярэдні месяц"
|
|||||||
msgid "Next month"
|
msgid "Next month"
|
||||||
msgstr "Наступны месяц"
|
msgstr "Наступны месяц"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events */
|
||||||
#: ../js/ui/calendar.js:753
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "Нічога не прымеркавана"
|
msgstr "Нічога не прымеркавана"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||||
#: ../js/ui/calendar.js:771
|
#: ../js/ui/calendar.js:771
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||||
#: ../js/ui/calendar.js:774
|
#: ../js/ui/calendar.js:774
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
@ -574,7 +554,7 @@ msgid "Removable Devices"
|
|||||||
msgstr "Зменныя прыстасаванні"
|
msgstr "Зменныя прыстасаванні"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:594
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Адкрыць у %s"
|
msgstr "Адкрыць у %s"
|
||||||
|
|
||||||
@ -591,11 +571,10 @@ msgid "Type again:"
|
|||||||
msgstr "Паўтарыце пароль:"
|
msgstr "Паўтарыце пароль:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:695
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Злучыць"
|
msgstr "Злучыць"
|
||||||
|
|
||||||
#. Cisco LEAP
|
|
||||||
#: ../js/ui/components/networkAgent.js:222
|
#: ../js/ui/components/networkAgent.js:222
|
||||||
#: ../js/ui/components/networkAgent.js:234
|
#: ../js/ui/components/networkAgent.js:234
|
||||||
#: ../js/ui/components/networkAgent.js:261
|
#: ../js/ui/components/networkAgent.js:261
|
||||||
@ -604,7 +583,6 @@ msgstr "Злучыць"
|
|||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "Пароль: "
|
msgstr "Пароль: "
|
||||||
|
|
||||||
#. static WEP
|
|
||||||
#: ../js/ui/components/networkAgent.js:227
|
#: ../js/ui/components/networkAgent.js:227
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "Ключ: "
|
msgstr "Ключ: "
|
||||||
@ -626,7 +604,7 @@ msgid "Authentication required by wireless network"
|
|||||||
msgstr "Для бесправадной сеткі патрэбная ідэнтыфікацыя"
|
msgstr "Для бесправадной сеткі патрэбная ідэнтыфікацыя"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:309
|
#: ../js/ui/components/networkAgent.js:309
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
"'%s'."
|
"'%s'."
|
||||||
@ -665,7 +643,7 @@ msgid "Mobile broadband network password"
|
|||||||
msgstr "Пароль да шырокапалоснай мабільнай сеткі"
|
msgstr "Пароль да шырокапалоснай мабільнай сеткі"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:336
|
#: ../js/ui/components/networkAgent.js:336
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "Каб злучыцца з \"%s\", патрэбны пароль."
|
msgstr "Каб злучыцца з \"%s\", патрэбны пароль."
|
||||||
|
|
||||||
@ -684,23 +662,19 @@ msgstr "Ідэнтыфікаваць"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance.
|
#. * for instance. */
|
||||||
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "На жаль, ідэнтыфікацыя не адбылася. Паўтарыце спробу."
|
msgstr "На жаль, ідэнтыфікацыя не адбылася. Паўтарыце спробу."
|
||||||
|
|
||||||
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
|
|
||||||
#. system-users for now as Empathy does.
|
|
||||||
#: ../js/ui/components/telepathyClient.js:238
|
#: ../js/ui/components/telepathyClient.js:238
|
||||||
msgid "Invitation"
|
msgid "Invitation"
|
||||||
msgstr "Запрашэнне"
|
msgstr "Запрашэнне"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:298
|
#: ../js/ui/components/telepathyClient.js:298
|
||||||
msgid "Call"
|
msgid "Call"
|
||||||
msgstr "Званок"
|
msgstr "Званок"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:314
|
#: ../js/ui/components/telepathyClient.js:314
|
||||||
msgid "File Transfer"
|
msgid "File Transfer"
|
||||||
msgstr "Перадача файла"
|
msgstr "Перадача файла"
|
||||||
@ -717,49 +691,45 @@ msgstr "Вярнуць гук"
|
|||||||
msgid "Mute"
|
msgid "Mute"
|
||||||
msgstr "Абязгучыць"
|
msgstr "Абязгучыць"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:942
|
#: ../js/ui/components/telepathyClient.js:942
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>Учора</b>, <b>%H:%M</b>"
|
msgstr "<b>Учора</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30
|
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
|
||||||
#: ../js/ui/components/telepathyClient.js:948
|
#: ../js/ui/components/telepathyClient.js:948
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%A</b>, <b>%H:%M</b>"
|
msgid "<b>%A</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"
|
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:953
|
#: ../js/ui/components/telepathyClient.js:953
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%d</b> <b>%B</b>, <b>%H:%M</b>"
|
msgstr "<b>%d</b> <b>%B</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"
|
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:957
|
#: ../js/ui/components/telepathyClient.js:957
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
msgstr "<b>%d</b> <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgstr "<b>%d</b> <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name.
|
#. IM name. */
|
||||||
#: ../js/ui/components/telepathyClient.js:986
|
#: ../js/ui/components/telepathyClient.js:986
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
msgstr "%s змяніў імя на %s"
|
msgstr "%s змяніў імя на %s"
|
||||||
|
|
||||||
#. translators: argument is a room name like
|
#. translators: argument is a room name like
|
||||||
#. * room@jabber.org for example.
|
#. * room@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1089
|
#: ../js/ui/components/telepathyClient.js:1089
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Invitation to %s"
|
msgid "Invitation to %s"
|
||||||
msgstr "Запрашэнне ў %s"
|
msgstr "Запрашэнне ў %s"
|
||||||
|
|
||||||
#. translators: first argument is the name of a contact and the second
|
#. 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
|
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||||
#. * for example.
|
#. * for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1097
|
#: ../js/ui/components/telepathyClient.js:1097
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is inviting you to join %s"
|
msgid "%s is inviting you to join %s"
|
||||||
msgstr "Удзельнік %s запрашае вас далучыцца да %s"
|
msgstr "Удзельнік %s запрашае вас далучыцца да %s"
|
||||||
|
|
||||||
@ -776,19 +746,19 @@ msgstr "Адмовіцца"
|
|||||||
msgid "Accept"
|
msgid "Accept"
|
||||||
msgstr "Прыняць"
|
msgstr "Прыняць"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1130
|
#: ../js/ui/components/telepathyClient.js:1130
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Video call from %s"
|
msgid "Video call from %s"
|
||||||
msgstr "Відэазванок ад %s"
|
msgstr "Відэазванок ад %s"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1133
|
#: ../js/ui/components/telepathyClient.js:1133
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Call from %s"
|
msgid "Call from %s"
|
||||||
msgstr "Званок ад %s"
|
msgstr "Званок ад %s"
|
||||||
|
|
||||||
#. translators: this is a button label (verb), not a noun
|
#. translators: this is a button label (verb), not a noun */
|
||||||
#: ../js/ui/components/telepathyClient.js:1142
|
#: ../js/ui/components/telepathyClient.js:1142
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Адказаць"
|
msgstr "Адказаць"
|
||||||
@ -797,15 +767,15 @@ msgstr "Адказаць"
|
|||||||
#. * the contact's alias and the second one is the
|
#. * the contact's alias and the second one is the
|
||||||
#. * file name. The string will be something
|
#. * file name. The string will be something
|
||||||
#. * like: "Alice is sending you test.ogg"
|
#. * like: "Alice is sending you test.ogg"
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1174
|
#: ../js/ui/components/telepathyClient.js:1174
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is sending you %s"
|
msgid "%s is sending you %s"
|
||||||
msgstr "%s пасылае вам %s"
|
msgstr "%s пасылае вам %s"
|
||||||
|
|
||||||
#. To translators: The parameter is the contact's alias
|
#. To translators: The parameter is the contact's alias */
|
||||||
#: ../js/ui/components/telepathyClient.js:1209
|
#: ../js/ui/components/telepathyClient.js:1209
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s would like permission to see when you are online"
|
msgid "%s would like permission to see when you are online"
|
||||||
msgstr "%s просіць дазволу на прагляд вашага сеткавага стану"
|
msgstr "%s просіць дазволу на прагляд вашага сеткавага стану"
|
||||||
|
|
||||||
@ -912,9 +882,9 @@ msgid "Internal error"
|
|||||||
msgstr "Унутраная памылка"
|
msgstr "Унутраная памылка"
|
||||||
|
|
||||||
#. translators: argument is the account name, like
|
#. translators: argument is the account name, like
|
||||||
#. * name@jabber.org for example.
|
#. * name@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1357
|
#: ../js/ui/components/telepathyClient.js:1357
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Unable to connect to %s"
|
msgid "Unable to connect to %s"
|
||||||
msgstr "Не ўдалося злучыцца з %s"
|
msgstr "Не ўдалося злучыцца з %s"
|
||||||
|
|
||||||
@ -934,8 +904,6 @@ msgstr "Вокны"
|
|||||||
msgid "Show Applications"
|
msgid "Show Applications"
|
||||||
msgstr "Паказаць праграмы"
|
msgstr "Паказаць праграмы"
|
||||||
|
|
||||||
#. Translators: this is the name of the dock/favorites area on
|
|
||||||
#. the left of the overview
|
|
||||||
#: ../js/ui/dash.js:442
|
#: ../js/ui/dash.js:442
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "Прыборная дошка"
|
msgstr "Прыборная дошка"
|
||||||
@ -954,13 +922,13 @@ msgstr "Настройкі даты і часу"
|
|||||||
|
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. 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").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/dateMenu.js:202
|
#: ../js/ui/dateMenu.js:202
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A, %e %B, %Y"
|
msgstr "%A, %e %B, %Y"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:62
|
#: ../js/ui/endSessionDialog.js:62
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgctxt "title"
|
msgctxt "title"
|
||||||
msgid "Log Out %s"
|
msgid "Log Out %s"
|
||||||
msgstr "Заканчэнне сеанса (%s)"
|
msgstr "Заканчэнне сеанса (%s)"
|
||||||
@ -971,7 +939,7 @@ msgid "Log Out"
|
|||||||
msgstr "Заканчэнне сеанса"
|
msgstr "Заканчэнне сеанса"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:65
|
#: ../js/ui/endSessionDialog.js:65
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s will be logged out automatically in %d second."
|
msgid "%s will be logged out automatically in %d second."
|
||||||
msgid_plural "%s will be logged out automatically in %d seconds."
|
msgid_plural "%s will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "%s аўтаматычна скончыць сеанс працы з сістэмай праз %d секунду."
|
msgstr[0] "%s аўтаматычна скончыць сеанс працы з сістэмай праз %d секунду."
|
||||||
@ -979,7 +947,7 @@ msgstr[1] "%s аўтаматычна скончыць сеанс працы з
|
|||||||
msgstr[2] "%s аўтаматычна скончыць сеанс працы з сістэмай праз %d секунд."
|
msgstr[2] "%s аўтаматычна скончыць сеанс працы з сістэмай праз %d секунд."
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:70
|
#: ../js/ui/endSessionDialog.js:70
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "You will be logged out automatically in %d second."
|
msgid "You will be logged out automatically in %d second."
|
||||||
msgid_plural "You will be logged out automatically in %d seconds."
|
msgid_plural "You will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "Вы аўтаматычна скончыце сеанс працы з сістэмай праз %d секунду."
|
msgstr[0] "Вы аўтаматычна скончыце сеанс працы з сістэмай праз %d секунду."
|
||||||
@ -997,7 +965,7 @@ msgid "Power Off"
|
|||||||
msgstr "Выключэнне камп'ютара"
|
msgstr "Выключэнне камп'ютара"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:83
|
#: ../js/ui/endSessionDialog.js:83
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will power off automatically in %d second."
|
msgid "The system will power off automatically in %d second."
|
||||||
msgid_plural "The system will power off automatically in %d seconds."
|
msgid_plural "The system will power off automatically in %d seconds."
|
||||||
msgstr[0] "Сістэма аўтаматычна выключыцца праз %d секунду."
|
msgstr[0] "Сістэма аўтаматычна выключыцца праз %d секунду."
|
||||||
@ -1020,7 +988,7 @@ msgid "Restart"
|
|||||||
msgstr "Перазапуск сістэмы"
|
msgstr "Перазапуск сістэмы"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:99
|
#: ../js/ui/endSessionDialog.js:99
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will restart automatically in %d second."
|
msgid "The system will restart automatically in %d second."
|
||||||
msgid_plural "The system will restart automatically in %d seconds."
|
msgid_plural "The system will restart automatically in %d seconds."
|
||||||
msgstr[0] "Сістэма аўтаматычна перазапусціцца праз %d секунду."
|
msgstr[0] "Сістэма аўтаматычна перазапусціцца праз %d секунду."
|
||||||
@ -1033,7 +1001,7 @@ msgid "Restart & Install Updates"
|
|||||||
msgstr "Перазапуск і ўсталяванне абнаўленняў"
|
msgstr "Перазапуск і ўсталяванне абнаўленняў"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:114
|
#: ../js/ui/endSessionDialog.js:114
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will automatically restart and install updates in %d second."
|
msgid "The system will automatically restart and install updates in %d second."
|
||||||
msgid_plural ""
|
msgid_plural ""
|
||||||
"The system will automatically restart and install updates in %d seconds."
|
"The system will automatically restart and install updates in %d seconds."
|
||||||
@ -1057,15 +1025,15 @@ msgstr "Некаторыя праграмы занятыя або маюць н
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Іншыя карыстальнікі ў сістэме."
|
msgstr "Іншыя карыстальнікі ў сістэме."
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login
|
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||||
#: ../js/ui/endSessionDialog.js:479
|
#: ../js/ui/endSessionDialog.js:479
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (аддалены сеанс)"
|
msgstr "%s (аддалены сеанс)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console
|
#. Translators: Console here refers to a tty like a VT console */
|
||||||
#: ../js/ui/endSessionDialog.js:482
|
#: ../js/ui/endSessionDialog.js:482
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (кансоль)"
|
msgstr "%s (кансоль)"
|
||||||
|
|
||||||
@ -1074,11 +1042,11 @@ msgid "Install"
|
|||||||
msgstr "Усталяваць"
|
msgstr "Усталяваць"
|
||||||
|
|
||||||
#: ../js/ui/extensionDownloader.js:204
|
#: ../js/ui/extensionDownloader.js:204
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||||
msgstr "Сцягнуць і ўсталяваць \"%s\" з extensions.gnome.org?"
|
msgstr "Сцягнуць і ўсталяваць \"%s\" з extensions.gnome.org?"
|
||||||
|
|
||||||
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
|
#: ../js/ui/keyboard.js:619
|
||||||
msgid "Keyboard"
|
msgid "Keyboard"
|
||||||
msgstr "Клавіятура"
|
msgstr "Клавіятура"
|
||||||
|
|
||||||
@ -1086,9 +1054,9 @@ msgstr "Клавіятура"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "Няма ўсталяваных пашырэнняў"
|
msgstr "Няма ўсталяваных пашырэнняў"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID.
|
#. Translators: argument is an extension UUID. */
|
||||||
#: ../js/ui/lookingGlass.js:743
|
#: ../js/ui/lookingGlass.js:743
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
msgstr "%s не зрабіў ніякіх памылак."
|
msgstr "%s не зрабіў ніякіх памылак."
|
||||||
|
|
||||||
@ -1168,7 +1136,7 @@ msgid "Unknown"
|
|||||||
msgstr "Невядомая"
|
msgstr "Невядомая"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
msgstr[0] "%d новае паведамленне"
|
msgstr[0] "%d новае паведамленне"
|
||||||
@ -1186,7 +1154,7 @@ msgstr "Агляд"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters. */
|
||||||
#: ../js/ui/overview.js:258
|
#: ../js/ui/overview.js:258
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Увядзіце тэкст для пошуку..."
|
msgstr "Увядзіце тэкст для пошуку..."
|
||||||
@ -1196,20 +1164,15 @@ msgid "Quit"
|
|||||||
msgstr "Выйсці"
|
msgstr "Выйсці"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview". */
|
||||||
#: ../js/ui/panel.js:570
|
#: ../js/ui/panel.js:570
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Заняткі"
|
msgstr "Заняткі"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Верхняя панэль"
|
msgstr "Верхняя панэль"
|
||||||
|
|
||||||
#. Translators: this MUST be either "toggle-switch-us"
|
|
||||||
#. (for toggle switches containing the English words
|
|
||||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
|
||||||
#. switches containing "◯" and "|"). Other values will
|
|
||||||
#. simply result in invisible toggle switches.
|
|
||||||
#: ../js/ui/popupMenu.js:233
|
#: ../js/ui/popupMenu.js:233
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
@ -1223,13 +1186,13 @@ msgid "Close"
|
|||||||
msgstr "Закрыць"
|
msgstr "Закрыць"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format */
|
||||||
#: ../js/ui/screenShield.js:88
|
#: ../js/ui/screenShield.js:88
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:154
|
#: ../js/ui/screenShield.js:154
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "%d новае апавяшчэнне"
|
msgstr[0] "%d новае апавяшчэнне"
|
||||||
@ -1244,13 +1207,6 @@ msgstr "Заблакіраваць"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME патрабуе блакіравання экрана"
|
msgstr "GNOME патрабуе блакіравання экрана"
|
||||||
|
|
||||||
#. We could not become modal, so we can't activate the
|
|
||||||
#. screenshield. The user is probably very upset at this
|
|
||||||
#. point, but any application using global grabs is broken
|
|
||||||
#. Just tell him to stop using this app
|
|
||||||
#.
|
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
|
||||||
#. screen, where we're not affected by grabs
|
|
||||||
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "Не ўдалося заблакіраваць"
|
msgstr "Не ўдалося заблакіраваць"
|
||||||
@ -1259,11 +1215,11 @@ msgstr "Не ўдалося заблакіраваць"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Блакіраванне стрымана праграмай"
|
msgstr "Блакіраванне стрымана праграмай"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Пошук..."
|
msgstr "Пошук..."
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Нічога не знойдзена."
|
msgstr "Нічога не знойдзена."
|
||||||
|
|
||||||
@ -1335,8 +1291,6 @@ msgstr "Высокая кантраснасць"
|
|||||||
msgid "Large Text"
|
msgid "Large Text"
|
||||||
msgstr "Буйны тэкст"
|
msgstr "Буйны тэкст"
|
||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
|
||||||
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
||||||
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
||||||
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
||||||
@ -1344,7 +1298,7 @@ msgid "Bluetooth"
|
|||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1040 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "Выключыць"
|
msgstr "Выключыць"
|
||||||
|
|
||||||
@ -1353,7 +1307,7 @@ msgid "Bluetooth Settings"
|
|||||||
msgstr "Настройкі Bluetooth"
|
msgstr "Настройкі Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:58
|
#: ../js/ui/status/bluetooth.js:58
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d злучанае прыстасаванне"
|
msgstr[0] "%d злучанае прыстасаванне"
|
||||||
@ -1361,13 +1315,13 @@ msgstr[1] "%d злучаныя прыстасаванні"
|
|||||||
msgstr[2] "%d злучаных прыстасаванняў"
|
msgstr[2] "%d злучаных прыстасаванняў"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "Запыт на ўпаўнаважанне ад %s"
|
msgstr "Запыт на ўпаўнаважанне ад %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
||||||
#: ../js/ui/status/bluetooth.js:203
|
#: ../js/ui/status/bluetooth.js:203
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "Прыстасаванне %s хоча спарыцца з гэтым камп'ютарам"
|
msgstr "Прыстасаванне %s хоча спарыцца з гэтым камп'ютарам"
|
||||||
|
|
||||||
@ -1380,7 +1334,7 @@ msgid "Deny"
|
|||||||
msgstr "Адмовіць"
|
msgstr "Адмовіць"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:135
|
#: ../js/ui/status/bluetooth.js:135
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "Прыстасаванне %s хоча даступіцца да паслугі \"%s\""
|
msgstr "Прыстасаванне %s хоча даступіцца да паслугі \"%s\""
|
||||||
|
|
||||||
@ -1396,19 +1350,19 @@ msgstr "Даць дазвол аднойчы"
|
|||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "Адмовіць"
|
msgstr "Адмовіць"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name */
|
||||||
#: ../js/ui/status/bluetooth.js:166
|
#: ../js/ui/status/bluetooth.js:166
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "Пацвярджэнне спарвання з %s"
|
msgstr "Пацвярджэнне спарвання з %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:173
|
#: ../js/ui/status/bluetooth.js:173
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
msgstr "Праверце, ці супадае пароль \"%06d\" з нумарам на прыстасаванні."
|
msgstr "Праверце, ці супадае пароль \"%06d\" з нумарам на прыстасаванні."
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun */
|
||||||
#: ../js/ui/status/bluetooth.js:176
|
#: ../js/ui/status/bluetooth.js:176
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "Супадае"
|
msgstr "Супадае"
|
||||||
@ -1418,7 +1372,7 @@ msgid "Does not match"
|
|||||||
msgstr "Не супадае"
|
msgstr "Не супадае"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:196
|
#: ../js/ui/status/bluetooth.js:196
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "Запыт на спарванне з %s"
|
msgstr "Запыт на спарванне з %s"
|
||||||
|
|
||||||
@ -1434,25 +1388,21 @@ msgstr "Добра"
|
|||||||
msgid "Brightness"
|
msgid "Brightness"
|
||||||
msgstr "Яркасць"
|
msgstr "Яркасць"
|
||||||
|
|
||||||
#: ../js/ui/status/keyboard.js:403
|
|
||||||
msgid "Show Keyboard Layout"
|
|
||||||
msgstr "Паказаць раскладку"
|
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:72
|
#: ../js/ui/status/network.js:72
|
||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<невядома>"
|
msgstr "<невядома>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1055
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "Выключана"
|
msgstr "Выключана"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:961
|
||||||
#: ../js/ui/status/rfkill.js:49
|
#: ../js/ui/status/rfkill.js:49
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "Сеткавыя настройкі"
|
msgstr "Сеткавыя настройкі"
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:364
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "непадкантрольна"
|
msgstr "непадкантрольна"
|
||||||
@ -1461,64 +1411,64 @@ msgstr "непадкантрольна"
|
|||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "адлучэнне..."
|
msgstr "адлучэнне..."
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1106
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "усталяванне злучэння..."
|
msgstr "усталяванне злучэння..."
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password */
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1109
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "патрэбная ідэнтыфікацыя"
|
msgstr "патрэбная ідэнтыфікацыя"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing */
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:383
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "няма апаратнага апраграмавання"
|
msgstr "няма апаратнага апраграмавання"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage */
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:387
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "недаступна"
|
msgstr "недаступна"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1111
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "не ўдалося злучыцца"
|
msgstr "не ўдалося злучыцца"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:660
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Сеткі Wi-Fi"
|
msgstr "Сеткі Wi-Fi"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:662
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "Выберыце сетку"
|
msgstr "Выберыце сетку"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:686
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "Няма сетак"
|
msgstr "Няма сетак"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:955
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Выбраць сетку"
|
msgstr "Выбраць сетку"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:1040
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Уключыць"
|
msgstr "Уключыць"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1174
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1314
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Сеткавы кіраўнік"
|
msgstr "Сеткавы кіраўнік"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1353
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Не ўдалося злучыцца"
|
msgstr "Не ўдалося злучыцца"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1354
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Не ўдалося ўключыць сеткавае злучэнне"
|
msgstr "Не ўдалося ўключыць сеткавае злучэнне"
|
||||||
|
|
||||||
@ -1534,28 +1484,20 @@ msgstr "Настройкі сілкавання"
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "Поўны зарад"
|
msgstr "Поўны зарад"
|
||||||
|
|
||||||
#. 0 is reported when UPower does not have enough data
|
|
||||||
#. to estimate battery life
|
|
||||||
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
|
||||||
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "Прыблізная ацэнка..."
|
msgstr "Прыблізная ацэнка..."
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:77
|
#: ../js/ui/status/power.js:77
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d\\u2236%02d Remaining (%d%%)"
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
msgstr "Засталося: %d\\u2236%02d (%d%%)"
|
msgstr "Засталося: %d∶%02d (%d%%)"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:82
|
#: ../js/ui/status/power.js:82
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d\\u2236%02d Until Full (%d%%)"
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
msgstr "Да поўнага зараду: %d\\u2236%02d (%d%%)"
|
msgstr "Да поўнага зараду: %d∶%02d (%d%%)"
|
||||||
|
|
||||||
#. The menu only appears when airplane mode is on, so just
|
|
||||||
#. statically build it as if it was on, rather than dynamically
|
|
||||||
#. changing the menu contents.
|
|
||||||
#: ../js/ui/status/rfkill.js:43
|
#: ../js/ui/status/rfkill.js:43
|
||||||
msgid "Airplane Mode"
|
msgid "Airplane Mode"
|
||||||
msgstr "Рэжым самалёта"
|
msgstr "Рэжым самалёта"
|
||||||
@ -1613,7 +1555,7 @@ msgid "Search"
|
|||||||
msgstr "Пошук"
|
msgstr "Пошук"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:77
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
"%s"
|
"%s"
|
||||||
@ -1622,12 +1564,12 @@ msgstr ""
|
|||||||
"%s"
|
"%s"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:81
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "Так сказаў Вяшчун %s"
|
msgstr "Так сказаў Вяшчун %s"
|
||||||
|
|
||||||
#: ../js/ui/windowAttentionHandler.js:19
|
#: ../js/ui/windowAttentionHandler.js:19
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "'%s' is ready"
|
msgid "'%s' is ready"
|
||||||
msgstr "\"%s\" гатова"
|
msgstr "\"%s\" гатова"
|
||||||
|
|
||||||
@ -1637,7 +1579,7 @@ msgstr "Захаваць гэтыя настройкі дысплея?"
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/windowManager.js:75
|
#: ../js/ui/windowManager.js:75
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Вярнуць былыя настройкі"
|
msgstr "Вярнуць былыя настройкі"
|
||||||
@ -1647,7 +1589,7 @@ msgid "Keep Changes"
|
|||||||
msgstr "Захаваць змены"
|
msgstr "Захаваць змены"
|
||||||
|
|
||||||
#: ../js/ui/windowManager.js:97
|
#: ../js/ui/windowManager.js:97
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Settings changes will revert in %d second"
|
msgid "Settings changes will revert in %d second"
|
||||||
msgid_plural "Settings changes will revert in %d seconds"
|
msgid_plural "Settings changes will revert in %d seconds"
|
||||||
msgstr[0] "Змены настроек будуць скасаваныя праз %d секунду"
|
msgstr[0] "Змены настроек будуць скасаваныя праз %d секунду"
|
||||||
@ -1714,3 +1656,4 @@ msgstr "Пароль не можа быць пустым"
|
|||||||
#: ../src/shell-polkit-authentication-agent.c:343
|
#: ../src/shell-polkit-authentication-agent.c:343
|
||||||
msgid "Authentication dialog was dismissed by the user"
|
msgid "Authentication dialog was dismissed by the user"
|
||||||
msgstr "Карыстальнік праігнараваў дыялогавае акенца ідэнтыфікацыі"
|
msgstr "Карыстальнік праігнараваў дыялогавае акенца ідэнтыфікацыі"
|
||||||
|
|
||||||
|
1828
po/ca@valencia.po
375
po/cs.po
@ -12,8 +12,8 @@ msgstr ""
|
|||||||
"Project-Id-Version: gnome-shell\n"
|
"Project-Id-Version: gnome-shell\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
|
"POT-Creation-Date: 2013-10-10 21:27+0000\n"
|
||||||
"PO-Revision-Date: 2013-09-24 16:09+0200\n"
|
"PO-Revision-Date: 2013-10-11 16:28+0200\n"
|
||||||
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
|
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
|
||||||
"Language-Team: Czech <gnome-cs-list@gnome.org>\n"
|
"Language-Team: Czech <gnome-cs-list@gnome.org>\n"
|
||||||
"Language: cs\n"
|
"Language: cs\n"
|
||||||
@ -58,7 +58,6 @@ msgid "Window management and application launching"
|
|||||||
msgstr "Správa oken a spouštění aplikací"
|
msgstr "Správa oken a spouštění aplikací"
|
||||||
|
|
||||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||||
#: ../js/extensionPrefs/main.js:153
|
|
||||||
msgid "GNOME Shell Extension Preferences"
|
msgid "GNOME Shell Extension Preferences"
|
||||||
msgstr "Předvolby rozšíření GNOME Shell"
|
msgstr "Předvolby rozšíření GNOME Shell"
|
||||||
|
|
||||||
@ -269,16 +268,6 @@ msgstr "Pracovní plochy jen na hlavním monitoru"
|
|||||||
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||||
msgstr "Se změnou zaměření v režimu myši čekat na zastavení pohybu ukazatele"
|
msgstr "Se změnou zaměření v režimu myši čekat na zastavení pohybu ukazatele"
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:125
|
|
||||||
#, c-format
|
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
|
||||||
msgstr ""
|
|
||||||
"Při načítání dialogového okna s vlastnostmi rozšíření %s se vyskytla chyba:"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:165
|
|
||||||
msgid "Extension"
|
|
||||||
msgstr "Rozšíření"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:189
|
#: ../js/extensionPrefs/main.js:189
|
||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -287,7 +276,7 @@ msgstr ""
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:728
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Zrušit"
|
msgstr "Zrušit"
|
||||||
|
|
||||||
@ -309,23 +298,15 @@ msgstr "Přihlásit se"
|
|||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Vybrat sezení"
|
msgstr "Vybrat sezení"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
|
||||||
#. login screen. It can be activated to reveal an entry for
|
|
||||||
#. manually entering the username.
|
|
||||||
#: ../js/gdm/loginDialog.js:454
|
#: ../js/gdm/loginDialog.js:454
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Nejste na seznamu?"
|
msgstr "Nejste na seznamu?"
|
||||||
|
|
||||||
#. Translators: this message is shown below the username entry field
|
|
||||||
#. to clue the user in on how to login to the local network realm
|
|
||||||
#: ../js/gdm/loginDialog.js:622
|
#: ../js/gdm/loginDialog.js:622
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(např. uživatel nebo %s)"
|
msgstr "(např. uživatel nebo %s)"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
|
||||||
#. is not visible here since we only care about phase2 authentication
|
|
||||||
#. (and don't even care of which one)
|
|
||||||
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
||||||
#: ../js/ui/components/networkAgent.js:277
|
#: ../js/ui/components/networkAgent.js:277
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
@ -339,27 +320,20 @@ msgstr "Přihlašovací okno"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Chyba ověření"
|
msgstr "Chyba ověření"
|
||||||
|
|
||||||
#. We don't show fingerprint messages directly since it's
|
|
||||||
#. not the main auth service. Instead we use the messages
|
|
||||||
#. as a cue to display our own message.
|
|
||||||
#. Translators: this message is shown below the password entry field
|
|
||||||
#. to indicate the user can swipe their finger instead
|
|
||||||
#: ../js/gdm/util.js:436
|
#: ../js/gdm/util.js:436
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(nebo otiskněte prst)"
|
msgstr "(nebo otiskněte prst)"
|
||||||
|
|
||||||
#: ../js/misc/util.js:98
|
#: ../js/misc/util.js:115
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Příkaz nenalezen"
|
msgstr "Příkaz nenalezen"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
#: ../js/misc/util.js:148
|
||||||
#. something nicer
|
|
||||||
#: ../js/misc/util.js:131
|
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Nelze analyzovat příkaz:"
|
msgstr "Nelze analyzovat příkaz:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:139
|
#: ../js/misc/util.js:156
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Vykonání „%s“ selhalo:"
|
msgstr "Vykonání „%s“ selhalo:"
|
||||||
|
|
||||||
@ -388,16 +362,16 @@ msgid "Add to Favorites"
|
|||||||
msgstr "Přidat mezi oblíbené"
|
msgstr "Přidat mezi oblíbené"
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:87
|
#: ../js/ui/appFavorites.js:87
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has been added to your favorites."
|
msgid "%s has been added to your favorites."
|
||||||
msgstr "%s byl přidán mezi oblíbené."
|
msgstr "%s byl přidán mezi oblíbené."
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:121
|
#: ../js/ui/appFavorites.js:121
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s byl odstraněn z oblíbených."
|
msgstr "%s byl odstraněn z oblíbených."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Nastavení"
|
msgstr "Nastavení"
|
||||||
@ -408,68 +382,68 @@ msgstr "Změnit pozadí…"
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:62
|
#: ../js/ui/calendar.js:62
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Celý den"
|
msgstr "Celý den"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 24h format,
|
#. Translators: Shown in calendar event list, if 24h format,
|
||||||
#. \u2236 is a ratio character, similar to :
|
#. \u2236 is a ratio character, similar to : */
|
||||||
#: ../js/ui/calendar.js:68
|
#: ../js/ui/calendar.js:68
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%H\\u2236%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H:%M"
|
msgstr "%k∶%M"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space */
|
||||||
#: ../js/ui/calendar.js:77
|
#: ../js/ui/calendar.js:77
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%l\\u2236%M\\u2009%p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%l:%M\\u2009%p"
|
msgstr "%l∶%M %p"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Sunday.
|
#. Translators: Calendar grid abbreviation for Sunday.
|
||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:108
|
#: ../js/ui/calendar.js:108
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "Ne"
|
msgstr "Ne"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday
|
#. Translators: Calendar grid abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:110
|
#: ../js/ui/calendar.js:110
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "Po"
|
msgstr "Po"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday
|
#. Translators: Calendar grid abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:112
|
#: ../js/ui/calendar.js:112
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "Út"
|
msgstr "Út"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday
|
#. Translators: Calendar grid abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:114
|
#: ../js/ui/calendar.js:114
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "St"
|
msgstr "St"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday
|
#. Translators: Calendar grid abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:116
|
#: ../js/ui/calendar.js:116
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "Čt"
|
msgstr "Čt"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday
|
#. Translators: Calendar grid abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:118
|
#: ../js/ui/calendar.js:118
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "Pá"
|
msgstr "Pá"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday
|
#. Translators: Calendar grid abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:120
|
#: ../js/ui/calendar.js:120
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -480,48 +454,52 @@ msgstr "So"
|
|||||||
#. * NOTE: These list abbreviations are normally not shown together
|
#. * NOTE: These list abbreviations are normally not shown together
|
||||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||||
#. * both be 'T').
|
#. * both be 'T').
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:133
|
#: ../js/ui/calendar.js:133
|
||||||
msgctxt "list sunday"
|
msgctxt "list sunday"
|
||||||
msgid "Su"
|
msgid "Su"
|
||||||
msgstr "Ne"
|
msgstr "Ne"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Monday
|
#. Translators: Event list abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:135
|
#: ../js/ui/calendar.js:135
|
||||||
msgctxt "list monday"
|
msgctxt "list monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "Po"
|
msgstr "Po"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Tuesday
|
#. Translators: Event list abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:137
|
#: ../js/ui/calendar.js:137
|
||||||
msgctxt "list tuesday"
|
msgctxt "list tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "Út"
|
msgstr "Út"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Wednesday
|
#. Translators: Event list abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:139
|
#: ../js/ui/calendar.js:139
|
||||||
msgctxt "list wednesday"
|
msgctxt "list wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "St"
|
msgstr "St"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Thursday
|
#. Translators: Event list abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:141
|
#: ../js/ui/calendar.js:141
|
||||||
msgctxt "list thursday"
|
msgctxt "list thursday"
|
||||||
msgid "Th"
|
msgid "Th"
|
||||||
msgstr "Čt"
|
msgstr "Čt"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Friday
|
#. Translators: Event list abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:143
|
#: ../js/ui/calendar.js:143
|
||||||
msgctxt "list friday"
|
msgctxt "list friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "Pá"
|
msgstr "Pá"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Saturday
|
#. Translators: Event list abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:145
|
#: ../js/ui/calendar.js:145
|
||||||
msgctxt "list saturday"
|
msgctxt "list saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "So"
|
msgstr "So"
|
||||||
|
|
||||||
|
#: ../js/ui/calendar.js:389
|
||||||
|
msgid "calendar:MY"
|
||||||
|
msgstr "calendar:MY"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:447
|
#: ../js/ui/calendar.js:447
|
||||||
msgid "Previous month"
|
msgid "Previous month"
|
||||||
msgstr "Předchozí měsíc"
|
msgstr "Předchozí měsíc"
|
||||||
@ -530,18 +508,18 @@ msgstr "Předchozí měsíc"
|
|||||||
msgid "Next month"
|
msgid "Next month"
|
||||||
msgstr "Následující měsíc"
|
msgstr "Následující měsíc"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events */
|
||||||
#: ../js/ui/calendar.js:753
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "Nic nenaplánováno"
|
msgstr "Nic nenaplánováno"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||||
#: ../js/ui/calendar.js:771
|
#: ../js/ui/calendar.js:771
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %e. %B"
|
msgstr "%A, %e. %B"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||||
#: ../js/ui/calendar.js:774
|
#: ../js/ui/calendar.js:774
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
@ -576,7 +554,7 @@ msgid "Removable Devices"
|
|||||||
msgstr "Výměnná zařízení"
|
msgstr "Výměnná zařízení"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:594
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Otevřít s %s"
|
msgstr "Otevřít s %s"
|
||||||
|
|
||||||
@ -584,20 +562,19 @@ msgstr "Otevřít s %s"
|
|||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Vysunout"
|
msgstr "Vysunout"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
|
#: ../js/ui/components/keyring.js:89 ../js/ui/components/polkitAgent.js:280
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Heslo:"
|
msgstr "Heslo:"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:110
|
#: ../js/ui/components/keyring.js:108
|
||||||
msgid "Type again:"
|
msgid "Type again:"
|
||||||
msgstr "Napište znovu:"
|
msgstr "Napište znovu:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:296 ../js/ui/status/network.js:731
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Připojit"
|
msgstr "Připojit"
|
||||||
|
|
||||||
#. Cisco LEAP
|
|
||||||
#: ../js/ui/components/networkAgent.js:222
|
#: ../js/ui/components/networkAgent.js:222
|
||||||
#: ../js/ui/components/networkAgent.js:234
|
#: ../js/ui/components/networkAgent.js:234
|
||||||
#: ../js/ui/components/networkAgent.js:261
|
#: ../js/ui/components/networkAgent.js:261
|
||||||
@ -606,7 +583,6 @@ msgstr "Připojit"
|
|||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "Heslo: "
|
msgstr "Heslo: "
|
||||||
|
|
||||||
#. static WEP
|
|
||||||
#: ../js/ui/components/networkAgent.js:227
|
#: ../js/ui/components/networkAgent.js:227
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "Klíč: "
|
msgstr "Klíč: "
|
||||||
@ -628,7 +604,7 @@ msgid "Authentication required by wireless network"
|
|||||||
msgstr "K bezdrátové síti je vyžadováno ověření"
|
msgstr "K bezdrátové síti je vyžadováno ověření"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:309
|
#: ../js/ui/components/networkAgent.js:309
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
"'%s'."
|
"'%s'."
|
||||||
@ -665,7 +641,7 @@ msgid "Mobile broadband network password"
|
|||||||
msgstr "Heslo k mobilní širokopásmové síti"
|
msgstr "Heslo k mobilní širokopásmové síti"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:336
|
#: ../js/ui/components/networkAgent.js:336
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "Pro připojení k „%s“ je vyžadováno heslo."
|
msgstr "Pro připojení k „%s“ je vyžadováno heslo."
|
||||||
|
|
||||||
@ -684,23 +660,19 @@ msgstr "Ověřit"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance.
|
#. * for instance. */
|
||||||
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "Ověření bohužel nebylo úspěšné. Zkuste to prosím znovu."
|
msgstr "Ověření bohužel nebylo úspěšné. Zkuste to prosím znovu."
|
||||||
|
|
||||||
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
|
|
||||||
#. system-users for now as Empathy does.
|
|
||||||
#: ../js/ui/components/telepathyClient.js:238
|
#: ../js/ui/components/telepathyClient.js:238
|
||||||
msgid "Invitation"
|
msgid "Invitation"
|
||||||
msgstr "Pozvání"
|
msgstr "Pozvání"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:298
|
#: ../js/ui/components/telepathyClient.js:298
|
||||||
msgid "Call"
|
msgid "Call"
|
||||||
msgstr "Hovor"
|
msgstr "Hovor"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:314
|
#: ../js/ui/components/telepathyClient.js:314
|
||||||
msgid "File Transfer"
|
msgid "File Transfer"
|
||||||
msgstr "Přenos souborů"
|
msgstr "Přenos souborů"
|
||||||
@ -717,49 +689,45 @@ msgstr "Zrušit ztlumení"
|
|||||||
msgid "Mute"
|
msgid "Mute"
|
||||||
msgstr "Ztlumit"
|
msgstr "Ztlumit"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:942
|
#: ../js/ui/components/telepathyClient.js:942
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>Včera</b>, <b>%H.%M</b>"
|
msgstr "<b>Včera</b>, <b>%H.%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30
|
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
|
||||||
#: ../js/ui/components/telepathyClient.js:948
|
#: ../js/ui/components/telepathyClient.js:948
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%A</b>, <b>%H:%M</b>"
|
msgid "<b>%A</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"
|
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:953
|
#: ../js/ui/components/telepathyClient.js:953
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%d.</b> <b>%B</b>, <b>%H:%M</b>"
|
msgstr "<b>%d.</b> <b>%B</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"
|
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:957
|
#: ../js/ui/components/telepathyClient.js:957
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
msgstr "<b>%d.</b> <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgstr "<b>%d.</b> <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name.
|
#. IM name. */
|
||||||
#: ../js/ui/components/telepathyClient.js:986
|
#: ../js/ui/components/telepathyClient.js:986
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
msgstr "%s je teď znám jako %s"
|
msgstr "%s je teď znám jako %s"
|
||||||
|
|
||||||
#. translators: argument is a room name like
|
#. translators: argument is a room name like
|
||||||
#. * room@jabber.org for example.
|
#. * room@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1089
|
#: ../js/ui/components/telepathyClient.js:1089
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Invitation to %s"
|
msgid "Invitation to %s"
|
||||||
msgstr "Pozvánka na připojení k %s"
|
msgstr "Pozvánka na připojení k %s"
|
||||||
|
|
||||||
#. translators: first argument is the name of a contact and the second
|
#. 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
|
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||||
#. * for example.
|
#. * for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1097
|
#: ../js/ui/components/telepathyClient.js:1097
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is inviting you to join %s"
|
msgid "%s is inviting you to join %s"
|
||||||
msgstr "%s vás zve do %s"
|
msgstr "%s vás zve do %s"
|
||||||
|
|
||||||
@ -776,19 +744,19 @@ msgstr "Odmítnout"
|
|||||||
msgid "Accept"
|
msgid "Accept"
|
||||||
msgstr "Přijmout"
|
msgstr "Přijmout"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1130
|
#: ../js/ui/components/telepathyClient.js:1130
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Video call from %s"
|
msgid "Video call from %s"
|
||||||
msgstr "Videohovor od %s"
|
msgstr "Videohovor od %s"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1133
|
#: ../js/ui/components/telepathyClient.js:1133
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Call from %s"
|
msgid "Call from %s"
|
||||||
msgstr "Hovor od %s"
|
msgstr "Hovor od %s"
|
||||||
|
|
||||||
#. translators: this is a button label (verb), not a noun
|
#. translators: this is a button label (verb), not a noun */
|
||||||
#: ../js/ui/components/telepathyClient.js:1142
|
#: ../js/ui/components/telepathyClient.js:1142
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Zvednout"
|
msgstr "Zvednout"
|
||||||
@ -797,15 +765,15 @@ msgstr "Zvednout"
|
|||||||
#. * the contact's alias and the second one is the
|
#. * the contact's alias and the second one is the
|
||||||
#. * file name. The string will be something
|
#. * file name. The string will be something
|
||||||
#. * like: "Alice is sending you test.ogg"
|
#. * like: "Alice is sending you test.ogg"
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1174
|
#: ../js/ui/components/telepathyClient.js:1174
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is sending you %s"
|
msgid "%s is sending you %s"
|
||||||
msgstr "%s vám posílá %s"
|
msgstr "%s vám posílá %s"
|
||||||
|
|
||||||
#. To translators: The parameter is the contact's alias
|
#. To translators: The parameter is the contact's alias */
|
||||||
#: ../js/ui/components/telepathyClient.js:1209
|
#: ../js/ui/components/telepathyClient.js:1209
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s would like permission to see when you are online"
|
msgid "%s would like permission to see when you are online"
|
||||||
msgstr "%s vás žádá o oprávnění vidět, že jste dostupní"
|
msgstr "%s vás žádá o oprávnění vidět, že jste dostupní"
|
||||||
|
|
||||||
@ -914,9 +882,9 @@ msgid "Internal error"
|
|||||||
msgstr "Vnitřní chyba"
|
msgstr "Vnitřní chyba"
|
||||||
|
|
||||||
#. translators: argument is the account name, like
|
#. translators: argument is the account name, like
|
||||||
#. * name@jabber.org for example.
|
#. * name@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1357
|
#: ../js/ui/components/telepathyClient.js:1357
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Unable to connect to %s"
|
msgid "Unable to connect to %s"
|
||||||
msgstr "Nelze se připojit k „%s“"
|
msgstr "Nelze se připojit k „%s“"
|
||||||
|
|
||||||
@ -936,8 +904,6 @@ msgstr "Okna"
|
|||||||
msgid "Show Applications"
|
msgid "Show Applications"
|
||||||
msgstr "Zobrazit aplikace"
|
msgstr "Zobrazit aplikace"
|
||||||
|
|
||||||
#. Translators: this is the name of the dock/favorites area on
|
|
||||||
#. the left of the overview
|
|
||||||
#: ../js/ui/dash.js:442
|
#: ../js/ui/dash.js:442
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "Oblíbené"
|
msgstr "Oblíbené"
|
||||||
@ -957,13 +923,13 @@ msgstr "Nastavení data a času"
|
|||||||
# Not sure whether we've enough space for it, but anyway, looks more aesthetically with "%A".
|
# Not sure whether we've enough space for it, but anyway, looks more aesthetically with "%A".
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. 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").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/dateMenu.js:202
|
#: ../js/ui/dateMenu.js:202
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A, %e. %B, %Y"
|
msgstr "%A, %e. %B, %Y"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:62
|
#: ../js/ui/endSessionDialog.js:62
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgctxt "title"
|
msgctxt "title"
|
||||||
msgid "Log Out %s"
|
msgid "Log Out %s"
|
||||||
msgstr "Odhlásit uživatele %s"
|
msgstr "Odhlásit uživatele %s"
|
||||||
@ -974,7 +940,7 @@ msgid "Log Out"
|
|||||||
msgstr "Odhlášení"
|
msgstr "Odhlášení"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:65
|
#: ../js/ui/endSessionDialog.js:65
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s will be logged out automatically in %d second."
|
msgid "%s will be logged out automatically in %d second."
|
||||||
msgid_plural "%s will be logged out automatically in %d seconds."
|
msgid_plural "%s will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "Uživatel %s bude automaticky odhlášen za %d sekundu."
|
msgstr[0] "Uživatel %s bude automaticky odhlášen za %d sekundu."
|
||||||
@ -982,7 +948,7 @@ msgstr[1] "Uživatel %s bude automaticky odhlášen za %d sekundy."
|
|||||||
msgstr[2] "Uživatel %s bude automaticky odhlášen za %d sekund."
|
msgstr[2] "Uživatel %s bude automaticky odhlášen za %d sekund."
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:70
|
#: ../js/ui/endSessionDialog.js:70
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "You will be logged out automatically in %d second."
|
msgid "You will be logged out automatically in %d second."
|
||||||
msgid_plural "You will be logged out automatically in %d seconds."
|
msgid_plural "You will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "Budete automaticky odhlášeni za %d sekundu."
|
msgstr[0] "Budete automaticky odhlášeni za %d sekundu."
|
||||||
@ -1000,7 +966,7 @@ msgid "Power Off"
|
|||||||
msgstr "Vypnutí"
|
msgstr "Vypnutí"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:83
|
#: ../js/ui/endSessionDialog.js:83
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will power off automatically in %d second."
|
msgid "The system will power off automatically in %d second."
|
||||||
msgid_plural "The system will power off automatically in %d seconds."
|
msgid_plural "The system will power off automatically in %d seconds."
|
||||||
msgstr[0] "Systém bude automaticky vypnut za %d sekundu."
|
msgstr[0] "Systém bude automaticky vypnut za %d sekundu."
|
||||||
@ -1023,7 +989,7 @@ msgid "Restart"
|
|||||||
msgstr "Restart"
|
msgstr "Restart"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:99
|
#: ../js/ui/endSessionDialog.js:99
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will restart automatically in %d second."
|
msgid "The system will restart automatically in %d second."
|
||||||
msgid_plural "The system will restart automatically in %d seconds."
|
msgid_plural "The system will restart automatically in %d seconds."
|
||||||
msgstr[0] "Systém bude automaticky restartován za %d sekundu."
|
msgstr[0] "Systém bude automaticky restartován za %d sekundu."
|
||||||
@ -1036,7 +1002,7 @@ msgid "Restart & Install Updates"
|
|||||||
msgstr "Restartovat a nainstalovat aktualizace"
|
msgstr "Restartovat a nainstalovat aktualizace"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:114
|
#: ../js/ui/endSessionDialog.js:114
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will automatically restart and install updates in %d second."
|
msgid "The system will automatically restart and install updates in %d second."
|
||||||
msgid_plural ""
|
msgid_plural ""
|
||||||
"The system will automatically restart and install updates in %d seconds."
|
"The system will automatically restart and install updates in %d seconds."
|
||||||
@ -1063,15 +1029,15 @@ msgstr "Některé aplikace jsou zaneprázdněny nebo obsahují neuloženou prác
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Jsou přihlášeni jiní uživatelé."
|
msgstr "Jsou přihlášeni jiní uživatelé."
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login
|
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||||
#: ../js/ui/endSessionDialog.js:479
|
#: ../js/ui/endSessionDialog.js:479
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (vzdálený)"
|
msgstr "%s (vzdálený)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console
|
#. Translators: Console here refers to a tty like a VT console */
|
||||||
#: ../js/ui/endSessionDialog.js:482
|
#: ../js/ui/endSessionDialog.js:482
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (konzola)"
|
msgstr "%s (konzola)"
|
||||||
|
|
||||||
@ -1080,11 +1046,11 @@ msgid "Install"
|
|||||||
msgstr "Instalovat"
|
msgstr "Instalovat"
|
||||||
|
|
||||||
#: ../js/ui/extensionDownloader.js:204
|
#: ../js/ui/extensionDownloader.js:204
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||||
msgstr "Stáhnout a nainstalovat „%s“ z extensions.gnome.org?"
|
msgstr "Stáhnout a nainstalovat „%s“ z extensions.gnome.org?"
|
||||||
|
|
||||||
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
|
#: ../js/ui/keyboard.js:619
|
||||||
msgid "Keyboard"
|
msgid "Keyboard"
|
||||||
msgstr "Klávesnice"
|
msgstr "Klávesnice"
|
||||||
|
|
||||||
@ -1092,9 +1058,9 @@ msgstr "Klávesnice"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "Nejsou nainstalována žádná rozšíření"
|
msgstr "Nejsou nainstalována žádná rozšíření"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID.
|
#. Translators: argument is an extension UUID. */
|
||||||
#: ../js/ui/lookingGlass.js:743
|
#: ../js/ui/lookingGlass.js:743
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
msgstr "Rozšíření %s nevyvolalo žádné chyby."
|
msgstr "Rozšíření %s nevyvolalo žádné chyby."
|
||||||
|
|
||||||
@ -1110,9 +1076,12 @@ msgstr "Zobrazovat chyby"
|
|||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr "Povoleno"
|
msgstr "Povoleno"
|
||||||
|
|
||||||
|
#. Translators: this is for a network device that cannot be activated
|
||||||
|
#. because it's disabled by rfkill (airplane mode) */
|
||||||
#. translators:
|
#. translators:
|
||||||
#. * The device has been disabled
|
#. * The device has been disabled
|
||||||
#: ../js/ui/lookingGlass.js:765 ../src/gvc/gvc-mixer-control.c:1830
|
#: ../js/ui/lookingGlass.js:765 ../js/ui/status/network.js:473
|
||||||
|
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Zakázáno"
|
msgstr "Zakázáno"
|
||||||
|
|
||||||
@ -1144,27 +1113,31 @@ msgstr "Otevřít"
|
|||||||
msgid "Remove"
|
msgid "Remove"
|
||||||
msgstr "Odstranit"
|
msgstr "Odstranit"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1513
|
#: ../js/ui/messageTray.js:1530
|
||||||
|
msgid "Notifications"
|
||||||
|
msgstr "Upozornění"
|
||||||
|
|
||||||
|
#: ../js/ui/messageTray.js:1537
|
||||||
msgid "Clear Messages"
|
msgid "Clear Messages"
|
||||||
msgstr "Vymazat zprávy"
|
msgstr "Vymazat zprávy"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1540
|
#: ../js/ui/messageTray.js:1564
|
||||||
msgid "Notification Settings"
|
msgid "Notification Settings"
|
||||||
msgstr "Nastavení upozornění"
|
msgstr "Nastavení upozornění"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1559
|
#: ../js/ui/messageTray.js:1617
|
||||||
msgid "Tray Menu"
|
msgid "Tray Menu"
|
||||||
msgstr "Nabídka lišty zpráv"
|
msgstr "Nabídka lišty zpráv"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1775
|
#: ../js/ui/messageTray.js:1833
|
||||||
msgid "No Messages"
|
msgid "No Messages"
|
||||||
msgstr "Žádné zprávy"
|
msgstr "Žádné zprávy"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1813
|
#: ../js/ui/messageTray.js:1871
|
||||||
msgid "Message Tray"
|
msgid "Message Tray"
|
||||||
msgstr "Lišta zpráv"
|
msgstr "Lišta zpráv"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:2788
|
#: ../js/ui/messageTray.js:2846
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Informace o systému"
|
msgstr "Informace o systému"
|
||||||
|
|
||||||
@ -1174,7 +1147,7 @@ msgid "Unknown"
|
|||||||
msgstr "Neznámé"
|
msgstr "Neznámé"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
msgstr[0] "%d nová zpráva"
|
msgstr[0] "%d nová zpráva"
|
||||||
@ -1192,7 +1165,7 @@ msgstr "Přehled"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters. */
|
||||||
#: ../js/ui/overview.js:258
|
#: ../js/ui/overview.js:258
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Vyhledávejte psaním…"
|
msgstr "Vyhledávejte psaním…"
|
||||||
@ -1202,20 +1175,15 @@ msgid "Quit"
|
|||||||
msgstr "Ukončit"
|
msgstr "Ukončit"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview". */
|
||||||
#: ../js/ui/panel.js:570
|
#: ../js/ui/panel.js:570
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Činnosti"
|
msgstr "Činnosti"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Horní lišta"
|
msgstr "Horní lišta"
|
||||||
|
|
||||||
#. Translators: this MUST be either "toggle-switch-us"
|
|
||||||
#. (for toggle switches containing the English words
|
|
||||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
|
||||||
#. switches containing "◯" and "|"). Other values will
|
|
||||||
#. simply result in invisible toggle switches.
|
|
||||||
#: ../js/ui/popupMenu.js:233
|
#: ../js/ui/popupMenu.js:233
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
@ -1229,13 +1197,13 @@ msgid "Close"
|
|||||||
msgstr "Zavřít"
|
msgstr "Zavřít"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format */
|
||||||
#: ../js/ui/screenShield.js:88
|
#: ../js/ui/screenShield.js:88
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %e. %B"
|
msgstr "%A, %e. %B"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:154
|
#: ../js/ui/screenShield.js:154
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "%d nové upozornění"
|
msgstr[0] "%d nové upozornění"
|
||||||
@ -1250,13 +1218,6 @@ msgstr "Uzamknout"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME potřebuje uzamknout obrazovku"
|
msgstr "GNOME potřebuje uzamknout obrazovku"
|
||||||
|
|
||||||
#. We could not become modal, so we can't activate the
|
|
||||||
#. screenshield. The user is probably very upset at this
|
|
||||||
#. point, but any application using global grabs is broken
|
|
||||||
#. Just tell him to stop using this app
|
|
||||||
#.
|
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
|
||||||
#. screen, where we're not affected by grabs
|
|
||||||
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "Nelze uzamknout obrazovku"
|
msgstr "Nelze uzamknout obrazovku"
|
||||||
@ -1265,11 +1226,11 @@ msgstr "Nelze uzamknout obrazovku"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Zamknutí bylo zablokováno některou z aplikací"
|
msgstr "Zamknutí bylo zablokováno některou z aplikací"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Hledá se…"
|
msgstr "Hledá se…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Žádné výsledky."
|
msgstr "Žádné výsledky."
|
||||||
|
|
||||||
@ -1341,16 +1302,14 @@ msgstr "Vysoký kontrast"
|
|||||||
msgid "Large Text"
|
msgid "Large Text"
|
||||||
msgstr "Styl velkého textu"
|
msgstr "Styl velkého textu"
|
||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
|
||||||
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
||||||
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
||||||
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
||||||
msgid "Bluetooth"
|
msgid "Bluetooth"
|
||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1085 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "Vypnout"
|
msgstr "Vypnout"
|
||||||
|
|
||||||
@ -1359,7 +1318,7 @@ msgid "Bluetooth Settings"
|
|||||||
msgstr "Nastavení Bluetooth"
|
msgstr "Nastavení Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:58
|
#: ../js/ui/status/bluetooth.js:58
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d připojené zařízení"
|
msgstr[0] "%d připojené zařízení"
|
||||||
@ -1367,13 +1326,13 @@ msgstr[1] "%d připojená zařízení"
|
|||||||
msgstr[2] "%d připojených zařízení"
|
msgstr[2] "%d připojených zařízení"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "Požadavek na autorizaci od %s"
|
msgstr "Požadavek na autorizaci od %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
||||||
#: ../js/ui/status/bluetooth.js:203
|
#: ../js/ui/status/bluetooth.js:203
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "Zařízení %s se chce spárovat s tímto počítačem"
|
msgstr "Zařízení %s se chce spárovat s tímto počítačem"
|
||||||
|
|
||||||
@ -1386,7 +1345,7 @@ msgid "Deny"
|
|||||||
msgstr "Zamítnout"
|
msgstr "Zamítnout"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:135
|
#: ../js/ui/status/bluetooth.js:135
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "Zařízení %s požaduje přístup ke službě „%s“"
|
msgstr "Zařízení %s požaduje přístup ke službě „%s“"
|
||||||
|
|
||||||
@ -1402,19 +1361,19 @@ msgstr "Udělit pouze tentokrát"
|
|||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "Odmítnout"
|
msgstr "Odmítnout"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name */
|
||||||
#: ../js/ui/status/bluetooth.js:166
|
#: ../js/ui/status/bluetooth.js:166
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "Potvrzení spárování pro %s"
|
msgstr "Potvrzení spárování pro %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:173
|
#: ../js/ui/status/bluetooth.js:173
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
msgstr "Ověřte prosím, zda klíč „%06d“ odpovídá tomu na zařízení."
|
msgstr "Ověřte prosím, zda klíč „%06d“ odpovídá tomu na zařízení."
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun */
|
||||||
#: ../js/ui/status/bluetooth.js:176
|
#: ../js/ui/status/bluetooth.js:176
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "Souhlasí"
|
msgstr "Souhlasí"
|
||||||
@ -1424,7 +1383,7 @@ msgid "Does not match"
|
|||||||
msgstr "Nesouhlasí"
|
msgstr "Nesouhlasí"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:196
|
#: ../js/ui/status/bluetooth.js:196
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "Požadavek na spárování pro %s"
|
msgstr "Požadavek na spárování pro %s"
|
||||||
|
|
||||||
@ -1440,91 +1399,99 @@ msgstr "Budiž"
|
|||||||
msgid "Brightness"
|
msgid "Brightness"
|
||||||
msgstr "Jas"
|
msgstr "Jas"
|
||||||
|
|
||||||
#: ../js/ui/status/keyboard.js:403
|
|
||||||
msgid "Show Keyboard Layout"
|
|
||||||
msgstr "Zobrazit rozložení klávesnice"
|
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:72
|
#: ../js/ui/status/network.js:72
|
||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<neznámé>"
|
msgstr "<neznámé>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:223 ../js/ui/status/network.js:380
|
||||||
|
#: ../js/ui/status/network.js:1106
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "Vypnuto"
|
msgstr "Vypnuto"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
|
||||||
#: ../js/ui/status/rfkill.js:49
|
|
||||||
msgid "Network Settings"
|
|
||||||
msgstr "Nastavení sítě"
|
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:386
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "nespravováno"
|
msgstr "nespravováno"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:366
|
#: ../js/ui/status/network.js:388
|
||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "odpojování…"
|
msgstr "odpojování…"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:394 ../js/ui/status/network.js:1160
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "připojování…"
|
msgstr "připojování…"
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password */
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:397 ../js/ui/status/network.js:1163
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "je vyžadováno ověření"
|
msgstr "je vyžadováno ověření"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing */
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:405
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "nedostupný firmware"
|
msgstr "nedostupný firmware"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage */
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:409
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "nedostupné"
|
msgstr "nedostupné"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:411 ../js/ui/status/network.js:1165
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "připojení selhalo"
|
msgstr "připojení selhalo"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:427 ../js/ui/status/network.js:513
|
||||||
|
msgid "Mobile Broadband Settings"
|
||||||
|
msgstr "Nastavení mobilní širokopásmové sítě"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1104
|
||||||
|
msgid "Hardware Disabled"
|
||||||
|
msgstr "Hardware zakázán"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:696
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Sítě WiFi"
|
msgstr "Sítě WiFi"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:698
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "Vyberte síť"
|
msgstr "Vyberte síť"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:722
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "Žádné sítě"
|
msgstr "Žádné sítě"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:991
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Vybrat síť"
|
msgstr "Vybrat síť"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:997
|
||||||
|
msgid "Wi-Fi Settings"
|
||||||
|
msgstr "Nastavení WiFi"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1085
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Zapnout"
|
msgstr "Zapnout"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1108
|
||||||
|
msgid "Not Connected"
|
||||||
|
msgstr "Nepřipojeno"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1228
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1368
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Network Manager"
|
msgstr "Network Manager"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1407
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Připojení selhalo"
|
msgstr "Připojení selhalo"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1408
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Aktivace síťového připojení selhala"
|
msgstr "Aktivace síťového připojení selhala"
|
||||||
|
|
||||||
@ -1540,28 +1507,20 @@ msgstr "Nastavení napájení"
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "Plně nabito"
|
msgstr "Plně nabito"
|
||||||
|
|
||||||
#. 0 is reported when UPower does not have enough data
|
|
||||||
#. to estimate battery life
|
|
||||||
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
|
||||||
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "Odhaduje se…"
|
msgstr "Odhaduje se…"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:77
|
#: ../js/ui/status/power.js:77
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d\\u2236%02d Remaining (%d%%)"
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
msgstr "Zbývá %d\\u2236%02d (%d %%)"
|
msgstr "Zbývá %d∶%02d (%d %%)"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:82
|
#: ../js/ui/status/power.js:82
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d\\u2236%02d Until Full (%d%%)"
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
msgstr "%d\\u2236%02d do nabití (%d %%)"
|
msgstr "%d∶%02d do nabití (%d %%)"
|
||||||
|
|
||||||
#. The menu only appears when airplane mode is on, so just
|
|
||||||
#. statically build it as if it was on, rather than dynamically
|
|
||||||
#. changing the menu contents.
|
|
||||||
#: ../js/ui/status/rfkill.js:43
|
#: ../js/ui/status/rfkill.js:43
|
||||||
msgid "Airplane Mode"
|
msgid "Airplane Mode"
|
||||||
msgstr "Režim „letadlo“"
|
msgstr "Režim „letadlo“"
|
||||||
@ -1570,6 +1529,10 @@ msgstr "Režim „letadlo“"
|
|||||||
msgid "On"
|
msgid "On"
|
||||||
msgstr "Zapnuto"
|
msgstr "Zapnuto"
|
||||||
|
|
||||||
|
#: ../js/ui/status/rfkill.js:49
|
||||||
|
msgid "Network Settings"
|
||||||
|
msgstr "Nastavení sítě"
|
||||||
|
|
||||||
#: ../js/ui/status/system.js:305
|
#: ../js/ui/status/system.js:305
|
||||||
msgid "Switch User"
|
msgid "Switch User"
|
||||||
msgstr "Přepnout uživatele"
|
msgstr "Přepnout uživatele"
|
||||||
@ -1619,7 +1582,7 @@ msgid "Search"
|
|||||||
msgstr "Hledat"
|
msgstr "Hledat"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:77
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
"%s"
|
"%s"
|
||||||
@ -1628,12 +1591,12 @@ msgstr ""
|
|||||||
"%s"
|
"%s"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:81
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "%s říká Prorok"
|
msgstr "%s říká Prorok"
|
||||||
|
|
||||||
#: ../js/ui/windowAttentionHandler.js:19
|
#: ../js/ui/windowAttentionHandler.js:19
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "'%s' is ready"
|
msgid "'%s' is ready"
|
||||||
msgstr "Připraveno „%s“"
|
msgstr "Připraveno „%s“"
|
||||||
|
|
||||||
@ -1643,7 +1606,7 @@ msgstr "Chcete zachovat nastavení displeje?"
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/windowManager.js:75
|
#: ../js/ui/windowManager.js:75
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Obnovit původní"
|
msgstr "Obnovit původní"
|
||||||
@ -1653,7 +1616,7 @@ msgid "Keep Changes"
|
|||||||
msgstr "Zachovat"
|
msgstr "Zachovat"
|
||||||
|
|
||||||
#: ../js/ui/windowManager.js:97
|
#: ../js/ui/windowManager.js:97
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Settings changes will revert in %d second"
|
msgid "Settings changes will revert in %d second"
|
||||||
msgid_plural "Settings changes will revert in %d seconds"
|
msgid_plural "Settings changes will revert in %d seconds"
|
||||||
msgstr[0] "Nastavení se obnoví na původní za %d sekundu"
|
msgstr[0] "Nastavení se obnoví na původní za %d sekundu"
|
||||||
|
80
po/da.po
@ -17,8 +17,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell\n"
|
"Project-Id-Version: gnome-shell\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2013-09-23 19:41+0200\n"
|
"POT-Creation-Date: 2013-10-01 19:10+0200\n"
|
||||||
"PO-Revision-Date: 2013-09-23 19:43+0200\n"
|
"PO-Revision-Date: 2013-10-01 19:06+0200\n"
|
||||||
"Last-Translator: Kris Thomsen <mail@kristhomsen.dk>\n"
|
"Last-Translator: Kris Thomsen <mail@kristhomsen.dk>\n"
|
||||||
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
|
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
|
||||||
"Language: da\n"
|
"Language: da\n"
|
||||||
@ -276,7 +276,9 @@ msgstr "Arbejdsområder kun på den primære skærm"
|
|||||||
|
|
||||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
|
||||||
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||||
msgstr "Forsink fokusændringer i musetilstand indtil pegeren holder op med at bevæge sig"
|
msgstr ""
|
||||||
|
"Forsink fokusændringer i musetilstand indtil pegeren holder op med at bevæge "
|
||||||
|
"sig"
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:125
|
#: ../js/extensionPrefs/main.js:125
|
||||||
#, c-format
|
#, c-format
|
||||||
@ -295,7 +297,7 @@ msgstr ""
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:692
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Annullér"
|
msgstr "Annullér"
|
||||||
|
|
||||||
@ -405,7 +407,7 @@ msgstr "%s er blevet føjet til dine favoritter."
|
|||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s er blevet fjernet fra dine favoritter."
|
msgstr "%s er blevet fjernet fra dine favoritter."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Indstillinger"
|
msgstr "Indstillinger"
|
||||||
@ -601,7 +603,7 @@ msgid "Type again:"
|
|||||||
msgstr "Indtast igen:"
|
msgstr "Indtast igen:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:695
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Forbind"
|
msgstr "Forbind"
|
||||||
|
|
||||||
@ -1206,7 +1208,7 @@ msgstr "Afslut"
|
|||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Aktiviteter"
|
msgstr "Aktiviteter"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Toppanel"
|
msgstr "Toppanel"
|
||||||
|
|
||||||
@ -1263,11 +1265,11 @@ msgstr "Kunne ikke låse"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Lås blev blokeret af et program"
|
msgstr "Lås blev blokeret af et program"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Søger…"
|
msgstr "Søger…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Ingen resultater."
|
msgstr "Ingen resultater."
|
||||||
|
|
||||||
@ -1348,7 +1350,7 @@ msgid "Bluetooth"
|
|||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1040 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "Sluk"
|
msgstr "Sluk"
|
||||||
|
|
||||||
@ -1447,11 +1449,11 @@ msgstr "Vis tastaturlayout"
|
|||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<ukendt>"
|
msgstr "<ukendt>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1055
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "Slukket"
|
msgstr "Slukket"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:961
|
||||||
#: ../js/ui/status/rfkill.js:49
|
#: ../js/ui/status/rfkill.js:49
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "Indstillinger for netværk"
|
msgstr "Indstillinger for netværk"
|
||||||
@ -1466,12 +1468,12 @@ msgstr "ikke håndteret"
|
|||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "frakobler..."
|
msgstr "frakobler..."
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1106
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "forbinder..."
|
msgstr "forbinder..."
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1109
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "godkendelse påkrævet"
|
msgstr "godkendelse påkrævet"
|
||||||
|
|
||||||
@ -1487,43 +1489,43 @@ msgstr "firmware mangler"
|
|||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "utilgængelig"
|
msgstr "utilgængelig"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1111
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "forbindelse mislykkedes"
|
msgstr "forbindelse mislykkedes"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:660
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Trådløse netværk"
|
msgstr "Trådløse netværk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:662
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "Vælg et netværk"
|
msgstr "Vælg et netværk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:686
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "Ingen netværk"
|
msgstr "Ingen netværk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:955
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Vælg netværk"
|
msgstr "Vælg netværk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:1040
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Tænd"
|
msgstr "Tænd"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1174
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1314
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Netværkshåndtering"
|
msgstr "Netværkshåndtering"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1353
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Forbindelse mislykkedes"
|
msgstr "Forbindelse mislykkedes"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1354
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Aktivering af netværksforbindelse mislykkedes"
|
msgstr "Aktivering af netværksforbindelse mislykkedes"
|
||||||
|
|
||||||
@ -1548,15 +1550,15 @@ msgstr "Udregner…"
|
|||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
||||||
#: ../js/ui/status/power.js:77
|
#: ../js/ui/status/power.js:77
|
||||||
#, c-format
|
#, fuzzy, c-format
|
||||||
msgid "%d\\u2236%02d Remaining (%d%%)"
|
msgid "%d\\u2236%02d Remaining (%d%%)"
|
||||||
msgstr "%d\\u2236%02d tilbage (%d%%)"
|
msgstr "%d∶%02d tilbage (%d%%)"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
||||||
#: ../js/ui/status/power.js:82
|
#: ../js/ui/status/power.js:82
|
||||||
#, c-format
|
#, fuzzy, c-format
|
||||||
msgid "%d\\u2236%02d Until Full (%d%%)"
|
msgid "%d\\u2236%02d Until Full (%d%%)"
|
||||||
msgstr "%d\\u2236%02d indtil fuld (%d%%)"
|
msgstr "%d∶%02d indtil fuld (%d%%)"
|
||||||
|
|
||||||
#. The menu only appears when airplane mode is on, so just
|
#. The menu only appears when airplane mode is on, so just
|
||||||
#. statically build it as if it was on, rather than dynamically
|
#. statically build it as if it was on, rather than dynamically
|
||||||
@ -1717,6 +1719,28 @@ msgstr "Adgangskode må ikke være tom"
|
|||||||
msgid "Authentication dialog was dismissed by the user"
|
msgid "Authentication dialog was dismissed by the user"
|
||||||
msgstr "Godkendelsesdialogen blev afvist af brugeren"
|
msgstr "Godkendelsesdialogen blev afvist af brugeren"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%H∶%M"
|
||||||
|
#~ msgstr "%H∶%M"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%l∶%M %p"
|
||||||
|
#~ msgstr "%l∶%M %p"
|
||||||
|
|
||||||
|
# Dette her er kode for at skrive måned før år jvf. kommentar for samme streng i gtk+:
|
||||||
|
#
|
||||||
|
# Translate to calendar:YM if you want years to be displayed
|
||||||
|
# before months; otherwise translate to calendar:MY.
|
||||||
|
# Do *not* translate it to anything else, if it
|
||||||
|
# it isn't calendar:YM or calendar:MY it will not work.
|
||||||
|
#
|
||||||
|
# Note that the ordering described here is logical order, which is
|
||||||
|
# further influenced by BIDI ordering. Thus, if you have a default
|
||||||
|
# text direction of RTL and specify "calendar:YM", then the year
|
||||||
|
# will appear to the right of the month.
|
||||||
|
#~ msgid "calendar:MY"
|
||||||
|
#~ msgstr "calendar:MY"
|
||||||
|
|
||||||
#~ msgid "Settings Menu"
|
#~ msgid "Settings Menu"
|
||||||
#~ msgstr "Menu for indstillinger"
|
#~ msgstr "Menu for indstillinger"
|
||||||
|
|
||||||
|
142
po/de.po
@ -18,18 +18,17 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell master\n"
|
"Project-Id-Version: gnome-shell master\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"POT-Creation-Date: 2013-09-25 15:24+0200\n"
|
||||||
"POT-Creation-Date: 2013-09-12 17:36+0000\n"
|
"PO-Revision-Date: 2013-09-25 15:25+0100\n"
|
||||||
"PO-Revision-Date: 2013-09-13 19:29+0100\n"
|
"Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
|
||||||
"Last-Translator: Benjamin Steinwender <b@stbe.at>\n"
|
|
||||||
"Language-Team: Deutsch <gnome-de@gnome.org>\n"
|
"Language-Team: Deutsch <gnome-de@gnome.org>\n"
|
||||||
"Language: de_DE\n"
|
"Language: de_DE\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Generator: Poedit 1.5.7\n"
|
"X-Generator: Poedit 1.5.4\n"
|
||||||
|
|
||||||
#: ../data/50-gnome-shell-system.xml.in.h:1
|
#: ../data/50-gnome-shell-system.xml.in.h:1
|
||||||
msgid "System"
|
msgid "System"
|
||||||
@ -282,6 +281,11 @@ msgstr "Arbeitsflächen dynamisch verwalten"
|
|||||||
msgid "Workspaces only on primary monitor"
|
msgid "Workspaces only on primary monitor"
|
||||||
msgstr "Arbeitsflächen nur auf dem primären Bildschirm"
|
msgstr "Arbeitsflächen nur auf dem primären Bildschirm"
|
||||||
|
|
||||||
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
|
||||||
|
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||||
|
msgstr ""
|
||||||
|
"Fokuswechsel im Mausmodus verzögern, bis sich der Zeiger nicht mehr bewegt."
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:125
|
#: ../js/extensionPrefs/main.js:125
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
msgid "There was an error loading the preferences dialog for %s:"
|
||||||
@ -295,10 +299,10 @@ msgstr "Erweiterung"
|
|||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
msgstr "Wählen Sie oben eine Erweiterung aus, die Sie konfigurieren wollen."
|
msgstr "Wählen Sie oben eine Erweiterung aus, die Sie konfigurieren wollen."
|
||||||
|
|
||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Abbrechen"
|
msgstr "Abbrechen"
|
||||||
|
|
||||||
@ -337,8 +341,8 @@ msgstr "(z.B. Benutzer oder %s)"
|
|||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
#. TTLS and PEAP are actually much more complicated, but this complication
|
||||||
#. is not visible here since we only care about phase2 authentication
|
#. is not visible here since we only care about phase2 authentication
|
||||||
#. (and don't even care of which one)
|
#. (and don't even care of which one)
|
||||||
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:255
|
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
||||||
#: ../js/ui/components/networkAgent.js:273
|
#: ../js/ui/components/networkAgent.js:277
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Benutzername:"
|
msgstr "Benutzername:"
|
||||||
|
|
||||||
@ -374,27 +378,27 @@ msgstr "Befehl konnte nicht verarbeitet werden:"
|
|||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Ausführung von »%s« ist gescheitert:"
|
msgstr "Ausführung von »%s« ist gescheitert:"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:573
|
#: ../js/ui/appDisplay.js:596
|
||||||
msgid "Frequently used applications will appear here"
|
msgid "Frequently used applications will appear here"
|
||||||
msgstr "Häufig genutzte Anwendungen werden hier erscheinen"
|
msgstr "Häufig genutzte Anwendungen werden hier erscheinen"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:689
|
#: ../js/ui/appDisplay.js:712
|
||||||
msgid "Frequent"
|
msgid "Frequent"
|
||||||
msgstr "Häufig"
|
msgstr "Häufig"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:696
|
#: ../js/ui/appDisplay.js:719
|
||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Alle"
|
msgstr "Alle"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:1491
|
#: ../js/ui/appDisplay.js:1514
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Neues Fenster"
|
msgstr "Neues Fenster"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:1494 ../js/ui/dash.js:284
|
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Aus Favoriten entfernen"
|
msgstr "Aus Favoriten entfernen"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:1495
|
#: ../js/ui/appDisplay.js:1518
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Zu Favoriten hinzufügen"
|
msgstr "Zu Favoriten hinzufügen"
|
||||||
|
|
||||||
@ -408,7 +412,8 @@ msgstr "%s wurde zu Ihren Favoriten hinzugefügt"
|
|||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s wurde aus Ihren Favoriten entfernt"
|
msgstr "%s wurde aus Ihren Favoriten entfernt"
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/status/system.js:325
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Einstellungen"
|
msgstr "Einstellungen"
|
||||||
|
|
||||||
@ -597,50 +602,50 @@ msgstr "Öffnen mit %s"
|
|||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Auswerfen"
|
msgstr "Auswerfen"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
|
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Passwort:"
|
msgstr "Passwort:"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:107
|
#: ../js/ui/components/keyring.js:110
|
||||||
msgid "Type again:"
|
msgid "Type again:"
|
||||||
msgstr "Erneut eingeben:"
|
msgstr "Erneut eingeben:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Verbinden"
|
msgstr "Verbinden"
|
||||||
|
|
||||||
#. Cisco LEAP
|
#. Cisco LEAP
|
||||||
#: ../js/ui/components/networkAgent.js:218
|
#: ../js/ui/components/networkAgent.js:222
|
||||||
#: ../js/ui/components/networkAgent.js:230
|
#: ../js/ui/components/networkAgent.js:234
|
||||||
#: ../js/ui/components/networkAgent.js:257
|
#: ../js/ui/components/networkAgent.js:261
|
||||||
#: ../js/ui/components/networkAgent.js:277
|
#: ../js/ui/components/networkAgent.js:281
|
||||||
#: ../js/ui/components/networkAgent.js:287
|
#: ../js/ui/components/networkAgent.js:291
|
||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "Passwort:"
|
msgstr "Passwort:"
|
||||||
|
|
||||||
#. static WEP
|
#. static WEP
|
||||||
#: ../js/ui/components/networkAgent.js:223
|
#: ../js/ui/components/networkAgent.js:227
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "Schlüssel:"
|
msgstr "Schlüssel:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:261
|
#: ../js/ui/components/networkAgent.js:265
|
||||||
msgid "Identity: "
|
msgid "Identity: "
|
||||||
msgstr "Identität:"
|
msgstr "Identität:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:263
|
#: ../js/ui/components/networkAgent.js:267
|
||||||
msgid "Private key password: "
|
msgid "Private key password: "
|
||||||
msgstr "Passwort für geheimen Schlüssel:"
|
msgstr "Passwort für geheimen Schlüssel:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:275
|
#: ../js/ui/components/networkAgent.js:279
|
||||||
msgid "Service: "
|
msgid "Service: "
|
||||||
msgstr "Dienst:"
|
msgstr "Dienst:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:304
|
#: ../js/ui/components/networkAgent.js:308
|
||||||
msgid "Authentication required by wireless network"
|
msgid "Authentication required by wireless network"
|
||||||
msgstr "Legitimierung für Funknetzwerk wird benötigt"
|
msgstr "Legitimierung für Funknetzwerk wird benötigt"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:305
|
#: ../js/ui/components/networkAgent.js:309
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
@ -649,35 +654,35 @@ msgstr ""
|
|||||||
"Passwörter oder Schlüssel sind erforderlich, um auf das Funknetzwerk »%s« "
|
"Passwörter oder Schlüssel sind erforderlich, um auf das Funknetzwerk »%s« "
|
||||||
"zuzugreifen."
|
"zuzugreifen."
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:309
|
#: ../js/ui/components/networkAgent.js:313
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
msgstr "Kabelgebundene 802.1X-Legitimierung"
|
msgstr "Kabelgebundene 802.1X-Legitimierung"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:311
|
#: ../js/ui/components/networkAgent.js:315
|
||||||
msgid "Network name: "
|
msgid "Network name: "
|
||||||
msgstr "Netzwerkname:"
|
msgstr "Netzwerkname:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:316
|
#: ../js/ui/components/networkAgent.js:320
|
||||||
msgid "DSL authentication"
|
msgid "DSL authentication"
|
||||||
msgstr "DSL-Legitimierung"
|
msgstr "DSL-Legitimierung"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:323
|
#: ../js/ui/components/networkAgent.js:327
|
||||||
msgid "PIN code required"
|
msgid "PIN code required"
|
||||||
msgstr "PIN-Code ist erforderlich"
|
msgstr "PIN-Code ist erforderlich"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:324
|
#: ../js/ui/components/networkAgent.js:328
|
||||||
msgid "PIN code is needed for the mobile broadband device"
|
msgid "PIN code is needed for the mobile broadband device"
|
||||||
msgstr "Für das mobile Breitbandgerät wird ein PIN-Code benötigt."
|
msgstr "Für das mobile Breitbandgerät wird ein PIN-Code benötigt."
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:325
|
#: ../js/ui/components/networkAgent.js:329
|
||||||
msgid "PIN: "
|
msgid "PIN: "
|
||||||
msgstr "PIN: "
|
msgstr "PIN: "
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:331
|
#: ../js/ui/components/networkAgent.js:335
|
||||||
msgid "Mobile broadband network password"
|
msgid "Mobile broadband network password"
|
||||||
msgstr "Passwort der mobilen Breitbandverbindung"
|
msgstr "Passwort der mobilen Breitbandverbindung"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:332
|
#: ../js/ui/components/networkAgent.js:336
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "Es wird ein Passwort benötigt, um sich mit »%s« zu verbinden."
|
msgstr "Es wird ein Passwort benötigt, um sich mit »%s« zu verbinden."
|
||||||
@ -1169,11 +1174,11 @@ msgstr "Benachrichtigungsfeldmenü"
|
|||||||
msgid "No Messages"
|
msgid "No Messages"
|
||||||
msgstr "Keine Nachrichten"
|
msgstr "Keine Nachrichten"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1812
|
#: ../js/ui/messageTray.js:1813
|
||||||
msgid "Message Tray"
|
msgid "Message Tray"
|
||||||
msgstr "Benachrichtigungsfeld"
|
msgstr "Benachrichtigungsfeld"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:2787
|
#: ../js/ui/messageTray.js:2788
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Systeminformationen"
|
msgstr "Systeminformationen"
|
||||||
|
|
||||||
@ -1215,11 +1220,7 @@ msgstr "Beenden"
|
|||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Aktivitäten"
|
msgstr "Aktivitäten"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:807
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Settings Menu"
|
|
||||||
msgstr "Einstellungsmenü"
|
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Oberes Panel"
|
msgstr "Oberes Panel"
|
||||||
|
|
||||||
@ -1357,9 +1358,9 @@ msgstr "Große Schrift"
|
|||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
#. The Bluetooth menu only appears when Bluetooth is in use,
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
#. so just statically build it with a "Turn Off" menu item.
|
||||||
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:62
|
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
||||||
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
|
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
||||||
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
|
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
||||||
msgid "Bluetooth"
|
msgid "Bluetooth"
|
||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
@ -1372,56 +1373,56 @@ msgstr "Ausschalten"
|
|||||||
msgid "Bluetooth Settings"
|
msgid "Bluetooth Settings"
|
||||||
msgstr "Bluetooth-Einstellungen"
|
msgstr "Bluetooth-Einstellungen"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:57
|
#: ../js/ui/status/bluetooth.js:58
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d Verbundes Gerät"
|
msgstr[0] "%d Verbundes Gerät"
|
||||||
msgstr[1] "%d Verbundene Geräte"
|
msgstr[1] "%d Verbundene Geräte"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "Legitimierungsanfrage von %s"
|
msgstr "Legitimierungsanfrage von %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
|
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
||||||
#: ../js/ui/status/bluetooth.js:202
|
#: ../js/ui/status/bluetooth.js:203
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "Gerät »%s« möchte mit diesem Rechner gekoppelt werden"
|
msgstr "Gerät »%s« möchte mit diesem Rechner gekoppelt werden"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:108
|
#: ../js/ui/status/bluetooth.js:109
|
||||||
msgid "Allow"
|
msgid "Allow"
|
||||||
msgstr "Erlauben"
|
msgstr "Erlauben"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:109
|
#: ../js/ui/status/bluetooth.js:110
|
||||||
msgid "Deny"
|
msgid "Deny"
|
||||||
msgstr "Verweigern"
|
msgstr "Verweigern"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:134
|
#: ../js/ui/status/bluetooth.js:135
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "Gerät »%s« bittet um Zugriff auf den Dienst »%s«"
|
msgstr "Gerät »%s« bittet um Zugriff auf den Dienst »%s«"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:136
|
#: ../js/ui/status/bluetooth.js:137
|
||||||
msgid "Always grant access"
|
msgid "Always grant access"
|
||||||
msgstr "Immer Zugriff gewähren"
|
msgstr "Immer Zugriff gewähren"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:137
|
#: ../js/ui/status/bluetooth.js:138
|
||||||
msgid "Grant this time only"
|
msgid "Grant this time only"
|
||||||
msgstr "Nur dieses Mal gewähren"
|
msgstr "Nur dieses Mal gewähren"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:138
|
#: ../js/ui/status/bluetooth.js:139
|
||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "Abweisen"
|
msgstr "Abweisen"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name
|
||||||
#: ../js/ui/status/bluetooth.js:165
|
#: ../js/ui/status/bluetooth.js:166
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "Koppelungsbestätigung für %s"
|
msgstr "Koppelungsbestätigung für %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:172
|
#: ../js/ui/status/bluetooth.js:173
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
@ -1429,24 +1430,24 @@ msgstr ""
|
|||||||
"Bitte bestätigen Sie, ob die PIN »%06d« mit der des Gerätes übereinstimmt."
|
"Bitte bestätigen Sie, ob die PIN »%06d« mit der des Gerätes übereinstimmt."
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun
|
||||||
#: ../js/ui/status/bluetooth.js:175
|
#: ../js/ui/status/bluetooth.js:176
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "Stimmt überein"
|
msgstr "Stimmt überein"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:176
|
#: ../js/ui/status/bluetooth.js:177
|
||||||
msgid "Does not match"
|
msgid "Does not match"
|
||||||
msgstr "Stimmt nicht überein"
|
msgstr "Stimmt nicht überein"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:195
|
#: ../js/ui/status/bluetooth.js:196
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "Koppelungsanfrage für %s"
|
msgstr "Koppelungsanfrage für %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:203
|
#: ../js/ui/status/bluetooth.js:204
|
||||||
msgid "Please enter the PIN mentioned on the device."
|
msgid "Please enter the PIN mentioned on the device."
|
||||||
msgstr "Bitte geben Sie die auf dem Gerät angezeigte PIN ein."
|
msgstr "Bitte geben Sie die auf dem Gerät angezeigte PIN ein."
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:220
|
#: ../js/ui/status/bluetooth.js:221
|
||||||
msgid "OK"
|
msgid "OK"
|
||||||
msgstr "OK"
|
msgstr "OK"
|
||||||
|
|
||||||
@ -1530,15 +1531,15 @@ msgstr "Einschalten"
|
|||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1306
|
#: ../js/ui/status/network.js:1307
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Netzwerk-Verwaltung"
|
msgstr "Netzwerk-Verwaltung"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1345
|
#: ../js/ui/status/network.js:1346
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Verbindung gescheitert"
|
msgstr "Verbindung gescheitert"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1347
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Aktivierung der Netzwerkverbindung ist gescheitert"
|
msgstr "Aktivierung der Netzwerkverbindung ist gescheitert"
|
||||||
|
|
||||||
@ -1734,6 +1735,9 @@ msgstr "Das Passwort darf nicht leer sein"
|
|||||||
msgid "Authentication dialog was dismissed by the user"
|
msgid "Authentication dialog was dismissed by the user"
|
||||||
msgstr "Der Dialog zur Legitimierung wurde vom Benutzer geschlossen"
|
msgstr "Der Dialog zur Legitimierung wurde vom Benutzer geschlossen"
|
||||||
|
|
||||||
|
#~ msgid "Settings Menu"
|
||||||
|
#~ msgstr "Einstellungsmenü"
|
||||||
|
|
||||||
#~ msgid ""
|
#~ msgid ""
|
||||||
#~ "Internally used to store the last IM presence explicitly set by the user. "
|
#~ "Internally used to store the last IM presence explicitly set by the user. "
|
||||||
#~ "The value here is from the TpConnectionPresenceType enumeration."
|
#~ "The value here is from the TpConnectionPresenceType enumeration."
|
||||||
|
345
po/es.po
@ -10,8 +10,8 @@ msgstr ""
|
|||||||
"Project-Id-Version: gnome-shell.master\n"
|
"Project-Id-Version: gnome-shell.master\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
|
"POT-Creation-Date: 2013-10-09 16:40+0000\n"
|
||||||
"PO-Revision-Date: 2013-09-24 12:34+0200\n"
|
"PO-Revision-Date: 2013-10-10 10:33+0200\n"
|
||||||
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
|
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
|
||||||
"Language-Team: Español <gnome-es-list@gnome.org>\n"
|
"Language-Team: Español <gnome-es-list@gnome.org>\n"
|
||||||
"Language: es\n"
|
"Language: es\n"
|
||||||
@ -55,7 +55,6 @@ msgid "Window management and application launching"
|
|||||||
msgstr "Gestión de ventanas e inicio de aplicaciones"
|
msgstr "Gestión de ventanas e inicio de aplicaciones"
|
||||||
|
|
||||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||||
#: ../js/extensionPrefs/main.js:153
|
|
||||||
msgid "GNOME Shell Extension Preferences"
|
msgid "GNOME Shell Extension Preferences"
|
||||||
msgstr "Preferencias de las extensiones de GNOME Shell"
|
msgstr "Preferencias de las extensiones de GNOME Shell"
|
||||||
|
|
||||||
@ -276,15 +275,6 @@ msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Retardo al cambiar el foco del ratón hasta que el puntero deja de moverse"
|
"Retardo al cambiar el foco del ratón hasta que el puntero deja de moverse"
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:125
|
|
||||||
#, c-format
|
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
|
||||||
msgstr "Hubo un error al lanzar el diálogo de preferencias para %s:"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:165
|
|
||||||
msgid "Extension"
|
|
||||||
msgstr "Extensión"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:189
|
#: ../js/extensionPrefs/main.js:189
|
||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -293,7 +283,7 @@ msgstr ""
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:728
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Cancelar"
|
msgstr "Cancelar"
|
||||||
|
|
||||||
@ -315,23 +305,14 @@ msgstr "Iniciar sesión"
|
|||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Elegir sesión"
|
msgstr "Elegir sesión"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
|
||||||
#. login screen. It can be activated to reveal an entry for
|
|
||||||
#. manually entering the username.
|
|
||||||
#: ../js/gdm/loginDialog.js:454
|
#: ../js/gdm/loginDialog.js:454
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "¿No está en la lista?"
|
msgstr "¿No está en la lista?"
|
||||||
|
|
||||||
#. Translators: this message is shown below the username entry field
|
|
||||||
#. to clue the user in on how to login to the local network realm
|
|
||||||
#: ../js/gdm/loginDialog.js:622
|
#: ../js/gdm/loginDialog.js:622
|
||||||
#, c-format
|
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(ej., usuario o %s)"
|
msgstr "(ej., usuario o %s)"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
|
||||||
#. is not visible here since we only care about phase2 authentication
|
|
||||||
#. (and don't even care of which one)
|
|
||||||
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
||||||
#: ../js/ui/components/networkAgent.js:277
|
#: ../js/ui/components/networkAgent.js:277
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
@ -345,27 +326,19 @@ msgstr "Ventana de inicio de sesión"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Error de autenticación"
|
msgstr "Error de autenticación"
|
||||||
|
|
||||||
#. We don't show fingerprint messages directly since it's
|
|
||||||
#. not the main auth service. Instead we use the messages
|
|
||||||
#. as a cue to display our own message.
|
|
||||||
#. Translators: this message is shown below the password entry field
|
|
||||||
#. to indicate the user can swipe their finger instead
|
|
||||||
#: ../js/gdm/util.js:436
|
#: ../js/gdm/util.js:436
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(o pase el dedo)"
|
msgstr "(o pase el dedo)"
|
||||||
|
|
||||||
#: ../js/misc/util.js:98
|
#: ../js/misc/util.js:115
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Comando no encontrado"
|
msgstr "Comando no encontrado"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
#: ../js/misc/util.js:148
|
||||||
#. something nicer
|
|
||||||
#: ../js/misc/util.js:131
|
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "No se pudo analizar el comando:"
|
msgstr "No se pudo analizar el comando:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:139
|
#: ../js/misc/util.js:156
|
||||||
#, c-format
|
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Falló la ejecución de «%s»:"
|
msgstr "Falló la ejecución de «%s»:"
|
||||||
|
|
||||||
@ -394,16 +367,14 @@ msgid "Add to Favorites"
|
|||||||
msgstr "Añadir a los favoritos"
|
msgstr "Añadir a los favoritos"
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:87
|
#: ../js/ui/appFavorites.js:87
|
||||||
#, c-format
|
|
||||||
msgid "%s has been added to your favorites."
|
msgid "%s has been added to your favorites."
|
||||||
msgstr "Se ha añadido %s a sus favoritos."
|
msgstr "Se ha añadido %s a sus favoritos."
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:121
|
#: ../js/ui/appFavorites.js:121
|
||||||
#, c-format
|
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "Se ha quitado %s de sus favoritos."
|
msgstr "Se ha quitado %s de sus favoritos."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Configuración"
|
msgstr "Configuración"
|
||||||
@ -414,68 +385,68 @@ msgstr "Cambiar el fondo…"
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:62
|
#: ../js/ui/calendar.js:62
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Todo el día"
|
msgstr "Todo el día"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 24h format,
|
#. Translators: Shown in calendar event list, if 24h format,
|
||||||
#. \u2236 is a ratio character, similar to :
|
#. \u2236 is a ratio character, similar to : */
|
||||||
#: ../js/ui/calendar.js:68
|
#: ../js/ui/calendar.js:68
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%H\\u2236%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H\\u2236%M"
|
msgstr "%H∶%M"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space */
|
||||||
#: ../js/ui/calendar.js:77
|
#: ../js/ui/calendar.js:77
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%l\\u2236%M\\u2009%p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%l\\u2236%M\\u2009%p"
|
msgstr "%l∶%M %p"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Sunday.
|
#. Translators: Calendar grid abbreviation for Sunday.
|
||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:108
|
#: ../js/ui/calendar.js:108
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "D"
|
msgstr "D"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday
|
#. Translators: Calendar grid abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:110
|
#: ../js/ui/calendar.js:110
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "L"
|
msgstr "L"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday
|
#. Translators: Calendar grid abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:112
|
#: ../js/ui/calendar.js:112
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "M"
|
msgstr "M"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday
|
#. Translators: Calendar grid abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:114
|
#: ../js/ui/calendar.js:114
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "X"
|
msgstr "X"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday
|
#. Translators: Calendar grid abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:116
|
#: ../js/ui/calendar.js:116
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "J"
|
msgstr "J"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday
|
#. Translators: Calendar grid abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:118
|
#: ../js/ui/calendar.js:118
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "V"
|
msgstr "V"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday
|
#. Translators: Calendar grid abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:120
|
#: ../js/ui/calendar.js:120
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -486,48 +457,52 @@ msgstr "S"
|
|||||||
#. * NOTE: These list abbreviations are normally not shown together
|
#. * NOTE: These list abbreviations are normally not shown together
|
||||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||||
#. * both be 'T').
|
#. * both be 'T').
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:133
|
#: ../js/ui/calendar.js:133
|
||||||
msgctxt "list sunday"
|
msgctxt "list sunday"
|
||||||
msgid "Su"
|
msgid "Su"
|
||||||
msgstr "Dom"
|
msgstr "Dom"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Monday
|
#. Translators: Event list abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:135
|
#: ../js/ui/calendar.js:135
|
||||||
msgctxt "list monday"
|
msgctxt "list monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "L"
|
msgstr "L"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Tuesday
|
#. Translators: Event list abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:137
|
#: ../js/ui/calendar.js:137
|
||||||
msgctxt "list tuesday"
|
msgctxt "list tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "M"
|
msgstr "M"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Wednesday
|
#. Translators: Event list abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:139
|
#: ../js/ui/calendar.js:139
|
||||||
msgctxt "list wednesday"
|
msgctxt "list wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "X"
|
msgstr "X"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Thursday
|
#. Translators: Event list abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:141
|
#: ../js/ui/calendar.js:141
|
||||||
msgctxt "list thursday"
|
msgctxt "list thursday"
|
||||||
msgid "Th"
|
msgid "Th"
|
||||||
msgstr "J"
|
msgstr "J"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Friday
|
#. Translators: Event list abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:143
|
#: ../js/ui/calendar.js:143
|
||||||
msgctxt "list friday"
|
msgctxt "list friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "V"
|
msgstr "V"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Saturday
|
#. Translators: Event list abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:145
|
#: ../js/ui/calendar.js:145
|
||||||
msgctxt "list saturday"
|
msgctxt "list saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "S"
|
msgstr "S"
|
||||||
|
|
||||||
|
#: ../js/ui/calendar.js:389
|
||||||
|
msgid "calendar:MY"
|
||||||
|
msgstr "calendario:MA"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:447
|
#: ../js/ui/calendar.js:447
|
||||||
msgid "Previous month"
|
msgid "Previous month"
|
||||||
msgstr "Mes anterior"
|
msgstr "Mes anterior"
|
||||||
@ -536,18 +511,18 @@ msgstr "Mes anterior"
|
|||||||
msgid "Next month"
|
msgid "Next month"
|
||||||
msgstr "Siguiente mes"
|
msgstr "Siguiente mes"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events */
|
||||||
#: ../js/ui/calendar.js:753
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "Nada programado"
|
msgstr "Nada programado"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||||
#: ../js/ui/calendar.js:771
|
#: ../js/ui/calendar.js:771
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d de %B"
|
msgstr "%A, %d de %B"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||||
#: ../js/ui/calendar.js:774
|
#: ../js/ui/calendar.js:774
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
@ -582,7 +557,6 @@ msgid "Removable Devices"
|
|||||||
msgstr "Dispositivos extraíbles"
|
msgstr "Dispositivos extraíbles"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:594
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Abrir con %s"
|
msgstr "Abrir con %s"
|
||||||
|
|
||||||
@ -590,20 +564,19 @@ msgstr "Abrir con %s"
|
|||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Expulsar"
|
msgstr "Expulsar"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
|
#: ../js/ui/components/keyring.js:89 ../js/ui/components/polkitAgent.js:280
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Contraseña:"
|
msgstr "Contraseña:"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:110
|
#: ../js/ui/components/keyring.js:108
|
||||||
msgid "Type again:"
|
msgid "Type again:"
|
||||||
msgstr "Escriba de nuevo:"
|
msgstr "Escriba de nuevo:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:296 ../js/ui/status/network.js:731
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Conectar"
|
msgstr "Conectar"
|
||||||
|
|
||||||
#. Cisco LEAP
|
|
||||||
#: ../js/ui/components/networkAgent.js:222
|
#: ../js/ui/components/networkAgent.js:222
|
||||||
#: ../js/ui/components/networkAgent.js:234
|
#: ../js/ui/components/networkAgent.js:234
|
||||||
#: ../js/ui/components/networkAgent.js:261
|
#: ../js/ui/components/networkAgent.js:261
|
||||||
@ -612,7 +585,6 @@ msgstr "Conectar"
|
|||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "Contraseña: "
|
msgstr "Contraseña: "
|
||||||
|
|
||||||
#. static WEP
|
|
||||||
#: ../js/ui/components/networkAgent.js:227
|
#: ../js/ui/components/networkAgent.js:227
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "Clave:"
|
msgstr "Clave:"
|
||||||
@ -634,7 +606,6 @@ msgid "Authentication required by wireless network"
|
|||||||
msgstr "La red inalámbrica requiere autenticación"
|
msgstr "La red inalámbrica requiere autenticación"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:309
|
#: ../js/ui/components/networkAgent.js:309
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network '%"
|
"Passwords or encryption keys are required to access the wireless network '%"
|
||||||
"s'."
|
"s'."
|
||||||
@ -671,7 +642,6 @@ msgid "Mobile broadband network password"
|
|||||||
msgstr "Contraseña de la red de banda ancha móvil"
|
msgstr "Contraseña de la red de banda ancha móvil"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:336
|
#: ../js/ui/components/networkAgent.js:336
|
||||||
#, c-format
|
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "Se requiere una contraseña para conectar a «%s»."
|
msgstr "Se requiere una contraseña para conectar a «%s»."
|
||||||
|
|
||||||
@ -690,23 +660,19 @@ msgstr "Autenticar"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance.
|
#. * for instance. */
|
||||||
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "Inténtelo de nuevo,"
|
msgstr "Inténtelo de nuevo,"
|
||||||
|
|
||||||
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
|
|
||||||
#. system-users for now as Empathy does.
|
|
||||||
#: ../js/ui/components/telepathyClient.js:238
|
#: ../js/ui/components/telepathyClient.js:238
|
||||||
msgid "Invitation"
|
msgid "Invitation"
|
||||||
msgstr "Invitación"
|
msgstr "Invitación"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:298
|
#: ../js/ui/components/telepathyClient.js:298
|
||||||
msgid "Call"
|
msgid "Call"
|
||||||
msgstr "Llamar"
|
msgstr "Llamar"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:314
|
#: ../js/ui/components/telepathyClient.js:314
|
||||||
msgid "File Transfer"
|
msgid "File Transfer"
|
||||||
msgstr "Transferencia de archivos"
|
msgstr "Transferencia de archivos"
|
||||||
@ -723,49 +689,42 @@ msgstr "Dar voz"
|
|||||||
msgid "Mute"
|
msgid "Mute"
|
||||||
msgstr "Silenciar"
|
msgstr "Silenciar"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:942
|
#: ../js/ui/components/telepathyClient.js:942
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>Ayer</b>, <b>%H:%M</b>"
|
msgstr "<b>Ayer</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30
|
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
|
||||||
#: ../js/ui/components/telepathyClient.js:948
|
#: ../js/ui/components/telepathyClient.js:948
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%A</b>, <b>%H:%M</b>"
|
msgid "<b>%A</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"
|
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:953
|
#: ../js/ui/components/telepathyClient.js:953
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%d</b> de <b>%B</b>, <b>%H:%M</b>"
|
msgstr "<b>%d</b> de <b>%B</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"
|
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:957
|
#: ../js/ui/components/telepathyClient.js:957
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
msgstr "<b>%d</b> de <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgstr "<b>%d</b> de <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name.
|
#. IM name. */
|
||||||
#: ../js/ui/components/telepathyClient.js:986
|
#: ../js/ui/components/telepathyClient.js:986
|
||||||
#, c-format
|
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
msgstr "Ahora %s se llama %s"
|
msgstr "Ahora %s se llama %s"
|
||||||
|
|
||||||
#. translators: argument is a room name like
|
#. translators: argument is a room name like
|
||||||
#. * room@jabber.org for example.
|
#. * room@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1089
|
#: ../js/ui/components/telepathyClient.js:1089
|
||||||
#, c-format
|
|
||||||
msgid "Invitation to %s"
|
msgid "Invitation to %s"
|
||||||
msgstr "Invitación a %s"
|
msgstr "Invitación a %s"
|
||||||
|
|
||||||
#. translators: first argument is the name of a contact and the second
|
#. 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
|
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||||
#. * for example.
|
#. * for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1097
|
#: ../js/ui/components/telepathyClient.js:1097
|
||||||
#, c-format
|
|
||||||
msgid "%s is inviting you to join %s"
|
msgid "%s is inviting you to join %s"
|
||||||
msgstr "%s le está invitando a unirse a %s"
|
msgstr "%s le está invitando a unirse a %s"
|
||||||
|
|
||||||
@ -782,19 +741,17 @@ msgstr "Rechazar"
|
|||||||
msgid "Accept"
|
msgid "Accept"
|
||||||
msgstr "Aceptar"
|
msgstr "Aceptar"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1130
|
#: ../js/ui/components/telepathyClient.js:1130
|
||||||
#, c-format
|
|
||||||
msgid "Video call from %s"
|
msgid "Video call from %s"
|
||||||
msgstr "Videollamada de %s"
|
msgstr "Videollamada de %s"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1133
|
#: ../js/ui/components/telepathyClient.js:1133
|
||||||
#, c-format
|
|
||||||
msgid "Call from %s"
|
msgid "Call from %s"
|
||||||
msgstr "Llamada de %s"
|
msgstr "Llamada de %s"
|
||||||
|
|
||||||
#. translators: this is a button label (verb), not a noun
|
#. translators: this is a button label (verb), not a noun */
|
||||||
#: ../js/ui/components/telepathyClient.js:1142
|
#: ../js/ui/components/telepathyClient.js:1142
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Responder"
|
msgstr "Responder"
|
||||||
@ -803,15 +760,13 @@ msgstr "Responder"
|
|||||||
#. * the contact's alias and the second one is the
|
#. * the contact's alias and the second one is the
|
||||||
#. * file name. The string will be something
|
#. * file name. The string will be something
|
||||||
#. * like: "Alice is sending you test.ogg"
|
#. * like: "Alice is sending you test.ogg"
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1174
|
#: ../js/ui/components/telepathyClient.js:1174
|
||||||
#, c-format
|
|
||||||
msgid "%s is sending you %s"
|
msgid "%s is sending you %s"
|
||||||
msgstr "%s le está enviando %s"
|
msgstr "%s le está enviando %s"
|
||||||
|
|
||||||
#. To translators: The parameter is the contact's alias
|
#. To translators: The parameter is the contact's alias */
|
||||||
#: ../js/ui/components/telepathyClient.js:1209
|
#: ../js/ui/components/telepathyClient.js:1209
|
||||||
#, c-format
|
|
||||||
msgid "%s would like permission to see when you are online"
|
msgid "%s would like permission to see when you are online"
|
||||||
msgstr "%s solicita permiso para ver cuándo está en línea"
|
msgstr "%s solicita permiso para ver cuándo está en línea"
|
||||||
|
|
||||||
@ -923,9 +878,8 @@ msgid "Internal error"
|
|||||||
msgstr "Error interno"
|
msgstr "Error interno"
|
||||||
|
|
||||||
#. translators: argument is the account name, like
|
#. translators: argument is the account name, like
|
||||||
#. * name@jabber.org for example.
|
#. * name@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1357
|
#: ../js/ui/components/telepathyClient.js:1357
|
||||||
#, c-format
|
|
||||||
msgid "Unable to connect to %s"
|
msgid "Unable to connect to %s"
|
||||||
msgstr "No se pudo conectar a %s"
|
msgstr "No se pudo conectar a %s"
|
||||||
|
|
||||||
@ -945,8 +899,6 @@ msgstr "Ventanas"
|
|||||||
msgid "Show Applications"
|
msgid "Show Applications"
|
||||||
msgstr "Mostrar aplicaciones"
|
msgstr "Mostrar aplicaciones"
|
||||||
|
|
||||||
#. Translators: this is the name of the dock/favorites area on
|
|
||||||
#. the left of the overview
|
|
||||||
#: ../js/ui/dash.js:442
|
#: ../js/ui/dash.js:442
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "Tablero"
|
msgstr "Tablero"
|
||||||
@ -965,13 +917,12 @@ msgstr "Configuración de hora y fecha"
|
|||||||
|
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. 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").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/dateMenu.js:202
|
#: ../js/ui/dateMenu.js:202
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A, %e de %B de %Y"
|
msgstr "%A, %e de %B de %Y"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:62
|
#: ../js/ui/endSessionDialog.js:62
|
||||||
#, c-format
|
|
||||||
msgctxt "title"
|
msgctxt "title"
|
||||||
msgid "Log Out %s"
|
msgid "Log Out %s"
|
||||||
msgstr "Cerrar la sesión %s"
|
msgstr "Cerrar la sesión %s"
|
||||||
@ -982,14 +933,12 @@ msgid "Log Out"
|
|||||||
msgstr "Cerrar la sesión"
|
msgstr "Cerrar la sesión"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:65
|
#: ../js/ui/endSessionDialog.js:65
|
||||||
#, c-format
|
|
||||||
msgid "%s will be logged out automatically in %d second."
|
msgid "%s will be logged out automatically in %d second."
|
||||||
msgid_plural "%s will be logged out automatically in %d seconds."
|
msgid_plural "%s will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "se cerrará automáticamente la sesión de %s en %d segundo."
|
msgstr[0] "se cerrará automáticamente la sesión de %s en %d segundo."
|
||||||
msgstr[1] "se cerrará automáticamente la sesión de %s en %d segundos."
|
msgstr[1] "se cerrará automáticamente la sesión de %s en %d segundos."
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:70
|
#: ../js/ui/endSessionDialog.js:70
|
||||||
#, c-format
|
|
||||||
msgid "You will be logged out automatically in %d second."
|
msgid "You will be logged out automatically in %d second."
|
||||||
msgid_plural "You will be logged out automatically in %d seconds."
|
msgid_plural "You will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "Su sesión se cerrará automáticamente en %d segundo."
|
msgstr[0] "Su sesión se cerrará automáticamente en %d segundo."
|
||||||
@ -1006,7 +955,6 @@ msgid "Power Off"
|
|||||||
msgstr "Apagar"
|
msgstr "Apagar"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:83
|
#: ../js/ui/endSessionDialog.js:83
|
||||||
#, c-format
|
|
||||||
msgid "The system will power off automatically in %d second."
|
msgid "The system will power off automatically in %d second."
|
||||||
msgid_plural "The system will power off automatically in %d seconds."
|
msgid_plural "The system will power off automatically in %d seconds."
|
||||||
msgstr[0] "El sistema se apagará automáticamente en %d segundo."
|
msgstr[0] "El sistema se apagará automáticamente en %d segundo."
|
||||||
@ -1028,7 +976,6 @@ msgid "Restart"
|
|||||||
msgstr "Reiniciar"
|
msgstr "Reiniciar"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:99
|
#: ../js/ui/endSessionDialog.js:99
|
||||||
#, c-format
|
|
||||||
msgid "The system will restart automatically in %d second."
|
msgid "The system will restart automatically in %d second."
|
||||||
msgid_plural "The system will restart automatically in %d seconds."
|
msgid_plural "The system will restart automatically in %d seconds."
|
||||||
msgstr[0] "El sistema se reiniciará automáticamente en %d segundo."
|
msgstr[0] "El sistema se reiniciará automáticamente en %d segundo."
|
||||||
@ -1040,7 +987,6 @@ msgid "Restart & Install Updates"
|
|||||||
msgstr "Reiniciar e instalar actualizaciones"
|
msgstr "Reiniciar e instalar actualizaciones"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:114
|
#: ../js/ui/endSessionDialog.js:114
|
||||||
#, c-format
|
|
||||||
msgid "The system will automatically restart and install updates in %d second."
|
msgid "The system will automatically restart and install updates in %d second."
|
||||||
msgid_plural ""
|
msgid_plural ""
|
||||||
"The system will automatically restart and install updates in %d seconds."
|
"The system will automatically restart and install updates in %d seconds."
|
||||||
@ -1064,15 +1010,13 @@ msgstr "Algunas aplicaciones están ocupadas o tienen trabajo sin guardar."
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Hay otros usuarios con la sesión iniciada"
|
msgstr "Hay otros usuarios con la sesión iniciada"
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login
|
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||||
#: ../js/ui/endSessionDialog.js:479
|
#: ../js/ui/endSessionDialog.js:479
|
||||||
#, c-format
|
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (remoto)"
|
msgstr "%s (remoto)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console
|
#. Translators: Console here refers to a tty like a VT console */
|
||||||
#: ../js/ui/endSessionDialog.js:482
|
#: ../js/ui/endSessionDialog.js:482
|
||||||
#, c-format
|
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (consola)"
|
msgstr "%s (consola)"
|
||||||
|
|
||||||
@ -1081,11 +1025,10 @@ msgid "Install"
|
|||||||
msgstr "Instalar"
|
msgstr "Instalar"
|
||||||
|
|
||||||
#: ../js/ui/extensionDownloader.js:204
|
#: ../js/ui/extensionDownloader.js:204
|
||||||
#, c-format
|
|
||||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||||
msgstr "¿Descargar e instalar «%s» desde extensions.gnome.org?"
|
msgstr "¿Descargar e instalar «%s» desde extensions.gnome.org?"
|
||||||
|
|
||||||
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
|
#: ../js/ui/keyboard.js:619
|
||||||
msgid "Keyboard"
|
msgid "Keyboard"
|
||||||
msgstr "Teclado"
|
msgstr "Teclado"
|
||||||
|
|
||||||
@ -1093,9 +1036,8 @@ msgstr "Teclado"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "No hay extensiones instaladas"
|
msgstr "No hay extensiones instaladas"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID.
|
#. Translators: argument is an extension UUID. */
|
||||||
#: ../js/ui/lookingGlass.js:743
|
#: ../js/ui/lookingGlass.js:743
|
||||||
#, c-format
|
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
msgstr "%s no ha generado ningún error."
|
msgstr "%s no ha generado ningún error."
|
||||||
|
|
||||||
@ -1111,9 +1053,12 @@ msgstr "Mostrar errores"
|
|||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr "Activado"
|
msgstr "Activado"
|
||||||
|
|
||||||
|
#. Translators: this is for a network device that cannot be activated
|
||||||
|
#. because it's disabled by rfkill (airplane mode) */
|
||||||
#. translators:
|
#. translators:
|
||||||
#. * The device has been disabled
|
#. * The device has been disabled
|
||||||
#: ../js/ui/lookingGlass.js:765 ../src/gvc/gvc-mixer-control.c:1830
|
#: ../js/ui/lookingGlass.js:765 ../js/ui/status/network.js:473
|
||||||
|
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Desactivado"
|
msgstr "Desactivado"
|
||||||
|
|
||||||
@ -1175,7 +1120,6 @@ msgid "Unknown"
|
|||||||
msgstr "Desconocido"
|
msgstr "Desconocido"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
||||||
#, c-format
|
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
msgstr[0] "%d mensaje nuevo"
|
msgstr[0] "%d mensaje nuevo"
|
||||||
@ -1192,7 +1136,7 @@ msgstr "Vista general"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters. */
|
||||||
#: ../js/ui/overview.js:258
|
#: ../js/ui/overview.js:258
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Escribir para buscar…"
|
msgstr "Escribir para buscar…"
|
||||||
@ -1202,20 +1146,15 @@ msgid "Quit"
|
|||||||
msgstr "Salir"
|
msgstr "Salir"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview". */
|
||||||
#: ../js/ui/panel.js:570
|
#: ../js/ui/panel.js:570
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Actividades"
|
msgstr "Actividades"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Barra superior"
|
msgstr "Barra superior"
|
||||||
|
|
||||||
#. Translators: this MUST be either "toggle-switch-us"
|
|
||||||
#. (for toggle switches containing the English words
|
|
||||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
|
||||||
#. switches containing "◯" and "|"). Other values will
|
|
||||||
#. simply result in invisible toggle switches.
|
|
||||||
#: ../js/ui/popupMenu.js:233
|
#: ../js/ui/popupMenu.js:233
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
@ -1229,13 +1168,12 @@ msgid "Close"
|
|||||||
msgstr "Cerrar"
|
msgstr "Cerrar"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format */
|
||||||
#: ../js/ui/screenShield.js:88
|
#: ../js/ui/screenShield.js:88
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d de %B"
|
msgstr "%A, %d de %B"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:154
|
#: ../js/ui/screenShield.js:154
|
||||||
#, c-format
|
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "%d notificación nueva"
|
msgstr[0] "%d notificación nueva"
|
||||||
@ -1249,13 +1187,6 @@ msgstr "Bloquear"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME necesita bloquear la pantalla"
|
msgstr "GNOME necesita bloquear la pantalla"
|
||||||
|
|
||||||
#. We could not become modal, so we can't activate the
|
|
||||||
#. screenshield. The user is probably very upset at this
|
|
||||||
#. point, but any application using global grabs is broken
|
|
||||||
#. Just tell him to stop using this app
|
|
||||||
#.
|
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
|
||||||
#. screen, where we're not affected by grabs
|
|
||||||
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "No se pudo bloquear"
|
msgstr "No se pudo bloquear"
|
||||||
@ -1264,11 +1195,11 @@ msgstr "No se pudo bloquear"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Una aplicación impidió el bloqueo"
|
msgstr "Una aplicación impidió el bloqueo"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Buscando…"
|
msgstr "Buscando…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "No se encontraron resultados."
|
msgstr "No se encontraron resultados."
|
||||||
|
|
||||||
@ -1340,16 +1271,14 @@ msgstr "Contraste alto"
|
|||||||
msgid "Large Text"
|
msgid "Large Text"
|
||||||
msgstr "Texto grande"
|
msgstr "Texto grande"
|
||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
|
||||||
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
||||||
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
||||||
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
||||||
msgid "Bluetooth"
|
msgid "Bluetooth"
|
||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1085 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "Apagar"
|
msgstr "Apagar"
|
||||||
|
|
||||||
@ -1358,20 +1287,17 @@ msgid "Bluetooth Settings"
|
|||||||
msgstr "Configuración de Bluetooth"
|
msgstr "Configuración de Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:58
|
#: ../js/ui/status/bluetooth.js:58
|
||||||
#, c-format
|
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d dispositivo conectado"
|
msgstr[0] "%d dispositivo conectado"
|
||||||
msgstr[1] "%d dispositivos conectados"
|
msgstr[1] "%d dispositivos conectados"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
||||||
#, c-format
|
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "Solicitud de autorización de %s"
|
msgstr "Solicitud de autorización de %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
||||||
#: ../js/ui/status/bluetooth.js:203
|
#: ../js/ui/status/bluetooth.js:203
|
||||||
#, c-format
|
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "El dispositivo «%s» quiere emparejarse con este equipo"
|
msgstr "El dispositivo «%s» quiere emparejarse con este equipo"
|
||||||
|
|
||||||
@ -1384,7 +1310,6 @@ msgid "Deny"
|
|||||||
msgstr "Denegar"
|
msgstr "Denegar"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:135
|
#: ../js/ui/status/bluetooth.js:135
|
||||||
#, c-format
|
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "El dispositivo %s quiere acceder al servicio «%s»"
|
msgstr "El dispositivo %s quiere acceder al servicio «%s»"
|
||||||
|
|
||||||
@ -1400,20 +1325,18 @@ msgstr "Conceder sólo esta vez"
|
|||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "Rechazar"
|
msgstr "Rechazar"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name */
|
||||||
#: ../js/ui/status/bluetooth.js:166
|
#: ../js/ui/status/bluetooth.js:166
|
||||||
#, c-format
|
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "Confirmación de emparejamiento para «%s»"
|
msgstr "Confirmación de emparejamiento para «%s»"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:173
|
#: ../js/ui/status/bluetooth.js:173
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Confirme que la clave mostrada en «%06d» coincide con la del dispositivo."
|
"Confirme que la clave mostrada en «%06d» coincide con la del dispositivo."
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun */
|
||||||
#: ../js/ui/status/bluetooth.js:176
|
#: ../js/ui/status/bluetooth.js:176
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "Coincide"
|
msgstr "Coincide"
|
||||||
@ -1423,7 +1346,6 @@ msgid "Does not match"
|
|||||||
msgstr "No coincide"
|
msgstr "No coincide"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:196
|
#: ../js/ui/status/bluetooth.js:196
|
||||||
#, c-format
|
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "Solicitud de emparejamiento para «%s»"
|
msgstr "Solicitud de emparejamiento para «%s»"
|
||||||
|
|
||||||
@ -1439,91 +1361,103 @@ msgstr "Aceptar"
|
|||||||
msgid "Brightness"
|
msgid "Brightness"
|
||||||
msgstr "Brillo"
|
msgstr "Brillo"
|
||||||
|
|
||||||
#: ../js/ui/status/keyboard.js:403
|
|
||||||
msgid "Show Keyboard Layout"
|
|
||||||
msgstr "Mostrar la distribución del teclado"
|
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:72
|
#: ../js/ui/status/network.js:72
|
||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<desconocido>"
|
msgstr "<desconocido>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:223 ../js/ui/status/network.js:380
|
||||||
|
#: ../js/ui/status/network.js:1106
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "Desconectado"
|
msgstr "Desconectado"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
|
||||||
#: ../js/ui/status/rfkill.js:49
|
|
||||||
msgid "Network Settings"
|
|
||||||
msgstr "Configuración de la red"
|
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:386
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "no gestionada"
|
msgstr "no gestionada"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:366
|
#: ../js/ui/status/network.js:388
|
||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "deconectando…"
|
msgstr "deconectando…"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:394 ../js/ui/status/network.js:1160
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "conectando…"
|
msgstr "conectando…"
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password */
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:397 ../js/ui/status/network.js:1163
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "se necesita autenticación"
|
msgstr "se necesita autenticación"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing */
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:405
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "falta el «firmware»"
|
msgstr "falta el «firmware»"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage */
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:409
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "no disponible"
|
msgstr "no disponible"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:411 ../js/ui/status/network.js:1165
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "falló la conexión"
|
msgstr "falló la conexión"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:427 ../js/ui/status/network.js:513
|
||||||
|
#| msgid "Mobile broadband"
|
||||||
|
msgid "Mobile Broadband Settings"
|
||||||
|
msgstr "Configuración de banda ancha móvil"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1104
|
||||||
|
#| msgid "hardware disabled"
|
||||||
|
msgid "Hardware Disabled"
|
||||||
|
msgstr "Hardware desactivado"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:696
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Redes Wi-Fi"
|
msgstr "Redes Wi-Fi"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:698
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "Seleccionar una red"
|
msgstr "Seleccionar una red"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:722
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "No hay redes"
|
msgstr "No hay redes"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:991
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Seleccionar red"
|
msgstr "Seleccionar red"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:997
|
||||||
|
#| msgid "Settings"
|
||||||
|
msgid "Wi-Fi Settings"
|
||||||
|
msgstr "Configuración de Wi-Fi"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1085
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Enceder"
|
msgstr "Enceder"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1108
|
||||||
|
#| msgid "Connect"
|
||||||
|
msgid "Not Connected"
|
||||||
|
msgstr "No conectado"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1228
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1368
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Gestor de la red"
|
msgstr "Gestor de la red"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1407
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Falló la conexión"
|
msgstr "Falló la conexión"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1408
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Falló la activación de la conexión de red"
|
msgstr "Falló la activación de la conexión de red"
|
||||||
|
|
||||||
@ -1539,28 +1473,18 @@ msgstr "Configuración de energía"
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "Cargada completamente"
|
msgstr "Cargada completamente"
|
||||||
|
|
||||||
#. 0 is reported when UPower does not have enough data
|
|
||||||
#. to estimate battery life
|
|
||||||
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
|
||||||
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "Estimando…"
|
msgstr "Estimando…"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:77
|
#: ../js/ui/status/power.js:77
|
||||||
#, c-format
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
msgid "%d\\u2236%02d Remaining (%d%%)"
|
msgstr "Quedan %d∶%02d (%d%%)"
|
||||||
msgstr "Quedan %d\\u2236%02d (%d%%)"
|
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:82
|
#: ../js/ui/status/power.js:82
|
||||||
#, c-format
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
msgid "%d\\u2236%02d Until Full (%d%%)"
|
msgstr "%d∶%02d para la carga completa (%d%%)"
|
||||||
msgstr "%d\\u2236%d para la carga completa (%d%%)"
|
|
||||||
|
|
||||||
#. The menu only appears when airplane mode is on, so just
|
|
||||||
#. statically build it as if it was on, rather than dynamically
|
|
||||||
#. changing the menu contents.
|
|
||||||
#: ../js/ui/status/rfkill.js:43
|
#: ../js/ui/status/rfkill.js:43
|
||||||
msgid "Airplane Mode"
|
msgid "Airplane Mode"
|
||||||
msgstr "Modo avión"
|
msgstr "Modo avión"
|
||||||
@ -1569,6 +1493,10 @@ msgstr "Modo avión"
|
|||||||
msgid "On"
|
msgid "On"
|
||||||
msgstr "Encender"
|
msgstr "Encender"
|
||||||
|
|
||||||
|
#: ../js/ui/status/rfkill.js:49
|
||||||
|
msgid "Network Settings"
|
||||||
|
msgstr "Configuración de la red"
|
||||||
|
|
||||||
#: ../js/ui/status/system.js:305
|
#: ../js/ui/status/system.js:305
|
||||||
msgid "Switch User"
|
msgid "Switch User"
|
||||||
msgstr "Cambiar de usuario"
|
msgstr "Cambiar de usuario"
|
||||||
@ -1618,7 +1546,6 @@ msgid "Search"
|
|||||||
msgstr "Buscar"
|
msgstr "Buscar"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:77
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
"%s"
|
"%s"
|
||||||
@ -1627,12 +1554,10 @@ msgstr ""
|
|||||||
"%s"
|
"%s"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:81
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "%s el oráculo dice"
|
msgstr "%s el oráculo dice"
|
||||||
|
|
||||||
#: ../js/ui/windowAttentionHandler.js:19
|
#: ../js/ui/windowAttentionHandler.js:19
|
||||||
#, c-format
|
|
||||||
msgid "'%s' is ready"
|
msgid "'%s' is ready"
|
||||||
msgstr "«%s» está preparado"
|
msgstr "«%s» está preparado"
|
||||||
|
|
||||||
@ -1642,7 +1567,7 @@ msgstr "¿Quiere mantener esta configuración de la pantalla?"
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/windowManager.js:75
|
#: ../js/ui/windowManager.js:75
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Revertir configuración"
|
msgstr "Revertir configuración"
|
||||||
@ -1652,7 +1577,6 @@ msgid "Keep Changes"
|
|||||||
msgstr "Mantener cambios"
|
msgstr "Mantener cambios"
|
||||||
|
|
||||||
#: ../js/ui/windowManager.js:97
|
#: ../js/ui/windowManager.js:97
|
||||||
#, c-format
|
|
||||||
msgid "Settings changes will revert in %d second"
|
msgid "Settings changes will revert in %d second"
|
||||||
msgid_plural "Settings changes will revert in %d seconds"
|
msgid_plural "Settings changes will revert in %d seconds"
|
||||||
msgstr[0] "La configuración se revertirá en %d segundo"
|
msgstr[0] "La configuración se revertirá en %d segundo"
|
||||||
@ -1719,6 +1643,23 @@ msgstr "La contraseña no puede estar vacía"
|
|||||||
msgid "Authentication dialog was dismissed by the user"
|
msgid "Authentication dialog was dismissed by the user"
|
||||||
msgstr "El usuario rechazó el diálogo de autenticación"
|
msgstr "El usuario rechazó el diálogo de autenticación"
|
||||||
|
|
||||||
|
#~ msgid "There was an error loading the preferences dialog for %s:"
|
||||||
|
#~ msgstr "Hubo un error al lanzar el diálogo de preferencias para %s:"
|
||||||
|
|
||||||
|
#~ msgid "Extension"
|
||||||
|
#~ msgstr "Extensión"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%H\\u2236%M"
|
||||||
|
#~ msgstr "%H\\u2236%M"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%l\\u2236%M\\u2009%p"
|
||||||
|
#~ msgstr "%l\\u2236%M\\u2009%p"
|
||||||
|
|
||||||
|
#~ msgid "Show Keyboard Layout"
|
||||||
|
#~ msgstr "Mostrar la distribución del teclado"
|
||||||
|
|
||||||
#~ msgid "Settings Menu"
|
#~ msgid "Settings Menu"
|
||||||
#~ msgstr "Menú de configuración"
|
#~ msgstr "Menú de configuración"
|
||||||
|
|
||||||
@ -1833,9 +1774,6 @@ msgstr "El usuario rechazó el diálogo de autenticación"
|
|||||||
#~ msgid "Set Up a New Device…"
|
#~ msgid "Set Up a New Device…"
|
||||||
#~ msgstr "Configurar un dispositivo nuevo…"
|
#~ msgstr "Configurar un dispositivo nuevo…"
|
||||||
|
|
||||||
#~ msgid "hardware disabled"
|
|
||||||
#~ msgstr "hardware desactivado"
|
|
||||||
|
|
||||||
#~ msgid "Connection"
|
#~ msgid "Connection"
|
||||||
#~ msgstr "Conexión"
|
#~ msgstr "Conexión"
|
||||||
|
|
||||||
@ -1854,9 +1792,6 @@ msgstr "El usuario rechazó el diálogo de autenticación"
|
|||||||
#~ msgid "Wired"
|
#~ msgid "Wired"
|
||||||
#~ msgstr "Cableada"
|
#~ msgstr "Cableada"
|
||||||
|
|
||||||
#~ msgid "Mobile broadband"
|
|
||||||
#~ msgstr "Banda ancha móvil"
|
|
||||||
|
|
||||||
#~ msgid "Networking is disabled"
|
#~ msgid "Networking is disabled"
|
||||||
#~ msgstr "La red está desactivada"
|
#~ msgstr "La red está desactivada"
|
||||||
|
|
||||||
|
247
po/et.po
@ -13,8 +13,8 @@ msgstr ""
|
|||||||
"Project-Id-Version: gnome-shell MASTER\n"
|
"Project-Id-Version: gnome-shell MASTER\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-09-11 19:26+0000\n"
|
"POT-Creation-Date: 2013-09-30 11:41+0000\n"
|
||||||
"PO-Revision-Date: 2013-09-11 22:32+0300\n"
|
"PO-Revision-Date: 2013-10-01 16:40+0300\n"
|
||||||
"Last-Translator: Mattias Põldaru <mahfiaz@gmail.com>\n"
|
"Last-Translator: Mattias Põldaru <mahfiaz@gmail.com>\n"
|
||||||
"Language-Team: Estonian <>\n"
|
"Language-Team: Estonian <>\n"
|
||||||
"Language: et\n"
|
"Language: et\n"
|
||||||
@ -54,6 +54,9 @@ msgstr "GNOME Shelli laienduste eelistused"
|
|||||||
msgid "Configure GNOME Shell Extensions"
|
msgid "Configure GNOME Shell Extensions"
|
||||||
msgstr "GNOME Shelli laienduste seadistamine"
|
msgstr "GNOME Shelli laienduste seadistamine"
|
||||||
|
|
||||||
|
msgid "GNOME Shell (wayland compositor)"
|
||||||
|
msgstr "GNOME Shell (waylandi komposiitor)"
|
||||||
|
|
||||||
msgid "Enable internal tools useful for developers and testers from Alt-F2"
|
msgid "Enable internal tools useful for developers and testers from Alt-F2"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Arendajate ja testijate jaoks sisemiste tööriistade lubamine Alt-F2 alt"
|
"Arendajate ja testijate jaoks sisemiste tööriistade lubamine Alt-F2 alt"
|
||||||
@ -212,12 +215,8 @@ msgstr "Tööalasid hallatakse dünaamiliselt"
|
|||||||
msgid "Workspaces only on primary monitor"
|
msgid "Workspaces only on primary monitor"
|
||||||
msgstr "Tööalad peamisel monitoril"
|
msgstr "Tööalad peamisel monitoril"
|
||||||
|
|
||||||
#, c-format
|
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
msgstr "Hiire all asuv aken saab fookuse alles hiire peatumisel"
|
||||||
msgstr "%s jaoks eelistuste dialoogi laadimisel esines viga:"
|
|
||||||
|
|
||||||
msgid "Extension"
|
|
||||||
msgstr "Laiendus"
|
|
||||||
|
|
||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
msgstr "Vali seadistatav laiendus kasutades ülemist valikukasti."
|
msgstr "Vali seadistatav laiendus kasutades ülemist valikukasti."
|
||||||
@ -238,21 +237,12 @@ msgstr "Logi sisse"
|
|||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Seansi valimine"
|
msgstr "Seansi valimine"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
|
||||||
#. login screen. It can be activated to reveal an entry for
|
|
||||||
#. manually entering the username.
|
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Pole loendis?"
|
msgstr "Pole loendis?"
|
||||||
|
|
||||||
#. Translators: this message is shown below the username entry field
|
|
||||||
#. to clue the user in on how to login to the local network realm
|
|
||||||
#, c-format
|
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(nt 'user' või %s)"
|
msgstr "(nt 'user' või %s)"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
|
||||||
#. is not visible here since we only care about phase2 authentication
|
|
||||||
#. (and don't even care of which one)
|
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Kasutajanimi: "
|
msgstr "Kasutajanimi: "
|
||||||
|
|
||||||
@ -262,23 +252,15 @@ msgstr "Sisselogimisaken"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Viga autentimisel"
|
msgstr "Viga autentimisel"
|
||||||
|
|
||||||
#. We don't show fingerprint messages directly since it's
|
|
||||||
#. not the main auth service. Instead we use the messages
|
|
||||||
#. as a cue to display our own message.
|
|
||||||
#. Translators: this message is shown below the password entry field
|
|
||||||
#. to indicate the user can swipe their finger instead
|
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(või libista näpp üle lugeja)"
|
msgstr "(või libista näpp üle lugeja)"
|
||||||
|
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Käsku ei leitud"
|
msgstr "Käsku ei leitud"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
|
||||||
#. something nicer
|
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Käsku pole võimalik analüüsida:"
|
msgstr "Käsku pole võimalik analüüsida:"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "'%s' käivitamine nurjus:"
|
msgstr "'%s' käivitamine nurjus:"
|
||||||
|
|
||||||
@ -286,7 +268,7 @@ msgid "Frequently used applications will appear here"
|
|||||||
msgstr "Siia ilmuvad tihti kasutatud rakendused"
|
msgstr "Siia ilmuvad tihti kasutatud rakendused"
|
||||||
|
|
||||||
msgid "Frequent"
|
msgid "Frequent"
|
||||||
msgstr "Sage"
|
msgstr "Tihti"
|
||||||
|
|
||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Kõik"
|
msgstr "Kõik"
|
||||||
@ -300,11 +282,9 @@ msgstr "Eemalda lemmikutest"
|
|||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Lisa lemmikutesse"
|
msgstr "Lisa lemmikutesse"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "%s has been added to your favorites."
|
msgid "%s has been added to your favorites."
|
||||||
msgstr "%s lisati lemmikutesse."
|
msgstr "%s lisati lemmikutesse."
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s eemaldati lemmikutest."
|
msgstr "%s eemaldati lemmikutest."
|
||||||
|
|
||||||
@ -316,59 +296,59 @@ msgstr "Muuda tausta…"
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#.
|
#. */
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Kogu päev"
|
msgstr "Kogu päev"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 24h format,
|
#. Translators: Shown in calendar event list, if 24h format,
|
||||||
#. \u2236 is a ratio character, similar to :
|
#. \u2236 is a ratio character, similar to : */
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%H\\u2236%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H\\u2236%M"
|
msgstr "%H∶%M"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space */
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%l\\u2236%M\\u2009%p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%l\\u2236%M\\u2009%p"
|
msgstr "%l∶%M %p"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Sunday.
|
#. Translators: Calendar grid abbreviation for Sunday.
|
||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#.
|
#. */
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "P"
|
msgstr "P"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday
|
#. Translators: Calendar grid abbreviation for Monday */
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "E"
|
msgstr "E"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday
|
#. Translators: Calendar grid abbreviation for Tuesday */
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "T"
|
msgstr "T"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday
|
#. Translators: Calendar grid abbreviation for Wednesday */
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "K"
|
msgstr "K"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday
|
#. Translators: Calendar grid abbreviation for Thursday */
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "N"
|
msgstr "N"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday
|
#. Translators: Calendar grid abbreviation for Friday */
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "R"
|
msgstr "R"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday
|
#. Translators: Calendar grid abbreviation for Saturday */
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "L"
|
msgstr "L"
|
||||||
@ -378,57 +358,60 @@ msgstr "L"
|
|||||||
#. * NOTE: These list abbreviations are normally not shown together
|
#. * NOTE: These list abbreviations are normally not shown together
|
||||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||||
#. * both be 'T').
|
#. * both be 'T').
|
||||||
#.
|
#. */
|
||||||
msgctxt "list sunday"
|
msgctxt "list sunday"
|
||||||
msgid "Su"
|
msgid "Su"
|
||||||
msgstr "P"
|
msgstr "P"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Monday
|
#. Translators: Event list abbreviation for Monday */
|
||||||
msgctxt "list monday"
|
msgctxt "list monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "E"
|
msgstr "E"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Tuesday
|
#. Translators: Event list abbreviation for Tuesday */
|
||||||
msgctxt "list tuesday"
|
msgctxt "list tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "T"
|
msgstr "T"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Wednesday
|
#. Translators: Event list abbreviation for Wednesday */
|
||||||
msgctxt "list wednesday"
|
msgctxt "list wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "K"
|
msgstr "K"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Thursday
|
#. Translators: Event list abbreviation for Thursday */
|
||||||
msgctxt "list thursday"
|
msgctxt "list thursday"
|
||||||
msgid "Th"
|
msgid "Th"
|
||||||
msgstr "N"
|
msgstr "N"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Friday
|
#. Translators: Event list abbreviation for Friday */
|
||||||
msgctxt "list friday"
|
msgctxt "list friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "R"
|
msgstr "R"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Saturday
|
#. Translators: Event list abbreviation for Saturday */
|
||||||
msgctxt "list saturday"
|
msgctxt "list saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "L"
|
msgstr "L"
|
||||||
|
|
||||||
|
msgid "calendar:MY"
|
||||||
|
msgstr "Minu"
|
||||||
|
|
||||||
msgid "Previous month"
|
msgid "Previous month"
|
||||||
msgstr "Eelmine kuu"
|
msgstr "Eelmine kuu"
|
||||||
|
|
||||||
msgid "Next month"
|
msgid "Next month"
|
||||||
msgstr "Järgmine kuu"
|
msgstr "Järgmine kuu"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events */
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "Ühtegi sündmust pole plaanitud"
|
msgstr "Ühtegi sündmust pole plaanitud"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d. %B"
|
msgstr "%A, %d. %B"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A, %d. %B %Y"
|
msgstr "%A, %d. %B %Y"
|
||||||
@ -454,7 +437,6 @@ msgstr "Väline ketas eemaldati"
|
|||||||
msgid "Removable Devices"
|
msgid "Removable Devices"
|
||||||
msgstr "Eemaldatavad seadmed"
|
msgstr "Eemaldatavad seadmed"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Ava programmiga %s"
|
msgstr "Ava programmiga %s"
|
||||||
|
|
||||||
@ -470,11 +452,9 @@ msgstr "Sisesta uuesti:"
|
|||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Ühendu"
|
msgstr "Ühendu"
|
||||||
|
|
||||||
#. Cisco LEAP
|
|
||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "Parool: "
|
msgstr "Parool: "
|
||||||
|
|
||||||
#. static WEP
|
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "Võti: "
|
msgstr "Võti: "
|
||||||
|
|
||||||
@ -490,7 +470,6 @@ msgstr "Teenus: "
|
|||||||
msgid "Authentication required by wireless network"
|
msgid "Authentication required by wireless network"
|
||||||
msgstr "Juhtmeta võrgu jaoks on vajalik autentimine"
|
msgstr "Juhtmeta võrgu jaoks on vajalik autentimine"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
"'%s'."
|
"'%s'."
|
||||||
@ -518,7 +497,6 @@ msgstr "PIN: "
|
|||||||
msgid "Mobile broadband network password"
|
msgid "Mobile broadband network password"
|
||||||
msgstr "Mobiiliühenduse võrgu parool"
|
msgstr "Mobiiliühenduse võrgu parool"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "'%s' ühenduse loomiseks on vaja parooli."
|
msgstr "'%s' ühenduse loomiseks on vaja parooli."
|
||||||
|
|
||||||
@ -534,20 +512,16 @@ msgstr "Autendi"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance.
|
#. * for instance. */
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "Kahjuks see ei sobinud. Palun proovi uuesti."
|
msgstr "Kahjuks see ei sobinud. Palun proovi uuesti."
|
||||||
|
|
||||||
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
|
|
||||||
#. system-users for now as Empathy does.
|
|
||||||
msgid "Invitation"
|
msgid "Invitation"
|
||||||
msgstr "Kutse"
|
msgstr "Kutse"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
msgid "Call"
|
msgid "Call"
|
||||||
msgstr "Helista"
|
msgstr "Helista"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
msgid "File Transfer"
|
msgid "File Transfer"
|
||||||
msgstr "Failiülekanne"
|
msgstr "Failiülekanne"
|
||||||
|
|
||||||
@ -560,42 +534,35 @@ msgstr "Heli peale"
|
|||||||
msgid "Mute"
|
msgid "Mute"
|
||||||
msgstr "Heli maha"
|
msgstr "Heli maha"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>Eile</b> <b>%H:%M</b>"
|
msgstr "<b>Eile</b> <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30
|
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%A</b>, <b>%H:%M</b>"
|
msgid "<b>%A</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"
|
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%d. %B</b>, <b>%H:%M</b>"
|
msgstr "<b>%d. %B</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"
|
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
msgstr "<b>%d. %B %Y</b>, <b>%H:%M</b>"
|
msgstr "<b>%d. %B %Y</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name.
|
#. IM name. */
|
||||||
#, c-format
|
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
msgstr "%s nimi on nüüd %s"
|
msgstr "%s nimi on nüüd %s"
|
||||||
|
|
||||||
#. translators: argument is a room name like
|
#. translators: argument is a room name like
|
||||||
#. * room@jabber.org for example.
|
#. * room@jabber.org for example. */
|
||||||
#, c-format
|
|
||||||
msgid "Invitation to %s"
|
msgid "Invitation to %s"
|
||||||
msgstr "Kutse: %s"
|
msgstr "Kutse: %s"
|
||||||
|
|
||||||
#. translators: first argument is the name of a contact and the second
|
#. 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
|
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||||
#. * for example.
|
#. * for example. */
|
||||||
#, c-format
|
|
||||||
msgid "%s is inviting you to join %s"
|
msgid "%s is inviting you to join %s"
|
||||||
msgstr "%s kutsub sind liituma: %s"
|
msgstr "%s kutsub sind liituma: %s"
|
||||||
|
|
||||||
@ -605,17 +572,15 @@ msgstr "Keeldu"
|
|||||||
msgid "Accept"
|
msgid "Accept"
|
||||||
msgstr "Nõustu"
|
msgstr "Nõustu"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#, c-format
|
|
||||||
msgid "Video call from %s"
|
msgid "Video call from %s"
|
||||||
msgstr "%s tahab alustada videokõnet"
|
msgstr "%s tahab alustada videokõnet"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#, c-format
|
|
||||||
msgid "Call from %s"
|
msgid "Call from %s"
|
||||||
msgstr "%s helistab"
|
msgstr "%s helistab"
|
||||||
|
|
||||||
#. translators: this is a button label (verb), not a noun
|
#. translators: this is a button label (verb), not a noun */
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Vasta"
|
msgstr "Vasta"
|
||||||
|
|
||||||
@ -623,13 +588,11 @@ msgstr "Vasta"
|
|||||||
#. * the contact's alias and the second one is the
|
#. * the contact's alias and the second one is the
|
||||||
#. * file name. The string will be something
|
#. * file name. The string will be something
|
||||||
#. * like: "Alice is sending you test.ogg"
|
#. * like: "Alice is sending you test.ogg"
|
||||||
#.
|
#. */
|
||||||
#, c-format
|
|
||||||
msgid "%s is sending you %s"
|
msgid "%s is sending you %s"
|
||||||
msgstr "%s saadab sulle %s"
|
msgstr "%s saadab sulle %s"
|
||||||
|
|
||||||
#. To translators: The parameter is the contact's alias
|
#. To translators: The parameter is the contact's alias */
|
||||||
#, c-format
|
|
||||||
msgid "%s would like permission to see when you are online"
|
msgid "%s would like permission to see when you are online"
|
||||||
msgstr "%s palub sinu luba, et näha, kui sa oled võrgus"
|
msgstr "%s palub sinu luba, et näha, kui sa oled võrgus"
|
||||||
|
|
||||||
@ -713,8 +676,7 @@ msgid "Internal error"
|
|||||||
msgstr "Sisemine viga"
|
msgstr "Sisemine viga"
|
||||||
|
|
||||||
#. translators: argument is the account name, like
|
#. translators: argument is the account name, like
|
||||||
#. * name@jabber.org for example.
|
#. * name@jabber.org for example. */
|
||||||
#, c-format
|
|
||||||
msgid "Unable to connect to %s"
|
msgid "Unable to connect to %s"
|
||||||
msgstr "Pole võimalik ühenduda võrguga %s"
|
msgstr "Pole võimalik ühenduda võrguga %s"
|
||||||
|
|
||||||
@ -730,8 +692,6 @@ msgstr "Aknad"
|
|||||||
msgid "Show Applications"
|
msgid "Show Applications"
|
||||||
msgstr "Rakenduste kuvamine"
|
msgstr "Rakenduste kuvamine"
|
||||||
|
|
||||||
#. Translators: this is the name of the dock/favorites area on
|
|
||||||
#. the left of the overview
|
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "Dokk"
|
msgstr "Dokk"
|
||||||
|
|
||||||
@ -746,11 +706,10 @@ msgstr "Kuupäeva ja kella sätted"
|
|||||||
|
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. 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").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#. */
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A, %d. %B %Y"
|
msgstr "%A, %d. %B %Y"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgctxt "title"
|
msgctxt "title"
|
||||||
msgid "Log Out %s"
|
msgid "Log Out %s"
|
||||||
msgstr "%s väljalogimine"
|
msgstr "%s väljalogimine"
|
||||||
@ -759,13 +718,11 @@ msgctxt "title"
|
|||||||
msgid "Log Out"
|
msgid "Log Out"
|
||||||
msgstr "Väljalogimine"
|
msgstr "Väljalogimine"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "%s will be logged out automatically in %d second."
|
msgid "%s will be logged out automatically in %d second."
|
||||||
msgid_plural "%s will be logged out automatically in %d seconds."
|
msgid_plural "%s will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "%s logitakse %d sekundi pärast automaatselt välja."
|
msgstr[0] "%s logitakse %d sekundi pärast automaatselt välja."
|
||||||
msgstr[1] "%s logitakse %d sekundi pärast automaatselt välja."
|
msgstr[1] "%s logitakse %d sekundi pärast automaatselt välja."
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "You will be logged out automatically in %d second."
|
msgid "You will be logged out automatically in %d second."
|
||||||
msgid_plural "You will be logged out automatically in %d seconds."
|
msgid_plural "You will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "Sind logitakse %d sekundi pärast automaatselt välja."
|
msgstr[0] "Sind logitakse %d sekundi pärast automaatselt välja."
|
||||||
@ -779,7 +736,6 @@ msgctxt "title"
|
|||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Väljalülitamine"
|
msgstr "Väljalülitamine"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "The system will power off automatically in %d second."
|
msgid "The system will power off automatically in %d second."
|
||||||
msgid_plural "The system will power off automatically in %d seconds."
|
msgid_plural "The system will power off automatically in %d seconds."
|
||||||
msgstr[0] "%d sekundi pärast lülitub süsteem automaatselt välja."
|
msgstr[0] "%d sekundi pärast lülitub süsteem automaatselt välja."
|
||||||
@ -797,7 +753,6 @@ msgctxt "title"
|
|||||||
msgid "Restart"
|
msgid "Restart"
|
||||||
msgstr "Taaskäivitamine"
|
msgstr "Taaskäivitamine"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "The system will restart automatically in %d second."
|
msgid "The system will restart automatically in %d second."
|
||||||
msgid_plural "The system will restart automatically in %d seconds."
|
msgid_plural "The system will restart automatically in %d seconds."
|
||||||
msgstr[0] "Süsteem taaskäivitub automaatselt %d sekundi pärast."
|
msgstr[0] "Süsteem taaskäivitub automaatselt %d sekundi pärast."
|
||||||
@ -807,7 +762,6 @@ msgctxt "title"
|
|||||||
msgid "Restart & Install Updates"
|
msgid "Restart & Install Updates"
|
||||||
msgstr "Taaskäivitamine ja uuenduste paigaldamine"
|
msgstr "Taaskäivitamine ja uuenduste paigaldamine"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "The system will automatically restart and install updates in %d second."
|
msgid "The system will automatically restart and install updates in %d second."
|
||||||
msgid_plural ""
|
msgid_plural ""
|
||||||
"The system will automatically restart and install updates in %d seconds."
|
"The system will automatically restart and install updates in %d seconds."
|
||||||
@ -824,20 +778,17 @@ msgstr "Mõned rakendused on tegevuses või on neis salvestamata asju."
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Teised kasutajad on sisse logitud."
|
msgstr "Teised kasutajad on sisse logitud."
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login
|
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||||
#, c-format
|
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (kaugühendus)"
|
msgstr "%s (kaugühendus)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console
|
#. Translators: Console here refers to a tty like a VT console */
|
||||||
#, c-format
|
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (konsool)"
|
msgstr "%s (konsool)"
|
||||||
|
|
||||||
msgid "Install"
|
msgid "Install"
|
||||||
msgstr "Paigalda"
|
msgstr "Paigalda"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||||
msgstr "Kas laadida alla ja paigaldada '%s' aadressilt extensions.gnome.org?"
|
msgstr "Kas laadida alla ja paigaldada '%s' aadressilt extensions.gnome.org?"
|
||||||
|
|
||||||
@ -847,8 +798,7 @@ msgstr "Klaviatuur"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "Ühtegi laiendust pole paigaldatud"
|
msgstr "Ühtegi laiendust pole paigaldatud"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID.
|
#. Translators: argument is an extension UUID. */
|
||||||
#, c-format
|
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
msgstr "%s ei ole väljastanud ühtegi veateadet."
|
msgstr "%s ei ole väljastanud ühtegi veateadet."
|
||||||
|
|
||||||
@ -909,7 +859,6 @@ msgctxt "program"
|
|||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Tundmatu"
|
msgstr "Tundmatu"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
msgstr[0] "%d uus sõnum"
|
msgstr[0] "%d uus sõnum"
|
||||||
@ -924,7 +873,7 @@ msgstr "Ülevaade"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters. */
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Otsing…"
|
msgstr "Otsing…"
|
||||||
|
|
||||||
@ -932,21 +881,13 @@ msgid "Quit"
|
|||||||
msgstr "Sulge"
|
msgstr "Sulge"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview". */
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Tegevused"
|
msgstr "Tegevused"
|
||||||
|
|
||||||
msgid "Settings Menu"
|
|
||||||
msgstr "Sätete menüü"
|
|
||||||
|
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Ülemine riba"
|
msgstr "Ülemine riba"
|
||||||
|
|
||||||
#. Translators: this MUST be either "toggle-switch-us"
|
|
||||||
#. (for toggle switches containing the English words
|
|
||||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
|
||||||
#. switches containing "◯" and "|"). Other values will
|
|
||||||
#. simply result in invisible toggle switches.
|
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
@ -957,11 +898,10 @@ msgid "Close"
|
|||||||
msgstr "Sulge"
|
msgstr "Sulge"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format */
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d. %B"
|
msgstr "%A, %d. %B"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "%d uus märguanne"
|
msgstr[0] "%d uus märguanne"
|
||||||
@ -973,13 +913,6 @@ msgstr "Lukusta"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME peab ekraani lukustama"
|
msgstr "GNOME peab ekraani lukustama"
|
||||||
|
|
||||||
#. We could not become modal, so we can't activate the
|
|
||||||
#. screenshield. The user is probably very upset at this
|
|
||||||
#. point, but any application using global grabs is broken
|
|
||||||
#. Just tell him to stop using this app
|
|
||||||
#.
|
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
|
||||||
#. screen, where we're not affected by grabs
|
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "Pole võimalik lukustada"
|
msgstr "Pole võimalik lukustada"
|
||||||
|
|
||||||
@ -1043,8 +976,6 @@ msgstr "Kõrgkontrastne"
|
|||||||
msgid "Large Text"
|
msgid "Large Text"
|
||||||
msgstr "Suur tekst"
|
msgstr "Suur tekst"
|
||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
|
||||||
msgid "Bluetooth"
|
msgid "Bluetooth"
|
||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
@ -1054,17 +985,14 @@ msgstr "Lülita välja"
|
|||||||
msgid "Bluetooth Settings"
|
msgid "Bluetooth Settings"
|
||||||
msgstr "Bluetoothi sätted"
|
msgstr "Bluetoothi sätted"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d ühendatud seade"
|
msgstr[0] "%d ühendatud seade"
|
||||||
msgstr[1] "%d ühendatud seadet"
|
msgstr[1] "%d ühendatud seadet"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "Autoriseerimise päring seadmelt %s"
|
msgstr "Autoriseerimise päring seadmelt %s"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "Seade '%s' tahab selle arvutiga paarduda"
|
msgstr "Seade '%s' tahab selle arvutiga paarduda"
|
||||||
|
|
||||||
@ -1074,7 +1002,6 @@ msgstr "Luba"
|
|||||||
msgid "Deny"
|
msgid "Deny"
|
||||||
msgstr "Keela"
|
msgstr "Keela"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "Seade %s soovib ligipääsu teenusele '%s'"
|
msgstr "Seade %s soovib ligipääsu teenusele '%s'"
|
||||||
|
|
||||||
@ -1087,24 +1014,21 @@ msgstr "Luba ainult seekord"
|
|||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "Lükka tagasi"
|
msgstr "Lükka tagasi"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name */
|
||||||
#, c-format
|
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "Paardumise kinnitus seadmele %s"
|
msgstr "Paardumise kinnitus seadmele %s"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
msgstr "Palun kontrolli, kas parool '%06d' kattub seadme parooliga."
|
msgstr "Palun kontrolli, kas parool '%06d' kattub seadme parooliga."
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun */
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "Kattub"
|
msgstr "Kattub"
|
||||||
|
|
||||||
msgid "Does not match"
|
msgid "Does not match"
|
||||||
msgstr "Ei kattu"
|
msgstr "Ei kattu"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "Seadmega %s paardumise päring"
|
msgstr "Seadmega %s paardumise päring"
|
||||||
|
|
||||||
@ -1117,9 +1041,6 @@ msgstr "Olgu"
|
|||||||
msgid "Brightness"
|
msgid "Brightness"
|
||||||
msgstr "Heledus"
|
msgstr "Heledus"
|
||||||
|
|
||||||
msgid "Show Keyboard Layout"
|
|
||||||
msgstr "Klaviatuuripaigutuse kuvamine"
|
|
||||||
|
|
||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<tundmatu>"
|
msgstr "<tundmatu>"
|
||||||
|
|
||||||
@ -1130,7 +1051,7 @@ msgid "Network Settings"
|
|||||||
msgstr "Võrgusätted"
|
msgstr "Võrgusätted"
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "pole hallatud"
|
msgstr "pole hallatud"
|
||||||
|
|
||||||
@ -1140,17 +1061,17 @@ msgstr "ühenduse katkestamine..."
|
|||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "ühendumine..."
|
msgstr "ühendumine..."
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password */
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "vajalik on autentimine"
|
msgstr "vajalik on autentimine"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing */
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "püsivara puudub"
|
msgstr "püsivara puudub"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage */
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "pole saadaval"
|
msgstr "pole saadaval"
|
||||||
|
|
||||||
@ -1193,25 +1114,15 @@ msgstr "Toitesätted..."
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "Täiesti täis"
|
msgstr "Täiesti täis"
|
||||||
|
|
||||||
#. 0 is reported when UPower does not have enough data
|
|
||||||
#. to estimate battery life
|
|
||||||
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "Andmete kogumine…"
|
msgstr "Andmete kogumine…"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
#, c-format
|
msgstr "%d∶%02d jäänud (%d%%)"
|
||||||
msgid "%d\\u2236%02d Remaining (%d%%)"
|
|
||||||
msgstr "%d\\u2236%02d jäänud (%d%%)"
|
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
#, c-format
|
msgstr "%d∶%02d täitumiseni (%d%%)"
|
||||||
msgid "%d\\u2236%02d Until Full (%d%%)"
|
|
||||||
msgstr "%d\\u2236%02d täitumiseni (%d%%)"
|
|
||||||
|
|
||||||
#. The menu only appears when airplane mode is on, so just
|
|
||||||
#. statically build it as if it was on, rather than dynamically
|
|
||||||
#. changing the menu contents.
|
|
||||||
msgid "Airplane Mode"
|
msgid "Airplane Mode"
|
||||||
msgstr "Lennukirežiim"
|
msgstr "Lennukirežiim"
|
||||||
|
|
||||||
@ -1254,7 +1165,6 @@ msgstr "Rakendused"
|
|||||||
msgid "Search"
|
msgid "Search"
|
||||||
msgstr "Otsing"
|
msgstr "Otsing"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
"%s"
|
"%s"
|
||||||
@ -1262,11 +1172,9 @@ msgstr ""
|
|||||||
"Vabandust, tänaseks tarkuseteri pole:\n"
|
"Vabandust, tänaseks tarkuseteri pole:\n"
|
||||||
"%s"
|
"%s"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "Oraakel %s ütleb"
|
msgstr "Oraakel %s ütleb"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "'%s' is ready"
|
msgid "'%s' is ready"
|
||||||
msgstr "'%s' on valmis"
|
msgstr "'%s' on valmis"
|
||||||
|
|
||||||
@ -1275,14 +1183,13 @@ msgstr "Kas tahad säilitada need kuvasätted?"
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#.
|
#. */
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Taasta sätted"
|
msgstr "Taasta sätted"
|
||||||
|
|
||||||
msgid "Keep Changes"
|
msgid "Keep Changes"
|
||||||
msgstr "Säilita muudatused"
|
msgstr "Säilita muudatused"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "Settings changes will revert in %d second"
|
msgid "Settings changes will revert in %d second"
|
||||||
msgid_plural "Settings changes will revert in %d seconds"
|
msgid_plural "Settings changes will revert in %d seconds"
|
||||||
msgstr[0] "Sätete muudatused ennistatakse %d sekundi pärast"
|
msgstr[0] "Sätete muudatused ennistatakse %d sekundi pärast"
|
||||||
@ -1335,6 +1242,26 @@ msgstr "Parool ei saa olla tühi"
|
|||||||
msgid "Authentication dialog was dismissed by the user"
|
msgid "Authentication dialog was dismissed by the user"
|
||||||
msgstr "Kasutaja katkestas autentimisdialoogi"
|
msgstr "Kasutaja katkestas autentimisdialoogi"
|
||||||
|
|
||||||
|
#~ msgid "There was an error loading the preferences dialog for %s:"
|
||||||
|
#~ msgstr "%s jaoks eelistuste dialoogi laadimisel esines viga:"
|
||||||
|
|
||||||
|
#~ msgid "Extension"
|
||||||
|
#~ msgstr "Laiendus"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%H\\u2236%M"
|
||||||
|
#~ msgstr "%H\\u2236%M"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%l\\u2236%M\\u2009%p"
|
||||||
|
#~ msgstr "%l\\u2236%M\\u2009%p"
|
||||||
|
|
||||||
|
#~ msgid "Show Keyboard Layout"
|
||||||
|
#~ msgstr "Klaviatuuripaigutuse kuvamine"
|
||||||
|
|
||||||
|
#~ msgid "Settings Menu"
|
||||||
|
#~ msgstr "Sätete menüü"
|
||||||
|
|
||||||
#~ msgid "Screenshots"
|
#~ msgid "Screenshots"
|
||||||
#~ msgstr "Ekraanipildid"
|
#~ msgstr "Ekraanipildid"
|
||||||
|
|
||||||
|
334
po/id.po
@ -10,8 +10,8 @@ msgstr ""
|
|||||||
"Project-Id-Version: gnome-shell master\n"
|
"Project-Id-Version: gnome-shell master\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
|
"POT-Creation-Date: 2013-10-10 21:27+0000\n"
|
||||||
"PO-Revision-Date: 2013-09-23 21:24+0700\n"
|
"PO-Revision-Date: 2013-10-11 10:13+0700\n"
|
||||||
"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
|
"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
|
||||||
"Language-Team: Indonesian <gnome@i15n.org>\n"
|
"Language-Team: Indonesian <gnome@i15n.org>\n"
|
||||||
"Language: id\n"
|
"Language: id\n"
|
||||||
@ -56,7 +56,6 @@ msgid "Window management and application launching"
|
|||||||
msgstr "Manajemen jendela dan peluncuran aplikasi"
|
msgstr "Manajemen jendela dan peluncuran aplikasi"
|
||||||
|
|
||||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||||
#: ../js/extensionPrefs/main.js:153
|
|
||||||
msgid "GNOME Shell Extension Preferences"
|
msgid "GNOME Shell Extension Preferences"
|
||||||
msgstr "Preferensi Ekstensi GNOME Shell"
|
msgstr "Preferensi Ekstensi GNOME Shell"
|
||||||
|
|
||||||
@ -275,15 +274,6 @@ msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Tunda perubahan fokus dalam mode tetikus sampai penunjuk berhenti bergerak"
|
"Tunda perubahan fokus dalam mode tetikus sampai penunjuk berhenti bergerak"
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:125
|
|
||||||
#, c-format
|
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
|
||||||
msgstr "Terjadi galat sewaktu memuat dialog preferensi untuk %s:"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:165
|
|
||||||
msgid "Extension"
|
|
||||||
msgstr "Ekstensi"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:189
|
#: ../js/extensionPrefs/main.js:189
|
||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
msgstr "Pilih ekstensi yang ingin dikonfigurasi pada kotak di atas."
|
msgstr "Pilih ekstensi yang ingin dikonfigurasi pada kotak di atas."
|
||||||
@ -291,7 +281,7 @@ msgstr "Pilih ekstensi yang ingin dikonfigurasi pada kotak di atas."
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:728
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Batal"
|
msgstr "Batal"
|
||||||
|
|
||||||
@ -313,23 +303,14 @@ msgstr "Masuk"
|
|||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Pilih Sesi"
|
msgstr "Pilih Sesi"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
|
||||||
#. login screen. It can be activated to reveal an entry for
|
|
||||||
#. manually entering the username.
|
|
||||||
#: ../js/gdm/loginDialog.js:454
|
#: ../js/gdm/loginDialog.js:454
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Tak masuk daftar?"
|
msgstr "Tak masuk daftar?"
|
||||||
|
|
||||||
#. Translators: this message is shown below the username entry field
|
|
||||||
#. to clue the user in on how to login to the local network realm
|
|
||||||
#: ../js/gdm/loginDialog.js:622
|
#: ../js/gdm/loginDialog.js:622
|
||||||
#, c-format
|
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(cth., pengguna dari %s)"
|
msgstr "(cth., pengguna dari %s)"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
|
||||||
#. is not visible here since we only care about phase2 authentication
|
|
||||||
#. (and don't even care of which one)
|
|
||||||
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
||||||
#: ../js/ui/components/networkAgent.js:277
|
#: ../js/ui/components/networkAgent.js:277
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
@ -343,27 +324,19 @@ msgstr "Jendela Log Masuk"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Galat otentikasi"
|
msgstr "Galat otentikasi"
|
||||||
|
|
||||||
#. We don't show fingerprint messages directly since it's
|
|
||||||
#. not the main auth service. Instead we use the messages
|
|
||||||
#. as a cue to display our own message.
|
|
||||||
#. Translators: this message is shown below the password entry field
|
|
||||||
#. to indicate the user can swipe their finger instead
|
|
||||||
#: ../js/gdm/util.js:436
|
#: ../js/gdm/util.js:436
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(atau gesekkan jari)"
|
msgstr "(atau gesekkan jari)"
|
||||||
|
|
||||||
#: ../js/misc/util.js:98
|
#: ../js/misc/util.js:115
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Perintah tidak ditemukan"
|
msgstr "Perintah tidak ditemukan"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
#: ../js/misc/util.js:148
|
||||||
#. something nicer
|
|
||||||
#: ../js/misc/util.js:131
|
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Tidak dapat mengurai perintah:"
|
msgstr "Tidak dapat mengurai perintah:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:139
|
#: ../js/misc/util.js:156
|
||||||
#, c-format
|
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Eksekusi '%s' gagal:"
|
msgstr "Eksekusi '%s' gagal:"
|
||||||
|
|
||||||
@ -392,16 +365,14 @@ msgid "Add to Favorites"
|
|||||||
msgstr "Tambah ke Favorit"
|
msgstr "Tambah ke Favorit"
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:87
|
#: ../js/ui/appFavorites.js:87
|
||||||
#, c-format
|
|
||||||
msgid "%s has been added to your favorites."
|
msgid "%s has been added to your favorites."
|
||||||
msgstr "%s telah ditambahkan ke favorit Anda."
|
msgstr "%s telah ditambahkan ke favorit Anda."
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:121
|
#: ../js/ui/appFavorites.js:121
|
||||||
#, c-format
|
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s telah dihapus dari favorit Anda."
|
msgstr "%s telah dihapus dari favorit Anda."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Pengaturan"
|
msgstr "Pengaturan"
|
||||||
@ -412,68 +383,68 @@ msgstr "Ubah Latar…"
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:62
|
#: ../js/ui/calendar.js:62
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Sepanjang Hari"
|
msgstr "Sepanjang Hari"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 24h format,
|
#. Translators: Shown in calendar event list, if 24h format,
|
||||||
#. \u2236 is a ratio character, similar to :
|
#. \u2236 is a ratio character, similar to : */
|
||||||
#: ../js/ui/calendar.js:68
|
#: ../js/ui/calendar.js:68
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%H\\u2236%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H\\u2236%M"
|
msgstr "%H∶%M"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space */
|
||||||
#: ../js/ui/calendar.js:77
|
#: ../js/ui/calendar.js:77
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%l\\u2236%M\\u2009%p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%l\\u2236%M\\u2009%p"
|
msgstr "%l∶%M %p"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Sunday.
|
#. Translators: Calendar grid abbreviation for Sunday.
|
||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:108
|
#: ../js/ui/calendar.js:108
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "M"
|
msgstr "M"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday
|
#. Translators: Calendar grid abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:110
|
#: ../js/ui/calendar.js:110
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "S"
|
msgstr "S"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday
|
#. Translators: Calendar grid abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:112
|
#: ../js/ui/calendar.js:112
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "S"
|
msgstr "S"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday
|
#. Translators: Calendar grid abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:114
|
#: ../js/ui/calendar.js:114
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "R"
|
msgstr "R"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday
|
#. Translators: Calendar grid abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:116
|
#: ../js/ui/calendar.js:116
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "K"
|
msgstr "K"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday
|
#. Translators: Calendar grid abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:118
|
#: ../js/ui/calendar.js:118
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "J"
|
msgstr "J"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday
|
#. Translators: Calendar grid abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:120
|
#: ../js/ui/calendar.js:120
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -484,48 +455,52 @@ msgstr "S"
|
|||||||
#. * NOTE: These list abbreviations are normally not shown together
|
#. * NOTE: These list abbreviations are normally not shown together
|
||||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||||
#. * both be 'T').
|
#. * both be 'T').
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:133
|
#: ../js/ui/calendar.js:133
|
||||||
msgctxt "list sunday"
|
msgctxt "list sunday"
|
||||||
msgid "Su"
|
msgid "Su"
|
||||||
msgstr "Min"
|
msgstr "Min"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Monday
|
#. Translators: Event list abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:135
|
#: ../js/ui/calendar.js:135
|
||||||
msgctxt "list monday"
|
msgctxt "list monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "Sen"
|
msgstr "Sen"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Tuesday
|
#. Translators: Event list abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:137
|
#: ../js/ui/calendar.js:137
|
||||||
msgctxt "list tuesday"
|
msgctxt "list tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "Sel"
|
msgstr "Sel"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Wednesday
|
#. Translators: Event list abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:139
|
#: ../js/ui/calendar.js:139
|
||||||
msgctxt "list wednesday"
|
msgctxt "list wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "Rab"
|
msgstr "Rab"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Thursday
|
#. Translators: Event list abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:141
|
#: ../js/ui/calendar.js:141
|
||||||
msgctxt "list thursday"
|
msgctxt "list thursday"
|
||||||
msgid "Th"
|
msgid "Th"
|
||||||
msgstr "Kam"
|
msgstr "Kam"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Friday
|
#. Translators: Event list abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:143
|
#: ../js/ui/calendar.js:143
|
||||||
msgctxt "list friday"
|
msgctxt "list friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "Jum"
|
msgstr "Jum"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Saturday
|
#. Translators: Event list abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:145
|
#: ../js/ui/calendar.js:145
|
||||||
msgctxt "list saturday"
|
msgctxt "list saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "Sab"
|
msgstr "Sab"
|
||||||
|
|
||||||
|
#: ../js/ui/calendar.js:389
|
||||||
|
msgid "calendar:MY"
|
||||||
|
msgstr "calendar:MY"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:447
|
#: ../js/ui/calendar.js:447
|
||||||
msgid "Previous month"
|
msgid "Previous month"
|
||||||
msgstr "Bulan sebelumnya"
|
msgstr "Bulan sebelumnya"
|
||||||
@ -534,18 +509,18 @@ msgstr "Bulan sebelumnya"
|
|||||||
msgid "Next month"
|
msgid "Next month"
|
||||||
msgstr "Bulan selanjutnya"
|
msgstr "Bulan selanjutnya"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events */
|
||||||
#: ../js/ui/calendar.js:753
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "Tidak Ada Jadwal"
|
msgstr "Tidak Ada Jadwal"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||||
#: ../js/ui/calendar.js:771
|
#: ../js/ui/calendar.js:771
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||||
#: ../js/ui/calendar.js:774
|
#: ../js/ui/calendar.js:774
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
@ -580,7 +555,6 @@ msgid "Removable Devices"
|
|||||||
msgstr "Perangkat Yang Dapat Dicabut"
|
msgstr "Perangkat Yang Dapat Dicabut"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:594
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Buka dengan %s"
|
msgstr "Buka dengan %s"
|
||||||
|
|
||||||
@ -588,20 +562,19 @@ msgstr "Buka dengan %s"
|
|||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Keluarkan"
|
msgstr "Keluarkan"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
|
#: ../js/ui/components/keyring.js:89 ../js/ui/components/polkitAgent.js:280
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Sandi:"
|
msgstr "Sandi:"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:110
|
#: ../js/ui/components/keyring.js:108
|
||||||
msgid "Type again:"
|
msgid "Type again:"
|
||||||
msgstr "Ketik lagi:"
|
msgstr "Ketik lagi:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:296 ../js/ui/status/network.js:731
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Sambung"
|
msgstr "Sambung"
|
||||||
|
|
||||||
#. Cisco LEAP
|
|
||||||
#: ../js/ui/components/networkAgent.js:222
|
#: ../js/ui/components/networkAgent.js:222
|
||||||
#: ../js/ui/components/networkAgent.js:234
|
#: ../js/ui/components/networkAgent.js:234
|
||||||
#: ../js/ui/components/networkAgent.js:261
|
#: ../js/ui/components/networkAgent.js:261
|
||||||
@ -610,7 +583,6 @@ msgstr "Sambung"
|
|||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "Sandi: "
|
msgstr "Sandi: "
|
||||||
|
|
||||||
#. static WEP
|
|
||||||
#: ../js/ui/components/networkAgent.js:227
|
#: ../js/ui/components/networkAgent.js:227
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "Tombol: "
|
msgstr "Tombol: "
|
||||||
@ -632,7 +604,6 @@ msgid "Authentication required by wireless network"
|
|||||||
msgstr "Otentikasi dibutuhkan oleh jaringan nirkabel"
|
msgstr "Otentikasi dibutuhkan oleh jaringan nirkabel"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:309
|
#: ../js/ui/components/networkAgent.js:309
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
"'%s'."
|
"'%s'."
|
||||||
@ -669,7 +640,6 @@ msgid "Mobile broadband network password"
|
|||||||
msgstr "Sandi jaringan data seluler"
|
msgstr "Sandi jaringan data seluler"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:336
|
#: ../js/ui/components/networkAgent.js:336
|
||||||
#, c-format
|
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "Sebuah kata sandi dibutuhkan untuk menyambung ke '%s'."
|
msgstr "Sebuah kata sandi dibutuhkan untuk menyambung ke '%s'."
|
||||||
|
|
||||||
@ -688,23 +658,19 @@ msgstr "Otentikasi"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance.
|
#. * for instance. */
|
||||||
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "Maaf, tidak berhasil. Silakan coba lagi."
|
msgstr "Maaf, tidak berhasil. Silakan coba lagi."
|
||||||
|
|
||||||
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
|
|
||||||
#. system-users for now as Empathy does.
|
|
||||||
#: ../js/ui/components/telepathyClient.js:238
|
#: ../js/ui/components/telepathyClient.js:238
|
||||||
msgid "Invitation"
|
msgid "Invitation"
|
||||||
msgstr "Undangan"
|
msgstr "Undangan"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:298
|
#: ../js/ui/components/telepathyClient.js:298
|
||||||
msgid "Call"
|
msgid "Call"
|
||||||
msgstr "Panggil"
|
msgstr "Panggil"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:314
|
#: ../js/ui/components/telepathyClient.js:314
|
||||||
msgid "File Transfer"
|
msgid "File Transfer"
|
||||||
msgstr "Transfer Berkas"
|
msgstr "Transfer Berkas"
|
||||||
@ -721,49 +687,42 @@ msgstr "Bersuara"
|
|||||||
msgid "Mute"
|
msgid "Mute"
|
||||||
msgstr "Bisu"
|
msgstr "Bisu"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:942
|
#: ../js/ui/components/telepathyClient.js:942
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>Kemarin</b>, <b>%H:%M</b>"
|
msgstr "<b>Kemarin</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30
|
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
|
||||||
#: ../js/ui/components/telepathyClient.js:948
|
#: ../js/ui/components/telepathyClient.js:948
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%A</b>, <b>%H:%M</b>"
|
msgid "<b>%A</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"
|
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:953
|
#: ../js/ui/components/telepathyClient.js:953
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%d</b> <b>%B</b>, <b>%H:%M</b>"
|
msgstr "<b>%d</b> <b>%B</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"
|
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:957
|
#: ../js/ui/components/telepathyClient.js:957
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
msgstr "<b>%d</b> <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgstr "<b>%d</b> <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name.
|
#. IM name. */
|
||||||
#: ../js/ui/components/telepathyClient.js:986
|
#: ../js/ui/components/telepathyClient.js:986
|
||||||
#, c-format
|
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
msgstr "%s sekarang dikenal sebagai %s"
|
msgstr "%s sekarang dikenal sebagai %s"
|
||||||
|
|
||||||
#. translators: argument is a room name like
|
#. translators: argument is a room name like
|
||||||
#. * room@jabber.org for example.
|
#. * room@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1089
|
#: ../js/ui/components/telepathyClient.js:1089
|
||||||
#, c-format
|
|
||||||
msgid "Invitation to %s"
|
msgid "Invitation to %s"
|
||||||
msgstr "Undangan ke %s"
|
msgstr "Undangan ke %s"
|
||||||
|
|
||||||
#. translators: first argument is the name of a contact and the second
|
#. 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
|
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||||
#. * for example.
|
#. * for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1097
|
#: ../js/ui/components/telepathyClient.js:1097
|
||||||
#, c-format
|
|
||||||
msgid "%s is inviting you to join %s"
|
msgid "%s is inviting you to join %s"
|
||||||
msgstr "%s mengundang Anda untuk bergabung dengan %s"
|
msgstr "%s mengundang Anda untuk bergabung dengan %s"
|
||||||
|
|
||||||
@ -780,19 +739,17 @@ msgstr "Tolak"
|
|||||||
msgid "Accept"
|
msgid "Accept"
|
||||||
msgstr "Terima"
|
msgstr "Terima"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1130
|
#: ../js/ui/components/telepathyClient.js:1130
|
||||||
#, c-format
|
|
||||||
msgid "Video call from %s"
|
msgid "Video call from %s"
|
||||||
msgstr "Panggilan video dari %s"
|
msgstr "Panggilan video dari %s"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1133
|
#: ../js/ui/components/telepathyClient.js:1133
|
||||||
#, c-format
|
|
||||||
msgid "Call from %s"
|
msgid "Call from %s"
|
||||||
msgstr "Panggilan dari %s"
|
msgstr "Panggilan dari %s"
|
||||||
|
|
||||||
#. translators: this is a button label (verb), not a noun
|
#. translators: this is a button label (verb), not a noun */
|
||||||
#: ../js/ui/components/telepathyClient.js:1142
|
#: ../js/ui/components/telepathyClient.js:1142
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Jawab"
|
msgstr "Jawab"
|
||||||
@ -801,15 +758,13 @@ msgstr "Jawab"
|
|||||||
#. * the contact's alias and the second one is the
|
#. * the contact's alias and the second one is the
|
||||||
#. * file name. The string will be something
|
#. * file name. The string will be something
|
||||||
#. * like: "Alice is sending you test.ogg"
|
#. * like: "Alice is sending you test.ogg"
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1174
|
#: ../js/ui/components/telepathyClient.js:1174
|
||||||
#, c-format
|
|
||||||
msgid "%s is sending you %s"
|
msgid "%s is sending you %s"
|
||||||
msgstr "%s sedang mengirimi Anda %s"
|
msgstr "%s sedang mengirimi Anda %s"
|
||||||
|
|
||||||
#. To translators: The parameter is the contact's alias
|
#. To translators: The parameter is the contact's alias */
|
||||||
#: ../js/ui/components/telepathyClient.js:1209
|
#: ../js/ui/components/telepathyClient.js:1209
|
||||||
#, c-format
|
|
||||||
msgid "%s would like permission to see when you are online"
|
msgid "%s would like permission to see when you are online"
|
||||||
msgstr "%s ingin minta ijin melihat Anda ketika Anda daring"
|
msgstr "%s ingin minta ijin melihat Anda ketika Anda daring"
|
||||||
|
|
||||||
@ -919,9 +874,8 @@ msgid "Internal error"
|
|||||||
msgstr "Galat internal"
|
msgstr "Galat internal"
|
||||||
|
|
||||||
#. translators: argument is the account name, like
|
#. translators: argument is the account name, like
|
||||||
#. * name@jabber.org for example.
|
#. * name@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1357
|
#: ../js/ui/components/telepathyClient.js:1357
|
||||||
#, c-format
|
|
||||||
msgid "Unable to connect to %s"
|
msgid "Unable to connect to %s"
|
||||||
msgstr "Tak bisa menyambung ke %s"
|
msgstr "Tak bisa menyambung ke %s"
|
||||||
|
|
||||||
@ -941,8 +895,6 @@ msgstr "Jendela"
|
|||||||
msgid "Show Applications"
|
msgid "Show Applications"
|
||||||
msgstr "Tampilkan Aplikasi"
|
msgstr "Tampilkan Aplikasi"
|
||||||
|
|
||||||
#. Translators: this is the name of the dock/favorites area on
|
|
||||||
#. the left of the overview
|
|
||||||
#: ../js/ui/dash.js:442
|
#: ../js/ui/dash.js:442
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "Dash"
|
msgstr "Dash"
|
||||||
@ -961,13 +913,12 @@ msgstr "Pengaturan Waktu & Tanggal"
|
|||||||
|
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. 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").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/dateMenu.js:202
|
#: ../js/ui/dateMenu.js:202
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A, %e %B %Y"
|
msgstr "%A, %e %B %Y"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:62
|
#: ../js/ui/endSessionDialog.js:62
|
||||||
#, c-format
|
|
||||||
msgctxt "title"
|
msgctxt "title"
|
||||||
msgid "Log Out %s"
|
msgid "Log Out %s"
|
||||||
msgstr "Keluar %s"
|
msgstr "Keluar %s"
|
||||||
@ -978,13 +929,11 @@ msgid "Log Out"
|
|||||||
msgstr "Keluar"
|
msgstr "Keluar"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:65
|
#: ../js/ui/endSessionDialog.js:65
|
||||||
#, c-format
|
|
||||||
msgid "%s will be logged out automatically in %d second."
|
msgid "%s will be logged out automatically in %d second."
|
||||||
msgid_plural "%s will be logged out automatically in %d seconds."
|
msgid_plural "%s will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "%s akan log keluar otomatis dalam %d detik.\t\t"
|
msgstr[0] "%s akan log keluar otomatis dalam %d detik.\t\t"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:70
|
#: ../js/ui/endSessionDialog.js:70
|
||||||
#, c-format
|
|
||||||
msgid "You will be logged out automatically in %d second."
|
msgid "You will be logged out automatically in %d second."
|
||||||
msgid_plural "You will be logged out automatically in %d seconds."
|
msgid_plural "You will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "Anda akan log keluar otomatis dalam %d detik."
|
msgstr[0] "Anda akan log keluar otomatis dalam %d detik."
|
||||||
@ -1000,7 +949,6 @@ msgid "Power Off"
|
|||||||
msgstr "Matikan"
|
msgstr "Matikan"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:83
|
#: ../js/ui/endSessionDialog.js:83
|
||||||
#, c-format
|
|
||||||
msgid "The system will power off automatically in %d second."
|
msgid "The system will power off automatically in %d second."
|
||||||
msgid_plural "The system will power off automatically in %d seconds."
|
msgid_plural "The system will power off automatically in %d seconds."
|
||||||
msgstr[0] "Sistem ini akan otomatis dimatikan dalam %d detik."
|
msgstr[0] "Sistem ini akan otomatis dimatikan dalam %d detik."
|
||||||
@ -1021,7 +969,6 @@ msgid "Restart"
|
|||||||
msgstr "Nyalakan Ulang"
|
msgstr "Nyalakan Ulang"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:99
|
#: ../js/ui/endSessionDialog.js:99
|
||||||
#, c-format
|
|
||||||
msgid "The system will restart automatically in %d second."
|
msgid "The system will restart automatically in %d second."
|
||||||
msgid_plural "The system will restart automatically in %d seconds."
|
msgid_plural "The system will restart automatically in %d seconds."
|
||||||
msgstr[0] "Sistem ini akan otomatis dimulai ulang dalam %d detik."
|
msgstr[0] "Sistem ini akan otomatis dimulai ulang dalam %d detik."
|
||||||
@ -1032,7 +979,6 @@ msgid "Restart & Install Updates"
|
|||||||
msgstr "Start Ulang & Pasang Pemutakhiran"
|
msgstr "Start Ulang & Pasang Pemutakhiran"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:114
|
#: ../js/ui/endSessionDialog.js:114
|
||||||
#, c-format
|
|
||||||
msgid "The system will automatically restart and install updates in %d second."
|
msgid "The system will automatically restart and install updates in %d second."
|
||||||
msgid_plural ""
|
msgid_plural ""
|
||||||
"The system will automatically restart and install updates in %d seconds."
|
"The system will automatically restart and install updates in %d seconds."
|
||||||
@ -1053,15 +999,13 @@ msgstr "Beberapa aplikasi sedang sibuk atau belum disimpan perubahannya."
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Pengguna lain sedang log masuk."
|
msgstr "Pengguna lain sedang log masuk."
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login
|
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||||
#: ../js/ui/endSessionDialog.js:479
|
#: ../js/ui/endSessionDialog.js:479
|
||||||
#, c-format
|
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (jarak jauh)"
|
msgstr "%s (jarak jauh)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console
|
#. Translators: Console here refers to a tty like a VT console */
|
||||||
#: ../js/ui/endSessionDialog.js:482
|
#: ../js/ui/endSessionDialog.js:482
|
||||||
#, c-format
|
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (konsol)"
|
msgstr "%s (konsol)"
|
||||||
|
|
||||||
@ -1070,11 +1014,10 @@ msgid "Install"
|
|||||||
msgstr "Pasang"
|
msgstr "Pasang"
|
||||||
|
|
||||||
#: ../js/ui/extensionDownloader.js:204
|
#: ../js/ui/extensionDownloader.js:204
|
||||||
#, c-format
|
|
||||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||||
msgstr "Unduh dan pasang '%s' dari extensions.gnome.org?"
|
msgstr "Unduh dan pasang '%s' dari extensions.gnome.org?"
|
||||||
|
|
||||||
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
|
#: ../js/ui/keyboard.js:619
|
||||||
msgid "Keyboard"
|
msgid "Keyboard"
|
||||||
msgstr "Papan Ketik"
|
msgstr "Papan Ketik"
|
||||||
|
|
||||||
@ -1082,9 +1025,8 @@ msgstr "Papan Ketik"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "Tak ada ekstensi terpasang"
|
msgstr "Tak ada ekstensi terpasang"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID.
|
#. Translators: argument is an extension UUID. */
|
||||||
#: ../js/ui/lookingGlass.js:743
|
#: ../js/ui/lookingGlass.js:743
|
||||||
#, c-format
|
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
msgstr "%s tidak menampilkan galat apa pun."
|
msgstr "%s tidak menampilkan galat apa pun."
|
||||||
|
|
||||||
@ -1100,9 +1042,12 @@ msgstr "Tampilkan Galat"
|
|||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr "Diaktifkan"
|
msgstr "Diaktifkan"
|
||||||
|
|
||||||
|
#. Translators: this is for a network device that cannot be activated
|
||||||
|
#. because it's disabled by rfkill (airplane mode) */
|
||||||
#. translators:
|
#. translators:
|
||||||
#. * The device has been disabled
|
#. * The device has been disabled
|
||||||
#: ../js/ui/lookingGlass.js:765 ../src/gvc/gvc-mixer-control.c:1830
|
#: ../js/ui/lookingGlass.js:765 ../js/ui/status/network.js:473
|
||||||
|
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Dinonaktifkan"
|
msgstr "Dinonaktifkan"
|
||||||
|
|
||||||
@ -1134,27 +1079,31 @@ msgstr "Buka"
|
|||||||
msgid "Remove"
|
msgid "Remove"
|
||||||
msgstr "Hapus"
|
msgstr "Hapus"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1513
|
#: ../js/ui/messageTray.js:1530
|
||||||
|
msgid "Notifications"
|
||||||
|
msgstr "Pemberitahuan"
|
||||||
|
|
||||||
|
#: ../js/ui/messageTray.js:1537
|
||||||
msgid "Clear Messages"
|
msgid "Clear Messages"
|
||||||
msgstr "Bersihkan Pesan"
|
msgstr "Bersihkan Pesan"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1540
|
#: ../js/ui/messageTray.js:1564
|
||||||
msgid "Notification Settings"
|
msgid "Notification Settings"
|
||||||
msgstr "Pengaturan Pemberitahuan"
|
msgstr "Pengaturan Pemberitahuan"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1559
|
#: ../js/ui/messageTray.js:1617
|
||||||
msgid "Tray Menu"
|
msgid "Tray Menu"
|
||||||
msgstr "Menu Baki"
|
msgstr "Menu Baki"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1775
|
#: ../js/ui/messageTray.js:1833
|
||||||
msgid "No Messages"
|
msgid "No Messages"
|
||||||
msgstr "Tiada Pesan"
|
msgstr "Tiada Pesan"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1813
|
#: ../js/ui/messageTray.js:1871
|
||||||
msgid "Message Tray"
|
msgid "Message Tray"
|
||||||
msgstr "Baki Pesan"
|
msgstr "Baki Pesan"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:2788
|
#: ../js/ui/messageTray.js:2846
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Informasi Sistem"
|
msgstr "Informasi Sistem"
|
||||||
|
|
||||||
@ -1164,7 +1113,6 @@ msgid "Unknown"
|
|||||||
msgstr "Tak dikenal"
|
msgstr "Tak dikenal"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
||||||
#, c-format
|
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
msgstr[0] "%d pesan baru"
|
msgstr[0] "%d pesan baru"
|
||||||
@ -1180,7 +1128,7 @@ msgstr "Gambaran"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters. */
|
||||||
#: ../js/ui/overview.js:258
|
#: ../js/ui/overview.js:258
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Ketik untuk mencari…"
|
msgstr "Ketik untuk mencari…"
|
||||||
@ -1190,21 +1138,16 @@ msgid "Quit"
|
|||||||
msgstr "Keluar"
|
msgstr "Keluar"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview". */
|
||||||
#: ../js/ui/panel.js:570
|
#: ../js/ui/panel.js:570
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Aktivitas"
|
msgstr "Aktivitas"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Bar Atas"
|
msgstr "Bar Atas"
|
||||||
|
|
||||||
# Dirgita: Hayo, enaknya pake I/O atau ON/OFF?^^
|
# Dirgita: Hayo, enaknya pake I/O atau ON/OFF?^^
|
||||||
#. Translators: this MUST be either "toggle-switch-us"
|
|
||||||
#. (for toggle switches containing the English words
|
|
||||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
|
||||||
#. switches containing "◯" and "|"). Other values will
|
|
||||||
#. simply result in invisible toggle switches.
|
|
||||||
#: ../js/ui/popupMenu.js:233
|
#: ../js/ui/popupMenu.js:233
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
@ -1218,13 +1161,12 @@ msgid "Close"
|
|||||||
msgstr "Tutup"
|
msgstr "Tutup"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format */
|
||||||
#: ../js/ui/screenShield.js:88
|
#: ../js/ui/screenShield.js:88
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:154
|
#: ../js/ui/screenShield.js:154
|
||||||
#, c-format
|
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "%d pemberitahuan baru"
|
msgstr[0] "%d pemberitahuan baru"
|
||||||
@ -1237,13 +1179,6 @@ msgstr "Kunci"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME perlu mengunci layar"
|
msgstr "GNOME perlu mengunci layar"
|
||||||
|
|
||||||
#. We could not become modal, so we can't activate the
|
|
||||||
#. screenshield. The user is probably very upset at this
|
|
||||||
#. point, but any application using global grabs is broken
|
|
||||||
#. Just tell him to stop using this app
|
|
||||||
#.
|
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
|
||||||
#. screen, where we're not affected by grabs
|
|
||||||
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "Tak bisa mengunci"
|
msgstr "Tak bisa mengunci"
|
||||||
@ -1252,11 +1187,11 @@ msgstr "Tak bisa mengunci"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Kunci diblokir oleh suatu aplikasi"
|
msgstr "Kunci diblokir oleh suatu aplikasi"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Mencari…"
|
msgstr "Mencari…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Tidak ada yang cocok."
|
msgstr "Tidak ada yang cocok."
|
||||||
|
|
||||||
@ -1328,16 +1263,14 @@ msgstr "Kontras Tinggi"
|
|||||||
msgid "Large Text"
|
msgid "Large Text"
|
||||||
msgstr "Teks Besar"
|
msgstr "Teks Besar"
|
||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
|
||||||
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
||||||
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
||||||
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
||||||
msgid "Bluetooth"
|
msgid "Bluetooth"
|
||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1085 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "Matikan"
|
msgstr "Matikan"
|
||||||
|
|
||||||
@ -1346,19 +1279,16 @@ msgid "Bluetooth Settings"
|
|||||||
msgstr "Pengaturan Bluetooth"
|
msgstr "Pengaturan Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:58
|
#: ../js/ui/status/bluetooth.js:58
|
||||||
#, c-format
|
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d Perangkat Tersambung"
|
msgstr[0] "%d Perangkat Tersambung"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
||||||
#, c-format
|
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "Permintaan otorisasi dari %s"
|
msgstr "Permintaan otorisasi dari %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
||||||
#: ../js/ui/status/bluetooth.js:203
|
#: ../js/ui/status/bluetooth.js:203
|
||||||
#, c-format
|
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "Perangkat %s ingin berpasangan dengan komputer ini"
|
msgstr "Perangkat %s ingin berpasangan dengan komputer ini"
|
||||||
|
|
||||||
@ -1371,7 +1301,6 @@ msgid "Deny"
|
|||||||
msgstr "Tolak"
|
msgstr "Tolak"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:135
|
#: ../js/ui/status/bluetooth.js:135
|
||||||
#, c-format
|
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "Perangkat %s ingin mengakses layanan '%s'"
|
msgstr "Perangkat %s ingin mengakses layanan '%s'"
|
||||||
|
|
||||||
@ -1387,20 +1316,18 @@ msgstr "Hanya untuk saat ini"
|
|||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "Tolak"
|
msgstr "Tolak"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name */
|
||||||
#: ../js/ui/status/bluetooth.js:166
|
#: ../js/ui/status/bluetooth.js:166
|
||||||
#, c-format
|
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "Konfirmasi berpasangan untuk %s"
|
msgstr "Konfirmasi berpasangan untuk %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:173
|
#: ../js/ui/status/bluetooth.js:173
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Harap konfirmasi apakah Passkey '%06d' sesuai dengan salah satu perangkat."
|
"Harap konfirmasi apakah Passkey '%06d' sesuai dengan salah satu perangkat."
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun */
|
||||||
#: ../js/ui/status/bluetooth.js:176
|
#: ../js/ui/status/bluetooth.js:176
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "Cocok"
|
msgstr "Cocok"
|
||||||
@ -1410,7 +1337,6 @@ msgid "Does not match"
|
|||||||
msgstr "Tidak cocok"
|
msgstr "Tidak cocok"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:196
|
#: ../js/ui/status/bluetooth.js:196
|
||||||
#, c-format
|
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "Permintaan berpasangan untuk %s"
|
msgstr "Permintaan berpasangan untuk %s"
|
||||||
|
|
||||||
@ -1426,91 +1352,99 @@ msgstr "Oke"
|
|||||||
msgid "Brightness"
|
msgid "Brightness"
|
||||||
msgstr "Kecerahan"
|
msgstr "Kecerahan"
|
||||||
|
|
||||||
#: ../js/ui/status/keyboard.js:403
|
|
||||||
msgid "Show Keyboard Layout"
|
|
||||||
msgstr "Tampilkan Tata Letak Papan Tik"
|
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:72
|
#: ../js/ui/status/network.js:72
|
||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<tak dikenal>"
|
msgstr "<tak dikenal>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:223 ../js/ui/status/network.js:380
|
||||||
|
#: ../js/ui/status/network.js:1106
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "Mati"
|
msgstr "Mati"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
|
||||||
#: ../js/ui/status/rfkill.js:49
|
|
||||||
msgid "Network Settings"
|
|
||||||
msgstr "Pengaturan Jaringan"
|
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:386
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "tak dikelola"
|
msgstr "tak dikelola"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:366
|
#: ../js/ui/status/network.js:388
|
||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "memutus..."
|
msgstr "memutus..."
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:394 ../js/ui/status/network.js:1160
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "menghubungi..."
|
msgstr "menghubungi..."
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password */
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:397 ../js/ui/status/network.js:1163
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "diperlukan otentikasi"
|
msgstr "diperlukan otentikasi"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing */
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:405
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "firmware hilang"
|
msgstr "firmware hilang"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage */
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:409
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "tidak tersedia"
|
msgstr "tidak tersedia"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:411 ../js/ui/status/network.js:1165
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "koneksi gagal"
|
msgstr "koneksi gagal"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:427 ../js/ui/status/network.js:513
|
||||||
|
msgid "Mobile Broadband Settings"
|
||||||
|
msgstr "Pengaturan Data Seluler"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1104
|
||||||
|
msgid "Hardware Disabled"
|
||||||
|
msgstr "Perangkat Keras Dinonaktifkan"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:696
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Jaringan Wi-Fi"
|
msgstr "Jaringan Wi-Fi"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:698
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "Pilih jaringan"
|
msgstr "Pilih jaringan"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:722
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "Tiada Jaringan"
|
msgstr "Tiada Jaringan"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:991
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Pilih Jaringan"
|
msgstr "Pilih Jaringan"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:997
|
||||||
|
msgid "Wi-Fi Settings"
|
||||||
|
msgstr "Pengaturan Wi-Fi"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1085
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Nyalakan"
|
msgstr "Nyalakan"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1108
|
||||||
|
msgid "Not Connected"
|
||||||
|
msgstr "Tak Tersambung"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1228
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1368
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Manajer Jaringan"
|
msgstr "Manajer Jaringan"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1407
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Koneksi gagal"
|
msgstr "Koneksi gagal"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1408
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Aktivasi koneksi jaringan gagal"
|
msgstr "Aktivasi koneksi jaringan gagal"
|
||||||
|
|
||||||
@ -1526,28 +1460,18 @@ msgstr "Pengaturan Daya"
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "Terisi Penuh"
|
msgstr "Terisi Penuh"
|
||||||
|
|
||||||
#. 0 is reported when UPower does not have enough data
|
|
||||||
#. to estimate battery life
|
|
||||||
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
|
||||||
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "Memperkirakan…"
|
msgstr "Memperkirakan…"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:77
|
#: ../js/ui/status/power.js:77
|
||||||
#, c-format
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
msgid "%d\\u2236%02d Remaining (%d%%)"
|
msgstr "%d:%02d Tersisa (%d%%)"
|
||||||
msgstr "%d\\u2236%02d Tersisa (%d%%)"
|
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:82
|
#: ../js/ui/status/power.js:82
|
||||||
#, c-format
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
msgid "%d\\u2236%02d Until Full (%d%%)"
|
msgstr "%d:%02d Sampai Penuh (%d%%)"
|
||||||
msgstr "%d\\u2236%02d Sampai Penuh (%d%%)"
|
|
||||||
|
|
||||||
#. The menu only appears when airplane mode is on, so just
|
|
||||||
#. statically build it as if it was on, rather than dynamically
|
|
||||||
#. changing the menu contents.
|
|
||||||
#: ../js/ui/status/rfkill.js:43
|
#: ../js/ui/status/rfkill.js:43
|
||||||
msgid "Airplane Mode"
|
msgid "Airplane Mode"
|
||||||
msgstr "Mode Pesawat Terbang"
|
msgstr "Mode Pesawat Terbang"
|
||||||
@ -1556,6 +1480,10 @@ msgstr "Mode Pesawat Terbang"
|
|||||||
msgid "On"
|
msgid "On"
|
||||||
msgstr "Nyala"
|
msgstr "Nyala"
|
||||||
|
|
||||||
|
#: ../js/ui/status/rfkill.js:49
|
||||||
|
msgid "Network Settings"
|
||||||
|
msgstr "Pengaturan Jaringan"
|
||||||
|
|
||||||
#: ../js/ui/status/system.js:305
|
#: ../js/ui/status/system.js:305
|
||||||
msgid "Switch User"
|
msgid "Switch User"
|
||||||
msgstr "Ganti Pengguna"
|
msgstr "Ganti Pengguna"
|
||||||
@ -1605,7 +1533,6 @@ msgid "Search"
|
|||||||
msgstr "Cari"
|
msgstr "Cari"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:77
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
"%s"
|
"%s"
|
||||||
@ -1614,12 +1541,10 @@ msgstr ""
|
|||||||
"%s"
|
"%s"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:81
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "%s sang Peramal berkata"
|
msgstr "%s sang Peramal berkata"
|
||||||
|
|
||||||
#: ../js/ui/windowAttentionHandler.js:19
|
#: ../js/ui/windowAttentionHandler.js:19
|
||||||
#, c-format
|
|
||||||
msgid "'%s' is ready"
|
msgid "'%s' is ready"
|
||||||
msgstr "'%s' telah siap"
|
msgstr "'%s' telah siap"
|
||||||
|
|
||||||
@ -1629,7 +1554,7 @@ msgstr "Apakah Anda ingin mempertahankan pengaturan tampilan ini?"
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/windowManager.js:75
|
#: ../js/ui/windowManager.js:75
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Balikkan Tatanan"
|
msgstr "Balikkan Tatanan"
|
||||||
@ -1639,7 +1564,6 @@ msgid "Keep Changes"
|
|||||||
msgstr "Simpan Perubahan"
|
msgstr "Simpan Perubahan"
|
||||||
|
|
||||||
#: ../js/ui/windowManager.js:97
|
#: ../js/ui/windowManager.js:97
|
||||||
#, c-format
|
|
||||||
msgid "Settings changes will revert in %d second"
|
msgid "Settings changes will revert in %d second"
|
||||||
msgid_plural "Settings changes will revert in %d seconds"
|
msgid_plural "Settings changes will revert in %d seconds"
|
||||||
msgstr[0] "Perubahan tatanan akan dikembalikan dalam %d detik"
|
msgstr[0] "Perubahan tatanan akan dikembalikan dalam %d detik"
|
||||||
|
338
po/it.po
@ -1,6 +1,6 @@
|
|||||||
# Italian translations for gnome-shell package.
|
# Italian translations for gnome-shell package.
|
||||||
# Copyright (C) 2009, 2010, the gnome-shell copyright holder
|
# Copyright (C) 2009, 2010, the gnome-shell copyright holder
|
||||||
# Copyright (C) 2011, 2012, the Free Software Foundation
|
# Copyright (C) 2011, 2012, 2013 the Free Software Foundation
|
||||||
# This file is distributed under the same license as the gnome-shell package.
|
# This file is distributed under the same license as the gnome-shell package.
|
||||||
#
|
#
|
||||||
# Luca Ferretti <lferrett@gnome.org>, 2010, 2011, 2012, 2013.
|
# Luca Ferretti <lferrett@gnome.org>, 2010, 2011, 2012, 2013.
|
||||||
@ -9,9 +9,10 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell\n"
|
"Project-Id-Version: gnome-shell\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"POT-Creation-Date: 2013-09-23 16:21+0200\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"PO-Revision-Date: 2013-09-23 16:21+0200\n"
|
"POT-Creation-Date: 2013-10-10 21:27+0000\n"
|
||||||
|
"PO-Revision-Date: 2013-10-11 09:41+0200\n"
|
||||||
"Last-Translator: Milo Casagrande <milo@ubuntu.com>\n"
|
"Last-Translator: Milo Casagrande <milo@ubuntu.com>\n"
|
||||||
"Language-Team: Italian <tp@lists.linux.it>\n"
|
"Language-Team: Italian <tp@lists.linux.it>\n"
|
||||||
"Language: it\n"
|
"Language: it\n"
|
||||||
@ -58,7 +59,6 @@ msgid "Window management and application launching"
|
|||||||
msgstr "Gestisce finestre e avvia applicazioni"
|
msgstr "Gestisce finestre e avvia applicazioni"
|
||||||
|
|
||||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||||
#: ../js/extensionPrefs/main.js:153
|
|
||||||
msgid "GNOME Shell Extension Preferences"
|
msgid "GNOME Shell Extension Preferences"
|
||||||
msgstr "Preferenze estensioni di GNOME Shell"
|
msgstr "Preferenze estensioni di GNOME Shell"
|
||||||
|
|
||||||
@ -281,16 +281,6 @@ msgstr ""
|
|||||||
"Ritarda il cambio del focus nella modalità mouse finché il puntantore non si "
|
"Ritarda il cambio del focus nella modalità mouse finché il puntantore non si "
|
||||||
"ferma"
|
"ferma"
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:125
|
|
||||||
#, c-format
|
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
|
||||||
msgstr ""
|
|
||||||
"Si è verificato un errore nel caricare il dialogo delle preferenze per %s:"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:165
|
|
||||||
msgid "Extension"
|
|
||||||
msgstr "Estensione"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:189
|
#: ../js/extensionPrefs/main.js:189
|
||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -300,7 +290,7 @@ msgstr ""
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:728
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Annulla"
|
msgstr "Annulla"
|
||||||
|
|
||||||
@ -322,23 +312,14 @@ msgstr "Accedi"
|
|||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Scegli sessione"
|
msgstr "Scegli sessione"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
|
||||||
#. login screen. It can be activated to reveal an entry for
|
|
||||||
#. manually entering the username.
|
|
||||||
#: ../js/gdm/loginDialog.js:454
|
#: ../js/gdm/loginDialog.js:454
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Non elencato?"
|
msgstr "Non elencato?"
|
||||||
|
|
||||||
#. Translators: this message is shown below the username entry field
|
|
||||||
#. to clue the user in on how to login to the local network realm
|
|
||||||
#: ../js/gdm/loginDialog.js:622
|
#: ../js/gdm/loginDialog.js:622
|
||||||
#, c-format
|
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(p.e. utente o %s)"
|
msgstr "(p.e. utente o %s)"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
|
||||||
#. is not visible here since we only care about phase2 authentication
|
|
||||||
#. (and don't even care of which one)
|
|
||||||
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
||||||
#: ../js/ui/components/networkAgent.js:277
|
#: ../js/ui/components/networkAgent.js:277
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
@ -352,27 +333,19 @@ msgstr "Finestra di accesso"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Errore di autenticazione"
|
msgstr "Errore di autenticazione"
|
||||||
|
|
||||||
#. We don't show fingerprint messages directly since it's
|
|
||||||
#. not the main auth service. Instead we use the messages
|
|
||||||
#. as a cue to display our own message.
|
|
||||||
#. Translators: this message is shown below the password entry field
|
|
||||||
#. to indicate the user can swipe their finger instead
|
|
||||||
#: ../js/gdm/util.js:436
|
#: ../js/gdm/util.js:436
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(o passare il dito)"
|
msgstr "(o passare il dito)"
|
||||||
|
|
||||||
#: ../js/misc/util.js:98
|
#: ../js/misc/util.js:115
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Comando non trovato"
|
msgstr "Comando non trovato"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
#: ../js/misc/util.js:148
|
||||||
#. something nicer
|
|
||||||
#: ../js/misc/util.js:131
|
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Impossibile analizzare il comando:"
|
msgstr "Impossibile analizzare il comando:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:139
|
#: ../js/misc/util.js:156
|
||||||
#, c-format
|
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Esecuzione di «%s» non riuscita:"
|
msgstr "Esecuzione di «%s» non riuscita:"
|
||||||
|
|
||||||
@ -403,16 +376,14 @@ msgstr "Aggiungi ai preferiti"
|
|||||||
# (ndt) e usare:
|
# (ndt) e usare:
|
||||||
# L'elemento %s è stato rimosso... ?
|
# L'elemento %s è stato rimosso... ?
|
||||||
#: ../js/ui/appFavorites.js:87
|
#: ../js/ui/appFavorites.js:87
|
||||||
#, c-format
|
|
||||||
msgid "%s has been added to your favorites."
|
msgid "%s has been added to your favorites."
|
||||||
msgstr "%s è stato aggiunto ai preferiti."
|
msgstr "%s è stato aggiunto ai preferiti."
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:121
|
#: ../js/ui/appFavorites.js:121
|
||||||
#, c-format
|
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s è stato rimosso dai preferiti."
|
msgstr "%s è stato rimosso dai preferiti."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Impostazioni"
|
msgstr "Impostazioni"
|
||||||
@ -423,68 +394,68 @@ msgstr "Cambia sfondo…"
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:62
|
#: ../js/ui/calendar.js:62
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Giornata"
|
msgstr "Giornata"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 24h format,
|
#. Translators: Shown in calendar event list, if 24h format,
|
||||||
#. \u2236 is a ratio character, similar to :
|
#. \u2236 is a ratio character, similar to : */
|
||||||
#: ../js/ui/calendar.js:68
|
#: ../js/ui/calendar.js:68
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%H\\u2236%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H.%M"
|
msgstr "%k.%M"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space */
|
||||||
#: ../js/ui/calendar.js:77
|
#: ../js/ui/calendar.js:77
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%l\\u2236%M\\u2009%p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%l.%M\\u2009%p "
|
msgstr "%l.%M %P"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Sunday.
|
#. Translators: Calendar grid abbreviation for Sunday.
|
||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:108
|
#: ../js/ui/calendar.js:108
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "D"
|
msgstr "D"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday
|
#. Translators: Calendar grid abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:110
|
#: ../js/ui/calendar.js:110
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "L"
|
msgstr "L"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday
|
#. Translators: Calendar grid abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:112
|
#: ../js/ui/calendar.js:112
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "M"
|
msgstr "M"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday
|
#. Translators: Calendar grid abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:114
|
#: ../js/ui/calendar.js:114
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "M"
|
msgstr "M"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday
|
#. Translators: Calendar grid abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:116
|
#: ../js/ui/calendar.js:116
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "G"
|
msgstr "G"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday
|
#. Translators: Calendar grid abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:118
|
#: ../js/ui/calendar.js:118
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "V"
|
msgstr "V"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday
|
#. Translators: Calendar grid abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:120
|
#: ../js/ui/calendar.js:120
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -495,48 +466,52 @@ msgstr "S"
|
|||||||
#. * NOTE: These list abbreviations are normally not shown together
|
#. * NOTE: These list abbreviations are normally not shown together
|
||||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||||
#. * both be 'T').
|
#. * both be 'T').
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:133
|
#: ../js/ui/calendar.js:133
|
||||||
msgctxt "list sunday"
|
msgctxt "list sunday"
|
||||||
msgid "Su"
|
msgid "Su"
|
||||||
msgstr "Do"
|
msgstr "Do"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Monday
|
#. Translators: Event list abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:135
|
#: ../js/ui/calendar.js:135
|
||||||
msgctxt "list monday"
|
msgctxt "list monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "Lu"
|
msgstr "Lu"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Tuesday
|
#. Translators: Event list abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:137
|
#: ../js/ui/calendar.js:137
|
||||||
msgctxt "list tuesday"
|
msgctxt "list tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "Ma"
|
msgstr "Ma"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Wednesday
|
#. Translators: Event list abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:139
|
#: ../js/ui/calendar.js:139
|
||||||
msgctxt "list wednesday"
|
msgctxt "list wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "Me"
|
msgstr "Me"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Thursday
|
#. Translators: Event list abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:141
|
#: ../js/ui/calendar.js:141
|
||||||
msgctxt "list thursday"
|
msgctxt "list thursday"
|
||||||
msgid "Th"
|
msgid "Th"
|
||||||
msgstr "Gi"
|
msgstr "Gi"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Friday
|
#. Translators: Event list abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:143
|
#: ../js/ui/calendar.js:143
|
||||||
msgctxt "list friday"
|
msgctxt "list friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "Ve"
|
msgstr "Ve"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Saturday
|
#. Translators: Event list abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:145
|
#: ../js/ui/calendar.js:145
|
||||||
msgctxt "list saturday"
|
msgctxt "list saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "Sa"
|
msgstr "Sa"
|
||||||
|
|
||||||
|
#: ../js/ui/calendar.js:389
|
||||||
|
msgid "calendar:MY"
|
||||||
|
msgstr "calendar:MY"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:447
|
#: ../js/ui/calendar.js:447
|
||||||
msgid "Previous month"
|
msgid "Previous month"
|
||||||
msgstr "Mese precedente"
|
msgstr "Mese precedente"
|
||||||
@ -545,18 +520,18 @@ msgstr "Mese precedente"
|
|||||||
msgid "Next month"
|
msgid "Next month"
|
||||||
msgstr "Mese successivo"
|
msgstr "Mese successivo"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events */
|
||||||
#: ../js/ui/calendar.js:753
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "Nessun evento"
|
msgstr "Nessun evento"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||||
#: ../js/ui/calendar.js:771
|
#: ../js/ui/calendar.js:771
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %e %B"
|
msgstr "%A, %e %B"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||||
#: ../js/ui/calendar.js:774
|
#: ../js/ui/calendar.js:774
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
@ -591,7 +566,6 @@ msgid "Removable Devices"
|
|||||||
msgstr "Dispositivi rimovibili"
|
msgstr "Dispositivi rimovibili"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:594
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Apri con %s"
|
msgstr "Apri con %s"
|
||||||
|
|
||||||
@ -599,20 +573,19 @@ msgstr "Apri con %s"
|
|||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Espelli"
|
msgstr "Espelli"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
|
#: ../js/ui/components/keyring.js:89 ../js/ui/components/polkitAgent.js:280
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Password:"
|
msgstr "Password:"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:110
|
#: ../js/ui/components/keyring.js:108
|
||||||
msgid "Type again:"
|
msgid "Type again:"
|
||||||
msgstr "Inserire di nuovo:"
|
msgstr "Inserire di nuovo:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:296 ../js/ui/status/network.js:731
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Connetti"
|
msgstr "Connetti"
|
||||||
|
|
||||||
#. Cisco LEAP
|
|
||||||
#: ../js/ui/components/networkAgent.js:222
|
#: ../js/ui/components/networkAgent.js:222
|
||||||
#: ../js/ui/components/networkAgent.js:234
|
#: ../js/ui/components/networkAgent.js:234
|
||||||
#: ../js/ui/components/networkAgent.js:261
|
#: ../js/ui/components/networkAgent.js:261
|
||||||
@ -621,7 +594,6 @@ msgstr "Connetti"
|
|||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "Password: "
|
msgstr "Password: "
|
||||||
|
|
||||||
#. static WEP
|
|
||||||
#: ../js/ui/components/networkAgent.js:227
|
#: ../js/ui/components/networkAgent.js:227
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "Chiave: "
|
msgstr "Chiave: "
|
||||||
@ -643,7 +615,6 @@ msgid "Authentication required by wireless network"
|
|||||||
msgstr "Richiesta autenticazione dalla rete wireless"
|
msgstr "Richiesta autenticazione dalla rete wireless"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:309
|
#: ../js/ui/components/networkAgent.js:309
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
"'%s'."
|
"'%s'."
|
||||||
@ -680,7 +651,6 @@ msgid "Mobile broadband network password"
|
|||||||
msgstr "Password rete mobile"
|
msgstr "Password rete mobile"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:336
|
#: ../js/ui/components/networkAgent.js:336
|
||||||
#, c-format
|
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "È richiesta una password per connettersi a «%s»."
|
msgstr "È richiesta una password per connettersi a «%s»."
|
||||||
|
|
||||||
@ -699,24 +669,20 @@ msgstr "Autentica"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance.
|
#. * for instance. */
|
||||||
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "Errore nell'autenticazione. Provare di nuovo."
|
msgstr "Errore nell'autenticazione. Provare di nuovo."
|
||||||
|
|
||||||
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
|
|
||||||
#. system-users for now as Empathy does.
|
|
||||||
#: ../js/ui/components/telepathyClient.js:238
|
#: ../js/ui/components/telepathyClient.js:238
|
||||||
msgid "Invitation"
|
msgid "Invitation"
|
||||||
msgstr "Invito"
|
msgstr "Invito"
|
||||||
|
|
||||||
# A memora del test che ho fatto è "chiamata"... da verificare meglio
|
# A memora del test che ho fatto è "chiamata"... da verificare meglio
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:298
|
#: ../js/ui/components/telepathyClient.js:298
|
||||||
msgid "Call"
|
msgid "Call"
|
||||||
msgstr "Chiamata"
|
msgstr "Chiamata"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:314
|
#: ../js/ui/components/telepathyClient.js:314
|
||||||
msgid "File Transfer"
|
msgid "File Transfer"
|
||||||
msgstr "Trasferimento file"
|
msgstr "Trasferimento file"
|
||||||
@ -734,49 +700,42 @@ msgstr "Attiva notifiche"
|
|||||||
msgid "Mute"
|
msgid "Mute"
|
||||||
msgstr "Disattiva notifiche"
|
msgstr "Disattiva notifiche"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:942
|
#: ../js/ui/components/telepathyClient.js:942
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>Ieri</b>, <b>%-H.%M</b>"
|
msgstr "<b>Ieri</b>, <b>%-H.%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30
|
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
|
||||||
#: ../js/ui/components/telepathyClient.js:948
|
#: ../js/ui/components/telepathyClient.js:948
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%A</b>, <b>%H:%M</b>"
|
msgid "<b>%A</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%A</b>, <b>%-H.%M</b>"
|
msgstr "<b>%A</b>, <b>%-H.%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"
|
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:953
|
#: ../js/ui/components/telepathyClient.js:953
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%d</b> <b>%B</b>, <b>%-H.%M</b>"
|
msgstr "<b>%d</b> <b>%B</b>, <b>%-H.%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"
|
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:957
|
#: ../js/ui/components/telepathyClient.js:957
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
msgstr "<b>%d</b> <b>%B</b> <b>%Y</b>, <b>%-H.%M</b>"
|
msgstr "<b>%d</b> <b>%B</b> <b>%Y</b>, <b>%-H.%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name.
|
#. IM name. */
|
||||||
#: ../js/ui/components/telepathyClient.js:986
|
#: ../js/ui/components/telepathyClient.js:986
|
||||||
#, c-format
|
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
msgstr "%s ha cambiato nome in %s"
|
msgstr "%s ha cambiato nome in %s"
|
||||||
|
|
||||||
#. translators: argument is a room name like
|
#. translators: argument is a room name like
|
||||||
#. * room@jabber.org for example.
|
#. * room@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1089
|
#: ../js/ui/components/telepathyClient.js:1089
|
||||||
#, c-format
|
|
||||||
msgid "Invitation to %s"
|
msgid "Invitation to %s"
|
||||||
msgstr "Invio su %s"
|
msgstr "Invio su %s"
|
||||||
|
|
||||||
#. translators: first argument is the name of a contact and the second
|
#. 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
|
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||||
#. * for example.
|
#. * for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1097
|
#: ../js/ui/components/telepathyClient.js:1097
|
||||||
#, c-format
|
|
||||||
msgid "%s is inviting you to join %s"
|
msgid "%s is inviting you to join %s"
|
||||||
msgstr "%s ti sta invitando su %s"
|
msgstr "%s ti sta invitando su %s"
|
||||||
|
|
||||||
@ -793,19 +752,17 @@ msgstr "Declina"
|
|||||||
msgid "Accept"
|
msgid "Accept"
|
||||||
msgstr "Accetta"
|
msgstr "Accetta"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1130
|
#: ../js/ui/components/telepathyClient.js:1130
|
||||||
#, c-format
|
|
||||||
msgid "Video call from %s"
|
msgid "Video call from %s"
|
||||||
msgstr "Videochiamata da %s"
|
msgstr "Videochiamata da %s"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1133
|
#: ../js/ui/components/telepathyClient.js:1133
|
||||||
#, c-format
|
|
||||||
msgid "Call from %s"
|
msgid "Call from %s"
|
||||||
msgstr "Chiamata da %s"
|
msgstr "Chiamata da %s"
|
||||||
|
|
||||||
#. translators: this is a button label (verb), not a noun
|
#. translators: this is a button label (verb), not a noun */
|
||||||
#: ../js/ui/components/telepathyClient.js:1142
|
#: ../js/ui/components/telepathyClient.js:1142
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Rispondi"
|
msgstr "Rispondi"
|
||||||
@ -814,15 +771,13 @@ msgstr "Rispondi"
|
|||||||
#. * the contact's alias and the second one is the
|
#. * the contact's alias and the second one is the
|
||||||
#. * file name. The string will be something
|
#. * file name. The string will be something
|
||||||
#. * like: "Alice is sending you test.ogg"
|
#. * like: "Alice is sending you test.ogg"
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1174
|
#: ../js/ui/components/telepathyClient.js:1174
|
||||||
#, c-format
|
|
||||||
msgid "%s is sending you %s"
|
msgid "%s is sending you %s"
|
||||||
msgstr "%s ti sta inviando %s"
|
msgstr "%s ti sta inviando %s"
|
||||||
|
|
||||||
#. To translators: The parameter is the contact's alias
|
#. To translators: The parameter is the contact's alias */
|
||||||
#: ../js/ui/components/telepathyClient.js:1209
|
#: ../js/ui/components/telepathyClient.js:1209
|
||||||
#, c-format
|
|
||||||
msgid "%s would like permission to see when you are online"
|
msgid "%s would like permission to see when you are online"
|
||||||
msgstr "%s chiede il permesso di vedere quando sei online"
|
msgstr "%s chiede il permesso di vedere quando sei online"
|
||||||
|
|
||||||
@ -936,9 +891,8 @@ msgid "Internal error"
|
|||||||
msgstr "Errore interno"
|
msgstr "Errore interno"
|
||||||
|
|
||||||
#. translators: argument is the account name, like
|
#. translators: argument is the account name, like
|
||||||
#. * name@jabber.org for example.
|
#. * name@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1357
|
#: ../js/ui/components/telepathyClient.js:1357
|
||||||
#, c-format
|
|
||||||
msgid "Unable to connect to %s"
|
msgid "Unable to connect to %s"
|
||||||
msgstr "Impossibile connettersi a %s"
|
msgstr "Impossibile connettersi a %s"
|
||||||
|
|
||||||
@ -959,8 +913,6 @@ msgid "Show Applications"
|
|||||||
msgstr "Mostra applicazioni"
|
msgstr "Mostra applicazioni"
|
||||||
|
|
||||||
# cruscotto?!?!?!?!?!?!?
|
# cruscotto?!?!?!?!?!?!?
|
||||||
#. Translators: this is the name of the dock/favorites area on
|
|
||||||
#. the left of the overview
|
|
||||||
#: ../js/ui/dash.js:442
|
#: ../js/ui/dash.js:442
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "Dash"
|
msgstr "Dash"
|
||||||
@ -979,13 +931,12 @@ msgstr "Impostazioni data e ora"
|
|||||||
|
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. 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").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/dateMenu.js:202
|
#: ../js/ui/dateMenu.js:202
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%a %e %B %Y"
|
msgstr "%a %e %B %Y"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:62
|
#: ../js/ui/endSessionDialog.js:62
|
||||||
#, c-format
|
|
||||||
msgctxt "title"
|
msgctxt "title"
|
||||||
msgid "Log Out %s"
|
msgid "Log Out %s"
|
||||||
msgstr "Termina sessione di %s"
|
msgstr "Termina sessione di %s"
|
||||||
@ -996,14 +947,12 @@ msgid "Log Out"
|
|||||||
msgstr "Termina sessione"
|
msgstr "Termina sessione"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:65
|
#: ../js/ui/endSessionDialog.js:65
|
||||||
#, c-format
|
|
||||||
msgid "%s will be logged out automatically in %d second."
|
msgid "%s will be logged out automatically in %d second."
|
||||||
msgid_plural "%s will be logged out automatically in %d seconds."
|
msgid_plural "%s will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "La sessione di %s verrà terminata automaticamente tra %d secondo."
|
msgstr[0] "La sessione di %s verrà terminata automaticamente tra %d secondo."
|
||||||
msgstr[1] "La sessione di %s verrà terminata automaticamente tra %d secondi."
|
msgstr[1] "La sessione di %s verrà terminata automaticamente tra %d secondi."
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:70
|
#: ../js/ui/endSessionDialog.js:70
|
||||||
#, c-format
|
|
||||||
msgid "You will be logged out automatically in %d second."
|
msgid "You will be logged out automatically in %d second."
|
||||||
msgid_plural "You will be logged out automatically in %d seconds."
|
msgid_plural "You will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "La sessione verrà terminata automaticamente tra %d secondo."
|
msgstr[0] "La sessione verrà terminata automaticamente tra %d secondo."
|
||||||
@ -1020,7 +969,6 @@ msgid "Power Off"
|
|||||||
msgstr "Spegni"
|
msgstr "Spegni"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:83
|
#: ../js/ui/endSessionDialog.js:83
|
||||||
#, c-format
|
|
||||||
msgid "The system will power off automatically in %d second."
|
msgid "The system will power off automatically in %d second."
|
||||||
msgid_plural "The system will power off automatically in %d seconds."
|
msgid_plural "The system will power off automatically in %d seconds."
|
||||||
msgstr[0] "Il sistema verrà spento automaticamente tra %d secondo."
|
msgstr[0] "Il sistema verrà spento automaticamente tra %d secondo."
|
||||||
@ -1042,7 +990,6 @@ msgid "Restart"
|
|||||||
msgstr "Riavvia"
|
msgstr "Riavvia"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:99
|
#: ../js/ui/endSessionDialog.js:99
|
||||||
#, c-format
|
|
||||||
msgid "The system will restart automatically in %d second."
|
msgid "The system will restart automatically in %d second."
|
||||||
msgid_plural "The system will restart automatically in %d seconds."
|
msgid_plural "The system will restart automatically in %d seconds."
|
||||||
msgstr[0] "Il sistema verrà riavviato automaticamente tra %d secondo."
|
msgstr[0] "Il sistema verrà riavviato automaticamente tra %d secondo."
|
||||||
@ -1054,7 +1001,6 @@ msgid "Restart & Install Updates"
|
|||||||
msgstr "Riavvia e installa aggiornamenti"
|
msgstr "Riavvia e installa aggiornamenti"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:114
|
#: ../js/ui/endSessionDialog.js:114
|
||||||
#, c-format
|
|
||||||
msgid "The system will automatically restart and install updates in %d second."
|
msgid "The system will automatically restart and install updates in %d second."
|
||||||
msgid_plural ""
|
msgid_plural ""
|
||||||
"The system will automatically restart and install updates in %d seconds."
|
"The system will automatically restart and install updates in %d seconds."
|
||||||
@ -1078,15 +1024,13 @@ msgstr "Alcune applicazioni risultano occupate o con lavoro non salvato."
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Sono connessi altri utenti."
|
msgstr "Sono connessi altri utenti."
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login
|
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||||
#: ../js/ui/endSessionDialog.js:479
|
#: ../js/ui/endSessionDialog.js:479
|
||||||
#, c-format
|
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (remoto)"
|
msgstr "%s (remoto)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console
|
#. Translators: Console here refers to a tty like a VT console */
|
||||||
#: ../js/ui/endSessionDialog.js:482
|
#: ../js/ui/endSessionDialog.js:482
|
||||||
#, c-format
|
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (console)"
|
msgstr "%s (console)"
|
||||||
|
|
||||||
@ -1095,11 +1039,10 @@ msgid "Install"
|
|||||||
msgstr "Installa"
|
msgstr "Installa"
|
||||||
|
|
||||||
#: ../js/ui/extensionDownloader.js:204
|
#: ../js/ui/extensionDownloader.js:204
|
||||||
#, c-format
|
|
||||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||||
msgstr "Scaricare e installare «%s» da extensions.gnome.org?"
|
msgstr "Scaricare e installare «%s» da extensions.gnome.org?"
|
||||||
|
|
||||||
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
|
#: ../js/ui/keyboard.js:619
|
||||||
msgid "Keyboard"
|
msgid "Keyboard"
|
||||||
msgstr "Tastiera"
|
msgstr "Tastiera"
|
||||||
|
|
||||||
@ -1107,9 +1050,8 @@ msgstr "Tastiera"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "Nessuna estensione installata"
|
msgstr "Nessuna estensione installata"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID.
|
#. Translators: argument is an extension UUID. */
|
||||||
#: ../js/ui/lookingGlass.js:743
|
#: ../js/ui/lookingGlass.js:743
|
||||||
#, c-format
|
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
msgstr "%s non ha emesso alcun errore."
|
msgstr "%s non ha emesso alcun errore."
|
||||||
|
|
||||||
@ -1127,9 +1069,12 @@ msgid "Enabled"
|
|||||||
msgstr "Abilitato"
|
msgstr "Abilitato"
|
||||||
|
|
||||||
# (ndt) o disabilitata?
|
# (ndt) o disabilitata?
|
||||||
|
#. Translators: this is for a network device that cannot be activated
|
||||||
|
#. because it's disabled by rfkill (airplane mode) */
|
||||||
#. translators:
|
#. translators:
|
||||||
#. * The device has been disabled
|
#. * The device has been disabled
|
||||||
#: ../js/ui/lookingGlass.js:765 ../src/gvc/gvc-mixer-control.c:1830
|
#: ../js/ui/lookingGlass.js:765 ../js/ui/status/network.js:473
|
||||||
|
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Disabilitato"
|
msgstr "Disabilitato"
|
||||||
|
|
||||||
@ -1161,27 +1106,32 @@ msgstr "Apri"
|
|||||||
msgid "Remove"
|
msgid "Remove"
|
||||||
msgstr "Rimuovi"
|
msgstr "Rimuovi"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1513
|
#: ../js/ui/messageTray.js:1530
|
||||||
|
#| msgid "Notification Settings"
|
||||||
|
msgid "Notifications"
|
||||||
|
msgstr "Notifiche"
|
||||||
|
|
||||||
|
#: ../js/ui/messageTray.js:1537
|
||||||
msgid "Clear Messages"
|
msgid "Clear Messages"
|
||||||
msgstr "Pulisci messaggi"
|
msgstr "Pulisci messaggi"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1540
|
#: ../js/ui/messageTray.js:1564
|
||||||
msgid "Notification Settings"
|
msgid "Notification Settings"
|
||||||
msgstr "Impostazioni notifiche"
|
msgstr "Impostazioni notifiche"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1559
|
#: ../js/ui/messageTray.js:1617
|
||||||
msgid "Tray Menu"
|
msgid "Tray Menu"
|
||||||
msgstr "Menu tray"
|
msgstr "Menu tray"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1775
|
#: ../js/ui/messageTray.js:1833
|
||||||
msgid "No Messages"
|
msgid "No Messages"
|
||||||
msgstr "Nessun messaggio"
|
msgstr "Nessun messaggio"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1813
|
#: ../js/ui/messageTray.js:1871
|
||||||
msgid "Message Tray"
|
msgid "Message Tray"
|
||||||
msgstr "Cassetto messaggi"
|
msgstr "Cassetto messaggi"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:2788
|
#: ../js/ui/messageTray.js:2846
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Informazione di sistema"
|
msgstr "Informazione di sistema"
|
||||||
|
|
||||||
@ -1191,7 +1141,6 @@ msgid "Unknown"
|
|||||||
msgstr "Sconosciuto"
|
msgstr "Sconosciuto"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
||||||
#, c-format
|
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
msgstr[0] "%d nuovo messaggio"
|
msgstr[0] "%d nuovo messaggio"
|
||||||
@ -1208,7 +1157,7 @@ msgstr "Panoramica"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters. */
|
||||||
#: ../js/ui/overview.js:258
|
#: ../js/ui/overview.js:258
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Digita per cercare…"
|
msgstr "Digita per cercare…"
|
||||||
@ -1218,20 +1167,15 @@ msgid "Quit"
|
|||||||
msgstr "Esci"
|
msgstr "Esci"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview". */
|
||||||
#: ../js/ui/panel.js:570
|
#: ../js/ui/panel.js:570
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Attività"
|
msgstr "Attività"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Barra superiore"
|
msgstr "Barra superiore"
|
||||||
|
|
||||||
#. Translators: this MUST be either "toggle-switch-us"
|
|
||||||
#. (for toggle switches containing the English words
|
|
||||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
|
||||||
#. switches containing "◯" and "|"). Other values will
|
|
||||||
#. simply result in invisible toggle switches.
|
|
||||||
#: ../js/ui/popupMenu.js:233
|
#: ../js/ui/popupMenu.js:233
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-us"
|
msgstr "toggle-switch-us"
|
||||||
@ -1245,13 +1189,12 @@ msgid "Close"
|
|||||||
msgstr "Chiudi"
|
msgstr "Chiudi"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format */
|
||||||
#: ../js/ui/screenShield.js:88
|
#: ../js/ui/screenShield.js:88
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:154
|
#: ../js/ui/screenShield.js:154
|
||||||
#, c-format
|
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "%d nuova notifica"
|
msgstr[0] "%d nuova notifica"
|
||||||
@ -1265,13 +1208,6 @@ msgstr "Blocca"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME deve bloccare lo schermo"
|
msgstr "GNOME deve bloccare lo schermo"
|
||||||
|
|
||||||
#. We could not become modal, so we can't activate the
|
|
||||||
#. screenshield. The user is probably very upset at this
|
|
||||||
#. point, but any application using global grabs is broken
|
|
||||||
#. Just tell him to stop using this app
|
|
||||||
#.
|
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
|
||||||
#. screen, where we're not affected by grabs
|
|
||||||
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "Impossibile bloccare"
|
msgstr "Impossibile bloccare"
|
||||||
@ -1280,11 +1216,11 @@ msgstr "Impossibile bloccare"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Il blocco è stato impedito da un'applicazione."
|
msgstr "Il blocco è stato impedito da un'applicazione."
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Ricerca…"
|
msgstr "Ricerca…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Nessun risultato."
|
msgstr "Nessun risultato."
|
||||||
|
|
||||||
@ -1357,16 +1293,14 @@ msgstr "Contrasto elevato"
|
|||||||
msgid "Large Text"
|
msgid "Large Text"
|
||||||
msgstr "Caratteri grandi"
|
msgstr "Caratteri grandi"
|
||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
|
||||||
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
||||||
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
||||||
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
||||||
msgid "Bluetooth"
|
msgid "Bluetooth"
|
||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1085 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "Spegni"
|
msgstr "Spegni"
|
||||||
|
|
||||||
@ -1375,20 +1309,17 @@ msgid "Bluetooth Settings"
|
|||||||
msgstr "Impostazioni Bluetooth"
|
msgstr "Impostazioni Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:58
|
#: ../js/ui/status/bluetooth.js:58
|
||||||
#, c-format
|
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d dispositivo connesso"
|
msgstr[0] "%d dispositivo connesso"
|
||||||
msgstr[1] "%d dispositivi connessi"
|
msgstr[1] "%d dispositivi connessi"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
||||||
#, c-format
|
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "Richesta autorizzazione da %s"
|
msgstr "Richesta autorizzazione da %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
||||||
#: ../js/ui/status/bluetooth.js:203
|
#: ../js/ui/status/bluetooth.js:203
|
||||||
#, c-format
|
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "Il dispositivo %s vuole associarsi con questo computer"
|
msgstr "Il dispositivo %s vuole associarsi con questo computer"
|
||||||
|
|
||||||
@ -1401,7 +1332,6 @@ msgid "Deny"
|
|||||||
msgstr "Nega"
|
msgstr "Nega"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:135
|
#: ../js/ui/status/bluetooth.js:135
|
||||||
#, c-format
|
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "Il dispositivo %s vuole accedere al servizio «%s»"
|
msgstr "Il dispositivo %s vuole accedere al servizio «%s»"
|
||||||
|
|
||||||
@ -1417,20 +1347,18 @@ msgstr "Accorda solo stavolta"
|
|||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "Rifiuta"
|
msgstr "Rifiuta"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name */
|
||||||
#: ../js/ui/status/bluetooth.js:166
|
#: ../js/ui/status/bluetooth.js:166
|
||||||
#, c-format
|
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "Conferma associazione per %s"
|
msgstr "Conferma associazione per %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:173
|
#: ../js/ui/status/bluetooth.js:173
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Confermare la corrispondenza del PIN «%06d» con quello sul dispositivo."
|
"Confermare la corrispondenza del PIN «%06d» con quello sul dispositivo."
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun */
|
||||||
#: ../js/ui/status/bluetooth.js:176
|
#: ../js/ui/status/bluetooth.js:176
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "Corrisponde"
|
msgstr "Corrisponde"
|
||||||
@ -1440,7 +1368,6 @@ msgid "Does not match"
|
|||||||
msgstr "Non corrisponde"
|
msgstr "Non corrisponde"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:196
|
#: ../js/ui/status/bluetooth.js:196
|
||||||
#, c-format
|
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "Richiesta di associazione per %s"
|
msgstr "Richiesta di associazione per %s"
|
||||||
|
|
||||||
@ -1456,92 +1383,101 @@ msgstr "OK"
|
|||||||
msgid "Brightness"
|
msgid "Brightness"
|
||||||
msgstr "Luminosità"
|
msgstr "Luminosità"
|
||||||
|
|
||||||
#: ../js/ui/status/keyboard.js:403
|
|
||||||
msgid "Show Keyboard Layout"
|
|
||||||
msgstr "Mostra disposizione tastiera"
|
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:72
|
#: ../js/ui/status/network.js:72
|
||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<sconosciuto>"
|
msgstr "<sconosciuto>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:223 ../js/ui/status/network.js:380
|
||||||
|
#: ../js/ui/status/network.js:1106
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "Off"
|
msgstr "Off"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
|
||||||
#: ../js/ui/status/rfkill.js:49
|
|
||||||
msgid "Network Settings"
|
|
||||||
msgstr "Impostazioni rete"
|
|
||||||
|
|
||||||
# FIXME o femminile? boh
|
# FIXME o femminile? boh
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:386
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "non gestito"
|
msgstr "non gestito"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:366
|
#: ../js/ui/status/network.js:388
|
||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "disconnessione..."
|
msgstr "disconnessione..."
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:394 ../js/ui/status/network.js:1160
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "connessione..."
|
msgstr "connessione..."
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password */
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:397 ../js/ui/status/network.js:1163
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "richiesta autenticazione"
|
msgstr "richiesta autenticazione"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing */
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:405
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "firmware mancante"
|
msgstr "firmware mancante"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage */
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:409
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "non disponibile"
|
msgstr "non disponibile"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:411 ../js/ui/status/network.js:1165
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "connessione non riuscita"
|
msgstr "connessione non riuscita"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:427 ../js/ui/status/network.js:513
|
||||||
|
msgid "Mobile Broadband Settings"
|
||||||
|
msgstr "Impostazioni banda larga mobile"
|
||||||
|
|
||||||
|
# (ndt) o disabilitata?
|
||||||
|
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1104
|
||||||
|
msgid "Hardware Disabled"
|
||||||
|
msgstr "Hardware disabilitato"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:696
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Reti Wi-Fi"
|
msgstr "Reti Wi-Fi"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:698
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "Seleziona una rete"
|
msgstr "Seleziona una rete"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:722
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "Nessuna rete"
|
msgstr "Nessuna rete"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:991
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Seleziona rete"
|
msgstr "Seleziona rete"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:997
|
||||||
|
msgid "Wi-Fi Settings"
|
||||||
|
msgstr "Impostazioni Wi-Fi"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1085
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Accendi"
|
msgstr "Accendi"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1108
|
||||||
|
msgid "Not Connected"
|
||||||
|
msgstr "Non collegato"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1228
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1368
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Gestore reti"
|
msgstr "Gestore reti"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1407
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Connessione non riuscita"
|
msgstr "Connessione non riuscita"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1408
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Attivazione della connessione di rete non riuscita"
|
msgstr "Attivazione della connessione di rete non riuscita"
|
||||||
|
|
||||||
@ -1557,29 +1493,19 @@ msgstr "Impostazioni alimentazione"
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "Carica"
|
msgstr "Carica"
|
||||||
|
|
||||||
#. 0 is reported when UPower does not have enough data
|
|
||||||
#. to estimate battery life
|
|
||||||
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
|
||||||
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "In stima…"
|
msgstr "In stima…"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:77
|
#: ../js/ui/status/power.js:77
|
||||||
#, c-format
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
msgid "%d\\u2236%02d Remaining (%d%%)"
|
|
||||||
msgstr "%d.%02d rimanente (%d%%)"
|
msgstr "%d.%02d rimanente (%d%%)"
|
||||||
|
|
||||||
# in stile MacOS sarebbe "al pieno" :P
|
# in stile MacOS sarebbe "al pieno" :P
|
||||||
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:82
|
#: ../js/ui/status/power.js:82
|
||||||
#, c-format
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
msgid "%d\\u2236%02d Until Full (%d%%)"
|
|
||||||
msgstr "%d.%02d alla carica (%d%%)"
|
msgstr "%d.%02d alla carica (%d%%)"
|
||||||
|
|
||||||
#. The menu only appears when airplane mode is on, so just
|
|
||||||
#. statically build it as if it was on, rather than dynamically
|
|
||||||
#. changing the menu contents.
|
|
||||||
#: ../js/ui/status/rfkill.js:43
|
#: ../js/ui/status/rfkill.js:43
|
||||||
msgid "Airplane Mode"
|
msgid "Airplane Mode"
|
||||||
msgstr "Modalità aeroplano"
|
msgstr "Modalità aeroplano"
|
||||||
@ -1588,6 +1514,10 @@ msgstr "Modalità aeroplano"
|
|||||||
msgid "On"
|
msgid "On"
|
||||||
msgstr "On"
|
msgstr "On"
|
||||||
|
|
||||||
|
#: ../js/ui/status/rfkill.js:49
|
||||||
|
msgid "Network Settings"
|
||||||
|
msgstr "Impostazioni rete"
|
||||||
|
|
||||||
#: ../js/ui/status/system.js:305
|
#: ../js/ui/status/system.js:305
|
||||||
msgid "Switch User"
|
msgid "Switch User"
|
||||||
msgstr "Cambia utente"
|
msgstr "Cambia utente"
|
||||||
@ -1637,7 +1567,6 @@ msgid "Search"
|
|||||||
msgstr "Cerca"
|
msgstr "Cerca"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:77
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
"%s"
|
"%s"
|
||||||
@ -1648,13 +1577,11 @@ msgstr ""
|
|||||||
# %s dovrebbe diventare "Wanda", il nome del pesce: a giudicare dal codice
|
# %s dovrebbe diventare "Wanda", il nome del pesce: a giudicare dal codice
|
||||||
# non mi pare che per ora sia modificabile dall'utente però
|
# non mi pare che per ora sia modificabile dall'utente però
|
||||||
#: ../js/ui/wanda.js:81
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "%s l'oracolo dice"
|
msgstr "%s l'oracolo dice"
|
||||||
|
|
||||||
# (ndt) dovrebbe essere il nome dell'applicazione
|
# (ndt) dovrebbe essere il nome dell'applicazione
|
||||||
#: ../js/ui/windowAttentionHandler.js:19
|
#: ../js/ui/windowAttentionHandler.js:19
|
||||||
#, c-format
|
|
||||||
msgid "'%s' is ready"
|
msgid "'%s' is ready"
|
||||||
msgstr "«%s» è pronto"
|
msgstr "«%s» è pronto"
|
||||||
|
|
||||||
@ -1664,7 +1591,7 @@ msgstr "Mantenere queste impostazioni per il monitor?"
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/windowManager.js:75
|
#: ../js/ui/windowManager.js:75
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Ripristina impostazioni"
|
msgstr "Ripristina impostazioni"
|
||||||
@ -1674,7 +1601,6 @@ msgid "Keep Changes"
|
|||||||
msgstr "Mantieni modifiche"
|
msgstr "Mantieni modifiche"
|
||||||
|
|
||||||
#: ../js/ui/windowManager.js:97
|
#: ../js/ui/windowManager.js:97
|
||||||
#, c-format
|
|
||||||
msgid "Settings changes will revert in %d second"
|
msgid "Settings changes will revert in %d second"
|
||||||
msgid_plural "Settings changes will revert in %d seconds"
|
msgid_plural "Settings changes will revert in %d seconds"
|
||||||
msgstr[0] "Le modifiche alle impostazioni saranno ripristinate tra %d secondo"
|
msgstr[0] "Le modifiche alle impostazioni saranno ripristinate tra %d secondo"
|
||||||
|
52
po/nb.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell 3.9.x\n"
|
"Project-Id-Version: gnome-shell 3.9.x\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2013-09-24 19:37+0200\n"
|
"POT-Creation-Date: 2013-10-03 20:38+0200\n"
|
||||||
"PO-Revision-Date: 2013-09-24 19:38+0200\n"
|
"PO-Revision-Date: 2013-09-24 19:38+0200\n"
|
||||||
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
|
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
|
||||||
"Language-Team: Norwegian bokmål <i18n-nb@lister.ping.uio.no>\n"
|
"Language-Team: Norwegian bokmål <i18n-nb@lister.ping.uio.no>\n"
|
||||||
@ -268,7 +268,7 @@ msgstr "Velg en utvidelse som skal konfigureres med komboboksen over."
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:703
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Avbryt"
|
msgstr "Avbryt"
|
||||||
|
|
||||||
@ -573,8 +573,8 @@ msgstr "Passord:"
|
|||||||
msgid "Type again:"
|
msgid "Type again:"
|
||||||
msgstr "Skriv på nytt:"
|
msgstr "Skriv på nytt:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:122
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:285 ../js/ui/status/network.js:706
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Koble til"
|
msgstr "Koble til"
|
||||||
|
|
||||||
@ -1236,11 +1236,11 @@ msgstr "Kan ikke låse"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Låsing ble stoppet av et program"
|
msgstr "Låsing ble stoppet av et program"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Søker …"
|
msgstr "Søker …"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Ingen resultater."
|
msgstr "Ingen resultater."
|
||||||
|
|
||||||
@ -1320,8 +1320,8 @@ msgstr "Stor tekst"
|
|||||||
msgid "Bluetooth"
|
msgid "Bluetooth"
|
||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:122
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1051 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "Slå av"
|
msgstr "Slå av"
|
||||||
|
|
||||||
@ -1418,83 +1418,83 @@ msgstr "Vis tastaturutforming"
|
|||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<ukjent>"
|
msgstr "<ukjent>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:212 ../js/ui/status/network.js:1066
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "Av"
|
msgstr "Av"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
#: ../js/ui/status/network.js:286 ../js/ui/status/network.js:972
|
||||||
#: ../js/ui/status/rfkill.js:49
|
#: ../js/ui/status/rfkill.js:49
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "Innstillinger for nettverk"
|
msgstr "Innstillinger for nettverk"
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu)
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:375
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "ikke håndtert"
|
msgstr "ikke håndtert"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:366
|
#: ../js/ui/status/network.js:377
|
||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "kobler fra …"
|
msgstr "kobler fra …"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:383 ../js/ui/status/network.js:1118
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "kobler til …"
|
msgstr "kobler til …"
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:386 ../js/ui/status/network.js:1121
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "autentisering kreves"
|
msgstr "autentisering kreves"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:394
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "fastvare mangler"
|
msgstr "fastvare mangler"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:398
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "ikke tilgjengelig"
|
msgstr "ikke tilgjengelig"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:400 ../js/ui/status/network.js:1123
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "tilkobling feilet"
|
msgstr "tilkobling feilet"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:671
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Wi-Fi nettverk"
|
msgstr "Wi-Fi nettverk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:673
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "Velg et nettverk"
|
msgstr "Velg et nettverk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:697
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "Ingen nettverk"
|
msgstr "Ingen nettverk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:966
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Velg nettverk"
|
msgstr "Velg nettverk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:1051
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Slå på"
|
msgstr "Slå på"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1186
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1326
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Nettverkshåndtering"
|
msgstr "Nettverkshåndtering"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1365
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Tilkobling feilet"
|
msgstr "Tilkobling feilet"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1366
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Aktivering av nettverkstilkobling feilet"
|
msgstr "Aktivering av nettverkstilkobling feilet"
|
||||||
|
|
||||||
|
270
po/nl.po
@ -14,11 +14,10 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell\n"
|
"Project-Id-Version: gnome-shell\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"POT-Creation-Date: 2013-10-12 19:57+0200\n"
|
||||||
"POT-Creation-Date: 2013-09-14 18:10+0000\n"
|
"PO-Revision-Date: 2013-10-12 19:59+0200\n"
|
||||||
"PO-Revision-Date: 2013-09-21 22:46+0100\n"
|
"Last-Translator: Wouter Bolsterlee <wbolster@gnome.org>\n"
|
||||||
"Last-Translator: Reinout van Schouwen <reinouts@gnome.org>\n"
|
|
||||||
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
|
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
|
||||||
"Language: nl\n"
|
"Language: nl\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@ -269,6 +268,10 @@ msgstr "Werkbladen dynamisch beheren"
|
|||||||
msgid "Workspaces only on primary monitor"
|
msgid "Workspaces only on primary monitor"
|
||||||
msgstr "Alleen werkbladen op hoofdmonitor"
|
msgstr "Alleen werkbladen op hoofdmonitor"
|
||||||
|
|
||||||
|
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
|
||||||
|
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||||
|
msgstr "Focus pas wijzigen nadat de muisaanwijzer is gestopt met bewegen"
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:125
|
#: ../js/extensionPrefs/main.js:125
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
msgid "There was an error loading the preferences dialog for %s:"
|
||||||
@ -282,10 +285,10 @@ msgstr "Uitbreiding"
|
|||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
msgstr "Selecteer de te configureren uitbreiding uit de keuzelijst hierboven."
|
msgstr "Selecteer de te configureren uitbreiding uit de keuzelijst hierboven."
|
||||||
|
|
||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:132
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:221 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:728
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Annuleren"
|
msgstr "Annuleren"
|
||||||
|
|
||||||
@ -324,8 +327,8 @@ msgstr "(bijv. gebruiker of %s)"
|
|||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
#. TTLS and PEAP are actually much more complicated, but this complication
|
||||||
#. is not visible here since we only care about phase2 authentication
|
#. is not visible here since we only care about phase2 authentication
|
||||||
#. (and don't even care of which one)
|
#. (and don't even care of which one)
|
||||||
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:255
|
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
||||||
#: ../js/ui/components/networkAgent.js:273
|
#: ../js/ui/components/networkAgent.js:277
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Gebruikersnaam: "
|
msgstr "Gebruikersnaam: "
|
||||||
|
|
||||||
@ -346,42 +349,42 @@ msgstr "Authenticatie mislukt"
|
|||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(of vinger aanbieden)"
|
msgstr "(of vinger aanbieden)"
|
||||||
|
|
||||||
#: ../js/misc/util.js:98
|
#: ../js/misc/util.js:115
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Opdracht niet gevonden"
|
msgstr "Opdracht niet gevonden"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
||||||
#. something nicer
|
#. something nicer
|
||||||
#: ../js/misc/util.js:131
|
#: ../js/misc/util.js:148
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Kon opdracht niet parsen:"
|
msgstr "Kon opdracht niet parsen:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:139
|
#: ../js/misc/util.js:156
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Uitvoeren van ‘%s’ mislukt:"
|
msgstr "Uitvoeren van ‘%s’ mislukt:"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:598
|
#: ../js/ui/appDisplay.js:596
|
||||||
msgid "Frequently used applications will appear here"
|
msgid "Frequently used applications will appear here"
|
||||||
msgstr "Vaak gebruikte toepassingen verschijnen hier"
|
msgstr "Vaak gebruikte toepassingen verschijnen hier"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:714
|
#: ../js/ui/appDisplay.js:712
|
||||||
msgid "Frequent"
|
msgid "Frequent"
|
||||||
msgstr "Vaak gebruikt"
|
msgstr "Vaak gebruikt"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:721
|
#: ../js/ui/appDisplay.js:719
|
||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Alles"
|
msgstr "Alles"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:1516
|
#: ../js/ui/appDisplay.js:1514
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Nieuw venster"
|
msgstr "Nieuw venster"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:1519 ../js/ui/dash.js:284
|
#: ../js/ui/appDisplay.js:1517 ../js/ui/dash.js:284
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Uit favorieten verwijderen"
|
msgstr "Uit favorieten verwijderen"
|
||||||
|
|
||||||
#: ../js/ui/appDisplay.js:1520
|
#: ../js/ui/appDisplay.js:1518
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Aan favorieten toevoegen"
|
msgstr "Aan favorieten toevoegen"
|
||||||
|
|
||||||
@ -395,7 +398,7 @@ msgstr "%s is toegevoegd aan uw favorieten."
|
|||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s is verwijderd uit uw favorieten."
|
msgstr "%s is verwijderd uit uw favorieten."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:806
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Voorkeuren"
|
msgstr "Voorkeuren"
|
||||||
@ -583,50 +586,50 @@ msgstr "Openen met %s"
|
|||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Uitwerpen"
|
msgstr "Uitwerpen"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:88 ../js/ui/components/polkitAgent.js:280
|
#: ../js/ui/components/keyring.js:89 ../js/ui/components/polkitAgent.js:280
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Wachtwoord:"
|
msgstr "Wachtwoord:"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:107
|
#: ../js/ui/components/keyring.js:108
|
||||||
msgid "Type again:"
|
msgid "Type again:"
|
||||||
msgstr "Nogmaals:"
|
msgstr "Nogmaals:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:127 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:296 ../js/ui/status/network.js:731
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Verbinden"
|
msgstr "Verbinden"
|
||||||
|
|
||||||
#. Cisco LEAP
|
#. Cisco LEAP
|
||||||
#: ../js/ui/components/networkAgent.js:218
|
#: ../js/ui/components/networkAgent.js:222
|
||||||
#: ../js/ui/components/networkAgent.js:230
|
#: ../js/ui/components/networkAgent.js:234
|
||||||
#: ../js/ui/components/networkAgent.js:257
|
#: ../js/ui/components/networkAgent.js:261
|
||||||
#: ../js/ui/components/networkAgent.js:277
|
#: ../js/ui/components/networkAgent.js:281
|
||||||
#: ../js/ui/components/networkAgent.js:287
|
#: ../js/ui/components/networkAgent.js:291
|
||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "Wachtwoord:"
|
msgstr "Wachtwoord:"
|
||||||
|
|
||||||
#. static WEP
|
#. static WEP
|
||||||
#: ../js/ui/components/networkAgent.js:223
|
#: ../js/ui/components/networkAgent.js:227
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "Sleutel: "
|
msgstr "Sleutel: "
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:261
|
#: ../js/ui/components/networkAgent.js:265
|
||||||
msgid "Identity: "
|
msgid "Identity: "
|
||||||
msgstr "Identiteit: "
|
msgstr "Identiteit: "
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:263
|
#: ../js/ui/components/networkAgent.js:267
|
||||||
msgid "Private key password: "
|
msgid "Private key password: "
|
||||||
msgstr "Wachtwoord van privésleutel: "
|
msgstr "Wachtwoord van privésleutel: "
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:275
|
#: ../js/ui/components/networkAgent.js:279
|
||||||
msgid "Service: "
|
msgid "Service: "
|
||||||
msgstr "Service: "
|
msgstr "Service: "
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:304
|
#: ../js/ui/components/networkAgent.js:308
|
||||||
msgid "Authentication required by wireless network"
|
msgid "Authentication required by wireless network"
|
||||||
msgstr "Authenticatie nodig voor draadloos netwerk"
|
msgstr "Authenticatie nodig voor draadloos netwerk"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:305
|
#: ../js/ui/components/networkAgent.js:309
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
@ -635,35 +638,35 @@ msgstr ""
|
|||||||
"Er is een wachtwoord of een sleutel voor encryptie nodig voor toegang tot "
|
"Er is een wachtwoord of een sleutel voor encryptie nodig voor toegang tot "
|
||||||
"het draadloze netwerk ‘%s’."
|
"het draadloze netwerk ‘%s’."
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:309
|
#: ../js/ui/components/networkAgent.js:313
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
msgstr "802.1X-authenticatie (bedraad)"
|
msgstr "802.1X-authenticatie (bedraad)"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:311
|
#: ../js/ui/components/networkAgent.js:315
|
||||||
msgid "Network name: "
|
msgid "Network name: "
|
||||||
msgstr "Netwerknaam: "
|
msgstr "Netwerknaam: "
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:316
|
#: ../js/ui/components/networkAgent.js:320
|
||||||
msgid "DSL authentication"
|
msgid "DSL authentication"
|
||||||
msgstr "DSL-authenticatie"
|
msgstr "DSL-authenticatie"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:323
|
#: ../js/ui/components/networkAgent.js:327
|
||||||
msgid "PIN code required"
|
msgid "PIN code required"
|
||||||
msgstr "PIN-code vereist"
|
msgstr "PIN-code vereist"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:324
|
#: ../js/ui/components/networkAgent.js:328
|
||||||
msgid "PIN code is needed for the mobile broadband device"
|
msgid "PIN code is needed for the mobile broadband device"
|
||||||
msgstr "PIN-code vereist voor het apparaat voor mobiel breedband"
|
msgstr "PIN-code vereist voor het apparaat voor mobiel breedband"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:325
|
#: ../js/ui/components/networkAgent.js:329
|
||||||
msgid "PIN: "
|
msgid "PIN: "
|
||||||
msgstr "PIN: "
|
msgstr "PIN: "
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:331
|
#: ../js/ui/components/networkAgent.js:335
|
||||||
msgid "Mobile broadband network password"
|
msgid "Mobile broadband network password"
|
||||||
msgstr "Netwerkwachtwoord voor mobiel breedband"
|
msgstr "Netwerkwachtwoord voor mobiel breedband"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:332
|
#: ../js/ui/components/networkAgent.js:336
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "Er is een wachtwoord nodig om met ‘%s’ te verbinden."
|
msgstr "Er is een wachtwoord nodig om met ‘%s’ te verbinden."
|
||||||
@ -1034,11 +1037,14 @@ msgid "Restart & Install Updates"
|
|||||||
msgstr "Opnieuw opstarten en updates installeren"
|
msgstr "Opnieuw opstarten en updates installeren"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:114
|
#: ../js/ui/endSessionDialog.js:114
|
||||||
|
#, c-format
|
||||||
msgid "The system will automatically restart and install updates in %d second."
|
msgid "The system will automatically restart and install updates in %d second."
|
||||||
msgid_plural ""
|
msgid_plural ""
|
||||||
"The system will automatically restart and install updates in %d seconds."
|
"The system will automatically restart and install updates in %d seconds."
|
||||||
msgstr[0] "De computer zal opnieuw opstarten en updates installeren over %d seconde."
|
msgstr[0] ""
|
||||||
msgstr[1] "De computer zal opnieuw opstarten en updates installeren over %d seconden."
|
"De computer zal opnieuw opstarten en updates installeren over %d seconde."
|
||||||
|
msgstr[1] ""
|
||||||
|
"De computer zal opnieuw opstarten en updates installeren over %d seconden."
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:119
|
#: ../js/ui/endSessionDialog.js:119
|
||||||
msgctxt "button"
|
msgctxt "button"
|
||||||
@ -1100,9 +1106,12 @@ msgstr "Fouten tonen"
|
|||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr "Ingeschakeld"
|
msgstr "Ingeschakeld"
|
||||||
|
|
||||||
|
#. Translators: this is for a network device that cannot be activated
|
||||||
|
#. because it's disabled by rfkill (airplane mode)
|
||||||
#. translators:
|
#. translators:
|
||||||
#. * The device has been disabled
|
#. * The device has been disabled
|
||||||
#: ../js/ui/lookingGlass.js:765 ../src/gvc/gvc-mixer-control.c:1830
|
#: ../js/ui/lookingGlass.js:765 ../js/ui/status/network.js:473
|
||||||
|
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Uitgeschakeld"
|
msgstr "Uitgeschakeld"
|
||||||
|
|
||||||
@ -1134,31 +1143,35 @@ msgstr "Openen"
|
|||||||
msgid "Remove"
|
msgid "Remove"
|
||||||
msgstr "Verwijderen"
|
msgstr "Verwijderen"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1513
|
#: ../js/ui/messageTray.js:1530
|
||||||
|
msgid "Notifications"
|
||||||
|
msgstr "Notificaties"
|
||||||
|
|
||||||
|
#: ../js/ui/messageTray.js:1537
|
||||||
msgid "Clear Messages"
|
msgid "Clear Messages"
|
||||||
msgstr "Berichten wissen"
|
msgstr "Berichten wissen"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1540
|
#: ../js/ui/messageTray.js:1564
|
||||||
msgid "Notification Settings"
|
msgid "Notification Settings"
|
||||||
msgstr "Notificatie-instellingen"
|
msgstr "Notificatie-instellingen"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1559
|
#: ../js/ui/messageTray.js:1617
|
||||||
msgid "Tray Menu"
|
msgid "Tray Menu"
|
||||||
msgstr "Overzichtmenu"
|
msgstr "Overzichtmenu"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1775
|
#: ../js/ui/messageTray.js:1833
|
||||||
msgid "No Messages"
|
msgid "No Messages"
|
||||||
msgstr "Geen berichten"
|
msgstr "Geen berichten"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1812
|
#: ../js/ui/messageTray.js:1871
|
||||||
msgid "Message Tray"
|
msgid "Message Tray"
|
||||||
msgstr "Berichtenoverzicht"
|
msgstr "Berichtenoverzicht"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:2787
|
#: ../js/ui/messageTray.js:2846
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Systeeminformatie"
|
msgstr "Systeeminformatie"
|
||||||
|
|
||||||
#: ../js/ui/notificationDaemon.js:629 ../src/shell-app.c:396
|
#: ../js/ui/notificationDaemon.js:630 ../src/shell-app.c:396
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Onbekend"
|
msgstr "Onbekend"
|
||||||
@ -1186,17 +1199,17 @@ msgstr "Overzicht"
|
|||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Typ om te zoeken…"
|
msgstr "Typ om te zoeken…"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:518
|
#: ../js/ui/panel.js:516
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Afsluiten"
|
msgstr "Afsluiten"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview".
|
||||||
#: ../js/ui/panel.js:570
|
#: ../js/ui/panel.js:568
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Activiteiten"
|
msgstr "Activiteiten"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:900
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Bovenbalk"
|
msgstr "Bovenbalk"
|
||||||
|
|
||||||
@ -1205,7 +1218,7 @@ msgstr "Bovenbalk"
|
|||||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
||||||
#. switches containing "◯" and "|"). Other values will
|
#. switches containing "◯" and "|"). Other values will
|
||||||
#. simply result in invisible toggle switches.
|
#. simply result in invisible toggle switches.
|
||||||
#: ../js/ui/popupMenu.js:233
|
#: ../js/ui/popupMenu.js:259
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
@ -1253,11 +1266,11 @@ msgstr "Kon niet vergrendelen"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Vergrendelen is door een toepassing voorkomen"
|
msgstr "Vergrendelen is door een toepassing voorkomen"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Zoeken…"
|
msgstr "Zoeken…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Geen resultaten"
|
msgstr "Geen resultaten"
|
||||||
|
|
||||||
@ -1289,56 +1302,56 @@ msgstr "Wachtwoord onthouden"
|
|||||||
msgid "Accessibility"
|
msgid "Accessibility"
|
||||||
msgstr "Toegankelijkheid"
|
msgstr "Toegankelijkheid"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:58
|
#: ../js/ui/status/accessibility.js:56
|
||||||
msgid "Zoom"
|
msgid "Zoom"
|
||||||
msgstr "Zoomen"
|
msgstr "Zoomen"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:65
|
#: ../js/ui/status/accessibility.js:63
|
||||||
msgid "Screen Reader"
|
msgid "Screen Reader"
|
||||||
msgstr "Schermlezer"
|
msgstr "Schermlezer"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:69
|
#: ../js/ui/status/accessibility.js:67
|
||||||
msgid "Screen Keyboard"
|
msgid "Screen Keyboard"
|
||||||
msgstr "Schermtoetsenbord"
|
msgstr "Schermtoetsenbord"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:73
|
#: ../js/ui/status/accessibility.js:71
|
||||||
msgid "Visual Alerts"
|
msgid "Visual Alerts"
|
||||||
msgstr "Visuele alerteringen"
|
msgstr "Visuele alerteringen"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:76
|
#: ../js/ui/status/accessibility.js:74
|
||||||
msgid "Sticky Keys"
|
msgid "Sticky Keys"
|
||||||
msgstr "Plaktoetsen"
|
msgstr "Plaktoetsen"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:79
|
#: ../js/ui/status/accessibility.js:77
|
||||||
msgid "Slow Keys"
|
msgid "Slow Keys"
|
||||||
msgstr "Trage Toetsen"
|
msgstr "Trage Toetsen"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:82
|
#: ../js/ui/status/accessibility.js:80
|
||||||
msgid "Bounce Keys"
|
msgid "Bounce Keys"
|
||||||
msgstr "Springende toetsen"
|
msgstr "Springende toetsen"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:85
|
#: ../js/ui/status/accessibility.js:83
|
||||||
msgid "Mouse Keys"
|
msgid "Mouse Keys"
|
||||||
msgstr "Muistoetsen"
|
msgstr "Muistoetsen"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:144
|
#: ../js/ui/status/accessibility.js:142
|
||||||
msgid "High Contrast"
|
msgid "High Contrast"
|
||||||
msgstr "Hoog contrast"
|
msgstr "Hoog contrast"
|
||||||
|
|
||||||
#: ../js/ui/status/accessibility.js:193
|
#: ../js/ui/status/accessibility.js:191
|
||||||
msgid "Large Text"
|
msgid "Large Text"
|
||||||
msgstr "Grote tekst"
|
msgstr "Grote tekst"
|
||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
#. The Bluetooth menu only appears when Bluetooth is in use,
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
#. so just statically build it with a "Turn Off" menu item.
|
||||||
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:62
|
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
||||||
#: ../js/ui/status/bluetooth.js:99 ../js/ui/status/bluetooth.js:127
|
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
||||||
#: ../js/ui/status/bluetooth.js:163 ../js/ui/status/bluetooth.js:194
|
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
||||||
msgid "Bluetooth"
|
msgid "Bluetooth"
|
||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1085 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "Uitschakelen"
|
msgstr "Uitschakelen"
|
||||||
|
|
||||||
@ -1346,79 +1359,81 @@ msgstr "Uitschakelen"
|
|||||||
msgid "Bluetooth Settings"
|
msgid "Bluetooth Settings"
|
||||||
msgstr "Bluetooth-instellingen"
|
msgstr "Bluetooth-instellingen"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:57
|
#: ../js/ui/status/bluetooth.js:58
|
||||||
|
#, c-format
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d Verbonden apparaat"
|
msgstr[0] "%d Verbonden apparaat"
|
||||||
msgstr[1] "%d Verbonden apparaten"
|
msgstr[1] "%d Verbonden apparaten"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "Autorisatie-aanvraag van %s"
|
msgstr "Autorisatie-aanvraag van %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:106 ../js/ui/status/bluetooth.js:171
|
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
||||||
#: ../js/ui/status/bluetooth.js:202
|
#: ../js/ui/status/bluetooth.js:203
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "Het apparaat ‘%s’ wil aankoppelen met deze computer"
|
msgstr "Het apparaat ‘%s’ wil aankoppelen met deze computer"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:108
|
#: ../js/ui/status/bluetooth.js:109
|
||||||
msgid "Allow"
|
msgid "Allow"
|
||||||
msgstr "Toestaan"
|
msgstr "Toestaan"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:109
|
#: ../js/ui/status/bluetooth.js:110
|
||||||
msgid "Deny"
|
msgid "Deny"
|
||||||
msgstr "Weigeren"
|
msgstr "Weigeren"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:134
|
#: ../js/ui/status/bluetooth.js:135
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "Het apparaat ‘%s’ wil toegang tot de dienst ‘%s’"
|
msgstr "Het apparaat ‘%s’ wil toegang tot de dienst ‘%s’"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:136
|
#: ../js/ui/status/bluetooth.js:137
|
||||||
msgid "Always grant access"
|
msgid "Always grant access"
|
||||||
msgstr "Altijd toestaan"
|
msgstr "Altijd toestaan"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:137
|
#: ../js/ui/status/bluetooth.js:138
|
||||||
msgid "Grant this time only"
|
msgid "Grant this time only"
|
||||||
msgstr "Eenmalig toestaan"
|
msgstr "Eenmalig toestaan"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:138
|
#: ../js/ui/status/bluetooth.js:139
|
||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "Afwijzen"
|
msgstr "Afwijzen"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name
|
||||||
#: ../js/ui/status/bluetooth.js:165
|
#: ../js/ui/status/bluetooth.js:166
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "Koppelbevestiging voor %s"
|
msgstr "Koppelbevestiging voor %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:172
|
#: ../js/ui/status/bluetooth.js:173
|
||||||
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
msgstr
|
msgstr ""
|
||||||
"Bevestig dat de toegangscode ‘%06d’ hetzelfde is als die van het apparaat."
|
"Bevestig dat de toegangscode ‘%06d’ hetzelfde is als die van het apparaat."
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun
|
||||||
#: ../js/ui/status/bluetooth.js:175
|
#: ../js/ui/status/bluetooth.js:176
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "Komt overeen"
|
msgstr "Komt overeen"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:176
|
#: ../js/ui/status/bluetooth.js:177
|
||||||
msgid "Does not match"
|
msgid "Does not match"
|
||||||
msgstr "Komt niet overeen"
|
msgstr "Komt niet overeen"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:195
|
#: ../js/ui/status/bluetooth.js:196
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "Verzoek tot koppelen met %s"
|
msgstr "Verzoek tot koppelen met %s"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:203
|
#: ../js/ui/status/bluetooth.js:204
|
||||||
msgid "Please enter the PIN mentioned on the device."
|
msgid "Please enter the PIN mentioned on the device."
|
||||||
msgstr "Geef de op het apparaat aangegeven PIN-code."
|
msgstr "Geef de op het apparaat aangegeven PIN-code."
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:220
|
#: ../js/ui/status/bluetooth.js:221
|
||||||
msgid "OK"
|
msgid "OK"
|
||||||
msgstr "OK"
|
msgstr "OK"
|
||||||
|
|
||||||
@ -1426,7 +1441,7 @@ msgstr "OK"
|
|||||||
msgid "Brightness"
|
msgid "Brightness"
|
||||||
msgstr "Helderheid"
|
msgstr "Helderheid"
|
||||||
|
|
||||||
#: ../js/ui/status/keyboard.js:403
|
#: ../js/ui/status/keyboard.js:401
|
||||||
msgid "Show Keyboard Layout"
|
msgid "Show Keyboard Layout"
|
||||||
msgstr "Toetsenbordindeling tonen"
|
msgstr "Toetsenbordindeling tonen"
|
||||||
|
|
||||||
@ -1434,83 +1449,95 @@ msgstr "Toetsenbordindeling tonen"
|
|||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<onbekend>"
|
msgstr "<onbekend>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:223 ../js/ui/status/network.js:380
|
||||||
|
#: ../js/ui/status/network.js:1106
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "Uit"
|
msgstr "Uit"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
|
||||||
#: ../js/ui/status/rfkill.js:49
|
|
||||||
msgid "Network Settings"
|
|
||||||
msgstr "Netwerkinstellingen"
|
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu)
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:386
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "niet gemanaged"
|
msgstr "niet gemanaged"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:366
|
#: ../js/ui/status/network.js:388
|
||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "verbinding verbreken…"
|
msgstr "verbinding verbreken…"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:394 ../js/ui/status/network.js:1160
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "verbinden…"
|
msgstr "verbinden…"
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:397 ../js/ui/status/network.js:1163
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "authenticatie nodig"
|
msgstr "authenticatie nodig"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:405
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "firmware ontbreekt"
|
msgstr "firmware ontbreekt"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:409
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "niet beschikbaar"
|
msgstr "niet beschikbaar"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:411 ../js/ui/status/network.js:1165
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "verbinding mislukt"
|
msgstr "verbinding mislukt"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:427 ../js/ui/status/network.js:513
|
||||||
|
msgid "Mobile Broadband Settings"
|
||||||
|
msgstr "Instellingen voor mobiel breedband"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1104
|
||||||
|
msgid "Hardware Disabled"
|
||||||
|
msgstr "Uitgeschakeld in hardware"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:696
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Wi-Fi-netwerken"
|
msgstr "Wi-Fi-netwerken"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:698
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "Selecteer een netwerk"
|
msgstr "Selecteer een netwerk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:722
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "Geen netwerken"
|
msgstr "Geen netwerken"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:991
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Selecteer netwerk"
|
msgstr "Selecteer netwerk"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:997
|
||||||
|
msgid "Wi-Fi Settings"
|
||||||
|
msgstr "Instellingen voor Wi-Fi"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1085
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Inschakelen"
|
msgstr "Inschakelen"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1108
|
||||||
|
msgid "Not Connected"
|
||||||
|
msgstr "Niet verbonden"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1228
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1306
|
#: ../js/ui/status/network.js:1368
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Netwerk-manager"
|
msgstr "Netwerk-manager"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1345
|
#: ../js/ui/status/network.js:1407
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Verbinding mislukt"
|
msgstr "Verbinding mislukt"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1408
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Activeren van netwerkverbinding mislukt"
|
msgstr "Activeren van netwerkverbinding mislukt"
|
||||||
|
|
||||||
@ -1556,6 +1583,10 @@ msgstr "Vliegtuigstand"
|
|||||||
msgid "On"
|
msgid "On"
|
||||||
msgstr "Aan"
|
msgstr "Aan"
|
||||||
|
|
||||||
|
#: ../js/ui/status/rfkill.js:49
|
||||||
|
msgid "Network Settings"
|
||||||
|
msgstr "Netwerkinstellingen"
|
||||||
|
|
||||||
#: ../js/ui/status/system.js:305
|
#: ../js/ui/status/system.js:305
|
||||||
msgid "Switch User"
|
msgid "Switch User"
|
||||||
msgstr "Gebruiker wisselen"
|
msgstr "Gebruiker wisselen"
|
||||||
@ -1667,7 +1698,7 @@ msgid_plural "%u Inputs"
|
|||||||
msgstr[0] "%u invoerkanaal"
|
msgstr[0] "%u invoerkanaal"
|
||||||
msgstr[1] "%u invoerkanalen"
|
msgstr[1] "%u invoerkanalen"
|
||||||
|
|
||||||
#: ../src/gvc/gvc-mixer-control.c:2373
|
#: ../src/gvc/gvc-mixer-control.c:2371
|
||||||
msgid "System Sounds"
|
msgid "System Sounds"
|
||||||
msgstr "Systeemgeluiden"
|
msgstr "Systeemgeluiden"
|
||||||
|
|
||||||
@ -1846,9 +1877,6 @@ msgstr "Authenticatievenster is door de gebruiker afgesloten"
|
|||||||
#~ msgid "Set Up a New Device…"
|
#~ msgid "Set Up a New Device…"
|
||||||
#~ msgstr "Nieuw apparaat instellen…"
|
#~ msgstr "Nieuw apparaat instellen…"
|
||||||
|
|
||||||
#~ msgid "hardware disabled"
|
|
||||||
#~ msgstr "uitgeschakeld in hardware"
|
|
||||||
|
|
||||||
#~ msgid "Connection"
|
#~ msgid "Connection"
|
||||||
#~ msgstr "Verbinding"
|
#~ msgstr "Verbinding"
|
||||||
|
|
||||||
@ -1886,9 +1914,6 @@ msgstr "Authenticatievenster is door de gebruiker afgesloten"
|
|||||||
#~ msgid "Auto Ethernet"
|
#~ msgid "Auto Ethernet"
|
||||||
#~ msgstr "Automatisch ethernetverbinding"
|
#~ msgstr "Automatisch ethernetverbinding"
|
||||||
|
|
||||||
#~ msgid "Mobile broadband"
|
|
||||||
#~ msgstr "Mobiel breedband"
|
|
||||||
|
|
||||||
#~ msgid "Auto broadband"
|
#~ msgid "Auto broadband"
|
||||||
#~ msgstr "Automatische breedbandverbinding"
|
#~ msgstr "Automatische breedbandverbinding"
|
||||||
|
|
||||||
@ -1986,9 +2011,6 @@ msgstr "Authenticatievenster is door de gebruiker afgesloten"
|
|||||||
#~ msgid "Idle"
|
#~ msgid "Idle"
|
||||||
#~ msgstr "Inactief"
|
#~ msgstr "Inactief"
|
||||||
|
|
||||||
#~ msgid "Notifications"
|
|
||||||
#~ msgstr "Notificaties"
|
|
||||||
|
|
||||||
#~ msgid "Your chat status will be set to busy"
|
#~ msgid "Your chat status will be set to busy"
|
||||||
#~ msgstr "De chatstatus zal op ‘bezig’ gezet worden"
|
#~ msgstr "De chatstatus zal op ‘bezig’ gezet worden"
|
||||||
|
|
||||||
|
326
po/pa.po
@ -7,8 +7,8 @@ msgstr ""
|
|||||||
"Project-Id-Version: gnome-shell master\n"
|
"Project-Id-Version: gnome-shell master\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2013-09-23 13:35+0000\n"
|
"POT-Creation-Date: 2013-09-28 19:49+0000\n"
|
||||||
"PO-Revision-Date: 2013-09-24 07:52-0500\n"
|
"PO-Revision-Date: 2013-09-29 05:26-0500\n"
|
||||||
"Last-Translator: A S Alam <aalam@users.sf.net>\n"
|
"Last-Translator: A S Alam <aalam@users.sf.net>\n"
|
||||||
"Language-Team: Punjabi/Panjabi <punjabi-users@lists.sf.net>\n"
|
"Language-Team: Punjabi/Panjabi <punjabi-users@lists.sf.net>\n"
|
||||||
"Language: pa\n"
|
"Language: pa\n"
|
||||||
@ -52,7 +52,6 @@ msgid "Window management and application launching"
|
|||||||
msgstr "ਵਿੰਡੋ ਪਰਬੰਧ ਅਤੇ ਐਪਲੀਕੇਸ਼ਨ ਚਲਾਓ"
|
msgstr "ਵਿੰਡੋ ਪਰਬੰਧ ਅਤੇ ਐਪਲੀਕੇਸ਼ਨ ਚਲਾਓ"
|
||||||
|
|
||||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||||
#: ../js/extensionPrefs/main.js:153
|
|
||||||
msgid "GNOME Shell Extension Preferences"
|
msgid "GNOME Shell Extension Preferences"
|
||||||
msgstr "ਗਨੋਮ ਸ਼ੈੱਲ ਇਕਸਟੈਨਸ਼ਨ ਪਸੰਦ"
|
msgstr "ਗਨੋਮ ਸ਼ੈੱਲ ਇਕਸਟੈਨਸ਼ਨ ਪਸੰਦ"
|
||||||
|
|
||||||
@ -270,15 +269,6 @@ msgstr "ਪ੍ਰਾਈਮਰੀ ਮਾਨੀਟਰ ਉੱਤੇ ਕੇਵਲ
|
|||||||
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||||
msgstr "ਪੁਆਇੰਟਰ ਦੇ ਹਿਲਣ ਤੋਂ ਰੁਕਣ ਤੱਕ ਮਾਊਸ ਮੋਡ ਵਿੱਚ ਫੋਕਸ ਬਦਲਾਅ ਵਿੱਚ ਦੇਰੀ"
|
msgstr "ਪੁਆਇੰਟਰ ਦੇ ਹਿਲਣ ਤੋਂ ਰੁਕਣ ਤੱਕ ਮਾਊਸ ਮੋਡ ਵਿੱਚ ਫੋਕਸ ਬਦਲਾਅ ਵਿੱਚ ਦੇਰੀ"
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:125
|
|
||||||
#, c-format
|
|
||||||
msgid "There was an error loading the preferences dialog for %s:"
|
|
||||||
msgstr "%s ਲਈ ਪਸੰਦ ਡਾਈਲਾਗ ਨੂੰ ਲੋਡ ਕਰਨ ਦੌਰਾਨ ਸਮੱਸਿਆ:"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:165
|
|
||||||
msgid "Extension"
|
|
||||||
msgstr "ਇਕਸਟੈਸ਼ਨ"
|
|
||||||
|
|
||||||
#: ../js/extensionPrefs/main.js:189
|
#: ../js/extensionPrefs/main.js:189
|
||||||
msgid "Select an extension to configure using the combobox above."
|
msgid "Select an extension to configure using the combobox above."
|
||||||
msgstr "ਉੱਤੇ ਦਿੱਤੇ ਕੰਬੋਬਾਕਸ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇਕਸਟੈਸ਼ਨ ਦੀ ਸੰਰਚਨਾ ਕਰਨ ਲਈ ਚੋਣ ਕਰੋ।"
|
msgstr "ਉੱਤੇ ਦਿੱਤੇ ਕੰਬੋਬਾਕਸ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇਕਸਟੈਸ਼ਨ ਦੀ ਸੰਰਚਨਾ ਕਰਨ ਲਈ ਚੋਣ ਕਰੋ।"
|
||||||
@ -286,7 +276,7 @@ msgstr "ਉੱਤੇ ਦਿੱਤੇ ਕੰਬੋਬਾਕਸ ਦੀ ਵਰਤ
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:692
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "ਰੱਦ ਕਰੋ"
|
msgstr "ਰੱਦ ਕਰੋ"
|
||||||
|
|
||||||
@ -308,23 +298,15 @@ msgstr "ਸਾਇਨ ਇਨ"
|
|||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "ਸ਼ੈਸ਼ਨ ਚੁਣੋ"
|
msgstr "ਸ਼ੈਸ਼ਨ ਚੁਣੋ"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
|
||||||
#. login screen. It can be activated to reveal an entry for
|
|
||||||
#. manually entering the username.
|
|
||||||
#: ../js/gdm/loginDialog.js:454
|
#: ../js/gdm/loginDialog.js:454
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "ਲਿਸਟ ਵਿੱਚ ਨਹੀਂ ਹੈ?"
|
msgstr "ਲਿਸਟ ਵਿੱਚ ਨਹੀਂ ਹੈ?"
|
||||||
|
|
||||||
#. Translators: this message is shown below the username entry field
|
|
||||||
#. to clue the user in on how to login to the local network realm
|
|
||||||
#: ../js/gdm/loginDialog.js:622
|
#: ../js/gdm/loginDialog.js:622
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(ਜਿਵੇਂ ਕਿ ਯੂਜ਼ਰ ਜਾਂ %s)"
|
msgstr "(ਜਿਵੇਂ ਕਿ ਯੂਜ਼ਰ ਜਾਂ %s)"
|
||||||
|
|
||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
|
||||||
#. is not visible here since we only care about phase2 authentication
|
|
||||||
#. (and don't even care of which one)
|
|
||||||
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
#: ../js/gdm/loginDialog.js:627 ../js/ui/components/networkAgent.js:259
|
||||||
#: ../js/ui/components/networkAgent.js:277
|
#: ../js/ui/components/networkAgent.js:277
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
@ -338,11 +320,6 @@ msgstr "ਲਾਗਇਨ ਵਿੰਡੋ"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "ਪਰਮਾਣਕਿਤਾ ਗਲਤੀ"
|
msgstr "ਪਰਮਾਣਕਿਤਾ ਗਲਤੀ"
|
||||||
|
|
||||||
#. We don't show fingerprint messages directly since it's
|
|
||||||
#. not the main auth service. Instead we use the messages
|
|
||||||
#. as a cue to display our own message.
|
|
||||||
#. Translators: this message is shown below the password entry field
|
|
||||||
#. to indicate the user can swipe their finger instead
|
|
||||||
#: ../js/gdm/util.js:436
|
#: ../js/gdm/util.js:436
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(ਜਾਂ ਉਂਗਲ ਰੱਖੋ)"
|
msgstr "(ਜਾਂ ਉਂਗਲ ਰੱਖੋ)"
|
||||||
@ -351,14 +328,12 @@ msgstr "(ਜਾਂ ਉਂਗਲ ਰੱਖੋ)"
|
|||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "ਕਮਾਂਡ ਨਹੀਂ ਲੱਭੀ"
|
msgstr "ਕਮਾਂਡ ਨਹੀਂ ਲੱਭੀ"
|
||||||
|
|
||||||
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
|
||||||
#. something nicer
|
|
||||||
#: ../js/misc/util.js:131
|
#: ../js/misc/util.js:131
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "ਕਮਾਂਡ ਪਾਰਸ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ:"
|
msgstr "ਕਮਾਂਡ ਪਾਰਸ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:139
|
#: ../js/misc/util.js:139
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "'%s' ਚਲਾਉਣ ਲਈ ਫੇਲ੍ਹ:"
|
msgstr "'%s' ਚਲਾਉਣ ਲਈ ਫੇਲ੍ਹ:"
|
||||||
|
|
||||||
@ -387,16 +362,16 @@ msgid "Add to Favorites"
|
|||||||
msgstr "ਪਸੰਦ 'ਚ ਸ਼ਾਮਲ ਕਰੋ"
|
msgstr "ਪਸੰਦ 'ਚ ਸ਼ਾਮਲ ਕਰੋ"
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:87
|
#: ../js/ui/appFavorites.js:87
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has been added to your favorites."
|
msgid "%s has been added to your favorites."
|
||||||
msgstr "%s ਨੂੰ ਤੁਹਾਡੀ ਪਸੰਦ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ।"
|
msgstr "%s ਨੂੰ ਤੁਹਾਡੀ ਪਸੰਦ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ।"
|
||||||
|
|
||||||
#: ../js/ui/appFavorites.js:121
|
#: ../js/ui/appFavorites.js:121
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s ਨੂੰ ਤੁਹਾਡੀ ਪਸੰਦ ਤੋਂ ਹਟਾਇਆ ਜਾ ਚੁੱਕਿਆ ਹੈ।"
|
msgstr "%s ਨੂੰ ਤੁਹਾਡੀ ਪਸੰਦ ਤੋਂ ਹਟਾਇਆ ਜਾ ਚੁੱਕਿਆ ਹੈ।"
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "ਸੈਟਿੰਗ"
|
msgstr "ਸੈਟਿੰਗ"
|
||||||
@ -407,68 +382,68 @@ msgstr "…ਬੈਕਗਰਾਊਂਡ ਬਦਲੋ"
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:62
|
#: ../js/ui/calendar.js:62
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "ਸਭ ਦਿਨ"
|
msgstr "ਸਭ ਦਿਨ"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 24h format,
|
#. Translators: Shown in calendar event list, if 24h format,
|
||||||
#. \u2236 is a ratio character, similar to :
|
#. \u2236 is a ratio character, similar to : */
|
||||||
#: ../js/ui/calendar.js:68
|
#: ../js/ui/calendar.js:68
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%H\\u2236%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H\\u2236%M"
|
msgstr "%H∶%M"
|
||||||
|
|
||||||
#. Translators: Shown in calendar event list, if 12h format,
|
#. Translators: Shown in calendar event list, if 12h format,
|
||||||
#. \u2236 is a ratio character, similar to : and \u2009 is
|
#. \u2236 is a ratio character, similar to : and \u2009 is
|
||||||
#. a thin space
|
#. a thin space */
|
||||||
#: ../js/ui/calendar.js:77
|
#: ../js/ui/calendar.js:77
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "%l\\u2236%M\\u2009%p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%l\\u2236%M\\u2009%p"
|
msgstr "%l∶%M %p"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Sunday.
|
#. Translators: Calendar grid abbreviation for Sunday.
|
||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:108
|
#: ../js/ui/calendar.js:108
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "ਐ"
|
msgstr "ਐ"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday
|
#. Translators: Calendar grid abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:110
|
#: ../js/ui/calendar.js:110
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "ਸੋ"
|
msgstr "ਸੋ"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday
|
#. Translators: Calendar grid abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:112
|
#: ../js/ui/calendar.js:112
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "ਮੰ"
|
msgstr "ਮੰ"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday
|
#. Translators: Calendar grid abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:114
|
#: ../js/ui/calendar.js:114
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "ਬੁੱ"
|
msgstr "ਬੁੱ"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday
|
#. Translators: Calendar grid abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:116
|
#: ../js/ui/calendar.js:116
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "ਵੀ"
|
msgstr "ਵੀ"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday
|
#. Translators: Calendar grid abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:118
|
#: ../js/ui/calendar.js:118
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "ਸ਼ੁੱ"
|
msgstr "ਸ਼ੁੱ"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday
|
#. Translators: Calendar grid abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:120
|
#: ../js/ui/calendar.js:120
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -479,48 +454,52 @@ msgstr "ਸ਼"
|
|||||||
#. * NOTE: These list abbreviations are normally not shown together
|
#. * NOTE: These list abbreviations are normally not shown together
|
||||||
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
#. * so they need to be unique (e.g. Tuesday and Thursday cannot
|
||||||
#. * both be 'T').
|
#. * both be 'T').
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/calendar.js:133
|
#: ../js/ui/calendar.js:133
|
||||||
msgctxt "list sunday"
|
msgctxt "list sunday"
|
||||||
msgid "Su"
|
msgid "Su"
|
||||||
msgstr "ਐ"
|
msgstr "ਐ"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Monday
|
#. Translators: Event list abbreviation for Monday */
|
||||||
#: ../js/ui/calendar.js:135
|
#: ../js/ui/calendar.js:135
|
||||||
msgctxt "list monday"
|
msgctxt "list monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "ਸੋ"
|
msgstr "ਸੋ"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Tuesday
|
#. Translators: Event list abbreviation for Tuesday */
|
||||||
#: ../js/ui/calendar.js:137
|
#: ../js/ui/calendar.js:137
|
||||||
msgctxt "list tuesday"
|
msgctxt "list tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "ਮੰ"
|
msgstr "ਮੰ"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Wednesday
|
#. Translators: Event list abbreviation for Wednesday */
|
||||||
#: ../js/ui/calendar.js:139
|
#: ../js/ui/calendar.js:139
|
||||||
msgctxt "list wednesday"
|
msgctxt "list wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "ਬੁੱ"
|
msgstr "ਬੁੱ"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Thursday
|
#. Translators: Event list abbreviation for Thursday */
|
||||||
#: ../js/ui/calendar.js:141
|
#: ../js/ui/calendar.js:141
|
||||||
msgctxt "list thursday"
|
msgctxt "list thursday"
|
||||||
msgid "Th"
|
msgid "Th"
|
||||||
msgstr "ਵੀ"
|
msgstr "ਵੀ"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Friday
|
#. Translators: Event list abbreviation for Friday */
|
||||||
#: ../js/ui/calendar.js:143
|
#: ../js/ui/calendar.js:143
|
||||||
msgctxt "list friday"
|
msgctxt "list friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "ਸ਼ੁੱ"
|
msgstr "ਸ਼ੁੱ"
|
||||||
|
|
||||||
#. Translators: Event list abbreviation for Saturday
|
#. Translators: Event list abbreviation for Saturday */
|
||||||
#: ../js/ui/calendar.js:145
|
#: ../js/ui/calendar.js:145
|
||||||
msgctxt "list saturday"
|
msgctxt "list saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "ਸ਼"
|
msgstr "ਸ਼"
|
||||||
|
|
||||||
|
#: ../js/ui/calendar.js:389
|
||||||
|
msgid "calendar:MY"
|
||||||
|
msgstr "calendar:MY"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:447
|
#: ../js/ui/calendar.js:447
|
||||||
msgid "Previous month"
|
msgid "Previous month"
|
||||||
msgstr "ਪਿੱਛੇ ਮਹੀਨੇ"
|
msgstr "ਪਿੱਛੇ ਮਹੀਨੇ"
|
||||||
@ -529,18 +508,18 @@ msgstr "ਪਿੱਛੇ ਮਹੀਨੇ"
|
|||||||
msgid "Next month"
|
msgid "Next month"
|
||||||
msgstr "ਅਗਲੇ ਮਹੀਨੇ"
|
msgstr "ਅਗਲੇ ਮਹੀਨੇ"
|
||||||
|
|
||||||
#. Translators: Text to show if there are no events
|
#. Translators: Text to show if there are no events */
|
||||||
#: ../js/ui/calendar.js:753
|
#: ../js/ui/calendar.js:753
|
||||||
msgid "Nothing Scheduled"
|
msgid "Nothing Scheduled"
|
||||||
msgstr "ਕੋਈ ਵੀ ਸੈਡਿਊਲ ਨਹੀਂ ਹੈ"
|
msgstr "ਕੋਈ ਵੀ ਸੈਡਿਊਲ ਨਹੀਂ ਹੈ"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on current year
|
#. Translators: Shown on calendar heading when selected day occurs on current year */
|
||||||
#: ../js/ui/calendar.js:771
|
#: ../js/ui/calendar.js:771
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#. Translators: Shown on calendar heading when selected day occurs on different year
|
#. Translators: Shown on calendar heading when selected day occurs on different year */
|
||||||
#: ../js/ui/calendar.js:774
|
#: ../js/ui/calendar.js:774
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
@ -575,7 +554,7 @@ msgid "Removable Devices"
|
|||||||
msgstr "ਹਟਾਉਣਯੋਗ ਜੰਤਰ"
|
msgstr "ਹਟਾਉਣਯੋਗ ਜੰਤਰ"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:594
|
#: ../js/ui/components/autorunManager.js:594
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "%s ਨਾਲ ਖੋਲ੍ਹੋ"
|
msgstr "%s ਨਾਲ ਖੋਲ੍ਹੋ"
|
||||||
|
|
||||||
@ -592,11 +571,10 @@ msgid "Type again:"
|
|||||||
msgstr "ਮੁੜ-ਕੋਸ਼ਿਸ਼:"
|
msgstr "ਮੁੜ-ਕੋਸ਼ਿਸ਼:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:695
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "ਕੁਨੈਕਟ ਕਰੋ"
|
msgstr "ਕੁਨੈਕਟ ਕਰੋ"
|
||||||
|
|
||||||
#. Cisco LEAP
|
|
||||||
#: ../js/ui/components/networkAgent.js:222
|
#: ../js/ui/components/networkAgent.js:222
|
||||||
#: ../js/ui/components/networkAgent.js:234
|
#: ../js/ui/components/networkAgent.js:234
|
||||||
#: ../js/ui/components/networkAgent.js:261
|
#: ../js/ui/components/networkAgent.js:261
|
||||||
@ -605,7 +583,6 @@ msgstr "ਕੁਨੈਕਟ ਕਰੋ"
|
|||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "ਪਾਸਵਰਡ: "
|
msgstr "ਪਾਸਵਰਡ: "
|
||||||
|
|
||||||
#. static WEP
|
|
||||||
#: ../js/ui/components/networkAgent.js:227
|
#: ../js/ui/components/networkAgent.js:227
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "ਸਵਿੱਚ: "
|
msgstr "ਸਵਿੱਚ: "
|
||||||
@ -627,7 +604,7 @@ msgid "Authentication required by wireless network"
|
|||||||
msgstr "ਬੇਤਾਰ ਨੈੱਟਵਰਕ ਲਈ ਪਰਮਾਣਕਿਤਾ ਚਾਹੀਦੀ ਹੈ"
|
msgstr "ਬੇਤਾਰ ਨੈੱਟਵਰਕ ਲਈ ਪਰਮਾਣਕਿਤਾ ਚਾਹੀਦੀ ਹੈ"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:309
|
#: ../js/ui/components/networkAgent.js:309
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Passwords or encryption keys are required to access the wireless network "
|
"Passwords or encryption keys are required to access the wireless network "
|
||||||
"'%s'."
|
"'%s'."
|
||||||
@ -662,7 +639,7 @@ msgid "Mobile broadband network password"
|
|||||||
msgstr "ਮੋਬਾਇਲ ਬਰਾਡਬੈਂਡ ਨੈੱਟਵਰਕ ਪਾਸਵਰਡ"
|
msgstr "ਮੋਬਾਇਲ ਬਰਾਡਬੈਂਡ ਨੈੱਟਵਰਕ ਪਾਸਵਰਡ"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:336
|
#: ../js/ui/components/networkAgent.js:336
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "A password is required to connect to '%s'."
|
msgid "A password is required to connect to '%s'."
|
||||||
msgstr "'%s' ਨਾਲ ਕੁਨੈਕਟ ਹੋਣ ਲਈ ਪਾਸਵਰਡ ਦੀ ਲੋੜ ਹੈ। "
|
msgstr "'%s' ਨਾਲ ਕੁਨੈਕਟ ਹੋਣ ਲਈ ਪਾਸਵਰਡ ਦੀ ਲੋੜ ਹੈ। "
|
||||||
|
|
||||||
@ -681,23 +658,19 @@ msgstr "ਪਰਮਾਣਿਤ"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance.
|
#. * for instance. */
|
||||||
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
#: ../js/ui/components/polkitAgent.js:266 ../js/ui/shellMountOperation.js:383
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "ਅਫਸੋਸ, ਉਹ ਕੰਮ ਨਹੀਂ ਕਰਦਾ। ਫੇਰ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਜੀ।"
|
msgstr "ਅਫਸੋਸ, ਉਹ ਕੰਮ ਨਹੀਂ ਕਰਦਾ। ਫੇਰ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਜੀ।"
|
||||||
|
|
||||||
#. FIXME: We don't have a 'chat room' icon (bgo #653737) use
|
|
||||||
#. system-users for now as Empathy does.
|
|
||||||
#: ../js/ui/components/telepathyClient.js:238
|
#: ../js/ui/components/telepathyClient.js:238
|
||||||
msgid "Invitation"
|
msgid "Invitation"
|
||||||
msgstr "ਸੱਦਾ"
|
msgstr "ਸੱਦਾ"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:298
|
#: ../js/ui/components/telepathyClient.js:298
|
||||||
msgid "Call"
|
msgid "Call"
|
||||||
msgstr "ਕਾਲ ਕਰੋ"
|
msgstr "ਕਾਲ ਕਰੋ"
|
||||||
|
|
||||||
#. We got the TpContact
|
|
||||||
#: ../js/ui/components/telepathyClient.js:314
|
#: ../js/ui/components/telepathyClient.js:314
|
||||||
msgid "File Transfer"
|
msgid "File Transfer"
|
||||||
msgstr "ਫਾਇਲ ਟਰਾਂਸਫਰ"
|
msgstr "ਫਾਇਲ ਟਰਾਂਸਫਰ"
|
||||||
@ -714,49 +687,45 @@ msgstr "ਸੁਣਾਓ"
|
|||||||
msgid "Mute"
|
msgid "Mute"
|
||||||
msgstr "ਚੁੱਪ"
|
msgstr "ਚੁੱਪ"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"
|
#. Translators: this is the word "Yesterday" followed by a time string. i.e. "Yesterday, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:942
|
#: ../js/ui/components/telepathyClient.js:942
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
msgid "<b>Yesterday</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>ਕੱਲ੍ਹ</b>, <b>%H:%M</b>"
|
msgstr "<b>ਕੱਲ੍ਹ</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30
|
#. Translators: this is the week day name followed by a time string. i.e. "Monday, 14:30*/
|
||||||
#: ../js/ui/components/telepathyClient.js:948
|
#: ../js/ui/components/telepathyClient.js:948
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%A</b>, <b>%H:%M</b>"
|
msgid "<b>%A</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
msgstr "<b>%A</b>, <b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"
|
#. Translators: this is the month name and day number followed by a time string. i.e. "May 25, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:953
|
#: ../js/ui/components/telepathyClient.js:953
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
msgid "<b>%B</b> <b>%d</b>, <b>%H:%M</b>"
|
||||||
msgstr "<b>%d</b> <b>%B</b>,<b>%H:%M</b>"
|
msgstr "<b>%d</b> <b>%B</b>,<b>%H:%M</b>"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"
|
#. Translators: this is the month name, day number, year number followed by a time string. i.e. "May 25 2012, 14:30"*/
|
||||||
#: ../js/ui/components/telepathyClient.js:957
|
#: ../js/ui/components/telepathyClient.js:957
|
||||||
#, no-c-format
|
|
||||||
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgid "<b>%B</b> <b>%d</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
msgstr "<b>%d</b> <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
msgstr "<b>%d</b> <b>%B</b> <b>%Y</b>, <b>%H:%M</b> "
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name.
|
#. IM name. */
|
||||||
#: ../js/ui/components/telepathyClient.js:986
|
#: ../js/ui/components/telepathyClient.js:986
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
msgstr "%s ਨੂੰ ਹੁਣ %s ਵਜੋਂ ਜਾਣਿਆ ਜਾਵੇਗਾ"
|
msgstr "%s ਨੂੰ ਹੁਣ %s ਵਜੋਂ ਜਾਣਿਆ ਜਾਵੇਗਾ"
|
||||||
|
|
||||||
#. translators: argument is a room name like
|
#. translators: argument is a room name like
|
||||||
#. * room@jabber.org for example.
|
#. * room@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1089
|
#: ../js/ui/components/telepathyClient.js:1089
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Invitation to %s"
|
msgid "Invitation to %s"
|
||||||
msgstr "%s ਲਈ ਸੱਦਾ"
|
msgstr "%s ਲਈ ਸੱਦਾ"
|
||||||
|
|
||||||
#. translators: first argument is the name of a contact and the second
|
#. 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
|
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||||
#. * for example.
|
#. * for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1097
|
#: ../js/ui/components/telepathyClient.js:1097
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is inviting you to join %s"
|
msgid "%s is inviting you to join %s"
|
||||||
msgstr "%s ਤੁਹਾਨੂੰ %s ਜੁਆਇੰਨ ਕਰਨ ਲਈ ਸੱਦ ਰਿਹਾ ਹੈ"
|
msgstr "%s ਤੁਹਾਨੂੰ %s ਜੁਆਇੰਨ ਕਰਨ ਲਈ ਸੱਦ ਰਿਹਾ ਹੈ"
|
||||||
|
|
||||||
@ -773,19 +742,19 @@ msgstr "ਇਨਕਾਰ"
|
|||||||
msgid "Accept"
|
msgid "Accept"
|
||||||
msgstr "ਮਨਜ਼ੂਰ"
|
msgstr "ਮਨਜ਼ੂਰ"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1130
|
#: ../js/ui/components/telepathyClient.js:1130
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Video call from %s"
|
msgid "Video call from %s"
|
||||||
msgstr "%s ਵਲੋਂ ਵਿਡੀਓ ਕਾਲ"
|
msgstr "%s ਵਲੋਂ ਵਿਡੀਓ ਕਾਲ"
|
||||||
|
|
||||||
#. translators: argument is a contact name like Alice for example.
|
#. translators: argument is a contact name like Alice for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1133
|
#: ../js/ui/components/telepathyClient.js:1133
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Call from %s"
|
msgid "Call from %s"
|
||||||
msgstr "%s ਵਲੋਂ ਕਾਲ"
|
msgstr "%s ਵਲੋਂ ਕਾਲ"
|
||||||
|
|
||||||
#. translators: this is a button label (verb), not a noun
|
#. translators: this is a button label (verb), not a noun */
|
||||||
#: ../js/ui/components/telepathyClient.js:1142
|
#: ../js/ui/components/telepathyClient.js:1142
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "ਜਵਾਬ ਦਿਓ"
|
msgstr "ਜਵਾਬ ਦਿਓ"
|
||||||
@ -794,15 +763,15 @@ msgstr "ਜਵਾਬ ਦਿਓ"
|
|||||||
#. * the contact's alias and the second one is the
|
#. * the contact's alias and the second one is the
|
||||||
#. * file name. The string will be something
|
#. * file name. The string will be something
|
||||||
#. * like: "Alice is sending you test.ogg"
|
#. * like: "Alice is sending you test.ogg"
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1174
|
#: ../js/ui/components/telepathyClient.js:1174
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s is sending you %s"
|
msgid "%s is sending you %s"
|
||||||
msgstr "%s ਤੁਹਾਨੂੰ %s ਭੇਜ ਰਿਹਾ/ਰਹੀ ਹੈ"
|
msgstr "%s ਤੁਹਾਨੂੰ %s ਭੇਜ ਰਿਹਾ/ਰਹੀ ਹੈ"
|
||||||
|
|
||||||
#. To translators: The parameter is the contact's alias
|
#. To translators: The parameter is the contact's alias */
|
||||||
#: ../js/ui/components/telepathyClient.js:1209
|
#: ../js/ui/components/telepathyClient.js:1209
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s would like permission to see when you are online"
|
msgid "%s would like permission to see when you are online"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"%s ਤੁਹਾਨੂੰ ਵੇਖਣ ਦਾ ਅਧਿਕਾਰ ਚਾਹੁੰਦਾ/ਚਾਹੁੰਦੀ ਹੈ, ਜਦੋਂ ਵੀ ਤੁਸੀਂ ਆਨਲਾਈਨ ਹੋਵੋ"
|
"%s ਤੁਹਾਨੂੰ ਵੇਖਣ ਦਾ ਅਧਿਕਾਰ ਚਾਹੁੰਦਾ/ਚਾਹੁੰਦੀ ਹੈ, ਜਦੋਂ ਵੀ ਤੁਸੀਂ ਆਨਲਾਈਨ ਹੋਵੋ"
|
||||||
@ -912,9 +881,9 @@ msgid "Internal error"
|
|||||||
msgstr "ਅੰਦਰੂਨੀ ਗਲਤੀ"
|
msgstr "ਅੰਦਰੂਨੀ ਗਲਤੀ"
|
||||||
|
|
||||||
#. translators: argument is the account name, like
|
#. translators: argument is the account name, like
|
||||||
#. * name@jabber.org for example.
|
#. * name@jabber.org for example. */
|
||||||
#: ../js/ui/components/telepathyClient.js:1357
|
#: ../js/ui/components/telepathyClient.js:1357
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Unable to connect to %s"
|
msgid "Unable to connect to %s"
|
||||||
msgstr "%s ਨਾਲ ਕੁਨੈਕਟ ਹੋਣ ਲਈ ਅਸਮਰੱਥ"
|
msgstr "%s ਨਾਲ ਕੁਨੈਕਟ ਹੋਣ ਲਈ ਅਸਮਰੱਥ"
|
||||||
|
|
||||||
@ -934,8 +903,6 @@ msgstr "ਵਿੰਡੋ"
|
|||||||
msgid "Show Applications"
|
msgid "Show Applications"
|
||||||
msgstr "ਐਪਲੀਕੇਸ਼ਨ ਵੇਖੋ"
|
msgstr "ਐਪਲੀਕੇਸ਼ਨ ਵੇਖੋ"
|
||||||
|
|
||||||
#. Translators: this is the name of the dock/favorites area on
|
|
||||||
#. the left of the overview
|
|
||||||
#: ../js/ui/dash.js:442
|
#: ../js/ui/dash.js:442
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "ਡੈਸ਼"
|
msgstr "ਡੈਸ਼"
|
||||||
@ -954,13 +921,13 @@ msgstr "ਮਿਤੀ ਤੇ ਸਮਾਂ ਸੈਟਿੰਗ"
|
|||||||
|
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. 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").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/dateMenu.js:202
|
#: ../js/ui/dateMenu.js:202
|
||||||
msgid "%A %B %e, %Y"
|
msgid "%A %B %e, %Y"
|
||||||
msgstr "%A, %e %B %Y"
|
msgstr "%A, %e %B %Y"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:62
|
#: ../js/ui/endSessionDialog.js:62
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgctxt "title"
|
msgctxt "title"
|
||||||
msgid "Log Out %s"
|
msgid "Log Out %s"
|
||||||
msgstr "%s ਲਾਗਆਉਟ"
|
msgstr "%s ਲਾਗਆਉਟ"
|
||||||
@ -971,14 +938,14 @@ msgid "Log Out"
|
|||||||
msgstr "ਲਾਗਆਉਟ"
|
msgstr "ਲਾਗਆਉਟ"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:65
|
#: ../js/ui/endSessionDialog.js:65
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s will be logged out automatically in %d second."
|
msgid "%s will be logged out automatically in %d second."
|
||||||
msgid_plural "%s will be logged out automatically in %d seconds."
|
msgid_plural "%s will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "%s ਨੂੰ %d ਸਕਿੰਟ ਵਿੱਚ ਆਟੋਮੈਟਿਕ ਹੀ ਲਾਗ ਆਉਟ ਕੀਤਾ ਜਾਵੇਗਾ।"
|
msgstr[0] "%s ਨੂੰ %d ਸਕਿੰਟ ਵਿੱਚ ਆਟੋਮੈਟਿਕ ਹੀ ਲਾਗ ਆਉਟ ਕੀਤਾ ਜਾਵੇਗਾ।"
|
||||||
msgstr[1] "%s ਨੂੰ %d ਸਕਿੰਟਾਂ ਵਿੱਚ ਆਟੋਮੈਟਿਕ ਹੀ ਲਾਗ ਆਉਟ ਕੀਤਾ ਜਾਵੇਗਾ।"
|
msgstr[1] "%s ਨੂੰ %d ਸਕਿੰਟਾਂ ਵਿੱਚ ਆਟੋਮੈਟਿਕ ਹੀ ਲਾਗ ਆਉਟ ਕੀਤਾ ਜਾਵੇਗਾ।"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:70
|
#: ../js/ui/endSessionDialog.js:70
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "You will be logged out automatically in %d second."
|
msgid "You will be logged out automatically in %d second."
|
||||||
msgid_plural "You will be logged out automatically in %d seconds."
|
msgid_plural "You will be logged out automatically in %d seconds."
|
||||||
msgstr[0] "ਤੁਹਾਨੂੰ %d ਸਕਿੰਟ ਵਿੱਚ ਆਟੋਮੈਟਿਕ ਹੀ ਲਾਗਆਉਟ ਕਰ ਦਿੱਤਾ ਜਾਵੇਗਾ।"
|
msgstr[0] "ਤੁਹਾਨੂੰ %d ਸਕਿੰਟ ਵਿੱਚ ਆਟੋਮੈਟਿਕ ਹੀ ਲਾਗਆਉਟ ਕਰ ਦਿੱਤਾ ਜਾਵੇਗਾ।"
|
||||||
@ -995,7 +962,7 @@ msgid "Power Off"
|
|||||||
msgstr "ਬੰਦ ਕਰੋ"
|
msgstr "ਬੰਦ ਕਰੋ"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:83
|
#: ../js/ui/endSessionDialog.js:83
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will power off automatically in %d second."
|
msgid "The system will power off automatically in %d second."
|
||||||
msgid_plural "The system will power off automatically in %d seconds."
|
msgid_plural "The system will power off automatically in %d seconds."
|
||||||
msgstr[0] "ਸਿਸਟਮ ਨੂੰ ਆਟੋਮੈਟਿਕ ਹੀ %d ਸਕਿੰਟ ਵਿੱਚ ਬੰਦ ਕੀਤਾ ਜਾਵੇਗਾ।"
|
msgstr[0] "ਸਿਸਟਮ ਨੂੰ ਆਟੋਮੈਟਿਕ ਹੀ %d ਸਕਿੰਟ ਵਿੱਚ ਬੰਦ ਕੀਤਾ ਜਾਵੇਗਾ।"
|
||||||
@ -1017,7 +984,7 @@ msgid "Restart"
|
|||||||
msgstr "ਮੁੜ-ਚਾਲੂ ਕਰੋ"
|
msgstr "ਮੁੜ-ਚਾਲੂ ਕਰੋ"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:99
|
#: ../js/ui/endSessionDialog.js:99
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will restart automatically in %d second."
|
msgid "The system will restart automatically in %d second."
|
||||||
msgid_plural "The system will restart automatically in %d seconds."
|
msgid_plural "The system will restart automatically in %d seconds."
|
||||||
msgstr[0] "ਸਿਸਟਮ ਨੂੰ ਆਟੋਮੈਟਿਕ ਹੀ %d ਸਕਿੰਟ ਵਿੱਚ ਮੁੜ-ਚਾਲੂ ਕੀਤਾ ਜਾਵੇਗਾ।"
|
msgstr[0] "ਸਿਸਟਮ ਨੂੰ ਆਟੋਮੈਟਿਕ ਹੀ %d ਸਕਿੰਟ ਵਿੱਚ ਮੁੜ-ਚਾਲੂ ਕੀਤਾ ਜਾਵੇਗਾ।"
|
||||||
@ -1029,7 +996,7 @@ msgid "Restart & Install Updates"
|
|||||||
msgstr "ਮੁੜ-ਚਾਲੂ ਕਰੋ ਤੇ ਅੱਪਡੇਟ ਇੰਸਟਾਲ ਕਰੋ"
|
msgstr "ਮੁੜ-ਚਾਲੂ ਕਰੋ ਤੇ ਅੱਪਡੇਟ ਇੰਸਟਾਲ ਕਰੋ"
|
||||||
|
|
||||||
#: ../js/ui/endSessionDialog.js:114
|
#: ../js/ui/endSessionDialog.js:114
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "The system will automatically restart and install updates in %d second."
|
msgid "The system will automatically restart and install updates in %d second."
|
||||||
msgid_plural ""
|
msgid_plural ""
|
||||||
"The system will automatically restart and install updates in %d seconds."
|
"The system will automatically restart and install updates in %d seconds."
|
||||||
@ -1051,15 +1018,15 @@ msgstr "ਕੁਝ ਐਪਲੀਕੇਸ਼ਨ ਰੁੱਝੀਆਂ ਹਨ ਜਾ
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "ਹੋਰ ਯੂਜ਼ਰ ਲਾਗਇਨ ਹੈ।"
|
msgstr "ਹੋਰ ਯੂਜ਼ਰ ਲਾਗਇਨ ਹੈ।"
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login
|
#. Translators: Remote here refers to a remote session, like a ssh login */
|
||||||
#: ../js/ui/endSessionDialog.js:479
|
#: ../js/ui/endSessionDialog.js:479
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (ਰਿਮੋਟ)"
|
msgstr "%s (ਰਿਮੋਟ)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console
|
#. Translators: Console here refers to a tty like a VT console */
|
||||||
#: ../js/ui/endSessionDialog.js:482
|
#: ../js/ui/endSessionDialog.js:482
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
msgstr "%s (ਕਨਸੋਲ)"
|
msgstr "%s (ਕਨਸੋਲ)"
|
||||||
|
|
||||||
@ -1068,11 +1035,11 @@ msgid "Install"
|
|||||||
msgstr "ਇੰਸਟਾਲ ਕਰੋ"
|
msgstr "ਇੰਸਟਾਲ ਕਰੋ"
|
||||||
|
|
||||||
#: ../js/ui/extensionDownloader.js:204
|
#: ../js/ui/extensionDownloader.js:204
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||||
msgstr "ਕੀ extensions.gnome.org ਤੋਂ '%s' ਡਾਊਨਲੋਡ ਅਤੇ ਇੰਸਟਾਲ ਕਰਨੀ ਹੈ?"
|
msgstr "ਕੀ extensions.gnome.org ਤੋਂ '%s' ਡਾਊਨਲੋਡ ਅਤੇ ਇੰਸਟਾਲ ਕਰਨੀ ਹੈ?"
|
||||||
|
|
||||||
#: ../js/ui/keyboard.js:619 ../js/ui/status/keyboard.js:333
|
#: ../js/ui/keyboard.js:619
|
||||||
msgid "Keyboard"
|
msgid "Keyboard"
|
||||||
msgstr "ਕੀਬੋਰਡ"
|
msgstr "ਕੀਬੋਰਡ"
|
||||||
|
|
||||||
@ -1080,9 +1047,9 @@ msgstr "ਕੀਬੋਰਡ"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "ਕੋਈ ਇਕਸਟੈਨਸ਼ਨ ਇੰਸਟਾਲ ਨਹੀਂ ਹੈ"
|
msgstr "ਕੋਈ ਇਕਸਟੈਨਸ਼ਨ ਇੰਸਟਾਲ ਨਹੀਂ ਹੈ"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID.
|
#. Translators: argument is an extension UUID. */
|
||||||
#: ../js/ui/lookingGlass.js:743
|
#: ../js/ui/lookingGlass.js:743
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
msgstr "%s ਨੇ ਕੋਈ ਗਲਤੀ ਨਹੀਂ ਦਿੱਤੀ।"
|
msgstr "%s ਨੇ ਕੋਈ ਗਲਤੀ ਨਹੀਂ ਦਿੱਤੀ।"
|
||||||
|
|
||||||
@ -1162,7 +1129,7 @@ msgid "Unknown"
|
|||||||
msgstr "ਅਣਜਾਣ"
|
msgstr "ਅਣਜਾਣ"
|
||||||
|
|
||||||
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
#: ../js/ui/overviewControls.js:491 ../js/ui/screenShield.js:152
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d new message"
|
msgid "%d new message"
|
||||||
msgid_plural "%d new messages"
|
msgid_plural "%d new messages"
|
||||||
msgstr[0] "%d ਨਵਾਂ ਸੁਨੇਹਾ"
|
msgstr[0] "%d ਨਵਾਂ ਸੁਨੇਹਾ"
|
||||||
@ -1179,7 +1146,7 @@ msgstr "ਸੰਖੇਪ"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters.
|
#. characters. */
|
||||||
#: ../js/ui/overview.js:258
|
#: ../js/ui/overview.js:258
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "…ਲੱਭਣ ਲਈ ਲਿਖੋ"
|
msgstr "…ਲੱਭਣ ਲਈ ਲਿਖੋ"
|
||||||
@ -1189,20 +1156,15 @@ msgid "Quit"
|
|||||||
msgstr "ਬਾਹਰ"
|
msgstr "ਬਾਹਰ"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview". */
|
||||||
#: ../js/ui/panel.js:570
|
#: ../js/ui/panel.js:570
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "ਸਰਗਰਮੀਆਂ"
|
msgstr "ਸਰਗਰਮੀਆਂ"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "ਉੱਤਲੀ ਪੱਟੀ"
|
msgstr "ਉੱਤਲੀ ਪੱਟੀ"
|
||||||
|
|
||||||
#. Translators: this MUST be either "toggle-switch-us"
|
|
||||||
#. (for toggle switches containing the English words
|
|
||||||
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
|
||||||
#. switches containing "◯" and "|"). Other values will
|
|
||||||
#. simply result in invisible toggle switches.
|
|
||||||
#: ../js/ui/popupMenu.js:233
|
#: ../js/ui/popupMenu.js:233
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-us"
|
msgstr "toggle-switch-us"
|
||||||
@ -1216,13 +1178,13 @@ msgid "Close"
|
|||||||
msgstr "ਬੰਦ ਕਰੋ"
|
msgstr "ਬੰਦ ਕਰੋ"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format
|
#. long format */
|
||||||
#: ../js/ui/screenShield.js:88
|
#: ../js/ui/screenShield.js:88
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#: ../js/ui/screenShield.js:154
|
#: ../js/ui/screenShield.js:154
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d new notification"
|
msgid "%d new notification"
|
||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "%d ਨਵਾਂ ਸੂਚਨਾ"
|
msgstr[0] "%d ਨਵਾਂ ਸੂਚਨਾ"
|
||||||
@ -1236,13 +1198,6 @@ msgstr "ਲਾਕ"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "ਗਨੋਮ ਨੂੰ ਸਕਰੀਨ ਲਾਕ ਕਰਨ ਦੀ ਲੋੜ ਹੈ"
|
msgstr "ਗਨੋਮ ਨੂੰ ਸਕਰੀਨ ਲਾਕ ਕਰਨ ਦੀ ਲੋੜ ਹੈ"
|
||||||
|
|
||||||
#. We could not become modal, so we can't activate the
|
|
||||||
#. screenshield. The user is probably very upset at this
|
|
||||||
#. point, but any application using global grabs is broken
|
|
||||||
#. Just tell him to stop using this app
|
|
||||||
#.
|
|
||||||
#. XXX: another option is to kick the user into the gdm login
|
|
||||||
#. screen, where we're not affected by grabs
|
|
||||||
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
#: ../js/ui/screenShield.js:831 ../js/ui/screenShield.js:1297
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "ਅਣਲਾਕ ਕਰਨ ਲਈ ਅਸਮਰੱਥ"
|
msgstr "ਅਣਲਾਕ ਕਰਨ ਲਈ ਅਸਮਰੱਥ"
|
||||||
@ -1251,11 +1206,11 @@ msgstr "ਅਣਲਾਕ ਕਰਨ ਲਈ ਅਸਮਰੱਥ"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "ਲਾਕ ਨੂੰ ਐਪਲੀਕੇਸ਼ਨ ਵਲੋਂ ਪਾਬੰਦੀ ਲਗਾਈ"
|
msgstr "ਲਾਕ ਨੂੰ ਐਪਲੀਕੇਸ਼ਨ ਵਲੋਂ ਪਾਬੰਦੀ ਲਗਾਈ"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "…ਖੋਜ ਜਾਰੀ ਹੈ"
|
msgstr "…ਖੋਜ ਜਾਰੀ ਹੈ"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "ਕੋਈ ਨਤੀਜਾ ਨਹੀਂ।"
|
msgstr "ਕੋਈ ਨਤੀਜਾ ਨਹੀਂ।"
|
||||||
|
|
||||||
@ -1327,8 +1282,6 @@ msgstr "ਵੱਧ ਕਨਟਰਾਸਟ"
|
|||||||
msgid "Large Text"
|
msgid "Large Text"
|
||||||
msgstr "ਵੱਡੇ ਅੱਖਰ"
|
msgstr "ਵੱਡੇ ਅੱਖਰ"
|
||||||
|
|
||||||
#. The Bluetooth menu only appears when Bluetooth is in use,
|
|
||||||
#. so just statically build it with a "Turn Off" menu item.
|
|
||||||
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
#: ../js/ui/status/bluetooth.js:28 ../js/ui/status/bluetooth.js:63
|
||||||
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
#: ../js/ui/status/bluetooth.js:100 ../js/ui/status/bluetooth.js:128
|
||||||
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
#: ../js/ui/status/bluetooth.js:164 ../js/ui/status/bluetooth.js:195
|
||||||
@ -1336,7 +1289,7 @@ msgid "Bluetooth"
|
|||||||
msgstr "ਬਲਿਊਟੁੱਥ"
|
msgstr "ਬਲਿਊਟੁੱਥ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1040 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "ਬੰਦ ਕਰੋ"
|
msgstr "ਬੰਦ ਕਰੋ"
|
||||||
|
|
||||||
@ -1345,20 +1298,20 @@ msgid "Bluetooth Settings"
|
|||||||
msgstr "ਬਲਿਊਟੁੱਥ ਸੈਟਿੰਗ"
|
msgstr "ਬਲਿਊਟੁੱਥ ਸੈਟਿੰਗ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:58
|
#: ../js/ui/status/bluetooth.js:58
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d Connected Device"
|
msgid "%d Connected Device"
|
||||||
msgid_plural "%d Connected Devices"
|
msgid_plural "%d Connected Devices"
|
||||||
msgstr[0] "%d ਕੁਨੈਕਟ ਹੋਇਆ ਜੰਤਰ"
|
msgstr[0] "%d ਕੁਨੈਕਟ ਹੋਇਆ ਜੰਤਰ"
|
||||||
msgstr[1] "%d ਕੁਨੈਕਟ ਹੋਏ ਜੰਤਰ"
|
msgstr[1] "%d ਕੁਨੈਕਟ ਹੋਏ ਜੰਤਰ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
#: ../js/ui/status/bluetooth.js:101 ../js/ui/status/bluetooth.js:129
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Authorization request from %s"
|
msgid "Authorization request from %s"
|
||||||
msgstr "'%s' ਤੋਂ ਪਰਮਾਣਕਿਤਾ ਮੰਗ"
|
msgstr "'%s' ਤੋਂ ਪਰਮਾਣਕਿਤਾ ਮੰਗ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
#: ../js/ui/status/bluetooth.js:107 ../js/ui/status/bluetooth.js:172
|
||||||
#: ../js/ui/status/bluetooth.js:203
|
#: ../js/ui/status/bluetooth.js:203
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Device %s wants to pair with this computer"
|
msgid "Device %s wants to pair with this computer"
|
||||||
msgstr "ਜੰਤਰ %s ਇਸ ਕੰਪਿਊਟਰ ਨਾਲ ਪੇਅਰ ਹੋਣਾ ਚਾਹੁੰਦਾ ਹੈ"
|
msgstr "ਜੰਤਰ %s ਇਸ ਕੰਪਿਊਟਰ ਨਾਲ ਪੇਅਰ ਹੋਣਾ ਚਾਹੁੰਦਾ ਹੈ"
|
||||||
|
|
||||||
@ -1371,7 +1324,7 @@ msgid "Deny"
|
|||||||
msgstr "ਇਨਕਾਰ"
|
msgstr "ਇਨਕਾਰ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:135
|
#: ../js/ui/status/bluetooth.js:135
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Device %s wants access to the service '%s'"
|
msgid "Device %s wants access to the service '%s'"
|
||||||
msgstr "ਜੰਤਰ %s ਸਰਵਿਸ '%s' ਨੂੰ ਵਰਤਣੀ ਚਾਹੁੰਦਾ ਹੈ।"
|
msgstr "ਜੰਤਰ %s ਸਰਵਿਸ '%s' ਨੂੰ ਵਰਤਣੀ ਚਾਹੁੰਦਾ ਹੈ।"
|
||||||
|
|
||||||
@ -1387,19 +1340,19 @@ msgstr "ਕੇਵਲ ਇਸ ਸਮੇਂ ਹੀ ਮਨਜ਼ੂਰ"
|
|||||||
msgid "Reject"
|
msgid "Reject"
|
||||||
msgstr "ਨਾ-ਮਨਜ਼ੂਰ"
|
msgstr "ਨਾ-ਮਨਜ਼ੂਰ"
|
||||||
|
|
||||||
#. Translators: argument is the device short name
|
#. Translators: argument is the device short name */
|
||||||
#: ../js/ui/status/bluetooth.js:166
|
#: ../js/ui/status/bluetooth.js:166
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Pairing confirmation for %s"
|
msgid "Pairing confirmation for %s"
|
||||||
msgstr "%s ਲਈ ਪੇਅਰ ਕਰਨ ਦੀ ਪੁਸ਼ਟੀ"
|
msgstr "%s ਲਈ ਪੇਅਰ ਕਰਨ ਦੀ ਪੁਸ਼ਟੀ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:173
|
#: ../js/ui/status/bluetooth.js:173
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
"Please confirm whether the Passkey '%06d' matches the one on the device."
|
||||||
msgstr "ਪੁਸ਼ਟੀ ਕਰੋ ਜੀ ਕਿ ਪਾਸ-ਕੀ '%06d' ਜੰਤਰ ਉੱਤੇ ਮੌਜੂਦ ਪਿੰਨ ਨਾਲ ਮਿਲਦਾ ਹੈ।"
|
msgstr "ਪੁਸ਼ਟੀ ਕਰੋ ਜੀ ਕਿ ਪਾਸ-ਕੀ '%06d' ਜੰਤਰ ਉੱਤੇ ਮੌਜੂਦ ਪਿੰਨ ਨਾਲ ਮਿਲਦਾ ਹੈ।"
|
||||||
|
|
||||||
#. Translators: this is the verb, not the noun
|
#. Translators: this is the verb, not the noun */
|
||||||
#: ../js/ui/status/bluetooth.js:176
|
#: ../js/ui/status/bluetooth.js:176
|
||||||
msgid "Matches"
|
msgid "Matches"
|
||||||
msgstr "ਮਿਲਦਾ ਹੈ"
|
msgstr "ਮਿਲਦਾ ਹੈ"
|
||||||
@ -1409,7 +1362,7 @@ msgid "Does not match"
|
|||||||
msgstr "ਮਿਲਦਾ ਨਹੀਂ ਹੈ"
|
msgstr "ਮਿਲਦਾ ਨਹੀਂ ਹੈ"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:196
|
#: ../js/ui/status/bluetooth.js:196
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Pairing request for %s"
|
msgid "Pairing request for %s"
|
||||||
msgstr "%s ਲਈ ਪੇਅਰ ਕਰਨ ਦੀ ਮੰਗ"
|
msgstr "%s ਲਈ ਪੇਅਰ ਕਰਨ ਦੀ ਮੰਗ"
|
||||||
|
|
||||||
@ -1425,25 +1378,21 @@ msgstr "ਠੀਕ ਹੈ"
|
|||||||
msgid "Brightness"
|
msgid "Brightness"
|
||||||
msgstr "ਚਮਕ"
|
msgstr "ਚਮਕ"
|
||||||
|
|
||||||
#: ../js/ui/status/keyboard.js:403
|
|
||||||
msgid "Show Keyboard Layout"
|
|
||||||
msgstr "ਕੀਬੋਰਡ ਲੇਆਉਟ ਵੇਖਾਓ"
|
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:72
|
#: ../js/ui/status/network.js:72
|
||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<ਅਣਜਾਣ>"
|
msgstr "<ਅਣਜਾਣ>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1055
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "ਬੰਦ"
|
msgstr "ਬੰਦ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:961
|
||||||
#: ../js/ui/status/rfkill.js:49
|
#: ../js/ui/status/rfkill.js:49
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "ਨੈੱਟਵਰਕ ਸੈਟਿੰਗ"
|
msgstr "ਨੈੱਟਵਰਕ ਸੈਟਿੰਗ"
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu)
|
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:364
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "ਬਿਨ-ਪਰਬੰਧ"
|
msgstr "ਬਿਨ-ਪਰਬੰਧ"
|
||||||
@ -1452,64 +1401,64 @@ msgstr "ਬਿਨ-ਪਰਬੰਧ"
|
|||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "ਡਿਸ-ਕੁਨੈਕਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ..."
|
msgstr "ਡਿਸ-ਕੁਨੈਕਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ..."
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1106
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "ਕੁਨੈਕਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ..."
|
msgstr "ਕੁਨੈਕਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ..."
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password
|
#. Translators: this is for network connections that require some kind of key or password */
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1109
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "ਪਰਮਾਣਕਿਤਾ ਚਾਹੀਦੀ ਹੈ"
|
msgstr "ਪਰਮਾਣਕਿਤਾ ਚਾਹੀਦੀ ਹੈ"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing
|
#. module, which is missing */
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:383
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "ਫਿਰਮਵੇਅਰ ਮੌਜੂਦ ਨਹੀਂ ਹੈ"
|
msgstr "ਫਿਰਮਵੇਅਰ ਮੌਜੂਦ ਨਹੀਂ ਹੈ"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage
|
#. is disabled by rfkill, or it has no coverage */
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:387
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "ਨਾ-ਉਪਲੱਬਧ"
|
msgstr "ਨਾ-ਉਪਲੱਬਧ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1111
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "ਕੁਨੈਕਸ਼ਨ ਫੇਲ੍ਹ ਹੈ"
|
msgstr "ਕੁਨੈਕਸ਼ਨ ਫੇਲ੍ਹ ਹੈ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:660
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "ਵਾਈ-ਫਾਈ ਨੈੱਟਵਰਕ"
|
msgstr "ਵਾਈ-ਫਾਈ ਨੈੱਟਵਰਕ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:662
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "ਨੈੱਟਵਰਕ ਚੁਣੋ"
|
msgstr "ਨੈੱਟਵਰਕ ਚੁਣੋ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:686
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "ਕੋਈ ਨੈੱਟਵਰਕ ਨਹੀਂ"
|
msgstr "ਕੋਈ ਨੈੱਟਵਰਕ ਨਹੀਂ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:955
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "ਨੈੱਟਵਰਕ ਚੁਣੋ"
|
msgstr "ਨੈੱਟਵਰਕ ਚੁਣੋ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:1040
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "ਚਾਲੂ ਕਰੋ"
|
msgstr "ਚਾਲੂ ਕਰੋ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1173
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1313
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "ਨੈੱਟਵਰਕ ਮੈਨੇਜਰ"
|
msgstr "ਨੈੱਟਵਰਕ ਮੈਨੇਜਰ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1352
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "ਕੁਨੈਕਸ਼ਨ ਫੇਲ੍ਹ ਹੈ"
|
msgstr "ਕੁਨੈਕਸ਼ਨ ਫੇਲ੍ਹ ਹੈ"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1353
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "ਨੈੱਟਵਰਕ ਕੁਨੈਕਸ਼ਨ ਦੀ ਐਕਟੀਵੇਸ਼ਨ ਫੇਲ੍ਹ ਹੋਈ"
|
msgstr "ਨੈੱਟਵਰਕ ਕੁਨੈਕਸ਼ਨ ਦੀ ਐਕਟੀਵੇਸ਼ਨ ਫੇਲ੍ਹ ਹੋਈ"
|
||||||
|
|
||||||
@ -1525,28 +1474,22 @@ msgstr "ਪਾਵਰ ਸੈਟਿੰਗ"
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "ਪੂਰੀ ਚਾਰਜ"
|
msgstr "ਪੂਰੀ ਚਾਰਜ"
|
||||||
|
|
||||||
#. 0 is reported when UPower does not have enough data
|
|
||||||
#. to estimate battery life
|
|
||||||
#. state is one of PENDING_CHARGING, PENDING_DISCHARGING
|
|
||||||
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
#: ../js/ui/status/power.js:69 ../js/ui/status/power.js:86
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "…ਅੰਦਾਜ਼ਾ ਲਾਇਆ ਜਾ ਰਿਹਾ ਹੈ"
|
msgstr "…ਅੰਦਾਜ਼ਾ ਲਾਇਆ ਜਾ ਰਿਹਾ ਹੈ"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:77
|
#: ../js/ui/status/power.js:77
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d\\u2236%02d Remaining (%d%%)"
|
#| msgid "%d\\u2236%02d Remaining (%d%%)"
|
||||||
msgstr "%d\\u2236%02d ਬਾਕੀ (%d%%)"
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
|
msgstr "%d∶%02d ਬਾਕੀ (%d%%)"
|
||||||
|
|
||||||
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
|
||||||
#: ../js/ui/status/power.js:82
|
#: ../js/ui/status/power.js:82
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%d\\u2236%02d Until Full (%d%%)"
|
#| msgid "%d\\u2236%02d Until Full (%d%%)"
|
||||||
msgstr "%d\\u2236%02d ਪੂਰਾ ਹੋਣ ਲਈ (%d%%)"
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
|
msgstr "%d∶%02d ਪੂਰੀ ਹੋਣ ਲਈ (%d%%)"
|
||||||
|
|
||||||
#. The menu only appears when airplane mode is on, so just
|
|
||||||
#. statically build it as if it was on, rather than dynamically
|
|
||||||
#. changing the menu contents.
|
|
||||||
#: ../js/ui/status/rfkill.js:43
|
#: ../js/ui/status/rfkill.js:43
|
||||||
msgid "Airplane Mode"
|
msgid "Airplane Mode"
|
||||||
msgstr "ਏਅਰਪਲੇਨ ਮੋਡ"
|
msgstr "ਏਅਰਪਲੇਨ ਮੋਡ"
|
||||||
@ -1604,7 +1547,7 @@ msgid "Search"
|
|||||||
msgstr "ਖੋਜ"
|
msgstr "ਖੋਜ"
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:77
|
#: ../js/ui/wanda.js:77
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Sorry, no wisdom for you today:\n"
|
"Sorry, no wisdom for you today:\n"
|
||||||
"%s"
|
"%s"
|
||||||
@ -1613,12 +1556,12 @@ msgstr ""
|
|||||||
"%s "
|
"%s "
|
||||||
|
|
||||||
#: ../js/ui/wanda.js:81
|
#: ../js/ui/wanda.js:81
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "%s the Oracle says"
|
msgid "%s the Oracle says"
|
||||||
msgstr "%s ਓਰੇਕਲ ਨੇ ਕਿਹਾ"
|
msgstr "%s ਓਰੇਕਲ ਨੇ ਕਿਹਾ"
|
||||||
|
|
||||||
#: ../js/ui/windowAttentionHandler.js:19
|
#: ../js/ui/windowAttentionHandler.js:19
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "'%s' is ready"
|
msgid "'%s' is ready"
|
||||||
msgstr "'%s' ਤਿਆਰ ਹੈ"
|
msgstr "'%s' ਤਿਆਰ ਹੈ"
|
||||||
|
|
||||||
@ -1628,7 +1571,7 @@ msgstr "ਕੀ ਤੁਸੀਂ ਇਹ ਡਿਸਪਲੇਅ ਸੈਟਿੰਗ
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#.
|
#. */
|
||||||
#: ../js/ui/windowManager.js:75
|
#: ../js/ui/windowManager.js:75
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "ਸੈਟਿੰਗ ਵਾਪਿਸ ਲਵੋ"
|
msgstr "ਸੈਟਿੰਗ ਵਾਪਿਸ ਲਵੋ"
|
||||||
@ -1638,7 +1581,7 @@ msgid "Keep Changes"
|
|||||||
msgstr "ਬਦਲਾਅ ਲਾਗੂ ਰੱਖੋ"
|
msgstr "ਬਦਲਾਅ ਲਾਗੂ ਰੱਖੋ"
|
||||||
|
|
||||||
#: ../js/ui/windowManager.js:97
|
#: ../js/ui/windowManager.js:97
|
||||||
#, c-format
|
#, javascript-format
|
||||||
msgid "Settings changes will revert in %d second"
|
msgid "Settings changes will revert in %d second"
|
||||||
msgid_plural "Settings changes will revert in %d seconds"
|
msgid_plural "Settings changes will revert in %d seconds"
|
||||||
msgstr[0] "ਸੈਟਿੰਗ ਬਦਲਾਅ ਨੂੰ %d ਸਕਿੰਟ ਵਿੱਚ ਵਾਪਿਸ ਕੀਤਾ ਜਾਵੇਗਾ"
|
msgstr[0] "ਸੈਟਿੰਗ ਬਦਲਾਅ ਨੂੰ %d ਸਕਿੰਟ ਵਿੱਚ ਵਾਪਿਸ ਕੀਤਾ ਜਾਵੇਗਾ"
|
||||||
@ -1703,6 +1646,23 @@ msgstr "ਪਾਸਵਰਡ ਖਾਲੀ ਨਹੀਂ ਹੋ ਸਕਦਾ ਹੈ"
|
|||||||
msgid "Authentication dialog was dismissed by the user"
|
msgid "Authentication dialog was dismissed by the user"
|
||||||
msgstr "ਪਰਮਾਣਕਿਤਾ ਡਾਈਲਾਗ ਯੂਜ਼ਰ ਵਲੋਂ ਰੱਦ ਕੀਤਾ"
|
msgstr "ਪਰਮਾਣਕਿਤਾ ਡਾਈਲਾਗ ਯੂਜ਼ਰ ਵਲੋਂ ਰੱਦ ਕੀਤਾ"
|
||||||
|
|
||||||
|
#~ msgid "There was an error loading the preferences dialog for %s:"
|
||||||
|
#~ msgstr "%s ਲਈ ਪਸੰਦ ਡਾਈਲਾਗ ਨੂੰ ਲੋਡ ਕਰਨ ਦੌਰਾਨ ਸਮੱਸਿਆ:"
|
||||||
|
|
||||||
|
#~ msgid "Extension"
|
||||||
|
#~ msgstr "ਇਕਸਟੈਸ਼ਨ"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%H\\u2236%M"
|
||||||
|
#~ msgstr "%H\\u2236%M"
|
||||||
|
|
||||||
|
#~ msgctxt "event list time"
|
||||||
|
#~ msgid "%l\\u2236%M\\u2009%p"
|
||||||
|
#~ msgstr "%l\\u2236%M\\u2009%p"
|
||||||
|
|
||||||
|
#~ msgid "Show Keyboard Layout"
|
||||||
|
#~ msgstr "ਕੀਬੋਰਡ ਲੇਆਉਟ ਵੇਖਾਓ"
|
||||||
|
|
||||||
#~ msgid "Settings Menu"
|
#~ msgid "Settings Menu"
|
||||||
#~ msgstr "ਸੈਟਿੰਗ ਮੇਨੂ"
|
#~ msgstr "ਸੈਟਿੰਗ ਮੇਨੂ"
|
||||||
|
|
||||||
|
113
po/pl.po
@ -12,8 +12,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell\n"
|
"Project-Id-Version: gnome-shell\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2013-09-23 20:34+0200\n"
|
"POT-Creation-Date: 2013-10-10 23:41+0200\n"
|
||||||
"PO-Revision-Date: 2013-09-23 20:37+0200\n"
|
"PO-Revision-Date: 2013-10-10 23:42+0200\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Polish <gnomepl@aviary.pl>\n"
|
"Language-Team: Polish <gnomepl@aviary.pl>\n"
|
||||||
"Language: pl\n"
|
"Language: pl\n"
|
||||||
@ -289,7 +289,7 @@ msgstr ""
|
|||||||
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
#: ../js/gdm/authPrompt.js:145 ../js/ui/components/networkAgent.js:136
|
||||||
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
#: ../js/ui/components/polkitAgent.js:161 ../js/ui/endSessionDialog.js:351
|
||||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||||
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:686
|
#: ../js/ui/status/bluetooth.js:222 ../js/ui/status/network.js:728
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Anuluj"
|
msgstr "Anuluj"
|
||||||
|
|
||||||
@ -337,15 +337,15 @@ msgstr "Błąd uwierzytelniania"
|
|||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(lub przeciągnięcie palca)"
|
msgstr "(lub przeciągnięcie palca)"
|
||||||
|
|
||||||
#: ../js/misc/util.js:98
|
#: ../js/misc/util.js:115
|
||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Nie odnaleziono polecenia"
|
msgstr "Nie odnaleziono polecenia"
|
||||||
|
|
||||||
#: ../js/misc/util.js:131
|
#: ../js/misc/util.js:148
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Nie można przetworzyć polecenia:"
|
msgstr "Nie można przetworzyć polecenia:"
|
||||||
|
|
||||||
#: ../js/misc/util.js:139
|
#: ../js/misc/util.js:156
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Execution of '%s' failed:"
|
msgid "Execution of '%s' failed:"
|
||||||
msgstr "Wykonanie polecenia \"%s\" się nie powiodło:"
|
msgstr "Wykonanie polecenia \"%s\" się nie powiodło:"
|
||||||
@ -384,7 +384,7 @@ msgstr "Program %s został dodany do ulubionych."
|
|||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "Program %s został usunięty z ulubionych."
|
msgstr "Program %s został usunięty z ulubionych."
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:807
|
#: ../js/ui/backgroundMenu.js:19 ../js/ui/panel.js:808
|
||||||
#: ../js/ui/status/system.js:325
|
#: ../js/ui/status/system.js:325
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Ustawienia"
|
msgstr "Ustawienia"
|
||||||
@ -575,16 +575,16 @@ msgstr "Otwórz za pomocą %s"
|
|||||||
msgid "Eject"
|
msgid "Eject"
|
||||||
msgstr "Wysuń"
|
msgstr "Wysuń"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:91 ../js/ui/components/polkitAgent.js:280
|
#: ../js/ui/components/keyring.js:89 ../js/ui/components/polkitAgent.js:280
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Hasło:"
|
msgstr "Hasło:"
|
||||||
|
|
||||||
#: ../js/ui/components/keyring.js:110
|
#: ../js/ui/components/keyring.js:108
|
||||||
msgid "Type again:"
|
msgid "Type again:"
|
||||||
msgstr "Proszę wpisać ponownie:"
|
msgstr "Proszę wpisać ponownie:"
|
||||||
|
|
||||||
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:112
|
#: ../js/ui/components/networkAgent.js:131 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:275 ../js/ui/status/network.js:689
|
#: ../js/ui/status/network.js:296 ../js/ui/status/network.js:731
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Połącz"
|
msgstr "Połącz"
|
||||||
|
|
||||||
@ -1087,9 +1087,12 @@ msgstr "Wyświetl błędy"
|
|||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr "Włączone"
|
msgstr "Włączone"
|
||||||
|
|
||||||
|
#. Translators: this is for a network device that cannot be activated
|
||||||
|
#. because it's disabled by rfkill (airplane mode) */
|
||||||
#. translators:
|
#. translators:
|
||||||
#. * The device has been disabled
|
#. * The device has been disabled
|
||||||
#: ../js/ui/lookingGlass.js:765 ../src/gvc/gvc-mixer-control.c:1830
|
#: ../js/ui/lookingGlass.js:765 ../js/ui/status/network.js:473
|
||||||
|
#: ../src/gvc/gvc-mixer-control.c:1830
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Wyłączone"
|
msgstr "Wyłączone"
|
||||||
|
|
||||||
@ -1121,27 +1124,31 @@ msgstr "Otwórz"
|
|||||||
msgid "Remove"
|
msgid "Remove"
|
||||||
msgstr "Usuń"
|
msgstr "Usuń"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1513
|
#: ../js/ui/messageTray.js:1530
|
||||||
|
msgid "Notifications"
|
||||||
|
msgstr "Powiadomienia"
|
||||||
|
|
||||||
|
#: ../js/ui/messageTray.js:1537
|
||||||
msgid "Clear Messages"
|
msgid "Clear Messages"
|
||||||
msgstr "Wyczyść wiadomości"
|
msgstr "Wyczyść wiadomości"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1540
|
#: ../js/ui/messageTray.js:1564
|
||||||
msgid "Notification Settings"
|
msgid "Notification Settings"
|
||||||
msgstr "Ustawienia powiadomień"
|
msgstr "Ustawienia powiadomień"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1559
|
#: ../js/ui/messageTray.js:1617
|
||||||
msgid "Tray Menu"
|
msgid "Tray Menu"
|
||||||
msgstr "Menu obszaru powiadamiania"
|
msgstr "Menu obszaru powiadamiania"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1775
|
#: ../js/ui/messageTray.js:1833
|
||||||
msgid "No Messages"
|
msgid "No Messages"
|
||||||
msgstr "Brak wiadomości"
|
msgstr "Brak wiadomości"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:1813
|
#: ../js/ui/messageTray.js:1871
|
||||||
msgid "Message Tray"
|
msgid "Message Tray"
|
||||||
msgstr "Obszar powiadamiania"
|
msgstr "Obszar powiadamiania"
|
||||||
|
|
||||||
#: ../js/ui/messageTray.js:2788
|
#: ../js/ui/messageTray.js:2846
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Informacje systemowe"
|
msgstr "Informacje systemowe"
|
||||||
|
|
||||||
@ -1184,7 +1191,7 @@ msgstr "Zakończ"
|
|||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Podgląd"
|
msgstr "Podgląd"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:903
|
#: ../js/ui/panel.js:904
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Górny pasek"
|
msgstr "Górny pasek"
|
||||||
|
|
||||||
@ -1230,11 +1237,11 @@ msgstr "Nie można zablokować"
|
|||||||
msgid "Lock was blocked by an application"
|
msgid "Lock was blocked by an application"
|
||||||
msgstr "Blokowanie zostało zablokowane przez program"
|
msgstr "Blokowanie zostało zablokowane przez program"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:447
|
#: ../js/ui/searchDisplay.js:448
|
||||||
msgid "Searching…"
|
msgid "Searching…"
|
||||||
msgstr "Wyszukiwanie…"
|
msgstr "Wyszukiwanie…"
|
||||||
|
|
||||||
#: ../js/ui/searchDisplay.js:491
|
#: ../js/ui/searchDisplay.js:492
|
||||||
msgid "No results."
|
msgid "No results."
|
||||||
msgstr "Brak wyników."
|
msgstr "Brak wyników."
|
||||||
|
|
||||||
@ -1312,8 +1319,8 @@ msgstr "Duży tekst"
|
|||||||
msgid "Bluetooth"
|
msgid "Bluetooth"
|
||||||
msgstr "Bluetooth"
|
msgstr "Bluetooth"
|
||||||
|
|
||||||
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:112
|
#: ../js/ui/status/bluetooth.js:30 ../js/ui/status/network.js:133
|
||||||
#: ../js/ui/status/network.js:1034 ../js/ui/status/rfkill.js:46
|
#: ../js/ui/status/network.js:1085 ../js/ui/status/rfkill.js:46
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
msgstr "Wyłącz"
|
msgstr "Wyłącz"
|
||||||
|
|
||||||
@ -1407,83 +1414,95 @@ msgstr "Jasność"
|
|||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<nieznane>"
|
msgstr "<nieznane>"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:203 ../js/ui/status/network.js:1049
|
#: ../js/ui/status/network.js:223 ../js/ui/status/network.js:380
|
||||||
|
#: ../js/ui/status/network.js:1106
|
||||||
msgid "Off"
|
msgid "Off"
|
||||||
msgstr "Wyłączone"
|
msgstr "Wyłączone"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:276 ../js/ui/status/network.js:955
|
|
||||||
#: ../js/ui/status/rfkill.js:49
|
|
||||||
msgid "Network Settings"
|
|
||||||
msgstr "Ustawienia sieci"
|
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
#. under NetworkManager's control (and thus cannot be used in the menu) */
|
||||||
#: ../js/ui/status/network.js:364
|
#: ../js/ui/status/network.js:386
|
||||||
msgid "unmanaged"
|
msgid "unmanaged"
|
||||||
msgstr "niezarządzane"
|
msgstr "niezarządzane"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:366
|
#: ../js/ui/status/network.js:388
|
||||||
msgid "disconnecting..."
|
msgid "disconnecting..."
|
||||||
msgstr "rozłączanie…"
|
msgstr "rozłączanie…"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:372 ../js/ui/status/network.js:1100
|
#: ../js/ui/status/network.js:394 ../js/ui/status/network.js:1160
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "łączenie…"
|
msgstr "łączenie…"
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password */
|
#. Translators: this is for network connections that require some kind of key or password */
|
||||||
#: ../js/ui/status/network.js:375 ../js/ui/status/network.js:1103
|
#: ../js/ui/status/network.js:397 ../js/ui/status/network.js:1163
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "wymagane jest uwierzytelnienie"
|
msgstr "wymagane jest uwierzytelnienie"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing */
|
#. module, which is missing */
|
||||||
#: ../js/ui/status/network.js:383
|
#: ../js/ui/status/network.js:405
|
||||||
msgid "firmware missing"
|
msgid "firmware missing"
|
||||||
msgstr "brak oprogramowania sprzętowego"
|
msgstr "brak oprogramowania sprzętowego"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage */
|
#. is disabled by rfkill, or it has no coverage */
|
||||||
#: ../js/ui/status/network.js:387
|
#: ../js/ui/status/network.js:409
|
||||||
msgid "unavailable"
|
msgid "unavailable"
|
||||||
msgstr "niedostępne"
|
msgstr "niedostępne"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:389 ../js/ui/status/network.js:1105
|
#: ../js/ui/status/network.js:411 ../js/ui/status/network.js:1165
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "połączenie się nie powiodło"
|
msgstr "połączenie się nie powiodło"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:654
|
#: ../js/ui/status/network.js:427 ../js/ui/status/network.js:513
|
||||||
|
msgid "Mobile Broadband Settings"
|
||||||
|
msgstr "Ustawienia sieci komórkowej"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1104
|
||||||
|
msgid "Hardware Disabled"
|
||||||
|
msgstr "Sprzęt jest wyłączony"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:696
|
||||||
msgid "Wi-Fi Networks"
|
msgid "Wi-Fi Networks"
|
||||||
msgstr "Sieci Wi-Fi"
|
msgstr "Sieci Wi-Fi"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:656
|
#: ../js/ui/status/network.js:698
|
||||||
msgid "Select a network"
|
msgid "Select a network"
|
||||||
msgstr "Wybór sieci"
|
msgstr "Wybór sieci"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:680
|
#: ../js/ui/status/network.js:722
|
||||||
msgid "No Networks"
|
msgid "No Networks"
|
||||||
msgstr "Brak sieci"
|
msgstr "Brak sieci"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:949
|
#: ../js/ui/status/network.js:991
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Wybierz sieć"
|
msgstr "Wybierz sieć"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1034
|
#: ../js/ui/status/network.js:997
|
||||||
|
msgid "Wi-Fi Settings"
|
||||||
|
msgstr "Ustawienia sieci Wi-Fi"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1085
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Włącz"
|
msgstr "Włącz"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1167
|
#: ../js/ui/status/network.js:1108
|
||||||
|
msgid "Not Connected"
|
||||||
|
msgstr "Nie połączono"
|
||||||
|
|
||||||
|
#: ../js/ui/status/network.js:1228
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1307
|
#: ../js/ui/status/network.js:1368
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Menedżer sieci"
|
msgstr "Menedżer sieci"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1346
|
#: ../js/ui/status/network.js:1407
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Połączenie się nie powiodło"
|
msgstr "Połączenie się nie powiodło"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1347
|
#: ../js/ui/status/network.js:1408
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Aktywacja połączenia sieciowego się nie powiodła"
|
msgstr "Aktywacja połączenia sieciowego się nie powiodła"
|
||||||
|
|
||||||
@ -1521,6 +1540,10 @@ msgstr "Tryb samolotowy"
|
|||||||
msgid "On"
|
msgid "On"
|
||||||
msgstr "Włączone"
|
msgstr "Włączone"
|
||||||
|
|
||||||
|
#: ../js/ui/status/rfkill.js:49
|
||||||
|
msgid "Network Settings"
|
||||||
|
msgstr "Ustawienia sieci"
|
||||||
|
|
||||||
#: ../js/ui/status/system.js:305
|
#: ../js/ui/status/system.js:305
|
||||||
msgid "Switch User"
|
msgid "Switch User"
|
||||||
msgstr "Przełącz użytkownika"
|
msgstr "Przełącz użytkownika"
|
||||||
|