Compare commits
91 Commits
wip/jimmac
...
wip/fix-dr
Author | SHA1 | Date | |
---|---|---|---|
![]() |
82c72f377a | ||
![]() |
c2e9e68df7 | ||
![]() |
bdbf804e69 | ||
![]() |
9718175f4d | ||
![]() |
0ba346b750 | ||
![]() |
614c4480e2 | ||
![]() |
f21f612ef7 | ||
![]() |
935de3e80f | ||
![]() |
0f541f60e8 | ||
![]() |
902c99c757 | ||
![]() |
f7029674b0 | ||
![]() |
dd7ccda168 | ||
![]() |
e207b45317 | ||
![]() |
6b5117677d | ||
![]() |
900398406c | ||
![]() |
461d2b1945 | ||
![]() |
6c2f11e8a4 | ||
![]() |
dbf993300a | ||
![]() |
f77b3da74f | ||
![]() |
bc6a38dda7 | ||
![]() |
f3a02057c1 | ||
![]() |
ad15ce9139 | ||
![]() |
5d178506bf | ||
![]() |
14cc9bfb1e | ||
![]() |
ce4c485f34 | ||
![]() |
1877a2e00a | ||
![]() |
b2fa7a6d8f | ||
![]() |
36c604d793 | ||
![]() |
9a5a4b2206 | ||
![]() |
3ab9e9e8ad | ||
![]() |
dd59212d3f | ||
![]() |
2b654ec310 | ||
![]() |
764fbbe052 | ||
![]() |
328c63bf64 | ||
![]() |
95788c9834 | ||
![]() |
9cf571efbd | ||
![]() |
dc4128c78b | ||
![]() |
73d8c82640 | ||
![]() |
2f7377b250 | ||
![]() |
804f23b179 | ||
![]() |
2be6ddc54e | ||
![]() |
dff4f0109e | ||
![]() |
2e663b2a94 | ||
![]() |
9f4aa6ebf2 | ||
![]() |
afe5703710 | ||
![]() |
02d06bb1f3 | ||
![]() |
3a78695bd9 | ||
![]() |
13e8c35d36 | ||
![]() |
3b8dfd98dd | ||
![]() |
6b610b26f8 | ||
![]() |
81956e9b84 | ||
![]() |
6b41f82346 | ||
![]() |
1fca090374 | ||
![]() |
da2fc2c9d3 | ||
![]() |
52cbc299a7 | ||
![]() |
9f436ce373 | ||
![]() |
d908940ef3 | ||
![]() |
eeda54f24d | ||
![]() |
b8b5da1e95 | ||
![]() |
3a9ad5c577 | ||
![]() |
d57dc94d9e | ||
![]() |
393d7246cc | ||
![]() |
6217c3b88d | ||
![]() |
ddd4fd9c24 | ||
![]() |
d2a97e7f1d | ||
![]() |
aa75e89216 | ||
![]() |
3f756dc608 | ||
![]() |
ed8e89bc19 | ||
![]() |
c90a4e4849 | ||
![]() |
f433b12d6e | ||
![]() |
7ca418a79a | ||
![]() |
a9ad91c831 | ||
![]() |
bd1c7774ee | ||
![]() |
91da3789bc | ||
![]() |
2991f9f102 | ||
![]() |
49d8ff38e7 | ||
![]() |
4b522a02c3 | ||
![]() |
ebe6f59d7e | ||
![]() |
e5c95b910d | ||
![]() |
2f76951658 | ||
![]() |
3efd296fc3 | ||
![]() |
6688610c23 | ||
![]() |
d2c75801ea | ||
![]() |
be84a00022 | ||
![]() |
da537cda43 | ||
![]() |
304c667bca | ||
![]() |
879a81abeb | ||
![]() |
e68ca5adbd | ||
![]() |
cf69fe4b18 | ||
![]() |
8f848925f6 | ||
![]() |
d21657fe61 |
64
NEWS
64
NEWS
@@ -1,3 +1,67 @@
|
|||||||
|
3.30.0
|
||||||
|
======
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Harry Mallon, Marco Trevisan (Treviño)
|
||||||
|
|
||||||
|
Translators:
|
||||||
|
Fran Dieguez [gl], Trần Ngọc Quân [vi], Balázs Meskó [hu],
|
||||||
|
Rūdolfs Mazurs [lv], Jiri Grönroos [fi], Anders Jonsson [sv], gogo [hr],
|
||||||
|
Ask Hjorth Larsen [da]
|
||||||
|
|
||||||
|
3.29.92
|
||||||
|
=======
|
||||||
|
* Choose some actors to cache on the GPU [Daniel; #792633]
|
||||||
|
* inputMethod: Hide preedit text if requested [Takao; #431]
|
||||||
|
* Fix forced fallback app-menus on wayland [Jonas; #276]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Jonas Ådahl, Takao Fujiwara, Mohammed Sadiq, Marco Trevisan (Treviño),
|
||||||
|
Daniel van Vugt
|
||||||
|
|
||||||
|
Translators:
|
||||||
|
Baurzhan Muftakhidinov [kk], Kukuh Syafaat [id], Milo Casagrande [it],
|
||||||
|
Changwoo Ryu [ko], Marek Cernocky [cs]
|
||||||
|
|
||||||
|
3.29.91
|
||||||
|
=======
|
||||||
|
* Fix handling of 0/false options in ShowOSD D-Bus API [Florian; #791669]
|
||||||
|
* overview: Fix handling of confirmation dialogs on wayland [verdre; !180]
|
||||||
|
* Avoid some full relayout/redraws [Carlos; !197]
|
||||||
|
* Keep workspace switcher slid out when workspaces are in use [Florian; !161]
|
||||||
|
* Ignore auto-repeat for some keybindings [Andrea; #373]
|
||||||
|
* Misc. bug fixes [Carlos, Florian, Pascal; #464, !189, !191, !192, !162]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Andrea Azzarone, Olivier Blin, Carlos Garnacho, Florian Müllner,
|
||||||
|
Pascal Nowack, verdre
|
||||||
|
|
||||||
|
Translators:
|
||||||
|
Bruno Lopes da Silva [pt_BR], Matej Urbančič [sl], Piotr Drąg [pl],
|
||||||
|
Aurimas Černius [lt], Emin Tufan Çetin [tr], Fabio Tomat [fur],
|
||||||
|
Alexandre Franke [fr], Yi-Jyun Pan [zh_TW], Bernd Homuth [de],
|
||||||
|
Andre Klapper [cs], Jordi Mas [ca], Daniel Șerbănescu [ro],
|
||||||
|
Bruce Cowan [en_GB]
|
||||||
|
|
||||||
|
3.29.90
|
||||||
|
=======
|
||||||
|
* Add remote access indication on wayland [Jonas; !160]
|
||||||
|
* Fix wrong window positions in overview on wayland [Marco; #776588]
|
||||||
|
* Add gesture to unfullscreen a window [Jan-Michael; !123]
|
||||||
|
* Add PickColor method to screenshot D-Bus interface [Florian; #286]
|
||||||
|
* Consider "new-window" action when opening new windows [Florian; #756844]
|
||||||
|
* Make workspace switching gestures follow motion [Carlos; #788994]
|
||||||
|
* Support audio volumes above 100% [Didier; #790280]
|
||||||
|
* Misc. bug fixes [Florian, Daniel; #424, !132, !182, #433, !179, #786496]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Jonas Ådahl, Jan-Michael Brummer, Piotr Drąg, Daniel Drake, Carlos Garnacho,
|
||||||
|
Florian Müllner, Georges Basile Stavracas Neto, Didier Roche, Jakub Steiner,
|
||||||
|
Marco Trevisan (Treviño)
|
||||||
|
|
||||||
|
Translators:
|
||||||
|
Charles Monzat [fr], Daniel Mustieles [es]
|
||||||
|
|
||||||
3.29.4
|
3.29.4
|
||||||
======
|
======
|
||||||
* Fix "Clear All" for calendar events [Florian; #325]
|
* Fix "Clear All" for calendar events [Florian; #325]
|
||||||
|
@@ -7,7 +7,7 @@ easy to use experience.
|
|||||||
|
|
||||||
For more information about GNOME Shell, including instructions on how
|
For more information about GNOME Shell, including instructions on how
|
||||||
to build GNOME Shell from source and how to get involved with the project,
|
to build GNOME Shell from source and how to get involved with the project,
|
||||||
see the [project wiki][wiki]
|
see the [project wiki][project-wiki].
|
||||||
|
|
||||||
Bugs should be reported to the GNOME [bug tracking system][bug-tracker].
|
Bugs should be reported to the GNOME [bug tracking system][bug-tracker].
|
||||||
|
|
||||||
|
@@ -24,3 +24,9 @@
|
|||||||
|
|
||||||
/* Define if _NL_TIME_FIRST_WEEKDATE is available */
|
/* Define if _NL_TIME_FIRST_WEEKDATE is available */
|
||||||
#mesondefine HAVE__NL_TIME_FIRST_WEEKDAY
|
#mesondefine HAVE__NL_TIME_FIRST_WEEKDAY
|
||||||
|
|
||||||
|
/* Define if you have the `g_desktop_app_info_launch_uris_as_manager_with_fds` function */
|
||||||
|
#mesondefine HAVE_GIO_DESKTOP_LAUNCH_URIS_WITH_FDS
|
||||||
|
|
||||||
|
/* Define if fdwalk is available in libc */
|
||||||
|
#mesondefine HAVE_FDWALK
|
||||||
|
6
data/00_org.gnome.shell.gschema.override
Normal file
6
data/00_org.gnome.shell.gschema.override
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
[org.gnome.mutter:GNOME]
|
||||||
|
attach-modal-dialogs=true
|
||||||
|
edge-tiling=true
|
||||||
|
dynamic-workspaces=true
|
||||||
|
workspaces-only-on-primary=true
|
||||||
|
focus-change-on-pointer-rest=true
|
@@ -22,6 +22,7 @@
|
|||||||
<file>id.json</file>
|
<file>id.json</file>
|
||||||
<file>il.json</file>
|
<file>il.json</file>
|
||||||
<file>in+bolnagri.json</file>
|
<file>in+bolnagri.json</file>
|
||||||
|
<file>in+mal.json</file>
|
||||||
<file>ir.json</file>
|
<file>ir.json</file>
|
||||||
<file>is.json</file>
|
<file>is.json</file>
|
||||||
<file>it.json</file>
|
<file>it.json</file>
|
||||||
|
5
data/gnome-shell-overrides-migration.desktop.in
Normal file
5
data/gnome-shell-overrides-migration.desktop.in
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Type=Application
|
||||||
|
Name=GNOME settings overrides migration
|
||||||
|
NoDisplay=true
|
||||||
|
Exec=@libexecdir@/gnome-shell-overrides-migration.sh
|
@@ -92,6 +92,16 @@ schema = configure_file(
|
|||||||
configuration: schemaconf,
|
configuration: schemaconf,
|
||||||
install_dir: schemadir
|
install_dir: schemadir
|
||||||
)
|
)
|
||||||
|
install_data('00_org.gnome.shell.gschema.override', install_dir: schemadir)
|
||||||
|
|
||||||
|
overrides_migration_conf = configuration_data()
|
||||||
|
overrides_migration_conf.set('libexecdir', libexecdir)
|
||||||
|
overrides_migration = configure_file(
|
||||||
|
input: 'gnome-shell-overrides-migration.desktop.in',
|
||||||
|
output: 'gnome-shell-overrides-migration.desktop',
|
||||||
|
configuration: overrides_migration_conf,
|
||||||
|
install_dir: autostartdir
|
||||||
|
)
|
||||||
|
|
||||||
if have_systemd
|
if have_systemd
|
||||||
unitconf = configuration_data()
|
unitconf = configuration_data()
|
||||||
|
@@ -91,6 +91,23 @@
|
|||||||
<arg type="s" direction="out" name="filename_used"/>
|
<arg type="s" direction="out" name="filename_used"/>
|
||||||
</method>
|
</method>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
PickColor:
|
||||||
|
|
||||||
|
Picks a color and returns the result.
|
||||||
|
|
||||||
|
The @result vardict contains:
|
||||||
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>color (ddd)</term>
|
||||||
|
<listitem><para>The color, RGB values in the range [0,1].</para></listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
|
-->
|
||||||
|
<method name="PickColor">
|
||||||
|
<arg type="a{sv}" direction="out" name="result"/>
|
||||||
|
</method>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
FlashArea:
|
FlashArea:
|
||||||
@x: the X coordinate of the area to flash
|
@x: the X coordinate of the area to flash
|
||||||
|
@@ -190,6 +190,7 @@
|
|||||||
</key>
|
</key>
|
||||||
</schema>
|
</schema>
|
||||||
|
|
||||||
|
<!-- unused, change 00_org.gnome.shell.gschema.override instead -->
|
||||||
<schema id="org.gnome.shell.overrides" path="/org/gnome/shell/overrides/"
|
<schema id="org.gnome.shell.overrides" path="/org/gnome/shell/overrides/"
|
||||||
gettext-domain="@GETTEXT_PACKAGE@">
|
gettext-domain="@GETTEXT_PACKAGE@">
|
||||||
<key name="attach-modal-dialogs" type="b">
|
<key name="attach-modal-dialogs" type="b">
|
||||||
|
559
data/osk-layouts/in+mal.json
Normal file
559
data/osk-layouts/in+mal.json
Normal file
@@ -0,0 +1,559 @@
|
|||||||
|
{
|
||||||
|
"levels": [
|
||||||
|
{
|
||||||
|
"level": "",
|
||||||
|
"mode": "default",
|
||||||
|
"rows": [
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"െ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ൌ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ൈ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ാ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ീ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ൂ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ബ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഹ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഗ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ദ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ജ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഡ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
""
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"ോ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"േ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"്"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ി"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ു"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"പ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ര"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ക"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ത"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ച"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ട"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"െ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ം"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"മ",
|
||||||
|
"ç"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ന"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"വ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ല",
|
||||||
|
"ñ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"സ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഷ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"യ"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
","
|
||||||
|
],
|
||||||
|
[
|
||||||
|
" "
|
||||||
|
],
|
||||||
|
[
|
||||||
|
".",
|
||||||
|
"#",
|
||||||
|
"!",
|
||||||
|
",",
|
||||||
|
"?",
|
||||||
|
"-",
|
||||||
|
":",
|
||||||
|
"'",
|
||||||
|
"@"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"level": "shift",
|
||||||
|
"mode": "latched",
|
||||||
|
"rows": [
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"ഔ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഐ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ആ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഈ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഊ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഭ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ങ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഘ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ധ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഝ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഢ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഞ"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"ഓ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഏ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"അ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഇ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഉ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഫ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"റ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഖ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഥ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഛ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഠ"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"എ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
""
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ണ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ന"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഴ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ള"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ശ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"ഷ"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"യ"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
","
|
||||||
|
],
|
||||||
|
[
|
||||||
|
" "
|
||||||
|
],
|
||||||
|
[
|
||||||
|
".",
|
||||||
|
"#",
|
||||||
|
"!",
|
||||||
|
",",
|
||||||
|
"?",
|
||||||
|
"-",
|
||||||
|
":",
|
||||||
|
"'",
|
||||||
|
"@"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"level": "opt",
|
||||||
|
"mode": "locked",
|
||||||
|
"rows": [
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"൧",
|
||||||
|
"1",
|
||||||
|
"¹",
|
||||||
|
"½",
|
||||||
|
"⅓",
|
||||||
|
"¼",
|
||||||
|
"⅛"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"൨",
|
||||||
|
"2",
|
||||||
|
"²",
|
||||||
|
"⅔"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"൩",
|
||||||
|
"3",
|
||||||
|
"³",
|
||||||
|
"¾",
|
||||||
|
"⅜"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"൪",
|
||||||
|
"4",
|
||||||
|
"⁴"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"൫",
|
||||||
|
"5",
|
||||||
|
"⅝"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"൬",
|
||||||
|
"6"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"൭",
|
||||||
|
"7",
|
||||||
|
"⅞"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"൮",
|
||||||
|
"8"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"൯",
|
||||||
|
"9"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"൦",
|
||||||
|
"0",
|
||||||
|
"ⁿ",
|
||||||
|
"∅"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"@"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"#"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"₹",
|
||||||
|
"$",
|
||||||
|
"¢",
|
||||||
|
"£",
|
||||||
|
"€",
|
||||||
|
"¥",
|
||||||
|
"₱"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"%",
|
||||||
|
"‰"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"&"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"-",
|
||||||
|
"_",
|
||||||
|
"–",
|
||||||
|
"—",
|
||||||
|
"·"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"+",
|
||||||
|
"±"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"(",
|
||||||
|
"<",
|
||||||
|
"{",
|
||||||
|
"["
|
||||||
|
],
|
||||||
|
[
|
||||||
|
")",
|
||||||
|
">",
|
||||||
|
"}",
|
||||||
|
"]"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"*",
|
||||||
|
"†",
|
||||||
|
"‡",
|
||||||
|
"★"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"\"",
|
||||||
|
"“",
|
||||||
|
"”",
|
||||||
|
"«",
|
||||||
|
"»"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"'",
|
||||||
|
"‘",
|
||||||
|
"’",
|
||||||
|
"‹",
|
||||||
|
"›"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
":"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
";"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"!",
|
||||||
|
"¡"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"?",
|
||||||
|
"¿"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"_"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"/"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
" "
|
||||||
|
],
|
||||||
|
[
|
||||||
|
","
|
||||||
|
],
|
||||||
|
[
|
||||||
|
".",
|
||||||
|
"…"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"level": "opt+shift",
|
||||||
|
"mode": "locked",
|
||||||
|
"rows": [
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"~"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"`"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"|"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"•",
|
||||||
|
"♪",
|
||||||
|
"♥",
|
||||||
|
"♠",
|
||||||
|
"♦",
|
||||||
|
"♣"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"√"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"Π",
|
||||||
|
"π"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"÷"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"×"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"¶",
|
||||||
|
"§"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"∆"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"£"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"¢"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"€"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"¥"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"^",
|
||||||
|
"↑",
|
||||||
|
"↓",
|
||||||
|
"←",
|
||||||
|
"→"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"°",
|
||||||
|
"′",
|
||||||
|
"″"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"=",
|
||||||
|
"≠",
|
||||||
|
"≈",
|
||||||
|
"∞"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"{"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"}"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"\\"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"©"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"®"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"™"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"℅"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"["
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"]"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"<",
|
||||||
|
"‹",
|
||||||
|
"≤",
|
||||||
|
"«"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
">",
|
||||||
|
"›",
|
||||||
|
"≥",
|
||||||
|
"»"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
" "
|
||||||
|
],
|
||||||
|
[
|
||||||
|
","
|
||||||
|
],
|
||||||
|
[
|
||||||
|
".",
|
||||||
|
"…"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"locale": "ml",
|
||||||
|
"name": "Malayalam"
|
||||||
|
}
|
@@ -128,12 +128,15 @@ StScrollBar {
|
|||||||
|
|
||||||
.slider {
|
.slider {
|
||||||
height: 1em;
|
height: 1em;
|
||||||
-slider-height: 0.3em;
|
-barlevel-height: 0.3em;
|
||||||
-slider-background-color: $insensitive_bg_color; //background of the trough
|
-barlevel-background-color: $insensitive_bg_color; //background of the trough
|
||||||
-slider-border-color: $borders_color; //trough border color
|
-barlevel-border-color: $borders_color; //trough border color
|
||||||
-slider-active-background-color: $selected_bg_color; //active trough fill
|
-barlevel-active-background-color: $selected_bg_color; //active trough fill
|
||||||
-slider-active-border-color: darken($selected_bg_color,10%); //active trough border
|
-barlevel-active-border-color: darken($selected_bg_color,10%); //active trough border
|
||||||
-slider-border-width: 1px;
|
-barlevel-overdrive-color: $destructive_color;
|
||||||
|
-barlevel-overdrive-border-color: darken($destructive_color,10%);
|
||||||
|
-barlevel-overdrive-separator-width: 0.2em;
|
||||||
|
-barlevel-border-width: 1px;
|
||||||
-slider-handle-radius: 6px;
|
-slider-handle-radius: 6px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -585,13 +588,11 @@ StScrollBar {
|
|||||||
.osd-monitor-label { font-size: 3em; }
|
.osd-monitor-label { font-size: 3em; }
|
||||||
.level {
|
.level {
|
||||||
height: 0.6em;
|
height: 0.6em;
|
||||||
border-radius: 0.3em;
|
-barlevel-height: 0.6em;
|
||||||
background-color: transparentize(darken($osd_bg_color,15%),0.5);
|
-barlevel-background-color: transparentize(darken($osd_bg_color,15%),0.5);
|
||||||
color: $osd_fg_color;
|
-barlevel-active-background-color: $osd_fg_color;
|
||||||
}
|
-barlevel-overdrive-color: $destructive_color;
|
||||||
.level-bar {
|
-barlevel-overdrive-separator-width: 0.2em;
|
||||||
background-color: $osd_fg_color;
|
|
||||||
border-radius: 0.3em;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -825,6 +826,8 @@ StScrollBar {
|
|||||||
|
|
||||||
.screencast-indicator { color: $warning_color; }
|
.screencast-indicator { color: $warning_color; }
|
||||||
|
|
||||||
|
.remote-access-indicator { color: $warning_color; }
|
||||||
|
|
||||||
&.solid {
|
&.solid {
|
||||||
background-color: black;
|
background-color: black;
|
||||||
/* transition from transparent to solid */
|
/* transition from transparent to solid */
|
||||||
@@ -1122,6 +1125,7 @@ StScrollBar {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.system-menu-action {
|
.system-menu-action {
|
||||||
|
-st-icon-style: symbolic;
|
||||||
color: $fg_color;
|
color: $fg_color;
|
||||||
border-radius: 32px; /* wish we could do 50% */
|
border-radius: 32px; /* wish we could do 50% */
|
||||||
padding: 13px;
|
padding: 13px;
|
||||||
|
@@ -50,8 +50,7 @@ gnome.gtkdoc('shell',
|
|||||||
join_paths(meson.build_root(), 'src')
|
join_paths(meson.build_root(), 'src')
|
||||||
],
|
],
|
||||||
scan_args: [
|
scan_args: [
|
||||||
'--ignore-headers=' + ' '.join(private_headers + exclude_directories),
|
'--ignore-headers=' + ' '.join(private_headers + exclude_directories)
|
||||||
'--rebuild-types'
|
|
||||||
],
|
],
|
||||||
install: true
|
install: true
|
||||||
)
|
)
|
||||||
|
@@ -17,8 +17,7 @@ gnome.gtkdoc('st',
|
|||||||
],
|
],
|
||||||
scan_args: [
|
scan_args: [
|
||||||
'--ignore-headers=' + ' '.join(private_headers),
|
'--ignore-headers=' + ' '.join(private_headers),
|
||||||
'--rebuild-sections',
|
'--rebuild-sections'
|
||||||
'--rebuild-types'
|
|
||||||
],
|
],
|
||||||
install: true
|
install: true
|
||||||
)
|
)
|
||||||
|
@@ -14,15 +14,16 @@ 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 = '<node> \
|
const GnomeShellIface = `
|
||||||
<interface name="org.gnome.Shell.Extensions"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const GnomeShellProxy = Gio.DBusProxy.makeProxyWrapper(GnomeShellIface);
|
const GnomeShellProxy = Gio.DBusProxy.makeProxyWrapper(GnomeShellIface);
|
||||||
|
|
||||||
|
@@ -242,11 +242,11 @@ var AuthPrompt = new Lang.Class({
|
|||||||
this.emit('prompted');
|
this.emit('prompted');
|
||||||
},
|
},
|
||||||
|
|
||||||
_onVerificationFailed() {
|
_onVerificationFailed(userVerifier, canRetry) {
|
||||||
this._queryingService = null;
|
this._queryingService = null;
|
||||||
this.clear();
|
this.clear();
|
||||||
|
|
||||||
this.updateSensitivity(true);
|
this.updateSensitivity(canRetry);
|
||||||
this.setActorInDefaultButtonWell(null);
|
this.setActorInDefaultButtonWell(null);
|
||||||
this.verificationStatus = AuthPromptStatus.VERIFICATION_FAILED;
|
this.verificationStatus = AuthPromptStatus.VERIFICATION_FAILED;
|
||||||
},
|
},
|
||||||
@@ -439,6 +439,7 @@ var AuthPrompt = new Lang.Class({
|
|||||||
this.verificationStatus = AuthPromptStatus.NOT_VERIFYING;
|
this.verificationStatus = AuthPromptStatus.NOT_VERIFYING;
|
||||||
this.cancelButton.reactive = true;
|
this.cancelButton.reactive = true;
|
||||||
this.nextButton.label = _("Next");
|
this.nextButton.label = _("Next");
|
||||||
|
this._preemptiveAnswer = null;
|
||||||
|
|
||||||
if (this._userVerifier)
|
if (this._userVerifier)
|
||||||
this._userVerifier.cancel();
|
this._userVerifier.cancel();
|
||||||
|
@@ -5,13 +5,14 @@ const Lang = imports.lang;
|
|||||||
const Shell = imports.gi.Shell;
|
const Shell = imports.gi.Shell;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
const FprintManagerIface = '<node> \
|
const FprintManagerIface = `
|
||||||
<interface name="net.reactivated.Fprint.Manager"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const FprintManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(FprintManagerIface);
|
const FprintManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(FprintManagerIface);
|
||||||
|
|
||||||
|
@@ -4,13 +4,14 @@ const Gio = imports.gi.Gio;
|
|||||||
const Lang = imports.lang;
|
const Lang = imports.lang;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
const OVirtCredentialsIface = '<node> \
|
const OVirtCredentialsIface = `
|
||||||
<interface name="org.ovirt.vdsm.Credentials"> \
|
<node>
|
||||||
<signal name="UserAuthenticated"> \
|
<interface name="org.ovirt.vdsm.Credentials">
|
||||||
<arg type="s" name="token"/> \
|
<signal name="UserAuthenticated">
|
||||||
</signal> \
|
<arg type="s" name="token"/>
|
||||||
</interface> \
|
</signal>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const OVirtCredentialsInfo = Gio.DBusInterfaceInfo.new_for_xml(OVirtCredentialsIface);
|
const OVirtCredentialsInfo = Gio.DBusInterfaceInfo.new_for_xml(OVirtCredentialsIface);
|
||||||
|
|
||||||
|
@@ -5,58 +5,61 @@ const Lang = imports.lang;
|
|||||||
const Shell = imports.gi.Shell;
|
const Shell = imports.gi.Shell;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
const ProviderIface = '<node> \
|
const ProviderIface = `
|
||||||
<interface name="org.freedesktop.realmd.Provider"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const Provider = Gio.DBusProxy.makeProxyWrapper(ProviderIface);
|
const Provider = Gio.DBusProxy.makeProxyWrapper(ProviderIface);
|
||||||
|
|
||||||
const ServiceIface = '<node> \
|
const ServiceIface = `
|
||||||
<interface name="org.freedesktop.realmd.Service"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const Service = Gio.DBusProxy.makeProxyWrapper(ServiceIface);
|
const Service = Gio.DBusProxy.makeProxyWrapper(ServiceIface);
|
||||||
|
|
||||||
const RealmIface = '<node> \
|
const RealmIface = `
|
||||||
<interface name="org.freedesktop.realmd.Realm"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const Realm = Gio.DBusProxy.makeProxyWrapper(RealmIface);
|
const Realm = Gio.DBusProxy.makeProxyWrapper(RealmIface);
|
||||||
|
|
||||||
var Manager = new Lang.Class({
|
var Manager = new Lang.Class({
|
||||||
|
@@ -537,12 +537,13 @@ var ShellUserVerifier = new Lang.Class({
|
|||||||
_verificationFailed(retry) {
|
_verificationFailed(retry) {
|
||||||
// For Not Listed / enterprise logins, immediately reset
|
// For Not Listed / enterprise logins, immediately reset
|
||||||
// the dialog
|
// the dialog
|
||||||
// Otherwise, we allow ALLOWED_FAILURES attempts. After that, we
|
// Otherwise, when in login mode we allow ALLOWED_FAILURES attempts.
|
||||||
// go back to the welcome screen.
|
// After that, we go back to the welcome screen.
|
||||||
|
|
||||||
this._failCounter++;
|
this._failCounter++;
|
||||||
let canRetry = retry && this._userName &&
|
let canRetry = retry && this._userName &&
|
||||||
this._failCounter < this._settings.get_int(ALLOWED_FAILURES_KEY);
|
(this._reauthOnly ||
|
||||||
|
this._failCounter < this._settings.get_int(ALLOWED_FAILURES_KEY));
|
||||||
|
|
||||||
if (canRetry) {
|
if (canRetry) {
|
||||||
if (!this.hasPendingMessages) {
|
if (!this.hasPendingMessages) {
|
||||||
@@ -565,7 +566,7 @@ var ShellUserVerifier = new Lang.Class({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
this.emit('verification-failed');
|
this.emit('verification-failed', canRetry);
|
||||||
},
|
},
|
||||||
|
|
||||||
_onConversationStopped(client, serviceName) {
|
_onConversationStopped(client, serviceName) {
|
||||||
|
@@ -9,8 +9,6 @@
|
|||||||
<file>gdm/realmd.js</file>
|
<file>gdm/realmd.js</file>
|
||||||
<file>gdm/util.js</file>
|
<file>gdm/util.js</file>
|
||||||
|
|
||||||
<file>extensionPrefs/main.js</file>
|
|
||||||
|
|
||||||
<file>misc/config.js</file>
|
<file>misc/config.js</file>
|
||||||
<file>misc/extensionUtils.js</file>
|
<file>misc/extensionUtils.js</file>
|
||||||
<file>misc/fileUtils.js</file>
|
<file>misc/fileUtils.js</file>
|
||||||
@@ -33,8 +31,6 @@
|
|||||||
<file>perf/core.js</file>
|
<file>perf/core.js</file>
|
||||||
<file>perf/hwtest.js</file>
|
<file>perf/hwtest.js</file>
|
||||||
|
|
||||||
<file>portalHelper/main.js</file>
|
|
||||||
|
|
||||||
<file>ui/accessDialog.js</file>
|
<file>ui/accessDialog.js</file>
|
||||||
<file>ui/altTab.js</file>
|
<file>ui/altTab.js</file>
|
||||||
<file>ui/animation.js</file>
|
<file>ui/animation.js</file>
|
||||||
@@ -43,6 +39,7 @@
|
|||||||
<file>ui/audioDeviceSelection.js</file>
|
<file>ui/audioDeviceSelection.js</file>
|
||||||
<file>ui/backgroundMenu.js</file>
|
<file>ui/backgroundMenu.js</file>
|
||||||
<file>ui/background.js</file>
|
<file>ui/background.js</file>
|
||||||
|
<file>ui/barLevel.js</file>
|
||||||
<file>ui/boxpointer.js</file>
|
<file>ui/boxpointer.js</file>
|
||||||
<file>ui/calendar.js</file>
|
<file>ui/calendar.js</file>
|
||||||
<file>ui/checkBox.js</file>
|
<file>ui/checkBox.js</file>
|
||||||
|
@@ -6,3 +6,17 @@ js_resources = gnome.compile_resources(
|
|||||||
c_name: 'shell_js_resources',
|
c_name: 'shell_js_resources',
|
||||||
dependencies: [config_js]
|
dependencies: [config_js]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
portal_resources = gnome.compile_resources(
|
||||||
|
'portal-resources', 'portal-resources.gresource.xml',
|
||||||
|
source_dir: ['.', meson.current_build_dir()],
|
||||||
|
c_name: 'portal_js_resources',
|
||||||
|
dependencies: [config_js]
|
||||||
|
)
|
||||||
|
|
||||||
|
prefs_resources = gnome.compile_resources(
|
||||||
|
'prefs-resources', 'prefs-resources.gresource.xml',
|
||||||
|
source_dir: ['.', meson.current_build_dir()],
|
||||||
|
c_name: 'prefs_js_resources',
|
||||||
|
dependencies: [config_js]
|
||||||
|
)
|
||||||
|
@@ -112,6 +112,8 @@ function createExtensionObject(uuid, dir, type) {
|
|||||||
let metadataContents, success, tag;
|
let metadataContents, success, tag;
|
||||||
try {
|
try {
|
||||||
[success, metadataContents, tag] = metadataFile.load_contents(null);
|
[success, metadataContents, tag] = metadataFile.load_contents(null);
|
||||||
|
if (metadataContents instanceof Uint8Array)
|
||||||
|
metadataContents = imports.byteArray.toString(metadataContents);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
throw new Error('Failed to load metadata.json: ' + e);
|
throw new Error('Failed to load metadata.json: ' + e);
|
||||||
}
|
}
|
||||||
|
@@ -4,17 +4,18 @@ const Gio = imports.gi.Gio;
|
|||||||
const Lang = imports.lang;
|
const Lang = imports.lang;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
const PresenceIface = '<node> \
|
const PresenceIface = `
|
||||||
<interface name="org.gnome.SessionManager.Presence"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var PresenceStatus = {
|
var PresenceStatus = {
|
||||||
AVAILABLE: 0,
|
AVAILABLE: 0,
|
||||||
@@ -32,16 +33,17 @@ 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 = '<node> \
|
const InhibitorIface = `
|
||||||
<interface name="org.gnome.SessionManager.Inhibitor"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var InhibitorProxy = Gio.DBusProxy.makeProxyWrapper(InhibitorIface);
|
var InhibitorProxy = Gio.DBusProxy.makeProxyWrapper(InhibitorIface);
|
||||||
function Inhibitor(objectPath, initCallback, cancellable) {
|
function Inhibitor(objectPath, initCallback, cancellable) {
|
||||||
@@ -49,29 +51,30 @@ 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 = '<node> \
|
const SessionManagerIface = `
|
||||||
<interface name="org.gnome.SessionManager"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var SessionManagerProxy = Gio.DBusProxy.makeProxyWrapper(SessionManagerIface);
|
var SessionManagerProxy = Gio.DBusProxy.makeProxyWrapper(SessionManagerIface);
|
||||||
function SessionManager(initCallback, cancellable) {
|
function SessionManager(initCallback, cancellable) {
|
||||||
|
@@ -17,6 +17,8 @@ var InputMethod = new Lang.Class({
|
|||||||
this._currentFocus = null;
|
this._currentFocus = null;
|
||||||
this._currentEvent = null;
|
this._currentEvent = null;
|
||||||
this._doForwardEvent = false;
|
this._doForwardEvent = false;
|
||||||
|
this._preeditStr = '';
|
||||||
|
this._preeditPos = 0;
|
||||||
this._ibus = IBus.Bus.new_async();
|
this._ibus = IBus.Bus.new_async();
|
||||||
this._ibus.connect('connected', this._onConnected.bind(this));
|
this._ibus.connect('connected', this._onConnected.bind(this));
|
||||||
this._ibus.connect('disconnected', this._clear.bind(this));
|
this._ibus.connect('disconnected', this._clear.bind(this));
|
||||||
@@ -69,6 +71,8 @@ var InputMethod = new Lang.Class({
|
|||||||
this._context.connect('commit-text', this._onCommitText.bind(this));
|
this._context.connect('commit-text', this._onCommitText.bind(this));
|
||||||
this._context.connect('delete-surrounding-text', this._onDeleteSurroundingText.bind(this));
|
this._context.connect('delete-surrounding-text', this._onDeleteSurroundingText.bind(this));
|
||||||
this._context.connect('update-preedit-text', this._onUpdatePreeditText.bind(this));
|
this._context.connect('update-preedit-text', this._onUpdatePreeditText.bind(this));
|
||||||
|
this._context.connect('show-preedit-text', this._onShowPreeditText.bind(this));
|
||||||
|
this._context.connect('hide-preedit-text', this._onHidePreeditText.bind(this));
|
||||||
this._context.connect('forward-key-event', this._onForwardKeyEvent.bind(this));
|
this._context.connect('forward-key-event', this._onForwardKeyEvent.bind(this));
|
||||||
|
|
||||||
this._updateCapabilities();
|
this._updateCapabilities();
|
||||||
@@ -79,6 +83,8 @@ var InputMethod = new Lang.Class({
|
|||||||
this._hints = 0;
|
this._hints = 0;
|
||||||
this._purpose = 0;
|
this._purpose = 0;
|
||||||
this._enabled = false;
|
this._enabled = false;
|
||||||
|
this._preeditStr = ''
|
||||||
|
this._preeditPos = 0;
|
||||||
},
|
},
|
||||||
|
|
||||||
_emitRequestSurrounding() {
|
_emitRequestSurrounding() {
|
||||||
@@ -95,11 +101,22 @@ var InputMethod = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_onUpdatePreeditText(context, text, pos, visible) {
|
_onUpdatePreeditText(context, text, pos, visible) {
|
||||||
let str = null;
|
if (text == null)
|
||||||
if (visible && text != null)
|
return;
|
||||||
str = text.get_text();
|
this._preeditStr = text.get_text();
|
||||||
|
this._preeditPos = pos;
|
||||||
|
if (visible)
|
||||||
|
this.set_preedit_text(this._preeditStr, pos);
|
||||||
|
else
|
||||||
|
this.set_preedit_text(null, pos);
|
||||||
|
},
|
||||||
|
|
||||||
this.set_preedit_text(str, pos);
|
_onShowPreeditText(context) {
|
||||||
|
this.set_preedit_text(this._preeditStr, this._preeditPos);
|
||||||
|
},
|
||||||
|
|
||||||
|
_onHidePreeditText(context) {
|
||||||
|
this.set_preedit_text(null, this._preeditPos);
|
||||||
},
|
},
|
||||||
|
|
||||||
_onForwardKeyEvent(context, keyval, keycode, state) {
|
_onForwardKeyEvent(context, keyval, keycode, state) {
|
||||||
|
@@ -7,53 +7,56 @@ const Mainloop = imports.mainloop;
|
|||||||
const Shell = imports.gi.Shell;
|
const Shell = imports.gi.Shell;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
const SystemdLoginManagerIface = '<node> \
|
const SystemdLoginManagerIface = `
|
||||||
<interface name="org.freedesktop.login1.Manager"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const SystemdLoginSessionIface = '<node> \
|
const SystemdLoginSessionIface = `
|
||||||
<interface name="org.freedesktop.login1.Session"> \
|
<node>
|
||||||
<signal name="Lock" /> \
|
<interface name="org.freedesktop.login1.Session">
|
||||||
<signal name="Unlock" /> \
|
<signal name="Lock" />
|
||||||
<property name="Active" type="b" access="read" /> \
|
<signal name="Unlock" />
|
||||||
<property name="Class" type="s" access="read" /> \
|
<property name="Active" type="b" access="read" />
|
||||||
<property name="Id" type="s" access="read" /> \
|
<property name="Class" type="s" access="read" />
|
||||||
<method name="SetLockedHint"> \
|
<property name="Id" type="s" access="read" />
|
||||||
<arg type="b" direction="in"/> \
|
<method name="SetLockedHint">
|
||||||
</method> \
|
<arg type="b" direction="in"/>
|
||||||
</interface> \
|
</method>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const SystemdLoginUserIface = '<node> \
|
const SystemdLoginUserIface = `
|
||||||
<interface name="org.freedesktop.login1.User"> \
|
<node>
|
||||||
<property name="Display" type="(so)" access="read" /> \
|
<interface name="org.freedesktop.login1.User">
|
||||||
<property name="Sessions" type="a(so)" access="read" /> \
|
<property name="Display" type="(so)" access="read" />
|
||||||
</interface> \
|
<property name="Sessions" type="a(so)" access="read" />
|
||||||
</node>';
|
</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);
|
||||||
|
@@ -92,41 +92,43 @@ 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 = '<node> \
|
const ModemGsmNetworkInterface = `
|
||||||
<interface name="org.freedesktop.ModemManager.Modem.Gsm.Network"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const ModemGsmNetworkProxy = Gio.DBusProxy.makeProxyWrapper(ModemGsmNetworkInterface);
|
const ModemGsmNetworkProxy = Gio.DBusProxy.makeProxyWrapper(ModemGsmNetworkInterface);
|
||||||
|
|
||||||
const ModemCdmaInterface = '<node> \
|
const ModemCdmaInterface = `
|
||||||
<interface name="org.freedesktop.ModemManager.Modem.Cdma"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const ModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(ModemCdmaInterface);
|
const ModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(ModemCdmaInterface);
|
||||||
|
|
||||||
@@ -222,26 +224,29 @@ Signals.addSignalMethods(ModemCdma.prototype);
|
|||||||
// Support for the new ModemManager1 interface (MM >= 0.7)
|
// Support for the new ModemManager1 interface (MM >= 0.7)
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
const BroadbandModemInterface = '<node> \
|
const BroadbandModemInterface = `
|
||||||
<interface name="org.freedesktop.ModemManager1.Modem"> \
|
<node>
|
||||||
<property name="SignalQuality" type="(ub)" access="read" /> \
|
<interface name="org.freedesktop.ModemManager1.Modem">
|
||||||
</interface> \
|
<property name="SignalQuality" type="(ub)" access="read" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const BroadbandModemProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemInterface);
|
const BroadbandModemProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemInterface);
|
||||||
|
|
||||||
const BroadbandModem3gppInterface = '<node> \
|
const BroadbandModem3gppInterface = `
|
||||||
<interface name="org.freedesktop.ModemManager1.Modem.Modem3gpp"> \
|
<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" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const BroadbandModem3gppProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModem3gppInterface);
|
const BroadbandModem3gppProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModem3gppInterface);
|
||||||
|
|
||||||
const BroadbandModemCdmaInterface = '<node> \
|
const BroadbandModemCdmaInterface = `
|
||||||
<interface name="org.freedesktop.ModemManager1.Modem.ModemCdma"> \
|
<node>
|
||||||
<property name="Sid" type="u" access="read" /> \
|
<interface name="org.freedesktop.ModemManager1.Modem.ModemCdma">
|
||||||
</interface> \
|
<property name="Sid" type="u" access="read" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const BroadbandModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemCdmaInterface);
|
const BroadbandModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemCdmaInterface);
|
||||||
|
|
||||||
var BroadbandModem = new Lang.Class({
|
var BroadbandModem = new Lang.Class({
|
||||||
|
@@ -8,21 +8,22 @@ 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 = '<node> \
|
const ObjectManagerIface = `
|
||||||
<interface name="org.freedesktop.DBus.ObjectManager"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const ObjectManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(ObjectManagerIface);
|
const ObjectManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(ObjectManagerIface);
|
||||||
|
|
||||||
|
@@ -2,30 +2,31 @@
|
|||||||
|
|
||||||
const Gio = imports.gi.Gio;
|
const Gio = imports.gi.Gio;
|
||||||
|
|
||||||
const PermissionStoreIface = '<node> \
|
const PermissionStoreIface = `
|
||||||
<interface name="org.freedesktop.impl.portal.PermissionStore"> \
|
<node>
|
||||||
<method name="Lookup"> \
|
<interface name="org.freedesktop.impl.portal.PermissionStore">
|
||||||
<arg name="table" type="s" direction="in"/> \
|
<method name="Lookup">
|
||||||
<arg name="id" type="s" direction="in"/> \
|
<arg name="table" type="s" direction="in"/>
|
||||||
<arg name="permissions" type="a{sas}" direction="out"/> \
|
<arg name="id" type="s" direction="in"/>
|
||||||
<arg name="data" type="v" direction="out"/> \
|
<arg name="permissions" type="a{sas}" direction="out"/>
|
||||||
</method> \
|
<arg name="data" type="v" direction="out"/>
|
||||||
<method name="Set"> \
|
</method>
|
||||||
<arg name="table" type="s" direction="in"/> \
|
<method name="Set">
|
||||||
<arg name="create" type="b" direction="in"/> \
|
<arg name="table" type="s" direction="in"/>
|
||||||
<arg name="id" type="s" direction="in"/> \
|
<arg name="create" type="b" direction="in"/>
|
||||||
<arg name="app_permissions" type="a{sas}" direction="in"/> \
|
<arg name="id" type="s" direction="in"/>
|
||||||
<arg name="data" type="v" direction="in"/> \
|
<arg name="app_permissions" type="a{sas}" direction="in"/>
|
||||||
</method> \
|
<arg name="data" type="v" direction="in"/>
|
||||||
<signal name="Changed"> \
|
</method>
|
||||||
<arg name="table" type="s" direction="out"/> \
|
<signal name="Changed">
|
||||||
<arg name="id" type="s" direction="out"/> \
|
<arg name="table" type="s" direction="out"/>
|
||||||
<arg name="deleted" type="b" direction="out"/> \
|
<arg name="id" type="s" direction="out"/>
|
||||||
<arg name="data" type="v" direction="out"/> \
|
<arg name="deleted" type="b" direction="out"/>
|
||||||
<arg name="permissions" type="a{sas}" direction="out"/> \
|
<arg name="data" type="v" direction="out"/>
|
||||||
</signal> \
|
<arg name="permissions" type="a{sas}" direction="out"/>
|
||||||
</interface> \
|
</signal>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const PermissionStoreProxy = Gio.DBusProxy.makeProxyWrapper(PermissionStoreIface);
|
const PermissionStoreProxy = Gio.DBusProxy.makeProxyWrapper(PermissionStoreIface);
|
||||||
|
|
||||||
|
@@ -7,14 +7,15 @@ const Signals = imports.signals;
|
|||||||
|
|
||||||
const ObjectManager = imports.misc.objectManager;
|
const ObjectManager = imports.misc.objectManager;
|
||||||
|
|
||||||
const SmartcardTokenIface = '<node> \
|
const SmartcardTokenIface = `
|
||||||
<interface name="org.gnome.SettingsDaemon.Smartcard.Token"> \
|
<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"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
let _smartcardManager = null;
|
let _smartcardManager = null;
|
||||||
|
|
||||||
|
@@ -22,11 +22,12 @@ const ALWAYS_SHOW_LOG_OUT_KEY = 'always-show-log-out';
|
|||||||
const SENSOR_BUS_NAME = 'net.hadess.SensorProxy';
|
const SENSOR_BUS_NAME = 'net.hadess.SensorProxy';
|
||||||
const SENSOR_OBJECT_PATH = '/net/hadess/SensorProxy';
|
const SENSOR_OBJECT_PATH = '/net/hadess/SensorProxy';
|
||||||
|
|
||||||
const SensorProxyInterface = '<node> \
|
const SensorProxyInterface = `
|
||||||
<interface name="net.hadess.SensorProxy"> \
|
<node>
|
||||||
<property name="HasAccelerometer" type="b" access="read"/> \
|
<interface name="net.hadess.SensorProxy">
|
||||||
</interface> \
|
<property name="HasAccelerometer" type="b" access="read"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const POWER_OFF_ACTION_ID = 'power-off';
|
const POWER_OFF_ACTION_ID = 'power-off';
|
||||||
const LOCK_SCREEN_ACTION_ID = 'lock-screen';
|
const LOCK_SCREEN_ACTION_ID = 'lock-screen';
|
||||||
|
7
js/portal-resources.gresource.xml
Normal file
7
js/portal-resources.gresource.xml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<gresources>
|
||||||
|
<gresource prefix="/org/gnome/shell">
|
||||||
|
<file>misc/config.js</file>
|
||||||
|
<file>portalHelper/main.js</file>
|
||||||
|
</gresource>
|
||||||
|
</gresources>
|
@@ -30,25 +30,26 @@ const CONNECTIVITY_CHECK_HOST = 'nmcheck.gnome.org';
|
|||||||
const CONNECTIVITY_CHECK_URI = 'http://' + CONNECTIVITY_CHECK_HOST;
|
const CONNECTIVITY_CHECK_URI = 'http://' + CONNECTIVITY_CHECK_HOST;
|
||||||
const CONNECTIVITY_RECHECK_RATELIMIT_TIMEOUT = 30 * GLib.USEC_PER_SEC;
|
const CONNECTIVITY_RECHECK_RATELIMIT_TIMEOUT = 30 * GLib.USEC_PER_SEC;
|
||||||
|
|
||||||
const HelperDBusInterface = '<node> \
|
const HelperDBusInterface = `
|
||||||
<interface name="org.gnome.Shell.PortalHelper"> \
|
<node>
|
||||||
<method name="Authenticate"> \
|
<interface name="org.gnome.Shell.PortalHelper">
|
||||||
<arg type="o" direction="in" name="connection" /> \
|
<method name="Authenticate">
|
||||||
<arg type="s" direction="in" name="url" /> \
|
<arg type="o" direction="in" name="connection" />
|
||||||
<arg type="u" direction="in" name="timestamp" /> \
|
<arg type="s" direction="in" name="url" />
|
||||||
</method> \
|
<arg type="u" direction="in" name="timestamp" />
|
||||||
<method name="Close"> \
|
</method>
|
||||||
<arg type="o" direction="in" name="connection" /> \
|
<method name="Close">
|
||||||
</method> \
|
<arg type="o" direction="in" name="connection" />
|
||||||
<method name="Refresh"> \
|
</method>
|
||||||
<arg type="o" direction="in" name="connection" /> \
|
<method name="Refresh">
|
||||||
</method> \
|
<arg type="o" direction="in" name="connection" />
|
||||||
<signal name="Done"> \
|
</method>
|
||||||
<arg type="o" name="connection" /> \
|
<signal name="Done">
|
||||||
<arg type="u" name="result" /> \
|
<arg type="o" name="connection" />
|
||||||
</signal> \
|
<arg type="u" name="result" />
|
||||||
</interface> \
|
</signal>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var PortalHeaderBar = new Lang.Class({
|
var PortalHeaderBar = new Lang.Class({
|
||||||
Name: 'PortalHeaderBar',
|
Name: 'PortalHeaderBar',
|
||||||
|
11
js/prefs-resources.gresource.xml
Normal file
11
js/prefs-resources.gresource.xml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<gresources>
|
||||||
|
<gresource prefix="/org/gnome/shell">
|
||||||
|
<file>extensionPrefs/main.js</file>
|
||||||
|
|
||||||
|
<file>misc/config.js</file>
|
||||||
|
<file>misc/extensionUtils.js</file>
|
||||||
|
<file>misc/fileUtils.js</file>
|
||||||
|
<file>misc/params.js</file>
|
||||||
|
</gresource>
|
||||||
|
</gresources>
|
@@ -10,27 +10,29 @@ const CheckBox = imports.ui.checkBox;
|
|||||||
const Dialog = imports.ui.dialog;
|
const Dialog = imports.ui.dialog;
|
||||||
const ModalDialog = imports.ui.modalDialog;
|
const ModalDialog = imports.ui.modalDialog;
|
||||||
|
|
||||||
const RequestIface = '<node> \
|
const RequestIface = `
|
||||||
<interface name="org.freedesktop.impl.portal.Request"> \
|
<node>
|
||||||
<method name="Close"/> \
|
<interface name="org.freedesktop.impl.portal.Request">
|
||||||
</interface> \
|
<method name="Close"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const AccessIface = '<node> \
|
const AccessIface = `
|
||||||
<interface name="org.freedesktop.impl.portal.Access"> \
|
<node>
|
||||||
<method name="AccessDialog"> \
|
<interface name="org.freedesktop.impl.portal.Access">
|
||||||
<arg type="o" name="handle" direction="in"/> \
|
<method name="AccessDialog">
|
||||||
<arg type="s" name="app_id" direction="in"/> \
|
<arg type="o" name="handle" direction="in"/>
|
||||||
<arg type="s" name="parent_window" direction="in"/> \
|
<arg type="s" name="app_id" direction="in"/>
|
||||||
<arg type="s" name="title" direction="in"/> \
|
<arg type="s" name="parent_window" direction="in"/>
|
||||||
<arg type="s" name="subtitle" direction="in"/> \
|
<arg type="s" name="title" direction="in"/>
|
||||||
<arg type="s" name="body" direction="in"/> \
|
<arg type="s" name="subtitle" direction="in"/>
|
||||||
<arg type="a{sv}" name="options" direction="in"/> \
|
<arg type="s" name="body" direction="in"/>
|
||||||
<arg type="u" name="response" direction="out"/> \
|
<arg type="a{sv}" name="options" direction="in"/>
|
||||||
<arg type="a{sv}" name="results" direction="out"/> \
|
<arg type="u" name="response" direction="out"/>
|
||||||
</method> \
|
<arg type="a{sv}" name="results" direction="out"/>
|
||||||
</interface> \
|
</method>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var DialogResponse = {
|
var DialogResponse = {
|
||||||
OK: 0,
|
OK: 0,
|
||||||
|
@@ -66,11 +66,12 @@ var PAGE_SWITCH_TIME = 0.3;
|
|||||||
const SWITCHEROO_BUS_NAME = 'net.hadess.SwitcherooControl';
|
const SWITCHEROO_BUS_NAME = 'net.hadess.SwitcherooControl';
|
||||||
const SWITCHEROO_OBJECT_PATH = '/net/hadess/SwitcherooControl';
|
const SWITCHEROO_OBJECT_PATH = '/net/hadess/SwitcherooControl';
|
||||||
|
|
||||||
const SwitcherooProxyInterface = '<node> \
|
const SwitcherooProxyInterface = `
|
||||||
<interface name="net.hadess.SwitcherooControl"> \
|
<node>
|
||||||
<property name="HasDualGpu" type="b" access="read"/> \
|
<interface name="net.hadess.SwitcherooControl">
|
||||||
</interface> \
|
<property name="HasDualGpu" type="b" access="read"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const SwitcherooProxy = Gio.DBusProxy.makeProxyWrapper(SwitcherooProxyInterface);
|
const SwitcherooProxy = Gio.DBusProxy.makeProxyWrapper(SwitcherooProxyInterface);
|
||||||
let discreteGpuAvailable = false;
|
let discreteGpuAvailable = false;
|
||||||
|
@@ -15,18 +15,19 @@ var AudioDevice = {
|
|||||||
MICROPHONE: 1 << 2
|
MICROPHONE: 1 << 2
|
||||||
};
|
};
|
||||||
|
|
||||||
const AudioDeviceSelectionIface = '<node> \
|
const AudioDeviceSelectionIface = `
|
||||||
<interface name="org.gnome.Shell.AudioDeviceSelection"> \
|
<node>
|
||||||
<method name="Open"> \
|
<interface name="org.gnome.Shell.AudioDeviceSelection">
|
||||||
<arg name="devices" direction="in" type="as" /> \
|
<method name="Open">
|
||||||
</method> \
|
<arg name="devices" direction="in" type="as" />
|
||||||
<method name="Close"> \
|
</method>
|
||||||
</method> \
|
<method name="Close">
|
||||||
<signal name="DeviceSelected"> \
|
</method>
|
||||||
<arg name="device" type="s" /> \
|
<signal name="DeviceSelected">
|
||||||
</signal> \
|
<arg name="device" type="s" />
|
||||||
</interface> \
|
</signal>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var AudioDeviceSelectionDialog = new Lang.Class({
|
var AudioDeviceSelectionDialog = new Lang.Class({
|
||||||
Name: 'AudioDeviceSelectionDialog',
|
Name: 'AudioDeviceSelectionDialog',
|
||||||
|
210
js/ui/barLevel.js
Normal file
210
js/ui/barLevel.js
Normal file
@@ -0,0 +1,210 @@
|
|||||||
|
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
|
||||||
|
|
||||||
|
const Atk = imports.gi.Atk;
|
||||||
|
const Cairo = imports.cairo;
|
||||||
|
const Clutter = imports.gi.Clutter;
|
||||||
|
const Lang = imports.lang;
|
||||||
|
const St = imports.gi.St;
|
||||||
|
const Signals = imports.signals;
|
||||||
|
|
||||||
|
var BarLevel = new Lang.Class({
|
||||||
|
Name: "BarLevel",
|
||||||
|
|
||||||
|
_init(value, params) {
|
||||||
|
if (isNaN(value))
|
||||||
|
// Avoid spreading NaNs around
|
||||||
|
throw TypeError('The bar level value must be a number');
|
||||||
|
this._maxValue = 1;
|
||||||
|
this._value = Math.max(Math.min(value, this._maxValue), 0);
|
||||||
|
this._overdriveStart = 1;
|
||||||
|
this._barLevelWidth = 0;
|
||||||
|
|
||||||
|
if (params == undefined)
|
||||||
|
params = {}
|
||||||
|
|
||||||
|
this.actor = new St.DrawingArea({ styleClass: params['styleClass'] || 'barlevel',
|
||||||
|
can_focus: params['canFocus'] || false,
|
||||||
|
reactive: params['reactive'] || false,
|
||||||
|
accessible_role: params['accessibleRole'] || Atk.Role.LEVEL_BAR });
|
||||||
|
this.actor.connect('repaint', this._barLevelRepaint.bind(this));
|
||||||
|
this.actor.connect('allocation-changed', (actor, box) => {
|
||||||
|
this._barLevelWidth = box.get_width();
|
||||||
|
});
|
||||||
|
|
||||||
|
this._customAccessible = St.GenericAccessible.new_for_actor(this.actor);
|
||||||
|
this.actor.set_accessible(this._customAccessible);
|
||||||
|
|
||||||
|
this._customAccessible.connect('get-current-value', this._getCurrentValue.bind(this));
|
||||||
|
this._customAccessible.connect('get-minimum-value', this._getMinimumValue.bind(this));
|
||||||
|
this._customAccessible.connect('get-maximum-value', this._getMaximumValue.bind(this));
|
||||||
|
this._customAccessible.connect('set-current-value', this._setCurrentValue.bind(this));
|
||||||
|
|
||||||
|
this.connect('value-changed', this._valueChanged.bind(this));
|
||||||
|
},
|
||||||
|
|
||||||
|
setValue(value) {
|
||||||
|
if (isNaN(value))
|
||||||
|
throw TypeError('The bar level value must be a number');
|
||||||
|
|
||||||
|
this._value = Math.max(Math.min(value, this._maxValue), 0);
|
||||||
|
this.actor.queue_repaint();
|
||||||
|
},
|
||||||
|
|
||||||
|
setMaximumValue(value) {
|
||||||
|
if (isNaN(value))
|
||||||
|
throw TypeError('The bar level max value must be a number');
|
||||||
|
|
||||||
|
this._maxValue = Math.max(value, 1);
|
||||||
|
this._overdriveStart = Math.min(this._overdriveStart, this._maxValue);
|
||||||
|
this.actor.queue_repaint();
|
||||||
|
},
|
||||||
|
|
||||||
|
setOverdriveStart(value) {
|
||||||
|
if (isNaN(value))
|
||||||
|
throw TypeError('The overdrive limit value must be a number');
|
||||||
|
if (value > this._maxValue)
|
||||||
|
throw new Error(`Tried to set overdrive value to ${value}, ` +
|
||||||
|
`which is a number greater than the maximum allowed value ${this._maxValue}`);
|
||||||
|
|
||||||
|
this._overdriveStart = value;
|
||||||
|
this._value = Math.max(Math.min(value, this._maxValue), 0);
|
||||||
|
this.actor.queue_repaint();
|
||||||
|
},
|
||||||
|
|
||||||
|
_barLevelRepaint(area) {
|
||||||
|
let cr = area.get_context();
|
||||||
|
let themeNode = area.get_theme_node();
|
||||||
|
let [width, height] = area.get_surface_size();
|
||||||
|
|
||||||
|
let barLevelHeight = themeNode.get_length('-barlevel-height');
|
||||||
|
let barLevelBorderRadius = Math.min(width, barLevelHeight) / 2;
|
||||||
|
let fgColor = themeNode.get_foreground_color();
|
||||||
|
|
||||||
|
let barLevelColor = themeNode.get_color('-barlevel-background-color');
|
||||||
|
let barLevelActiveColor = themeNode.get_color('-barlevel-active-background-color');
|
||||||
|
let barLevelOverdriveColor = themeNode.get_color('-barlevel-overdrive-color');
|
||||||
|
|
||||||
|
let barLevelBorderWidth = Math.min(themeNode.get_length('-barlevel-border-width'), 1);
|
||||||
|
let [hasBorderColor, barLevelBorderColor] =
|
||||||
|
themeNode.lookup_color('-barlevel-border-color', false);
|
||||||
|
if (!hasBorderColor)
|
||||||
|
barLevelBorderColor = barLevelColor;
|
||||||
|
let [hasActiveBorderColor, barLevelActiveBorderColor] =
|
||||||
|
themeNode.lookup_color('-barlevel-active-border-color', false);
|
||||||
|
if (!hasActiveBorderColor)
|
||||||
|
barLevelActiveBorderColor = barLevelActiveColor;
|
||||||
|
let [hasOverdriveBorderColor, barLevelOverdriveBorderColor] =
|
||||||
|
themeNode.lookup_color('-barlevel-overdrive-border-color', false);
|
||||||
|
if (!hasOverdriveBorderColor)
|
||||||
|
barLevelOverdriveBorderColor = barLevelOverdriveColor;
|
||||||
|
|
||||||
|
const TAU = Math.PI * 2;
|
||||||
|
|
||||||
|
let endX = 0;
|
||||||
|
if (this._maxValue > 0)
|
||||||
|
endX = barLevelBorderRadius + (width - 2 * barLevelBorderRadius) * this._value / this._maxValue;
|
||||||
|
|
||||||
|
let overdriveSeparatorX = barLevelBorderRadius + (width - 2 * barLevelBorderRadius) * this._overdriveStart / this._maxValue;
|
||||||
|
let overdriveActive = this._overdriveStart !== this._maxValue;
|
||||||
|
let overdriveSeparatorWidth = 0;
|
||||||
|
if (overdriveActive)
|
||||||
|
overdriveSeparatorWidth = themeNode.get_length('-barlevel-overdrive-separator-width');
|
||||||
|
|
||||||
|
/* background bar */
|
||||||
|
cr.arc(width - barLevelBorderRadius - barLevelBorderWidth, height / 2, barLevelBorderRadius, TAU * 3 / 4, TAU * 1 / 4);
|
||||||
|
cr.lineTo(endX, (height + barLevelHeight) / 2);
|
||||||
|
cr.lineTo(endX, (height - barLevelHeight) / 2);
|
||||||
|
cr.lineTo(width - barLevelBorderRadius - barLevelBorderWidth, (height - barLevelHeight) / 2);
|
||||||
|
Clutter.cairo_set_source_color(cr, barLevelColor);
|
||||||
|
cr.fillPreserve();
|
||||||
|
Clutter.cairo_set_source_color(cr, barLevelBorderColor);
|
||||||
|
cr.setLineWidth(barLevelBorderWidth);
|
||||||
|
cr.stroke();
|
||||||
|
|
||||||
|
/* normal progress bar */
|
||||||
|
let x = Math.min(endX, overdriveSeparatorX - overdriveSeparatorWidth / 2);
|
||||||
|
cr.arc(barLevelBorderRadius + barLevelBorderWidth, height / 2, barLevelBorderRadius, TAU * 1 / 4, TAU * 3 / 4);
|
||||||
|
cr.lineTo(x, (height - barLevelHeight) / 2);
|
||||||
|
cr.lineTo(x, (height + barLevelHeight) / 2);
|
||||||
|
cr.lineTo(barLevelBorderRadius + barLevelBorderWidth, (height + barLevelHeight) / 2);
|
||||||
|
Clutter.cairo_set_source_color(cr, barLevelActiveColor);
|
||||||
|
cr.fillPreserve();
|
||||||
|
Clutter.cairo_set_source_color(cr, barLevelActiveBorderColor);
|
||||||
|
cr.setLineWidth(barLevelBorderWidth);
|
||||||
|
cr.stroke();
|
||||||
|
|
||||||
|
/* overdrive progress barLevel */
|
||||||
|
x = Math.min(endX, overdriveSeparatorX) + overdriveSeparatorWidth / 2;
|
||||||
|
if (this._value > this._overdriveStart) {
|
||||||
|
cr.moveTo(x, (height - barLevelHeight) / 2);
|
||||||
|
cr.lineTo(endX, (height - barLevelHeight) / 2);
|
||||||
|
cr.lineTo(endX, (height + barLevelHeight) / 2);
|
||||||
|
cr.lineTo(x, (height + barLevelHeight) / 2);
|
||||||
|
cr.lineTo(x, (height - barLevelHeight) / 2);
|
||||||
|
Clutter.cairo_set_source_color(cr, barLevelOverdriveColor);
|
||||||
|
cr.fillPreserve();
|
||||||
|
Clutter.cairo_set_source_color(cr, barLevelOverdriveBorderColor);
|
||||||
|
cr.setLineWidth(barLevelBorderWidth);
|
||||||
|
cr.stroke();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* end progress bar arc */
|
||||||
|
if (this._value <= this._overdriveStart)
|
||||||
|
Clutter.cairo_set_source_color(cr, barLevelActiveColor);
|
||||||
|
else
|
||||||
|
Clutter.cairo_set_source_color(cr, barLevelOverdriveColor);
|
||||||
|
cr.arc(endX, height / 2, barLevelBorderRadius, TAU * 3 / 4, TAU * 1 / 4);
|
||||||
|
cr.lineTo(Math.floor(endX), (height + barLevelHeight) / 2);
|
||||||
|
cr.lineTo(Math.floor(endX), (height - barLevelHeight) / 2);
|
||||||
|
cr.lineTo(endX, (height - barLevelHeight) / 2);
|
||||||
|
cr.fillPreserve();
|
||||||
|
cr.setLineWidth(barLevelBorderWidth);
|
||||||
|
cr.stroke();
|
||||||
|
|
||||||
|
/* draw overdrive separator */
|
||||||
|
if (overdriveActive) {
|
||||||
|
cr.moveTo(overdriveSeparatorX - overdriveSeparatorWidth / 2, (height - barLevelHeight) / 2);
|
||||||
|
cr.lineTo(overdriveSeparatorX + overdriveSeparatorWidth / 2, (height - barLevelHeight) / 2);
|
||||||
|
cr.lineTo(overdriveSeparatorX + overdriveSeparatorWidth / 2, (height + barLevelHeight) / 2);
|
||||||
|
cr.lineTo(overdriveSeparatorX - overdriveSeparatorWidth / 2, (height + barLevelHeight) / 2);
|
||||||
|
cr.lineTo(overdriveSeparatorX - overdriveSeparatorWidth / 2, (height - barLevelHeight) / 2);
|
||||||
|
if (this._value <= this._overdriveStart)
|
||||||
|
Clutter.cairo_set_source_color(cr, fgColor);
|
||||||
|
else
|
||||||
|
Clutter.cairo_set_source_color(cr, barLevelColor);
|
||||||
|
cr.fill();
|
||||||
|
}
|
||||||
|
|
||||||
|
cr.$dispose();
|
||||||
|
},
|
||||||
|
|
||||||
|
_getCurrentValue(actor) {
|
||||||
|
return this._value;
|
||||||
|
},
|
||||||
|
|
||||||
|
_getOverdriveStart(actor) {
|
||||||
|
return this._overdriveStart;
|
||||||
|
},
|
||||||
|
|
||||||
|
_getMinimumValue(actor) {
|
||||||
|
return 0;
|
||||||
|
},
|
||||||
|
|
||||||
|
_getMaximumValue(actor) {
|
||||||
|
return this._maxValue;
|
||||||
|
},
|
||||||
|
|
||||||
|
_setCurrentValue(actor, value) {
|
||||||
|
this._value = value;
|
||||||
|
},
|
||||||
|
|
||||||
|
_valueChanged(barLevel, value, property) {
|
||||||
|
this._customAccessible.notify("accessible-value");
|
||||||
|
},
|
||||||
|
|
||||||
|
get value() {
|
||||||
|
return this._value;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Signals.addSignalMethods(BarLevel.prototype);
|
@@ -44,6 +44,7 @@ var BoxPointer = new Lang.Class({
|
|||||||
y_fill: true });
|
y_fill: true });
|
||||||
this._container = new Shell.GenericContainer();
|
this._container = new Shell.GenericContainer();
|
||||||
this.actor.set_child(this._container);
|
this.actor.set_child(this._container);
|
||||||
|
this.actor.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
|
||||||
this._container.connect('get-preferred-width', this._getPreferredWidth.bind(this));
|
this._container.connect('get-preferred-width', this._getPreferredWidth.bind(this));
|
||||||
this._container.connect('get-preferred-height', this._getPreferredHeight.bind(this));
|
this._container.connect('get-preferred-height', this._getPreferredHeight.bind(this));
|
||||||
this._container.connect('allocate', this._allocate.bind(this));
|
this._container.connect('allocate', this._allocate.bind(this));
|
||||||
|
@@ -134,18 +134,19 @@ var EmptyEventSource = new Lang.Class({
|
|||||||
});
|
});
|
||||||
Signals.addSignalMethods(EmptyEventSource.prototype);
|
Signals.addSignalMethods(EmptyEventSource.prototype);
|
||||||
|
|
||||||
const CalendarServerIface = '<node> \
|
const CalendarServerIface = `
|
||||||
<interface name="org.gnome.Shell.CalendarServer"> \
|
<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" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const CalendarServerInfo = Gio.DBusInterfaceInfo.new_for_xml(CalendarServerIface);
|
const CalendarServerInfo = Gio.DBusInterfaceInfo.new_for_xml(CalendarServerIface);
|
||||||
|
|
||||||
|
@@ -74,14 +74,15 @@ function startAppForMount(app, mount) {
|
|||||||
|
|
||||||
/******************************************/
|
/******************************************/
|
||||||
|
|
||||||
const HotplugSnifferIface = '<node> \
|
const HotplugSnifferIface = `
|
||||||
<interface name="org.gnome.Shell.HotplugSniffer"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const HotplugSnifferProxy = Gio.DBusProxy.makeProxyWrapper(HotplugSnifferIface);
|
const HotplugSnifferProxy = Gio.DBusProxy.makeProxyWrapper(HotplugSnifferIface);
|
||||||
function HotplugSniffer() {
|
function HotplugSniffer() {
|
||||||
|
@@ -506,8 +506,12 @@ var VPNRequestHandler = new Lang.Class({
|
|||||||
try {
|
try {
|
||||||
data = this._dataStdout.peek_buffer();
|
data = this._dataStdout.peek_buffer();
|
||||||
|
|
||||||
keyfile.load_from_data(data.toString(), data.length,
|
if (data instanceof Uint8Array)
|
||||||
GLib.KeyFileFlags.NONE);
|
data = imports.byteArray.toGBytes(data);
|
||||||
|
else
|
||||||
|
data = data.toGBytes();
|
||||||
|
|
||||||
|
keyfile.load_from_bytes(data, GLib.KeyFileFlags.NONE);
|
||||||
|
|
||||||
if (keyfile.get_integer(VPN_UI_GROUP, 'Version') != 2)
|
if (keyfile.get_integer(VPN_UI_GROUP, 'Version') != 2)
|
||||||
throw new Error('Invalid plugin keyfile version, is %d');
|
throw new Error('Invalid plugin keyfile version, is %d');
|
||||||
|
@@ -402,6 +402,7 @@ var Dash = new Lang.Class({
|
|||||||
clip_to_allocation: true });
|
clip_to_allocation: true });
|
||||||
this._box._delegate = this;
|
this._box._delegate = this;
|
||||||
this._container.add_actor(this._box);
|
this._container.add_actor(this._box);
|
||||||
|
this._container.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
|
||||||
|
|
||||||
this._showAppsIcon = new ShowAppsIcon();
|
this._showAppsIcon = new ShowAppsIcon();
|
||||||
this._showAppsIcon.childScale = 1;
|
this._showAppsIcon.childScale = 1;
|
||||||
|
@@ -40,6 +40,7 @@ var Dialog = new Lang.Class({
|
|||||||
// mode accordingly so wrapped labels are handled correctly during
|
// mode accordingly so wrapped labels are handled correctly during
|
||||||
// size requests.
|
// size requests.
|
||||||
this._dialog.request_mode = Clutter.RequestMode.HEIGHT_FOR_WIDTH;
|
this._dialog.request_mode = Clutter.RequestMode.HEIGHT_FOR_WIDTH;
|
||||||
|
this._dialog.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
|
||||||
|
|
||||||
this.contentLayout = new St.BoxLayout({ vertical: true,
|
this.contentLayout = new St.BoxLayout({ vertical: true,
|
||||||
style_class: "modal-dialog-content-box" });
|
style_class: "modal-dialog-content-box" });
|
||||||
|
@@ -506,6 +506,7 @@ var _Draggable = new Lang.Class({
|
|||||||
return true;
|
return true;
|
||||||
} else
|
} else
|
||||||
this._dragActor.destroy();
|
this._dragActor.destroy();
|
||||||
|
this._dragActor = undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
this._dragInProgress = false;
|
this._dragInProgress = false;
|
||||||
@@ -565,8 +566,10 @@ var _Draggable = new Lang.Class({
|
|||||||
if (!this._buttonDown)
|
if (!this._buttonDown)
|
||||||
this._dragComplete();
|
this._dragComplete();
|
||||||
this.emit('drag-end', eventTime, false);
|
this.emit('drag-end', eventTime, false);
|
||||||
if (!this._dragOrigParent)
|
if (!this._dragOrigParent) {
|
||||||
this._dragActor.destroy();
|
this._dragActor.destroy();
|
||||||
|
this._dragActor = undefined;
|
||||||
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -634,6 +637,7 @@ var _Draggable = new Lang.Class({
|
|||||||
dragActor.set_position(this._dragOrigX, this._dragOrigY);
|
dragActor.set_position(this._dragOrigX, this._dragOrigY);
|
||||||
} else {
|
} else {
|
||||||
dragActor.destroy();
|
dragActor.destroy();
|
||||||
|
this._dragActor = undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.emit('drag-end', eventTime, false);
|
this.emit('drag-end', eventTime, false);
|
||||||
@@ -641,7 +645,7 @@ var _Draggable = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_dragComplete() {
|
_dragComplete() {
|
||||||
if (!this._actorDestroyed)
|
if (this._dragActor)
|
||||||
Shell.util_set_hidden_from_pick(this._dragActor, false);
|
Shell.util_set_hidden_from_pick(this._dragActor, false);
|
||||||
|
|
||||||
this._ungrabEvents();
|
this._ungrabEvents();
|
||||||
|
@@ -43,22 +43,23 @@ const _DIALOG_ICON_SIZE = 48;
|
|||||||
|
|
||||||
var GSM_SESSION_MANAGER_LOGOUT_FORCE = 2;
|
var GSM_SESSION_MANAGER_LOGOUT_FORCE = 2;
|
||||||
|
|
||||||
const EndSessionDialogIface = '<node> \
|
const EndSessionDialogIface = `
|
||||||
<interface name="org.gnome.SessionManager.EndSessionDialog"> \
|
<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" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const logoutDialogContent = {
|
const logoutDialogContent = {
|
||||||
subjectWithUser: C_("title", "Log Out %s"),
|
subjectWithUser: C_("title", "Log Out %s"),
|
||||||
@@ -168,39 +169,42 @@ const DialogContent = {
|
|||||||
|
|
||||||
var MAX_USERS_IN_SESSION_DIALOG = 5;
|
var MAX_USERS_IN_SESSION_DIALOG = 5;
|
||||||
|
|
||||||
const LogindSessionIface = '<node> \
|
const LogindSessionIface = `
|
||||||
<interface name="org.freedesktop.login1.Session"> \
|
<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"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const LogindSession = Gio.DBusProxy.makeProxyWrapper(LogindSessionIface);
|
const LogindSession = Gio.DBusProxy.makeProxyWrapper(LogindSessionIface);
|
||||||
|
|
||||||
const PkOfflineIface = '<node> \
|
const PkOfflineIface = `
|
||||||
<interface name="org.freedesktop.PackageKit.Offline"> \
|
<node>
|
||||||
<property name="UpdatePrepared" type="b" access="read"/> \
|
<interface name="org.freedesktop.PackageKit.Offline">
|
||||||
<property name="UpdateTriggered" type="b" access="read"/> \
|
<property name="UpdatePrepared" type="b" access="read"/>
|
||||||
<property name="UpgradePrepared" type="b" access="read"/> \
|
<property name="UpdateTriggered" type="b" access="read"/>
|
||||||
<property name="UpgradeTriggered" type="b" access="read"/> \
|
<property name="UpgradePrepared" type="b" access="read"/>
|
||||||
<property name="PreparedUpgrade" type="a{sv}" access="read"/> \
|
<property name="UpgradeTriggered" type="b" access="read"/>
|
||||||
<method name="Trigger"> \
|
<property name="PreparedUpgrade" type="a{sv}" access="read"/>
|
||||||
<arg type="s" name="action" direction="in"/> \
|
<method name="Trigger">
|
||||||
</method> \
|
<arg type="s" name="action" direction="in"/>
|
||||||
<method name="Cancel"/> \
|
</method>
|
||||||
</interface> \
|
<method name="Cancel"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const PkOfflineProxy = Gio.DBusProxy.makeProxyWrapper(PkOfflineIface);
|
const PkOfflineProxy = Gio.DBusProxy.makeProxyWrapper(PkOfflineIface);
|
||||||
|
|
||||||
const UPowerIface = '<node> \
|
const UPowerIface = `
|
||||||
<interface name="org.freedesktop.UPower"> \
|
<node>
|
||||||
<property name="OnBattery" type="b" access="read"/> \
|
<interface name="org.freedesktop.UPower">
|
||||||
</interface> \
|
<property name="OnBattery" type="b" access="read"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const UPowerProxy = Gio.DBusProxy.makeProxyWrapper(UPowerIface);
|
const UPowerProxy = Gio.DBusProxy.makeProxyWrapper(UPowerIface);
|
||||||
|
|
||||||
|
@@ -472,6 +472,8 @@ var KeyboardModel = new Lang.Class({
|
|||||||
_loadModel(groupName) {
|
_loadModel(groupName) {
|
||||||
let file = Gio.File.new_for_uri('resource:///org/gnome/shell/osk-layouts/%s.json'.format(groupName));
|
let file = Gio.File.new_for_uri('resource:///org/gnome/shell/osk-layouts/%s.json'.format(groupName));
|
||||||
let [success, contents] = file.load_contents(null);
|
let [success, contents] = file.load_contents(null);
|
||||||
|
if (contents instanceof Uint8Array)
|
||||||
|
contents = imports.byteArray.toString(contents);
|
||||||
|
|
||||||
return JSON.parse(contents);
|
return JSON.parse(contents);
|
||||||
},
|
},
|
||||||
@@ -490,13 +492,18 @@ var FocusTracker = new Lang.Class({
|
|||||||
|
|
||||||
_init() {
|
_init() {
|
||||||
this._currentWindow = null;
|
this._currentWindow = null;
|
||||||
this._currentWindowPositionId = 0;
|
|
||||||
|
|
||||||
global.display.connect('notify::focus-window', () => {
|
global.display.connect('notify::focus-window', () => {
|
||||||
this._setCurrentWindow(global.display.focus_window);
|
this._setCurrentWindow(global.display.focus_window);
|
||||||
this.emit('window-changed', this._currentWindow);
|
this.emit('window-changed', this._currentWindow);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
global.display.connect('grab-op-begin', (display, window, op) => {
|
||||||
|
if (window == this._currentWindow &&
|
||||||
|
(op == Meta.GrabOp.MOVING || op == Meta.GrabOp.KEYBOARD_MOVING))
|
||||||
|
this.emit('reset');
|
||||||
|
});
|
||||||
|
|
||||||
/* Valid for wayland clients */
|
/* Valid for wayland clients */
|
||||||
Main.inputMethod.connect('cursor-location-changed', (o, rect) => {
|
Main.inputMethod.connect('cursor-location-changed', (o, rect) => {
|
||||||
let newRect = { x: rect.get_x(), y: rect.get_y(), width: rect.get_width(), height: rect.get_height() };
|
let newRect = { x: rect.get_x(), y: rect.get_y(), width: rect.get_width(), height: rect.get_height() };
|
||||||
@@ -518,18 +525,7 @@ var FocusTracker = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_setCurrentWindow(window) {
|
_setCurrentWindow(window) {
|
||||||
if (this._currentWindow)
|
|
||||||
this._currentWindow.disconnect(this._currentWindowPositionId);
|
|
||||||
|
|
||||||
this._currentWindow = window;
|
this._currentWindow = window;
|
||||||
if (window) {
|
|
||||||
this._currentWindowPositionId = this._currentWindow.connect('position-changed', () => {
|
|
||||||
if (global.display.get_grab_op() == Meta.GrabOp.NONE)
|
|
||||||
this.emit('position-changed');
|
|
||||||
else
|
|
||||||
this.emit('reset');
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
_setCurrentRect(rect) {
|
_setCurrentRect(rect) {
|
||||||
|
@@ -204,6 +204,7 @@ var LayoutManager = new Lang.Class({
|
|||||||
|
|
||||||
// Set up stage hierarchy to group all UI actors under one container.
|
// Set up stage hierarchy to group all UI actors under one container.
|
||||||
this.uiGroup = new Shell.GenericContainer({ name: 'uiGroup' });
|
this.uiGroup = new Shell.GenericContainer({ name: 'uiGroup' });
|
||||||
|
this.uiGroup.set_flags(Clutter.ActorFlags.NO_LAYOUT);
|
||||||
this.uiGroup.connect('allocate', (actor, box, flags) => {
|
this.uiGroup.connect('allocate', (actor, box, flags) => {
|
||||||
let children = actor.get_children();
|
let children = actor.get_children();
|
||||||
for (let i = 0; i < children.length; i++)
|
for (let i = 0; i < children.length; i++)
|
||||||
|
@@ -9,89 +9,91 @@ 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 = '<node> \
|
const MagnifierIface = `
|
||||||
<interface name="org.gnome.Magnifier"> \
|
<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>
|
||||||
</node>';
|
</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 = '<node> \
|
const ZoomRegionIface = `
|
||||||
<interface name="org.gnome.Magnifier.ZoomRegion"> \
|
<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>
|
||||||
</node>';
|
</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',
|
||||||
|
@@ -8,41 +8,44 @@ const Calendar = imports.ui.calendar;
|
|||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
const MessageList = imports.ui.messageList;
|
const MessageList = imports.ui.messageList;
|
||||||
|
|
||||||
const DBusIface = '<node> \
|
const DBusIface = `
|
||||||
<interface name="org.freedesktop.DBus"> \
|
<node>
|
||||||
<method name="ListNames"> \
|
<interface name="org.freedesktop.DBus">
|
||||||
<arg type="as" direction="out" name="names" /> \
|
<method name="ListNames">
|
||||||
</method> \
|
<arg type="as" direction="out" name="names" />
|
||||||
<signal name="NameOwnerChanged"> \
|
</method>
|
||||||
<arg type="s" direction="out" name="name" /> \
|
<signal name="NameOwnerChanged">
|
||||||
<arg type="s" direction="out" name="oldOwner" /> \
|
<arg type="s" direction="out" name="name" />
|
||||||
<arg type="s" direction="out" name="newOwner" /> \
|
<arg type="s" direction="out" name="oldOwner" />
|
||||||
</signal> \
|
<arg type="s" direction="out" name="newOwner" />
|
||||||
</interface> \
|
</signal>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const DBusProxy = Gio.DBusProxy.makeProxyWrapper(DBusIface);
|
const DBusProxy = Gio.DBusProxy.makeProxyWrapper(DBusIface);
|
||||||
|
|
||||||
const MprisIface = '<node> \
|
const MprisIface = `
|
||||||
<interface name="org.mpris.MediaPlayer2"> \
|
<node>
|
||||||
<method name="Raise" /> \
|
<interface name="org.mpris.MediaPlayer2">
|
||||||
<property name="CanRaise" type="b" access="read" /> \
|
<method name="Raise" />
|
||||||
<property name="DesktopEntry" type="s" access="read" /> \
|
<property name="CanRaise" type="b" access="read" />
|
||||||
</interface> \
|
<property name="DesktopEntry" type="s" access="read" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const MprisProxy = Gio.DBusProxy.makeProxyWrapper(MprisIface);
|
const MprisProxy = Gio.DBusProxy.makeProxyWrapper(MprisIface);
|
||||||
|
|
||||||
const MprisPlayerIface = '<node> \
|
const MprisPlayerIface = `
|
||||||
<interface name="org.mpris.MediaPlayer2.Player"> \
|
<node>
|
||||||
<method name="PlayPause" /> \
|
<interface name="org.mpris.MediaPlayer2.Player">
|
||||||
<method name="Next" /> \
|
<method name="PlayPause" />
|
||||||
<method name="Previous" /> \
|
<method name="Next" />
|
||||||
<property name="CanGoNext" type="b" access="read" /> \
|
<method name="Previous" />
|
||||||
<property name="CanGoPrevious" type="b" access="read" /> \
|
<property name="CanGoNext" type="b" access="read" />
|
||||||
<property name="CanPlay" type="b" access="read" /> \
|
<property name="CanGoPrevious" type="b" access="read" />
|
||||||
<property name="Metadata" type="a{sv}" access="read" /> \
|
<property name="CanPlay" type="b" access="read" />
|
||||||
<property name="PlaybackStatus" type="s" access="read" /> \
|
<property name="Metadata" type="a{sv}" access="read" />
|
||||||
</interface> \
|
<property name="PlaybackStatus" type="s" access="read" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const MprisPlayerProxy = Gio.DBusProxy.makeProxyWrapper(MprisPlayerIface);
|
const MprisPlayerProxy = Gio.DBusProxy.makeProxyWrapper(MprisPlayerIface);
|
||||||
|
|
||||||
const MPRIS_PLAYER_PREFIX = 'org.mpris.MediaPlayer2.';
|
const MPRIS_PLAYER_PREFIX = 'org.mpris.MediaPlayer2.';
|
||||||
|
@@ -17,55 +17,57 @@ const Params = imports.misc.params;
|
|||||||
const Util = imports.misc.util;
|
const Util = imports.misc.util;
|
||||||
|
|
||||||
// Should really be defined in Gio.js
|
// Should really be defined in Gio.js
|
||||||
const BusIface = '<node> \
|
const BusIface = `
|
||||||
<interface name="org.freedesktop.DBus"> \
|
<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>
|
||||||
</node>';
|
</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 FdoNotificationsIface = '<node> \
|
const FdoNotificationsIface = `
|
||||||
<interface name="org.freedesktop.Notifications"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var NotificationClosedReason = {
|
var NotificationClosedReason = {
|
||||||
EXPIRED: 1,
|
EXPIRED: 1,
|
||||||
@@ -654,18 +656,19 @@ var GtkNotificationDaemonNotification = new Lang.Class({
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
const FdoApplicationIface = '<node> \
|
const FdoApplicationIface = `
|
||||||
<interface name="org.freedesktop.Application"> \
|
<node>
|
||||||
<method name="ActivateAction"> \
|
<interface name="org.freedesktop.Application">
|
||||||
<arg type="s" direction="in" /> \
|
<method name="ActivateAction">
|
||||||
<arg type="av" direction="in" /> \
|
<arg type="s" direction="in" />
|
||||||
<arg type="a{sv}" direction="in" /> \
|
<arg type="av" direction="in" />
|
||||||
</method> \
|
<arg type="a{sv}" direction="in" />
|
||||||
<method name="Activate"> \
|
</method>
|
||||||
<arg type="a{sv}" direction="in" /> \
|
<method name="Activate">
|
||||||
</method> \
|
<arg type="a{sv}" direction="in" />
|
||||||
</interface> \
|
</method>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const FdoApplicationProxy = Gio.DBusProxy.makeProxyWrapper(FdoApplicationIface);
|
const FdoApplicationProxy = Gio.DBusProxy.makeProxyWrapper(FdoApplicationIface);
|
||||||
|
|
||||||
function objectPathFromAppId(appId) {
|
function objectPathFromAppId(appId) {
|
||||||
@@ -774,19 +777,20 @@ var GtkNotificationDaemonAppSource = new Lang.Class({
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
const GtkNotificationsIface = '<node> \
|
const GtkNotificationsIface = `
|
||||||
<interface name="org.gtk.Notifications"> \
|
<node>
|
||||||
<method name="AddNotification"> \
|
<interface name="org.gtk.Notifications">
|
||||||
<arg type="s" direction="in" /> \
|
<method name="AddNotification">
|
||||||
<arg type="s" direction="in" /> \
|
<arg type="s" direction="in" />
|
||||||
<arg type="a{sv}" direction="in" /> \
|
<arg type="s" direction="in" />
|
||||||
</method> \
|
<arg type="a{sv}" direction="in" />
|
||||||
<method name="RemoveNotification"> \
|
</method>
|
||||||
<arg type="s" direction="in" /> \
|
<method name="RemoveNotification">
|
||||||
<arg type="s" direction="in" /> \
|
<arg type="s" direction="in" />
|
||||||
</method> \
|
<arg type="s" direction="in" />
|
||||||
</interface> \
|
</method>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var GtkNotificationDaemon = new Lang.Class({
|
var GtkNotificationDaemon = new Lang.Class({
|
||||||
Name: 'GtkNotificationDaemon',
|
Name: 'GtkNotificationDaemon',
|
||||||
|
@@ -4,6 +4,7 @@ const Clutter = imports.gi.Clutter;
|
|||||||
const GLib = imports.gi.GLib;
|
const GLib = imports.gi.GLib;
|
||||||
const St = imports.gi.St;
|
const St = imports.gi.St;
|
||||||
|
|
||||||
|
const BarLevel = imports.ui.barLevel;
|
||||||
const Lang = imports.lang;
|
const Lang = imports.lang;
|
||||||
const Layout = imports.ui.layout;
|
const Layout = imports.ui.layout;
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
@@ -17,16 +18,18 @@ var LEVEL_ANIMATION_TIME = 0.1;
|
|||||||
|
|
||||||
var LevelBar = new Lang.Class({
|
var LevelBar = new Lang.Class({
|
||||||
Name: 'LevelBar',
|
Name: 'LevelBar',
|
||||||
|
Extends: BarLevel.BarLevel,
|
||||||
|
|
||||||
_init() {
|
_init() {
|
||||||
this._level = 0;
|
this._level = 0;
|
||||||
|
this._maxLevel = 100;
|
||||||
|
|
||||||
this.actor = new St.Bin({ style_class: 'level',
|
let params = {
|
||||||
x_align: St.Align.START,
|
styleClass: 'level',
|
||||||
y_fill: true });
|
}
|
||||||
this._bar = new St.Widget({ style_class: 'level-bar' });
|
this.parent(this._level, params);
|
||||||
|
|
||||||
this.actor.set_child(this._bar);
|
this.actor.accessible_name = _("Volume");
|
||||||
|
|
||||||
this.actor.connect('notify::width', () => { this.level = this.level; });
|
this.actor.connect('notify::width', () => { this.level = this.level; });
|
||||||
},
|
},
|
||||||
@@ -36,12 +39,19 @@ var LevelBar = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
set level(value) {
|
set level(value) {
|
||||||
this._level = Math.max(0, Math.min(value, 100));
|
this._level = Math.max(0, Math.min(value, this._maxLevel));
|
||||||
|
|
||||||
let alloc = this.actor.get_allocation_box();
|
this.setValue(this._level / 100);
|
||||||
let newWidth = Math.round((alloc.x2 - alloc.x1) * this._level / 100);
|
},
|
||||||
if (newWidth != this._bar.width)
|
|
||||||
this._bar.width = newWidth;
|
get maxLevel() {
|
||||||
|
return this._maxLevel;
|
||||||
|
},
|
||||||
|
|
||||||
|
set maxLevel(value) {
|
||||||
|
this._maxLevel = Math.max(100, value);
|
||||||
|
|
||||||
|
this.setMaximumValue(this._maxLevel / 100);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -140,6 +150,12 @@ var OsdWindow = new Lang.Class({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
setMaxLevel(maxLevel) {
|
||||||
|
if (maxLevel === undefined)
|
||||||
|
maxLevel = 100;
|
||||||
|
this._level.maxLevel = maxLevel;
|
||||||
|
},
|
||||||
|
|
||||||
show() {
|
show() {
|
||||||
if (!this._icon.gicon)
|
if (!this._icon.gicon)
|
||||||
return;
|
return;
|
||||||
@@ -189,6 +205,7 @@ var OsdWindow = new Lang.Class({
|
|||||||
this.actor.hide();
|
this.actor.hide();
|
||||||
this.setLabel(null);
|
this.setLabel(null);
|
||||||
this.setLevel(null);
|
this.setLevel(null);
|
||||||
|
this.setMaxLevel(null);
|
||||||
},
|
},
|
||||||
|
|
||||||
_relayout() {
|
_relayout() {
|
||||||
@@ -233,24 +250,25 @@ var OsdWindowManager = new Lang.Class({
|
|||||||
this._osdWindows.length = Main.layoutManager.monitors.length;
|
this._osdWindows.length = Main.layoutManager.monitors.length;
|
||||||
},
|
},
|
||||||
|
|
||||||
_showOsdWindow(monitorIndex, icon, label, level) {
|
_showOsdWindow(monitorIndex, icon, label, level, maxLevel) {
|
||||||
this._osdWindows[monitorIndex].setIcon(icon);
|
this._osdWindows[monitorIndex].setIcon(icon);
|
||||||
this._osdWindows[monitorIndex].setLabel(label);
|
this._osdWindows[monitorIndex].setLabel(label);
|
||||||
this._osdWindows[monitorIndex].setLevel(level);
|
this._osdWindows[monitorIndex].setLevel(level);
|
||||||
|
this._osdWindows[monitorIndex].setMaxLevel(maxLevel);
|
||||||
this._osdWindows[monitorIndex].show();
|
this._osdWindows[monitorIndex].show();
|
||||||
},
|
},
|
||||||
|
|
||||||
show(monitorIndex, icon, label, level) {
|
show(monitorIndex, icon, label, level, maxLevel) {
|
||||||
if (monitorIndex != -1) {
|
if (monitorIndex != -1) {
|
||||||
for (let i = 0; i < this._osdWindows.length; i++) {
|
for (let i = 0; i < this._osdWindows.length; i++) {
|
||||||
if (i == monitorIndex)
|
if (i == monitorIndex)
|
||||||
this._showOsdWindow(i, icon, label, level);
|
this._showOsdWindow(i, icon, label, level, maxLevel);
|
||||||
else
|
else
|
||||||
this._osdWindows[i].cancel();
|
this._osdWindows[i].cancel();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (let i = 0; i < this._osdWindows.length; i++)
|
for (let i = 0; i < this._osdWindows.length; i++)
|
||||||
this._showOsdWindow(i, icon, label, level);
|
this._showOsdWindow(i, icon, label, level, maxLevel);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@@ -395,10 +395,8 @@ var Overview = new Lang.Class({
|
|||||||
if (!Main.layoutManager.primaryMonitor)
|
if (!Main.layoutManager.primaryMonitor)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
let workArea = Main.layoutManager.getWorkAreaForMonitor(Main.layoutManager.primaryIndex);
|
this._coverPane.set_position(0, 0);
|
||||||
|
this._coverPane.set_size(global.screen_width, global.screen_height);
|
||||||
this._coverPane.set_position(0, workArea.y);
|
|
||||||
this._coverPane.set_size(workArea.width, workArea.height);
|
|
||||||
|
|
||||||
this._updateBackgrounds();
|
this._updateBackgrounds();
|
||||||
},
|
},
|
||||||
|
@@ -253,13 +253,23 @@ var ThumbnailsSlider = new Lang.Class({
|
|||||||
this.actor.add_actor(this._thumbnailsBox.actor);
|
this.actor.add_actor(this._thumbnailsBox.actor);
|
||||||
|
|
||||||
Main.layoutManager.connect('monitors-changed', this._updateSlide.bind(this));
|
Main.layoutManager.connect('monitors-changed', this._updateSlide.bind(this));
|
||||||
|
global.workspace_manager.connect('active-workspace-changed',
|
||||||
|
this._updateSlide.bind(this));
|
||||||
|
global.workspace_manager.connect('notify::n-workspaces',
|
||||||
|
this._updateSlide.bind(this));
|
||||||
this.actor.connect('notify::hover', this._updateSlide.bind(this));
|
this.actor.connect('notify::hover', this._updateSlide.bind(this));
|
||||||
this._thumbnailsBox.actor.bind_property('visible', this.actor, 'visible', GObject.BindingFlags.SYNC_CREATE);
|
this._thumbnailsBox.actor.bind_property('visible', this.actor, 'visible', GObject.BindingFlags.SYNC_CREATE);
|
||||||
},
|
},
|
||||||
|
|
||||||
_getAlwaysZoomOut() {
|
_getAlwaysZoomOut() {
|
||||||
// Always show the pager on hover or during a drag
|
// Always show the pager on hover, during a drag, or if workspaces are
|
||||||
let alwaysZoomOut = this.actor.hover || this._inDrag;
|
// actually used, e.g. there are windows on any non-active workspace
|
||||||
|
let workspaceManager = global.workspace_manager;
|
||||||
|
let alwaysZoomOut = this.actor.hover ||
|
||||||
|
this._inDrag ||
|
||||||
|
!Meta.prefs_get_dynamic_workspaces() ||
|
||||||
|
workspaceManager.n_workspaces > 2 ||
|
||||||
|
workspaceManager.get_active_workspace_index() != 0;
|
||||||
|
|
||||||
if (!alwaysZoomOut) {
|
if (!alwaysZoomOut) {
|
||||||
let monitors = Main.layoutManager.monitors;
|
let monitors = Main.layoutManager.monitors;
|
||||||
@@ -284,6 +294,11 @@ var ThumbnailsSlider = new Lang.Class({
|
|||||||
return child.get_theme_node().get_length('visible-width');
|
return child.get_theme_node().get_length('visible-width');
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_onDragEnd() {
|
||||||
|
this.actor.sync_hover();
|
||||||
|
this.parent();
|
||||||
|
},
|
||||||
|
|
||||||
_getSlide() {
|
_getSlide() {
|
||||||
if (!this._visible)
|
if (!this._visible)
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -313,6 +313,8 @@ var PadDiagram = new Lang.Class({
|
|||||||
_init(params) {
|
_init(params) {
|
||||||
let file = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/pad-osd.css');
|
let file = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/pad-osd.css');
|
||||||
let [success, css, etag] = file.load_contents(null);
|
let [success, css, etag] = file.load_contents(null);
|
||||||
|
if (css instanceof Uint8Array)
|
||||||
|
css = imports.byteArray.toString(css);
|
||||||
this._curEdited = null;
|
this._curEdited = null;
|
||||||
this._prevEdited = null;
|
this._prevEdited = null;
|
||||||
this._css = css;
|
this._css = css;
|
||||||
@@ -960,14 +962,15 @@ var PadOsd = new Lang.Class({
|
|||||||
});
|
});
|
||||||
Signals.addSignalMethods(PadOsd.prototype);
|
Signals.addSignalMethods(PadOsd.prototype);
|
||||||
|
|
||||||
const PadOsdIface = '<node> \
|
const PadOsdIface = `
|
||||||
<interface name="org.gnome.Shell.Wacom.PadOsd"> \
|
<node>
|
||||||
<method name="Show"> \
|
<interface name="org.gnome.Shell.Wacom.PadOsd">
|
||||||
<arg name="device_node" direction="in" type="o"/> \
|
<method name="Show">
|
||||||
<arg name="edition_mode" direction="in" type="b"/> \
|
<arg name="device_node" direction="in" type="o"/>
|
||||||
</method> \
|
<arg name="edition_mode" direction="in" type="b"/>
|
||||||
</interface> \
|
</method>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var PadOsdService = new Lang.Class({
|
var PadOsdService = new Lang.Class({
|
||||||
Name: 'PadOsdService',
|
Name: 'PadOsdService',
|
||||||
|
@@ -307,8 +307,11 @@ var AppMenuButton = new Lang.Class({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let shellShowsAppMenu = this._gtkSettings.gtk_shell_shows_app_menu;
|
||||||
|
Meta.prefs_set_show_fallback_app_menu(!shellShowsAppMenu);
|
||||||
|
|
||||||
let visible = (this._targetApp != null &&
|
let visible = (this._targetApp != null &&
|
||||||
this._gtkSettings.gtk_shell_shows_app_menu &&
|
shellShowsAppMenu &&
|
||||||
!Main.overview.visibleTarget);
|
!Main.overview.visibleTarget);
|
||||||
if (visible)
|
if (visible)
|
||||||
this.show();
|
this.show();
|
||||||
@@ -776,6 +779,7 @@ var Panel = new Lang.Class({
|
|||||||
this.actor = new Shell.GenericContainer({ name: 'panel',
|
this.actor = new Shell.GenericContainer({ name: 'panel',
|
||||||
reactive: true });
|
reactive: true });
|
||||||
this.actor._delegate = this;
|
this.actor._delegate = this;
|
||||||
|
this.actor.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
|
||||||
|
|
||||||
this._sessionStyle = null;
|
this._sessionStyle = null;
|
||||||
|
|
||||||
|
@@ -12,53 +12,55 @@ const Search = imports.ui.search;
|
|||||||
|
|
||||||
const KEY_FILE_GROUP = 'Shell Search Provider';
|
const KEY_FILE_GROUP = 'Shell Search Provider';
|
||||||
|
|
||||||
const SearchProviderIface = '<node> \
|
const SearchProviderIface = `
|
||||||
<interface name="org.gnome.Shell.SearchProvider"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const SearchProvider2Iface = '<node> \
|
const SearchProvider2Iface = `
|
||||||
<interface name="org.gnome.Shell.SearchProvider2"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var SearchProviderProxyInfo = Gio.DBusInterfaceInfo.new_for_xml(SearchProviderIface);
|
var SearchProviderProxyInfo = Gio.DBusInterfaceInfo.new_for_xml(SearchProviderIface);
|
||||||
var SearchProvider2ProxyInfo = Gio.DBusInterfaceInfo.new_for_xml(SearchProvider2Iface);
|
var SearchProvider2ProxyInfo = Gio.DBusInterfaceInfo.new_for_xml(SearchProvider2Iface);
|
||||||
|
@@ -62,7 +62,11 @@ var RunDialog = new Lang.Class({
|
|||||||
'rt': () => {
|
'rt': () => {
|
||||||
Main.reloadThemeResource();
|
Main.reloadThemeResource();
|
||||||
Main.loadTheme();
|
Main.loadTheme();
|
||||||
}
|
},
|
||||||
|
|
||||||
|
'check_cloexec_fds': () => {
|
||||||
|
Shell.util_check_cloexec_fds();
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -114,18 +118,16 @@ var RunDialog = new Lang.Class({
|
|||||||
|
|
||||||
this._history = new History.HistoryManager({ gsettingsKey: HISTORY_KEY,
|
this._history = new History.HistoryManager({ gsettingsKey: HISTORY_KEY,
|
||||||
entry: this._entryText });
|
entry: this._entryText });
|
||||||
this._entryText.connect('key-press-event', (o, e) => {
|
this._entryText.connect('activate', (o) => {
|
||||||
let symbol = e.get_key_symbol();
|
|
||||||
if (symbol == Clutter.Return || symbol == Clutter.KP_Enter) {
|
|
||||||
this.popModal();
|
this.popModal();
|
||||||
this._run(o.get_text(),
|
this._run(o.get_text(),
|
||||||
e.get_state() & Clutter.ModifierType.CONTROL_MASK);
|
Clutter.get_current_event().get_state() & Clutter.ModifierType.CONTROL_MASK);
|
||||||
if (!this._commandError ||
|
if (!this._commandError ||
|
||||||
!this.pushModal())
|
!this.pushModal())
|
||||||
this.close();
|
this.close();
|
||||||
|
});
|
||||||
return Clutter.EVENT_STOP;
|
this._entryText.connect('key-press-event', (o, e) => {
|
||||||
}
|
let symbol = e.get_key_symbol();
|
||||||
if (symbol == Clutter.Tab) {
|
if (symbol == Clutter.Tab) {
|
||||||
let text = o.get_text();
|
let text = o.get_text();
|
||||||
let prefix;
|
let prefix;
|
||||||
|
@@ -8,29 +8,30 @@ const Signals = imports.signals;
|
|||||||
|
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
|
|
||||||
const ScreencastIface = '<node> \
|
const ScreencastIface = `
|
||||||
<interface name="org.gnome.Shell.Screencast"> \
|
<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>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var ScreencastService = new Lang.Class({
|
var ScreencastService = new Lang.Class({
|
||||||
Name: 'ScreencastService',
|
Name: 'ScreencastService',
|
||||||
|
@@ -16,47 +16,51 @@ 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 = '<node> \
|
const ScreenshotIface = `
|
||||||
<interface name="org.gnome.Shell.Screenshot"> \
|
<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>
|
||||||
</node>';
|
<method name="PickColor">
|
||||||
|
<arg type="a{sv}" direction="out" name="result"/>
|
||||||
|
</method>
|
||||||
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var ScreenshotService = new Lang.Class({
|
var ScreenshotService = new Lang.Class({
|
||||||
Name: 'ScreenshotService',
|
Name: 'ScreenshotService',
|
||||||
@@ -72,10 +76,13 @@ var ScreenshotService = new Lang.Class({
|
|||||||
Gio.DBus.session.own_name('org.gnome.Shell.Screenshot', Gio.BusNameOwnerFlags.REPLACE, null, null);
|
Gio.DBus.session.own_name('org.gnome.Shell.Screenshot', Gio.BusNameOwnerFlags.REPLACE, null, null);
|
||||||
},
|
},
|
||||||
|
|
||||||
_createScreenshot(invocation) {
|
_createScreenshot(invocation, needsDisk=true) {
|
||||||
|
let lockedDown = false;
|
||||||
|
if (needsDisk)
|
||||||
|
lockedDown = this._lockdownSettings.get_boolean('disable-save-to-disk')
|
||||||
|
|
||||||
let sender = invocation.get_sender();
|
let sender = invocation.get_sender();
|
||||||
if (this._screenShooter.has(sender) ||
|
if (this._screenShooter.has(sender) || lockedDown) {
|
||||||
this._lockdownSettings.get_boolean('disable-save-to-disk')) {
|
|
||||||
invocation.return_value(GLib.Variant.new('(bs)', [false, '']));
|
invocation.return_value(GLib.Variant.new('(bs)', [false, '']));
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -110,7 +117,7 @@ var ScreenshotService = new Lang.Class({
|
|||||||
y + height <= global.screen_height;
|
y + height <= global.screen_height;
|
||||||
},
|
},
|
||||||
|
|
||||||
_onScreenshotComplete(obj, result, area, filenameUsed, flash, invocation) {
|
_onScreenshotComplete(result, area, filenameUsed, flash, invocation) {
|
||||||
if (result) {
|
if (result) {
|
||||||
if (flash) {
|
if (flash) {
|
||||||
let flashspot = new Flashspot(area);
|
let flashspot = new Flashspot(area);
|
||||||
@@ -157,9 +164,15 @@ var ScreenshotService = new Lang.Class({
|
|||||||
if (!screenshot)
|
if (!screenshot)
|
||||||
return;
|
return;
|
||||||
screenshot.screenshot_area (x, y, width, height, filename,
|
screenshot.screenshot_area (x, y, width, height, filename,
|
||||||
(obj, result, area, filenameUsed) => {
|
(o, res) => {
|
||||||
this._onScreenshotComplete(obj, result, area, filenameUsed,
|
try {
|
||||||
|
let [result, area, filenameUsed] =
|
||||||
|
screenshot.screenshot_area_finish(res);
|
||||||
|
this._onScreenshotComplete(result, area, filenameUsed,
|
||||||
flash, invocation);
|
flash, invocation);
|
||||||
|
} catch (e) {
|
||||||
|
invocation.return_gerror (e);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -169,9 +182,15 @@ var ScreenshotService = new Lang.Class({
|
|||||||
if (!screenshot)
|
if (!screenshot)
|
||||||
return;
|
return;
|
||||||
screenshot.screenshot_window (include_frame, include_cursor, filename,
|
screenshot.screenshot_window (include_frame, include_cursor, filename,
|
||||||
(obj, result, area, filenameUsed) => {
|
(o, res) => {
|
||||||
this._onScreenshotComplete(obj, result, area, filenameUsed,
|
try {
|
||||||
|
let [result, area, filenameUsed] =
|
||||||
|
screenshot.screenshot_window_finish(res);
|
||||||
|
this._onScreenshotComplete(result, area, filenameUsed,
|
||||||
flash, invocation);
|
flash, invocation);
|
||||||
|
} catch (e) {
|
||||||
|
invocation.return_gerror (e);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -181,9 +200,15 @@ var ScreenshotService = new Lang.Class({
|
|||||||
if (!screenshot)
|
if (!screenshot)
|
||||||
return;
|
return;
|
||||||
screenshot.screenshot(include_cursor, filename,
|
screenshot.screenshot(include_cursor, filename,
|
||||||
(obj, result, area, filenameUsed) => {
|
(o, res) => {
|
||||||
this._onScreenshotComplete(obj, result, area, filenameUsed,
|
try {
|
||||||
|
let [result, area, filenameUsed] =
|
||||||
|
screenshot.screenshot_finish(res);
|
||||||
|
this._onScreenshotComplete(result, area, filenameUsed,
|
||||||
flash, invocation);
|
flash, invocation);
|
||||||
|
} catch (e) {
|
||||||
|
invocation.return_gerror (e);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -215,6 +240,34 @@ var ScreenshotService = new Lang.Class({
|
|||||||
let flashspot = new Flashspot({ x : x, y : y, width: width, height: height});
|
let flashspot = new Flashspot({ x : x, y : y, width: width, height: height});
|
||||||
flashspot.fire();
|
flashspot.fire();
|
||||||
invocation.return_value(null);
|
invocation.return_value(null);
|
||||||
|
},
|
||||||
|
|
||||||
|
PickColorAsync(params, invocation) {
|
||||||
|
let pickPixel = new PickPixel();
|
||||||
|
pickPixel.show();
|
||||||
|
pickPixel.connect('finished', (pickPixel, coords) => {
|
||||||
|
if (coords) {
|
||||||
|
let screenshot = this._createScreenshot(invocation, false);
|
||||||
|
if (!screenshot)
|
||||||
|
return;
|
||||||
|
screenshot.pick_color(...coords, (o, res) => {
|
||||||
|
let [success, color] = screenshot.pick_color_finish(res);
|
||||||
|
let { red, green, blue } = color;
|
||||||
|
let retval = GLib.Variant.new('(a{sv})', [{
|
||||||
|
color: GLib.Variant.new('(ddd)', [
|
||||||
|
red / 255.0,
|
||||||
|
green / 255.0,
|
||||||
|
blue / 255.0
|
||||||
|
])
|
||||||
|
}]);
|
||||||
|
this._removeShooterForSender(invocation.get_sender());
|
||||||
|
invocation.return_value(retval);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
invocation.return_error_literal(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED,
|
||||||
|
"Operation was cancelled");
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -341,6 +394,54 @@ var SelectArea = new Lang.Class({
|
|||||||
});
|
});
|
||||||
Signals.addSignalMethods(SelectArea.prototype);
|
Signals.addSignalMethods(SelectArea.prototype);
|
||||||
|
|
||||||
|
var PickPixel = new Lang.Class({
|
||||||
|
Name: 'PickPixel',
|
||||||
|
|
||||||
|
_init() {
|
||||||
|
this._result = null;
|
||||||
|
|
||||||
|
this._group = new St.Widget({ visible: false,
|
||||||
|
reactive: true });
|
||||||
|
Main.uiGroup.add_actor(this._group);
|
||||||
|
|
||||||
|
this._grabHelper = new GrabHelper.GrabHelper(this._group);
|
||||||
|
|
||||||
|
this._group.connect('button-release-event',
|
||||||
|
this._onButtonRelease.bind(this));
|
||||||
|
|
||||||
|
let constraint = new Clutter.BindConstraint({ source: global.stage,
|
||||||
|
coordinate: Clutter.BindCoordinate.ALL });
|
||||||
|
this._group.add_constraint(constraint);
|
||||||
|
},
|
||||||
|
|
||||||
|
show() {
|
||||||
|
if (!this._grabHelper.grab({ actor: this._group,
|
||||||
|
onUngrab: this._onUngrab.bind(this) }))
|
||||||
|
return;
|
||||||
|
|
||||||
|
global.display.set_cursor(Meta.Cursor.CROSSHAIR);
|
||||||
|
Main.uiGroup.set_child_above_sibling(this._group, null);
|
||||||
|
this._group.visible = true;
|
||||||
|
},
|
||||||
|
|
||||||
|
_onButtonRelease(actor, event) {
|
||||||
|
this._result = event.get_coords();
|
||||||
|
this._grabHelper.ungrab();
|
||||||
|
return Clutter.EVENT_PROPAGATE;
|
||||||
|
},
|
||||||
|
|
||||||
|
_onUngrab() {
|
||||||
|
global.display.set_cursor(Meta.Cursor.DEFAULT);
|
||||||
|
this.emit('finished', this._result);
|
||||||
|
|
||||||
|
GLib.idle_add(GLib.PRIORITY_DEFAULT, () => {
|
||||||
|
this._group.destroy();
|
||||||
|
return GLib.SOURCE_REMOVE;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
Signals.addSignalMethods(PickPixel.prototype);
|
||||||
|
|
||||||
var FLASHSPOT_ANIMATION_OUT_TIME = 0.5; // seconds
|
var FLASHSPOT_ANIMATION_OUT_TIME = 0.5; // seconds
|
||||||
|
|
||||||
var Flashspot = new Lang.Class({
|
var Flashspot = new Lang.Class({
|
||||||
|
@@ -68,19 +68,20 @@ function waitLeisure() {
|
|||||||
return callback => { cb = callback; };
|
return callback => { cb = callback; };
|
||||||
}
|
}
|
||||||
|
|
||||||
const PerfHelperIface = '<node> \
|
const PerfHelperIface = `
|
||||||
<interface name="org.gnome.Shell.PerfHelper"> \
|
<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" />
|
||||||
<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" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var PerfHelperProxy = Gio.DBusProxy.makeProxyWrapper(PerfHelperIface);
|
var PerfHelperProxy = Gio.DBusProxy.makeProxyWrapper(PerfHelperIface);
|
||||||
function PerfHelper() {
|
function PerfHelper() {
|
||||||
|
@@ -117,6 +117,8 @@ function _loadMode(file, info) {
|
|||||||
let fileContent, success, tag, newMode;
|
let fileContent, success, tag, newMode;
|
||||||
try {
|
try {
|
||||||
[success, fileContent, tag] = file.load_contents(null);
|
[success, fileContent, tag] = file.load_contents(null);
|
||||||
|
if (fileContent instanceof Uint8Array)
|
||||||
|
fileContent = imports.byteArray.toString(fileContent);
|
||||||
newMode = JSON.parse(fileContent);
|
newMode = JSON.parse(fileContent);
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
return;
|
return;
|
||||||
|
@@ -14,70 +14,72 @@ 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 = '<node> \
|
const GnomeShellIface = `
|
||||||
<interface name="org.gnome.Shell"> \
|
<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="ShowMonitorLabels"> \
|
</method>
|
||||||
<arg type="a{uv}" direction="in" name="params" /> \
|
<method name="ShowMonitorLabels">
|
||||||
</method> \
|
<arg type="a{uv}" direction="in" name="params" />
|
||||||
<method name="ShowMonitorLabels2"> \
|
</method>
|
||||||
<arg type="a{sv}" direction="in" name="params" /> \
|
<method name="ShowMonitorLabels2">
|
||||||
</method> \
|
<arg type="a{sv}" direction="in" name="params" />
|
||||||
<method name="HideMonitorLabels" /> \
|
</method>
|
||||||
<method name="FocusApp"> \
|
<method name="HideMonitorLabels" />
|
||||||
<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="parameters" type="a{sv}" /> \
|
<arg name="action" type="u" />
|
||||||
</signal> \
|
<arg name="parameters" type="a{sv}" />
|
||||||
<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" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const ScreenSaverIface = '<node> \
|
const ScreenSaverIface = `
|
||||||
<interface name="org.gnome.ScreenSaver"> \
|
<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" />
|
||||||
<signal name="WakeUpScreen" /> \
|
</signal>
|
||||||
</interface> \
|
<signal name="WakeUpScreen" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var GnomeShell = new Lang.Class({
|
var GnomeShell = new Lang.Class({
|
||||||
Name: 'GnomeShellDBus',
|
Name: 'GnomeShellDBus',
|
||||||
@@ -145,15 +147,20 @@ var GnomeShell = new Lang.Class({
|
|||||||
for (let param in params)
|
for (let param in params)
|
||||||
params[param] = params[param].deep_unpack();
|
params[param] = params[param].deep_unpack();
|
||||||
|
|
||||||
let monitorIndex = params['monitor'] || -1;
|
let { monitor: monitorIndex,
|
||||||
let label = params['label'] || undefined;
|
label,
|
||||||
let level = params['level'] || undefined;
|
level,
|
||||||
|
max_level: maxLevel,
|
||||||
|
icon: serializedIcon } = params;
|
||||||
|
|
||||||
|
if (monitorIndex === undefined)
|
||||||
|
monitorIndex = -1;
|
||||||
|
|
||||||
let icon = null;
|
let icon = null;
|
||||||
if (params['icon'])
|
if (serializedIcon)
|
||||||
icon = Gio.Icon.new_for_string(params['icon']);
|
icon = Gio.Icon.new_for_string(serializedIcon);
|
||||||
|
|
||||||
Main.osdWindowManager.show(monitorIndex, icon, label, level);
|
Main.osdWindowManager.show(monitorIndex, icon, label, level, maxLevel);
|
||||||
},
|
},
|
||||||
|
|
||||||
FocusApp(id) {
|
FocusApp(id) {
|
||||||
@@ -288,43 +295,44 @@ var GnomeShell = new Lang.Class({
|
|||||||
ShellVersion: Config.PACKAGE_VERSION
|
ShellVersion: Config.PACKAGE_VERSION
|
||||||
});
|
});
|
||||||
|
|
||||||
const GnomeShellExtensionsIface = '<node> \
|
const GnomeShellExtensionsIface = `
|
||||||
<interface name="org.gnome.Shell.Extensions"> \
|
<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" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var GnomeShellExtensions = new Lang.Class({
|
var GnomeShellExtensions = new Lang.Class({
|
||||||
Name: 'GnomeShellExtensionsDBus',
|
Name: 'GnomeShellExtensionsDBus',
|
||||||
|
@@ -436,38 +436,39 @@ var ShellProcessesDialog = new Lang.Class({
|
|||||||
});
|
});
|
||||||
Signals.addSignalMethods(ShellProcessesDialog.prototype);
|
Signals.addSignalMethods(ShellProcessesDialog.prototype);
|
||||||
|
|
||||||
const GnomeShellMountOpIface = '<node> \
|
const GnomeShellMountOpIface = `
|
||||||
<interface name="org.Gtk.MountOperationHandler"> \
|
<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"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var ShellMountOperationType = {
|
var ShellMountOperationType = {
|
||||||
NONE: 0,
|
NONE: 0,
|
||||||
|
109
js/ui/slider.js
109
js/ui/slider.js
@@ -7,55 +7,38 @@ const Lang = imports.lang;
|
|||||||
const St = imports.gi.St;
|
const St = imports.gi.St;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
|
const BarLevel = imports.ui.barLevel;
|
||||||
|
|
||||||
var SLIDER_SCROLL_STEP = 0.02; /* Slider scrolling step in % */
|
var SLIDER_SCROLL_STEP = 0.02; /* Slider scrolling step in % */
|
||||||
|
|
||||||
var Slider = new Lang.Class({
|
var Slider = new Lang.Class({
|
||||||
Name: "Slider",
|
Name: "Slider",
|
||||||
|
Extends: BarLevel.BarLevel,
|
||||||
|
|
||||||
_init(value) {
|
_init(value) {
|
||||||
if (isNaN(value))
|
let params = {
|
||||||
// Avoid spreading NaNs around
|
styleClass: 'slider',
|
||||||
throw TypeError('The slider value must be a number');
|
canFocus: true,
|
||||||
this._value = Math.max(Math.min(value, 1), 0);
|
|
||||||
this._sliderWidth = 0;
|
|
||||||
|
|
||||||
this.actor = new St.DrawingArea({ style_class: 'slider',
|
|
||||||
can_focus: true,
|
|
||||||
reactive: true,
|
reactive: true,
|
||||||
accessible_role: Atk.Role.SLIDER });
|
accessibleRole: Atk.Role.SLIDER,
|
||||||
this.actor.connect('repaint', this._sliderRepaint.bind(this));
|
}
|
||||||
|
this.parent(value, params)
|
||||||
|
|
||||||
this.actor.connect('button-press-event', this._startDragging.bind(this));
|
this.actor.connect('button-press-event', this._startDragging.bind(this));
|
||||||
this.actor.connect('touch-event', this._touchDragging.bind(this));
|
this.actor.connect('touch-event', this._touchDragging.bind(this));
|
||||||
this.actor.connect('scroll-event', this._onScrollEvent.bind(this));
|
this.actor.connect('scroll-event', this._onScrollEvent.bind(this));
|
||||||
this.actor.connect('key-press-event', this.onKeyPressEvent.bind(this));
|
this.actor.connect('key-press-event', this.onKeyPressEvent.bind(this));
|
||||||
this.actor.connect('allocation-changed', (actor, box) => {
|
|
||||||
this._sliderWidth = box.get_width();
|
|
||||||
});
|
|
||||||
|
|
||||||
this._releaseId = this._motionId = 0;
|
this._releaseId = this._motionId = 0;
|
||||||
this._dragging = false;
|
this._dragging = false;
|
||||||
|
|
||||||
this._customAccessible = St.GenericAccessible.new_for_actor(this.actor);
|
|
||||||
this.actor.set_accessible(this._customAccessible);
|
|
||||||
|
|
||||||
this._customAccessible.connect('get-current-value', this._getCurrentValue.bind(this));
|
|
||||||
this._customAccessible.connect('get-minimum-value', this._getMinimumValue.bind(this));
|
|
||||||
this._customAccessible.connect('get-maximum-value', this._getMaximumValue.bind(this));
|
|
||||||
this._customAccessible.connect('get-minimum-increment', this._getMinimumIncrement.bind(this));
|
this._customAccessible.connect('get-minimum-increment', this._getMinimumIncrement.bind(this));
|
||||||
this._customAccessible.connect('set-current-value', this._setCurrentValue.bind(this));
|
|
||||||
|
|
||||||
this.connect('value-changed', this._valueChanged.bind(this));
|
|
||||||
},
|
},
|
||||||
|
|
||||||
setValue(value) {
|
_barLevelRepaint(area) {
|
||||||
if (isNaN(value))
|
this.parent(area);
|
||||||
throw TypeError('The slider value must be a number');
|
|
||||||
|
|
||||||
this._value = Math.max(Math.min(value, 1), 0);
|
// Add handle
|
||||||
this.actor.queue_repaint();
|
|
||||||
},
|
|
||||||
|
|
||||||
_sliderRepaint(area) {
|
|
||||||
let cr = area.get_context();
|
let cr = area.get_context();
|
||||||
let themeNode = area.get_theme_node();
|
let themeNode = area.get_theme_node();
|
||||||
let [width, height] = area.get_surface_size();
|
let [width, height] = area.get_surface_size();
|
||||||
@@ -66,41 +49,9 @@ var Slider = new Lang.Class({
|
|||||||
let [hasHandleColor, handleBorderColor] =
|
let [hasHandleColor, handleBorderColor] =
|
||||||
themeNode.lookup_color('-slider-handle-border-color', false);
|
themeNode.lookup_color('-slider-handle-border-color', false);
|
||||||
|
|
||||||
let sliderHeight = themeNode.get_length('-slider-height');
|
|
||||||
|
|
||||||
let sliderBorderWidth = themeNode.get_length('-slider-border-width');
|
|
||||||
let sliderBorderRadius = Math.min(width, sliderHeight) / 2;
|
|
||||||
|
|
||||||
let sliderBorderColor = themeNode.get_color('-slider-border-color');
|
|
||||||
let sliderColor = themeNode.get_color('-slider-background-color');
|
|
||||||
|
|
||||||
let sliderActiveBorderColor = themeNode.get_color('-slider-active-border-color');
|
|
||||||
let sliderActiveColor = themeNode.get_color('-slider-active-background-color');
|
|
||||||
|
|
||||||
const TAU = Math.PI * 2;
|
const TAU = Math.PI * 2;
|
||||||
|
|
||||||
let handleX = handleRadius + (width - 2 * handleRadius) * this._value;
|
let handleX = handleRadius + (width - 2 * handleRadius) * this._value / this._maxValue;
|
||||||
|
|
||||||
cr.arc(sliderBorderRadius + sliderBorderWidth, height / 2, sliderBorderRadius, TAU * 1/4, TAU * 3/4);
|
|
||||||
cr.lineTo(handleX, (height - sliderHeight) / 2);
|
|
||||||
cr.lineTo(handleX, (height + sliderHeight) / 2);
|
|
||||||
cr.lineTo(sliderBorderRadius + sliderBorderWidth, (height + sliderHeight) / 2);
|
|
||||||
Clutter.cairo_set_source_color(cr, sliderActiveColor);
|
|
||||||
cr.fillPreserve();
|
|
||||||
Clutter.cairo_set_source_color(cr, sliderActiveBorderColor);
|
|
||||||
cr.setLineWidth(sliderBorderWidth);
|
|
||||||
cr.stroke();
|
|
||||||
|
|
||||||
cr.arc(width - sliderBorderRadius - sliderBorderWidth, height / 2, sliderBorderRadius, TAU * 3/4, TAU * 1/4);
|
|
||||||
cr.lineTo(handleX, (height + sliderHeight) / 2);
|
|
||||||
cr.lineTo(handleX, (height - sliderHeight) / 2);
|
|
||||||
cr.lineTo(width - sliderBorderRadius - sliderBorderWidth, (height - sliderHeight) / 2);
|
|
||||||
Clutter.cairo_set_source_color(cr, sliderColor);
|
|
||||||
cr.fillPreserve();
|
|
||||||
Clutter.cairo_set_source_color(cr, sliderBorderColor);
|
|
||||||
cr.setLineWidth(sliderBorderWidth);
|
|
||||||
cr.stroke();
|
|
||||||
|
|
||||||
let handleY = height / 2;
|
let handleY = height / 2;
|
||||||
|
|
||||||
let color = themeNode.get_foreground_color();
|
let color = themeNode.get_foreground_color();
|
||||||
@@ -208,7 +159,7 @@ var Slider = new Lang.Class({
|
|||||||
delta = -dy * SLIDER_SCROLL_STEP;
|
delta = -dy * SLIDER_SCROLL_STEP;
|
||||||
}
|
}
|
||||||
|
|
||||||
this._value = Math.min(Math.max(0, this._value + delta), 1);
|
this._value = Math.min(Math.max(0, this._value + delta), this._maxValue);
|
||||||
|
|
||||||
this.actor.queue_repaint();
|
this.actor.queue_repaint();
|
||||||
this.emit('value-changed', this._value);
|
this.emit('value-changed', this._value);
|
||||||
@@ -230,7 +181,7 @@ var Slider = new Lang.Class({
|
|||||||
let key = event.get_key_symbol();
|
let key = event.get_key_symbol();
|
||||||
if (key == Clutter.KEY_Right || key == Clutter.KEY_Left) {
|
if (key == Clutter.KEY_Right || key == Clutter.KEY_Left) {
|
||||||
let delta = key == Clutter.KEY_Right ? 0.1 : -0.1;
|
let delta = key == Clutter.KEY_Right ? 0.1 : -0.1;
|
||||||
this._value = Math.max(0, Math.min(this._value + delta, 1));
|
this._value = Math.max(0, Math.min(this._value + delta, this._maxValue));
|
||||||
this.actor.queue_repaint();
|
this.actor.queue_repaint();
|
||||||
this.emit('drag-begin');
|
this.emit('drag-begin');
|
||||||
this.emit('value-changed', this._value);
|
this.emit('value-changed', this._value);
|
||||||
@@ -246,7 +197,7 @@ var Slider = new Lang.Class({
|
|||||||
relX = absX - sliderX;
|
relX = absX - sliderX;
|
||||||
relY = absY - sliderY;
|
relY = absY - sliderY;
|
||||||
|
|
||||||
let width = this._sliderWidth;
|
let width = this._barLevelWidth;
|
||||||
let handleRadius = this.actor.get_theme_node().get_length('-slider-handle-radius');
|
let handleRadius = this.actor.get_theme_node().get_length('-slider-handle-radius');
|
||||||
|
|
||||||
let newvalue;
|
let newvalue;
|
||||||
@@ -256,38 +207,14 @@ var Slider = new Lang.Class({
|
|||||||
newvalue = 1;
|
newvalue = 1;
|
||||||
else
|
else
|
||||||
newvalue = (relX - handleRadius) / (width - 2 * handleRadius);
|
newvalue = (relX - handleRadius) / (width - 2 * handleRadius);
|
||||||
this._value = newvalue;
|
this._value = newvalue * this._maxValue;
|
||||||
this.actor.queue_repaint();
|
this.actor.queue_repaint();
|
||||||
this.emit('value-changed', this._value);
|
this.emit('value-changed', this._value);
|
||||||
},
|
},
|
||||||
|
|
||||||
_getCurrentValue(actor) {
|
|
||||||
return this._value;
|
|
||||||
},
|
|
||||||
|
|
||||||
_getMinimumValue(actor) {
|
|
||||||
return 0;
|
|
||||||
},
|
|
||||||
|
|
||||||
_getMaximumValue(actor) {
|
|
||||||
return 1;
|
|
||||||
},
|
|
||||||
|
|
||||||
_getMinimumIncrement(actor) {
|
_getMinimumIncrement(actor) {
|
||||||
return 0.1;
|
return 0.1;
|
||||||
},
|
},
|
||||||
|
|
||||||
_setCurrentValue(actor, value) {
|
|
||||||
this._value = value;
|
|
||||||
},
|
|
||||||
|
|
||||||
_valueChanged(slider, value, property) {
|
|
||||||
this._customAccessible.notify ("accessible-value");
|
|
||||||
},
|
|
||||||
|
|
||||||
get value() {
|
|
||||||
return this._value;
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
Signals.addSignalMethods(Slider.prototype);
|
Signals.addSignalMethods(Slider.prototype);
|
||||||
|
@@ -11,13 +11,14 @@ 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 = '<node> \
|
const RfkillManagerInterface = `
|
||||||
<interface name="org.gnome.SettingsDaemon.Rfkill"> \
|
<node>
|
||||||
<property name="BluetoothAirplaneMode" type="b" access="readwrite" /> \
|
<interface name="org.gnome.SettingsDaemon.Rfkill">
|
||||||
<property name="BluetoothHasAirplaneMode" type="b" access="read" /> \
|
<property name="BluetoothAirplaneMode" type="b" access="readwrite" />
|
||||||
<property name="BluetoothHardwareAirplaneMode" type="b" access="readwrite" /> \
|
<property name="BluetoothHasAirplaneMode" type="b" access="read" />
|
||||||
</interface> \
|
<property name="BluetoothHardwareAirplaneMode" type="b" access="readwrite" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const RfkillManagerProxy = Gio.DBusProxy.makeProxyWrapper(RfkillManagerInterface);
|
const RfkillManagerProxy = Gio.DBusProxy.makeProxyWrapper(RfkillManagerInterface);
|
||||||
|
|
||||||
|
@@ -11,11 +11,12 @@ 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 = '<node> \
|
const BrightnessInterface = `
|
||||||
<interface name="org.gnome.SettingsDaemon.Power.Screen"> \
|
<node>
|
||||||
<property name="Brightness" type="i" access="readwrite"/> \
|
<interface name="org.gnome.SettingsDaemon.Power.Screen">
|
||||||
</interface> \
|
<property name="Brightness" type="i" access="readwrite"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const BrightnessProxy = Gio.DBusProxy.makeProxyWrapper(BrightnessInterface);
|
const BrightnessProxy = Gio.DBusProxy.makeProxyWrapper(BrightnessInterface);
|
||||||
|
|
||||||
|
@@ -40,29 +40,31 @@ function accuracyLevelToString(accuracyLevel) {
|
|||||||
return 'NONE';
|
return 'NONE';
|
||||||
}
|
}
|
||||||
|
|
||||||
var GeoclueIface = '<node> \
|
var GeoclueIface = `
|
||||||
<interface name="org.freedesktop.GeoClue2.Manager"> \
|
<node>
|
||||||
<property name="InUse" type="b" access="read"/> \
|
<interface name="org.freedesktop.GeoClue2.Manager">
|
||||||
<property name="AvailableAccuracyLevel" type="u" access="read"/> \
|
<property name="InUse" type="b" access="read"/>
|
||||||
<method name="AddAgent"> \
|
<property name="AvailableAccuracyLevel" type="u" access="read"/>
|
||||||
<arg name="id" type="s" direction="in"/> \
|
<method name="AddAgent">
|
||||||
</method> \
|
<arg name="id" type="s" direction="in"/>
|
||||||
</interface> \
|
</method>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const GeoclueManager = Gio.DBusProxy.makeProxyWrapper(GeoclueIface);
|
const GeoclueManager = Gio.DBusProxy.makeProxyWrapper(GeoclueIface);
|
||||||
|
|
||||||
var AgentIface = '<node> \
|
var AgentIface = `
|
||||||
<interface name="org.freedesktop.GeoClue2.Agent"> \
|
<node>
|
||||||
<property name="MaxAccuracyLevel" type="u" access="read"/> \
|
<interface name="org.freedesktop.GeoClue2.Agent">
|
||||||
<method name="AuthorizeApp"> \
|
<property name="MaxAccuracyLevel" type="u" access="read"/>
|
||||||
<arg name="desktop_id" type="s" direction="in"/> \
|
<method name="AuthorizeApp">
|
||||||
<arg name="req_accuracy_level" type="u" direction="in"/> \
|
<arg name="desktop_id" type="s" direction="in"/>
|
||||||
<arg name="authorized" type="b" direction="out"/> \
|
<arg name="req_accuracy_level" type="u" direction="in"/>
|
||||||
<arg name="allowed_accuracy_level" type="u" direction="out"/> \
|
<arg name="authorized" type="b" direction="out"/>
|
||||||
</method> \
|
<arg name="allowed_accuracy_level" type="u" direction="out"/>
|
||||||
</interface> \
|
</method>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
var Indicator = new Lang.Class({
|
var Indicator = new Lang.Class({
|
||||||
Name: 'LocationIndicator',
|
Name: 'LocationIndicator',
|
||||||
|
@@ -51,25 +51,26 @@ var PortalHelperResult = {
|
|||||||
RECHECK: 2
|
RECHECK: 2
|
||||||
};
|
};
|
||||||
|
|
||||||
const PortalHelperIface = '<node> \
|
const PortalHelperIface = `
|
||||||
<interface name="org.gnome.Shell.PortalHelper"> \
|
<node>
|
||||||
<method name="Authenticate"> \
|
<interface name="org.gnome.Shell.PortalHelper">
|
||||||
<arg type="o" direction="in" name="connection" /> \
|
<method name="Authenticate">
|
||||||
<arg type="s" direction="in" name="url" /> \
|
<arg type="o" direction="in" name="connection" />
|
||||||
<arg type="u" direction="in" name="timestamp" /> \
|
<arg type="s" direction="in" name="url" />
|
||||||
</method> \
|
<arg type="u" direction="in" name="timestamp" />
|
||||||
<method name="Close"> \
|
</method>
|
||||||
<arg type="o" direction="in" name="connection" /> \
|
<method name="Close">
|
||||||
</method> \
|
<arg type="o" direction="in" name="connection" />
|
||||||
<method name="Refresh"> \
|
</method>
|
||||||
<arg type="o" direction="in" name="connection" /> \
|
<method name="Refresh">
|
||||||
</method> \
|
<arg type="o" direction="in" name="connection" />
|
||||||
<signal name="Done"> \
|
</method>
|
||||||
<arg type="o" name="connection" /> \
|
<signal name="Done">
|
||||||
<arg type="u" name="result" /> \
|
<arg type="o" name="connection" />
|
||||||
</signal> \
|
<arg type="u" name="result" />
|
||||||
</interface> \
|
</signal>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
const PortalHelperProxy = Gio.DBusProxy.makeProxyWrapper(PortalHelperIface);
|
const PortalHelperProxy = Gio.DBusProxy.makeProxyWrapper(PortalHelperIface);
|
||||||
|
|
||||||
function signalToIcon(value) {
|
function signalToIcon(value) {
|
||||||
|
@@ -10,12 +10,13 @@ const PopupMenu = imports.ui.popupMenu;
|
|||||||
const BUS_NAME = 'org.gnome.SettingsDaemon.Color';
|
const BUS_NAME = 'org.gnome.SettingsDaemon.Color';
|
||||||
const OBJECT_PATH = '/org/gnome/SettingsDaemon/Color';
|
const OBJECT_PATH = '/org/gnome/SettingsDaemon/Color';
|
||||||
|
|
||||||
const ColorInterface = '<node> \
|
const ColorInterface = `
|
||||||
<interface name="org.gnome.SettingsDaemon.Color"> \
|
<node>
|
||||||
<property name="DisabledUntilTomorrow" type="b" access="readwrite"/> \
|
<interface name="org.gnome.SettingsDaemon.Color">
|
||||||
<property name="NightLightActive" type="b" access="read"/> \
|
<property name="DisabledUntilTomorrow" type="b" access="readwrite"/>
|
||||||
</interface> \
|
<property name="NightLightActive" type="b" access="read"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const ColorProxy = Gio.DBusProxy.makeProxyWrapper(ColorInterface);
|
const ColorProxy = Gio.DBusProxy.makeProxyWrapper(ColorInterface);
|
||||||
|
|
||||||
|
@@ -13,17 +13,18 @@ const PopupMenu = imports.ui.popupMenu;
|
|||||||
const BUS_NAME = 'org.freedesktop.UPower';
|
const BUS_NAME = 'org.freedesktop.UPower';
|
||||||
const OBJECT_PATH = '/org/freedesktop/UPower/devices/DisplayDevice';
|
const OBJECT_PATH = '/org/freedesktop/UPower/devices/DisplayDevice';
|
||||||
|
|
||||||
const DisplayDeviceInterface = '<node> \
|
const DisplayDeviceInterface = `
|
||||||
<interface name="org.freedesktop.UPower.Device"> \
|
<node>
|
||||||
<property name="Type" type="u" access="read"/> \
|
<interface name="org.freedesktop.UPower.Device">
|
||||||
<property name="State" type="u" access="read"/> \
|
<property name="Type" type="u" access="read"/>
|
||||||
<property name="Percentage" type="d" access="read"/> \
|
<property name="State" type="u" access="read"/>
|
||||||
<property name="TimeToEmpty" type="x" access="read"/> \
|
<property name="Percentage" type="d" access="read"/>
|
||||||
<property name="TimeToFull" type="x" access="read"/> \
|
<property name="TimeToEmpty" type="x" access="read"/>
|
||||||
<property name="IsPresent" type="b" access="read"/> \
|
<property name="TimeToFull" type="x" access="read"/>
|
||||||
<property name="IconName" type="s" access="read"/> \
|
<property name="IsPresent" type="b" access="read"/>
|
||||||
</interface> \
|
<property name="IconName" type="s" access="read"/>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const PowerManagerProxy = Gio.DBusProxy.makeProxyWrapper(DisplayDeviceInterface);
|
const PowerManagerProxy = Gio.DBusProxy.makeProxyWrapper(DisplayDeviceInterface);
|
||||||
|
|
||||||
|
@@ -41,6 +41,7 @@ var RemoteAccessApplet = new Lang.Class({
|
|||||||
|
|
||||||
this._indicator = this._addIndicator();
|
this._indicator = this._addIndicator();
|
||||||
this._indicator.icon_name = 'screen-shared-symbolic';
|
this._indicator.icon_name = 'screen-shared-symbolic';
|
||||||
|
this._indicator.add_style_class_name('remote-access-indicator');
|
||||||
this._item =
|
this._item =
|
||||||
new PopupMenu.PopupSubMenuMenuItem(_("Screen is Being Shared"),
|
new PopupMenu.PopupSubMenuMenuItem(_("Screen is Being Shared"),
|
||||||
true);
|
true);
|
||||||
|
@@ -11,13 +11,14 @@ 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 = '<node> \
|
const RfkillManagerInterface = `
|
||||||
<interface name="org.gnome.SettingsDaemon.Rfkill"> \
|
<node>
|
||||||
<property name="AirplaneMode" type="b" access="readwrite" /> \
|
<interface name="org.gnome.SettingsDaemon.Rfkill">
|
||||||
<property name="HardwareAirplaneMode" type="b" access="read" /> \
|
<property name="AirplaneMode" type="b" access="readwrite" />
|
||||||
<property name="ShouldShowAirplaneMode" type="b" access="read" /> \
|
<property name="HardwareAirplaneMode" type="b" access="read" />
|
||||||
</interface> \
|
<property name="ShouldShowAirplaneMode" type="b" access="read" />
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const RfkillManagerProxy = Gio.DBusProxy.makeProxyWrapper(RfkillManagerInterface);
|
const RfkillManagerProxy = Gio.DBusProxy.makeProxyWrapper(RfkillManagerInterface);
|
||||||
|
|
||||||
|
@@ -261,8 +261,19 @@ var Indicator = new Lang.Class({
|
|||||||
item = new PopupMenu.PopupBaseMenuItem({ reactive: false,
|
item = new PopupMenu.PopupBaseMenuItem({ reactive: false,
|
||||||
can_focus: false });
|
can_focus: false });
|
||||||
|
|
||||||
this._settingsAction = this._createActionButton('org.gnome.Settings-symbolic', _("Settings"));
|
let app = this._settingsApp = Shell.AppSystem.get_default().lookup_app(
|
||||||
this._settingsAction.connect('clicked', () => { this._onSettingsClicked(); });
|
'gnome-control-center.desktop'
|
||||||
|
);
|
||||||
|
if (app) {
|
||||||
|
let [icon, name] = [app.app_info.get_icon().names[0],
|
||||||
|
app.get_name()];
|
||||||
|
this._settingsAction = this._createActionButton(icon, name);
|
||||||
|
this._settingsAction.connect('clicked',
|
||||||
|
this._onSettingsClicked.bind(this));
|
||||||
|
} else {
|
||||||
|
log('Missing required core component Settings, expect trouble…');
|
||||||
|
this._settingsAction = new St.Widget();
|
||||||
|
}
|
||||||
item.actor.add(this._settingsAction, { expand: true, x_fill: false });
|
item.actor.add(this._settingsAction, { expand: true, x_fill: false });
|
||||||
|
|
||||||
this._orientationLockAction = this._createActionButton('', _("Orientation Lock"));
|
this._orientationLockAction = this._createActionButton('', _("Orientation Lock"));
|
||||||
@@ -280,7 +291,7 @@ var Indicator = new Lang.Class({
|
|||||||
'icon-name',
|
'icon-name',
|
||||||
bindFlags);
|
bindFlags);
|
||||||
|
|
||||||
this._lockScreenAction = this._createActionButton('changes-prevent-symbolic', _("Lock"));
|
this._lockScreenAction = this._createActionButton('changes-prevent', _("Lock"));
|
||||||
this._lockScreenAction.connect('clicked', () => {
|
this._lockScreenAction.connect('clicked', () => {
|
||||||
this.menu.itemActivated(BoxPointer.PopupAnimation.NONE);
|
this.menu.itemActivated(BoxPointer.PopupAnimation.NONE);
|
||||||
this._systemActions.activateLockScreen();
|
this._systemActions.activateLockScreen();
|
||||||
@@ -291,7 +302,7 @@ var Indicator = new Lang.Class({
|
|||||||
'visible',
|
'visible',
|
||||||
bindFlags);
|
bindFlags);
|
||||||
|
|
||||||
this._suspendAction = this._createActionButton('media-playback-pause-symbolic', _("Suspend"));
|
this._suspendAction = this._createActionButton('media-playback-pause', _("Suspend"));
|
||||||
this._suspendAction.connect('clicked', () => {
|
this._suspendAction.connect('clicked', () => {
|
||||||
this.menu.itemActivated(BoxPointer.PopupAnimation.NONE);
|
this.menu.itemActivated(BoxPointer.PopupAnimation.NONE);
|
||||||
this._systemActions.activateSuspend();
|
this._systemActions.activateSuspend();
|
||||||
@@ -301,7 +312,7 @@ var Indicator = new Lang.Class({
|
|||||||
'visible',
|
'visible',
|
||||||
bindFlags);
|
bindFlags);
|
||||||
|
|
||||||
this._powerOffAction = this._createActionButton('system-shutdown-symbolic', _("Power Off"));
|
this._powerOffAction = this._createActionButton('system-shutdown', _("Power Off"));
|
||||||
this._powerOffAction.connect('clicked', () => {
|
this._powerOffAction.connect('clicked', () => {
|
||||||
this.menu.itemActivated(BoxPointer.PopupAnimation.NONE);
|
this.menu.itemActivated(BoxPointer.PopupAnimation.NONE);
|
||||||
this._systemActions.activatePowerOff();
|
this._systemActions.activatePowerOff();
|
||||||
@@ -330,8 +341,7 @@ var Indicator = new Lang.Class({
|
|||||||
|
|
||||||
_onSettingsClicked() {
|
_onSettingsClicked() {
|
||||||
this.menu.itemActivated();
|
this.menu.itemActivated();
|
||||||
let app = Shell.AppSystem.get_default().lookup_app('gnome-control-center.desktop');
|
|
||||||
Main.overview.hide();
|
Main.overview.hide();
|
||||||
app.activate();
|
this._settingsApp.activate();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@@ -14,40 +14,42 @@ const PanelMenu = imports.ui.panelMenu;
|
|||||||
|
|
||||||
/* Keep in sync with data/org.freedesktop.bolt.xml */
|
/* Keep in sync with data/org.freedesktop.bolt.xml */
|
||||||
|
|
||||||
const BoltClientInterface = '<node> \
|
const BoltClientInterface = `
|
||||||
<interface name="org.freedesktop.bolt1.Manager"> \
|
<node>
|
||||||
<property name="Probing" type="b" access="read"></property> \
|
<interface name="org.freedesktop.bolt1.Manager">
|
||||||
<property name="AuthMode" type="s" access="readwrite"></property> \
|
<property name="Probing" type="b" access="read"></property>
|
||||||
<method name="EnrollDevice"> \
|
<property name="AuthMode" type="s" access="readwrite"></property>
|
||||||
<arg type="s" name="uid" direction="in"> </arg> \
|
<method name="EnrollDevice">
|
||||||
<arg type="s" name="policy" direction="in"> </arg> \
|
<arg type="s" name="uid" direction="in"> </arg>
|
||||||
<arg type="s" name="flags" direction="in"> </arg> \
|
<arg type="s" name="policy" direction="in"> </arg>
|
||||||
<arg name="device" direction="out" type="o"> </arg> \
|
<arg type="s" name="flags" direction="in"> </arg>
|
||||||
</method> \
|
<arg name="device" direction="out" type="o"> </arg>
|
||||||
<signal name="DeviceAdded"> \
|
</method>
|
||||||
<arg name="device" type="o"> </arg> \
|
<signal name="DeviceAdded">
|
||||||
</signal> \
|
<arg name="device" type="o"> </arg>
|
||||||
</interface> \
|
</signal>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const BoltDeviceInterface = '<node> \
|
const BoltDeviceInterface = `
|
||||||
<interface name="org.freedesktop.bolt1.Device"> \
|
<node>
|
||||||
<property name="Uid" type="s" access="read"></property> \
|
<interface name="org.freedesktop.bolt1.Device">
|
||||||
<property name="Name" type="s" access="read"></property> \
|
<property name="Uid" type="s" access="read"></property>
|
||||||
<property name="Vendor" type="s" access="read"></property> \
|
<property name="Name" type="s" access="read"></property>
|
||||||
<property name="Type" type="s" access="read"></property> \
|
<property name="Vendor" type="s" access="read"></property>
|
||||||
<property name="Status" type="s" access="read"></property> \
|
<property name="Type" type="s" access="read"></property>
|
||||||
<property name="Parent" type="s" access="read"></property> \
|
<property name="Status" type="s" access="read"></property>
|
||||||
<property name="SysfsPath" type="s" access="read"></property> \
|
<property name="Parent" type="s" access="read"></property>
|
||||||
<property name="Stored" type="b" access="read"></property> \
|
<property name="SysfsPath" type="s" access="read"></property>
|
||||||
<property name="Policy" type="s" access="read"></property> \
|
<property name="Stored" type="b" access="read"></property>
|
||||||
<property name="Key" type="s" access="read"></property> \
|
<property name="Policy" type="s" access="read"></property>
|
||||||
<property name="Label" type="s" access="read"></property> \
|
<property name="Key" type="s" access="read"></property>
|
||||||
<property name="ConnectTime" type="t" access="read"></property> \
|
<property name="Label" type="s" access="read"></property>
|
||||||
<property name="AuthorizeTime" type="t" access="read"></property> \
|
<property name="ConnectTime" type="t" access="read"></property>
|
||||||
<property name="StoreTime" type="t" access="read"></property> \
|
<property name="AuthorizeTime" type="t" access="read"></property>
|
||||||
</interface> \
|
<property name="StoreTime" type="t" access="read"></property>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const BoltDeviceProxy = Gio.DBusProxy.makeProxyWrapper(BoltDeviceInterface);
|
const BoltDeviceProxy = Gio.DBusProxy.makeProxyWrapper(BoltDeviceInterface);
|
||||||
|
|
||||||
|
@@ -12,6 +12,8 @@ const PanelMenu = imports.ui.panelMenu;
|
|||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
const Slider = imports.ui.slider;
|
const Slider = imports.ui.slider;
|
||||||
|
|
||||||
|
const ALLOW_AMPLIFIED_VOLUME_KEY = 'allow-volume-above-100-percent';
|
||||||
|
|
||||||
var VOLUME_NOTIFY_ID = 1;
|
var VOLUME_NOTIFY_ID = 1;
|
||||||
|
|
||||||
// Each Gvc.MixerControl is a connection to PulseAudio,
|
// Each Gvc.MixerControl is a connection to PulseAudio,
|
||||||
@@ -36,6 +38,11 @@ var StreamSlider = new Lang.Class({
|
|||||||
this.item = new PopupMenu.PopupBaseMenuItem({ activate: false });
|
this.item = new PopupMenu.PopupBaseMenuItem({ activate: false });
|
||||||
|
|
||||||
this._slider = new Slider.Slider(0);
|
this._slider = new Slider.Slider(0);
|
||||||
|
|
||||||
|
this._soundSettings = new Gio.Settings({ schema_id: 'org.gnome.desktop.sound' });
|
||||||
|
this._soundSettings.connect('changed::' + ALLOW_AMPLIFIED_VOLUME_KEY, this._amplifySettingsChanged.bind(this));
|
||||||
|
this._amplifySettingsChanged();
|
||||||
|
|
||||||
this._slider.connect('value-changed', this._sliderChanged.bind(this));
|
this._slider.connect('value-changed', this._sliderChanged.bind(this));
|
||||||
this._slider.connect('drag-end', this._notifyVolumeChange.bind(this));
|
this._slider.connect('drag-end', this._notifyVolumeChange.bind(this));
|
||||||
|
|
||||||
@@ -135,21 +142,40 @@ var StreamSlider = new Lang.Class({
|
|||||||
this.emit('stream-updated');
|
this.emit('stream-updated');
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_amplifySettingsChanged() {
|
||||||
|
this._allowAmplified = this._soundSettings.get_boolean(ALLOW_AMPLIFIED_VOLUME_KEY);
|
||||||
|
|
||||||
|
if (this._allowAmplified)
|
||||||
|
this._slider.setMaximumValue(this.getMaxLevel() / 100);
|
||||||
|
else
|
||||||
|
this._slider.setMaximumValue(1);
|
||||||
|
|
||||||
|
if (this._stream)
|
||||||
|
this._updateVolume();
|
||||||
|
},
|
||||||
|
|
||||||
getIcon() {
|
getIcon() {
|
||||||
if (!this._stream)
|
if (!this._stream)
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
|
let icons = ["audio-volume-muted-symbolic",
|
||||||
|
"audio-volume-low-symbolic",
|
||||||
|
"audio-volume-medium-symbolic",
|
||||||
|
"audio-volume-high-symbolic",
|
||||||
|
"audio-volume-overamplified-symbolic"];
|
||||||
|
|
||||||
let volume = this._stream.volume;
|
let volume = this._stream.volume;
|
||||||
|
let n;
|
||||||
if (this._stream.is_muted || volume <= 0) {
|
if (this._stream.is_muted || volume <= 0) {
|
||||||
return 'audio-volume-muted-symbolic';
|
n = 0;
|
||||||
} else {
|
} else {
|
||||||
let n = Math.floor(3 * volume / this._control.get_vol_max_norm()) + 1;
|
n = Math.ceil(3 * volume / this._control.get_vol_max_norm());
|
||||||
if (n < 2)
|
if (n < 1)
|
||||||
return 'audio-volume-low-symbolic';
|
n = 1;
|
||||||
if (n >= 3)
|
else if (n > 3)
|
||||||
return 'audio-volume-high-symbolic';
|
n = 4;
|
||||||
return 'audio-volume-medium-symbolic';
|
|
||||||
}
|
}
|
||||||
|
return icons[n];
|
||||||
},
|
},
|
||||||
|
|
||||||
getLevel() {
|
getLevel() {
|
||||||
@@ -157,6 +183,14 @@ var StreamSlider = new Lang.Class({
|
|||||||
return null;
|
return null;
|
||||||
|
|
||||||
return 100 * this._stream.volume / this._control.get_vol_max_norm();
|
return 100 * this._stream.volume / this._control.get_vol_max_norm();
|
||||||
|
},
|
||||||
|
|
||||||
|
getMaxLevel() {
|
||||||
|
let maxVolume = this._control.get_vol_max_norm();
|
||||||
|
if (this._allowAmplified)
|
||||||
|
maxVolume = this._control.get_vol_max_amplified();
|
||||||
|
|
||||||
|
return 100 * maxVolume / this._control.get_vol_max_norm();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
Signals.addSignalMethods(StreamSlider.prototype);
|
Signals.addSignalMethods(StreamSlider.prototype);
|
||||||
@@ -310,6 +344,10 @@ var VolumeMenu = new Lang.Class({
|
|||||||
|
|
||||||
getLevel() {
|
getLevel() {
|
||||||
return this._output.getLevel();
|
return this._output.getLevel();
|
||||||
|
},
|
||||||
|
|
||||||
|
getMaxLevel() {
|
||||||
|
return this._output.getMaxLevel();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -346,8 +384,9 @@ var Indicator = new Lang.Class({
|
|||||||
return result;
|
return result;
|
||||||
|
|
||||||
let gicon = new Gio.ThemedIcon({ name: this._volumeMenu.getIcon() });
|
let gicon = new Gio.ThemedIcon({ name: this._volumeMenu.getIcon() });
|
||||||
let level = this._volumeMenu.getLevel();
|
let level = parseInt(this._volumeMenu.getLevel());
|
||||||
Main.osdWindowManager.show(-1, gicon, null, level);
|
let maxLevel = parseInt(this._volumeMenu.getMaxLevel());
|
||||||
|
Main.osdWindowManager.show(-1, gicon, null, level, maxLevel);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@@ -230,14 +230,14 @@ var ViewSelector = new Lang.Class({
|
|||||||
|
|
||||||
Main.wm.addKeybinding('toggle-application-view',
|
Main.wm.addKeybinding('toggle-application-view',
|
||||||
new Gio.Settings({ schema_id: SHELL_KEYBINDINGS_SCHEMA }),
|
new Gio.Settings({ schema_id: SHELL_KEYBINDINGS_SCHEMA }),
|
||||||
Meta.KeyBindingFlags.NONE,
|
Meta.KeyBindingFlags.IGNORE_AUTOREPEAT,
|
||||||
Shell.ActionMode.NORMAL |
|
Shell.ActionMode.NORMAL |
|
||||||
Shell.ActionMode.OVERVIEW,
|
Shell.ActionMode.OVERVIEW,
|
||||||
this._toggleAppsPage.bind(this));
|
this._toggleAppsPage.bind(this));
|
||||||
|
|
||||||
Main.wm.addKeybinding('toggle-overview',
|
Main.wm.addKeybinding('toggle-overview',
|
||||||
new Gio.Settings({ schema_id: SHELL_KEYBINDINGS_SCHEMA }),
|
new Gio.Settings({ schema_id: SHELL_KEYBINDINGS_SCHEMA }),
|
||||||
Meta.KeyBindingFlags.NONE,
|
Meta.KeyBindingFlags.IGNORE_AUTOREPEAT,
|
||||||
Shell.ActionMode.NORMAL |
|
Shell.ActionMode.NORMAL |
|
||||||
Shell.ActionMode.OVERVIEW,
|
Shell.ActionMode.OVERVIEW,
|
||||||
Main.overview.toggle.bind(Main.overview));
|
Main.overview.toggle.bind(Main.overview));
|
||||||
|
@@ -3,6 +3,7 @@
|
|||||||
const Clutter = imports.gi.Clutter;
|
const Clutter = imports.gi.Clutter;
|
||||||
const GLib = imports.gi.GLib;
|
const GLib = imports.gi.GLib;
|
||||||
const Gio = imports.gi.Gio;
|
const Gio = imports.gi.Gio;
|
||||||
|
const GObject = imports.gi.GObject;
|
||||||
const Lang = imports.lang;
|
const Lang = imports.lang;
|
||||||
const Mainloop = imports.mainloop;
|
const Mainloop = imports.mainloop;
|
||||||
const Meta = imports.gi.Meta;
|
const Meta = imports.gi.Meta;
|
||||||
@@ -34,25 +35,27 @@ var WINDOW_ANIMATION_TIME = 0.25;
|
|||||||
var DIM_BRIGHTNESS = -0.3;
|
var DIM_BRIGHTNESS = -0.3;
|
||||||
var DIM_TIME = 0.500;
|
var DIM_TIME = 0.500;
|
||||||
var UNDIM_TIME = 0.250;
|
var UNDIM_TIME = 0.250;
|
||||||
|
var MOTION_THRESHOLD = 100;
|
||||||
|
|
||||||
var ONE_SECOND = 1000; // in ms
|
var ONE_SECOND = 1000; // in ms
|
||||||
|
|
||||||
const GSD_WACOM_BUS_NAME = 'org.gnome.SettingsDaemon.Wacom';
|
const GSD_WACOM_BUS_NAME = 'org.gnome.SettingsDaemon.Wacom';
|
||||||
const GSD_WACOM_OBJECT_PATH = '/org/gnome/SettingsDaemon/Wacom';
|
const GSD_WACOM_OBJECT_PATH = '/org/gnome/SettingsDaemon/Wacom';
|
||||||
|
|
||||||
const GsdWacomIface = '<node name="/org/gnome/SettingsDaemon/Wacom"> \
|
const GsdWacomIface = `
|
||||||
<interface name="org.gnome.SettingsDaemon.Wacom"> \
|
<node name="/org/gnome/SettingsDaemon/Wacom">
|
||||||
<method name="SetGroupModeLED"> \
|
<interface name="org.gnome.SettingsDaemon.Wacom">
|
||||||
<arg name="device_path" direction="in" type="s"/> \
|
<method name="SetGroupModeLED">
|
||||||
<arg name="group" direction="in" type="u"/> \
|
<arg name="device_path" direction="in" type="s"/>
|
||||||
<arg name="mode" direction="in" type="u"/> \
|
<arg name="group" direction="in" type="u"/>
|
||||||
</method> \
|
<arg name="mode" direction="in" type="u"/>
|
||||||
<method name="SetOLEDLabels"> \
|
</method>
|
||||||
<arg name="device_path" direction="in" type="s"/> \
|
<method name="SetOLEDLabels">
|
||||||
<arg name="labels" direction="in" type="as"/> \
|
<arg name="device_path" direction="in" type="s"/>
|
||||||
</method> \
|
<arg name="labels" direction="in" type="as"/>
|
||||||
</interface> \
|
</method>
|
||||||
</node>';
|
</interface>
|
||||||
|
</node>`;
|
||||||
|
|
||||||
const GsdWacomProxy = Gio.DBusProxy.makeProxyWrapper(GsdWacomIface);
|
const GsdWacomProxy = Gio.DBusProxy.makeProxyWrapper(GsdWacomIface);
|
||||||
|
|
||||||
@@ -213,20 +216,12 @@ var WorkspaceTracker = new Lang.Class({
|
|||||||
global.display.connect('restacked',
|
global.display.connect('restacked',
|
||||||
this._windowsRestacked.bind(this));
|
this._windowsRestacked.bind(this));
|
||||||
|
|
||||||
this._workspaceSettings = this._getWorkspaceSettings();
|
this._workspaceSettings = new Gio.Settings({ schema_id: 'org.gnome.mutter' });
|
||||||
this._workspaceSettings.connect('changed::dynamic-workspaces', this._queueCheckWorkspaces.bind(this));
|
this._workspaceSettings.connect('changed::dynamic-workspaces', this._queueCheckWorkspaces.bind(this));
|
||||||
|
|
||||||
this._nWorkspacesChanged();
|
this._nWorkspacesChanged();
|
||||||
},
|
},
|
||||||
|
|
||||||
_getWorkspaceSettings() {
|
|
||||||
let settings = global.get_overrides_settings();
|
|
||||||
if (settings &&
|
|
||||||
settings.settings_schema.list_keys().indexOf('dynamic-workspaces') > -1)
|
|
||||||
return settings;
|
|
||||||
return new Gio.Settings({ schema_id: 'org.gnome.mutter' });
|
|
||||||
},
|
|
||||||
|
|
||||||
blockUpdates() {
|
blockUpdates() {
|
||||||
this._pauseWorkspaceCheck = true;
|
this._pauseWorkspaceCheck = true;
|
||||||
},
|
},
|
||||||
@@ -495,13 +490,8 @@ var TouchpadWorkspaceSwitchAction = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_checkActivated() {
|
_checkActivated() {
|
||||||
const MOTION_THRESHOLD = 50;
|
|
||||||
let allowedModes = Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW;
|
|
||||||
let dir;
|
let dir;
|
||||||
|
|
||||||
if ((allowedModes & Main.actionMode) == 0)
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (this._dy < -MOTION_THRESHOLD)
|
if (this._dy < -MOTION_THRESHOLD)
|
||||||
dir = Meta.MotionDirection.DOWN;
|
dir = Meta.MotionDirection.DOWN;
|
||||||
else if (this._dy > MOTION_THRESHOLD)
|
else if (this._dy > MOTION_THRESHOLD)
|
||||||
@@ -511,26 +501,35 @@ var TouchpadWorkspaceSwitchAction = new Lang.Class({
|
|||||||
else if (this._dx > MOTION_THRESHOLD)
|
else if (this._dx > MOTION_THRESHOLD)
|
||||||
dir = Meta.MotionDirection.LEFT;
|
dir = Meta.MotionDirection.LEFT;
|
||||||
else
|
else
|
||||||
return;
|
return false;
|
||||||
|
|
||||||
this.emit('activated', dir);
|
this.emit('activated', dir);
|
||||||
|
return true;
|
||||||
},
|
},
|
||||||
|
|
||||||
_handleEvent(actor, event) {
|
_handleEvent(actor, event) {
|
||||||
|
let allowedModes = Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW;
|
||||||
|
|
||||||
if (event.type() != Clutter.EventType.TOUCHPAD_SWIPE)
|
if (event.type() != Clutter.EventType.TOUCHPAD_SWIPE)
|
||||||
return Clutter.EVENT_PROPAGATE;
|
return Clutter.EVENT_PROPAGATE;
|
||||||
|
|
||||||
if (event.get_touchpad_gesture_finger_count() != 4)
|
if (event.get_touchpad_gesture_finger_count() != 4)
|
||||||
return Clutter.EVENT_PROPAGATE;
|
return Clutter.EVENT_PROPAGATE;
|
||||||
|
|
||||||
|
if ((allowedModes & Main.actionMode) == 0)
|
||||||
|
return Clutter.EVENT_PROPAGATE;
|
||||||
|
|
||||||
if (event.get_gesture_phase() == Clutter.TouchpadGesturePhase.UPDATE) {
|
if (event.get_gesture_phase() == Clutter.TouchpadGesturePhase.UPDATE) {
|
||||||
let [dx, dy] = event.get_gesture_motion_delta();
|
let [dx, dy] = event.get_gesture_motion_delta();
|
||||||
|
|
||||||
this._dx += dx;
|
// Scale deltas up a bit to make it feel snappier
|
||||||
this._dy += dy;
|
this._dx += dx * 2;
|
||||||
|
this._dy += dy * 2;
|
||||||
|
this.emit('motion', this._dx, this._dy);
|
||||||
} else {
|
} else {
|
||||||
if (event.get_gesture_phase() == Clutter.TouchpadGesturePhase.END)
|
if ((event.get_gesture_phase() == Clutter.TouchpadGesturePhase.END && ! this._checkActivated()) ||
|
||||||
this._checkActivated();
|
event.get_gesture_phase() == Clutter.TouchpadGesturePhase.CANCEL)
|
||||||
|
this.emit('cancel');
|
||||||
|
|
||||||
this._dx = 0;
|
this._dx = 0;
|
||||||
this._dy = 0;
|
this._dy = 0;
|
||||||
@@ -544,14 +543,14 @@ Signals.addSignalMethods(TouchpadWorkspaceSwitchAction.prototype);
|
|||||||
var WorkspaceSwitchAction = new Lang.Class({
|
var WorkspaceSwitchAction = new Lang.Class({
|
||||||
Name: 'WorkspaceSwitchAction',
|
Name: 'WorkspaceSwitchAction',
|
||||||
Extends: Clutter.SwipeAction,
|
Extends: Clutter.SwipeAction,
|
||||||
Signals: { 'activated': { param_types: [Meta.MotionDirection.$gtype] } },
|
Signals: { 'activated': { param_types: [Meta.MotionDirection.$gtype] },
|
||||||
|
'motion': { param_types: [GObject.TYPE_DOUBLE, GObject.TYPE_DOUBLE] },
|
||||||
|
'cancel': { param_types: [] }},
|
||||||
|
|
||||||
_init() {
|
_init() {
|
||||||
const MOTION_THRESHOLD = 50;
|
|
||||||
|
|
||||||
this.parent();
|
this.parent();
|
||||||
this.set_n_touch_points(4);
|
this.set_n_touch_points(4);
|
||||||
this.set_threshold_trigger_distance(MOTION_THRESHOLD, MOTION_THRESHOLD);
|
this._swept = false;
|
||||||
|
|
||||||
global.display.connect('grab-op-begin', () => {
|
global.display.connect('grab-op-begin', () => {
|
||||||
this.cancel();
|
this.cancel();
|
||||||
@@ -561,13 +560,35 @@ var WorkspaceSwitchAction = new Lang.Class({
|
|||||||
vfunc_gesture_prepare(actor) {
|
vfunc_gesture_prepare(actor) {
|
||||||
let allowedModes = Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW;
|
let allowedModes = Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW;
|
||||||
|
|
||||||
|
this._swept = false;
|
||||||
|
|
||||||
if (!this.parent(actor))
|
if (!this.parent(actor))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return (allowedModes & Main.actionMode);
|
return (allowedModes & Main.actionMode);
|
||||||
},
|
},
|
||||||
|
|
||||||
vfunc_swept(actor, direction) {
|
vfunc_gesture_progress(actor) {
|
||||||
|
let [x, y] = this.get_motion_coords(0);
|
||||||
|
let [xPress, yPress] = this.get_press_coords(0);
|
||||||
|
this.emit('motion', x - xPress, y - yPress);
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
|
||||||
|
vfunc_gesture_cancel(actor) {
|
||||||
|
if (!this._swept)
|
||||||
|
this.emit('cancel');
|
||||||
|
},
|
||||||
|
|
||||||
|
vfunc_swipe(actor, direction) {
|
||||||
|
let [x, y] = this.get_motion_coords(0);
|
||||||
|
let [xPress, yPress] = this.get_press_coords(0);
|
||||||
|
if (Math.abs(x - xPress) < MOTION_THRESHOLD &&
|
||||||
|
Math.abs(y - yPress) < MOTION_THRESHOLD) {
|
||||||
|
this.emit('cancel');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
let dir;
|
let dir;
|
||||||
|
|
||||||
if (direction & Clutter.SwipeDirection.UP)
|
if (direction & Clutter.SwipeDirection.UP)
|
||||||
@@ -579,6 +600,7 @@ var WorkspaceSwitchAction = new Lang.Class({
|
|||||||
else if (direction & Clutter.SwipeDirection.RIGHT)
|
else if (direction & Clutter.SwipeDirection.RIGHT)
|
||||||
dir = Meta.MotionDirection.LEFT;
|
dir = Meta.MotionDirection.LEFT;
|
||||||
|
|
||||||
|
this._swept = true;
|
||||||
this.emit('activated', dir);
|
this.emit('activated', dir);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -635,8 +657,8 @@ var AppSwitchAction = new Lang.Class({
|
|||||||
|
|
||||||
if (this.get_n_current_points() == 3) {
|
if (this.get_n_current_points() == 3) {
|
||||||
for (let i = 0; i < this.get_n_current_points(); i++) {
|
for (let i = 0; i < this.get_n_current_points(); i++) {
|
||||||
[startX, startY] = this.get_press_coords(i);
|
let [startX, startY] = this.get_press_coords(i);
|
||||||
[x, y] = this.get_motion_coords(i);
|
let [x, y] = this.get_motion_coords(i);
|
||||||
|
|
||||||
if (Math.abs(x - startX) > MOTION_THRESHOLD ||
|
if (Math.abs(x - startX) > MOTION_THRESHOLD ||
|
||||||
Math.abs(y - startY) > MOTION_THRESHOLD)
|
Math.abs(y - startY) > MOTION_THRESHOLD)
|
||||||
@@ -700,7 +722,14 @@ var WindowManager = new Lang.Class({
|
|||||||
this._isWorkspacePrepended = false;
|
this._isWorkspacePrepended = false;
|
||||||
|
|
||||||
this._switchData = null;
|
this._switchData = null;
|
||||||
this._shellwm.connect('kill-switch-workspace', this._switchWorkspaceDone.bind(this));
|
this._shellwm.connect('kill-switch-workspace', (shellwm) => {
|
||||||
|
if (this._switchData) {
|
||||||
|
if (this._switchData.inProgress)
|
||||||
|
this._switchWorkspaceDone(shellwm);
|
||||||
|
else if (!this._switchData.gestureActivated)
|
||||||
|
this._finishWorkspaceSwitch(this._switchData);
|
||||||
|
}
|
||||||
|
});
|
||||||
this._shellwm.connect('kill-window-effects', (shellwm, actor) => {
|
this._shellwm.connect('kill-window-effects', (shellwm, actor) => {
|
||||||
this._minimizeWindowDone(shellwm, actor);
|
this._minimizeWindowDone(shellwm, actor);
|
||||||
this._mapWindowDone(shellwm, actor);
|
this._mapWindowDone(shellwm, actor);
|
||||||
@@ -920,14 +949,14 @@ var WindowManager = new Lang.Class({
|
|||||||
|
|
||||||
this.addKeybinding('open-application-menu',
|
this.addKeybinding('open-application-menu',
|
||||||
new Gio.Settings({ schema_id: SHELL_KEYBINDINGS_SCHEMA }),
|
new Gio.Settings({ schema_id: SHELL_KEYBINDINGS_SCHEMA }),
|
||||||
Meta.KeyBindingFlags.NONE,
|
Meta.KeyBindingFlags.IGNORE_AUTOREPEAT,
|
||||||
Shell.ActionMode.NORMAL |
|
Shell.ActionMode.NORMAL |
|
||||||
Shell.ActionMode.POPUP,
|
Shell.ActionMode.POPUP,
|
||||||
this._toggleAppMenu.bind(this));
|
this._toggleAppMenu.bind(this));
|
||||||
|
|
||||||
this.addKeybinding('toggle-message-tray',
|
this.addKeybinding('toggle-message-tray',
|
||||||
new Gio.Settings({ schema_id: SHELL_KEYBINDINGS_SCHEMA }),
|
new Gio.Settings({ schema_id: SHELL_KEYBINDINGS_SCHEMA }),
|
||||||
Meta.KeyBindingFlags.NONE,
|
Meta.KeyBindingFlags.IGNORE_AUTOREPEAT,
|
||||||
Shell.ActionMode.NORMAL |
|
Shell.ActionMode.NORMAL |
|
||||||
Shell.ActionMode.OVERVIEW |
|
Shell.ActionMode.OVERVIEW |
|
||||||
Shell.ActionMode.POPUP,
|
Shell.ActionMode.POPUP,
|
||||||
@@ -982,12 +1011,16 @@ var WindowManager = new Lang.Class({
|
|||||||
false, -1, 1);
|
false, -1, 1);
|
||||||
|
|
||||||
let gesture = new WorkspaceSwitchAction();
|
let gesture = new WorkspaceSwitchAction();
|
||||||
|
gesture.connect('motion', this._switchWorkspaceMotion.bind(this));
|
||||||
gesture.connect('activated', this._actionSwitchWorkspace.bind(this));
|
gesture.connect('activated', this._actionSwitchWorkspace.bind(this));
|
||||||
|
gesture.connect('cancel', this._switchWorkspaceCancel.bind(this));
|
||||||
global.stage.add_action(gesture);
|
global.stage.add_action(gesture);
|
||||||
|
|
||||||
// This is not a normal Clutter.GestureAction, doesn't need add_action()
|
// This is not a normal Clutter.GestureAction, doesn't need add_action()
|
||||||
gesture = new TouchpadWorkspaceSwitchAction(global.stage);
|
gesture = new TouchpadWorkspaceSwitchAction(global.stage);
|
||||||
|
gesture.connect('motion', this._switchWorkspaceMotion.bind(this));
|
||||||
gesture.connect('activated', this._actionSwitchWorkspace.bind(this));
|
gesture.connect('activated', this._actionSwitchWorkspace.bind(this));
|
||||||
|
gesture.connect('cancel', this._switchWorkspaceCancel.bind(this));
|
||||||
|
|
||||||
gesture = new AppSwitchAction();
|
gesture = new AppSwitchAction();
|
||||||
gesture.connect('activated', this._switchApp.bind(this));
|
gesture.connect('activated', this._switchApp.bind(this));
|
||||||
@@ -999,6 +1032,14 @@ var WindowManager = new Lang.Class({
|
|||||||
Main.keyboard.show(Main.layoutManager.bottomIndex);
|
Main.keyboard.show(Main.layoutManager.bottomIndex);
|
||||||
});
|
});
|
||||||
global.stage.add_action(gesture);
|
global.stage.add_action(gesture);
|
||||||
|
|
||||||
|
gesture = new EdgeDragAction.EdgeDragAction(St.Side.TOP, mode);
|
||||||
|
gesture.connect('activated', () => {
|
||||||
|
let currentWindow = global.display.focus_window;
|
||||||
|
if (currentWindow)
|
||||||
|
currentWindow.unmake_fullscreen();
|
||||||
|
});
|
||||||
|
global.stage.add_action(gesture);
|
||||||
},
|
},
|
||||||
|
|
||||||
_showPadOsd(display, device, settings, imagePath, editionMode, monitorIndex) {
|
_showPadOsd(display, device, settings, imagePath, editionMode, monitorIndex) {
|
||||||
@@ -1008,11 +1049,52 @@ var WindowManager = new Lang.Class({
|
|||||||
return this._currentPadOsd.actor;
|
return this._currentPadOsd.actor;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_switchWorkspaceMotion(action, xRel, yRel) {
|
||||||
|
let workspaceManager = global.workspace_manager;
|
||||||
|
let activeWorkspace = workspaceManager.get_active_workspace();
|
||||||
|
|
||||||
|
if (!this._switchData)
|
||||||
|
this._prepareWorkspaceSwitch(activeWorkspace.index(), -1);
|
||||||
|
|
||||||
|
if (yRel < 0 && !this._switchData.surroundings[Meta.MotionDirection.DOWN])
|
||||||
|
yRel = 0;
|
||||||
|
if (yRel > 0 && !this._switchData.surroundings[Meta.MotionDirection.UP])
|
||||||
|
yRel = 0;
|
||||||
|
if (xRel < 0 && !this._switchData.surroundings[Meta.MotionDirection.RIGHT])
|
||||||
|
xRel = 0;
|
||||||
|
if (xRel > 0 && !this._switchData.surroundings[Meta.MotionDirection.LEFT])
|
||||||
|
xRel = 0;
|
||||||
|
|
||||||
|
this._switchData.container.set_position(xRel, yRel);
|
||||||
|
},
|
||||||
|
|
||||||
|
_switchWorkspaceCancel() {
|
||||||
|
if (!this._switchData || this._switchData.inProgress)
|
||||||
|
return;
|
||||||
|
let switchData = this._switchData;
|
||||||
|
this._switchData = null;
|
||||||
|
Tweener.addTween(switchData.container,
|
||||||
|
{ x: 0,
|
||||||
|
y: 0,
|
||||||
|
time: WINDOW_ANIMATION_TIME,
|
||||||
|
transition: 'easeOutQuad',
|
||||||
|
onComplete: this._finishWorkspaceSwitch,
|
||||||
|
onCompleteScope: this,
|
||||||
|
onCompleteParams: [switchData],
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
_actionSwitchWorkspace(action, direction) {
|
_actionSwitchWorkspace(action, direction) {
|
||||||
let workspaceManager = global.workspace_manager;
|
let workspaceManager = global.workspace_manager;
|
||||||
let activeWorkspace = workspaceManager.get_active_workspace();
|
let activeWorkspace = workspaceManager.get_active_workspace();
|
||||||
let newWs = activeWorkspace.get_neighbor(direction);
|
let newWs = activeWorkspace.get_neighbor(direction);
|
||||||
|
|
||||||
|
if (newWs == activeWorkspace) {
|
||||||
|
this._switchWorkspaceCancel();
|
||||||
|
} else {
|
||||||
|
this._switchData.gestureActivated = true;
|
||||||
this.actionMoveWorkspace(newWs);
|
this.actionMoveWorkspace(newWs);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
_lookupIndex(windows, metaWindow) {
|
_lookupIndex(windows, metaWindow) {
|
||||||
@@ -1692,63 +1774,104 @@ var WindowManager = new Lang.Class({
|
|||||||
if (this._switchData == null)
|
if (this._switchData == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// Update stacking of windows in inGroup (aka the workspace we are
|
|
||||||
// switching to). Windows in outGroup are about to be hidden anyway,
|
|
||||||
// so we just ignore them here.
|
|
||||||
let windows = global.get_window_actors();
|
let windows = global.get_window_actors();
|
||||||
let sibling = null;
|
let lastCurSibling = null;
|
||||||
|
let lastDirSibling = [];
|
||||||
for (let i = 0; i < windows.length; i++) {
|
for (let i = 0; i < windows.length; i++) {
|
||||||
if (windows[i].get_parent() != this._switchData.inGroup)
|
if (windows[i].get_parent() == this._switchData.curGroup) {
|
||||||
|
this._switchData.curGroup.set_child_above_sibling(windows[i], lastCurSibling);
|
||||||
|
lastCurSibling = windows[i];
|
||||||
|
} else {
|
||||||
|
for (let dir of Object.values(Meta.MotionDirection)) {
|
||||||
|
let info = this._switchData.surroundings[dir];
|
||||||
|
if (!info || windows[i].get_parent() != info.actor)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
this._switchData.inGroup.set_child_above_sibling(windows[i], sibling);
|
let sibling = lastDirSibling[dir];
|
||||||
sibling = windows[i];
|
if (sibling == undefined)
|
||||||
|
sibling = null;
|
||||||
|
|
||||||
|
info.actor.set_child_above_sibling(windows[i], sibling);
|
||||||
|
lastDirSibling[dir] = windows[i];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
_switchWorkspace(shellwm, from, to, direction) {
|
_getPositionForDirection(direction) {
|
||||||
if (!Main.sessionMode.hasWorkspaces || !this._shouldAnimate()) {
|
|
||||||
shellwm.completed_switch_workspace();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
let windows = global.get_window_actors();
|
|
||||||
|
|
||||||
/* @direction is the direction that the "camera" moves, so the
|
|
||||||
* screen contents have to move one screen's worth in the
|
|
||||||
* opposite direction.
|
|
||||||
*/
|
|
||||||
let xDest = 0, yDest = 0;
|
let xDest = 0, yDest = 0;
|
||||||
|
|
||||||
if (direction == Meta.MotionDirection.UP ||
|
if (direction == Meta.MotionDirection.UP ||
|
||||||
direction == Meta.MotionDirection.UP_LEFT ||
|
direction == Meta.MotionDirection.UP_LEFT ||
|
||||||
direction == Meta.MotionDirection.UP_RIGHT)
|
direction == Meta.MotionDirection.UP_RIGHT)
|
||||||
yDest = global.screen_height - Main.panel.actor.height;
|
yDest = -global.screen_height + Main.panel.actor.height;
|
||||||
else if (direction == Meta.MotionDirection.DOWN ||
|
else if (direction == Meta.MotionDirection.DOWN ||
|
||||||
direction == Meta.MotionDirection.DOWN_LEFT ||
|
direction == Meta.MotionDirection.DOWN_LEFT ||
|
||||||
direction == Meta.MotionDirection.DOWN_RIGHT)
|
direction == Meta.MotionDirection.DOWN_RIGHT)
|
||||||
yDest = -global.screen_height + Main.panel.actor.height;
|
yDest = global.screen_height - Main.panel.actor.height;
|
||||||
|
|
||||||
if (direction == Meta.MotionDirection.LEFT ||
|
if (direction == Meta.MotionDirection.LEFT ||
|
||||||
direction == Meta.MotionDirection.UP_LEFT ||
|
direction == Meta.MotionDirection.UP_LEFT ||
|
||||||
direction == Meta.MotionDirection.DOWN_LEFT)
|
direction == Meta.MotionDirection.DOWN_LEFT)
|
||||||
xDest = global.screen_width;
|
xDest = -global.screen_width;
|
||||||
else if (direction == Meta.MotionDirection.RIGHT ||
|
else if (direction == Meta.MotionDirection.RIGHT ||
|
||||||
direction == Meta.MotionDirection.UP_RIGHT ||
|
direction == Meta.MotionDirection.UP_RIGHT ||
|
||||||
direction == Meta.MotionDirection.DOWN_RIGHT)
|
direction == Meta.MotionDirection.DOWN_RIGHT)
|
||||||
xDest = -global.screen_width;
|
xDest = global.screen_width;
|
||||||
|
|
||||||
let switchData = {};
|
return [xDest, yDest];
|
||||||
this._switchData = switchData;
|
},
|
||||||
switchData.inGroup = new Clutter.Actor();
|
|
||||||
switchData.outGroup = new Clutter.Actor();
|
_prepareWorkspaceSwitch(from, to, direction) {
|
||||||
switchData.movingWindowBin = new Clutter.Actor();
|
if (this._switchData)
|
||||||
switchData.windows = [];
|
return;
|
||||||
|
|
||||||
let wgroup = global.window_group;
|
let wgroup = global.window_group;
|
||||||
wgroup.add_actor(switchData.inGroup);
|
let windows = global.get_window_actors();
|
||||||
wgroup.add_actor(switchData.outGroup);
|
let switchData = {};
|
||||||
|
|
||||||
|
this._switchData = switchData;
|
||||||
|
switchData.curGroup = new Clutter.Actor();
|
||||||
|
switchData.movingWindowBin = new Clutter.Actor();
|
||||||
|
switchData.windows = [];
|
||||||
|
switchData.surroundings = {};
|
||||||
|
switchData.gestureActivated = false;
|
||||||
|
switchData.inProgress = false;
|
||||||
|
|
||||||
|
switchData.container = new Clutter.Actor();
|
||||||
|
switchData.container.add_actor(switchData.curGroup);
|
||||||
|
|
||||||
wgroup.add_actor(switchData.movingWindowBin);
|
wgroup.add_actor(switchData.movingWindowBin);
|
||||||
|
wgroup.add_actor(switchData.container);
|
||||||
|
|
||||||
|
let workspaceManager = global.workspace_manager;
|
||||||
|
let curWs = workspaceManager.get_workspace_by_index (from);
|
||||||
|
|
||||||
|
for (let dir of Object.values(Meta.MotionDirection)) {
|
||||||
|
let ws = null;
|
||||||
|
|
||||||
|
if (to < 0)
|
||||||
|
ws = curWs.get_neighbor(dir);
|
||||||
|
else if (dir == direction)
|
||||||
|
ws = workspaceManager.get_workspace_by_index(to);
|
||||||
|
|
||||||
|
if (ws == null || ws == curWs) {
|
||||||
|
switchData.surroundings[dir] = null;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
let info = { index: ws.index(),
|
||||||
|
actor: new Clutter.Actor() };
|
||||||
|
switchData.surroundings[dir] = info;
|
||||||
|
switchData.container.add_actor(info.actor);
|
||||||
|
info.actor.raise_top();
|
||||||
|
|
||||||
|
let [x, y] = this._getPositionForDirection(dir);
|
||||||
|
info.actor.set_position(x, y);
|
||||||
|
}
|
||||||
|
|
||||||
|
switchData.movingWindowBin.raise_top();
|
||||||
|
|
||||||
for (let i = 0; i < windows.length; i++) {
|
for (let i = 0; i < windows.length; i++) {
|
||||||
let actor = windows[i];
|
let actor = windows[i];
|
||||||
@@ -1769,20 +1892,70 @@ var WindowManager = new Lang.Class({
|
|||||||
actor.reparent(switchData.movingWindowBin);
|
actor.reparent(switchData.movingWindowBin);
|
||||||
} else if (window.get_workspace().index() == from) {
|
} else if (window.get_workspace().index() == from) {
|
||||||
switchData.windows.push(record);
|
switchData.windows.push(record);
|
||||||
actor.reparent(switchData.outGroup);
|
actor.reparent(switchData.curGroup);
|
||||||
} else if (window.get_workspace().index() == to) {
|
} else {
|
||||||
|
let visible = false;
|
||||||
|
for (let dir of Object.values(Meta.MotionDirection)) {
|
||||||
|
let info = switchData.surroundings[dir];
|
||||||
|
|
||||||
|
if (!info || info.index != window.get_workspace().index())
|
||||||
|
continue;
|
||||||
|
|
||||||
switchData.windows.push(record);
|
switchData.windows.push(record);
|
||||||
actor.reparent(switchData.inGroup);
|
actor.reparent(info.actor);
|
||||||
actor.show();
|
visible = true;
|
||||||
}
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
switchData.inGroup.set_position(-xDest, -yDest);
|
actor.visible = visible;
|
||||||
switchData.inGroup.raise_top();
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
switchData.movingWindowBin.raise_top();
|
_finishWorkspaceSwitch(switchData) {
|
||||||
|
this._switchData = null;
|
||||||
|
|
||||||
Tweener.addTween(switchData.outGroup,
|
for (let i = 0; i < switchData.windows.length; i++) {
|
||||||
|
let w = switchData.windows[i];
|
||||||
|
if (w.window.is_destroyed()) // Window gone
|
||||||
|
continue;
|
||||||
|
|
||||||
|
w.window.reparent(w.parent);
|
||||||
|
|
||||||
|
if (w.window.get_meta_window().get_workspace() !=
|
||||||
|
global.workspace_manager.get_active_workspace())
|
||||||
|
w.window.hide();
|
||||||
|
}
|
||||||
|
Tweener.removeTweens(switchData.container);
|
||||||
|
switchData.container.destroy();
|
||||||
|
switchData.movingWindowBin.destroy();
|
||||||
|
|
||||||
|
this._movingWindow = null;
|
||||||
|
},
|
||||||
|
|
||||||
|
_switchWorkspace(shellwm, from, to, direction) {
|
||||||
|
if (!Main.sessionMode.hasWorkspaces || !this._shouldAnimate()) {
|
||||||
|
shellwm.completed_switch_workspace();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we come from a gesture, switchData will already be set,
|
||||||
|
// and we don't want to overwrite it.
|
||||||
|
if (!this._switchData)
|
||||||
|
this._prepareWorkspaceSwitch(from, to, direction);
|
||||||
|
|
||||||
|
this._switchData.inProgress = true;
|
||||||
|
|
||||||
|
let [xDest, yDest] = this._getPositionForDirection(direction);
|
||||||
|
|
||||||
|
/* @direction is the direction that the "camera" moves, so the
|
||||||
|
* screen contents have to move one screen's worth in the
|
||||||
|
* opposite direction.
|
||||||
|
*/
|
||||||
|
xDest = -xDest;
|
||||||
|
yDest = -yDest;
|
||||||
|
|
||||||
|
Tweener.addTween(this._switchData.container,
|
||||||
{ x: xDest,
|
{ x: xDest,
|
||||||
y: yDest,
|
y: yDest,
|
||||||
time: WINDOW_ANIMATION_TIME,
|
time: WINDOW_ANIMATION_TIME,
|
||||||
@@ -1791,39 +1964,10 @@ var WindowManager = new Lang.Class({
|
|||||||
onCompleteScope: this,
|
onCompleteScope: this,
|
||||||
onCompleteParams: [shellwm]
|
onCompleteParams: [shellwm]
|
||||||
});
|
});
|
||||||
Tweener.addTween(switchData.inGroup,
|
|
||||||
{ x: 0,
|
|
||||||
y: 0,
|
|
||||||
time: WINDOW_ANIMATION_TIME,
|
|
||||||
transition: 'easeOutQuad'
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
|
|
||||||
_switchWorkspaceDone(shellwm) {
|
_switchWorkspaceDone(shellwm) {
|
||||||
let switchData = this._switchData;
|
this._finishWorkspaceSwitch(this._switchData);
|
||||||
if (!switchData)
|
|
||||||
return;
|
|
||||||
this._switchData = null;
|
|
||||||
|
|
||||||
for (let i = 0; i < switchData.windows.length; i++) {
|
|
||||||
let w = switchData.windows[i];
|
|
||||||
if (w.window.is_destroyed()) // Window gone
|
|
||||||
continue;
|
|
||||||
if (w.window.get_parent() == switchData.outGroup) {
|
|
||||||
w.window.reparent(w.parent);
|
|
||||||
w.window.hide();
|
|
||||||
} else
|
|
||||||
w.window.reparent(w.parent);
|
|
||||||
}
|
|
||||||
Tweener.removeTweens(switchData.inGroup);
|
|
||||||
Tweener.removeTweens(switchData.outGroup);
|
|
||||||
switchData.inGroup.destroy();
|
|
||||||
switchData.outGroup.destroy();
|
|
||||||
switchData.movingWindowBin.destroy();
|
|
||||||
|
|
||||||
if (this._movingWindow)
|
|
||||||
this._movingWindow = null;
|
|
||||||
|
|
||||||
shellwm.completed_switch_workspace();
|
shellwm.completed_switch_workspace();
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@@ -179,6 +179,7 @@ var WindowClone = new Lang.Class({
|
|||||||
this.inDrag = false;
|
this.inDrag = false;
|
||||||
|
|
||||||
this._selected = false;
|
this._selected = false;
|
||||||
|
this._closeRequested = false;
|
||||||
},
|
},
|
||||||
|
|
||||||
set slot(slot) {
|
set slot(slot) {
|
||||||
@@ -194,7 +195,6 @@ var WindowClone = new Lang.Class({
|
|||||||
|
|
||||||
deleteAll() {
|
deleteAll() {
|
||||||
// Delete all windows, starting from the bottom-most (most-modal) one
|
// Delete all windows, starting from the bottom-most (most-modal) one
|
||||||
|
|
||||||
let windows = this.actor.get_children();
|
let windows = this.actor.get_children();
|
||||||
for (let i = windows.length - 1; i >= 1; i--) {
|
for (let i = windows.length - 1; i >= 1; i--) {
|
||||||
let realWindow = windows[i].source;
|
let realWindow = windows[i].source;
|
||||||
@@ -204,11 +204,24 @@ var WindowClone = new Lang.Class({
|
|||||||
}
|
}
|
||||||
|
|
||||||
this.metaWindow.delete(global.get_current_time());
|
this.metaWindow.delete(global.get_current_time());
|
||||||
|
this._closeRequested = true;
|
||||||
},
|
},
|
||||||
|
|
||||||
addAttachedDialog(win) {
|
addDialog(win) {
|
||||||
|
let parent = win.get_transient_for();
|
||||||
|
while (parent.is_attached_dialog())
|
||||||
|
parent = parent.get_transient_for();
|
||||||
|
|
||||||
|
// Display dialog if it is attached to our metaWindow
|
||||||
|
if (win.is_attached_dialog() && parent == this.metaWindow) {
|
||||||
this._doAddAttachedDialog(win, win.get_compositor_private());
|
this._doAddAttachedDialog(win, win.get_compositor_private());
|
||||||
this._onMetaWindowSizeChanged();
|
this._onMetaWindowSizeChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
// The dialog popped up after the user tried to close the window,
|
||||||
|
// assume it's a close confirmation and leave the overview
|
||||||
|
if (this._closeRequested)
|
||||||
|
this._activate();
|
||||||
},
|
},
|
||||||
|
|
||||||
hasAttachedDialogs() {
|
hasAttachedDialogs() {
|
||||||
@@ -462,14 +475,12 @@ var WindowOverlay = new Lang.Class({
|
|||||||
button._overlap = 0;
|
button._overlap = 0;
|
||||||
|
|
||||||
this._idleToggleCloseId = 0;
|
this._idleToggleCloseId = 0;
|
||||||
button.connect('clicked', this._closeWindow.bind(this));
|
button.connect('clicked', () => this._windowClone.deleteAll());
|
||||||
|
|
||||||
windowClone.actor.connect('destroy', this._onDestroy.bind(this));
|
windowClone.actor.connect('destroy', this._onDestroy.bind(this));
|
||||||
windowClone.connect('show-chrome', this._onShowChrome.bind(this));
|
windowClone.connect('show-chrome', this._onShowChrome.bind(this));
|
||||||
windowClone.connect('hide-chrome', this._onHideChrome.bind(this));
|
windowClone.connect('hide-chrome', this._onHideChrome.bind(this));
|
||||||
|
|
||||||
this._windowAddedId = 0;
|
|
||||||
|
|
||||||
button.hide();
|
button.hide();
|
||||||
title.hide();
|
title.hide();
|
||||||
|
|
||||||
@@ -590,43 +601,12 @@ var WindowOverlay = new Lang.Class({
|
|||||||
Tweener.addTween(actor, params);
|
Tweener.addTween(actor, params);
|
||||||
},
|
},
|
||||||
|
|
||||||
_closeWindow(actor) {
|
|
||||||
let metaWindow = this._windowClone.metaWindow;
|
|
||||||
this._workspace = metaWindow.get_workspace();
|
|
||||||
|
|
||||||
this._windowAddedId = this._workspace.connect('window-added',
|
|
||||||
this._onWindowAdded.bind(this));
|
|
||||||
|
|
||||||
this._windowClone.deleteAll();
|
|
||||||
},
|
|
||||||
|
|
||||||
_windowCanClose() {
|
_windowCanClose() {
|
||||||
return this._windowClone.metaWindow.can_close() &&
|
return this._windowClone.metaWindow.can_close() &&
|
||||||
!this._windowClone.hasAttachedDialogs();
|
!this._windowClone.hasAttachedDialogs();
|
||||||
},
|
},
|
||||||
|
|
||||||
_onWindowAdded(workspace, win) {
|
|
||||||
let metaWindow = this._windowClone.metaWindow;
|
|
||||||
|
|
||||||
if (win.get_transient_for() == metaWindow) {
|
|
||||||
workspace.disconnect(this._windowAddedId);
|
|
||||||
this._windowAddedId = 0;
|
|
||||||
|
|
||||||
// use an idle handler to avoid mapping problems -
|
|
||||||
// see comment in Workspace._windowAdded
|
|
||||||
let id = Mainloop.idle_add(() => {
|
|
||||||
this._windowClone.emit('selected');
|
|
||||||
return GLib.SOURCE_REMOVE;
|
|
||||||
});
|
|
||||||
GLib.Source.set_name_by_id(id, '[gnome-shell] this._windowClone.emit');
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
_onDestroy() {
|
_onDestroy() {
|
||||||
if (this._windowAddedId > 0) {
|
|
||||||
this._workspace.disconnect(this._windowAddedId);
|
|
||||||
this._windowAddedId = 0;
|
|
||||||
}
|
|
||||||
if (this._idleToggleCloseId > 0) {
|
if (this._idleToggleCloseId > 0) {
|
||||||
Mainloop.source_remove(this._idleToggleCloseId);
|
Mainloop.source_remove(this._idleToggleCloseId);
|
||||||
this._idleToggleCloseId = 0;
|
this._idleToggleCloseId = 0;
|
||||||
@@ -1516,21 +1496,17 @@ var Workspace = new Lang.Class({
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (!this._isOverviewWindow(win)) {
|
if (!this._isOverviewWindow(win)) {
|
||||||
if (metaWin.is_attached_dialog()) {
|
if (metaWin.get_transient_for() == null)
|
||||||
let parent = metaWin.get_transient_for();
|
|
||||||
while (parent.is_attached_dialog())
|
|
||||||
parent = metaWin.get_transient_for();
|
|
||||||
|
|
||||||
let idx = this._lookupIndex (parent);
|
|
||||||
if (idx < 0) {
|
|
||||||
// parent was not created yet, it will take care
|
|
||||||
// of the dialog when created
|
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
let clone = this._windows[idx];
|
// Let the top-most ancestor handle all transients
|
||||||
clone.addAttachedDialog(metaWin);
|
let parent = metaWin.find_root_ancestor();
|
||||||
}
|
let clone = this._windows.find(c => c.metaWindow == parent);
|
||||||
|
|
||||||
|
// If no clone was found, the parent hasn't been created yet
|
||||||
|
// and will take care of the dialog when added
|
||||||
|
if (clone)
|
||||||
|
clone.addDialog(metaWin);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@@ -416,7 +416,7 @@ var WorkspaceThumbnail = new Lang.Class({
|
|||||||
} else if (metaWin.is_attached_dialog()) {
|
} else if (metaWin.is_attached_dialog()) {
|
||||||
let parent = metaWin.get_transient_for();
|
let parent = metaWin.get_transient_for();
|
||||||
while (parent.is_attached_dialog())
|
while (parent.is_attached_dialog())
|
||||||
parent = metaWin.get_transient_for();
|
parent = parent.get_transient_for();
|
||||||
|
|
||||||
let idx = this._lookupIndex (parent);
|
let idx = this._lookupIndex (parent);
|
||||||
if (idx < 0) {
|
if (idx < 0) {
|
||||||
@@ -678,7 +678,11 @@ var ThumbnailsBox = new Lang.Class({
|
|||||||
this._settings.connect('changed::dynamic-workspaces',
|
this._settings.connect('changed::dynamic-workspaces',
|
||||||
this._updateSwitcherVisibility.bind(this));
|
this._updateSwitcherVisibility.bind(this));
|
||||||
|
|
||||||
Main.layoutManager.connect('monitors-changed', this._rebuildThumbnails.bind(this));
|
Main.layoutManager.connect('monitors-changed', () => {
|
||||||
|
this._destroyThumbnails();
|
||||||
|
if (Main.overview.visible)
|
||||||
|
this._createThumbnails();
|
||||||
|
});
|
||||||
|
|
||||||
this._switchWorkspaceNotifyId = 0;
|
this._switchWorkspaceNotifyId = 0;
|
||||||
this._nWorkspacesNotifyId = 0;
|
this._nWorkspacesNotifyId = 0;
|
||||||
@@ -881,10 +885,6 @@ var ThumbnailsBox = new Lang.Class({
|
|||||||
Main.overview.connect('windows-restacked',
|
Main.overview.connect('windows-restacked',
|
||||||
this._syncStacking.bind(this));
|
this._syncStacking.bind(this));
|
||||||
|
|
||||||
this._workareasChangedId =
|
|
||||||
global.display.connect('workareas-changed',
|
|
||||||
this._rebuildThumbnails.bind(this));
|
|
||||||
|
|
||||||
this._targetScale = 0;
|
this._targetScale = 0;
|
||||||
this._scale = 0;
|
this._scale = 0;
|
||||||
this._pendingScaleUpdate = false;
|
this._pendingScaleUpdate = false;
|
||||||
@@ -918,24 +918,12 @@ var ThumbnailsBox = new Lang.Class({
|
|||||||
this._syncStackingId = 0;
|
this._syncStackingId = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this._workareasChangedId > 0) {
|
|
||||||
global.display.disconnect(this._workareasChangedId);
|
|
||||||
this._workareasChangedId = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (let w = 0; w < this._thumbnails.length; w++)
|
for (let w = 0; w < this._thumbnails.length; w++)
|
||||||
this._thumbnails[w].destroy();
|
this._thumbnails[w].destroy();
|
||||||
this._thumbnails = [];
|
this._thumbnails = [];
|
||||||
this._porthole = null;
|
this._porthole = null;
|
||||||
},
|
},
|
||||||
|
|
||||||
_rebuildThumbnails() {
|
|
||||||
this._destroyThumbnails();
|
|
||||||
|
|
||||||
if (Main.overview.visible)
|
|
||||||
this._createThumbnails();
|
|
||||||
},
|
|
||||||
|
|
||||||
_workspacesChanged() {
|
_workspacesChanged() {
|
||||||
let validThumbnails =
|
let validThumbnails =
|
||||||
this._thumbnails.filter(t => t.state <= ThumbnailState.NORMAL);
|
this._thumbnails.filter(t => t.state <= ThumbnailState.NORMAL);
|
||||||
|
20
meson.build
20
meson.build
@@ -1,6 +1,6 @@
|
|||||||
project('gnome-shell', 'c',
|
project('gnome-shell', 'c',
|
||||||
version: '3.29.4',
|
version: '3.30.0',
|
||||||
meson_version: '>= 0.42.0',
|
meson_version: '>= 0.47.0',
|
||||||
license: 'GPLv2+'
|
license: 'GPLv2+'
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -23,9 +23,9 @@ gi_req = '>= 1.49.1'
|
|||||||
gjs_req = '>= 1.47.0'
|
gjs_req = '>= 1.47.0'
|
||||||
gtk_req = '>= 3.15.0'
|
gtk_req = '>= 3.15.0'
|
||||||
json_glib_req = '>= 0.13.2'
|
json_glib_req = '>= 0.13.2'
|
||||||
mutter_req = '>= 3.29.4'
|
mutter_req = '>= 3.30.0'
|
||||||
polkit_req = '>= 0.100'
|
polkit_req = '>= 0.100'
|
||||||
schemas_req = '>= 3.21.3'
|
schemas_req = '>= 3.27.90'
|
||||||
startup_req = '>= 0.11'
|
startup_req = '>= 0.11'
|
||||||
ibus_req = '>= 1.5.2'
|
ibus_req = '>= 1.5.2'
|
||||||
|
|
||||||
@@ -44,10 +44,12 @@ datadir = join_paths(prefix, get_option('datadir'))
|
|||||||
libdir = join_paths(prefix, get_option('libdir'))
|
libdir = join_paths(prefix, get_option('libdir'))
|
||||||
libexecdir = join_paths(prefix, get_option('libexecdir'))
|
libexecdir = join_paths(prefix, get_option('libexecdir'))
|
||||||
mandir = join_paths(prefix, get_option('mandir'))
|
mandir = join_paths(prefix, get_option('mandir'))
|
||||||
|
sysconfdir = join_paths(prefix, get_option('sysconfdir'))
|
||||||
|
|
||||||
pkgdatadir = join_paths(datadir, meson.project_name())
|
pkgdatadir = join_paths(datadir, meson.project_name())
|
||||||
pkglibdir = join_paths(libdir, meson.project_name())
|
pkglibdir = join_paths(libdir, meson.project_name())
|
||||||
|
|
||||||
|
autostartdir = join_paths(sysconfdir, 'xdg', 'autostart')
|
||||||
convertdir = join_paths(datadir, 'GConf', 'gsettings')
|
convertdir = join_paths(datadir, 'GConf', 'gsettings')
|
||||||
desktopdir = join_paths(datadir, 'applications')
|
desktopdir = join_paths(datadir, 'applications')
|
||||||
ifacedir = join_paths(datadir, 'dbus-1', 'interfaces')
|
ifacedir = join_paths(datadir, 'dbus-1', 'interfaces')
|
||||||
@@ -161,6 +163,11 @@ cdata.set_quoted('PACKAGE_VERSION', meson.project_version())
|
|||||||
cdata.set('HAVE_NETWORKMANAGER', have_networkmanager)
|
cdata.set('HAVE_NETWORKMANAGER', have_networkmanager)
|
||||||
cdata.set('HAVE_SYSTEMD', have_systemd)
|
cdata.set('HAVE_SYSTEMD', have_systemd)
|
||||||
|
|
||||||
|
# New API added in glib-2.57.2
|
||||||
|
cdata.set('HAVE_GIO_DESKTOP_LAUNCH_URIS_WITH_FDS',
|
||||||
|
cc.has_function('g_desktop_app_info_launch_uris_as_manager_with_fds',
|
||||||
|
dependencies : gio_dep)
|
||||||
|
)
|
||||||
cdata.set('HAVE_FDWALK', cc.has_function('fdwalk'))
|
cdata.set('HAVE_FDWALK', cc.has_function('fdwalk'))
|
||||||
cdata.set('HAVE_MALLINFO', cc.has_function('mallinfo'))
|
cdata.set('HAVE_MALLINFO', cc.has_function('mallinfo'))
|
||||||
cdata.set('HAVE_SYS_RESOURCE_H', cc.has_header('sys/resource.h'))
|
cdata.set('HAVE_SYS_RESOURCE_H', cc.has_header('sys/resource.h'))
|
||||||
@@ -168,6 +175,10 @@ cdata.set('HAVE__NL_TIME_FIRST_WEEKDAY',
|
|||||||
cc.has_header_symbol('langinfo.h', '_NL_TIME_FIRST_WEEKDAY')
|
cc.has_header_symbol('langinfo.h', '_NL_TIME_FIRST_WEEKDAY')
|
||||||
)
|
)
|
||||||
|
|
||||||
|
cdata.set('HAVE_FDWALK',
|
||||||
|
cc.has_function('fdwalk')
|
||||||
|
)
|
||||||
|
|
||||||
config_h = configure_file(
|
config_h = configure_file(
|
||||||
input: 'config.h.meson',
|
input: 'config.h.meson',
|
||||||
output: 'config.h',
|
output: 'config.h',
|
||||||
@@ -194,6 +205,7 @@ subdir('src')
|
|||||||
subdir('po')
|
subdir('po')
|
||||||
subdir('data')
|
subdir('data')
|
||||||
subdir('tests')
|
subdir('tests')
|
||||||
|
subdir('tools')
|
||||||
|
|
||||||
if get_option('gtk_doc')
|
if get_option('gtk_doc')
|
||||||
subdir('docs/reference')
|
subdir('docs/reference')
|
||||||
|
@@ -40,6 +40,7 @@ js/ui/messageList.js
|
|||||||
js/ui/messageTray.js
|
js/ui/messageTray.js
|
||||||
js/ui/mpris.js
|
js/ui/mpris.js
|
||||||
js/ui/notificationDaemon.js
|
js/ui/notificationDaemon.js
|
||||||
|
js/ui/osdWindow.js
|
||||||
js/ui/overviewControls.js
|
js/ui/overviewControls.js
|
||||||
js/ui/overview.js
|
js/ui/overview.js
|
||||||
js/ui/padOsd.js
|
js/ui/padOsd.js
|
||||||
|
228
po/ca.po
228
po/ca.po
@@ -10,7 +10,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: HEAD\n"
|
"Project-Id-Version: HEAD\n"
|
||||||
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
||||||
"POT-Creation-Date: 2018-04-13 19:54+0000\n"
|
"POT-Creation-Date: 2018-08-01 18:08+0000\n"
|
||||||
"PO-Revision-Date: 2018-03-10 21:24+0100\n"
|
"PO-Revision-Date: 2018-03-10 21:24+0100\n"
|
||||||
"Last-Translator: Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>\n"
|
"Last-Translator: Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>\n"
|
||||||
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
|
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
|
||||||
@@ -299,36 +299,36 @@ msgstr ""
|
|||||||
"Si és «true» (cert), només les finestres de l'espai de treball actual es "
|
"Si és «true» (cert), només les finestres de l'espai de treball actual es "
|
||||||
"mostren en el canviador. En cas contrari, es mostren totes les finestres."
|
"mostren en el canviador. En cas contrari, es mostren totes les finestres."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:197
|
#: data/org.gnome.shell.gschema.xml.in:198
|
||||||
msgid "Attach modal dialog to the parent window"
|
msgid "Attach modal dialog to the parent window"
|
||||||
msgstr "Adjunta el diàleg modal a la finestra pare"
|
msgstr "Adjunta el diàleg modal a la finestra pare"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:198
|
#: data/org.gnome.shell.gschema.xml.in:199
|
||||||
#: data/org.gnome.shell.gschema.xml.in:207
|
#: data/org.gnome.shell.gschema.xml.in:208
|
||||||
#: data/org.gnome.shell.gschema.xml.in:215
|
#: data/org.gnome.shell.gschema.xml.in:216
|
||||||
#: data/org.gnome.shell.gschema.xml.in:223
|
#: data/org.gnome.shell.gschema.xml.in:224
|
||||||
#: data/org.gnome.shell.gschema.xml.in:231
|
#: data/org.gnome.shell.gschema.xml.in:232
|
||||||
msgid ""
|
msgid ""
|
||||||
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Si s'executa el GNOME Shell, aquesta clau sobreescriu la clau «org.gnome."
|
"Si s'executa el GNOME Shell, aquesta clau sobreescriu la clau «org.gnome."
|
||||||
"mutter»."
|
"mutter»."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:206
|
#: data/org.gnome.shell.gschema.xml.in:207
|
||||||
msgid "Enable edge tiling when dropping windows on screen edges"
|
msgid "Enable edge tiling when dropping windows on screen edges"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Habilita el mòsaic a les vores en deixar anar les finestres a les vores de "
|
"Habilita el mòsaic a les vores en deixar anar les finestres a les vores de "
|
||||||
"la pantalla"
|
"la pantalla"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:214
|
#: data/org.gnome.shell.gschema.xml.in:215
|
||||||
msgid "Workspaces are managed dynamically"
|
msgid "Workspaces are managed dynamically"
|
||||||
msgstr "Els espais de treball es gestionen dinàmicament"
|
msgstr "Els espais de treball es gestionen dinàmicament"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:222
|
#: data/org.gnome.shell.gschema.xml.in:223
|
||||||
msgid "Workspaces only on primary monitor"
|
msgid "Workspaces only on primary monitor"
|
||||||
msgstr "Només en el monitor principal hi ha espais de treball"
|
msgstr "Només en el monitor principal hi ha espais de treball"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:230
|
#: data/org.gnome.shell.gschema.xml.in:231
|
||||||
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 ""
|
||||||
"Retarda el canvi del focus, quan s'està en mode ratolí, fins que el punter "
|
"Retarda el canvi del focus, quan s'està en mode ratolí, fins que el punter "
|
||||||
@@ -369,20 +369,20 @@ msgctxt "button"
|
|||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Entra"
|
msgstr "Entra"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:315
|
#: js/gdm/loginDialog.js:319
|
||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Trieu la sessió"
|
msgstr "Trieu la sessió"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: js/gdm/loginDialog.js:458
|
#: js/gdm/loginDialog.js:462
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "No esteu llistat?"
|
msgstr "No esteu llistat?"
|
||||||
|
|
||||||
#. 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
|
||||||
#: js/gdm/loginDialog.js:887
|
#: js/gdm/loginDialog.js:891
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(p. ex. l'usuari o %s)"
|
msgstr "(p. ex. l'usuari o %s)"
|
||||||
@@ -390,12 +390,12 @@ msgstr "(p. ex. l'usuari o %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:892 js/ui/components/networkAgent.js:243
|
#: js/gdm/loginDialog.js:896 js/ui/components/networkAgent.js:243
|
||||||
#: js/ui/components/networkAgent.js:261
|
#: js/ui/components/networkAgent.js:261
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Nom d'usuari:"
|
msgstr "Nom d'usuari:"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:1228
|
#: js/gdm/loginDialog.js:1234
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Finestra d'entrada"
|
msgstr "Finestra d'entrada"
|
||||||
|
|
||||||
@@ -408,7 +408,7 @@ msgstr "Error d'autenticació"
|
|||||||
#. as a cue to display our own message.
|
#. as a cue to display our own message.
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: js/gdm/util.js:482
|
#: js/gdm/util.js:485
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(o passeu el dit)"
|
msgstr "(o passeu el dit)"
|
||||||
|
|
||||||
@@ -649,23 +649,23 @@ msgstr "Freqüent"
|
|||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Totes"
|
msgstr "Totes"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1886
|
#: js/ui/appDisplay.js:1890
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Finestra nova"
|
msgstr "Finestra nova"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1900
|
#: js/ui/appDisplay.js:1904
|
||||||
msgid "Launch using Dedicated Graphics Card"
|
msgid "Launch using Dedicated Graphics Card"
|
||||||
msgstr "Inicia usant una targeta gràfica dedicada"
|
msgstr "Inicia usant una targeta gràfica dedicada"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1927 js/ui/dash.js:285
|
#: js/ui/appDisplay.js:1931 js/ui/dash.js:285
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Suprimeix dels preferits"
|
msgstr "Suprimeix dels preferits"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1933
|
#: js/ui/appDisplay.js:1937
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Afegeix als preferits"
|
msgstr "Afegeix als preferits"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1943
|
#: js/ui/appDisplay.js:1947
|
||||||
msgid "Show Details"
|
msgid "Show Details"
|
||||||
msgstr "Mostra els detalls"
|
msgstr "Mostra els detalls"
|
||||||
|
|
||||||
@@ -695,7 +695,7 @@ msgstr "Auriculars"
|
|||||||
msgid "Headset"
|
msgid "Headset"
|
||||||
msgstr "Auriculars amb micròfon"
|
msgstr "Auriculars amb micròfon"
|
||||||
|
|
||||||
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:221
|
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:255
|
||||||
msgid "Microphone"
|
msgid "Microphone"
|
||||||
msgstr "Micròfon"
|
msgstr "Micròfon"
|
||||||
|
|
||||||
@@ -707,7 +707,7 @@ msgstr "Canvia el fons de l'escriptori…"
|
|||||||
msgid "Display Settings"
|
msgid "Display Settings"
|
||||||
msgstr "Paràmetres de la pantalla"
|
msgstr "Paràmetres de la pantalla"
|
||||||
|
|
||||||
#: js/ui/backgroundMenu.js:22 js/ui/status/system.js:264
|
#: js/ui/backgroundMenu.js:22
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Paràmetres"
|
msgstr "Paràmetres"
|
||||||
|
|
||||||
@@ -812,35 +812,35 @@ msgctxt "event list time"
|
|||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Tot el dia"
|
msgstr "Tot el dia"
|
||||||
|
|
||||||
#: js/ui/calendar.js:864
|
#: js/ui/calendar.js:866
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A %-d %B"
|
msgstr "%A %-d %B"
|
||||||
|
|
||||||
#: js/ui/calendar.js:868
|
#: js/ui/calendar.js:870
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A %d %B de %Y"
|
msgstr "%A %d %B de %Y"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1086
|
#: js/ui/calendar.js:1100
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "Cap notificació"
|
msgstr "Cap notificació"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1089
|
#: js/ui/calendar.js:1103
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "Cap cita"
|
msgstr "Cap cita"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1117
|
#: js/ui/calendar.js:1131
|
||||||
msgid "Clear All"
|
msgid "Clear All"
|
||||||
msgstr "Neteja-ho tot"
|
msgstr "Neteja-ho tot"
|
||||||
|
|
||||||
#. Translators: %s is an application name
|
#. Translators: %s is an application name
|
||||||
#: js/ui/closeDialog.js:44
|
#: js/ui/closeDialog.js:47
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "“%s” is not responding."
|
msgid "“%s” is not responding."
|
||||||
msgstr "«%s» no està responent."
|
msgstr "«%s» no està responent."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:45
|
#: js/ui/closeDialog.js:48
|
||||||
msgid ""
|
msgid ""
|
||||||
"You may choose to wait a short while for it to continue or force the "
|
"You may choose to wait a short while for it to continue or force the "
|
||||||
"application to quit entirely."
|
"application to quit entirely."
|
||||||
@@ -848,11 +848,11 @@ msgstr ""
|
|||||||
"Podeu esperar un moment perquè continuï o podeu forçar-ne la sortida "
|
"Podeu esperar un moment perquè continuï o podeu forçar-ne la sortida "
|
||||||
"completa."
|
"completa."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:61
|
#: js/ui/closeDialog.js:64
|
||||||
msgid "Force Quit"
|
msgid "Force Quit"
|
||||||
msgstr "Força la sortida"
|
msgstr "Força la sortida"
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:64
|
#: js/ui/closeDialog.js:67
|
||||||
msgid "Wait"
|
msgid "Wait"
|
||||||
msgstr "Espera"
|
msgstr "Espera"
|
||||||
|
|
||||||
@@ -869,7 +869,7 @@ msgstr "S'ha desconnectat un dispositiu extern"
|
|||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Obre amb %s"
|
msgstr "Obre amb %s"
|
||||||
|
|
||||||
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:295
|
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:297
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Contrasenya:"
|
msgstr "Contrasenya:"
|
||||||
|
|
||||||
@@ -906,11 +906,11 @@ msgstr "Contrasenya de la clau privada:"
|
|||||||
msgid "Service: "
|
msgid "Service: "
|
||||||
msgstr "Servei:"
|
msgstr "Servei:"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:659
|
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:664
|
||||||
msgid "Authentication required by wireless network"
|
msgid "Authentication required by wireless network"
|
||||||
msgstr "La xarxa sense fil requereix autenticació"
|
msgstr "La xarxa sense fil requereix autenticació"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:660
|
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:665
|
||||||
#, javascript-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 "
|
||||||
@@ -919,7 +919,7 @@ msgstr ""
|
|||||||
"Per accedir a la xarxa sense fil «%s» calen les contrasenyes o les claus "
|
"Per accedir a la xarxa sense fil «%s» calen les contrasenyes o les claus "
|
||||||
"d'encriptació."
|
"d'encriptació."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:663
|
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:668
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
msgstr "Autenticació 802.1X amb fil"
|
msgstr "Autenticació 802.1X amb fil"
|
||||||
|
|
||||||
@@ -927,15 +927,15 @@ msgstr "Autenticació 802.1X amb fil"
|
|||||||
msgid "Network name: "
|
msgid "Network name: "
|
||||||
msgstr "Nom de la xarxa: "
|
msgstr "Nom de la xarxa: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:667
|
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:672
|
||||||
msgid "DSL authentication"
|
msgid "DSL authentication"
|
||||||
msgstr "Autenticació DSL"
|
msgstr "Autenticació DSL"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:673
|
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:678
|
||||||
msgid "PIN code required"
|
msgid "PIN code required"
|
||||||
msgstr "Cal que introduïu el codi PIN"
|
msgstr "Cal que introduïu el codi PIN"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:674
|
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:679
|
||||||
msgid "PIN code is needed for the mobile broadband device"
|
msgid "PIN code is needed for the mobile broadband device"
|
||||||
msgstr "Cal que introduïu el codi PIN del dispositiu de banda ampla mòbil"
|
msgstr "Cal que introduïu el codi PIN del dispositiu de banda ampla mòbil"
|
||||||
|
|
||||||
@@ -943,17 +943,17 @@ msgstr "Cal que introduïu el codi PIN del dispositiu de banda ampla mòbil"
|
|||||||
msgid "PIN: "
|
msgid "PIN: "
|
||||||
msgstr "PIN: "
|
msgstr "PIN: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:680
|
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:685
|
||||||
msgid "Mobile broadband network password"
|
msgid "Mobile broadband network password"
|
||||||
msgstr "Contrasenya de la xarxa de banda ampla mòbil"
|
msgstr "Contrasenya de la xarxa de banda ampla mòbil"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:664
|
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:669
|
||||||
#: js/ui/components/networkAgent.js:668 js/ui/components/networkAgent.js:681
|
#: js/ui/components/networkAgent.js:673 js/ui/components/networkAgent.js:686
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "A password is required to connect to “%s”."
|
msgid "A password is required to connect to “%s”."
|
||||||
msgstr "Cal introduir una contrasenya per connectar-vos a «%s»."
|
msgstr "Cal introduir una contrasenya per connectar-vos a «%s»."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:648 js/ui/status/network.js:1691
|
#: js/ui/components/networkAgent.js:653 js/ui/status/network.js:1704
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Gestor de connexions de xarxa"
|
msgstr "Gestor de connexions de xarxa"
|
||||||
|
|
||||||
@@ -973,7 +973,7 @@ msgstr "Autentica"
|
|||||||
#. * 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:281 js/ui/shellMountOperation.js:327
|
#: js/ui/components/polkitAgent.js:283 js/ui/shellMountOperation.js:327
|
||||||
msgid "Sorry, that didn’t work. Please try again."
|
msgid "Sorry, that didn’t work. Please try again."
|
||||||
msgstr "No ha funcionat. Torneu-ho a provar."
|
msgstr "No ha funcionat. Torneu-ho a provar."
|
||||||
|
|
||||||
@@ -1308,13 +1308,13 @@ msgid "Leave On"
|
|||||||
msgstr "Deixa-ho actiu"
|
msgstr "Deixa-ho actiu"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:1281
|
#: js/ui/status/network.js:1294
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Activa"
|
msgstr "Activa"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
||||||
#: js/ui/status/network.js:1281 js/ui/status/network.js:1396
|
#: js/ui/status/network.js:1294 js/ui/status/network.js:1409
|
||||||
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
||||||
#: js/ui/status/rfkill.js:117
|
#: js/ui/status/rfkill.js:117
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
@@ -1376,7 +1376,7 @@ msgstr "Mostra el codi font"
|
|||||||
msgid "Web Page"
|
msgid "Web Page"
|
||||||
msgstr "Pàgina web"
|
msgstr "Pàgina web"
|
||||||
|
|
||||||
#: js/ui/messageTray.js:1493
|
#: js/ui/messageTray.js:1495
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Informació de l'ordinador"
|
msgstr "Informació de l'ordinador"
|
||||||
|
|
||||||
@@ -1388,6 +1388,10 @@ msgstr "Artista desconegut"
|
|||||||
msgid "Unknown title"
|
msgid "Unknown title"
|
||||||
msgstr "Títol desconegut"
|
msgstr "Títol desconegut"
|
||||||
|
|
||||||
|
#: js/ui/osdWindow.js:32 js/ui/status/volume.js:204
|
||||||
|
msgid "Volume"
|
||||||
|
msgstr "Volum"
|
||||||
|
|
||||||
#: js/ui/overview.js:83
|
#: js/ui/overview.js:83
|
||||||
msgid "Undo"
|
msgid "Undo"
|
||||||
msgstr "Desfés"
|
msgstr "Desfés"
|
||||||
@@ -1430,42 +1434,42 @@ msgstr "Assigna la pulsació de tecla"
|
|||||||
msgid "Done"
|
msgid "Done"
|
||||||
msgstr "Fet"
|
msgstr "Fet"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:740
|
#: js/ui/padOsd.js:742
|
||||||
msgid "Edit…"
|
msgid "Edit…"
|
||||||
msgstr "Edita…"
|
msgstr "Edita…"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:782 js/ui/padOsd.js:887
|
#: js/ui/padOsd.js:784 js/ui/padOsd.js:889
|
||||||
msgid "None"
|
msgid "None"
|
||||||
msgstr "Cap"
|
msgstr "Cap"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:841
|
#: js/ui/padOsd.js:843
|
||||||
msgid "Press a button to configure"
|
msgid "Press a button to configure"
|
||||||
msgstr "Premeu un botó per a configurar"
|
msgstr "Premeu un botó per a configurar"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:842
|
#: js/ui/padOsd.js:844
|
||||||
msgid "Press Esc to exit"
|
msgid "Press Esc to exit"
|
||||||
msgstr "Premeu Esc per sortir"
|
msgstr "Premeu Esc per sortir"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:845
|
#: js/ui/padOsd.js:847
|
||||||
msgid "Press any key to exit"
|
msgid "Press any key to exit"
|
||||||
msgstr "Premeu qualsevol tecla per sortir"
|
msgstr "Premeu qualsevol tecla per sortir"
|
||||||
|
|
||||||
#: js/ui/panel.js:355
|
#: js/ui/panel.js:356
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Surt"
|
msgstr "Surt"
|
||||||
|
|
||||||
#. 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:411
|
#: js/ui/panel.js:412
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Activitats"
|
msgstr "Activitats"
|
||||||
|
|
||||||
#: js/ui/panel.js:692
|
#: js/ui/panel.js:693
|
||||||
msgctxt "System menu in the top bar"
|
msgctxt "System menu in the top bar"
|
||||||
msgid "System"
|
msgid "System"
|
||||||
msgstr "Sistema"
|
msgstr "Sistema"
|
||||||
|
|
||||||
#: js/ui/panel.js:811
|
#: js/ui/panel.js:816
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Barra superior"
|
msgstr "Barra superior"
|
||||||
|
|
||||||
@@ -1474,23 +1478,23 @@ msgstr "Barra superior"
|
|||||||
#. "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:291
|
#: js/ui/popupMenu.js:300
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:70
|
#: js/ui/runDialog.js:74
|
||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Introduïu una ordre"
|
msgstr "Introduïu una ordre"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:110 js/ui/windowMenu.js:175
|
#: js/ui/runDialog.js:114 js/ui/windowMenu.js:174
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "Tanca"
|
msgstr "Tanca"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:273
|
#: js/ui/runDialog.js:278
|
||||||
msgid "Restart is not available on Wayland"
|
msgid "Restart is not available on Wayland"
|
||||||
msgstr "El reinici no està disponible en Wayland"
|
msgstr "El reinici no està disponible en Wayland"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:278
|
#: js/ui/runDialog.js:283
|
||||||
msgid "Restarting…"
|
msgid "Restarting…"
|
||||||
msgstr "S'està reiniciant…"
|
msgstr "S'està reiniciant…"
|
||||||
|
|
||||||
@@ -1514,7 +1518,7 @@ msgid_plural "%d new notifications"
|
|||||||
msgstr[0] "%d notificació nova"
|
msgstr[0] "%d notificació nova"
|
||||||
msgstr[1] "%d notificacions noves"
|
msgstr[1] "%d notificacions noves"
|
||||||
|
|
||||||
#: js/ui/screenShield.js:451 js/ui/status/system.js:283
|
#: js/ui/screenShield.js:451 js/ui/status/system.js:294
|
||||||
msgid "Lock"
|
msgid "Lock"
|
||||||
msgstr "Bloqueja"
|
msgstr "Bloqueja"
|
||||||
|
|
||||||
@@ -1697,7 +1701,7 @@ msgid "<unknown>"
|
|||||||
msgstr "<desconegut>"
|
msgstr "<desconegut>"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:441 js/ui/status/network.js:1310
|
#: js/ui/status/network.js:441 js/ui/status/network.js:1323
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s apagat"
|
msgstr "%s apagat"
|
||||||
@@ -1724,7 +1728,7 @@ msgid "%s Disconnecting"
|
|||||||
msgstr "%s s'està desconnectant"
|
msgstr "%s s'està desconnectant"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:459 js/ui/status/network.js:1302
|
#: js/ui/status/network.js:459 js/ui/status/network.js:1315
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
msgid "%s Connecting"
|
||||||
msgstr "%s s'està connectant"
|
msgstr "%s s'està connectant"
|
||||||
@@ -1764,7 +1768,7 @@ msgid "Mobile Broadband Settings"
|
|||||||
msgstr "Configuració de la xarxa de banda ampla mòbil"
|
msgstr "Configuració de la xarxa de banda ampla mòbil"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:578 js/ui/status/network.js:1307
|
#: js/ui/status/network.js:578 js/ui/status/network.js:1320
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hardware Disabled"
|
msgid "%s Hardware Disabled"
|
||||||
msgstr "%s maquinari inhabilitat"
|
msgstr "%s maquinari inhabilitat"
|
||||||
@@ -1820,81 +1824,81 @@ msgstr "Cap xarxa"
|
|||||||
msgid "Use hardware switch to turn off"
|
msgid "Use hardware switch to turn off"
|
||||||
msgstr "Utilitza l'interruptor de maquinari per desactivar-la"
|
msgstr "Utilitza l'interruptor de maquinari per desactivar-la"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1173
|
#: js/ui/status/network.js:1186
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Trieu una xarxa"
|
msgstr "Trieu una xarxa"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1179
|
#: js/ui/status/network.js:1192
|
||||||
msgid "Wi-Fi Settings"
|
msgid "Wi-Fi Settings"
|
||||||
msgstr "Paràmetres de la xarxa sense fil"
|
msgstr "Paràmetres de la xarxa sense fil"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1298
|
#: js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hotspot Active"
|
msgid "%s Hotspot Active"
|
||||||
msgstr "Hostpot %s actiu"
|
msgstr "Hostpot %s actiu"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1313
|
#: js/ui/status/network.js:1326
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
msgstr "%s no està connectat"
|
msgstr "%s no està connectat"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1413
|
#: js/ui/status/network.js:1426
|
||||||
msgid "connecting…"
|
msgid "connecting…"
|
||||||
msgstr "s'està connectant..."
|
msgstr "s'està connectant..."
|
||||||
|
|
||||||
#. 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:1416
|
#: js/ui/status/network.js:1429
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "cal autenticació"
|
msgstr "cal autenticació"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1418
|
#: js/ui/status/network.js:1431
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "ha fallat la connexió"
|
msgstr "ha fallat la connexió"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1472
|
#: js/ui/status/network.js:1485
|
||||||
msgid "VPN Settings"
|
msgid "VPN Settings"
|
||||||
msgstr "Paràmetres de la VPN"
|
msgstr "Paràmetres de la VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1485
|
#: js/ui/status/network.js:1498
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1495
|
#: js/ui/status/network.js:1508
|
||||||
msgid "VPN Off"
|
msgid "VPN Off"
|
||||||
msgstr "VPN apagada"
|
msgstr "VPN apagada"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1559 js/ui/status/rfkill.js:93
|
#: js/ui/status/network.js:1572 js/ui/status/rfkill.js:93
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "Paràmetres de xarxa"
|
msgstr "Paràmetres de xarxa"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1588
|
#: js/ui/status/network.js:1601
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wired Connection"
|
msgid "%s Wired Connection"
|
||||||
msgid_plural "%s Wired Connections"
|
msgid_plural "%s Wired Connections"
|
||||||
msgstr[0] "%s connexió amb fil"
|
msgstr[0] "%s connexió amb fil"
|
||||||
msgstr[1] "%s connexions amb fil"
|
msgstr[1] "%s connexions amb fil"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1592
|
#: js/ui/status/network.js:1605
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wi-Fi Connection"
|
msgid "%s Wi-Fi Connection"
|
||||||
msgid_plural "%s Wi-Fi Connections"
|
msgid_plural "%s Wi-Fi Connections"
|
||||||
msgstr[0] "%s connexió Wifi"
|
msgstr[0] "%s connexió Wifi"
|
||||||
msgstr[1] "%s connexions Wifi"
|
msgstr[1] "%s connexions Wifi"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1596
|
#: js/ui/status/network.js:1609
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Modem Connection"
|
msgid "%s Modem Connection"
|
||||||
msgid_plural "%s Modem Connections"
|
msgid_plural "%s Modem Connections"
|
||||||
msgstr[0] "%s connexió mòdem"
|
msgstr[0] "%s connexió mòdem"
|
||||||
msgstr[1] "%s connexions mòdem"
|
msgstr[1] "%s connexions mòdem"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1728
|
#: js/ui/status/network.js:1741
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Ha fallat la connexió"
|
msgstr "Ha fallat la connexió"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1729
|
#: js/ui/status/network.js:1742
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Ha fallat l'activació de la connexió de xarxa"
|
msgstr "Ha fallat l'activació de la connexió de xarxa"
|
||||||
|
|
||||||
@@ -1945,6 +1949,14 @@ msgstr "%d∶%02d per completar la càrrega (%d %%)"
|
|||||||
msgid "%d %%"
|
msgid "%d %%"
|
||||||
msgstr "%d %%"
|
msgstr "%d %%"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:46
|
||||||
|
msgid "Screen is Being Shared"
|
||||||
|
msgstr "Es comparteix la pantalla"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:48
|
||||||
|
msgid "Turn off"
|
||||||
|
msgstr "Desactiva"
|
||||||
|
|
||||||
#. 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
|
||||||
#. changing the menu contents.
|
#. changing the menu contents.
|
||||||
@@ -1964,28 +1976,28 @@ msgstr "Surt"
|
|||||||
msgid "Account Settings"
|
msgid "Account Settings"
|
||||||
msgstr "Paràmetres del compte"
|
msgstr "Paràmetres del compte"
|
||||||
|
|
||||||
#: js/ui/status/system.js:268
|
#: js/ui/status/system.js:279
|
||||||
msgid "Orientation Lock"
|
msgid "Orientation Lock"
|
||||||
msgstr "Bloqueja l'orientació"
|
msgstr "Bloqueja l'orientació"
|
||||||
|
|
||||||
#: js/ui/status/system.js:294
|
#: js/ui/status/system.js:305
|
||||||
msgid "Suspend"
|
msgid "Suspend"
|
||||||
msgstr "Atura temporalment"
|
msgstr "Atura temporalment"
|
||||||
|
|
||||||
#: js/ui/status/system.js:304
|
#: js/ui/status/system.js:315
|
||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Apaga"
|
msgstr "Apaga"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:294
|
#: js/ui/status/thunderbolt.js:298
|
||||||
msgid "Thunderbolt"
|
msgid "Thunderbolt"
|
||||||
msgstr "Thunderbolt"
|
msgstr "Thunderbolt"
|
||||||
|
|
||||||
#. we are done
|
#. we are done
|
||||||
#: js/ui/status/thunderbolt.js:350
|
#: js/ui/status/thunderbolt.js:354
|
||||||
msgid "Unknown Thunderbolt device"
|
msgid "Unknown Thunderbolt device"
|
||||||
msgstr "Dispostiu Thunderbolt desconegut"
|
msgstr "Dispostiu Thunderbolt desconegut"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:351
|
#: js/ui/status/thunderbolt.js:355
|
||||||
msgid ""
|
msgid ""
|
||||||
"New device has been detected while you were away. Please disconnect and "
|
"New device has been detected while you were away. Please disconnect and "
|
||||||
"reconnect the device to start using it."
|
"reconnect the device to start using it."
|
||||||
@@ -1993,23 +2005,19 @@ msgstr ""
|
|||||||
"El nou dispositiu s'ha detectat mentre estàveu absents. Desconnecteu i "
|
"El nou dispositiu s'ha detectat mentre estàveu absents. Desconnecteu i "
|
||||||
"torneu a connectar el dispositiu per a començar a utilitzar-lo."
|
"torneu a connectar el dispositiu per a començar a utilitzar-lo."
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:356
|
#: js/ui/status/thunderbolt.js:360
|
||||||
msgid "Thunderbolt authorization error"
|
msgid "Thunderbolt authorization error"
|
||||||
msgstr "S'ha produït un error d'autorització a Thunderbolt"
|
msgstr "S'ha produït un error d'autorització a Thunderbolt"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:357
|
#: js/ui/status/thunderbolt.js:361
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Could not authorize the Thunderbolt device: %s"
|
msgid "Could not authorize the Thunderbolt device: %s"
|
||||||
msgstr "No s'ha pogut autoritzar el dispositiu Thunderbolt: %s"
|
msgstr "No s'ha pogut autoritzar el dispositiu Thunderbolt: %s"
|
||||||
|
|
||||||
#: js/ui/status/volume.js:128
|
#: js/ui/status/volume.js:135
|
||||||
msgid "Volume changed"
|
msgid "Volume changed"
|
||||||
msgstr "S'ha canviat el volum"
|
msgstr "S'ha canviat el volum"
|
||||||
|
|
||||||
#: js/ui/status/volume.js:170
|
|
||||||
msgid "Volume"
|
|
||||||
msgstr "Volum"
|
|
||||||
|
|
||||||
#. Translators: this is for display mirroring i.e. cloning.
|
#. Translators: this is for display mirroring i.e. cloning.
|
||||||
#. * Try to keep it under around 15 characters.
|
#. * Try to keep it under around 15 characters.
|
||||||
#.
|
#.
|
||||||
@@ -2059,22 +2067,22 @@ msgstr "Cerca"
|
|||||||
msgid "“%s” is ready"
|
msgid "“%s” is ready"
|
||||||
msgstr "«%s» ja està a punt"
|
msgstr "«%s» ja està a punt"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:72
|
#: js/ui/windowManager.js:74
|
||||||
msgid "Do you want to keep these display settings?"
|
msgid "Do you want to keep these display settings?"
|
||||||
msgstr "Voleu mantenir aquesta configuració de la pantalla?"
|
msgstr "Voleu mantenir aquesta configuració 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:84
|
#: js/ui/windowManager.js:86
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Descarta els canvis"
|
msgstr "Descarta els canvis"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:87
|
#: js/ui/windowManager.js:89
|
||||||
msgid "Keep Changes"
|
msgid "Keep Changes"
|
||||||
msgstr "Mantén els canvis"
|
msgstr "Mantén els canvis"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:105
|
#: js/ui/windowManager.js:107
|
||||||
#, javascript-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"
|
||||||
@@ -2083,7 +2091,7 @@ msgstr[1] "Es descartaran els canvis d'aquí %d segons"
|
|||||||
|
|
||||||
#. Translators: This represents the size of a window. The first number is
|
#. Translators: This represents the size of a window. The first number is
|
||||||
#. * the width of the window and the second is the height.
|
#. * the width of the window and the second is the height.
|
||||||
#: js/ui/windowManager.js:660
|
#: js/ui/windowManager.js:689
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d × %d"
|
msgid "%d × %d"
|
||||||
msgstr "%d × %d"
|
msgstr "%d × %d"
|
||||||
@@ -2136,19 +2144,19 @@ msgstr "Mou a l'espai de treball superior"
|
|||||||
msgid "Move to Workspace Down"
|
msgid "Move to Workspace Down"
|
||||||
msgstr "Mou a l'espai de treball inferior"
|
msgstr "Mou a l'espai de treball inferior"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:140
|
#: js/ui/windowMenu.js:139
|
||||||
msgid "Move to Monitor Up"
|
msgid "Move to Monitor Up"
|
||||||
msgstr "Mou a la pantalla de dalt"
|
msgstr "Mou a la pantalla de dalt"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:149
|
#: js/ui/windowMenu.js:148
|
||||||
msgid "Move to Monitor Down"
|
msgid "Move to Monitor Down"
|
||||||
msgstr "Mou a la pantalla de baix"
|
msgstr "Mou a la pantalla de baix"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:158
|
#: js/ui/windowMenu.js:157
|
||||||
msgid "Move to Monitor Left"
|
msgid "Move to Monitor Left"
|
||||||
msgstr "Mou a la pantalla de l'esquerra"
|
msgstr "Mou a la pantalla de l'esquerra"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:167
|
#: js/ui/windowMenu.js:166
|
||||||
msgid "Move to Monitor Right"
|
msgid "Move to Monitor Right"
|
||||||
msgstr "Mou a la pantalla de la dreta"
|
msgstr "Mou a la pantalla de la dreta"
|
||||||
|
|
||||||
@@ -2161,28 +2169,28 @@ msgstr "Calendari de l'Evolution"
|
|||||||
msgid "evolution"
|
msgid "evolution"
|
||||||
msgstr "evolution"
|
msgstr "evolution"
|
||||||
|
|
||||||
#: src/main.c:432
|
#: src/main.c:410
|
||||||
msgid "Print version"
|
msgid "Print version"
|
||||||
msgstr "Mostra la versió"
|
msgstr "Mostra la versió"
|
||||||
|
|
||||||
#: src/main.c:438
|
#: src/main.c:416
|
||||||
msgid "Mode used by GDM for login screen"
|
msgid "Mode used by GDM for login screen"
|
||||||
msgstr "El mode que utilitzarà el GDM per a la pantalla d'entrada"
|
msgstr "El mode que utilitzarà el GDM per a la pantalla d'entrada"
|
||||||
|
|
||||||
#: src/main.c:444
|
#: src/main.c:422
|
||||||
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
||||||
msgstr "Utilitza un mode específic, p. ex. «gdm» per la pantalla d'entrada"
|
msgstr "Utilitza un mode específic, p. ex. «gdm» per la pantalla d'entrada"
|
||||||
|
|
||||||
#: src/main.c:450
|
#: src/main.c:428
|
||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "Llista els modes possibles"
|
msgstr "Llista els modes possibles"
|
||||||
|
|
||||||
#: src/shell-app.c:270
|
#: src/shell-app.c:272
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Desconegut"
|
msgstr "Desconegut"
|
||||||
|
|
||||||
#: src/shell-app.c:511
|
#: src/shell-app.c:523
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "No s'ha pogut iniciar «%s»"
|
msgstr "No s'ha pogut iniciar «%s»"
|
||||||
|
520
po/en_GB.po
520
po/en_GB.po
File diff suppressed because it is too large
Load Diff
164
po/es.po
164
po/es.po
@@ -9,8 +9,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell.master\n"
|
"Project-Id-Version: gnome-shell.master\n"
|
||||||
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
||||||
"POT-Creation-Date: 2018-04-13 19:54+0000\n"
|
"POT-Creation-Date: 2018-07-24 18:34+0000\n"
|
||||||
"PO-Revision-Date: 2018-04-25 12:54+0200\n"
|
"PO-Revision-Date: 2018-07-27 13:15+0200\n"
|
||||||
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
|
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
|
||||||
"Language-Team: es <gnome-es-list@gnome.org>\n"
|
"Language-Team: es <gnome-es-list@gnome.org>\n"
|
||||||
"Language: es\n"
|
"Language: es\n"
|
||||||
@@ -18,7 +18,7 @@ msgstr ""
|
|||||||
"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: Gtranslator 2.91.6\n"
|
"X-Generator: Gtranslator 2.91.7\n"
|
||||||
|
|
||||||
#: data/50-gnome-shell-system.xml:6
|
#: data/50-gnome-shell-system.xml:6
|
||||||
msgid "System"
|
msgid "System"
|
||||||
@@ -366,20 +366,20 @@ msgctxt "button"
|
|||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Iniciar sesión"
|
msgstr "Iniciar sesión"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:315
|
#: js/gdm/loginDialog.js:319
|
||||||
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
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: js/gdm/loginDialog.js:458
|
#: js/gdm/loginDialog.js:462
|
||||||
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
|
#. 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
|
||||||
#: js/gdm/loginDialog.js:887
|
#: js/gdm/loginDialog.js:891
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(ej., usuario o %s)"
|
msgstr "(ej., usuario o %s)"
|
||||||
@@ -387,12 +387,12 @@ msgstr "(ej., usuario o %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:892 js/ui/components/networkAgent.js:243
|
#: js/gdm/loginDialog.js:896 js/ui/components/networkAgent.js:243
|
||||||
#: js/ui/components/networkAgent.js:261
|
#: js/ui/components/networkAgent.js:261
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Nombre de usuario:"
|
msgstr "Nombre de usuario:"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:1228
|
#: js/gdm/loginDialog.js:1234
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Ventana de inicio de sesión"
|
msgstr "Ventana de inicio de sesión"
|
||||||
|
|
||||||
@@ -405,7 +405,7 @@ msgstr "Error de autenticación"
|
|||||||
#. as a cue to display our own message.
|
#. as a cue to display our own message.
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: js/gdm/util.js:482
|
#: js/gdm/util.js:485
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(o pase el dedo)"
|
msgstr "(o pase el dedo)"
|
||||||
|
|
||||||
@@ -645,23 +645,23 @@ msgstr "Frecuentes"
|
|||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Todas"
|
msgstr "Todas"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1886
|
#: js/ui/appDisplay.js:1890
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Ventana nueva"
|
msgstr "Ventana nueva"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1900
|
#: js/ui/appDisplay.js:1904
|
||||||
msgid "Launch using Dedicated Graphics Card"
|
msgid "Launch using Dedicated Graphics Card"
|
||||||
msgstr "Lanzar usando la tarjeta gráfica dedicada"
|
msgstr "Lanzar usando la tarjeta gráfica dedicada"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1927 js/ui/dash.js:285
|
#: js/ui/appDisplay.js:1931 js/ui/dash.js:285
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Quitar de los favoritos"
|
msgstr "Quitar de los favoritos"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1933
|
#: js/ui/appDisplay.js:1937
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Añadir a los favoritos"
|
msgstr "Añadir a los favoritos"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1943
|
#: js/ui/appDisplay.js:1947
|
||||||
msgid "Show Details"
|
msgid "Show Details"
|
||||||
msgstr "Mostrar detalles"
|
msgstr "Mostrar detalles"
|
||||||
|
|
||||||
@@ -808,35 +808,35 @@ msgctxt "event list time"
|
|||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Todo el día"
|
msgstr "Todo el día"
|
||||||
|
|
||||||
#: js/ui/calendar.js:864
|
#: js/ui/calendar.js:866
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d de %B"
|
msgstr "%A, %d de %B"
|
||||||
|
|
||||||
#: js/ui/calendar.js:868
|
#: js/ui/calendar.js:870
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A, %d de %B de %Y"
|
msgstr "%A, %d de %B de %Y"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1086
|
#: js/ui/calendar.js:1100
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "No hay notificaciones"
|
msgstr "No hay notificaciones"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1089
|
#: js/ui/calendar.js:1103
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "No hay eventos"
|
msgstr "No hay eventos"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1117
|
#: js/ui/calendar.js:1131
|
||||||
msgid "Clear All"
|
msgid "Clear All"
|
||||||
msgstr "Limpiar todo"
|
msgstr "Limpiar todo"
|
||||||
|
|
||||||
#. Translators: %s is an application name
|
#. Translators: %s is an application name
|
||||||
#: js/ui/closeDialog.js:44
|
#: js/ui/closeDialog.js:47
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "“%s” is not responding."
|
msgid "“%s” is not responding."
|
||||||
msgstr "«%s» no responde."
|
msgstr "«%s» no responde."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:45
|
#: js/ui/closeDialog.js:48
|
||||||
msgid ""
|
msgid ""
|
||||||
"You may choose to wait a short while for it to continue or force the "
|
"You may choose to wait a short while for it to continue or force the "
|
||||||
"application to quit entirely."
|
"application to quit entirely."
|
||||||
@@ -844,11 +844,11 @@ msgstr ""
|
|||||||
"Puede elegir esperar un momento para que continúe o forzar a la aplicación a "
|
"Puede elegir esperar un momento para que continúe o forzar a la aplicación a "
|
||||||
"terminar."
|
"terminar."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:61
|
#: js/ui/closeDialog.js:64
|
||||||
msgid "Force Quit"
|
msgid "Force Quit"
|
||||||
msgstr "Forzar la salida"
|
msgstr "Forzar la salida"
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:64
|
#: js/ui/closeDialog.js:67
|
||||||
msgid "Wait"
|
msgid "Wait"
|
||||||
msgstr "Esperar"
|
msgstr "Esperar"
|
||||||
|
|
||||||
@@ -865,7 +865,7 @@ msgstr "Dispositivo externo desconectado"
|
|||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Abrir con %s"
|
msgstr "Abrir con %s"
|
||||||
|
|
||||||
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:295
|
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:297
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Contraseña:"
|
msgstr "Contraseña:"
|
||||||
|
|
||||||
@@ -902,11 +902,11 @@ msgstr "Contraseña de la clave privada:"
|
|||||||
msgid "Service: "
|
msgid "Service: "
|
||||||
msgstr "Servicio:"
|
msgstr "Servicio:"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:659
|
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:664
|
||||||
msgid "Authentication required by wireless network"
|
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:293 js/ui/components/networkAgent.js:660
|
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:665
|
||||||
#, javascript-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 "
|
||||||
@@ -915,7 +915,7 @@ msgstr ""
|
|||||||
"Se necesitan contraseñas o claves de cifrado para acceder a la red "
|
"Se necesitan contraseñas o claves de cifrado para acceder a la red "
|
||||||
"inalámbrica «%s»."
|
"inalámbrica «%s»."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:663
|
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:668
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
msgstr "Autenticación 802.1X cableada"
|
msgstr "Autenticación 802.1X cableada"
|
||||||
|
|
||||||
@@ -923,15 +923,15 @@ msgstr "Autenticación 802.1X cableada"
|
|||||||
msgid "Network name: "
|
msgid "Network name: "
|
||||||
msgstr "Nombre de la red: "
|
msgstr "Nombre de la red: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:667
|
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:672
|
||||||
msgid "DSL authentication"
|
msgid "DSL authentication"
|
||||||
msgstr "Autenticación DSL"
|
msgstr "Autenticación DSL"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:673
|
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:678
|
||||||
msgid "PIN code required"
|
msgid "PIN code required"
|
||||||
msgstr "Código PIN requerido"
|
msgstr "Código PIN requerido"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:674
|
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:679
|
||||||
msgid "PIN code is needed for the mobile broadband device"
|
msgid "PIN code is needed for the mobile broadband device"
|
||||||
msgstr "Se necesita un código PIN para el dispositivo de banda ancha móvil"
|
msgstr "Se necesita un código PIN para el dispositivo de banda ancha móvil"
|
||||||
|
|
||||||
@@ -939,17 +939,17 @@ msgstr "Se necesita un código PIN para el dispositivo de banda ancha móvil"
|
|||||||
msgid "PIN: "
|
msgid "PIN: "
|
||||||
msgstr "PIN: "
|
msgstr "PIN: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:680
|
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:685
|
||||||
msgid "Mobile broadband network password"
|
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:321 js/ui/components/networkAgent.js:664
|
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:669
|
||||||
#: js/ui/components/networkAgent.js:668 js/ui/components/networkAgent.js:681
|
#: js/ui/components/networkAgent.js:673 js/ui/components/networkAgent.js:686
|
||||||
#, javascript-format
|
#, javascript-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 conectarse a «%s»."
|
msgstr "Se requiere una contraseña para conectarse a «%s»."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:648 js/ui/status/network.js:1691
|
#: js/ui/components/networkAgent.js:653 js/ui/status/network.js:1704
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Gestor de la red"
|
msgstr "Gestor de la red"
|
||||||
|
|
||||||
@@ -969,7 +969,7 @@ msgstr "Autenticar"
|
|||||||
#. * 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:281 js/ui/shellMountOperation.js:327
|
#: js/ui/components/polkitAgent.js:283 js/ui/shellMountOperation.js:327
|
||||||
msgid "Sorry, that didn’t work. Please try again."
|
msgid "Sorry, that didn’t work. Please try again."
|
||||||
msgstr "Eso no ha funcionado. Inténtelo de nuevo."
|
msgstr "Eso no ha funcionado. Inténtelo de nuevo."
|
||||||
|
|
||||||
@@ -1301,13 +1301,13 @@ msgid "Leave On"
|
|||||||
msgstr "Dejar activada"
|
msgstr "Dejar activada"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:1281
|
#: js/ui/status/network.js:1294
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Encender"
|
msgstr "Encender"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
||||||
#: js/ui/status/network.js:1281 js/ui/status/network.js:1396
|
#: js/ui/status/network.js:1294 js/ui/status/network.js:1409
|
||||||
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
||||||
#: js/ui/status/rfkill.js:117
|
#: js/ui/status/rfkill.js:117
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
@@ -1369,7 +1369,7 @@ msgstr "Ver fuente"
|
|||||||
msgid "Web Page"
|
msgid "Web Page"
|
||||||
msgstr "Página web"
|
msgstr "Página web"
|
||||||
|
|
||||||
#: js/ui/messageTray.js:1493
|
#: js/ui/messageTray.js:1495
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Información del sistema"
|
msgstr "Información del sistema"
|
||||||
|
|
||||||
@@ -1443,22 +1443,22 @@ msgstr "Pulse Esc para salir"
|
|||||||
msgid "Press any key to exit"
|
msgid "Press any key to exit"
|
||||||
msgstr "Pulse cualquier tecla para salir"
|
msgstr "Pulse cualquier tecla para salir"
|
||||||
|
|
||||||
#: js/ui/panel.js:355
|
#: js/ui/panel.js:356
|
||||||
msgid "Quit"
|
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:411
|
#: js/ui/panel.js:412
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Actividades"
|
msgstr "Actividades"
|
||||||
|
|
||||||
#: js/ui/panel.js:692
|
#: js/ui/panel.js:693
|
||||||
msgctxt "System menu in the top bar"
|
msgctxt "System menu in the top bar"
|
||||||
msgid "System"
|
msgid "System"
|
||||||
msgstr "Sistema"
|
msgstr "Sistema"
|
||||||
|
|
||||||
#: js/ui/panel.js:811
|
#: js/ui/panel.js:816
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Barra superior"
|
msgstr "Barra superior"
|
||||||
|
|
||||||
@@ -1467,7 +1467,7 @@ msgstr "Barra superior"
|
|||||||
#. "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:291
|
#: js/ui/popupMenu.js:300
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
@@ -1475,15 +1475,15 @@ msgstr "toggle-switch-intl"
|
|||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Introducir un comando"
|
msgstr "Introducir un comando"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:110 js/ui/windowMenu.js:175
|
#: js/ui/runDialog.js:110 js/ui/windowMenu.js:174
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "Cerrar"
|
msgstr "Cerrar"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:273
|
#: js/ui/runDialog.js:274
|
||||||
msgid "Restart is not available on Wayland"
|
msgid "Restart is not available on Wayland"
|
||||||
msgstr "Reiniciar si no está disponible en Wayland"
|
msgstr "Reiniciar si no está disponible en Wayland"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:278
|
#: js/ui/runDialog.js:279
|
||||||
msgid "Restarting…"
|
msgid "Restarting…"
|
||||||
msgstr "Reiniciando…"
|
msgstr "Reiniciando…"
|
||||||
|
|
||||||
@@ -1690,7 +1690,7 @@ msgid "<unknown>"
|
|||||||
msgstr "<desconocido>"
|
msgstr "<desconocido>"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:441 js/ui/status/network.js:1310
|
#: js/ui/status/network.js:441 js/ui/status/network.js:1323
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s apagada"
|
msgstr "%s apagada"
|
||||||
@@ -1716,7 +1716,7 @@ msgid "%s Disconnecting"
|
|||||||
msgstr "Desconectando %s"
|
msgstr "Desconectando %s"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:459 js/ui/status/network.js:1302
|
#: js/ui/status/network.js:459 js/ui/status/network.js:1315
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
msgid "%s Connecting"
|
||||||
msgstr "Conectando %s"
|
msgstr "Conectando %s"
|
||||||
@@ -1756,7 +1756,7 @@ msgid "Mobile Broadband Settings"
|
|||||||
msgstr "Configuración de banda ancha móvil"
|
msgstr "Configuración de banda ancha móvil"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:578 js/ui/status/network.js:1307
|
#: js/ui/status/network.js:578 js/ui/status/network.js:1320
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hardware Disabled"
|
msgid "%s Hardware Disabled"
|
||||||
msgstr "Hardware %s desactivado"
|
msgstr "Hardware %s desactivado"
|
||||||
@@ -1812,81 +1812,81 @@ msgstr "No hay redes"
|
|||||||
msgid "Use hardware switch to turn off"
|
msgid "Use hardware switch to turn off"
|
||||||
msgstr "Usar el interruptor hardware para apagar"
|
msgstr "Usar el interruptor hardware para apagar"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1173
|
#: js/ui/status/network.js:1186
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Seleccionar red"
|
msgstr "Seleccionar red"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1179
|
#: js/ui/status/network.js:1192
|
||||||
msgid "Wi-Fi Settings"
|
msgid "Wi-Fi Settings"
|
||||||
msgstr "Configuración de Wi-Fi"
|
msgstr "Configuración de Wi-Fi"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1298
|
#: js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hotspot Active"
|
msgid "%s Hotspot Active"
|
||||||
msgstr "Punto de acceso %s activo"
|
msgstr "Punto de acceso %s activo"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1313
|
#: js/ui/status/network.js:1326
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
msgstr "%s no conectado"
|
msgstr "%s no conectado"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1413
|
#: js/ui/status/network.js:1426
|
||||||
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:1416
|
#: js/ui/status/network.js:1429
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "se necesita autenticación"
|
msgstr "se necesita autenticación"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1418
|
#: js/ui/status/network.js:1431
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "falló la conexión"
|
msgstr "falló la conexión"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1472
|
#: js/ui/status/network.js:1485
|
||||||
msgid "VPN Settings"
|
msgid "VPN Settings"
|
||||||
msgstr "Configuración de VPN"
|
msgstr "Configuración de VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1485
|
#: js/ui/status/network.js:1498
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1495
|
#: js/ui/status/network.js:1508
|
||||||
msgid "VPN Off"
|
msgid "VPN Off"
|
||||||
msgstr "VPN apagada"
|
msgstr "VPN apagada"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1559 js/ui/status/rfkill.js:93
|
#: js/ui/status/network.js:1572 js/ui/status/rfkill.js:93
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "Configuración de la red"
|
msgstr "Configuración de la red"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1588
|
#: js/ui/status/network.js:1601
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wired Connection"
|
msgid "%s Wired Connection"
|
||||||
msgid_plural "%s Wired Connections"
|
msgid_plural "%s Wired Connections"
|
||||||
msgstr[0] "%s conexión cableada"
|
msgstr[0] "%s conexión cableada"
|
||||||
msgstr[1] "%s conexiones cableadas"
|
msgstr[1] "%s conexiones cableadas"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1592
|
#: js/ui/status/network.js:1605
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wi-Fi Connection"
|
msgid "%s Wi-Fi Connection"
|
||||||
msgid_plural "%s Wi-Fi Connections"
|
msgid_plural "%s Wi-Fi Connections"
|
||||||
msgstr[0] "%s conexión inalámbrica"
|
msgstr[0] "%s conexión inalámbrica"
|
||||||
msgstr[1] "%s conexiones inalámbricas"
|
msgstr[1] "%s conexiones inalámbricas"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1596
|
#: js/ui/status/network.js:1609
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Modem Connection"
|
msgid "%s Modem Connection"
|
||||||
msgid_plural "%s Modem Connections"
|
msgid_plural "%s Modem Connections"
|
||||||
msgstr[0] "%s conexión por módem"
|
msgstr[0] "%s conexión por módem"
|
||||||
msgstr[1] "%s conexiones por módem"
|
msgstr[1] "%s conexiones por módem"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1728
|
#: js/ui/status/network.js:1741
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Falló la conexión"
|
msgstr "Falló la conexión"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1729
|
#: js/ui/status/network.js:1742
|
||||||
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"
|
||||||
|
|
||||||
@@ -1937,6 +1937,15 @@ msgstr "%d∶%02d para la carga completa (%d %%)"
|
|||||||
msgid "%d %%"
|
msgid "%d %%"
|
||||||
msgstr "%d %%"
|
msgstr "%d %%"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:45
|
||||||
|
msgid "Screen is Being Shared"
|
||||||
|
msgstr "Se está compartiendo la pantalla"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:47
|
||||||
|
#| msgid "Turn Off"
|
||||||
|
msgid "Turn off"
|
||||||
|
msgstr "Apagar"
|
||||||
|
|
||||||
#. 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
|
||||||
#. changing the menu contents.
|
#. changing the menu contents.
|
||||||
@@ -1968,16 +1977,16 @@ msgstr "Suspender"
|
|||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Apagar"
|
msgstr "Apagar"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:294
|
#: js/ui/status/thunderbolt.js:298
|
||||||
msgid "Thunderbolt"
|
msgid "Thunderbolt"
|
||||||
msgstr "Thunderbolt"
|
msgstr "Thunderbolt"
|
||||||
|
|
||||||
#. we are done
|
#. we are done
|
||||||
#: js/ui/status/thunderbolt.js:350
|
#: js/ui/status/thunderbolt.js:354
|
||||||
msgid "Unknown Thunderbolt device"
|
msgid "Unknown Thunderbolt device"
|
||||||
msgstr "Dispositivo Thunderbolt desconocido"
|
msgstr "Dispositivo Thunderbolt desconocido"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:351
|
#: js/ui/status/thunderbolt.js:355
|
||||||
msgid ""
|
msgid ""
|
||||||
"New device has been detected while you were away. Please disconnect and "
|
"New device has been detected while you were away. Please disconnect and "
|
||||||
"reconnect the device to start using it."
|
"reconnect the device to start using it."
|
||||||
@@ -1985,13 +1994,12 @@ msgstr ""
|
|||||||
"Se ha detectado un dispositivo nuevo mientras estaba fuera. Desconéctelo y "
|
"Se ha detectado un dispositivo nuevo mientras estaba fuera. Desconéctelo y "
|
||||||
"vuélvalo a conectar para empezar a usarlo."
|
"vuélvalo a conectar para empezar a usarlo."
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:356
|
#: js/ui/status/thunderbolt.js:360
|
||||||
msgid "Thunderbolt authorization error"
|
msgid "Thunderbolt authorization error"
|
||||||
msgstr "Error de autorización de Thunderbolt"
|
msgstr "Error de autorización de Thunderbolt"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:357
|
#: js/ui/status/thunderbolt.js:361
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
#| msgid "Could not authorize the thunderbolt device: %s"
|
|
||||||
msgid "Could not authorize the Thunderbolt device: %s"
|
msgid "Could not authorize the Thunderbolt device: %s"
|
||||||
msgstr "No se pudo autorizar el dispositivo Thunderbolt: %s"
|
msgstr "No se pudo autorizar el dispositivo Thunderbolt: %s"
|
||||||
|
|
||||||
@@ -2076,7 +2084,7 @@ msgstr[1] "La configuración se revertirá en %d segundos"
|
|||||||
|
|
||||||
#. Translators: This represents the size of a window. The first number is
|
#. Translators: This represents the size of a window. The first number is
|
||||||
#. * the width of the window and the second is the height.
|
#. * the width of the window and the second is the height.
|
||||||
#: js/ui/windowManager.js:660
|
#: js/ui/windowManager.js:668
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d × %d"
|
msgid "%d × %d"
|
||||||
msgstr "%d × %d"
|
msgstr "%d × %d"
|
||||||
@@ -2129,19 +2137,19 @@ msgstr "Subir a un área de trabajo"
|
|||||||
msgid "Move to Workspace Down"
|
msgid "Move to Workspace Down"
|
||||||
msgstr "Bajar a un área de trabajo"
|
msgstr "Bajar a un área de trabajo"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:140
|
#: js/ui/windowMenu.js:139
|
||||||
msgid "Move to Monitor Up"
|
msgid "Move to Monitor Up"
|
||||||
msgstr "Mover a la pantalla de arriba"
|
msgstr "Mover a la pantalla de arriba"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:149
|
#: js/ui/windowMenu.js:148
|
||||||
msgid "Move to Monitor Down"
|
msgid "Move to Monitor Down"
|
||||||
msgstr "Mover a la pantalla de abajo"
|
msgstr "Mover a la pantalla de abajo"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:158
|
#: js/ui/windowMenu.js:157
|
||||||
msgid "Move to Monitor Left"
|
msgid "Move to Monitor Left"
|
||||||
msgstr "Mover a la pantalla de la izquierda"
|
msgstr "Mover a la pantalla de la izquierda"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:167
|
#: js/ui/windowMenu.js:166
|
||||||
msgid "Move to Monitor Right"
|
msgid "Move to Monitor Right"
|
||||||
msgstr "Mover a la pantalla de la derecha"
|
msgstr "Mover a la pantalla de la derecha"
|
||||||
|
|
||||||
@@ -2172,12 +2180,12 @@ msgstr ""
|
|||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "Listar los modos posibles"
|
msgstr "Listar los modos posibles"
|
||||||
|
|
||||||
#: src/shell-app.c:270
|
#: src/shell-app.c:272
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Desconocido"
|
msgstr "Desconocido"
|
||||||
|
|
||||||
#: src/shell-app.c:511
|
#: src/shell-app.c:523
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "Falló al lanzar «%s»"
|
msgstr "Falló al lanzar «%s»"
|
||||||
|
231
po/fr.po
231
po/fr.po
@@ -20,8 +20,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell master fr\n"
|
"Project-Id-Version: gnome-shell master fr\n"
|
||||||
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
||||||
"POT-Creation-Date: 2018-04-13 19:54+0000\n"
|
"POT-Creation-Date: 2018-08-01 18:08+0000\n"
|
||||||
"PO-Revision-Date: 2018-04-18 19:30+0200\n"
|
"PO-Revision-Date: 2018-08-09 19:51+0200\n"
|
||||||
"Last-Translator: Charles Monzat <superboa@hotmail.fr>\n"
|
"Last-Translator: Charles Monzat <superboa@hotmail.fr>\n"
|
||||||
"Language-Team: français <gnomefr@traduc.org>\n"
|
"Language-Team: français <gnomefr@traduc.org>\n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
@@ -312,34 +312,34 @@ msgstr ""
|
|||||||
"Si vrai, seules les fenêtres de l’espace de travail actuel sont affichées "
|
"Si vrai, seules les fenêtres de l’espace de travail actuel sont affichées "
|
||||||
"dans le sélecteur. Sinon, toutes les fenêtres y sont incluses."
|
"dans le sélecteur. Sinon, toutes les fenêtres y sont incluses."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:197
|
#: data/org.gnome.shell.gschema.xml.in:198
|
||||||
msgid "Attach modal dialog to the parent window"
|
msgid "Attach modal dialog to the parent window"
|
||||||
msgstr "Attacher les dialogues modaux à leur fenêtre parente"
|
msgstr "Attacher les dialogues modaux à leur fenêtre parente"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:198
|
#: data/org.gnome.shell.gschema.xml.in:199
|
||||||
#: data/org.gnome.shell.gschema.xml.in:207
|
#: data/org.gnome.shell.gschema.xml.in:208
|
||||||
#: data/org.gnome.shell.gschema.xml.in:215
|
#: data/org.gnome.shell.gschema.xml.in:216
|
||||||
#: data/org.gnome.shell.gschema.xml.in:223
|
#: data/org.gnome.shell.gschema.xml.in:224
|
||||||
#: data/org.gnome.shell.gschema.xml.in:231
|
#: data/org.gnome.shell.gschema.xml.in:232
|
||||||
msgid ""
|
msgid ""
|
||||||
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Cette clé prend le pas sur la clé dans org.gnome.mutter lorsque GNOME Shell "
|
"Cette clé prend le pas sur la clé dans org.gnome.mutter lorsque GNOME Shell "
|
||||||
"est lancé."
|
"est lancé."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:206
|
#: data/org.gnome.shell.gschema.xml.in:207
|
||||||
msgid "Enable edge tiling when dropping windows on screen edges"
|
msgid "Enable edge tiling when dropping windows on screen edges"
|
||||||
msgstr "Activer l’empilage des fenêtres déposées sur les bords de l’écran"
|
msgstr "Activer l’empilage des fenêtres déposées sur les bords de l’écran"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:214
|
#: data/org.gnome.shell.gschema.xml.in:215
|
||||||
msgid "Workspaces are managed dynamically"
|
msgid "Workspaces are managed dynamically"
|
||||||
msgstr "Les espaces de travail sont gérés dynamiquement"
|
msgstr "Les espaces de travail sont gérés dynamiquement"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:222
|
#: data/org.gnome.shell.gschema.xml.in:223
|
||||||
msgid "Workspaces only on primary monitor"
|
msgid "Workspaces only on primary monitor"
|
||||||
msgstr "Les espaces de travail sont uniquement sur l’écran principal"
|
msgstr "Les espaces de travail sont uniquement sur l’écran principal"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:230
|
#: data/org.gnome.shell.gschema.xml.in:231
|
||||||
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 ""
|
||||||
"Retarder les changements de focus en mode souris jusqu’à ce que le pointeur "
|
"Retarder les changements de focus en mode souris jusqu’à ce que le pointeur "
|
||||||
@@ -382,20 +382,20 @@ msgctxt "button"
|
|||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Se connecter"
|
msgstr "Se connecter"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:315
|
#: js/gdm/loginDialog.js:319
|
||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Choisir une session"
|
msgstr "Choisir une session"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: js/gdm/loginDialog.js:458
|
#: js/gdm/loginDialog.js:462
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Absent de la liste ?"
|
msgstr "Absent de la liste ?"
|
||||||
|
|
||||||
#. 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
|
||||||
#: js/gdm/loginDialog.js:887
|
#: js/gdm/loginDialog.js:891
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(par ex. utilisateur ou %s)"
|
msgstr "(par ex. utilisateur ou %s)"
|
||||||
@@ -403,12 +403,12 @@ msgstr "(par ex. utilisateur ou %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:892 js/ui/components/networkAgent.js:243
|
#: js/gdm/loginDialog.js:896 js/ui/components/networkAgent.js:243
|
||||||
#: js/ui/components/networkAgent.js:261
|
#: js/ui/components/networkAgent.js:261
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Nom d’utilisateur : "
|
msgstr "Nom d’utilisateur : "
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:1228
|
#: js/gdm/loginDialog.js:1234
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Fenêtre de connexion"
|
msgstr "Fenêtre de connexion"
|
||||||
|
|
||||||
@@ -421,7 +421,7 @@ msgstr "Erreur d’authentification"
|
|||||||
#. as a cue to display our own message.
|
#. as a cue to display our own message.
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: js/gdm/util.js:482
|
#: js/gdm/util.js:485
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(ou faites glisser le doigt)"
|
msgstr "(ou faites glisser le doigt)"
|
||||||
|
|
||||||
@@ -662,23 +662,23 @@ msgstr "Fréquemment utilisées"
|
|||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Toutes"
|
msgstr "Toutes"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1886
|
#: js/ui/appDisplay.js:1890
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Nouvelle fenêtre"
|
msgstr "Nouvelle fenêtre"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1900
|
#: js/ui/appDisplay.js:1904
|
||||||
msgid "Launch using Dedicated Graphics Card"
|
msgid "Launch using Dedicated Graphics Card"
|
||||||
msgstr "Démarrer en utilisant la carte graphique dédiée"
|
msgstr "Démarrer en utilisant la carte graphique dédiée"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1927 js/ui/dash.js:285
|
#: js/ui/appDisplay.js:1931 js/ui/dash.js:285
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Enlever des favoris"
|
msgstr "Enlever des favoris"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1933
|
#: js/ui/appDisplay.js:1937
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Ajouter aux favoris"
|
msgstr "Ajouter aux favoris"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1943
|
#: js/ui/appDisplay.js:1947
|
||||||
msgid "Show Details"
|
msgid "Show Details"
|
||||||
msgstr "Afficher les détails"
|
msgstr "Afficher les détails"
|
||||||
|
|
||||||
@@ -708,7 +708,7 @@ msgstr "Casque audio"
|
|||||||
msgid "Headset"
|
msgid "Headset"
|
||||||
msgstr "Micro-casque"
|
msgstr "Micro-casque"
|
||||||
|
|
||||||
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:221
|
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:255
|
||||||
msgid "Microphone"
|
msgid "Microphone"
|
||||||
msgstr "Microphone"
|
msgstr "Microphone"
|
||||||
|
|
||||||
@@ -720,7 +720,7 @@ msgstr "Modifier l’arrière-plan…"
|
|||||||
msgid "Display Settings"
|
msgid "Display Settings"
|
||||||
msgstr "Paramètres d’affichage"
|
msgstr "Paramètres d’affichage"
|
||||||
|
|
||||||
#: js/ui/backgroundMenu.js:22 js/ui/status/system.js:264
|
#: js/ui/backgroundMenu.js:22
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Paramètres"
|
msgstr "Paramètres"
|
||||||
|
|
||||||
@@ -840,35 +840,35 @@ msgctxt "event list time"
|
|||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Journée"
|
msgstr "Journée"
|
||||||
|
|
||||||
#: js/ui/calendar.js:864
|
#: js/ui/calendar.js:866
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A %d %B"
|
msgstr "%A %d %B"
|
||||||
|
|
||||||
#: js/ui/calendar.js:868
|
#: js/ui/calendar.js:870
|
||||||
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"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1086
|
#: js/ui/calendar.js:1100
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "Aucune notification"
|
msgstr "Aucune notification"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1089
|
#: js/ui/calendar.js:1103
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "Aucun évènement"
|
msgstr "Aucun évènement"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1117
|
#: js/ui/calendar.js:1131
|
||||||
msgid "Clear All"
|
msgid "Clear All"
|
||||||
msgstr "Effacer tout"
|
msgstr "Effacer tout"
|
||||||
|
|
||||||
#. Translators: %s is an application name
|
#. Translators: %s is an application name
|
||||||
#: js/ui/closeDialog.js:44
|
#: js/ui/closeDialog.js:47
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "“%s” is not responding."
|
msgid "“%s” is not responding."
|
||||||
msgstr "« %s » ne répond pas."
|
msgstr "« %s » ne répond pas."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:45
|
#: js/ui/closeDialog.js:48
|
||||||
msgid ""
|
msgid ""
|
||||||
"You may choose to wait a short while for it to continue or force the "
|
"You may choose to wait a short while for it to continue or force the "
|
||||||
"application to quit entirely."
|
"application to quit entirely."
|
||||||
@@ -876,11 +876,11 @@ msgstr ""
|
|||||||
"Vous pouvez soit attendre un peu pour continuer, soit forcer l’application à "
|
"Vous pouvez soit attendre un peu pour continuer, soit forcer l’application à "
|
||||||
"quitter."
|
"quitter."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:61
|
#: js/ui/closeDialog.js:64
|
||||||
msgid "Force Quit"
|
msgid "Force Quit"
|
||||||
msgstr "Forcer à quitter"
|
msgstr "Forcer à quitter"
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:64
|
#: js/ui/closeDialog.js:67
|
||||||
msgid "Wait"
|
msgid "Wait"
|
||||||
msgstr "Attendre"
|
msgstr "Attendre"
|
||||||
|
|
||||||
@@ -897,7 +897,7 @@ msgstr "Disque externe déconnecté"
|
|||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Ouvrir avec %s"
|
msgstr "Ouvrir avec %s"
|
||||||
|
|
||||||
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:295
|
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:297
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Mot de passe :"
|
msgstr "Mot de passe :"
|
||||||
|
|
||||||
@@ -934,11 +934,11 @@ msgstr "Mot de passe de la clé privée : "
|
|||||||
msgid "Service: "
|
msgid "Service: "
|
||||||
msgstr "Service : "
|
msgstr "Service : "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:659
|
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:664
|
||||||
msgid "Authentication required by wireless network"
|
msgid "Authentication required by wireless network"
|
||||||
msgstr "L’authentification est requise par le réseau sans fil"
|
msgstr "L’authentification est requise par le réseau sans fil"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:660
|
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:665
|
||||||
#, javascript-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 "
|
||||||
@@ -947,7 +947,7 @@ msgstr ""
|
|||||||
"Il faut un mot de passe ou une clé de chiffrement pour accéder au réseau "
|
"Il faut un mot de passe ou une clé de chiffrement pour accéder au réseau "
|
||||||
"sans fil « %s »"
|
"sans fil « %s »"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:663
|
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:668
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
msgstr "Authentification filaire 802.1X"
|
msgstr "Authentification filaire 802.1X"
|
||||||
|
|
||||||
@@ -955,15 +955,15 @@ msgstr "Authentification filaire 802.1X"
|
|||||||
msgid "Network name: "
|
msgid "Network name: "
|
||||||
msgstr "Nom du réseau : "
|
msgstr "Nom du réseau : "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:667
|
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:672
|
||||||
msgid "DSL authentication"
|
msgid "DSL authentication"
|
||||||
msgstr "Authentification DSL"
|
msgstr "Authentification DSL"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:673
|
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:678
|
||||||
msgid "PIN code required"
|
msgid "PIN code required"
|
||||||
msgstr "Code PIN requis"
|
msgstr "Code PIN requis"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:674
|
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:679
|
||||||
msgid "PIN code is needed for the mobile broadband device"
|
msgid "PIN code is needed for the mobile broadband device"
|
||||||
msgstr "Un code PIN est nécessaire pour les connexions mobiles"
|
msgstr "Un code PIN est nécessaire pour les connexions mobiles"
|
||||||
|
|
||||||
@@ -971,17 +971,17 @@ msgstr "Un code PIN est nécessaire pour les connexions mobiles"
|
|||||||
msgid "PIN: "
|
msgid "PIN: "
|
||||||
msgstr "PIN : "
|
msgstr "PIN : "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:680
|
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:685
|
||||||
msgid "Mobile broadband network password"
|
msgid "Mobile broadband network password"
|
||||||
msgstr "Mot de passe de la connexion mobile"
|
msgstr "Mot de passe de la connexion mobile"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:664
|
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:669
|
||||||
#: js/ui/components/networkAgent.js:668 js/ui/components/networkAgent.js:681
|
#: js/ui/components/networkAgent.js:673 js/ui/components/networkAgent.js:686
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "A password is required to connect to “%s”."
|
msgid "A password is required to connect to “%s”."
|
||||||
msgstr "Un mot de passe est requis pour se connecter à « %s »."
|
msgstr "Un mot de passe est requis pour se connecter à « %s »."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:648 js/ui/status/network.js:1691
|
#: js/ui/components/networkAgent.js:653 js/ui/status/network.js:1704
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Gestionnaire de réseau"
|
msgstr "Gestionnaire de réseau"
|
||||||
|
|
||||||
@@ -1001,7 +1001,7 @@ msgstr "S’authentifier"
|
|||||||
#. * 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:281 js/ui/shellMountOperation.js:327
|
#: js/ui/components/polkitAgent.js:283 js/ui/shellMountOperation.js:327
|
||||||
msgid "Sorry, that didn’t work. Please try again."
|
msgid "Sorry, that didn’t work. Please try again."
|
||||||
msgstr "Échec de l’authentification. Essayez à nouveau."
|
msgstr "Échec de l’authentification. Essayez à nouveau."
|
||||||
|
|
||||||
@@ -1344,13 +1344,13 @@ msgid "Leave On"
|
|||||||
msgstr "Laisser activé"
|
msgstr "Laisser activé"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:1281
|
#: js/ui/status/network.js:1294
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Activer"
|
msgstr "Activer"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
||||||
#: js/ui/status/network.js:1281 js/ui/status/network.js:1396
|
#: js/ui/status/network.js:1294 js/ui/status/network.js:1409
|
||||||
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
||||||
#: js/ui/status/rfkill.js:117
|
#: js/ui/status/rfkill.js:117
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
@@ -1412,7 +1412,7 @@ msgstr "Afficher la source"
|
|||||||
msgid "Web Page"
|
msgid "Web Page"
|
||||||
msgstr "Page Web"
|
msgstr "Page Web"
|
||||||
|
|
||||||
#: js/ui/messageTray.js:1493
|
#: js/ui/messageTray.js:1495
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Informations du système"
|
msgstr "Informations du système"
|
||||||
|
|
||||||
@@ -1424,6 +1424,10 @@ msgstr "Artiste inconnu"
|
|||||||
msgid "Unknown title"
|
msgid "Unknown title"
|
||||||
msgstr "Titre inconnu"
|
msgstr "Titre inconnu"
|
||||||
|
|
||||||
|
#: js/ui/osdWindow.js:32 js/ui/status/volume.js:204
|
||||||
|
msgid "Volume"
|
||||||
|
msgstr "Volume"
|
||||||
|
|
||||||
#: js/ui/overview.js:83
|
#: js/ui/overview.js:83
|
||||||
msgid "Undo"
|
msgid "Undo"
|
||||||
msgstr "Annuler"
|
msgstr "Annuler"
|
||||||
@@ -1466,42 +1470,42 @@ msgstr "Associer une touche"
|
|||||||
msgid "Done"
|
msgid "Done"
|
||||||
msgstr "Terminé"
|
msgstr "Terminé"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:740
|
#: js/ui/padOsd.js:742
|
||||||
msgid "Edit…"
|
msgid "Edit…"
|
||||||
msgstr "Édition…"
|
msgstr "Édition…"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:782 js/ui/padOsd.js:887
|
#: js/ui/padOsd.js:784 js/ui/padOsd.js:889
|
||||||
msgid "None"
|
msgid "None"
|
||||||
msgstr "Aucun"
|
msgstr "Aucun"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:841
|
#: js/ui/padOsd.js:843
|
||||||
msgid "Press a button to configure"
|
msgid "Press a button to configure"
|
||||||
msgstr "Appuyez sur un bouton pour le configurer"
|
msgstr "Appuyez sur un bouton pour le configurer"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:842
|
#: js/ui/padOsd.js:844
|
||||||
msgid "Press Esc to exit"
|
msgid "Press Esc to exit"
|
||||||
msgstr "Appuyez sur Échap. pour quitter"
|
msgstr "Appuyez sur Échap. pour quitter"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:845
|
#: js/ui/padOsd.js:847
|
||||||
msgid "Press any key to exit"
|
msgid "Press any key to exit"
|
||||||
msgstr "Appuyez sur une touche pour quitter"
|
msgstr "Appuyez sur une touche pour quitter"
|
||||||
|
|
||||||
#: js/ui/panel.js:355
|
#: js/ui/panel.js:356
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Quitter"
|
msgstr "Quitter"
|
||||||
|
|
||||||
#. 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:411
|
#: js/ui/panel.js:412
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Activités"
|
msgstr "Activités"
|
||||||
|
|
||||||
#: js/ui/panel.js:692
|
#: js/ui/panel.js:693
|
||||||
msgctxt "System menu in the top bar"
|
msgctxt "System menu in the top bar"
|
||||||
msgid "System"
|
msgid "System"
|
||||||
msgstr "Système"
|
msgstr "Système"
|
||||||
|
|
||||||
#: js/ui/panel.js:811
|
#: js/ui/panel.js:816
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Barre supérieure"
|
msgstr "Barre supérieure"
|
||||||
|
|
||||||
@@ -1510,23 +1514,23 @@ msgstr "Barre supérieure"
|
|||||||
#. "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:291
|
#: js/ui/popupMenu.js:300
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:70
|
#: js/ui/runDialog.js:74
|
||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Saisissez une commande"
|
msgstr "Saisissez une commande"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:110 js/ui/windowMenu.js:175
|
#: js/ui/runDialog.js:114 js/ui/windowMenu.js:174
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "Fermer"
|
msgstr "Fermer"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:273
|
#: js/ui/runDialog.js:278
|
||||||
msgid "Restart is not available on Wayland"
|
msgid "Restart is not available on Wayland"
|
||||||
msgstr "Le redémarrage n’est pas disponible sur Wayland"
|
msgstr "Le redémarrage n’est pas disponible sur Wayland"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:278
|
#: js/ui/runDialog.js:283
|
||||||
msgid "Restarting…"
|
msgid "Restarting…"
|
||||||
msgstr "Redémarrage…"
|
msgstr "Redémarrage…"
|
||||||
|
|
||||||
@@ -1550,7 +1554,7 @@ msgid_plural "%d new notifications"
|
|||||||
msgstr[0] "%d nouvelle notification"
|
msgstr[0] "%d nouvelle notification"
|
||||||
msgstr[1] "%d nouvelles notifications"
|
msgstr[1] "%d nouvelles notifications"
|
||||||
|
|
||||||
#: js/ui/screenShield.js:451 js/ui/status/system.js:283
|
#: js/ui/screenShield.js:451 js/ui/status/system.js:294
|
||||||
msgid "Lock"
|
msgid "Lock"
|
||||||
msgstr "Verrouiller"
|
msgstr "Verrouiller"
|
||||||
|
|
||||||
@@ -1733,7 +1737,7 @@ msgid "<unknown>"
|
|||||||
msgstr "<inconnu>"
|
msgstr "<inconnu>"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:441 js/ui/status/network.js:1310
|
#: js/ui/status/network.js:441 js/ui/status/network.js:1323
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s éteint"
|
msgstr "%s éteint"
|
||||||
@@ -1759,7 +1763,7 @@ msgid "%s Disconnecting"
|
|||||||
msgstr "Déconnexion de %s en cours"
|
msgstr "Déconnexion de %s en cours"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:459 js/ui/status/network.js:1302
|
#: js/ui/status/network.js:459 js/ui/status/network.js:1315
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
msgid "%s Connecting"
|
||||||
msgstr "Connexion de %s en cours"
|
msgstr "Connexion de %s en cours"
|
||||||
@@ -1799,7 +1803,7 @@ msgid "Mobile Broadband Settings"
|
|||||||
msgstr "Paramètres connexion mobile"
|
msgstr "Paramètres connexion mobile"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:578 js/ui/status/network.js:1307
|
#: js/ui/status/network.js:578 js/ui/status/network.js:1320
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hardware Disabled"
|
msgid "%s Hardware Disabled"
|
||||||
msgstr "Équipement %s désactivé"
|
msgstr "Équipement %s désactivé"
|
||||||
@@ -1855,81 +1859,81 @@ msgstr "Aucun réseau disponible"
|
|||||||
msgid "Use hardware switch to turn off"
|
msgid "Use hardware switch to turn off"
|
||||||
msgstr "Utiliser l’interrupteur matériel pour éteindre"
|
msgstr "Utiliser l’interrupteur matériel pour éteindre"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1173
|
#: js/ui/status/network.js:1186
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Sélectionner un réseau"
|
msgstr "Sélectionner un réseau"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1179
|
#: js/ui/status/network.js:1192
|
||||||
msgid "Wi-Fi Settings"
|
msgid "Wi-Fi Settings"
|
||||||
msgstr "Paramètres Wi-Fi"
|
msgstr "Paramètres Wi-Fi"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1298
|
#: js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hotspot Active"
|
msgid "%s Hotspot Active"
|
||||||
msgstr "Point d’accès %s actif"
|
msgstr "Point d’accès %s actif"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1313
|
#: js/ui/status/network.js:1326
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
msgstr "%s non connecté"
|
msgstr "%s non connecté"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1413
|
#: js/ui/status/network.js:1426
|
||||||
msgid "connecting…"
|
msgid "connecting…"
|
||||||
msgstr "connexion…"
|
msgstr "connexion…"
|
||||||
|
|
||||||
#. 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:1416
|
#: js/ui/status/network.js:1429
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "authentification nécessaire"
|
msgstr "authentification nécessaire"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1418
|
#: js/ui/status/network.js:1431
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "échec de connexion"
|
msgstr "échec de connexion"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1472
|
#: js/ui/status/network.js:1485
|
||||||
msgid "VPN Settings"
|
msgid "VPN Settings"
|
||||||
msgstr "Paramètres VPN"
|
msgstr "Paramètres VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1485
|
#: js/ui/status/network.js:1498
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1495
|
#: js/ui/status/network.js:1508
|
||||||
msgid "VPN Off"
|
msgid "VPN Off"
|
||||||
msgstr "VPN désactivé"
|
msgstr "VPN désactivé"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1559 js/ui/status/rfkill.js:93
|
#: js/ui/status/network.js:1572 js/ui/status/rfkill.js:93
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "Paramètres du réseau"
|
msgstr "Paramètres du réseau"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1588
|
#: js/ui/status/network.js:1601
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wired Connection"
|
msgid "%s Wired Connection"
|
||||||
msgid_plural "%s Wired Connections"
|
msgid_plural "%s Wired Connections"
|
||||||
msgstr[0] "%s connexion filaire."
|
msgstr[0] "%s connexion filaire."
|
||||||
msgstr[1] "%s connexions filaires."
|
msgstr[1] "%s connexions filaires."
|
||||||
|
|
||||||
#: js/ui/status/network.js:1592
|
#: js/ui/status/network.js:1605
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wi-Fi Connection"
|
msgid "%s Wi-Fi Connection"
|
||||||
msgid_plural "%s Wi-Fi Connections"
|
msgid_plural "%s Wi-Fi Connections"
|
||||||
msgstr[0] "%s connexion Wi-Fi."
|
msgstr[0] "%s connexion Wi-Fi."
|
||||||
msgstr[1] "%s connexions Wi-Fi."
|
msgstr[1] "%s connexions Wi-Fi."
|
||||||
|
|
||||||
#: js/ui/status/network.js:1596
|
#: js/ui/status/network.js:1609
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Modem Connection"
|
msgid "%s Modem Connection"
|
||||||
msgid_plural "%s Modem Connections"
|
msgid_plural "%s Modem Connections"
|
||||||
msgstr[0] "%s connexion à un modem."
|
msgstr[0] "%s connexion à un modem."
|
||||||
msgstr[1] "%s connexions à des modem."
|
msgstr[1] "%s connexions à des modem."
|
||||||
|
|
||||||
#: js/ui/status/network.js:1728
|
#: js/ui/status/network.js:1741
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Échec de connexion"
|
msgstr "Échec de connexion"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1729
|
#: js/ui/status/network.js:1742
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "L’activation de la connexion réseau a échoué"
|
msgstr "L’activation de la connexion réseau a échoué"
|
||||||
|
|
||||||
@@ -1980,6 +1984,14 @@ msgstr "%d∶%02d avant chargement complet (%d %%)"
|
|||||||
msgid "%d %%"
|
msgid "%d %%"
|
||||||
msgstr "%d %%"
|
msgstr "%d %%"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:46
|
||||||
|
msgid "Screen is Being Shared"
|
||||||
|
msgstr "L’écran est partagé"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:48
|
||||||
|
msgid "Turn off"
|
||||||
|
msgstr "Éteindre"
|
||||||
|
|
||||||
#. 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
|
||||||
#. changing the menu contents.
|
#. changing the menu contents.
|
||||||
@@ -1999,28 +2011,28 @@ msgstr "Fermer la session"
|
|||||||
msgid "Account Settings"
|
msgid "Account Settings"
|
||||||
msgstr "Paramètres du compte"
|
msgstr "Paramètres du compte"
|
||||||
|
|
||||||
#: js/ui/status/system.js:268
|
#: js/ui/status/system.js:279
|
||||||
msgid "Orientation Lock"
|
msgid "Orientation Lock"
|
||||||
msgstr "Verrouillage de l’orientation "
|
msgstr "Verrouillage de l’orientation "
|
||||||
|
|
||||||
#: js/ui/status/system.js:294
|
#: js/ui/status/system.js:305
|
||||||
msgid "Suspend"
|
msgid "Suspend"
|
||||||
msgstr "Mettre en veille"
|
msgstr "Mettre en veille"
|
||||||
|
|
||||||
#: js/ui/status/system.js:304
|
#: js/ui/status/system.js:315
|
||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Éteindre"
|
msgstr "Éteindre"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:294
|
#: js/ui/status/thunderbolt.js:298
|
||||||
msgid "Thunderbolt"
|
msgid "Thunderbolt"
|
||||||
msgstr "Interface Thunderbolt"
|
msgstr "Interface Thunderbolt"
|
||||||
|
|
||||||
#. we are done
|
#. we are done
|
||||||
#: js/ui/status/thunderbolt.js:350
|
#: js/ui/status/thunderbolt.js:354
|
||||||
msgid "Unknown Thunderbolt device"
|
msgid "Unknown Thunderbolt device"
|
||||||
msgstr "Périphérique Thunderbolt inconnu"
|
msgstr "Périphérique Thunderbolt inconnu"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:351
|
#: js/ui/status/thunderbolt.js:355
|
||||||
msgid ""
|
msgid ""
|
||||||
"New device has been detected while you were away. Please disconnect and "
|
"New device has been detected while you were away. Please disconnect and "
|
||||||
"reconnect the device to start using it."
|
"reconnect the device to start using it."
|
||||||
@@ -2028,24 +2040,19 @@ msgstr ""
|
|||||||
"Un nouveau périphérique a été détecté pendant votre absence. Veuillez le "
|
"Un nouveau périphérique a été détecté pendant votre absence. Veuillez le "
|
||||||
"débrancher et rebrancher avant de commencer à l’utiliser"
|
"débrancher et rebrancher avant de commencer à l’utiliser"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:356
|
#: js/ui/status/thunderbolt.js:360
|
||||||
msgid "Thunderbolt authorization error"
|
msgid "Thunderbolt authorization error"
|
||||||
msgstr "Erreur d’autorisation Thunderbolt"
|
msgstr "Erreur d’autorisation Thunderbolt"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:357
|
#: js/ui/status/thunderbolt.js:361
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
#| msgid "Could not authorize the thunderbolt device: %s"
|
|
||||||
msgid "Could not authorize the Thunderbolt device: %s"
|
msgid "Could not authorize the Thunderbolt device: %s"
|
||||||
msgstr "Impossible d’autoriser le périphérique Thunderbolt : %s"
|
msgstr "Impossible d’autoriser le périphérique Thunderbolt : %s"
|
||||||
|
|
||||||
#: js/ui/status/volume.js:128
|
#: js/ui/status/volume.js:135
|
||||||
msgid "Volume changed"
|
msgid "Volume changed"
|
||||||
msgstr "Volume modifié"
|
msgstr "Volume modifié"
|
||||||
|
|
||||||
#: js/ui/status/volume.js:170
|
|
||||||
msgid "Volume"
|
|
||||||
msgstr "Volume"
|
|
||||||
|
|
||||||
#. Translators: this is for display mirroring i.e. cloning.
|
#. Translators: this is for display mirroring i.e. cloning.
|
||||||
#. * Try to keep it under around 15 characters.
|
#. * Try to keep it under around 15 characters.
|
||||||
#.
|
#.
|
||||||
@@ -2095,22 +2102,22 @@ msgstr "Recherche"
|
|||||||
msgid "“%s” is ready"
|
msgid "“%s” is ready"
|
||||||
msgstr "« %s » est prêt"
|
msgstr "« %s » est prêt"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:72
|
#: js/ui/windowManager.js:74
|
||||||
msgid "Do you want to keep these display settings?"
|
msgid "Do you want to keep these display settings?"
|
||||||
msgstr "Voulez-vous conserver ces paramètres d’affichage ?"
|
msgstr "Voulez-vous conserver ces paramètres d’affichage ?"
|
||||||
|
|
||||||
#. 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:84
|
#: js/ui/windowManager.js:86
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Restaurer les paramètres"
|
msgstr "Restaurer les paramètres"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:87
|
#: js/ui/windowManager.js:89
|
||||||
msgid "Keep Changes"
|
msgid "Keep Changes"
|
||||||
msgstr "Conserver les modifications"
|
msgstr "Conserver les modifications"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:105
|
#: js/ui/windowManager.js:107
|
||||||
#, javascript-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"
|
||||||
@@ -2119,7 +2126,7 @@ msgstr[1] "Les paramètres seront restaurés dans %d secondes"
|
|||||||
|
|
||||||
#. Translators: This represents the size of a window. The first number is
|
#. Translators: This represents the size of a window. The first number is
|
||||||
#. * the width of the window and the second is the height.
|
#. * the width of the window and the second is the height.
|
||||||
#: js/ui/windowManager.js:660
|
#: js/ui/windowManager.js:689
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d × %d"
|
msgid "%d × %d"
|
||||||
msgstr "%d × %d"
|
msgstr "%d × %d"
|
||||||
@@ -2172,19 +2179,19 @@ msgstr "Déplacer vers l’espace de travail supérieur"
|
|||||||
msgid "Move to Workspace Down"
|
msgid "Move to Workspace Down"
|
||||||
msgstr "Déplacer vers l’espace de travail inférieur"
|
msgstr "Déplacer vers l’espace de travail inférieur"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:140
|
#: js/ui/windowMenu.js:139
|
||||||
msgid "Move to Monitor Up"
|
msgid "Move to Monitor Up"
|
||||||
msgstr "Déplacer vers l’écran du haut"
|
msgstr "Déplacer vers l’écran du haut"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:149
|
#: js/ui/windowMenu.js:148
|
||||||
msgid "Move to Monitor Down"
|
msgid "Move to Monitor Down"
|
||||||
msgstr "Déplacer vers l’écran du bas"
|
msgstr "Déplacer vers l’écran du bas"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:158
|
#: js/ui/windowMenu.js:157
|
||||||
msgid "Move to Monitor Left"
|
msgid "Move to Monitor Left"
|
||||||
msgstr "Déplacer vers l’écran de gauche"
|
msgstr "Déplacer vers l’écran de gauche"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:167
|
#: js/ui/windowMenu.js:166
|
||||||
msgid "Move to Monitor Right"
|
msgid "Move to Monitor Right"
|
||||||
msgstr "Déplacer vers l’écran de droite"
|
msgstr "Déplacer vers l’écran de droite"
|
||||||
|
|
||||||
@@ -2197,29 +2204,29 @@ msgstr "Agenda d’Evolution"
|
|||||||
msgid "evolution"
|
msgid "evolution"
|
||||||
msgstr "evolution"
|
msgstr "evolution"
|
||||||
|
|
||||||
#: src/main.c:432
|
#: src/main.c:410
|
||||||
msgid "Print version"
|
msgid "Print version"
|
||||||
msgstr "Affiche la version"
|
msgstr "Affiche la version"
|
||||||
|
|
||||||
#: src/main.c:438
|
#: src/main.c:416
|
||||||
msgid "Mode used by GDM for login screen"
|
msgid "Mode used by GDM for login screen"
|
||||||
msgstr "Mode utilisé par GDM pour l’écran de connexion"
|
msgstr "Mode utilisé par GDM pour l’écran de connexion"
|
||||||
|
|
||||||
#: src/main.c:444
|
#: src/main.c:422
|
||||||
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Utiliser un mode particulier, par ex. « gdm » pour l’écran de connexion"
|
"Utiliser un mode particulier, par ex. « gdm » pour l’écran de connexion"
|
||||||
|
|
||||||
#: src/main.c:450
|
#: src/main.c:428
|
||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "Lister les modes possibles"
|
msgstr "Lister les modes possibles"
|
||||||
|
|
||||||
#: src/shell-app.c:270
|
#: src/shell-app.c:272
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Inconnu"
|
msgstr "Inconnu"
|
||||||
|
|
||||||
#: src/shell-app.c:511
|
#: src/shell-app.c:523
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "Impossible de lancer « %s »"
|
msgstr "Impossible de lancer « %s »"
|
||||||
|
232
po/fur.po
232
po/fur.po
@@ -7,15 +7,15 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: video-subtitles master\n"
|
"Project-Id-Version: video-subtitles master\n"
|
||||||
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
||||||
"POT-Creation-Date: 2018-04-13 19:54+0000\n"
|
"POT-Creation-Date: 2018-08-01 18:08+0000\n"
|
||||||
"PO-Revision-Date: 2018-04-23 21:41+0200\n"
|
"PO-Revision-Date: 2018-08-08 06:58+0200\n"
|
||||||
"Last-Translator: Fabio Tomat <f.t.public@gmail.com>\n"
|
"Last-Translator: Fabio Tomat <f.t.public@gmail.com>\n"
|
||||||
"Language-Team: Friulian <fur@li.org>\n"
|
"Language-Team: Friulian <fur@li.org>\n"
|
||||||
"Language: fur\n"
|
"Language: fur\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"
|
||||||
"X-Generator: Poedit 2.0.6\n"
|
"X-Generator: Poedit 2.0.7\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
#: data/50-gnome-shell-system.xml:6
|
#: data/50-gnome-shell-system.xml:6
|
||||||
@@ -286,36 +286,36 @@ msgstr ""
|
|||||||
"Se vêr, nome i barcons dal spazi di lavôr curint a vegnin mostrâts intal "
|
"Se vêr, nome i barcons dal spazi di lavôr curint a vegnin mostrâts intal "
|
||||||
"seletôr. Se no, ducj i barcons a vegnin includûts."
|
"seletôr. Se no, ducj i barcons a vegnin includûts."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:197
|
#: data/org.gnome.shell.gschema.xml.in:198
|
||||||
msgid "Attach modal dialog to the parent window"
|
msgid "Attach modal dialog to the parent window"
|
||||||
msgstr "Lee il barcon modâl al barcon gjenitôr"
|
msgstr "Lee il barcon modâl al barcon gjenitôr"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:198
|
#: data/org.gnome.shell.gschema.xml.in:199
|
||||||
#: data/org.gnome.shell.gschema.xml.in:207
|
#: data/org.gnome.shell.gschema.xml.in:208
|
||||||
#: data/org.gnome.shell.gschema.xml.in:215
|
#: data/org.gnome.shell.gschema.xml.in:216
|
||||||
#: data/org.gnome.shell.gschema.xml.in:223
|
#: data/org.gnome.shell.gschema.xml.in:224
|
||||||
#: data/org.gnome.shell.gschema.xml.in:231
|
#: data/org.gnome.shell.gschema.xml.in:232
|
||||||
msgid ""
|
msgid ""
|
||||||
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Cheste clâf e sorplante chê in org.gnome.mutter cuant che al è in esecuzion "
|
"Cheste clâf e sorplante chê in org.gnome.mutter cuant che al è in esecuzion "
|
||||||
"GNOME Shell."
|
"GNOME Shell."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:206
|
#: data/org.gnome.shell.gschema.xml.in:207
|
||||||
msgid "Enable edge tiling when dropping windows on screen edges"
|
msgid "Enable edge tiling when dropping windows on screen edges"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Abilite la tasseladure sul ôr cuant che si strissine i barcons tal ôr dal "
|
"Abilite la tasseladure sul ôr cuant che si strissine i barcons tal ôr dal "
|
||||||
"visôr"
|
"visôr"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:214
|
#: data/org.gnome.shell.gschema.xml.in:215
|
||||||
msgid "Workspaces are managed dynamically"
|
msgid "Workspaces are managed dynamically"
|
||||||
msgstr "I spazis di vore a son ministrât in maniere dinamiche"
|
msgstr "I spazis di vore a son ministrât in maniere dinamiche"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:222
|
#: data/org.gnome.shell.gschema.xml.in:223
|
||||||
msgid "Workspaces only on primary monitor"
|
msgid "Workspaces only on primary monitor"
|
||||||
msgstr "Spazis di lavôr dome sul visôr principâl"
|
msgstr "Spazis di lavôr dome sul visôr principâl"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:230
|
#: data/org.gnome.shell.gschema.xml.in:231
|
||||||
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 ""
|
||||||
"Tardâ il cambiament dal focus te modalitât mouse fintant che il pontadôr no "
|
"Tardâ il cambiament dal focus te modalitât mouse fintant che il pontadôr no "
|
||||||
@@ -358,20 +358,20 @@ msgctxt "button"
|
|||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Jentre"
|
msgstr "Jentre"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:315
|
#: js/gdm/loginDialog.js:319
|
||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Selezione Session"
|
msgstr "Selezione Session"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: js/gdm/loginDialog.js:458
|
#: js/gdm/loginDialog.js:462
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "No in liste?"
|
msgstr "No in liste?"
|
||||||
|
|
||||||
#. 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
|
||||||
#: js/gdm/loginDialog.js:887
|
#: js/gdm/loginDialog.js:891
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(p.e., utent o %s)"
|
msgstr "(p.e., utent o %s)"
|
||||||
@@ -379,12 +379,12 @@ msgstr "(p.e., utent o %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:892 js/ui/components/networkAgent.js:243
|
#: js/gdm/loginDialog.js:896 js/ui/components/networkAgent.js:243
|
||||||
#: js/ui/components/networkAgent.js:261
|
#: js/ui/components/networkAgent.js:261
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Non utent:"
|
msgstr "Non utent:"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:1228
|
#: js/gdm/loginDialog.js:1234
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Barcon di acès"
|
msgstr "Barcon di acès"
|
||||||
|
|
||||||
@@ -397,7 +397,7 @@ msgstr "Erôr di autenticazion"
|
|||||||
#. as a cue to display our own message.
|
#. as a cue to display our own message.
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: js/gdm/util.js:482
|
#: js/gdm/util.js:485
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(o passe cul dêt)"
|
msgstr "(o passe cul dêt)"
|
||||||
|
|
||||||
@@ -638,23 +638,23 @@ msgstr "Dispès"
|
|||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Dutis"
|
msgstr "Dutis"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1886
|
#: js/ui/appDisplay.js:1890
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Gnûf barcon"
|
msgstr "Gnûf barcon"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1900
|
#: js/ui/appDisplay.js:1904
|
||||||
msgid "Launch using Dedicated Graphics Card"
|
msgid "Launch using Dedicated Graphics Card"
|
||||||
msgstr "Invie doprant une schede grafiche dedicade"
|
msgstr "Invie doprant une schede grafiche dedicade"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1927 js/ui/dash.js:285
|
#: js/ui/appDisplay.js:1931 js/ui/dash.js:285
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Gjave dai preferîts"
|
msgstr "Gjave dai preferîts"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1933
|
#: js/ui/appDisplay.js:1937
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Zonte tai preferîts"
|
msgstr "Zonte tai preferîts"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1943
|
#: js/ui/appDisplay.js:1947
|
||||||
msgid "Show Details"
|
msgid "Show Details"
|
||||||
msgstr "Mostre Detais"
|
msgstr "Mostre Detais"
|
||||||
|
|
||||||
@@ -684,7 +684,7 @@ msgstr "Cufis"
|
|||||||
msgid "Headset"
|
msgid "Headset"
|
||||||
msgstr "Cufis cun microfon"
|
msgstr "Cufis cun microfon"
|
||||||
|
|
||||||
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:221
|
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:255
|
||||||
msgid "Microphone"
|
msgid "Microphone"
|
||||||
msgstr "Microfon"
|
msgstr "Microfon"
|
||||||
|
|
||||||
@@ -696,7 +696,7 @@ msgstr "Cambie sfont…"
|
|||||||
msgid "Display Settings"
|
msgid "Display Settings"
|
||||||
msgstr "Impostazions visôr"
|
msgstr "Impostazions visôr"
|
||||||
|
|
||||||
#: js/ui/backgroundMenu.js:22 js/ui/status/system.js:264
|
#: js/ui/backgroundMenu.js:22
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Impostazions"
|
msgstr "Impostazions"
|
||||||
|
|
||||||
@@ -801,35 +801,35 @@ msgctxt "event list time"
|
|||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Dut il dì"
|
msgstr "Dut il dì"
|
||||||
|
|
||||||
#: js/ui/calendar.js:864
|
#: js/ui/calendar.js:866
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d di %B"
|
msgstr "%A, %d di %B"
|
||||||
|
|
||||||
#: js/ui/calendar.js:868
|
#: js/ui/calendar.js:870
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A, %d di %B dal %Y"
|
msgstr "%A, %d di %B dal %Y"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1086
|
#: js/ui/calendar.js:1100
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "Nissune notifiche"
|
msgstr "Nissune notifiche"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1089
|
#: js/ui/calendar.js:1103
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "Nissun event"
|
msgstr "Nissun event"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1117
|
#: js/ui/calendar.js:1131
|
||||||
msgid "Clear All"
|
msgid "Clear All"
|
||||||
msgstr "Nete dut"
|
msgstr "Nete dut"
|
||||||
|
|
||||||
#. Translators: %s is an application name
|
#. Translators: %s is an application name
|
||||||
#: js/ui/closeDialog.js:44
|
#: js/ui/closeDialog.js:47
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "“%s” is not responding."
|
msgid "“%s” is not responding."
|
||||||
msgstr "“%s” nol rispuint."
|
msgstr "“%s” nol rispuint."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:45
|
#: js/ui/closeDialog.js:48
|
||||||
msgid ""
|
msgid ""
|
||||||
"You may choose to wait a short while for it to continue or force the "
|
"You may choose to wait a short while for it to continue or force the "
|
||||||
"application to quit entirely."
|
"application to quit entirely."
|
||||||
@@ -837,11 +837,11 @@ msgstr ""
|
|||||||
"Si pues sielzi di spietâ un tic che al continui o sfuarçâ la aplicazion a "
|
"Si pues sielzi di spietâ un tic che al continui o sfuarçâ la aplicazion a "
|
||||||
"jessî dal dut."
|
"jessî dal dut."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:61
|
#: js/ui/closeDialog.js:64
|
||||||
msgid "Force Quit"
|
msgid "Force Quit"
|
||||||
msgstr "Sfuarce jessude"
|
msgstr "Sfuarce jessude"
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:64
|
#: js/ui/closeDialog.js:67
|
||||||
msgid "Wait"
|
msgid "Wait"
|
||||||
msgstr "Spiete"
|
msgstr "Spiete"
|
||||||
|
|
||||||
@@ -858,7 +858,7 @@ msgstr "Dispositîf esterni distacât"
|
|||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Vierç cun %s"
|
msgstr "Vierç cun %s"
|
||||||
|
|
||||||
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:295
|
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:297
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Password:"
|
msgstr "Password:"
|
||||||
|
|
||||||
@@ -895,11 +895,11 @@ msgstr "Password di clâf privade:"
|
|||||||
msgid "Service: "
|
msgid "Service: "
|
||||||
msgstr "Servizi:"
|
msgstr "Servizi:"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:659
|
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:664
|
||||||
msgid "Authentication required by wireless network"
|
msgid "Authentication required by wireless network"
|
||||||
msgstr "La rêt cence fîl e domande autenticazion"
|
msgstr "La rêt cence fîl e domande autenticazion"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:660
|
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:665
|
||||||
#, javascript-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 "
|
||||||
@@ -908,7 +908,7 @@ msgstr ""
|
|||||||
"Si scugne meti une password o une clâf di cifradure par jentrâ te rêt cence "
|
"Si scugne meti une password o une clâf di cifradure par jentrâ te rêt cence "
|
||||||
"fîl \"%s\"."
|
"fîl \"%s\"."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:663
|
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:668
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
msgstr "Autenticazion vie fîl 802.1X"
|
msgstr "Autenticazion vie fîl 802.1X"
|
||||||
|
|
||||||
@@ -916,15 +916,15 @@ msgstr "Autenticazion vie fîl 802.1X"
|
|||||||
msgid "Network name: "
|
msgid "Network name: "
|
||||||
msgstr "Non rêt:"
|
msgstr "Non rêt:"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:667
|
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:672
|
||||||
msgid "DSL authentication"
|
msgid "DSL authentication"
|
||||||
msgstr "Autenticazion DSL"
|
msgstr "Autenticazion DSL"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:673
|
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:678
|
||||||
msgid "PIN code required"
|
msgid "PIN code required"
|
||||||
msgstr "Si pretint un codiç PIN"
|
msgstr "Si pretint un codiç PIN"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:674
|
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:679
|
||||||
msgid "PIN code is needed for the mobile broadband device"
|
msgid "PIN code is needed for the mobile broadband device"
|
||||||
msgstr "Si scugne meti un codiç PIN pal dispositîf a bande largje mobil"
|
msgstr "Si scugne meti un codiç PIN pal dispositîf a bande largje mobil"
|
||||||
|
|
||||||
@@ -932,17 +932,17 @@ msgstr "Si scugne meti un codiç PIN pal dispositîf a bande largje mobil"
|
|||||||
msgid "PIN: "
|
msgid "PIN: "
|
||||||
msgstr "PIN: "
|
msgstr "PIN: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:680
|
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:685
|
||||||
msgid "Mobile broadband network password"
|
msgid "Mobile broadband network password"
|
||||||
msgstr "Passowrd rêt mobil a bande largje"
|
msgstr "Passowrd rêt mobil a bande largje"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:664
|
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:669
|
||||||
#: js/ui/components/networkAgent.js:668 js/ui/components/networkAgent.js:681
|
#: js/ui/components/networkAgent.js:673 js/ui/components/networkAgent.js:686
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "A password is required to connect to “%s”."
|
msgid "A password is required to connect to “%s”."
|
||||||
msgstr "A covente une password par tacâsi a '%s'."
|
msgstr "A covente une password par tacâsi a '%s'."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:648 js/ui/status/network.js:1691
|
#: js/ui/components/networkAgent.js:653 js/ui/status/network.js:1704
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Ministradôr di rêt"
|
msgstr "Ministradôr di rêt"
|
||||||
|
|
||||||
@@ -962,7 +962,7 @@ msgstr "Autentiche"
|
|||||||
#. * 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:281 js/ui/shellMountOperation.js:327
|
#: js/ui/components/polkitAgent.js:283 js/ui/shellMountOperation.js:327
|
||||||
msgid "Sorry, that didn’t work. Please try again."
|
msgid "Sorry, that didn’t work. Please try again."
|
||||||
msgstr "Mi displâs, no je lade drete. Prove di gnûf."
|
msgstr "Mi displâs, no je lade drete. Prove di gnûf."
|
||||||
|
|
||||||
@@ -1294,13 +1294,13 @@ msgid "Leave On"
|
|||||||
msgstr "Lasse ativât"
|
msgstr "Lasse ativât"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:1281
|
#: js/ui/status/network.js:1294
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Impie"
|
msgstr "Impie"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
||||||
#: js/ui/status/network.js:1281 js/ui/status/network.js:1396
|
#: js/ui/status/network.js:1294 js/ui/status/network.js:1409
|
||||||
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
||||||
#: js/ui/status/rfkill.js:117
|
#: js/ui/status/rfkill.js:117
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
@@ -1362,7 +1362,7 @@ msgstr "Viôt sorzint"
|
|||||||
msgid "Web Page"
|
msgid "Web Page"
|
||||||
msgstr "Pagjine Web"
|
msgstr "Pagjine Web"
|
||||||
|
|
||||||
#: js/ui/messageTray.js:1493
|
#: js/ui/messageTray.js:1495
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Informazion di sisteme"
|
msgstr "Informazion di sisteme"
|
||||||
|
|
||||||
@@ -1374,6 +1374,10 @@ msgstr "Artist no cognossût"
|
|||||||
msgid "Unknown title"
|
msgid "Unknown title"
|
||||||
msgstr "Titul no cognossût"
|
msgstr "Titul no cognossût"
|
||||||
|
|
||||||
|
#: js/ui/osdWindow.js:32 js/ui/status/volume.js:204
|
||||||
|
msgid "Volume"
|
||||||
|
msgstr "Volum"
|
||||||
|
|
||||||
#: js/ui/overview.js:83
|
#: js/ui/overview.js:83
|
||||||
msgid "Undo"
|
msgid "Undo"
|
||||||
msgstr "Anule"
|
msgstr "Anule"
|
||||||
@@ -1416,43 +1420,43 @@ msgstr "Assegne batidure"
|
|||||||
msgid "Done"
|
msgid "Done"
|
||||||
msgstr "Fat"
|
msgstr "Fat"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:740
|
#: js/ui/padOsd.js:742
|
||||||
msgid "Edit…"
|
msgid "Edit…"
|
||||||
msgstr "Modifiche…"
|
msgstr "Modifiche…"
|
||||||
|
|
||||||
# masculin o feminin
|
# masculin o feminin
|
||||||
#: js/ui/padOsd.js:782 js/ui/padOsd.js:887
|
#: js/ui/padOsd.js:784 js/ui/padOsd.js:889
|
||||||
msgid "None"
|
msgid "None"
|
||||||
msgstr "Nissune"
|
msgstr "Nissune"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:841
|
#: js/ui/padOsd.js:843
|
||||||
msgid "Press a button to configure"
|
msgid "Press a button to configure"
|
||||||
msgstr "Frache un boton par configurâ"
|
msgstr "Frache un boton par configurâ"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:842
|
#: js/ui/padOsd.js:844
|
||||||
msgid "Press Esc to exit"
|
msgid "Press Esc to exit"
|
||||||
msgstr "Frache Esc par jessî"
|
msgstr "Frache Esc par jessî"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:845
|
#: js/ui/padOsd.js:847
|
||||||
msgid "Press any key to exit"
|
msgid "Press any key to exit"
|
||||||
msgstr "Frache un tast par jessî"
|
msgstr "Frache un tast par jessî"
|
||||||
|
|
||||||
#: js/ui/panel.js:355
|
#: js/ui/panel.js:356
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Jes"
|
msgstr "Jes"
|
||||||
|
|
||||||
#. 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:411
|
#: js/ui/panel.js:412
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Ativitâts"
|
msgstr "Ativitâts"
|
||||||
|
|
||||||
#: js/ui/panel.js:692
|
#: js/ui/panel.js:693
|
||||||
msgctxt "System menu in the top bar"
|
msgctxt "System menu in the top bar"
|
||||||
msgid "System"
|
msgid "System"
|
||||||
msgstr "Sisteme"
|
msgstr "Sisteme"
|
||||||
|
|
||||||
#: js/ui/panel.js:811
|
#: js/ui/panel.js:816
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Sbare parsore"
|
msgstr "Sbare parsore"
|
||||||
|
|
||||||
@@ -1461,24 +1465,24 @@ msgstr "Sbare parsore"
|
|||||||
#. "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:291
|
#: js/ui/popupMenu.js:300
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:70
|
#: js/ui/runDialog.js:74
|
||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Scrîf un comant"
|
msgstr "Scrîf un comant"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:110 js/ui/windowMenu.js:175
|
#: js/ui/runDialog.js:114 js/ui/windowMenu.js:174
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "Siere"
|
msgstr "Siere"
|
||||||
|
|
||||||
# torne invie o torne tache
|
# torne invie o torne tache
|
||||||
#: js/ui/runDialog.js:273
|
#: js/ui/runDialog.js:278
|
||||||
msgid "Restart is not available on Wayland"
|
msgid "Restart is not available on Wayland"
|
||||||
msgstr "Il tornâ a tacâ nol è disponibil in Wayland"
|
msgstr "Il tornâ a tacâ nol è disponibil in Wayland"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:278
|
#: js/ui/runDialog.js:283
|
||||||
msgid "Restarting…"
|
msgid "Restarting…"
|
||||||
msgstr "Daûr a tornâ a inviâ…"
|
msgstr "Daûr a tornâ a inviâ…"
|
||||||
|
|
||||||
@@ -1502,7 +1506,7 @@ msgid_plural "%d new notifications"
|
|||||||
msgstr[0] "%d gnove notifiche"
|
msgstr[0] "%d gnove notifiche"
|
||||||
msgstr[1] "%d gnovis modifichis"
|
msgstr[1] "%d gnovis modifichis"
|
||||||
|
|
||||||
#: js/ui/screenShield.js:451 js/ui/status/system.js:283
|
#: js/ui/screenShield.js:451 js/ui/status/system.js:294
|
||||||
msgid "Lock"
|
msgid "Lock"
|
||||||
msgstr "Bloche"
|
msgstr "Bloche"
|
||||||
|
|
||||||
@@ -1686,7 +1690,7 @@ msgid "<unknown>"
|
|||||||
msgstr "<no cognossût>"
|
msgstr "<no cognossût>"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:441 js/ui/status/network.js:1310
|
#: js/ui/status/network.js:441 js/ui/status/network.js:1323
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s distudât"
|
msgstr "%s distudât"
|
||||||
@@ -1712,7 +1716,7 @@ msgid "%s Disconnecting"
|
|||||||
msgstr "%s daûr a disconeti"
|
msgstr "%s daûr a disconeti"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:459 js/ui/status/network.js:1302
|
#: js/ui/status/network.js:459 js/ui/status/network.js:1315
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
msgid "%s Connecting"
|
||||||
msgstr "%s in conession"
|
msgstr "%s in conession"
|
||||||
@@ -1752,7 +1756,7 @@ msgid "Mobile Broadband Settings"
|
|||||||
msgstr "Impostazions bande largje mobil"
|
msgstr "Impostazions bande largje mobil"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:578 js/ui/status/network.js:1307
|
#: js/ui/status/network.js:578 js/ui/status/network.js:1320
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hardware Disabled"
|
msgid "%s Hardware Disabled"
|
||||||
msgstr "%s disabilitât vie hardware "
|
msgstr "%s disabilitât vie hardware "
|
||||||
@@ -1808,81 +1812,81 @@ msgstr "Nissune rêt"
|
|||||||
msgid "Use hardware switch to turn off"
|
msgid "Use hardware switch to turn off"
|
||||||
msgstr "Dopre interutôr fisic par distudâ"
|
msgstr "Dopre interutôr fisic par distudâ"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1173
|
#: js/ui/status/network.js:1186
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Selezione rêt"
|
msgstr "Selezione rêt"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1179
|
#: js/ui/status/network.js:1192
|
||||||
msgid "Wi-Fi Settings"
|
msgid "Wi-Fi Settings"
|
||||||
msgstr "Impostazions Wi-Fi"
|
msgstr "Impostazions Wi-Fi"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1298
|
#: js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hotspot Active"
|
msgid "%s Hotspot Active"
|
||||||
msgstr "Hotspot %s atîf"
|
msgstr "Hotspot %s atîf"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1313
|
#: js/ui/status/network.js:1326
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
msgstr "%s distacât"
|
msgstr "%s distacât"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1413
|
#: js/ui/status/network.js:1426
|
||||||
msgid "connecting…"
|
msgid "connecting…"
|
||||||
msgstr "daûr a coneti…"
|
msgstr "daûr a coneti…"
|
||||||
|
|
||||||
#. 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:1416
|
#: js/ui/status/network.js:1429
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "autenticazion necessarie"
|
msgstr "autenticazion necessarie"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1418
|
#: js/ui/status/network.js:1431
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "conession falide"
|
msgstr "conession falide"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1472
|
#: js/ui/status/network.js:1485
|
||||||
msgid "VPN Settings"
|
msgid "VPN Settings"
|
||||||
msgstr "Impostazions VPN"
|
msgstr "Impostazions VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1485
|
#: js/ui/status/network.js:1498
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1495
|
#: js/ui/status/network.js:1508
|
||||||
msgid "VPN Off"
|
msgid "VPN Off"
|
||||||
msgstr "VPN distudât"
|
msgstr "VPN distudât"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1559 js/ui/status/rfkill.js:93
|
#: js/ui/status/network.js:1572 js/ui/status/rfkill.js:93
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "Impostazions rêt"
|
msgstr "Impostazions rêt"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1588
|
#: js/ui/status/network.js:1601
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wired Connection"
|
msgid "%s Wired Connection"
|
||||||
msgid_plural "%s Wired Connections"
|
msgid_plural "%s Wired Connections"
|
||||||
msgstr[0] "%s conession cablade"
|
msgstr[0] "%s conession cablade"
|
||||||
msgstr[1] "%s conessions cabladis"
|
msgstr[1] "%s conessions cabladis"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1592
|
#: js/ui/status/network.js:1605
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wi-Fi Connection"
|
msgid "%s Wi-Fi Connection"
|
||||||
msgid_plural "%s Wi-Fi Connections"
|
msgid_plural "%s Wi-Fi Connections"
|
||||||
msgstr[0] "%s conession cence fîi"
|
msgstr[0] "%s conession cence fîi"
|
||||||
msgstr[1] "%s conessions cence fîi"
|
msgstr[1] "%s conessions cence fîi"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1596
|
#: js/ui/status/network.js:1609
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Modem Connection"
|
msgid "%s Modem Connection"
|
||||||
msgid_plural "%s Modem Connections"
|
msgid_plural "%s Modem Connections"
|
||||||
msgstr[0] "%s conession modem"
|
msgstr[0] "%s conession modem"
|
||||||
msgstr[1] "%s conessions modem"
|
msgstr[1] "%s conessions modem"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1728
|
#: js/ui/status/network.js:1741
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Conession falide"
|
msgstr "Conession falide"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1729
|
#: js/ui/status/network.js:1742
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Ativazion de conession di rêt falide"
|
msgstr "Ativazion de conession di rêt falide"
|
||||||
|
|
||||||
@@ -1933,6 +1937,14 @@ msgstr "%d∶%02d par jessi plene (%d%%)"
|
|||||||
msgid "%d %%"
|
msgid "%d %%"
|
||||||
msgstr "%d %%"
|
msgstr "%d %%"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:46
|
||||||
|
msgid "Screen is Being Shared"
|
||||||
|
msgstr "Il schermi al è condividût"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:48
|
||||||
|
msgid "Turn off"
|
||||||
|
msgstr "Distude"
|
||||||
|
|
||||||
#. 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
|
||||||
#. changing the menu contents.
|
#. changing the menu contents.
|
||||||
@@ -1952,28 +1964,28 @@ msgstr "Jes"
|
|||||||
msgid "Account Settings"
|
msgid "Account Settings"
|
||||||
msgstr "Impostazions account"
|
msgstr "Impostazions account"
|
||||||
|
|
||||||
#: js/ui/status/system.js:268
|
#: js/ui/status/system.js:279
|
||||||
msgid "Orientation Lock"
|
msgid "Orientation Lock"
|
||||||
msgstr "Bloc Orientament"
|
msgstr "Bloc Orientament"
|
||||||
|
|
||||||
#: js/ui/status/system.js:294
|
#: js/ui/status/system.js:305
|
||||||
msgid "Suspend"
|
msgid "Suspend"
|
||||||
msgstr "Sospindi"
|
msgstr "Sospindi"
|
||||||
|
|
||||||
#: js/ui/status/system.js:304
|
#: js/ui/status/system.js:315
|
||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Distude"
|
msgstr "Distude"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:294
|
#: js/ui/status/thunderbolt.js:298
|
||||||
msgid "Thunderbolt"
|
msgid "Thunderbolt"
|
||||||
msgstr "Thunderbolt"
|
msgstr "Thunderbolt"
|
||||||
|
|
||||||
#. we are done
|
#. we are done
|
||||||
#: js/ui/status/thunderbolt.js:350
|
#: js/ui/status/thunderbolt.js:354
|
||||||
msgid "Unknown Thunderbolt device"
|
msgid "Unknown Thunderbolt device"
|
||||||
msgstr "Dispositîf Thunderbolt no cognossût"
|
msgstr "Dispositîf Thunderbolt no cognossût"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:351
|
#: js/ui/status/thunderbolt.js:355
|
||||||
msgid ""
|
msgid ""
|
||||||
"New device has been detected while you were away. Please disconnect and "
|
"New device has been detected while you were away. Please disconnect and "
|
||||||
"reconnect the device to start using it."
|
"reconnect the device to start using it."
|
||||||
@@ -1981,23 +1993,19 @@ msgstr ""
|
|||||||
"Un gnûf dispositîf al è stât rilevât intant che tu jeris vie. Par plasê "
|
"Un gnûf dispositîf al è stât rilevât intant che tu jeris vie. Par plasê "
|
||||||
"disconet e torne conet il dispositîf par tacâ a doprâlu."
|
"disconet e torne conet il dispositîf par tacâ a doprâlu."
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:356
|
#: js/ui/status/thunderbolt.js:360
|
||||||
msgid "Thunderbolt authorization error"
|
msgid "Thunderbolt authorization error"
|
||||||
msgstr "Erôr di autorizazion di Thunderbolt"
|
msgstr "Erôr di autorizazion di Thunderbolt"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:357
|
#: js/ui/status/thunderbolt.js:361
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Could not authorize the Thunderbolt device: %s"
|
msgid "Could not authorize the Thunderbolt device: %s"
|
||||||
msgstr "Impussibil autorizâ il dispositîf Thunderbolt: %s"
|
msgstr "Impussibil autorizâ il dispositîf Thunderbolt: %s"
|
||||||
|
|
||||||
#: js/ui/status/volume.js:128
|
#: js/ui/status/volume.js:135
|
||||||
msgid "Volume changed"
|
msgid "Volume changed"
|
||||||
msgstr "Volum modificât"
|
msgstr "Volum modificât"
|
||||||
|
|
||||||
#: js/ui/status/volume.js:170
|
|
||||||
msgid "Volume"
|
|
||||||
msgstr "Volum"
|
|
||||||
|
|
||||||
#. Translators: this is for display mirroring i.e. cloning.
|
#. Translators: this is for display mirroring i.e. cloning.
|
||||||
#. * Try to keep it under around 15 characters.
|
#. * Try to keep it under around 15 characters.
|
||||||
#.
|
#.
|
||||||
@@ -2047,22 +2055,22 @@ msgstr "Cîr"
|
|||||||
msgid "“%s” is ready"
|
msgid "“%s” is ready"
|
||||||
msgstr "“%s” al è pront"
|
msgstr "“%s” al è pront"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:72
|
#: js/ui/windowManager.js:74
|
||||||
msgid "Do you want to keep these display settings?"
|
msgid "Do you want to keep these display settings?"
|
||||||
msgstr "Vûstu tignî chestis impostazions di visôr?"
|
msgstr "Vûstu tignî chestis impostazions di visôr?"
|
||||||
|
|
||||||
#. 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:84
|
#: js/ui/windowManager.js:86
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Ripristine impostazions"
|
msgstr "Ripristine impostazions"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:87
|
#: js/ui/windowManager.js:89
|
||||||
msgid "Keep Changes"
|
msgid "Keep Changes"
|
||||||
msgstr "Ten lis modifichis"
|
msgstr "Ten lis modifichis"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:105
|
#: js/ui/windowManager.js:107
|
||||||
#, javascript-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"
|
||||||
@@ -2073,7 +2081,7 @@ msgstr[1] ""
|
|||||||
|
|
||||||
#. Translators: This represents the size of a window. The first number is
|
#. Translators: This represents the size of a window. The first number is
|
||||||
#. * the width of the window and the second is the height.
|
#. * the width of the window and the second is the height.
|
||||||
#: js/ui/windowManager.js:660
|
#: js/ui/windowManager.js:689
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d × %d"
|
msgid "%d × %d"
|
||||||
msgstr "%d × %d"
|
msgstr "%d × %d"
|
||||||
@@ -2126,19 +2134,19 @@ msgstr "Sposte tal spazi di lavôr Parsore"
|
|||||||
msgid "Move to Workspace Down"
|
msgid "Move to Workspace Down"
|
||||||
msgstr "Sposte tal spazi di lavôr Disot"
|
msgstr "Sposte tal spazi di lavôr Disot"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:140
|
#: js/ui/windowMenu.js:139
|
||||||
msgid "Move to Monitor Up"
|
msgid "Move to Monitor Up"
|
||||||
msgstr "Sposte tal visôr parsore"
|
msgstr "Sposte tal visôr parsore"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:149
|
#: js/ui/windowMenu.js:148
|
||||||
msgid "Move to Monitor Down"
|
msgid "Move to Monitor Down"
|
||||||
msgstr "Sposte tal visôr disot"
|
msgstr "Sposte tal visôr disot"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:158
|
#: js/ui/windowMenu.js:157
|
||||||
msgid "Move to Monitor Left"
|
msgid "Move to Monitor Left"
|
||||||
msgstr "Sposte tal visôr a çampe"
|
msgstr "Sposte tal visôr a çampe"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:167
|
#: js/ui/windowMenu.js:166
|
||||||
msgid "Move to Monitor Right"
|
msgid "Move to Monitor Right"
|
||||||
msgstr "Sposte tal visôr a drete"
|
msgstr "Sposte tal visôr a drete"
|
||||||
|
|
||||||
@@ -2151,28 +2159,28 @@ msgstr "Calendari di Evolution"
|
|||||||
msgid "evolution"
|
msgid "evolution"
|
||||||
msgstr "evolution"
|
msgstr "evolution"
|
||||||
|
|
||||||
#: src/main.c:432
|
#: src/main.c:410
|
||||||
msgid "Print version"
|
msgid "Print version"
|
||||||
msgstr "Stampe version"
|
msgstr "Stampe version"
|
||||||
|
|
||||||
#: src/main.c:438
|
#: src/main.c:416
|
||||||
msgid "Mode used by GDM for login screen"
|
msgid "Mode used by GDM for login screen"
|
||||||
msgstr "Modalitât doprade da GDM pe videade di acès"
|
msgstr "Modalitât doprade da GDM pe videade di acès"
|
||||||
|
|
||||||
#: src/main.c:444
|
#: src/main.c:422
|
||||||
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
||||||
msgstr "Dopre une modalitât specifiche, par esempli “gdm” pe videade di acès"
|
msgstr "Dopre une modalitât specifiche, par esempli “gdm” pe videade di acès"
|
||||||
|
|
||||||
#: src/main.c:450
|
#: src/main.c:428
|
||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "Liste modalitâts pussibilis"
|
msgstr "Liste modalitâts pussibilis"
|
||||||
|
|
||||||
#: src/shell-app.c:270
|
#: src/shell-app.c:272
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "No cognossût"
|
msgstr "No cognossût"
|
||||||
|
|
||||||
#: src/shell-app.c:511
|
#: src/shell-app.c:523
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "No soi rivât a eseguî '%s'"
|
msgstr "No soi rivât a eseguî '%s'"
|
||||||
|
160
po/id.po
160
po/id.po
@@ -9,8 +9,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell master\n"
|
"Project-Id-Version: gnome-shell master\n"
|
||||||
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
||||||
"POT-Creation-Date: 2018-04-13 19:54+0000\n"
|
"POT-Creation-Date: 2018-07-24 18:34+0000\n"
|
||||||
"PO-Revision-Date: 2018-04-23 13:41+0700\n"
|
"PO-Revision-Date: 2018-07-25 16:01+0700\n"
|
||||||
"Last-Translator: Kukuh Syafaat <kukuhsyafaat@gnome.org>\n"
|
"Last-Translator: Kukuh Syafaat <kukuhsyafaat@gnome.org>\n"
|
||||||
"Language-Team: Indonesian <gnome-l10n-id@googlegroups.com>\n"
|
"Language-Team: Indonesian <gnome-l10n-id@googlegroups.com>\n"
|
||||||
"Language: id\n"
|
"Language: id\n"
|
||||||
@@ -360,20 +360,20 @@ msgctxt "button"
|
|||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Masuk"
|
msgstr "Masuk"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:315
|
#: js/gdm/loginDialog.js:319
|
||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Pilih Sesi"
|
msgstr "Pilih Sesi"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: js/gdm/loginDialog.js:458
|
#: js/gdm/loginDialog.js:462
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Tak masuk daftar?"
|
msgstr "Tak masuk daftar?"
|
||||||
|
|
||||||
#. 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
|
||||||
#: js/gdm/loginDialog.js:887
|
#: js/gdm/loginDialog.js:891
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(cth., pengguna dari %s)"
|
msgstr "(cth., pengguna dari %s)"
|
||||||
@@ -381,12 +381,12 @@ msgstr "(cth., pengguna dari %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:892 js/ui/components/networkAgent.js:243
|
#: js/gdm/loginDialog.js:896 js/ui/components/networkAgent.js:243
|
||||||
#: js/ui/components/networkAgent.js:261
|
#: js/ui/components/networkAgent.js:261
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Nama pengguna: "
|
msgstr "Nama pengguna: "
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:1228
|
#: js/gdm/loginDialog.js:1234
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Jendela Log Masuk"
|
msgstr "Jendela Log Masuk"
|
||||||
|
|
||||||
@@ -399,7 +399,7 @@ msgstr "Galat otentikasi"
|
|||||||
#. as a cue to display our own message.
|
#. as a cue to display our own message.
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: js/gdm/util.js:482
|
#: js/gdm/util.js:485
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(atau gesekkan jari)"
|
msgstr "(atau gesekkan jari)"
|
||||||
|
|
||||||
@@ -634,23 +634,23 @@ msgstr "Sering"
|
|||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Semua"
|
msgstr "Semua"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1886
|
#: js/ui/appDisplay.js:1890
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Jendela Baru"
|
msgstr "Jendela Baru"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1900
|
#: js/ui/appDisplay.js:1904
|
||||||
msgid "Launch using Dedicated Graphics Card"
|
msgid "Launch using Dedicated Graphics Card"
|
||||||
msgstr "Luncurkan menggunakan Kartu Grafis Terdedikasi"
|
msgstr "Luncurkan menggunakan Kartu Grafis Terdedikasi"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1927 js/ui/dash.js:285
|
#: js/ui/appDisplay.js:1931 js/ui/dash.js:285
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Hapus dari Favorit"
|
msgstr "Hapus dari Favorit"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1933
|
#: js/ui/appDisplay.js:1937
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Tambah ke Favorit"
|
msgstr "Tambah ke Favorit"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1943
|
#: js/ui/appDisplay.js:1947
|
||||||
msgid "Show Details"
|
msgid "Show Details"
|
||||||
msgstr "Tampilkan Rincian"
|
msgstr "Tampilkan Rincian"
|
||||||
|
|
||||||
@@ -797,35 +797,35 @@ msgctxt "event list time"
|
|||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Sepanjang Hari"
|
msgstr "Sepanjang Hari"
|
||||||
|
|
||||||
#: js/ui/calendar.js:864
|
#: js/ui/calendar.js:866
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#: js/ui/calendar.js:868
|
#: js/ui/calendar.js:870
|
||||||
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"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1086
|
#: js/ui/calendar.js:1100
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "Tak Ada Pemberitahuan"
|
msgstr "Tak Ada Pemberitahuan"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1089
|
#: js/ui/calendar.js:1103
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "Tak Ada Kejadian"
|
msgstr "Tak Ada Kejadian"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1117
|
#: js/ui/calendar.js:1131
|
||||||
msgid "Clear All"
|
msgid "Clear All"
|
||||||
msgstr "Bersihkan Semua"
|
msgstr "Bersihkan Semua"
|
||||||
|
|
||||||
#. Translators: %s is an application name
|
#. Translators: %s is an application name
|
||||||
#: js/ui/closeDialog.js:44
|
#: js/ui/closeDialog.js:47
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "“%s” is not responding."
|
msgid "“%s” is not responding."
|
||||||
msgstr "\"%s\" tidak merespon."
|
msgstr "\"%s\" tidak merespon."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:45
|
#: js/ui/closeDialog.js:48
|
||||||
msgid ""
|
msgid ""
|
||||||
"You may choose to wait a short while for it to continue or force the "
|
"You may choose to wait a short while for it to continue or force the "
|
||||||
"application to quit entirely."
|
"application to quit entirely."
|
||||||
@@ -833,11 +833,11 @@ msgstr ""
|
|||||||
"Anda dapat memilih untuk menunggu sebentar untuk melanjutkan atau memaksa "
|
"Anda dapat memilih untuk menunggu sebentar untuk melanjutkan atau memaksa "
|
||||||
"aplikasi keluar."
|
"aplikasi keluar."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:61
|
#: js/ui/closeDialog.js:64
|
||||||
msgid "Force Quit"
|
msgid "Force Quit"
|
||||||
msgstr "Tutup Paksa"
|
msgstr "Tutup Paksa"
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:64
|
#: js/ui/closeDialog.js:67
|
||||||
msgid "Wait"
|
msgid "Wait"
|
||||||
msgstr "Tunggu"
|
msgstr "Tunggu"
|
||||||
|
|
||||||
@@ -854,7 +854,7 @@ msgstr "Drive eksternal terputus"
|
|||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Buka dengan %s"
|
msgstr "Buka dengan %s"
|
||||||
|
|
||||||
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:295
|
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:297
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Sandi:"
|
msgstr "Sandi:"
|
||||||
|
|
||||||
@@ -891,11 +891,11 @@ msgstr "Sandi kunci privat: "
|
|||||||
msgid "Service: "
|
msgid "Service: "
|
||||||
msgstr "Layanan: "
|
msgstr "Layanan: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:659
|
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:664
|
||||||
msgid "Authentication required by wireless network"
|
msgid "Authentication required by wireless network"
|
||||||
msgstr "Otentikasi diperlukan oleh jaringan nirkabel"
|
msgstr "Otentikasi diperlukan oleh jaringan nirkabel"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:660
|
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:665
|
||||||
#, javascript-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 "
|
||||||
@@ -904,7 +904,7 @@ msgstr ""
|
|||||||
"Sandi atau kunci enkripsi diperlukan untuk mengakses jaringan nirkabel \"%s"
|
"Sandi atau kunci enkripsi diperlukan untuk mengakses jaringan nirkabel \"%s"
|
||||||
"\"."
|
"\"."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:663
|
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:668
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
msgstr "Otentikasi 802.1X kabel"
|
msgstr "Otentikasi 802.1X kabel"
|
||||||
|
|
||||||
@@ -912,15 +912,15 @@ msgstr "Otentikasi 802.1X kabel"
|
|||||||
msgid "Network name: "
|
msgid "Network name: "
|
||||||
msgstr "Nama jaringan: "
|
msgstr "Nama jaringan: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:667
|
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:672
|
||||||
msgid "DSL authentication"
|
msgid "DSL authentication"
|
||||||
msgstr "Otentikasi DSL"
|
msgstr "Otentikasi DSL"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:673
|
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:678
|
||||||
msgid "PIN code required"
|
msgid "PIN code required"
|
||||||
msgstr "Perlu kode PIN"
|
msgstr "Perlu kode PIN"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:674
|
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:679
|
||||||
msgid "PIN code is needed for the mobile broadband device"
|
msgid "PIN code is needed for the mobile broadband device"
|
||||||
msgstr "Kode PIN diperlukan untuk perangkat data seluler"
|
msgstr "Kode PIN diperlukan untuk perangkat data seluler"
|
||||||
|
|
||||||
@@ -928,17 +928,17 @@ msgstr "Kode PIN diperlukan untuk perangkat data seluler"
|
|||||||
msgid "PIN: "
|
msgid "PIN: "
|
||||||
msgstr "PIN: "
|
msgstr "PIN: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:680
|
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:685
|
||||||
msgid "Mobile broadband network password"
|
msgid "Mobile broadband network password"
|
||||||
msgstr "Sandi jaringan data seluler"
|
msgstr "Sandi jaringan data seluler"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:664
|
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:669
|
||||||
#: js/ui/components/networkAgent.js:668 js/ui/components/networkAgent.js:681
|
#: js/ui/components/networkAgent.js:673 js/ui/components/networkAgent.js:686
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "A password is required to connect to “%s”."
|
msgid "A password is required to connect to “%s”."
|
||||||
msgstr "Perlu suatu sandi untuk menyambung ke \"%s\"."
|
msgstr "Perlu suatu sandi untuk menyambung ke \"%s\"."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:648 js/ui/status/network.js:1691
|
#: js/ui/components/networkAgent.js:653 js/ui/status/network.js:1704
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Manajer Jaringan"
|
msgstr "Manajer Jaringan"
|
||||||
|
|
||||||
@@ -958,7 +958,7 @@ msgstr "Otentikasi"
|
|||||||
#. * 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:281 js/ui/shellMountOperation.js:327
|
#: js/ui/components/polkitAgent.js:283 js/ui/shellMountOperation.js:327
|
||||||
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."
|
||||||
|
|
||||||
@@ -1281,13 +1281,13 @@ msgid "Leave On"
|
|||||||
msgstr "Biarkan Menyala"
|
msgstr "Biarkan Menyala"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:1281
|
#: js/ui/status/network.js:1294
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Nyalakan"
|
msgstr "Nyalakan"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
||||||
#: js/ui/status/network.js:1281 js/ui/status/network.js:1396
|
#: js/ui/status/network.js:1294 js/ui/status/network.js:1409
|
||||||
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
||||||
#: js/ui/status/rfkill.js:117
|
#: js/ui/status/rfkill.js:117
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
@@ -1349,7 +1349,7 @@ msgstr "Tilik Sumber"
|
|||||||
msgid "Web Page"
|
msgid "Web Page"
|
||||||
msgstr "Halaman Web"
|
msgstr "Halaman Web"
|
||||||
|
|
||||||
#: js/ui/messageTray.js:1493
|
#: js/ui/messageTray.js:1495
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Informasi Sistem"
|
msgstr "Informasi Sistem"
|
||||||
|
|
||||||
@@ -1423,22 +1423,22 @@ msgstr "Tekan Esc untuk keluar"
|
|||||||
msgid "Press any key to exit"
|
msgid "Press any key to exit"
|
||||||
msgstr "Tekan tombol apa saja untuk keluar"
|
msgstr "Tekan tombol apa saja untuk keluar"
|
||||||
|
|
||||||
#: js/ui/panel.js:355
|
#: js/ui/panel.js:356
|
||||||
msgid "Quit"
|
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:411
|
#: js/ui/panel.js:412
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Aktivitas"
|
msgstr "Aktivitas"
|
||||||
|
|
||||||
#: js/ui/panel.js:692
|
#: js/ui/panel.js:693
|
||||||
msgctxt "System menu in the top bar"
|
msgctxt "System menu in the top bar"
|
||||||
msgid "System"
|
msgid "System"
|
||||||
msgstr "Sistem"
|
msgstr "Sistem"
|
||||||
|
|
||||||
#: js/ui/panel.js:811
|
#: js/ui/panel.js:816
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Bar Atas"
|
msgstr "Bar Atas"
|
||||||
|
|
||||||
@@ -1448,7 +1448,7 @@ msgstr "Bar Atas"
|
|||||||
#. "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:291
|
#: js/ui/popupMenu.js:300
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
@@ -1456,15 +1456,15 @@ msgstr "toggle-switch-intl"
|
|||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Ketikkan Perintah"
|
msgstr "Ketikkan Perintah"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:110 js/ui/windowMenu.js:175
|
#: js/ui/runDialog.js:110 js/ui/windowMenu.js:174
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "Tutup"
|
msgstr "Tutup"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:273
|
#: js/ui/runDialog.js:274
|
||||||
msgid "Restart is not available on Wayland"
|
msgid "Restart is not available on Wayland"
|
||||||
msgstr "Memulai ulang tidak tersedia di Wayland"
|
msgstr "Memulai ulang tidak tersedia di Wayland"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:278
|
#: js/ui/runDialog.js:279
|
||||||
msgid "Restarting…"
|
msgid "Restarting…"
|
||||||
msgstr "Memulai ulang..."
|
msgstr "Memulai ulang..."
|
||||||
|
|
||||||
@@ -1665,7 +1665,7 @@ msgid "<unknown>"
|
|||||||
msgstr "<tak dikenal>"
|
msgstr "<tak dikenal>"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:441 js/ui/status/network.js:1310
|
#: js/ui/status/network.js:441 js/ui/status/network.js:1323
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s Mati"
|
msgstr "%s Mati"
|
||||||
@@ -1691,7 +1691,7 @@ msgid "%s Disconnecting"
|
|||||||
msgstr "%s Memutus"
|
msgstr "%s Memutus"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:459 js/ui/status/network.js:1302
|
#: js/ui/status/network.js:459 js/ui/status/network.js:1315
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
msgid "%s Connecting"
|
||||||
msgstr "%s Menyambung"
|
msgstr "%s Menyambung"
|
||||||
@@ -1731,7 +1731,7 @@ msgid "Mobile Broadband Settings"
|
|||||||
msgstr "Pengaturan Data Seluler"
|
msgstr "Pengaturan Data Seluler"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:578 js/ui/status/network.js:1307
|
#: js/ui/status/network.js:578 js/ui/status/network.js:1320
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hardware Disabled"
|
msgid "%s Hardware Disabled"
|
||||||
msgstr "%s Perangkat Keras Dinonaktifkan"
|
msgstr "%s Perangkat Keras Dinonaktifkan"
|
||||||
@@ -1787,78 +1787,78 @@ msgstr "Tiada Jaringan"
|
|||||||
msgid "Use hardware switch to turn off"
|
msgid "Use hardware switch to turn off"
|
||||||
msgstr "Pakai saklar perangkat keras untuk mematikan"
|
msgstr "Pakai saklar perangkat keras untuk mematikan"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1173
|
#: js/ui/status/network.js:1186
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Pilih Jaringan"
|
msgstr "Pilih Jaringan"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1179
|
#: js/ui/status/network.js:1192
|
||||||
msgid "Wi-Fi Settings"
|
msgid "Wi-Fi Settings"
|
||||||
msgstr "Pengaturan Wi-Fi"
|
msgstr "Pengaturan Wi-Fi"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1298
|
#: js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hotspot Active"
|
msgid "%s Hotspot Active"
|
||||||
msgstr "%s Hotspot Aktif"
|
msgstr "%s Hotspot Aktif"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1313
|
#: js/ui/status/network.js:1326
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
msgstr "%s Tak Tersambung"
|
msgstr "%s Tak Tersambung"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1413
|
#: js/ui/status/network.js:1426
|
||||||
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:1416
|
#: js/ui/status/network.js:1429
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "diperlukan otentikasi"
|
msgstr "diperlukan otentikasi"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1418
|
#: js/ui/status/network.js:1431
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "koneksi gagal"
|
msgstr "koneksi gagal"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1472
|
#: js/ui/status/network.js:1485
|
||||||
msgid "VPN Settings"
|
msgid "VPN Settings"
|
||||||
msgstr "Pengaturan VPN"
|
msgstr "Pengaturan VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1485
|
#: js/ui/status/network.js:1498
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1495
|
#: js/ui/status/network.js:1508
|
||||||
msgid "VPN Off"
|
msgid "VPN Off"
|
||||||
msgstr "VPN Mati"
|
msgstr "VPN Mati"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1559 js/ui/status/rfkill.js:93
|
#: js/ui/status/network.js:1572 js/ui/status/rfkill.js:93
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "Pengaturan Jaringan"
|
msgstr "Pengaturan Jaringan"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1588
|
#: js/ui/status/network.js:1601
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wired Connection"
|
msgid "%s Wired Connection"
|
||||||
msgid_plural "%s Wired Connections"
|
msgid_plural "%s Wired Connections"
|
||||||
msgstr[0] "%s Koneksi Kabel"
|
msgstr[0] "%s Koneksi Kabel"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1592
|
#: js/ui/status/network.js:1605
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wi-Fi Connection"
|
msgid "%s Wi-Fi Connection"
|
||||||
msgid_plural "%s Wi-Fi Connections"
|
msgid_plural "%s Wi-Fi Connections"
|
||||||
msgstr[0] "%s Koneksi Wi-Fi"
|
msgstr[0] "%s Koneksi Wi-Fi"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1596
|
#: js/ui/status/network.js:1609
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Modem Connection"
|
msgid "%s Modem Connection"
|
||||||
msgid_plural "%s Modem Connections"
|
msgid_plural "%s Modem Connections"
|
||||||
msgstr[0] "%s Koneksi Modem"
|
msgstr[0] "%s Koneksi Modem"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1728
|
#: js/ui/status/network.js:1741
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Koneksi gagal"
|
msgstr "Koneksi gagal"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1729
|
#: js/ui/status/network.js:1742
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Aktivasi koneksi jaringan gagal"
|
msgstr "Aktivasi koneksi jaringan gagal"
|
||||||
|
|
||||||
@@ -1909,6 +1909,14 @@ msgstr "%d:%02d Sampai Penuh (%d%%)"
|
|||||||
msgid "%d %%"
|
msgid "%d %%"
|
||||||
msgstr "%d %%"
|
msgstr "%d %%"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:45
|
||||||
|
msgid "Screen is Being Shared"
|
||||||
|
msgstr "Layar Sedang Dibagi"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:47
|
||||||
|
msgid "Turn off"
|
||||||
|
msgstr "Matikan"
|
||||||
|
|
||||||
#. 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
|
||||||
#. changing the menu contents.
|
#. changing the menu contents.
|
||||||
@@ -1940,16 +1948,16 @@ msgstr "Suspensi"
|
|||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Matikan"
|
msgstr "Matikan"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:294
|
#: js/ui/status/thunderbolt.js:298
|
||||||
msgid "Thunderbolt"
|
msgid "Thunderbolt"
|
||||||
msgstr "Thunderbolt"
|
msgstr "Thunderbolt"
|
||||||
|
|
||||||
#. we are done
|
#. we are done
|
||||||
#: js/ui/status/thunderbolt.js:350
|
#: js/ui/status/thunderbolt.js:354
|
||||||
msgid "Unknown Thunderbolt device"
|
msgid "Unknown Thunderbolt device"
|
||||||
msgstr "Perangkat Thunderbolt tak dikenal"
|
msgstr "Perangkat Thunderbolt tak dikenal"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:351
|
#: js/ui/status/thunderbolt.js:355
|
||||||
msgid ""
|
msgid ""
|
||||||
"New device has been detected while you were away. Please disconnect and "
|
"New device has been detected while you were away. Please disconnect and "
|
||||||
"reconnect the device to start using it."
|
"reconnect the device to start using it."
|
||||||
@@ -1957,11 +1965,11 @@ msgstr ""
|
|||||||
"Perangkat baru telah terdeteksi saat Anda pergi. Harap lepaskan dan "
|
"Perangkat baru telah terdeteksi saat Anda pergi. Harap lepaskan dan "
|
||||||
"sambungkan kembali perangkat untuk mulai menggunakannya."
|
"sambungkan kembali perangkat untuk mulai menggunakannya."
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:356
|
#: js/ui/status/thunderbolt.js:360
|
||||||
msgid "Thunderbolt authorization error"
|
msgid "Thunderbolt authorization error"
|
||||||
msgstr "Autorisasi Thunderbolt galat"
|
msgstr "Autorisasi Thunderbolt galat"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:357
|
#: js/ui/status/thunderbolt.js:361
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Could not authorize the Thunderbolt device: %s"
|
msgid "Could not authorize the Thunderbolt device: %s"
|
||||||
msgstr "Tidak dapat mengautorisasi perangkat Thunderbolt: %s"
|
msgstr "Tidak dapat mengautorisasi perangkat Thunderbolt: %s"
|
||||||
@@ -2046,7 +2054,7 @@ msgstr[0] "Perubahan tatanan akan dikembalikan dalam %d detik"
|
|||||||
|
|
||||||
#. Translators: This represents the size of a window. The first number is
|
#. Translators: This represents the size of a window. The first number is
|
||||||
#. * the width of the window and the second is the height.
|
#. * the width of the window and the second is the height.
|
||||||
#: js/ui/windowManager.js:660
|
#: js/ui/windowManager.js:668
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d × %d"
|
msgid "%d × %d"
|
||||||
msgstr "%d × %d"
|
msgstr "%d × %d"
|
||||||
@@ -2099,19 +2107,19 @@ msgstr "Pindah ke Ruang Kerja Atas"
|
|||||||
msgid "Move to Workspace Down"
|
msgid "Move to Workspace Down"
|
||||||
msgstr "Pindah ke Ruang Kerja Bawah"
|
msgstr "Pindah ke Ruang Kerja Bawah"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:140
|
#: js/ui/windowMenu.js:139
|
||||||
msgid "Move to Monitor Up"
|
msgid "Move to Monitor Up"
|
||||||
msgstr "Pindah ke Ruang Kerja Atas"
|
msgstr "Pindah ke Ruang Kerja Atas"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:149
|
#: js/ui/windowMenu.js:148
|
||||||
msgid "Move to Monitor Down"
|
msgid "Move to Monitor Down"
|
||||||
msgstr "Pindah ke Ruang Kerja Bawah"
|
msgstr "Pindah ke Ruang Kerja Bawah"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:158
|
#: js/ui/windowMenu.js:157
|
||||||
msgid "Move to Monitor Left"
|
msgid "Move to Monitor Left"
|
||||||
msgstr "Pindahkan ke Monitor Kiri"
|
msgstr "Pindahkan ke Monitor Kiri"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:167
|
#: js/ui/windowMenu.js:166
|
||||||
msgid "Move to Monitor Right"
|
msgid "Move to Monitor Right"
|
||||||
msgstr "Pindahkan ke Monitor Kanan"
|
msgstr "Pindahkan ke Monitor Kanan"
|
||||||
|
|
||||||
@@ -2140,12 +2148,12 @@ msgstr "Menggunakan mode tertentu, mis. \"gdm\" untuk layar masuk"
|
|||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "Menampilkan mode yang mungkin"
|
msgstr "Menampilkan mode yang mungkin"
|
||||||
|
|
||||||
#: src/shell-app.c:270
|
#: src/shell-app.c:272
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Tak dikenal"
|
msgstr "Tak dikenal"
|
||||||
|
|
||||||
#: src/shell-app.c:511
|
#: src/shell-app.c:523
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "Gagal meluncurkan \"%s\""
|
msgstr "Gagal meluncurkan \"%s\""
|
||||||
|
315
po/ko.po
315
po/ko.po
@@ -14,13 +14,14 @@
|
|||||||
# - VPN: 가상사설망
|
# - VPN: 가상사설망
|
||||||
# - pairing (bluetooth 관련): 페어링
|
# - pairing (bluetooth 관련): 페어링
|
||||||
# - Wayland: 웨일랜드로 음역
|
# - Wayland: 웨일랜드로 음역
|
||||||
|
# - Night Light: 야간 모드 (gnome-control-center와 일치)
|
||||||
#
|
#
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell\n"
|
"Project-Id-Version: gnome-shell\n"
|
||||||
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
||||||
"POT-Creation-Date: 2018-02-22 09:24+0000\n"
|
"POT-Creation-Date: 2018-08-01 18:08+0000\n"
|
||||||
"PO-Revision-Date: 2018-02-25 09:21+0900\n"
|
"PO-Revision-Date: 2018-08-26 15:05+0900\n"
|
||||||
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
|
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
|
||||||
"Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
|
"Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
|
||||||
"Language: ko\n"
|
"Language: ko\n"
|
||||||
@@ -283,32 +284,32 @@ msgstr ""
|
|||||||
"참이면, 현재 작업 공간에 창이 있는 창만 창 전환 창에 표시합니다. 거짓이면 모"
|
"참이면, 현재 작업 공간에 창이 있는 창만 창 전환 창에 표시합니다. 거짓이면 모"
|
||||||
"든 창을 표시합니다."
|
"든 창을 표시합니다."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:197
|
#: data/org.gnome.shell.gschema.xml.in:198
|
||||||
msgid "Attach modal dialog to the parent window"
|
msgid "Attach modal dialog to the parent window"
|
||||||
msgstr "상위 창에 모달 대화창 붙이기"
|
msgstr "상위 창에 모달 대화창 붙이기"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:198
|
#: data/org.gnome.shell.gschema.xml.in:199
|
||||||
#: data/org.gnome.shell.gschema.xml.in:207
|
#: data/org.gnome.shell.gschema.xml.in:208
|
||||||
#: data/org.gnome.shell.gschema.xml.in:215
|
#: data/org.gnome.shell.gschema.xml.in:216
|
||||||
#: data/org.gnome.shell.gschema.xml.in:223
|
#: data/org.gnome.shell.gschema.xml.in:224
|
||||||
#: data/org.gnome.shell.gschema.xml.in:231
|
#: data/org.gnome.shell.gschema.xml.in:232
|
||||||
msgid ""
|
msgid ""
|
||||||
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
||||||
msgstr "그놈 셸을 실행할 때 org.gnome.mutter의 키 대신 사용됩니다."
|
msgstr "그놈 셸을 실행할 때 org.gnome.mutter의 키 대신 사용됩니다."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:206
|
#: data/org.gnome.shell.gschema.xml.in:207
|
||||||
msgid "Enable edge tiling when dropping windows on screen edges"
|
msgid "Enable edge tiling when dropping windows on screen edges"
|
||||||
msgstr "화면 가장자리에 창을 놓을 때 가장자리에 맞춥니다"
|
msgstr "화면 가장자리에 창을 놓을 때 가장자리에 맞춥니다"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:214
|
#: data/org.gnome.shell.gschema.xml.in:215
|
||||||
msgid "Workspaces are managed dynamically"
|
msgid "Workspaces are managed dynamically"
|
||||||
msgstr "작업 공간을 동적으로 관리"
|
msgstr "작업 공간을 동적으로 관리"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:222
|
#: data/org.gnome.shell.gschema.xml.in:223
|
||||||
msgid "Workspaces only on primary monitor"
|
msgid "Workspaces only on primary monitor"
|
||||||
msgstr "주 모니터에서만 작업 공간 사용"
|
msgstr "주 모니터에서만 작업 공간 사용"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:230
|
#: data/org.gnome.shell.gschema.xml.in:231
|
||||||
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 "마우스 포인터가 움직이지 않을 때까지 포커스 전환을 미루기"
|
||||||
|
|
||||||
@@ -327,7 +328,7 @@ msgid "There was an error loading the preferences dialog for %s:"
|
|||||||
msgstr "%s에 대한 기본 설정 대화상자를 불러오는데 오류가 발생했습니다:"
|
msgstr "%s에 대한 기본 설정 대화상자를 불러오는데 오류가 발생했습니다:"
|
||||||
|
|
||||||
#: js/gdm/authPrompt.js:147 js/ui/audioDeviceSelection.js:71
|
#: js/gdm/authPrompt.js:147 js/ui/audioDeviceSelection.js:71
|
||||||
#: js/ui/components/networkAgent.js:117 js/ui/components/polkitAgent.js:148
|
#: js/ui/components/networkAgent.js:117 js/ui/components/polkitAgent.js:153
|
||||||
#: js/ui/endSessionDialog.js:482 js/ui/extensionDownloader.js:197
|
#: js/ui/endSessionDialog.js:482 js/ui/extensionDownloader.js:197
|
||||||
#: js/ui/shellMountOperation.js:343 js/ui/status/network.js:919
|
#: js/ui/shellMountOperation.js:343 js/ui/status/network.js:919
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
@@ -347,20 +348,20 @@ msgctxt "button"
|
|||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "로그인"
|
msgstr "로그인"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:315
|
#: js/gdm/loginDialog.js:319
|
||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "세션 선택"
|
msgstr "세션 선택"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: js/gdm/loginDialog.js:458
|
#: js/gdm/loginDialog.js:462
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "목록에 없습니까?"
|
msgstr "목록에 없습니까?"
|
||||||
|
|
||||||
#. 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
|
||||||
#: js/gdm/loginDialog.js:887
|
#: js/gdm/loginDialog.js:891
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(예를 들어, 사용자 또는 %s)"
|
msgstr "(예를 들어, 사용자 또는 %s)"
|
||||||
@@ -368,12 +369,12 @@ msgstr "(예를 들어, 사용자 또는 %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:892 js/ui/components/networkAgent.js:243
|
#: js/gdm/loginDialog.js:896 js/ui/components/networkAgent.js:243
|
||||||
#: js/ui/components/networkAgent.js:261
|
#: js/ui/components/networkAgent.js:261
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "사용자 이름: "
|
msgstr "사용자 이름: "
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:1228
|
#: js/gdm/loginDialog.js:1234
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "로그인 창"
|
msgstr "로그인 창"
|
||||||
|
|
||||||
@@ -386,7 +387,7 @@ msgstr "인증 오류"
|
|||||||
#. as a cue to display our own message.
|
#. as a cue to display our own message.
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: js/gdm/util.js:482
|
#: js/gdm/util.js:485
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(또는 지문을 문지르십시오)"
|
msgstr "(또는 지문을 문지르십시오)"
|
||||||
|
|
||||||
@@ -621,33 +622,33 @@ msgstr "자주"
|
|||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "모두"
|
msgstr "모두"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1886
|
#: js/ui/appDisplay.js:1890
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "새 창"
|
msgstr "새 창"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1900
|
#: js/ui/appDisplay.js:1904
|
||||||
msgid "Launch using Dedicated Graphics Card"
|
msgid "Launch using Dedicated Graphics Card"
|
||||||
msgstr "지정한 그래픽 카드를 사용해 시작"
|
msgstr "지정한 그래픽 카드를 사용해 시작"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1927 js/ui/dash.js:285
|
#: js/ui/appDisplay.js:1931 js/ui/dash.js:285
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "즐겨찾기에서 제거"
|
msgstr "즐겨찾기에서 제거"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1933
|
#: js/ui/appDisplay.js:1937
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "즐겨찾기에 추가"
|
msgstr "즐겨찾기에 추가"
|
||||||
|
|
||||||
# 주의: "Show ..." 형태지만 보이기로 번역하지 않는다
|
# 주의: "Show ..." 형태지만 보이기로 번역하지 않는다
|
||||||
#: js/ui/appDisplay.js:1943
|
#: js/ui/appDisplay.js:1947
|
||||||
msgid "Show Details"
|
msgid "Show Details"
|
||||||
msgstr "자세히 보기"
|
msgstr "자세히 보기"
|
||||||
|
|
||||||
#: js/ui/appFavorites.js:138
|
#: js/ui/appFavorites.js:140
|
||||||
#, javascript-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:172
|
#: js/ui/appFavorites.js:174
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s 프로그램을 즐겨찾기에서 제거했습니다."
|
msgstr "%s 프로그램을 즐겨찾기에서 제거했습니다."
|
||||||
@@ -668,7 +669,7 @@ msgstr "헤드폰"
|
|||||||
msgid "Headset"
|
msgid "Headset"
|
||||||
msgstr "헤드셋"
|
msgstr "헤드셋"
|
||||||
|
|
||||||
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:221
|
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:255
|
||||||
msgid "Microphone"
|
msgid "Microphone"
|
||||||
msgstr "마이크"
|
msgstr "마이크"
|
||||||
|
|
||||||
@@ -680,7 +681,7 @@ msgstr "배경 바꾸기…"
|
|||||||
msgid "Display Settings"
|
msgid "Display Settings"
|
||||||
msgstr "디스플레이 설정"
|
msgstr "디스플레이 설정"
|
||||||
|
|
||||||
#: js/ui/backgroundMenu.js:22 js/ui/status/system.js:264
|
#: js/ui/backgroundMenu.js:22
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "설정"
|
msgstr "설정"
|
||||||
|
|
||||||
@@ -785,46 +786,46 @@ msgctxt "event list time"
|
|||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "종일"
|
msgstr "종일"
|
||||||
|
|
||||||
#: js/ui/calendar.js:864
|
#: js/ui/calendar.js:866
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%B %d일 %A"
|
msgstr "%B %d일 %A"
|
||||||
|
|
||||||
#: js/ui/calendar.js:868
|
#: js/ui/calendar.js:870
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%Y년 %B %d일 %A"
|
msgstr "%Y년 %B %d일 %A"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1086
|
#: js/ui/calendar.js:1100
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "알림 없음"
|
msgstr "알림 없음"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1089
|
#: js/ui/calendar.js:1103
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "행사 없음"
|
msgstr "행사 없음"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1117
|
#: js/ui/calendar.js:1131
|
||||||
msgid "Clear All"
|
msgid "Clear All"
|
||||||
msgstr "모두 지우기"
|
msgstr "모두 지우기"
|
||||||
|
|
||||||
#. Translators: %s is an application name
|
#. Translators: %s is an application name
|
||||||
#: js/ui/closeDialog.js:44
|
#: js/ui/closeDialog.js:47
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "“%s” is not responding."
|
msgid "“%s” is not responding."
|
||||||
msgstr "“%s” 프로그램이 응답하지 않습니다."
|
msgstr "“%s” 프로그램이 응답하지 않습니다."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:45
|
#: js/ui/closeDialog.js:48
|
||||||
msgid ""
|
msgid ""
|
||||||
"You may choose to wait a short while for it to continue or force the "
|
"You may choose to wait a short while for it to continue or force the "
|
||||||
"application to quit entirely."
|
"application to quit entirely."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"좀 더 기다려서 계속 할 수도 있고, 강제로 프로그램을 끝낼 수도 있습니다."
|
"좀 더 기다려서 계속 할 수도 있고, 강제로 프로그램을 끝낼 수도 있습니다."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:61
|
#: js/ui/closeDialog.js:64
|
||||||
msgid "Force Quit"
|
msgid "Force Quit"
|
||||||
msgstr "강제로 끝내기"
|
msgstr "강제로 끝내기"
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:64
|
#: js/ui/closeDialog.js:67
|
||||||
msgid "Wait"
|
msgid "Wait"
|
||||||
msgstr "기다리기"
|
msgstr "기다리기"
|
||||||
|
|
||||||
@@ -841,7 +842,7 @@ msgstr "외부 드라이브 연결 끊김"
|
|||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "%s 프로그램으로 열기"
|
msgstr "%s 프로그램으로 열기"
|
||||||
|
|
||||||
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:284
|
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:297
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "암호:"
|
msgstr "암호:"
|
||||||
|
|
||||||
@@ -878,18 +879,18 @@ msgstr "개인 키 암호: "
|
|||||||
msgid "Service: "
|
msgid "Service: "
|
||||||
msgstr "서비스: "
|
msgstr "서비스: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:659
|
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:664
|
||||||
msgid "Authentication required by wireless network"
|
msgid "Authentication required by wireless network"
|
||||||
msgstr "무선 네트워크에서 인증이 필요합니다"
|
msgstr "무선 네트워크에서 인증이 필요합니다"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:660
|
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:665
|
||||||
#, javascript-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”."
|
||||||
msgstr "“%s” 무선 네트워크에 연결하려면 암호 또는 암호화 키가 필요합니다."
|
msgstr "“%s” 무선 네트워크에 연결하려면 암호 또는 암호화 키가 필요합니다."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:663
|
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:668
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
msgstr "유선 802.1X 인증"
|
msgstr "유선 802.1X 인증"
|
||||||
|
|
||||||
@@ -897,15 +898,15 @@ msgstr "유선 802.1X 인증"
|
|||||||
msgid "Network name: "
|
msgid "Network name: "
|
||||||
msgstr "네트워크 이름: "
|
msgstr "네트워크 이름: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:667
|
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:672
|
||||||
msgid "DSL authentication"
|
msgid "DSL authentication"
|
||||||
msgstr "인증이 필요합니다"
|
msgstr "인증이 필요합니다"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:673
|
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:678
|
||||||
msgid "PIN code required"
|
msgid "PIN code required"
|
||||||
msgstr "PIN 코드가 필요합니다"
|
msgstr "PIN 코드가 필요합니다"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:674
|
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:679
|
||||||
msgid "PIN code is needed for the mobile broadband device"
|
msgid "PIN code is needed for the mobile broadband device"
|
||||||
msgstr "휴대전화 네트워크 장치를 사용하려면 PIN 코드가 필요합니다"
|
msgstr "휴대전화 네트워크 장치를 사용하려면 PIN 코드가 필요합니다"
|
||||||
|
|
||||||
@@ -913,29 +914,29 @@ msgstr "휴대전화 네트워크 장치를 사용하려면 PIN 코드가 필요
|
|||||||
msgid "PIN: "
|
msgid "PIN: "
|
||||||
msgstr "PIN: "
|
msgstr "PIN: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:680
|
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:685
|
||||||
msgid "Mobile broadband network password"
|
msgid "Mobile broadband network password"
|
||||||
msgstr "휴대전화 네트워크 암호"
|
msgstr "휴대전화 네트워크 암호"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:664
|
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:669
|
||||||
#: js/ui/components/networkAgent.js:668 js/ui/components/networkAgent.js:681
|
#: js/ui/components/networkAgent.js:673 js/ui/components/networkAgent.js:686
|
||||||
#, javascript-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”에 연결하려면 암호가 필요합니다."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:648 js/ui/status/network.js:1691
|
#: js/ui/components/networkAgent.js:653 js/ui/status/network.js:1704
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "네트워크 관리"
|
msgstr "네트워크 관리"
|
||||||
|
|
||||||
#: js/ui/components/polkitAgent.js:43
|
#: js/ui/components/polkitAgent.js:48
|
||||||
msgid "Authentication Required"
|
msgid "Authentication Required"
|
||||||
msgstr "인증이 필요합니다"
|
msgstr "인증이 필요합니다"
|
||||||
|
|
||||||
#: js/ui/components/polkitAgent.js:71
|
#: js/ui/components/polkitAgent.js:76
|
||||||
msgid "Administrator"
|
msgid "Administrator"
|
||||||
msgstr "관리자"
|
msgstr "관리자"
|
||||||
|
|
||||||
#: js/ui/components/polkitAgent.js:151
|
#: js/ui/components/polkitAgent.js:156
|
||||||
msgid "Authenticate"
|
msgid "Authenticate"
|
||||||
msgstr "인증"
|
msgstr "인증"
|
||||||
|
|
||||||
@@ -943,7 +944,7 @@ msgstr "인증"
|
|||||||
#. * 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:270 js/ui/shellMountOperation.js:327
|
#: js/ui/components/polkitAgent.js:283 js/ui/shellMountOperation.js:327
|
||||||
msgid "Sorry, that didn’t work. Please try again."
|
msgid "Sorry, that didn’t work. Please try again."
|
||||||
msgstr "죄송합니다. 동작하지 않았습니다. 다시 시도하십시오."
|
msgstr "죄송합니다. 동작하지 않았습니다. 다시 시도하십시오."
|
||||||
|
|
||||||
@@ -991,7 +992,7 @@ msgstr "세계 시계 추가…"
|
|||||||
msgid "World Clocks"
|
msgid "World Clocks"
|
||||||
msgstr "세계 시계"
|
msgstr "세계 시계"
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:225
|
#: js/ui/dateMenu.js:227
|
||||||
msgid "Weather"
|
msgid "Weather"
|
||||||
msgstr "날씨"
|
msgstr "날씨"
|
||||||
|
|
||||||
@@ -999,7 +1000,7 @@ msgstr "날씨"
|
|||||||
#. libgweather for the possible condition strings. If at all
|
#. libgweather for the possible condition strings. If at all
|
||||||
#. possible, the sentence should match the grammatical case etc. of
|
#. possible, the sentence should match the grammatical case etc. of
|
||||||
#. the inserted conditions.
|
#. the inserted conditions.
|
||||||
#: js/ui/dateMenu.js:289
|
#: js/ui/dateMenu.js:291
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s all day."
|
msgid "%s all day."
|
||||||
msgstr "하루 종일 %s."
|
msgstr "하루 종일 %s."
|
||||||
@@ -1008,7 +1009,7 @@ msgstr "하루 종일 %s."
|
|||||||
#. libgweather for the possible condition strings. If at all
|
#. libgweather for the possible condition strings. If at all
|
||||||
#. possible, the sentence should match the grammatical case etc. of
|
#. possible, the sentence should match the grammatical case etc. of
|
||||||
#. the inserted conditions.
|
#. the inserted conditions.
|
||||||
#: js/ui/dateMenu.js:295
|
#: js/ui/dateMenu.js:297
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s, then %s later."
|
msgid "%s, then %s later."
|
||||||
msgstr "%s, 그리고 나중에 %s."
|
msgstr "%s, 그리고 나중에 %s."
|
||||||
@@ -1017,30 +1018,30 @@ msgstr "%s, 그리고 나중에 %s."
|
|||||||
#. libgweather for the possible condition strings. If at all
|
#. libgweather for the possible condition strings. If at all
|
||||||
#. possible, the sentence should match the grammatical case etc. of
|
#. possible, the sentence should match the grammatical case etc. of
|
||||||
#. the inserted conditions.
|
#. the inserted conditions.
|
||||||
#: js/ui/dateMenu.js:301
|
#: js/ui/dateMenu.js:303
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s, then %s, followed by %s later."
|
msgid "%s, then %s, followed by %s later."
|
||||||
msgstr "%s, 그리고 %s, 또 나중에 %s."
|
msgstr "%s, 그리고 %s, 또 나중에 %s."
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:312
|
#: js/ui/dateMenu.js:314
|
||||||
msgid "Select a location…"
|
msgid "Select a location…"
|
||||||
msgstr "위치를 선택하십시오…"
|
msgstr "위치를 선택하십시오…"
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:315
|
#: js/ui/dateMenu.js:317
|
||||||
msgid "Loading…"
|
msgid "Loading…"
|
||||||
msgstr "읽어들이는 중…"
|
msgstr "읽어들이는 중…"
|
||||||
|
|
||||||
#. Translators: %s is a temperature with unit, e.g. "23℃"
|
#. Translators: %s is a temperature with unit, e.g. "23℃"
|
||||||
#: js/ui/dateMenu.js:321
|
#: js/ui/dateMenu.js:323
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Feels like %s."
|
msgid "Feels like %s."
|
||||||
msgstr "체감 온도 %s."
|
msgstr "체감 온도 %s."
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:324
|
#: js/ui/dateMenu.js:326
|
||||||
msgid "Go online for weather information"
|
msgid "Go online for weather information"
|
||||||
msgstr "날씨 정보를 온라인으로 가져옵니다"
|
msgstr "날씨 정보를 온라인으로 가져옵니다"
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:326
|
#: js/ui/dateMenu.js:328
|
||||||
msgid "Weather information is currently unavailable"
|
msgid "Weather information is currently unavailable"
|
||||||
msgstr "날씨 정보를 현재 사용할 수 없습니다"
|
msgstr "날씨 정보를 현재 사용할 수 없습니다"
|
||||||
|
|
||||||
@@ -1228,7 +1229,9 @@ msgstr "느린 키 끔"
|
|||||||
msgid ""
|
msgid ""
|
||||||
"You just held down the Shift key for 8 seconds. This is the shortcut for the "
|
"You just held down the Shift key for 8 seconds. This is the shortcut for the "
|
||||||
"Slow Keys feature, which affects the way your keyboard works."
|
"Slow Keys feature, which affects the way your keyboard works."
|
||||||
msgstr "Shift 키를 8초 동안 누르고 있었습니다. 느린 키 기능의 바로 가기이고, 이렇게 하면 키보드 동작이 달라집니다."
|
msgstr ""
|
||||||
|
"Shift 키를 8초 동안 누르고 있었습니다. 느린 키 기능의 바로 가기이고, 이렇게 "
|
||||||
|
"하면 키보드 동작이 달라집니다."
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:42
|
#: js/ui/kbdA11yDialog.js:42
|
||||||
msgid "Sticky Keys Turned On"
|
msgid "Sticky Keys Turned On"
|
||||||
@@ -1260,13 +1263,13 @@ msgid "Leave On"
|
|||||||
msgstr "계속 유지"
|
msgstr "계속 유지"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:1281
|
#: js/ui/status/network.js:1294
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "켜기"
|
msgstr "켜기"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
||||||
#: js/ui/status/network.js:1281 js/ui/status/network.js:1396
|
#: js/ui/status/network.js:1294 js/ui/status/network.js:1409
|
||||||
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
||||||
#: js/ui/status/rfkill.js:117
|
#: js/ui/status/rfkill.js:117
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
@@ -1328,7 +1331,7 @@ msgstr "소스 보기"
|
|||||||
msgid "Web Page"
|
msgid "Web Page"
|
||||||
msgstr "웹페이지"
|
msgstr "웹페이지"
|
||||||
|
|
||||||
#: js/ui/messageTray.js:1493
|
#: js/ui/messageTray.js:1495
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "시스템 정보"
|
msgstr "시스템 정보"
|
||||||
|
|
||||||
@@ -1340,6 +1343,11 @@ msgstr "알 수 없는 음악가"
|
|||||||
msgid "Unknown title"
|
msgid "Unknown title"
|
||||||
msgstr "알 수 없는 제목"
|
msgstr "알 수 없는 제목"
|
||||||
|
|
||||||
|
# 오디오 볼륨
|
||||||
|
#: js/ui/osdWindow.js:32 js/ui/status/volume.js:204
|
||||||
|
msgid "Volume"
|
||||||
|
msgstr "볼륨"
|
||||||
|
|
||||||
#: js/ui/overview.js:83
|
#: js/ui/overview.js:83
|
||||||
msgid "Undo"
|
msgid "Undo"
|
||||||
msgstr "실행 취소"
|
msgstr "실행 취소"
|
||||||
@@ -1382,42 +1390,42 @@ msgstr "키 누르기 지정"
|
|||||||
msgid "Done"
|
msgid "Done"
|
||||||
msgstr "마침"
|
msgstr "마침"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:740
|
#: js/ui/padOsd.js:742
|
||||||
msgid "Edit…"
|
msgid "Edit…"
|
||||||
msgstr "편집…"
|
msgstr "편집…"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:782 js/ui/padOsd.js:887
|
#: js/ui/padOsd.js:784 js/ui/padOsd.js:889
|
||||||
msgid "None"
|
msgid "None"
|
||||||
msgstr "없음"
|
msgstr "없음"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:841
|
#: js/ui/padOsd.js:843
|
||||||
msgid "Press a button to configure"
|
msgid "Press a button to configure"
|
||||||
msgstr "설정하려면 단추를 누르십시오"
|
msgstr "설정하려면 단추를 누르십시오"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:842
|
#: js/ui/padOsd.js:844
|
||||||
msgid "Press Esc to exit"
|
msgid "Press Esc to exit"
|
||||||
msgstr "나가려면 Esc를 누르십시오"
|
msgstr "나가려면 Esc를 누르십시오"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:845
|
#: js/ui/padOsd.js:847
|
||||||
msgid "Press any key to exit"
|
msgid "Press any key to exit"
|
||||||
msgstr "나가려면 아무 키나 누르십시오"
|
msgstr "나가려면 아무 키나 누르십시오"
|
||||||
|
|
||||||
#: js/ui/panel.js:355
|
#: js/ui/panel.js:356
|
||||||
msgid "Quit"
|
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:411
|
#: js/ui/panel.js:412
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "현재 활동"
|
msgstr "현재 활동"
|
||||||
|
|
||||||
#: js/ui/panel.js:692
|
#: js/ui/panel.js:693
|
||||||
msgctxt "System menu in the top bar"
|
msgctxt "System menu in the top bar"
|
||||||
msgid "System"
|
msgid "System"
|
||||||
msgstr "시스템"
|
msgstr "시스템"
|
||||||
|
|
||||||
#: js/ui/panel.js:811
|
#: js/ui/panel.js:816
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "위 막대"
|
msgstr "위 막대"
|
||||||
|
|
||||||
@@ -1426,23 +1434,23 @@ msgstr "위 막대"
|
|||||||
#. "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:291
|
#: js/ui/popupMenu.js:300
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:70
|
#: js/ui/runDialog.js:74
|
||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "명령을 입력하십시오"
|
msgstr "명령을 입력하십시오"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:110 js/ui/windowMenu.js:175
|
#: js/ui/runDialog.js:114 js/ui/windowMenu.js:174
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "닫기"
|
msgstr "닫기"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:273
|
#: js/ui/runDialog.js:278
|
||||||
msgid "Restart is not available on Wayland"
|
msgid "Restart is not available on Wayland"
|
||||||
msgstr "웨일랜드에서는 다시 시작 기능을 사용할 수 없습니다"
|
msgstr "웨일랜드에서는 다시 시작 기능을 사용할 수 없습니다"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:278
|
#: js/ui/runDialog.js:283
|
||||||
msgid "Restarting…"
|
msgid "Restarting…"
|
||||||
msgstr "다시 시작하는 중…"
|
msgstr "다시 시작하는 중…"
|
||||||
|
|
||||||
@@ -1464,7 +1472,7 @@ msgid "%d new notification"
|
|||||||
msgid_plural "%d new notifications"
|
msgid_plural "%d new notifications"
|
||||||
msgstr[0] "새 알림 %d개"
|
msgstr[0] "새 알림 %d개"
|
||||||
|
|
||||||
#: js/ui/screenShield.js:451 js/ui/status/system.js:283
|
#: js/ui/screenShield.js:451 js/ui/status/system.js:294
|
||||||
msgid "Lock"
|
msgid "Lock"
|
||||||
msgstr "잠그기"
|
msgstr "잠그기"
|
||||||
|
|
||||||
@@ -1643,7 +1651,7 @@ msgid "<unknown>"
|
|||||||
msgstr "<알 수 없음>"
|
msgstr "<알 수 없음>"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:441 js/ui/status/network.js:1310
|
#: js/ui/status/network.js:441 js/ui/status/network.js:1323
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s 꺼짐"
|
msgstr "%s 꺼짐"
|
||||||
@@ -1669,7 +1677,7 @@ msgid "%s Disconnecting"
|
|||||||
msgstr "%s 연결 끊는 중"
|
msgstr "%s 연결 끊는 중"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:459 js/ui/status/network.js:1302
|
#: js/ui/status/network.js:459 js/ui/status/network.js:1315
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
msgid "%s Connecting"
|
||||||
msgstr "%s 연결하는 중"
|
msgstr "%s 연결하는 중"
|
||||||
@@ -1709,7 +1717,7 @@ msgid "Mobile Broadband Settings"
|
|||||||
msgstr "휴대전화 네트워크 설정"
|
msgstr "휴대전화 네트워크 설정"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:578 js/ui/status/network.js:1307
|
#: js/ui/status/network.js:578 js/ui/status/network.js:1320
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hardware Disabled"
|
msgid "%s Hardware Disabled"
|
||||||
msgstr "%s 하드웨어 사용 않음"
|
msgstr "%s 하드웨어 사용 않음"
|
||||||
@@ -1765,88 +1773,88 @@ msgstr "네트워크 없음"
|
|||||||
msgid "Use hardware switch to turn off"
|
msgid "Use hardware switch to turn off"
|
||||||
msgstr "끄려면 하드웨어 스위치를 사용하십시오"
|
msgstr "끄려면 하드웨어 스위치를 사용하십시오"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1173
|
#: js/ui/status/network.js:1186
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "네트워크 선택"
|
msgstr "네트워크 선택"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1179
|
#: js/ui/status/network.js:1192
|
||||||
msgid "Wi-Fi Settings"
|
msgid "Wi-Fi Settings"
|
||||||
msgstr "와이파이 설정"
|
msgstr "와이파이 설정"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1298
|
#: js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hotspot Active"
|
msgid "%s Hotspot Active"
|
||||||
msgstr "%s 핫스팟 사용 중"
|
msgstr "%s 핫스팟 사용 중"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1313
|
#: js/ui/status/network.js:1326
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
msgstr "%s 연결되지 않음"
|
msgstr "%s 연결되지 않음"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1413
|
#: js/ui/status/network.js:1426
|
||||||
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:1416
|
#: js/ui/status/network.js:1429
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "인증 필요"
|
msgstr "인증 필요"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1418
|
#: js/ui/status/network.js:1431
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "연결 실패"
|
msgstr "연결 실패"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1472
|
#: js/ui/status/network.js:1485
|
||||||
msgid "VPN Settings"
|
msgid "VPN Settings"
|
||||||
msgstr "가상사설망 설정"
|
msgstr "가상사설망 설정"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1485
|
#: js/ui/status/network.js:1498
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "가상사설망"
|
msgstr "가상사설망"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1495
|
#: js/ui/status/network.js:1508
|
||||||
msgid "VPN Off"
|
msgid "VPN Off"
|
||||||
msgstr "가상사설망 꺼짐"
|
msgstr "가상사설망 꺼짐"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1559 js/ui/status/rfkill.js:93
|
#: js/ui/status/network.js:1572 js/ui/status/rfkill.js:93
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "네트워크 설정"
|
msgstr "네트워크 설정"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1588
|
#: js/ui/status/network.js:1601
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wired Connection"
|
msgid "%s Wired Connection"
|
||||||
msgid_plural "%s Wired Connections"
|
msgid_plural "%s Wired Connections"
|
||||||
msgstr[0] "%s 유선 연결"
|
msgstr[0] "%s 유선 연결"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1592
|
#: js/ui/status/network.js:1605
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wi-Fi Connection"
|
msgid "%s Wi-Fi Connection"
|
||||||
msgid_plural "%s Wi-Fi Connections"
|
msgid_plural "%s Wi-Fi Connections"
|
||||||
msgstr[0] "%s 와이파이 연결"
|
msgstr[0] "%s 와이파이 연결"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1596
|
#: js/ui/status/network.js:1609
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Modem Connection"
|
msgid "%s Modem Connection"
|
||||||
msgid_plural "%s Modem Connections"
|
msgid_plural "%s Modem Connections"
|
||||||
msgstr[0] "%s 모뎀 연결"
|
msgstr[0] "%s 모뎀 연결"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1728
|
#: js/ui/status/network.js:1741
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "연결이 실패했습니다"
|
msgstr "연결이 실패했습니다"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1729
|
#: js/ui/status/network.js:1742
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "네트워크 연결이 실패했습니다"
|
msgstr "네트워크 연결이 실패했습니다"
|
||||||
|
|
||||||
#: js/ui/status/nightLight.js:68
|
#: js/ui/status/nightLight.js:68
|
||||||
msgid "Night Light Disabled"
|
msgid "Night Light Disabled"
|
||||||
msgstr "야간 조명 사용하지 않음"
|
msgstr "야간 모드 사용하지 않음"
|
||||||
|
|
||||||
#: js/ui/status/nightLight.js:69
|
#: js/ui/status/nightLight.js:69
|
||||||
msgid "Night Light On"
|
msgid "Night Light On"
|
||||||
msgstr "야간 조명 켬"
|
msgstr "야간 모드 켬"
|
||||||
|
|
||||||
#: js/ui/status/nightLight.js:70
|
#: js/ui/status/nightLight.js:70
|
||||||
msgid "Resume"
|
msgid "Resume"
|
||||||
@@ -1887,6 +1895,14 @@ msgstr "충전까지 %d:%02d(%d %%)"
|
|||||||
msgid "%d %%"
|
msgid "%d %%"
|
||||||
msgstr "%d %%"
|
msgstr "%d %%"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:46
|
||||||
|
msgid "Screen is Being Shared"
|
||||||
|
msgstr "화면을 공유하는 중입니다"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:48
|
||||||
|
msgid "Turn off"
|
||||||
|
msgstr "끄기"
|
||||||
|
|
||||||
#. 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
|
||||||
#. changing the menu contents.
|
#. changing the menu contents.
|
||||||
@@ -1906,28 +1922,28 @@ msgstr "로그아웃"
|
|||||||
msgid "Account Settings"
|
msgid "Account Settings"
|
||||||
msgstr "계정 설정"
|
msgstr "계정 설정"
|
||||||
|
|
||||||
#: js/ui/status/system.js:268
|
#: js/ui/status/system.js:279
|
||||||
msgid "Orientation Lock"
|
msgid "Orientation Lock"
|
||||||
msgstr "방향 잠금"
|
msgstr "방향 잠금"
|
||||||
|
|
||||||
#: js/ui/status/system.js:294
|
#: js/ui/status/system.js:305
|
||||||
msgid "Suspend"
|
msgid "Suspend"
|
||||||
msgstr "절전"
|
msgstr "절전"
|
||||||
|
|
||||||
#: js/ui/status/system.js:304
|
#: js/ui/status/system.js:315
|
||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "컴퓨터 끄기"
|
msgstr "컴퓨터 끄기"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:272
|
#: js/ui/status/thunderbolt.js:298
|
||||||
msgid "Thunderbolt"
|
msgid "Thunderbolt"
|
||||||
msgstr "썬더볼트"
|
msgstr "썬더볼트"
|
||||||
|
|
||||||
#. we are done
|
#. we are done
|
||||||
#: js/ui/status/thunderbolt.js:328
|
#: js/ui/status/thunderbolt.js:354
|
||||||
msgid "Unknown Thunderbolt device"
|
msgid "Unknown Thunderbolt device"
|
||||||
msgstr "알 수 없는 썬더볼트 장치"
|
msgstr "알 수 없는 썬더볼트 장치"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:329
|
#: js/ui/status/thunderbolt.js:355
|
||||||
msgid ""
|
msgid ""
|
||||||
"New device has been detected while you were away. Please disconnect and "
|
"New device has been detected while you were away. Please disconnect and "
|
||||||
"reconnect the device to start using it."
|
"reconnect the device to start using it."
|
||||||
@@ -1935,25 +1951,20 @@ msgstr ""
|
|||||||
"자리에 없는 동안 새 장치를 검색했습니다. 이 장치를 사용하려면 장치 연결을 끊"
|
"자리에 없는 동안 새 장치를 검색했습니다. 이 장치를 사용하려면 장치 연결을 끊"
|
||||||
"었다가 다시 연결하십시오."
|
"었다가 다시 연결하십시오."
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:334
|
#: js/ui/status/thunderbolt.js:360
|
||||||
msgid "Thunderbolt authorization error"
|
msgid "Thunderbolt authorization error"
|
||||||
msgstr "썬더볼트 권한 오류"
|
msgstr "썬더볼트 권한 오류"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:335
|
#: js/ui/status/thunderbolt.js:361
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Could not authorize the thunderbolt device: %s"
|
msgid "Could not authorize the Thunderbolt device: %s"
|
||||||
msgstr "썬더볼트 장치에 권한을 부여할 수 없습니다: %s"
|
msgstr "썬더볼트 장치에 권한을 부여할 수 없습니다: %s"
|
||||||
|
|
||||||
# 오디오 볼륨
|
# 오디오 볼륨
|
||||||
#: js/ui/status/volume.js:128
|
#: js/ui/status/volume.js:135
|
||||||
msgid "Volume changed"
|
msgid "Volume changed"
|
||||||
msgstr "볼륨 바꿈"
|
msgstr "볼륨 바꿈"
|
||||||
|
|
||||||
# 오디오 볼륨
|
|
||||||
#: js/ui/status/volume.js:170
|
|
||||||
msgid "Volume"
|
|
||||||
msgstr "볼륨"
|
|
||||||
|
|
||||||
#. Translators: this is for display mirroring i.e. cloning.
|
#. Translators: this is for display mirroring i.e. cloning.
|
||||||
#. * Try to keep it under around 15 characters.
|
#. * Try to keep it under around 15 characters.
|
||||||
#.
|
#.
|
||||||
@@ -2003,22 +2014,22 @@ msgstr "검색"
|
|||||||
msgid "“%s” is ready"
|
msgid "“%s” is ready"
|
||||||
msgstr "“%s” 프로그램이 준비되었습니다"
|
msgstr "“%s” 프로그램이 준비되었습니다"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:72
|
#: js/ui/windowManager.js:74
|
||||||
msgid "Do you want to keep these display settings?"
|
msgid "Do you want to keep these display settings?"
|
||||||
msgstr "이 디스플레이 설정을 유지하시겠습니까?"
|
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:84
|
#: js/ui/windowManager.js:86
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "설정 되돌리기"
|
msgstr "설정 되돌리기"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:87
|
#: js/ui/windowManager.js:89
|
||||||
msgid "Keep Changes"
|
msgid "Keep Changes"
|
||||||
msgstr "바뀐 사항 유지"
|
msgstr "바뀐 사항 유지"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:105
|
#: js/ui/windowManager.js:107
|
||||||
#, javascript-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"
|
||||||
@@ -2026,7 +2037,7 @@ msgstr[0] "바뀐 설정을 %d초 후에 되돌립니다"
|
|||||||
|
|
||||||
#. Translators: This represents the size of a window. The first number is
|
#. Translators: This represents the size of a window. The first number is
|
||||||
#. * the width of the window and the second is the height.
|
#. * the width of the window and the second is the height.
|
||||||
#: js/ui/windowManager.js:660
|
#: js/ui/windowManager.js:689
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d × %d"
|
msgid "%d × %d"
|
||||||
msgstr "%d × %d"
|
msgstr "%d × %d"
|
||||||
@@ -2079,19 +2090,19 @@ msgstr "위 작업 공간으로 옮기기"
|
|||||||
msgid "Move to Workspace Down"
|
msgid "Move to Workspace Down"
|
||||||
msgstr "아래 작업 공간으로 옮기기"
|
msgstr "아래 작업 공간으로 옮기기"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:140
|
#: js/ui/windowMenu.js:139
|
||||||
msgid "Move to Monitor Up"
|
msgid "Move to Monitor Up"
|
||||||
msgstr "위 모니터로 옮기기"
|
msgstr "위 모니터로 옮기기"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:149
|
#: js/ui/windowMenu.js:148
|
||||||
msgid "Move to Monitor Down"
|
msgid "Move to Monitor Down"
|
||||||
msgstr "아래 모니터로 옮기기"
|
msgstr "아래 모니터로 옮기기"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:158
|
#: js/ui/windowMenu.js:157
|
||||||
msgid "Move to Monitor Left"
|
msgid "Move to Monitor Left"
|
||||||
msgstr "왼쪽 모니터로 옮기기"
|
msgstr "왼쪽 모니터로 옮기기"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:167
|
#: js/ui/windowMenu.js:166
|
||||||
msgid "Move to Monitor Right"
|
msgid "Move to Monitor Right"
|
||||||
msgstr "오른쪽 모니터로 옮기기"
|
msgstr "오른쪽 모니터로 옮기기"
|
||||||
|
|
||||||
@@ -2105,28 +2116,28 @@ msgid "evolution"
|
|||||||
msgstr "evolution"
|
msgstr "evolution"
|
||||||
|
|
||||||
# 커맨드라인 옵션 설명
|
# 커맨드라인 옵션 설명
|
||||||
#: src/main.c:432
|
#: src/main.c:410
|
||||||
msgid "Print version"
|
msgid "Print version"
|
||||||
msgstr "버전을 표시합니다"
|
msgstr "버전을 표시합니다"
|
||||||
|
|
||||||
#: src/main.c:438
|
#: src/main.c:416
|
||||||
msgid "Mode used by GDM for login screen"
|
msgid "Mode used by GDM for login screen"
|
||||||
msgstr "GDM에서 로그인 화면에 사용할 모드"
|
msgstr "GDM에서 로그인 화면에 사용할 모드"
|
||||||
|
|
||||||
#: src/main.c:444
|
#: src/main.c:422
|
||||||
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
||||||
msgstr "특정 모드 사용. 예를 들어 로그인 화면에 대해 “gdm”"
|
msgstr "특정 모드 사용. 예를 들어 로그인 화면에 대해 “gdm”"
|
||||||
|
|
||||||
#: src/main.c:450
|
#: src/main.c:428
|
||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "가능한 모드 목록 표시"
|
msgstr "가능한 모드 목록 표시"
|
||||||
|
|
||||||
#: src/shell-app.c:270
|
#: src/shell-app.c:272
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "알 수 없음"
|
msgstr "알 수 없음"
|
||||||
|
|
||||||
#: src/shell-app.c:511
|
#: src/shell-app.c:523
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "“%s” 실행에 실패했습니다"
|
msgstr "“%s” 실행에 실패했습니다"
|
||||||
@@ -2162,45 +2173,3 @@ msgstr[0] "%u개 입력"
|
|||||||
#: subprojects/gvc/gvc-mixer-control.c:2738
|
#: subprojects/gvc/gvc-mixer-control.c:2738
|
||||||
msgid "System Sounds"
|
msgid "System Sounds"
|
||||||
msgstr "시스템 소리"
|
msgstr "시스템 소리"
|
||||||
|
|
||||||
#~ msgctxt "search-result"
|
|
||||||
#~ msgid "Power off"
|
|
||||||
#~ msgstr "컴퓨터 끄기"
|
|
||||||
|
|
||||||
#~ msgctxt "search-result"
|
|
||||||
#~ msgid "Log out"
|
|
||||||
#~ msgstr "로그아웃"
|
|
||||||
|
|
||||||
#~ msgctxt "search-result"
|
|
||||||
#~ msgid "Switch user"
|
|
||||||
#~ msgstr "사용자 바꾸기"
|
|
||||||
|
|
||||||
#~ msgid "Hide tray"
|
|
||||||
#~ msgstr "트레이 숨기기"
|
|
||||||
|
|
||||||
#~ msgid "Status Icons"
|
|
||||||
#~ msgstr "상태 아이콘"
|
|
||||||
|
|
||||||
#~ msgid "GNOME Shell Extension Preferences"
|
|
||||||
#~ msgstr "그놈 셸 확장 기본 설정"
|
|
||||||
|
|
||||||
#~ msgid "Web Authentication Redirect"
|
|
||||||
#~ msgstr "웹 인증 리다이렉트"
|
|
||||||
|
|
||||||
#~ msgid "Events"
|
|
||||||
#~ msgstr "행사"
|
|
||||||
|
|
||||||
#~ msgid "Notifications"
|
|
||||||
#~ msgstr "알림"
|
|
||||||
|
|
||||||
#~ msgid "Clear section"
|
|
||||||
#~ msgstr "부분 지우기"
|
|
||||||
|
|
||||||
#~ msgid "Media"
|
|
||||||
#~ msgstr "미디어"
|
|
||||||
|
|
||||||
#~ msgid "Not In Use"
|
|
||||||
#~ msgstr "사용 중 아님"
|
|
||||||
|
|
||||||
#~ msgid "%d x %d"
|
|
||||||
#~ msgstr "%d x %d"
|
|
||||||
|
271
po/lt.po
271
po/lt.po
@@ -10,8 +10,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell master\n"
|
"Project-Id-Version: gnome-shell master\n"
|
||||||
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell/issues\n"
|
||||||
"POT-Creation-Date: 2018-02-26 17:00+0000\n"
|
"POT-Creation-Date: 2018-08-01 18:08+0000\n"
|
||||||
"PO-Revision-Date: 2018-02-28 23:39+0200\n"
|
"PO-Revision-Date: 2018-08-05 23:20+0300\n"
|
||||||
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
|
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
|
||||||
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
|
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
|
||||||
"Language: lt\n"
|
"Language: lt\n"
|
||||||
@@ -290,32 +290,32 @@ msgstr ""
|
|||||||
"Jei teigiama, perjungimo lange rodomi tik langai iš dabartinės darbo "
|
"Jei teigiama, perjungimo lange rodomi tik langai iš dabartinės darbo "
|
||||||
"srities. Priešingu atveju įtraukiami visi langai."
|
"srities. Priešingu atveju įtraukiami visi langai."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:197
|
#: data/org.gnome.shell.gschema.xml.in:198
|
||||||
msgid "Attach modal dialog to the parent window"
|
msgid "Attach modal dialog to the parent window"
|
||||||
msgstr "Prikabinti modalinį dialogą prie tėvinio lango"
|
msgstr "Prikabinti modalinį dialogą prie tėvinio lango"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:198
|
#: data/org.gnome.shell.gschema.xml.in:199
|
||||||
#: data/org.gnome.shell.gschema.xml.in:207
|
#: data/org.gnome.shell.gschema.xml.in:208
|
||||||
#: data/org.gnome.shell.gschema.xml.in:215
|
#: data/org.gnome.shell.gschema.xml.in:216
|
||||||
#: data/org.gnome.shell.gschema.xml.in:223
|
#: data/org.gnome.shell.gschema.xml.in:224
|
||||||
#: data/org.gnome.shell.gschema.xml.in:231
|
#: data/org.gnome.shell.gschema.xml.in:232
|
||||||
msgid ""
|
msgid ""
|
||||||
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
||||||
msgstr "Šis raktas perrašo org.gnome.mutter raktą, kai vykdoma GNOME Shell."
|
msgstr "Šis raktas perrašo org.gnome.mutter raktą, kai vykdoma GNOME Shell."
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:206
|
#: data/org.gnome.shell.gschema.xml.in:207
|
||||||
msgid "Enable edge tiling when dropping windows on screen edges"
|
msgid "Enable edge tiling when dropping windows on screen edges"
|
||||||
msgstr "Įjungti kraštų išplėtimą, kai langai numetami ekrano kraštuose"
|
msgstr "Įjungti kraštų išplėtimą, kai langai numetami ekrano kraštuose"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:214
|
#: data/org.gnome.shell.gschema.xml.in:215
|
||||||
msgid "Workspaces are managed dynamically"
|
msgid "Workspaces are managed dynamically"
|
||||||
msgstr "Darbo sritys yra tvarkomos dinamiškai"
|
msgstr "Darbo sritys yra tvarkomos dinamiškai"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:222
|
#: data/org.gnome.shell.gschema.xml.in:223
|
||||||
msgid "Workspaces only on primary monitor"
|
msgid "Workspaces only on primary monitor"
|
||||||
msgstr "Darbo sritys tik pagrindiniame monitoriuje"
|
msgstr "Darbo sritys tik pagrindiniame monitoriuje"
|
||||||
|
|
||||||
#: data/org.gnome.shell.gschema.xml.in:230
|
#: data/org.gnome.shell.gschema.xml.in:231
|
||||||
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 "Atidėti fokuso pakeitimus pelei iki žymiklis nustos judėti"
|
msgstr "Atidėti fokuso pakeitimus pelei iki žymiklis nustos judėti"
|
||||||
|
|
||||||
@@ -334,7 +334,7 @@ msgid "There was an error loading the preferences dialog for %s:"
|
|||||||
msgstr "Kilo klaida įkeliant %s nuostatų dialogą:"
|
msgstr "Kilo klaida įkeliant %s nuostatų dialogą:"
|
||||||
|
|
||||||
#: js/gdm/authPrompt.js:147 js/ui/audioDeviceSelection.js:71
|
#: js/gdm/authPrompt.js:147 js/ui/audioDeviceSelection.js:71
|
||||||
#: js/ui/components/networkAgent.js:117 js/ui/components/polkitAgent.js:148
|
#: js/ui/components/networkAgent.js:117 js/ui/components/polkitAgent.js:153
|
||||||
#: js/ui/endSessionDialog.js:482 js/ui/extensionDownloader.js:197
|
#: js/ui/endSessionDialog.js:482 js/ui/extensionDownloader.js:197
|
||||||
#: js/ui/shellMountOperation.js:343 js/ui/status/network.js:919
|
#: js/ui/shellMountOperation.js:343 js/ui/status/network.js:919
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
@@ -354,20 +354,20 @@ msgctxt "button"
|
|||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Prisijungti"
|
msgstr "Prisijungti"
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:315
|
#: js/gdm/loginDialog.js:319
|
||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Pasirinkite seansą"
|
msgstr "Pasirinkite seansą"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: js/gdm/loginDialog.js:458
|
#: js/gdm/loginDialog.js:462
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Nėra sąraše?"
|
msgstr "Nėra sąraše?"
|
||||||
|
|
||||||
#. 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
|
||||||
#: js/gdm/loginDialog.js:887
|
#: js/gdm/loginDialog.js:891
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(pvz., naudotojas arba %s)"
|
msgstr "(pvz., naudotojas arba %s)"
|
||||||
@@ -375,12 +375,12 @@ msgstr "(pvz., naudotojas arba %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:892 js/ui/components/networkAgent.js:243
|
#: js/gdm/loginDialog.js:896 js/ui/components/networkAgent.js:243
|
||||||
#: js/ui/components/networkAgent.js:261
|
#: js/ui/components/networkAgent.js:261
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Naudotojo vardas: "
|
msgstr "Naudotojo vardas: "
|
||||||
|
|
||||||
#: js/gdm/loginDialog.js:1228
|
#: js/gdm/loginDialog.js:1234
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Prisijungimo langas"
|
msgstr "Prisijungimo langas"
|
||||||
|
|
||||||
@@ -393,7 +393,7 @@ msgstr "Tapatybės patvirtinimo klaida"
|
|||||||
#. as a cue to display our own message.
|
#. as a cue to display our own message.
|
||||||
#. Translators: this message is shown below the password entry field
|
#. Translators: this message is shown below the password entry field
|
||||||
#. to indicate the user can swipe their finger instead
|
#. to indicate the user can swipe their finger instead
|
||||||
#: js/gdm/util.js:482
|
#: js/gdm/util.js:485
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(arba perbraukite pirštu)"
|
msgstr "(arba perbraukite pirštu)"
|
||||||
|
|
||||||
@@ -639,32 +639,32 @@ msgstr "Dažnai naudojamos"
|
|||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Visos"
|
msgstr "Visos"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1886
|
#: js/ui/appDisplay.js:1890
|
||||||
msgid "New Window"
|
msgid "New Window"
|
||||||
msgstr "Naujas langas"
|
msgstr "Naujas langas"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1900
|
#: js/ui/appDisplay.js:1904
|
||||||
msgid "Launch using Dedicated Graphics Card"
|
msgid "Launch using Dedicated Graphics Card"
|
||||||
msgstr "Paleisti naudojant dedikuotą grafikos kortą"
|
msgstr "Paleisti naudojant dedikuotą grafikos kortą"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1927 js/ui/dash.js:285
|
#: js/ui/appDisplay.js:1931 js/ui/dash.js:285
|
||||||
msgid "Remove from Favorites"
|
msgid "Remove from Favorites"
|
||||||
msgstr "Pašalinti iš mėgstamų"
|
msgstr "Pašalinti iš mėgstamų"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1933
|
#: js/ui/appDisplay.js:1937
|
||||||
msgid "Add to Favorites"
|
msgid "Add to Favorites"
|
||||||
msgstr "Pridėti prie mėgstamų"
|
msgstr "Pridėti prie mėgstamų"
|
||||||
|
|
||||||
#: js/ui/appDisplay.js:1943
|
#: js/ui/appDisplay.js:1947
|
||||||
msgid "Show Details"
|
msgid "Show Details"
|
||||||
msgstr "Rodyti detalią informaciją"
|
msgstr "Rodyti detalią informaciją"
|
||||||
|
|
||||||
#: js/ui/appFavorites.js:138
|
#: js/ui/appFavorites.js:140
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s has been added to your favorites."
|
msgid "%s has been added to your favorites."
|
||||||
msgstr "%s pridėta prie jūsų mėgstamų."
|
msgstr "%s pridėta prie jūsų mėgstamų."
|
||||||
|
|
||||||
#: js/ui/appFavorites.js:172
|
#: js/ui/appFavorites.js:174
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s has been removed from your favorites."
|
msgid "%s has been removed from your favorites."
|
||||||
msgstr "%s pašalinta iš jūsų mėgstamų."
|
msgstr "%s pašalinta iš jūsų mėgstamų."
|
||||||
@@ -685,7 +685,7 @@ msgstr "Ausinės"
|
|||||||
msgid "Headset"
|
msgid "Headset"
|
||||||
msgstr "Ausinės su mikrofonu"
|
msgstr "Ausinės su mikrofonu"
|
||||||
|
|
||||||
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:221
|
#: js/ui/audioDeviceSelection.js:82 js/ui/status/volume.js:255
|
||||||
msgid "Microphone"
|
msgid "Microphone"
|
||||||
msgstr "Mikrofonas"
|
msgstr "Mikrofonas"
|
||||||
|
|
||||||
@@ -697,7 +697,7 @@ msgstr "Keisti foną…"
|
|||||||
msgid "Display Settings"
|
msgid "Display Settings"
|
||||||
msgstr "Ekrano nustatymai"
|
msgstr "Ekrano nustatymai"
|
||||||
|
|
||||||
#: js/ui/backgroundMenu.js:22 js/ui/status/system.js:264
|
#: js/ui/backgroundMenu.js:22
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Nustatymai"
|
msgstr "Nustatymai"
|
||||||
|
|
||||||
@@ -802,35 +802,35 @@ msgctxt "event list time"
|
|||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Visa diena"
|
msgstr "Visa diena"
|
||||||
|
|
||||||
#: js/ui/calendar.js:864
|
#: js/ui/calendar.js:866
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %B %d d."
|
msgstr "%A, %B %d d."
|
||||||
|
|
||||||
#: js/ui/calendar.js:868
|
#: js/ui/calendar.js:870
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A, %Y m. %B %d d."
|
msgstr "%A, %Y m. %B %d d."
|
||||||
|
|
||||||
#: js/ui/calendar.js:1086
|
#: js/ui/calendar.js:1100
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "Nėra pranešimų"
|
msgstr "Nėra pranešimų"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1089
|
#: js/ui/calendar.js:1103
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "Nėra įvykių"
|
msgstr "Nėra įvykių"
|
||||||
|
|
||||||
#: js/ui/calendar.js:1117
|
#: js/ui/calendar.js:1131
|
||||||
msgid "Clear All"
|
msgid "Clear All"
|
||||||
msgstr "Viską išvalyti"
|
msgstr "Viską išvalyti"
|
||||||
|
|
||||||
#. Translators: %s is an application name
|
#. Translators: %s is an application name
|
||||||
#: js/ui/closeDialog.js:44
|
#: js/ui/closeDialog.js:47
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "“%s” is not responding."
|
msgid "“%s” is not responding."
|
||||||
msgstr "„%s“ neatsiliepia."
|
msgstr "„%s“ neatsiliepia."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:45
|
#: js/ui/closeDialog.js:48
|
||||||
msgid ""
|
msgid ""
|
||||||
"You may choose to wait a short while for it to continue or force the "
|
"You may choose to wait a short while for it to continue or force the "
|
||||||
"application to quit entirely."
|
"application to quit entirely."
|
||||||
@@ -838,11 +838,11 @@ msgstr ""
|
|||||||
"Galite dar palaukti ir duoti programai laiko arba galite priverstinai "
|
"Galite dar palaukti ir duoti programai laiko arba galite priverstinai "
|
||||||
"išjungti programą."
|
"išjungti programą."
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:61
|
#: js/ui/closeDialog.js:64
|
||||||
msgid "Force Quit"
|
msgid "Force Quit"
|
||||||
msgstr "Priverstinai išjungti"
|
msgstr "Priverstinai išjungti"
|
||||||
|
|
||||||
#: js/ui/closeDialog.js:64
|
#: js/ui/closeDialog.js:67
|
||||||
msgid "Wait"
|
msgid "Wait"
|
||||||
msgstr "Laukti"
|
msgstr "Laukti"
|
||||||
|
|
||||||
@@ -859,7 +859,7 @@ msgstr "Atjungta išorinė laikmena"
|
|||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Atverti su %s"
|
msgstr "Atverti su %s"
|
||||||
|
|
||||||
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:284
|
#: js/ui/components/keyring.js:107 js/ui/components/polkitAgent.js:297
|
||||||
msgid "Password:"
|
msgid "Password:"
|
||||||
msgstr "Slaptažodis:"
|
msgstr "Slaptažodis:"
|
||||||
|
|
||||||
@@ -896,11 +896,11 @@ msgstr "Privataus rakto slaptažodis: "
|
|||||||
msgid "Service: "
|
msgid "Service: "
|
||||||
msgstr "Tarnyba: "
|
msgstr "Tarnyba: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:659
|
#: js/ui/components/networkAgent.js:292 js/ui/components/networkAgent.js:664
|
||||||
msgid "Authentication required by wireless network"
|
msgid "Authentication required by wireless network"
|
||||||
msgstr "Belaidžiam tinklui reikia patvirtinti tapatybę"
|
msgstr "Belaidžiam tinklui reikia patvirtinti tapatybę"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:660
|
#: js/ui/components/networkAgent.js:293 js/ui/components/networkAgent.js:665
|
||||||
#, javascript-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 "
|
||||||
@@ -909,7 +909,7 @@ msgstr ""
|
|||||||
"Slaptažodžiai arba šifravimo raktai yra būtini priėjimui prie belaidžio "
|
"Slaptažodžiai arba šifravimo raktai yra būtini priėjimui prie belaidžio "
|
||||||
"tinklo „%s“."
|
"tinklo „%s“."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:663
|
#: js/ui/components/networkAgent.js:297 js/ui/components/networkAgent.js:668
|
||||||
msgid "Wired 802.1X authentication"
|
msgid "Wired 802.1X authentication"
|
||||||
msgstr "Laidinis 802.1X tapatybės patvirtinimas"
|
msgstr "Laidinis 802.1X tapatybės patvirtinimas"
|
||||||
|
|
||||||
@@ -917,15 +917,15 @@ msgstr "Laidinis 802.1X tapatybės patvirtinimas"
|
|||||||
msgid "Network name: "
|
msgid "Network name: "
|
||||||
msgstr "Tinklo vardas: "
|
msgstr "Tinklo vardas: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:667
|
#: js/ui/components/networkAgent.js:304 js/ui/components/networkAgent.js:672
|
||||||
msgid "DSL authentication"
|
msgid "DSL authentication"
|
||||||
msgstr "DSL tapatybės patvirtinimas"
|
msgstr "DSL tapatybės patvirtinimas"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:673
|
#: js/ui/components/networkAgent.js:311 js/ui/components/networkAgent.js:678
|
||||||
msgid "PIN code required"
|
msgid "PIN code required"
|
||||||
msgstr "Reikalingas PIN kodas"
|
msgstr "Reikalingas PIN kodas"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:674
|
#: js/ui/components/networkAgent.js:312 js/ui/components/networkAgent.js:679
|
||||||
msgid "PIN code is needed for the mobile broadband device"
|
msgid "PIN code is needed for the mobile broadband device"
|
||||||
msgstr "Reikalingas PIN kodas mobiliajam plačiajuosčiam įrenginiui"
|
msgstr "Reikalingas PIN kodas mobiliajam plačiajuosčiam įrenginiui"
|
||||||
|
|
||||||
@@ -933,29 +933,29 @@ msgstr "Reikalingas PIN kodas mobiliajam plačiajuosčiam įrenginiui"
|
|||||||
msgid "PIN: "
|
msgid "PIN: "
|
||||||
msgstr "PIN: "
|
msgstr "PIN: "
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:680
|
#: js/ui/components/networkAgent.js:320 js/ui/components/networkAgent.js:685
|
||||||
msgid "Mobile broadband network password"
|
msgid "Mobile broadband network password"
|
||||||
msgstr "Mobiliojo plačiajuosčio tinklo slaptažodis"
|
msgstr "Mobiliojo plačiajuosčio tinklo slaptažodis"
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:664
|
#: js/ui/components/networkAgent.js:321 js/ui/components/networkAgent.js:669
|
||||||
#: js/ui/components/networkAgent.js:668 js/ui/components/networkAgent.js:681
|
#: js/ui/components/networkAgent.js:673 js/ui/components/networkAgent.js:686
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "A password is required to connect to “%s”."
|
msgid "A password is required to connect to “%s”."
|
||||||
msgstr "Būtinas slaptažodis norint prisijungti prie „%s“."
|
msgstr "Būtinas slaptažodis norint prisijungti prie „%s“."
|
||||||
|
|
||||||
#: js/ui/components/networkAgent.js:648 js/ui/status/network.js:1691
|
#: js/ui/components/networkAgent.js:653 js/ui/status/network.js:1704
|
||||||
msgid "Network Manager"
|
msgid "Network Manager"
|
||||||
msgstr "Tinklo tvarkymas"
|
msgstr "Tinklo tvarkymas"
|
||||||
|
|
||||||
#: js/ui/components/polkitAgent.js:43
|
#: js/ui/components/polkitAgent.js:48
|
||||||
msgid "Authentication Required"
|
msgid "Authentication Required"
|
||||||
msgstr "Reikia patvirtinti tapatybę"
|
msgstr "Reikia patvirtinti tapatybę"
|
||||||
|
|
||||||
#: js/ui/components/polkitAgent.js:71
|
#: js/ui/components/polkitAgent.js:76
|
||||||
msgid "Administrator"
|
msgid "Administrator"
|
||||||
msgstr "Administratorius"
|
msgstr "Administratorius"
|
||||||
|
|
||||||
#: js/ui/components/polkitAgent.js:151
|
#: js/ui/components/polkitAgent.js:156
|
||||||
msgid "Authenticate"
|
msgid "Authenticate"
|
||||||
msgstr "Patvirtinti tapatybę"
|
msgstr "Patvirtinti tapatybę"
|
||||||
|
|
||||||
@@ -963,7 +963,7 @@ msgstr "Patvirtinti tapatybę"
|
|||||||
#. * 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:270 js/ui/shellMountOperation.js:327
|
#: js/ui/components/polkitAgent.js:283 js/ui/shellMountOperation.js:327
|
||||||
msgid "Sorry, that didn’t work. Please try again."
|
msgid "Sorry, that didn’t work. Please try again."
|
||||||
msgstr "Atsiprašome, tai nesuveikė. Bandykite dar kartą."
|
msgstr "Atsiprašome, tai nesuveikė. Bandykite dar kartą."
|
||||||
|
|
||||||
@@ -1011,7 +1011,7 @@ msgstr "Pridėti pasaulio laikrodžius…"
|
|||||||
msgid "World Clocks"
|
msgid "World Clocks"
|
||||||
msgstr "Pasaulio laikrodžiai"
|
msgstr "Pasaulio laikrodžiai"
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:225
|
#: js/ui/dateMenu.js:227
|
||||||
msgid "Weather"
|
msgid "Weather"
|
||||||
msgstr "Orai"
|
msgstr "Orai"
|
||||||
|
|
||||||
@@ -1019,7 +1019,7 @@ msgstr "Orai"
|
|||||||
#. libgweather for the possible condition strings. If at all
|
#. libgweather for the possible condition strings. If at all
|
||||||
#. possible, the sentence should match the grammatical case etc. of
|
#. possible, the sentence should match the grammatical case etc. of
|
||||||
#. the inserted conditions.
|
#. the inserted conditions.
|
||||||
#: js/ui/dateMenu.js:289
|
#: js/ui/dateMenu.js:291
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s all day."
|
msgid "%s all day."
|
||||||
msgstr "%s visą dieną."
|
msgstr "%s visą dieną."
|
||||||
@@ -1028,7 +1028,7 @@ msgstr "%s visą dieną."
|
|||||||
#. libgweather for the possible condition strings. If at all
|
#. libgweather for the possible condition strings. If at all
|
||||||
#. possible, the sentence should match the grammatical case etc. of
|
#. possible, the sentence should match the grammatical case etc. of
|
||||||
#. the inserted conditions.
|
#. the inserted conditions.
|
||||||
#: js/ui/dateMenu.js:295
|
#: js/ui/dateMenu.js:297
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s, then %s later."
|
msgid "%s, then %s later."
|
||||||
msgstr "%s, o vėliau %s."
|
msgstr "%s, o vėliau %s."
|
||||||
@@ -1037,30 +1037,30 @@ msgstr "%s, o vėliau %s."
|
|||||||
#. libgweather for the possible condition strings. If at all
|
#. libgweather for the possible condition strings. If at all
|
||||||
#. possible, the sentence should match the grammatical case etc. of
|
#. possible, the sentence should match the grammatical case etc. of
|
||||||
#. the inserted conditions.
|
#. the inserted conditions.
|
||||||
#: js/ui/dateMenu.js:301
|
#: js/ui/dateMenu.js:303
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s, then %s, followed by %s later."
|
msgid "%s, then %s, followed by %s later."
|
||||||
msgstr "%s, tuomet %s, o po to vėliau %s."
|
msgstr "%s, tuomet %s, o po to vėliau %s."
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:312
|
#: js/ui/dateMenu.js:314
|
||||||
msgid "Select a location…"
|
msgid "Select a location…"
|
||||||
msgstr "Pasirinkite vietą…"
|
msgstr "Pasirinkite vietą…"
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:315
|
#: js/ui/dateMenu.js:317
|
||||||
msgid "Loading…"
|
msgid "Loading…"
|
||||||
msgstr "Įkeliama…"
|
msgstr "Įkeliama…"
|
||||||
|
|
||||||
#. Translators: %s is a temperature with unit, e.g. "23℃"
|
#. Translators: %s is a temperature with unit, e.g. "23℃"
|
||||||
#: js/ui/dateMenu.js:321
|
#: js/ui/dateMenu.js:323
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Feels like %s."
|
msgid "Feels like %s."
|
||||||
msgstr "Jaučiama kaip %s."
|
msgstr "Jaučiama kaip %s."
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:324
|
#: js/ui/dateMenu.js:326
|
||||||
msgid "Go online for weather information"
|
msgid "Go online for weather information"
|
||||||
msgstr "Prisijunkite prie tinklo orų informacijai gauti"
|
msgstr "Prisijunkite prie tinklo orų informacijai gauti"
|
||||||
|
|
||||||
#: js/ui/dateMenu.js:326
|
#: js/ui/dateMenu.js:328
|
||||||
msgid "Weather information is currently unavailable"
|
msgid "Weather information is currently unavailable"
|
||||||
msgstr "Orų informacija šiuo metu yra neprieinama"
|
msgstr "Orų informacija šiuo metu yra neprieinama"
|
||||||
|
|
||||||
@@ -1252,12 +1252,10 @@ msgid "Allow"
|
|||||||
msgstr "Leisti"
|
msgstr "Leisti"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:33
|
#: js/ui/kbdA11yDialog.js:33
|
||||||
#| msgid "Slow Keys"
|
|
||||||
msgid "Slow Keys Turned On"
|
msgid "Slow Keys Turned On"
|
||||||
msgstr "Lėtieji klavišai įjungti"
|
msgstr "Lėtieji klavišai įjungti"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:34
|
#: js/ui/kbdA11yDialog.js:34
|
||||||
#| msgid "Slow Keys"
|
|
||||||
msgid "Slow Keys Turned Off"
|
msgid "Slow Keys Turned Off"
|
||||||
msgstr "Lėtieji klavišai išjungti"
|
msgstr "Lėtieji klavišai išjungti"
|
||||||
|
|
||||||
@@ -1270,12 +1268,10 @@ msgstr ""
|
|||||||
"trumpinus, kuris keičia klaviatūros veikseną."
|
"trumpinus, kuris keičia klaviatūros veikseną."
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:42
|
#: js/ui/kbdA11yDialog.js:42
|
||||||
#| msgid "Sticky Keys"
|
|
||||||
msgid "Sticky Keys Turned On"
|
msgid "Sticky Keys Turned On"
|
||||||
msgstr "Kibieji klavišai įjungti"
|
msgstr "Kibieji klavišai įjungti"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:43
|
#: js/ui/kbdA11yDialog.js:43
|
||||||
#| msgid "Sticky Keys"
|
|
||||||
msgid "Sticky Keys Turned Off"
|
msgid "Sticky Keys Turned Off"
|
||||||
msgstr "Kibieji klavišai išjungti"
|
msgstr "Kibieji klavišai išjungti"
|
||||||
|
|
||||||
@@ -1302,13 +1298,13 @@ msgid "Leave On"
|
|||||||
msgstr "Palikti įjungtą"
|
msgstr "Palikti įjungtą"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:59 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:1281
|
#: js/ui/status/network.js:1294
|
||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Įjungti"
|
msgstr "Įjungti"
|
||||||
|
|
||||||
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
#: js/ui/kbdA11yDialog.js:67 js/ui/status/bluetooth.js:143
|
||||||
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
#: js/ui/status/network.js:154 js/ui/status/network.js:337
|
||||||
#: js/ui/status/network.js:1281 js/ui/status/network.js:1396
|
#: js/ui/status/network.js:1294 js/ui/status/network.js:1409
|
||||||
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
#: js/ui/status/nightLight.js:47 js/ui/status/rfkill.js:90
|
||||||
#: js/ui/status/rfkill.js:117
|
#: js/ui/status/rfkill.js:117
|
||||||
msgid "Turn Off"
|
msgid "Turn Off"
|
||||||
@@ -1319,7 +1315,6 @@ msgid "Leave Off"
|
|||||||
msgstr "Palikti išjungtą"
|
msgstr "Palikti išjungtą"
|
||||||
|
|
||||||
#: js/ui/keyboard.js:198
|
#: js/ui/keyboard.js:198
|
||||||
#| msgid "Date & Time Settings"
|
|
||||||
msgid "Region & Language Settings"
|
msgid "Region & Language Settings"
|
||||||
msgstr "Regiono ir kalbos nustatymai"
|
msgstr "Regiono ir kalbos nustatymai"
|
||||||
|
|
||||||
@@ -1371,7 +1366,7 @@ msgstr "Žiūrėti šaltinį"
|
|||||||
msgid "Web Page"
|
msgid "Web Page"
|
||||||
msgstr "Tinklalapis"
|
msgstr "Tinklalapis"
|
||||||
|
|
||||||
#: js/ui/messageTray.js:1493
|
#: js/ui/messageTray.js:1495
|
||||||
msgid "System Information"
|
msgid "System Information"
|
||||||
msgstr "Sistemos informacija"
|
msgstr "Sistemos informacija"
|
||||||
|
|
||||||
@@ -1383,6 +1378,10 @@ msgstr "Nežinomas atlikėjas"
|
|||||||
msgid "Unknown title"
|
msgid "Unknown title"
|
||||||
msgstr "Nežinomas pavadinimas"
|
msgstr "Nežinomas pavadinimas"
|
||||||
|
|
||||||
|
#: js/ui/osdWindow.js:32 js/ui/status/volume.js:204
|
||||||
|
msgid "Volume"
|
||||||
|
msgstr "Garsumas"
|
||||||
|
|
||||||
#: js/ui/overview.js:83
|
#: js/ui/overview.js:83
|
||||||
msgid "Undo"
|
msgid "Undo"
|
||||||
msgstr "Atšaukti"
|
msgstr "Atšaukti"
|
||||||
@@ -1425,42 +1424,42 @@ msgstr "Priskirti klavišų kombinaciją"
|
|||||||
msgid "Done"
|
msgid "Done"
|
||||||
msgstr "Atlikta"
|
msgstr "Atlikta"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:740
|
#: js/ui/padOsd.js:742
|
||||||
msgid "Edit…"
|
msgid "Edit…"
|
||||||
msgstr "Keisti…"
|
msgstr "Keisti…"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:782 js/ui/padOsd.js:887
|
#: js/ui/padOsd.js:784 js/ui/padOsd.js:889
|
||||||
msgid "None"
|
msgid "None"
|
||||||
msgstr "Nėra"
|
msgstr "Nėra"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:841
|
#: js/ui/padOsd.js:843
|
||||||
msgid "Press a button to configure"
|
msgid "Press a button to configure"
|
||||||
msgstr "Spauskite mygtuką konfigūravimui"
|
msgstr "Spauskite mygtuką konfigūravimui"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:842
|
#: js/ui/padOsd.js:844
|
||||||
msgid "Press Esc to exit"
|
msgid "Press Esc to exit"
|
||||||
msgstr "Spauskit Esc išėjimui"
|
msgstr "Spauskit Esc išėjimui"
|
||||||
|
|
||||||
#: js/ui/padOsd.js:845
|
#: js/ui/padOsd.js:847
|
||||||
msgid "Press any key to exit"
|
msgid "Press any key to exit"
|
||||||
msgstr "Išėjimui spauskite bet kurį klavišą"
|
msgstr "Išėjimui spauskite bet kurį klavišą"
|
||||||
|
|
||||||
#: js/ui/panel.js:355
|
#: js/ui/panel.js:356
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Užverti"
|
msgstr "Užverti"
|
||||||
|
|
||||||
#. 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:411
|
#: js/ui/panel.js:412
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Apžvalga"
|
msgstr "Apžvalga"
|
||||||
|
|
||||||
#: js/ui/panel.js:692
|
#: js/ui/panel.js:693
|
||||||
msgctxt "System menu in the top bar"
|
msgctxt "System menu in the top bar"
|
||||||
msgid "System"
|
msgid "System"
|
||||||
msgstr "Sistema"
|
msgstr "Sistema"
|
||||||
|
|
||||||
#: js/ui/panel.js:811
|
#: js/ui/panel.js:816
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Viršutinė juosta"
|
msgstr "Viršutinė juosta"
|
||||||
|
|
||||||
@@ -1469,23 +1468,23 @@ msgstr "Viršutinė juosta"
|
|||||||
#. "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:291
|
#: js/ui/popupMenu.js:300
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:70
|
#: js/ui/runDialog.js:74
|
||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Įveskite komandą"
|
msgstr "Įveskite komandą"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:110 js/ui/windowMenu.js:175
|
#: js/ui/runDialog.js:114 js/ui/windowMenu.js:174
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr "Užverti"
|
msgstr "Užverti"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:273
|
#: js/ui/runDialog.js:278
|
||||||
msgid "Restart is not available on Wayland"
|
msgid "Restart is not available on Wayland"
|
||||||
msgstr "Perleisti Wayland aplinkoje negalima"
|
msgstr "Perleisti Wayland aplinkoje negalima"
|
||||||
|
|
||||||
#: js/ui/runDialog.js:278
|
#: js/ui/runDialog.js:283
|
||||||
msgid "Restarting…"
|
msgid "Restarting…"
|
||||||
msgstr "Perleidžiama…"
|
msgstr "Perleidžiama…"
|
||||||
|
|
||||||
@@ -1511,7 +1510,7 @@ msgstr[0] "%d naujas pranešimas"
|
|||||||
msgstr[1] "%d nauji pranešimai"
|
msgstr[1] "%d nauji pranešimai"
|
||||||
msgstr[2] "%d naujų pranešimų"
|
msgstr[2] "%d naujų pranešimų"
|
||||||
|
|
||||||
#: js/ui/screenShield.js:451 js/ui/status/system.js:283
|
#: js/ui/screenShield.js:451 js/ui/status/system.js:294
|
||||||
msgid "Lock"
|
msgid "Lock"
|
||||||
msgstr "Užrakinti"
|
msgstr "Užrakinti"
|
||||||
|
|
||||||
@@ -1694,7 +1693,7 @@ msgid "<unknown>"
|
|||||||
msgstr "<nežinoma>"
|
msgstr "<nežinoma>"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:441 js/ui/status/network.js:1310
|
#: js/ui/status/network.js:441 js/ui/status/network.js:1323
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s išjungtas"
|
msgstr "%s išjungtas"
|
||||||
@@ -1720,7 +1719,7 @@ msgid "%s Disconnecting"
|
|||||||
msgstr "Atsijungiama nuo %s"
|
msgstr "Atsijungiama nuo %s"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:459 js/ui/status/network.js:1302
|
#: js/ui/status/network.js:459 js/ui/status/network.js:1315
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
msgid "%s Connecting"
|
||||||
msgstr "Jungiamasi prie %s"
|
msgstr "Jungiamasi prie %s"
|
||||||
@@ -1760,7 +1759,7 @@ msgid "Mobile Broadband Settings"
|
|||||||
msgstr "Mobiliojo plačiajuosčio tinklo nustatymai"
|
msgstr "Mobiliojo plačiajuosčio tinklo nustatymai"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:578 js/ui/status/network.js:1307
|
#: js/ui/status/network.js:578 js/ui/status/network.js:1320
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hardware Disabled"
|
msgid "%s Hardware Disabled"
|
||||||
msgstr "%s aparatinė įranga išjungta"
|
msgstr "%s aparatinė įranga išjungta"
|
||||||
@@ -1816,56 +1815,56 @@ msgstr "Nėra tinklų"
|
|||||||
msgid "Use hardware switch to turn off"
|
msgid "Use hardware switch to turn off"
|
||||||
msgstr "Išjungimui naudoti aparatinį jungiklį"
|
msgstr "Išjungimui naudoti aparatinį jungiklį"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1173
|
#: js/ui/status/network.js:1186
|
||||||
msgid "Select Network"
|
msgid "Select Network"
|
||||||
msgstr "Pasirinkite tinklą"
|
msgstr "Pasirinkite tinklą"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1179
|
#: js/ui/status/network.js:1192
|
||||||
msgid "Wi-Fi Settings"
|
msgid "Wi-Fi Settings"
|
||||||
msgstr "Belaidžio ryšio nustatymai"
|
msgstr "Belaidžio ryšio nustatymai"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1298
|
#: js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hotspot Active"
|
msgid "%s Hotspot Active"
|
||||||
msgstr "Prieigos taškas %s aktyvus"
|
msgstr "Prieigos taškas %s aktyvus"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: js/ui/status/network.js:1313
|
#: js/ui/status/network.js:1326
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
msgstr "Neprisijungta prie %s"
|
msgstr "Neprisijungta prie %s"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1413
|
#: js/ui/status/network.js:1426
|
||||||
msgid "connecting…"
|
msgid "connecting…"
|
||||||
msgstr "jungiamasi…"
|
msgstr "jungiamasi…"
|
||||||
|
|
||||||
#. 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:1416
|
#: js/ui/status/network.js:1429
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "reikia patvirtinti tapatybę"
|
msgstr "reikia patvirtinti tapatybę"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1418
|
#: js/ui/status/network.js:1431
|
||||||
msgid "connection failed"
|
msgid "connection failed"
|
||||||
msgstr "nepavyko prisijungti"
|
msgstr "nepavyko prisijungti"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1472
|
#: js/ui/status/network.js:1485
|
||||||
msgid "VPN Settings"
|
msgid "VPN Settings"
|
||||||
msgstr "VPN nustatymai"
|
msgstr "VPN nustatymai"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1485
|
#: js/ui/status/network.js:1498
|
||||||
msgid "VPN"
|
msgid "VPN"
|
||||||
msgstr "VPN"
|
msgstr "VPN"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1495
|
#: js/ui/status/network.js:1508
|
||||||
msgid "VPN Off"
|
msgid "VPN Off"
|
||||||
msgstr "VPN išjungtas"
|
msgstr "VPN išjungtas"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1559 js/ui/status/rfkill.js:93
|
#: js/ui/status/network.js:1572 js/ui/status/rfkill.js:93
|
||||||
msgid "Network Settings"
|
msgid "Network Settings"
|
||||||
msgstr "Tinklo nustatymai"
|
msgstr "Tinklo nustatymai"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1588
|
#: js/ui/status/network.js:1601
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wired Connection"
|
msgid "%s Wired Connection"
|
||||||
msgid_plural "%s Wired Connections"
|
msgid_plural "%s Wired Connections"
|
||||||
@@ -1873,7 +1872,7 @@ msgstr[0] "%s laidinis ryšys"
|
|||||||
msgstr[1] "%s laidiniai ryšiai"
|
msgstr[1] "%s laidiniai ryšiai"
|
||||||
msgstr[2] "%s laidinių ryšių"
|
msgstr[2] "%s laidinių ryšių"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1592
|
#: js/ui/status/network.js:1605
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Wi-Fi Connection"
|
msgid "%s Wi-Fi Connection"
|
||||||
msgid_plural "%s Wi-Fi Connections"
|
msgid_plural "%s Wi-Fi Connections"
|
||||||
@@ -1881,7 +1880,7 @@ msgstr[0] "%s belaidis ryšys"
|
|||||||
msgstr[1] "%s belaidžiai ryšiai"
|
msgstr[1] "%s belaidžiai ryšiai"
|
||||||
msgstr[2] "%s belaidžių ryšių"
|
msgstr[2] "%s belaidžių ryšių"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1596
|
#: js/ui/status/network.js:1609
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Modem Connection"
|
msgid "%s Modem Connection"
|
||||||
msgid_plural "%s Modem Connections"
|
msgid_plural "%s Modem Connections"
|
||||||
@@ -1889,11 +1888,11 @@ msgstr[0] "%s modemo ryšys"
|
|||||||
msgstr[1] "%s modemo ryšiai"
|
msgstr[1] "%s modemo ryšiai"
|
||||||
msgstr[2] "%s modemo ryšių"
|
msgstr[2] "%s modemo ryšių"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1728
|
#: js/ui/status/network.js:1741
|
||||||
msgid "Connection failed"
|
msgid "Connection failed"
|
||||||
msgstr "Nepavyko prisijungti"
|
msgstr "Nepavyko prisijungti"
|
||||||
|
|
||||||
#: js/ui/status/network.js:1729
|
#: js/ui/status/network.js:1742
|
||||||
msgid "Activation of network connection failed"
|
msgid "Activation of network connection failed"
|
||||||
msgstr "Tinklo ryšio nepavyko aktyvuoti"
|
msgstr "Tinklo ryšio nepavyko aktyvuoti"
|
||||||
|
|
||||||
@@ -1944,6 +1943,15 @@ msgstr "%d∶%02d iki pilno (%d %%)"
|
|||||||
msgid "%d %%"
|
msgid "%d %%"
|
||||||
msgstr "%d %%"
|
msgstr "%d %%"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:46
|
||||||
|
msgid "Screen is Being Shared"
|
||||||
|
msgstr "Ekranas yra bendrinamas"
|
||||||
|
|
||||||
|
#: js/ui/status/remoteAccess.js:48
|
||||||
|
#| msgid "Turn Off"
|
||||||
|
msgid "Turn off"
|
||||||
|
msgstr "Išjungti"
|
||||||
|
|
||||||
#. 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
|
||||||
#. changing the menu contents.
|
#. changing the menu contents.
|
||||||
@@ -1963,28 +1971,28 @@ msgstr "Atsijungti"
|
|||||||
msgid "Account Settings"
|
msgid "Account Settings"
|
||||||
msgstr "Paskyros nustatymai"
|
msgstr "Paskyros nustatymai"
|
||||||
|
|
||||||
#: js/ui/status/system.js:268
|
#: js/ui/status/system.js:279
|
||||||
msgid "Orientation Lock"
|
msgid "Orientation Lock"
|
||||||
msgstr "Padėties užrakinimas"
|
msgstr "Padėties užrakinimas"
|
||||||
|
|
||||||
#: js/ui/status/system.js:294
|
#: js/ui/status/system.js:305
|
||||||
msgid "Suspend"
|
msgid "Suspend"
|
||||||
msgstr "Pristabdyti"
|
msgstr "Pristabdyti"
|
||||||
|
|
||||||
#: js/ui/status/system.js:304
|
#: js/ui/status/system.js:315
|
||||||
msgid "Power Off"
|
msgid "Power Off"
|
||||||
msgstr "Išjungti"
|
msgstr "Išjungti"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:272
|
#: js/ui/status/thunderbolt.js:298
|
||||||
msgid "Thunderbolt"
|
msgid "Thunderbolt"
|
||||||
msgstr "Thunderbolt"
|
msgstr "Thunderbolt"
|
||||||
|
|
||||||
#. we are done
|
#. we are done
|
||||||
#: js/ui/status/thunderbolt.js:328
|
#: js/ui/status/thunderbolt.js:354
|
||||||
msgid "Unknown Thunderbolt device"
|
msgid "Unknown Thunderbolt device"
|
||||||
msgstr "Nežinoma Thunderbolt įrenginys"
|
msgstr "Nežinoma Thunderbolt įrenginys"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:329
|
#: js/ui/status/thunderbolt.js:355
|
||||||
msgid ""
|
msgid ""
|
||||||
"New device has been detected while you were away. Please disconnect and "
|
"New device has been detected while you were away. Please disconnect and "
|
||||||
"reconnect the device to start using it."
|
"reconnect the device to start using it."
|
||||||
@@ -1992,23 +2000,20 @@ msgstr ""
|
|||||||
"Jums nesant aptiktas naujas įrenginys. Atjunkite ir vėl prijunkite įrenginį, "
|
"Jums nesant aptiktas naujas įrenginys. Atjunkite ir vėl prijunkite įrenginį, "
|
||||||
"jei norite jį naudoti."
|
"jei norite jį naudoti."
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:334
|
#: js/ui/status/thunderbolt.js:360
|
||||||
msgid "Thunderbolt authorization error"
|
msgid "Thunderbolt authorization error"
|
||||||
msgstr "Thunderbolt autorizacijos klaida"
|
msgstr "Thunderbolt autorizacijos klaida"
|
||||||
|
|
||||||
#: js/ui/status/thunderbolt.js:335
|
#: js/ui/status/thunderbolt.js:361
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Could not authorize the thunderbolt device: %s"
|
#| msgid "Could not authorize the thunderbolt device: %s"
|
||||||
msgstr "Nepavyko autorizuoti thunderbolt įrenginio: %s"
|
msgid "Could not authorize the Thunderbolt device: %s"
|
||||||
|
msgstr "Nepavyko autorizuoti Thunderbolt įrenginio: %s"
|
||||||
|
|
||||||
#: js/ui/status/volume.js:128
|
#: js/ui/status/volume.js:135
|
||||||
msgid "Volume changed"
|
msgid "Volume changed"
|
||||||
msgstr "Garsumas pakeistas"
|
msgstr "Garsumas pakeistas"
|
||||||
|
|
||||||
#: js/ui/status/volume.js:170
|
|
||||||
msgid "Volume"
|
|
||||||
msgstr "Garsumas"
|
|
||||||
|
|
||||||
#. Translators: this is for display mirroring i.e. cloning.
|
#. Translators: this is for display mirroring i.e. cloning.
|
||||||
#. * Try to keep it under around 15 characters.
|
#. * Try to keep it under around 15 characters.
|
||||||
#.
|
#.
|
||||||
@@ -2058,22 +2063,22 @@ msgstr "Ieškoti"
|
|||||||
msgid "“%s” is ready"
|
msgid "“%s” is ready"
|
||||||
msgstr "„%s“ yra pasirengusi"
|
msgstr "„%s“ yra pasirengusi"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:72
|
#: js/ui/windowManager.js:74
|
||||||
msgid "Do you want to keep these display settings?"
|
msgid "Do you want to keep these display settings?"
|
||||||
msgstr "Ar norite įrašyti šiuos vaizduoklio nustatymus?"
|
msgstr "Ar norite įrašyti šiuos vaizduoklio nustatymus?"
|
||||||
|
|
||||||
#. 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:84
|
#: js/ui/windowManager.js:86
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Grąžinti nustatymus"
|
msgstr "Grąžinti nustatymus"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:87
|
#: js/ui/windowManager.js:89
|
||||||
msgid "Keep Changes"
|
msgid "Keep Changes"
|
||||||
msgstr "Įrašyti pakeitimus"
|
msgstr "Įrašyti pakeitimus"
|
||||||
|
|
||||||
#: js/ui/windowManager.js:105
|
#: js/ui/windowManager.js:107
|
||||||
#, javascript-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"
|
||||||
@@ -2083,7 +2088,7 @@ msgstr[2] "Pakeitimai bus grąžinti po %d sekundžių"
|
|||||||
|
|
||||||
#. Translators: This represents the size of a window. The first number is
|
#. Translators: This represents the size of a window. The first number is
|
||||||
#. * the width of the window and the second is the height.
|
#. * the width of the window and the second is the height.
|
||||||
#: js/ui/windowManager.js:660
|
#: js/ui/windowManager.js:689
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d × %d"
|
msgid "%d × %d"
|
||||||
msgstr "%d × %d"
|
msgstr "%d × %d"
|
||||||
@@ -2136,19 +2141,19 @@ msgstr "Perkelti į aukščiau esančią darbo sritį"
|
|||||||
msgid "Move to Workspace Down"
|
msgid "Move to Workspace Down"
|
||||||
msgstr "Perkelti į žemiau esančią darbo sritį"
|
msgstr "Perkelti į žemiau esančią darbo sritį"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:140
|
#: js/ui/windowMenu.js:139
|
||||||
msgid "Move to Monitor Up"
|
msgid "Move to Monitor Up"
|
||||||
msgstr "Perkelti į aukščiau esantį monitorių"
|
msgstr "Perkelti į aukščiau esantį monitorių"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:149
|
#: js/ui/windowMenu.js:148
|
||||||
msgid "Move to Monitor Down"
|
msgid "Move to Monitor Down"
|
||||||
msgstr "Perkelti į žemiau esantį monitorių"
|
msgstr "Perkelti į žemiau esantį monitorių"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:158
|
#: js/ui/windowMenu.js:157
|
||||||
msgid "Move to Monitor Left"
|
msgid "Move to Monitor Left"
|
||||||
msgstr "Perkelti į kairiau esantį monitorių"
|
msgstr "Perkelti į kairiau esantį monitorių"
|
||||||
|
|
||||||
#: js/ui/windowMenu.js:167
|
#: js/ui/windowMenu.js:166
|
||||||
msgid "Move to Monitor Right"
|
msgid "Move to Monitor Right"
|
||||||
msgstr "Perkelti į dešiniau esantį monitorių"
|
msgstr "Perkelti į dešiniau esantį monitorių"
|
||||||
|
|
||||||
@@ -2161,28 +2166,28 @@ msgstr "Evolution kalendorius"
|
|||||||
msgid "evolution"
|
msgid "evolution"
|
||||||
msgstr "evolution"
|
msgstr "evolution"
|
||||||
|
|
||||||
#: src/main.c:432
|
#: src/main.c:410
|
||||||
msgid "Print version"
|
msgid "Print version"
|
||||||
msgstr "Išvesti versijos numerį"
|
msgstr "Išvesti versijos numerį"
|
||||||
|
|
||||||
#: src/main.c:438
|
#: src/main.c:416
|
||||||
msgid "Mode used by GDM for login screen"
|
msgid "Mode used by GDM for login screen"
|
||||||
msgstr "Veiksena, naudojama GDM prisijungimo ekrane"
|
msgstr "Veiksena, naudojama GDM prisijungimo ekrane"
|
||||||
|
|
||||||
#: src/main.c:444
|
#: src/main.c:422
|
||||||
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
msgid "Use a specific mode, e.g. “gdm” for login screen"
|
||||||
msgstr "Naudoti konkrečią veikseną, pvz., „gdm“ prisijungimo ekranui"
|
msgstr "Naudoti konkrečią veikseną, pvz., „gdm“ prisijungimo ekranui"
|
||||||
|
|
||||||
#: src/main.c:450
|
#: src/main.c:428
|
||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "Išvardinti galimas veiksenas"
|
msgstr "Išvardinti galimas veiksenas"
|
||||||
|
|
||||||
#: src/shell-app.c:270
|
#: src/shell-app.c:272
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Nežinoma"
|
msgstr "Nežinoma"
|
||||||
|
|
||||||
#: src/shell-app.c:511
|
#: src/shell-app.c:523
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "Nepavyko paleisti „%s“"
|
msgstr "Nepavyko paleisti „%s“"
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user