Compare commits

..

13 Commits

Author SHA1 Message Date
Seif Lotfy
07c39959d9 Use the correct ID for app that is being launched 2011-04-04 17:02:54 -04:00
Federico Mena Quintero
23d1d18619 Convert stringified timestamps from D-Bus to integers
We already had the symmetrical code to convert numerical timestamps to strings before
sending out D-Bus requests, anyway.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-03-31 13:07:44 -04:00
Federico Mena Quintero
23bf5db80c Merge remote branch 'origin/master' into zeitgeist 2011-03-29 17:00:54 -04:00
Seif Lotfy
550e9973b7 Add basic jumplists in the application icons
We add recently-used items relative to the app in question, and
also frequently-used items, to the app icon's popup menu.
2011-03-28 18:35:55 -04:00
Federico Mena Quintero
e4e6b26e15 Merge remote branch origin/master into zeitgeist 2011-03-25 18:28:35 -04:00
Federico Mena Quintero
9551e1c2f5 Merge remote branch 'origin/master' into zeitgeist 2011-03-14 18:35:33 -04:00
Federico Mena Quintero
a70ea12be8 Merge remote branch 'origin/master' into zeitgeist 2011-03-09 18:50:07 -05:00
Seif Lotfy
fb5a3a53fa Don't refresh all the search providers in O(n^2) fashion; just refresh the one that changed
This modification reduces the faulty clearing and redrawing of the
results.  The old code refreshed the view for every async
search provider by iterating through all result sets (one result set per
provider) and refreshing all providers. In this case there were 40
redraws. This patch adds a new method _clearDisplayForProvider that
allows us to refresh only providers with changed results.
2011-03-04 16:42:15 -05:00
Federico Mena Quintero
30eac56691 Merge master into zeitgeist 2011-03-03 21:51:15 -05:00
Federico Mena Quintero
cb6f3a0836 Add all of Zeitgeist's enum values for ResultType and StorageState
These are copied from the Python code.  It's unfortunate
that we can't introspect enum values from D-Bus.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-03-03 21:40:44 -05:00
Siegfried-Angel Gevatter Pujals
8e579024b1 Add support for Zeitgeist search providers
https://bugzilla.gnome.org/show_bug.cgi?id=640659

Co-authored-by: Seif Lotfy <seif@lotfy.com>
Co-authored-by: Federico Mena Quintero <federico@gnome.org>
2011-03-03 21:40:44 -05:00
Siegfried-Angel Gevatter Pujals
41c70293df Add JavaScript bindings for Zeitgeist
Co-authored-by: Seif Lotfy <seif@lotfy.com>
Co-authored-by: Federico Mena Quintero <federico@gnome.org>
2011-03-03 21:40:44 -05:00
Seif Lotfy
4b015903bc Add support for asynchronous search providers
https://bugzilla.gnome.org/show_bug.cgi?id=640659
2011-03-03 21:40:33 -05:00
132 changed files with 7558 additions and 19095 deletions

1
.gitignore vendored
View File

@@ -7,6 +7,7 @@ ChangeLog
INSTALL
Makefile
Makefile.in
NEWS
aclocal.m4
autom4te.cache
config.h

146
NEWS
View File

@@ -1,146 +0,0 @@
3.0.1
=====
* Network menu
- Fix problems updating the menu for mobile broadband devices [Giovanni]
https://bugzilla.gnome.org/show_bug.cgi?id=646395
- Fix missing device descriptions with multiple devices of the
same type [Giovanni]
https://bugzilla.gnome.org/show_bug.cgi?id=646074
- Label ad-hoc neworks with an appropriate icon [Dan]
https://bugzilla.gnome.org/show_bug.cgi?id=646141
- Fix displaying some devices states as "invalid" [Dan]
https://bugzilla.gnome.org/show_bug.cgi?id=646946
- Fix problems with access points that don't report a SSID [Giovanni]
https://bugzilla.gnome.org/show_bug.cgi?id=647040
- Miscellaneous minor bug fixes [Dan, Giovanni, Owen]
645981, 646558, 646443, 646708, 646968
* Application menu and icon
- Fix bug where application menu icon was missing at GNOME Shell
startup. [Florian]
https://bugzilla.gnome.org/show_bug.cgi?id=644122
- Fix missing application menu for dialog windows [Colin]
https://bugzilla.gnome.org/show_bug.cgi?id=647082
- When launching an application through an alternate launcher
(like for a System Settings pane), association the windows with
the application, not the launcher. [Colin]
https://bugzilla.gnome.org/show_bug.cgi?id=646689
* Activities overview
- Load the applications view incrementally to avoid potentially freezing
for multiple seconds [Colin]
https://bugzilla.gnome.org/show_bug.cgi?id=647778
- Fix bug where package installation while the overview
was up could result in a corrupted application display. [Giovanni]
https://bugzilla.gnome.org/show_bug.cgi?id=645801
- Fix dragging from the search results to launch apps and docs [Florian]
https://bugzilla.gnome.org/show_bug.cgi?id=645990
- Fix flickering of selection when searching in the overview [Florian]
https://bugzilla.gnome.org/show_bug.cgi?id=646019
- Fix bug when typing into the search box when text was already
selected [Nohemi]
https://bugzilla.gnome.org/show_bug.cgi?id=636341
* Fix layout of notifications for right-to-left languages [Florian]
https://bugzilla.gnome.org/show_bug.cgi?id=646921
* Remove a confusing special case where Alt-Tab sometimes switched
to a different window of the same application rather than to
a different application. [Rui]
https://bugzilla.gnome.org/show_bug.cgi?id=648132
* Fix a crash that could happen when a window was opened on a
workspace that was immediately removed [Dan]
https://bugzilla.gnome.org/show_bug.cgi?id=648132
* Fix keyboard navigation in logout/reboot dialogs [Dan]
https://bugzilla.gnome.org/show_bug.cgi?id=646740
* Fix missing inspector icon in Looking Glass console [Dan]
* Miscellaneous minor bug fixes [Adel, Colin, Dan, Florian, Nohemi]
645648, 646205, 646257, 646855, 647098, 646730
Contributors:
Giovanni Campagna, Nohemi Fernandez, Adel Gadllah, Rui Matos, Florian Müllner,
Owen Taylor, Colin Walters, Dan Winship
Translations:
Hendrik Richter [de], Jorge González [es], Arash Mousavi [fa],
Fran Diéguez [gl], Jiro Matsuzawa [ja], Piotr Drąg [pl], Daniel Nylander [sv],
Sira Nokyoongtong [th], Muhammet Kara [tr], Nguyễn Thái Ngọc Duy [vi],
Aron Xu [zh_CN], Chao-Hsiung Liao [zh_HK, zh_TW]
3.0.0.2
=======
* Fix missing import that was preventing extensions from loading.
[Maxim Ermilov]
https://bugzilla.gnome.org/show_bug.cgi?id=646333
Translations:
Timo Jyrinki [fi]
3.0.0.1
=======
* Fix problem with stuck event handling if network menu pops down while
user is using the scrollbar. [Owen Taylor]
https://bugzilla.gnome.org/show_bug.cgi?id=646825
Contributors to GNOME Shell 3.0
===============================
Code:
Josh Adams, Kiyoshi Aman, Nuno Araujo, Emmanuele Bassi, Dirk-Jan C. Binnema,
Wouter Bolsterlee, Raphael Bosshard, Milan Bouchet-Valat, Christina Boumpouka,
Mathieu Bridon, Alban Browaeys, Phil Bull, Micro Cai, Giovanni Campagna,
Cosimo Cecchi, Tor-björn Claesson, Matthias Clasen, Jason D. Clinton,
Frederic Crozat, Guillaume Desmottes, Sander Dijkhuis, Neha Doijode,
Maxim Ermilov, Diego Escalante Urrelo, Luca Ferretti, Steve Frécinaux,
Takao Fujiwara, Adel Gadllah, Vadim Girlin, Nick Glynn, Guido Günther,
Leon Handreke, Lex Hider, Richard Hughes, Javier Jardón, Abderrahim Kitouni,
Andre Klapper, Alexander Larsson, Nickolas Lloyd, Ryan Lortie, Kjartan Maraas,
Koop Mast, Rui Matos, Jonathan Matthew, William Jon McCann, Morten Mjelva,
Federico Mena Quintero, Florian Müllner, Jon Nettleton, Hellyna Ng,
Discardi Nicola, Carlos Martín Nieto, Bastien Nocera, Bill Nottingham,
Matt Novenstern, Marc-Antoine Perennou, Neil Perry, Frédéric Péters,
Alejandro Piñeiro, Siegfried-Angel Gevatter Pujals, "res", Neil Roberts,
"Sardem FF7", Florian Scandella, Joseph Scheuhammer, Christian Schramm,
Gustavo Noronha Silva, Jasper St. Pierre, Eric Springer, Jakub Steiner,
Jonathan Strander, Ray Strode, Owen Taylor, Rico Tzschichholz,
Sergey V. Udaltsov, Daiki Ueno, Vincent Untz, Marcelo Jorge Vieira,
Mads Villadsen, Colin Walters, Dan Winship, William Wolf, Thomas Wood,
Pierre Yager, David Zeuthen, Marina Zhurakhinskaya
Design:
Allan Day, William Jon McCann, Jeremy Perry, Jakub Steiner
2008 Boston GNOME design hackfest participants (especially Neil J. Patel
for turning the resulting sketches into our first mockups.)
Everybody on irc.gnome.org:#gnome-design
Translations:
Friedel Wolff (af), Khaled Hosny (ar), Ivaylo Valkov (bg), Jamil Ahmed (bn)
Runa Bhattacharjee (bn_IN), Gil Forcada, Siegfried-Angel Gevatter Pujals,
Jordi Serratosa (ca), Andre Klapper, Petr Kovar (cs), Kenneth Nielsen,
Kris Thomsen (da), Mario Blättermann, Hendrik Brandt, Christian Kirbach,
Hendrik Richter, Wolfgang Stöggl (de), Michael Kotsarinis, Kostas Papadimas,
Jennie Petoumenou, Sterios Prosiniklis, Fotis Tsamis, Simos Xenitellis (el),
Bruce Cowan, Philip Withnall (en_GB), Jorge Gonzalez, Daniel Mustieles (es),
Mattias Põldaru, Ivar Smolin (et), Inaki Larranaga Murgoitio (eu),
Mahyar Moghimi (fa), Timo Jyrinki (fi), Cyril Arnaud, Bruno Brouard,
Pablo Martin-Gomez, Claude Paroz, Frédéric Peters (fr), Seán de Búrca (ga)
Francisco Diéguez, Antón Méixome (gl), Sweta Kothari (gu), Liel Fridman,
Yaron Shahrabani (he), Rajesh Ranjan (hi), Gabor Kelemen (hu), Milo Casagrande,
Luca Ferretti (it), Dirgita, Andika Triwidada (id), Takayuki KUSANO,
Takayoshi OKANO, Kiyotaka NISHIBORI, Futoshi NISHIO (ja), Shankar Prasad (kn),
Young-Ho Cha, Changwoo Ryu (ko), Žygimantas Beručka, Gintautas Miliauskas (lt),
Rudolfs Mazurs (lv), Sandeep Shedmake (mr), Kjartan Maraas (nb),
Wouter Bolsterlee, Sander Dijkhuis, Reinout van Schouwen (nl),
Torstein Winterseth (nn), A S Alam (pa), Tomasz Dominikowski, Piotr Drąg (pl),
Duarte Loreto (pt), Felipe Borges, Rodrigo Padula de Oliveira,
Rodrigo L. M. Flores, Amanda Magalhães, Og B. Maciel, Gabriel F. Vilar,
Jonh Wendell (pt_BR), Lucian Adrian Grijincu, Daniel Șerbănescu (ro),
Sergey V. Kovylov, Andrey Korzinev, Yuri Myasoedov, Marina Zhurakhinskaya (ru),
Daniel Nylander (se), Matej Urbančič, Andrej Žnidaršič (sl),
Miloš Popović (sr, sr@latin), Miroslav Nikolić (sr), Tirumurti Vasudevan (ta),
Sira Nokyoongtong (th), Baris Cicek (tr), Abduxukur Abdurixit,
Gheyret T. Kenji (ug), Maxim V. Dziumanenko, Daniel Korostil (uk),
Nguyễn Thái Ngọc Duy (vi), Jessica Ban, 'jiero', Wei Li, YunQiang Su, Ray Wang,
Aron Xu (zh_CN), Chao-Hsiung Liao (zh_HK, zh_TW)

View File

@@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.0.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[2.91.93],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_SRCDIR([src/shell-global.c])
@@ -63,7 +63,7 @@ AM_CONDITIONAL(BUILD_RECORDER, $build_recorder)
CLUTTER_MIN_VERSION=1.5.15
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
GJS_MIN_VERSION=0.7.11
MUTTER_MIN_VERSION=3.0.0
MUTTER_MIN_VERSION=2.91.93
GTK_MIN_VERSION=3.0.0
GIO_MIN_VERSION=2.25.9
LIBECAL_MIN_VERSION=2.32.0
@@ -100,7 +100,7 @@ AC_SUBST([GJS_VERSION], ["$GJS_VERSION"])
GOBJECT_INTROSPECTION_CHECK([$GOBJECT_INTROSPECTION_MIN_VERSION])
JHBUILD_TYPELIBDIR="$INTROSPECTION_TYPELIBDIR"
# NM is the only typelib we use that we don't jhbuild
PKG_CHECK_EXISTS([libnm-glib >= 0.8.999],
PKG_CHECK_EXISTS([libnm-glib >= 0.8.995],
[NM_TYPELIBDIR=`$PKG_CONFIG --variable=libdir libnm-glib`/girepository-1.0
if test "$INTROSPECTION_TYPELIBDIR" != "$NM_TYPELIBDIR"; then
JHBUILD_TYPELIBDIR="$JHBUILD_TYPELIBDIR:$NM_TYPELIBDIR"
@@ -116,10 +116,11 @@ AC_CHECK_FUNCS(JS_NewGlobalObject sn_startup_sequence_get_application_id XFixesC
CFLAGS=$saved_CFLAGS
LIBS=$saved_LIBS
PKG_CHECK_MODULES(ST, clutter-1.0 gtk+-3.0 libcroco-0.6 >= 0.6.2 gnome-desktop-3.0 >= 2.90.0 x11)
PKG_CHECK_MODULES(ST, clutter-1.0 gtk+-3.0 libcroco-0.6 gnome-desktop-3.0 >= 2.90.0 x11)
PKG_CHECK_MODULES(GDMUSER, dbus-glib-1 gtk+-3.0)
PKG_CHECK_MODULES(TRAY, gtk+-3.0)
PKG_CHECK_MODULES(GVC, libpulse libpulse-mainloop-glib gobject-2.0)
PKG_CHECK_MODULES(JS_TEST, clutter-x11-1.0 gjs-1.0 gobject-introspection-1.0 gtk+-3.0)
PKG_CHECK_MODULES(DESKTOP_SCHEMAS, gsettings-desktop-schemas >= 0.1.7)
AC_MSG_CHECKING([for bluetooth support])

View File

@@ -30,14 +30,26 @@ dist_theme_DATA = \
theme/filter-selected-ltr.svg \
theme/filter-selected-rtl.svg \
theme/gnome-shell.css \
theme/mosaic-view-active.svg \
theme/mosaic-view.svg \
theme/move-window-on-new.svg \
theme/panel-border.svg \
theme/panel-button-border.svg \
theme/panel-button-highlight-narrow.svg \
theme/panel-button-highlight-wide.svg \
theme/process-working.svg \
theme/running-indicator.svg \
theme/scroll-button-down-hover.png \
theme/scroll-button-down.png \
theme/scroll-button-up-hover.png \
theme/scroll-button-up.png \
theme/scroll-hhandle.svg \
theme/scroll-vhandle.svg \
theme/section-more.svg \
theme/section-more-open.svg \
theme/separator-white.png \
theme/single-view-active.svg \
theme/single-view.svg \
theme/source-button-border.svg \
theme/toggle-off-us.svg \
theme/toggle-off-intl.svg \

View File

@@ -102,36 +102,8 @@ StTooltip StLabel {
min-width: 200px;
}
.popup-submenu-menu-item:open {
background-color: #4c4c4c;
}
.popup-sub-menu {
background-gradient-start: rgba(80,80,80,0.3);
background-gradient-end: rgba(80,80,80,0.7);
background-gradient-direction: vertical;
box-shadow: inset 0px 2px 4px rgba(0,0,0,0.9);
}
.popup-sub-menu .popup-menu-item:ltr {
padding-right: 0em;
}
.popup-sub-menu .popup-menu-item:rtl {
padding-left: 0em;
}
.popup-sub-menu StScrollBar {
padding: 4px;
}
.popup-sub-menu StScrollBar StBin#trough {
border-width: 0px;
}
.popup-sub-menu StScrollBar StBin#vhandle {
background-color: #4c4c4c;
border-width: 0px;
background-color: #606060;
}
/* The remaining popup-menu sizing is all done in ems, so that if you
@@ -793,7 +765,7 @@ StTooltip StLabel {
#calendarArea {
/* this is the width of the entire popup */
min-width: 600px;
width: 600px;
}
.calendar-vertical-separator {
@@ -931,13 +903,11 @@ StTooltip StLabel {
}
.events-header-vbox {
spacing: 6pt;
padding-right: 1.75em;
spacing: 8px;
}
.events-header-vbox:rtl {
padding-right: 0em;
padding-left: 1.75em;
.events-header {
height: 40px;
}
.events-header-hbox {
@@ -982,17 +952,17 @@ StTooltip StLabel {
}
.events-day-name-box {
min-width: 15pt;
width: 20px;
}
.events-time-box {
min-width: 53pt;
padding-right: 6pt;
width: 70px;
padding-right: 8px;
}
.events-time-box:rtl {
padding-right: 0px;
padding-left: 6pt;
padding-left: 8px;
}
.events-event-box {
@@ -1655,49 +1625,3 @@ StTooltip StLabel {
.magnifier-zoom-region.full-screen {
border-width: 0px;
}
/* goa message popup */
.goa-message-table {
}
.goa-message-base {
font-size: 9pt;
}
.goa-message-from-header {
color: #666666;
font-weight: bold;
}
.goa-message-subject-header {
color: #666666;
font-weight: bold;
}
.goa-message-date-header {
color: #666666;
font-weight: bold;
}
.goa-message-from {
font-weight: bold;
min-width: 125px;
}
.goa-message-hbox {
spacing: 0.25em;
min-width: 300px;
}
.goa-message-subject {
}
.goa-message-excerpt {
color: rgba(153, 153, 153, 1.0);
}
.goa-message-date {
min-width: 80px;
}

View File

@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="24"
height="16"
id="svg6503"
version="1.1"
inkscape:version="0.47pre4 r22446"
sodipodi:docname="mosaic-view-active.svg">
<defs
id="defs6505">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 16 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="32 : 16 : 1"
inkscape:persp3d-origin="16 : 10.666667 : 1"
id="perspective6511" />
<inkscape:perspective
id="perspective6494"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="11.197802"
inkscape:cx="-15.97056"
inkscape:cy="16"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1680"
inkscape:window-height="997"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-maximized="1" />
<metadata
id="metadata6508">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
transform="translate(0,-16)">
<g
style="display:inline;fill:#cbcbcb;fill-opacity:1"
transform="translate(-449.85476,-685.85869)"
id="g5306">
<rect
style="fill:#cbcbcb;fill-opacity:1;stroke:#000000;stroke-width:0.99999970000000005;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.44262299999999999;stroke-dasharray:none"
id="rect5308"
width="11"
height="7"
x="450.5"
y="710.5"
rx="0.99999958"
ry="1" />
<rect
style="fill:#cbcbcb;fill-opacity:1;stroke:#000000;stroke-width:0.99999970000000005;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.44262299999999999;stroke-dasharray:none;display:inline"
id="rect5310"
width="11"
height="7"
x="462.5"
y="702.5"
rx="0.99999958"
ry="1" />
<rect
style="fill:#cbcbcb;fill-opacity:1;stroke:#000000;stroke-width:0.99999976000000002;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.44262299999999999;stroke-dasharray:none;display:inline"
id="rect5312"
width="11"
height="7"
x="450.5"
y="702.5"
rx="0.99999958"
ry="1" />
<rect
style="fill:#cbcbcb;fill-opacity:1;stroke:#000000;stroke-width:0.99999970000000005;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.44262299999999999;stroke-dasharray:none;display:inline"
id="rect5314"
width="11"
height="7"
x="462.5"
y="710.5"
rx="0.99999958"
ry="1" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

113
data/theme/mosaic-view.svg Normal file
View File

@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="24"
height="16"
id="svg6503"
version="1.1"
inkscape:version="0.47pre4 r22446"
sodipodi:docname="New document 19">
<defs
id="defs6505">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 16 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="32 : 16 : 1"
inkscape:persp3d-origin="16 : 10.666667 : 1"
id="perspective6511" />
<inkscape:perspective
id="perspective6494"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="11.197802"
inkscape:cx="16"
inkscape:cy="16"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1680"
inkscape:window-height="997"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-maximized="1" />
<metadata
id="metadata6508">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
transform="translate(0,-16)">
<g
style="display:inline"
transform="translate(-449.85476,-685.85869)"
id="g5306">
<rect
style="fill:#666666;fill-opacity:1;stroke:#000000;stroke-width:0.9999997;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.442623;stroke-dasharray:none"
id="rect5308"
width="11"
height="7"
x="450.5"
y="710.5"
rx="0.99999958"
ry="1" />
<rect
style="fill:#666666;fill-opacity:1;stroke:#000000;stroke-width:0.9999997;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.442623;stroke-dasharray:none;display:inline"
id="rect5310"
width="11"
height="7"
x="462.5"
y="702.5"
rx="0.99999958"
ry="1" />
<rect
style="fill:#666666;fill-opacity:1;stroke:#000000;stroke-width:0.99999976;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.442623;stroke-dasharray:none;display:inline"
id="rect5312"
width="11"
height="7"
x="450.5"
y="702.5"
rx="0.99999958"
ry="1" />
<rect
style="fill:#666666;fill-opacity:1;stroke:#000000;stroke-width:0.9999997;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.442623;stroke-dasharray:none;display:inline"
id="rect5314"
width="11"
height="7"
x="462.5"
y="710.5"
rx="0.99999958"
ry="1" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -0,0 +1,89 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="98"
height="98"
id="svg6375"
version="1.1"
inkscape:version="0.47 r22583"
sodipodi:docname="add-workspace.svg">
<defs
id="defs6377">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 16 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="32 : 16 : 1"
inkscape:persp3d-origin="16 : 10.666667 : 1"
id="perspective6383" />
<inkscape:perspective
id="perspective6366"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="3.9590209"
inkscape:cx="56.650687"
inkscape:cy="20.635343"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1680"
inkscape:window-height="997"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-maximized="1" />
<metadata
id="metadata6380">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
transform="translate(0,66)">
<g
id="g2824"
transform="matrix(11.568551,0,0,11.698271,-78.828159,-304.81518)">
<path
style="fill:none;stroke:#666666;stroke-width:1.99999952;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 11.07363,21.36834 0,6.43903"
id="path5322" />
<path
style="fill:none;stroke:#666666;stroke-width:1.99999952;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
d="m 14.29314,24.58786 -6.43902,0"
id="path5324" />
</g>
<path
style="fill:#000000;fill-opacity:0.98823529"
d="m 48.239516,97.908047 c -0.41677,-0.05102 -1.269253,-0.222408 -1.894408,-0.380859 -4.088493,-1.036262 -7.520781,-4.753234 -8.330163,-9.021094 -0.154947,-0.817026 -0.257819,-6.68112 -0.257819,-14.696556 l 0,-13.337088 -13.829177,-0.08909 C 10.802042,60.298796 10.026884,60.268266 8.6851548,59.783022 3.6288503,57.954375 0.62673331,53.828648 0.62673331,48.708554 c 0,-5.625522 4.25936019,-10.425065 9.97721469,-11.242548 0.987903,-0.141242 7.368912,-0.254994 14.460646,-0.257791 l 12.692532,-0.005 0,-13.586668 c 0,-14.6441583 0.03287,-15.0698926 1.364686,-17.6753047 2.185477,-4.2754229 6.938193,-6.75739913 11.687647,-6.10355607 3.382776,0.46569661 6.737962,2.72496967 8.414081,5.66577137 1.480816,2.5981315 1.519067,3.0522448 1.519067,18.0333334 l 0,13.666424 12.692533,0.005 c 7.091733,0.0028 13.472742,0.116549 14.460646,0.257791 6.395303,0.914337 10.804785,6.623716 9.941157,12.871766 -0.698243,5.051565 -4.792685,9.104635 -9.941157,9.840713 -0.987904,0.141242 -7.368913,0.254995 -14.460646,0.257791 l -12.692533,0.005 0,13.801945 c 0,13.031417 -0.02798,13.895893 -0.501177,15.484801 -1.526902,5.127058 -6.919246,8.802262 -12.001914,8.18002 z"
id="path2828"
transform="translate(0,-66)" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B

View File

@@ -0,0 +1,87 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="5.8600588"
height="9"
id="svg3647"
version="1.1"
inkscape:version="0.47 r22583"
sodipodi:docname="section-more.svg">
<defs
id="defs3649">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 526.18109 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="744.09448 : 526.18109 : 1"
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
id="perspective3655" />
<inkscape:perspective
id="perspective3603"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="82.777778"
inkscape:cx="2.9300294"
inkscape:cy="5.466443"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1680"
inkscape:window-height="997"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-maximized="1" />
<metadata
id="metadata3652">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-262.78425,-490.71933)">
<path
transform="matrix(0,-0.98149546,0.71467449,0,25.404986,578.15569)"
d="M 88.830127,340 80.169873,340 84.5,332.5 88.830127,340 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5707963"
sodipodi:arg1="0.52359878"
sodipodi:r2="2.5"
sodipodi:r1="5"
sodipodi:cy="337.5"
sodipodi:cx="84.5"
sodipodi:sides="3"
id="path5497-5"
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:0.59699643;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
sodipodi:type="star" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

87
data/theme/section-more.svg Executable file
View File

@@ -0,0 +1,87 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="5.8600588"
height="9"
id="svg3647"
version="1.1"
inkscape:version="0.46+devel"
sodipodi:docname="New document 6">
<defs
id="defs3649">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 526.18109 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="744.09448 : 526.18109 : 1"
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
id="perspective3655" />
<inkscape:perspective
id="perspective3603"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.35"
inkscape:cx="112.21575"
inkscape:cy="-32.642856"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="609"
inkscape:window-height="501"
inkscape:window-x="164"
inkscape:window-y="26"
inkscape:window-maximized="0" />
<metadata
id="metadata3652">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-262.78425,-490.71933)">
<path
transform="matrix(0,0.98149546,-0.71467449,0,506.02358,412.28296)"
d="M 88.830127,340 80.169873,340 84.5,332.5 88.830127,340 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="1.5707963"
sodipodi:arg1="0.52359878"
sodipodi:r2="2.5"
sodipodi:r1="5"
sodipodi:cy="337.5"
sodipodi:cx="84.5"
sodipodi:sides="3"
id="path5497-5"
style="fill:#5f5f5f;fill-opacity:1;stroke:#5f5f5f;stroke-width:0.59699643;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
sodipodi:type="star" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 531 B

View File

@@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="24"
height="16"
id="svg6446"
version="1.1"
inkscape:version="0.47pre4 r22446"
sodipodi:docname="single-view-active.svg">
<defs
id="defs6448">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 16 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="32 : 16 : 1"
inkscape:persp3d-origin="16 : 10.666667 : 1"
id="perspective6454" />
<inkscape:perspective
id="perspective6441"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="11.197802"
inkscape:cx="0.014720032"
inkscape:cy="16"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1680"
inkscape:window-height="997"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-maximized="1" />
<metadata
id="metadata6451">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
transform="translate(0,-17)">
<rect
ry="0.5"
rx="0.49999979"
y="17.483809"
x="0.53483802"
height="15"
width="23"
id="rect5304"
style="fill:#cccccc;fill-opacity:1;stroke:#cccccc;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="24"
height="16"
id="svg6446"
version="1.1"
inkscape:version="0.47pre4 r22446"
sodipodi:docname="single-view.svg">
<defs
id="defs6448">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 16 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="32 : 16 : 1"
inkscape:persp3d-origin="16 : 10.666667 : 1"
id="perspective6454" />
<inkscape:perspective
id="perspective6441"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="11.197802"
inkscape:cx="0.014720032"
inkscape:cy="16"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1680"
inkscape:window-height="997"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-maximized="1" />
<metadata
id="metadata6451">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
transform="translate(0,-17)">
<rect
ry="0.5"
rx="0.49999979"
y="17.483809"
x="0.53483802"
height="15"
width="23"
id="rect5304"
style="fill:#626262;fill-opacity:1;stroke:#cccccc;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -10,7 +10,9 @@ nobase_dist_js_DATA = \
misc/history.js \
misc/modemManager.js \
misc/params.js \
misc/semantic.js \
misc/util.js \
misc/zeitgeist.js \
perf/core.js \
ui/altTab.js \
ui/appDisplay.js \
@@ -22,11 +24,9 @@ nobase_dist_js_DATA = \
ui/dash.js \
ui/dateMenu.js \
ui/dnd.js \
ui/docDisplay.js \
ui/endSessionDialog.js \
ui/environment.js \
ui/extensionSystem.js \
ui/goaClient.js \
ui/iconGrid.js \
ui/lightbox.js \
ui/link.js \
@@ -65,4 +65,5 @@ nobase_dist_js_DATA = \
ui/workspaceThumbnail.js \
ui/workspacesView.js \
ui/workspaceSwitcherPopup.js \
ui/xdndHandler.js
ui/xdndHandler.js \
ui/zeitgeistSearch.js

View File

@@ -1,36 +1,32 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
const St = imports.gi.St;
const Shell = imports.gi.Shell;
const Lang = imports.lang;
const Signals = imports.signals;
const Search = imports.ui.search;
const THUMBNAIL_ICON_MARGIN = 2;
function DocInfo(recentInfo) {
this._init(recentInfo);
function ZeitgeistItemInfo(event) {
this._init(event);
}
DocInfo.prototype = {
_init : function(recentInfo) {
this.recentInfo = recentInfo;
// We actually used get_modified() instead of get_visited()
// here, as GtkRecentInfo doesn't updated get_visited()
// correctly. See http://bugzilla.gnome.org/show_bug.cgi?id=567094
this.timestamp = recentInfo.get_modified();
this.name = recentInfo.get_display_name();
ZeitgeistItemInfo.prototype = {
_init : function(event) {
this.event = event;
this.subject = event.subjects[0];
this.timestamp = event.timestamp;
this.name = this.subject.text;
this._lowerName = this.name.toLowerCase();
this.uri = recentInfo.get_uri();
this.mimeType = recentInfo.get_mime_type();
this.uri = this.subject.uri;
this.mimeType = this.subject.mimetype;
this.interpretation = this.subject.interpretation;
},
createIcon : function(size) {
return St.TextureCache.get_default().load_recent_thumbnail(size, this.recentInfo);
return St.TextureCache.get_default().load_thumbnail(size, this.uri, this.subject.mimetype);
// FIXME: We should consider caching icons
},
launch : function(workspaceIndex) {
Shell.DocSystem.get_default().open(this.recentInfo, workspaceIndex);
launch : function() {
Gio.app_info_launch_default_for_uri(this.uri,
global.create_app_launch_context());
},
matchTerms: function(terms) {
@@ -48,93 +44,5 @@ DocInfo.prototype = {
}
}
return mtype;
}
},
};
var docManagerInstance = null;
function getDocManager() {
if (docManagerInstance == null)
docManagerInstance = new DocManager();
return docManagerInstance;
}
/**
* DocManager wraps the DocSystem, primarily to expose DocInfo objects.
*/
function DocManager() {
this._init();
}
DocManager.prototype = {
_init: function() {
this._docSystem = Shell.DocSystem.get_default();
this._infosByTimestamp = [];
this._infosByUri = {};
this._docSystem.connect('changed', Lang.bind(this, this._reload));
this._reload();
},
_reload: function() {
let docs = this._docSystem.get_all();
this._infosByTimestamp = [];
this._infosByUri = {};
for (let i = 0; i < docs.length; i++) {
let recentInfo = docs[i];
let docInfo = new DocInfo(recentInfo);
this._infosByTimestamp.push(docInfo);
this._infosByUri[docInfo.uri] = docInfo;
}
this.emit('changed');
},
getTimestampOrderedInfos: function() {
return this._infosByTimestamp;
},
getInfosByUri: function() {
return this._infosByUri;
},
lookupByUri: function(uri) {
return this._infosByUri[uri];
},
queueExistenceCheck: function(count) {
return this._docSystem.queue_existence_check(count);
},
_searchDocs: function(items, terms) {
let multiplePrefixMatches = [];
let prefixMatches = [];
let multipleSubtringMatches = [];
let substringMatches = [];
for (let i = 0; i < items.length; i++) {
let item = items[i];
let mtype = item.matchTerms(terms);
if (mtype == Search.MatchType.MULTIPLE_PREFIX)
multiplePrefixMatches.push(item.uri);
else if (mtype == Search.MatchType.PREFIX)
prefixMatches.push(item.uri);
else if (mtype == Search.MatchType.MULTIPLE_SUBSTRING)
multipleSubtringMatches.push(item.uri);
else if (mtype == Search.MatchType.SUBSTRING)
substringMatches.push(item.uri);
}
return multiplePrefixMatches.concat(prefixMatches.concat(multipleSubtringMatches.concat(substringMatches)));
},
initialSearch: function(terms) {
return this._searchDocs(this._infosByTimestamp, terms);
},
subsearch: function(previousResults, terms) {
return this._searchDocs(previousResults.map(Lang.bind(this,
function(url) {
return this._infosByUri[url];
})), terms);
}
};
Signals.addSignalMethods(DocManager.prototype);

View File

@@ -77,9 +77,9 @@ HistoryManager.prototype = {
this._history[this._history.length - 1] != input) {
this._history.push(input);
this._historyIndex = this._history.length;
this._save();
}
this._historyIndex = this._history.length;
}
},
_onEntryKeyPress: function(entry, event) {

43
js/misc/semantic.js Normal file
View File

@@ -0,0 +1,43 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*-
*
* Semantic-desktop interpretations for various data types
*
* Authors: Federico Mena Quintero <federico@gnome.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*/
const NFO_AUDIO = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Audio";
const NFO_DOCUMENT = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Document";
const NFO_HTML_DOCUMENT = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#HtmlDocument";
const NFO_IMAGE = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Image";
const NFO_MEDIA = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Media";
const NFO_MIND_MAP = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#MindMap";
const NFO_PAGINATED_TEXT_DOCUMENT = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#PaginatedTextDocument";
const NFO_PLAIN_TEXT_DOCUMENT = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#PlainTextDocument";
const NFO_PRESENTATION = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Presentation";
const NFO_RASTER_IMAGE = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#RasterImage";
const NFO_SOURCE_CODE = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#SourceCode";
const NFO_SPREADSHEET = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Spreadsheet";
const NFO_TEXT_DOCUMENT = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#TextDocument";
const NFO_VECTOR_IMAGE = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#VectorImage";
const NFO_VIDEO = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Video";
const NMM_CURSOR = "http://www.semanticdesktop.org/ontologies/2009/02/19/nmm#Cursor";
const NMM_ICON = "http://www.semanticdesktop.org/ontologies/2009/02/19/nmm#Icon";
const NMM_MOVIE = "http://www.semanticdesktop.org/ontologies/2009/02/19/nmm#Movie";
const NMM_MUSIC_PIECE = "http://www.semanticdesktop.org/ontologies/2009/02/19/nmm#MusicPiece";
const NMM_TV_SHOW = "http://www.semanticdesktop.org/ontologies/2009/02/19/nmm#TVShow";

View File

@@ -7,6 +7,9 @@ const Shell = imports.gi.Shell;
const Main = imports.ui.main;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
/* http://daringfireball.net/2010/07/improved_regex_for_matching_urls */
const _urlRegexp = new RegExp('\\b(([a-z][\\w-]+:(/{1,3}|[a-z0-9%])|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}/)([^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:\'\\".,<>?«»“”‘’]))', 'gi');
@@ -147,7 +150,7 @@ const _IGNORED_WORDS = [
'Incorporated',
'Ltd.',
'Limited.',
'Intel',
'Intel?',
'chipset',
'adapter',
'[hex]',
@@ -178,7 +181,7 @@ const _IGNORED_PHRASES = [
];
function fixupPCIDescription(desc) {
desc = desc.replace(/[_,]/, ' ');
desc.replace(/[_,]/, ' ');
/* Attempt to shorten ID by ignoring certain phrases */
for (let i = 0; i < _IGNORED_PHRASES.length; i++) {
@@ -194,7 +197,7 @@ function fixupPCIDescription(desc) {
/* Attmept to shorten ID by ignoring certain individual words */
let words = desc.split(' ');
let out = [ ];
for (let i = 0; i < words.length; i++) {
for (let i = 0; i < words; i++) {
let item = words[i];
// skip empty items (that come out from consecutive spaces)

264
js/misc/zeitgeist.js Normal file
View File

@@ -0,0 +1,264 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*-
*
* Copyright (C) 2010 Seif Lotfy <seif@lotfy.com>
* Copyright (C) 2011 Siegfried-Angel Gevatter Pujals <siegfried@gevatter.com>
* Copyright (C) 2010-2011 Collabora Ltd.
* Authored by: Seif Lotfy <seif@lotfy.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*/
const DBus = imports.dbus;
const SIG_EVENT = '(asaasay)';
const MAX_TIMESTAMP = 9999999999999;
// Number of results given by fullTextSearch; 100 is probably enough.
// Note: We can't currently increase this number to anything above 132, due to
// https://bugs.launchpad.net/zeitgeist-extensions/+bug/716503
const MAX_RESULTS = 100;
const ResultType = {
// http://zeitgeist-project.com/docs/0.6/datamodel.html#resulttype
// It's unfortunate to have to define these by hand; maybe if D-Bus had a way to introspect enums...
MOST_RECENT_EVENTS : 0,
LEAST_RECENT_EVENTS : 1,
MOST_RECENT_SUBJECTS : 2,
LEAST_RECENT_SUBJECTS : 3,
MOST_POPULAR_SUBJECTS : 4,
LEAST_POPULAR_SUBJECTS : 5,
MOST_POPULAR_ACTOR : 6,
LEAST_POPULAR_ACTOR : 7,
MOST_RECENT_ACTOR : 8,
LEAST_RECENT_ACTOR : 9,
MOST_RECENT_ORIGIN : 10,
LEAST_RECENT_ORIGIN : 11,
MOST_POPULAR_ORIGIN : 12,
LEAST_POPULAR_ORIGIN : 13,
OLDEST_ACTOR : 14,
MOST_RECENT_SUBJECT_INTERPRETATION : 15,
LEAST_RECENT_SUBJECT_INTERPRETATION : 16,
MOST_POPULAR_SUBJECT_INTERPRETATION : 17,
LEAST_POPULAR_SUBJECT_INTERPRETATION : 18,
MOST_RECENT_MIME_TYPE : 19,
LEAST_RECENT_MIME_TYPE : 20,
MOST_POPULAR_MIME_TYPE : 21,
LEAST_POPULAR_MIME_TYPE : 22
};
const StorageState = {
// http://zeitgeist-project.com/docs/0.6/datamodel.html#storagestate
// As with ResultType, it would be nice if we could introspect enums through D-Bus
NOT_AVAILABLE : 0,
AVAILABLE : 1,
ANY : 2
};
/* Zeitgeist Subjects (files, people, etc.) */
function Subject(uri, interpretation, manifestation, origin, mimetype, text, storage) {
this._init(uri, interpretation, manifestation, origin, mimetype, text, storage);
};
Subject.prototype = {
_init: function(uri, interpretation, manifestation, origin, mimetype, text, storage) {
this.uri = uri;
this.interpretation = interpretation;
this.manifestation = manifestation;
this.origin = origin;
this.mimetype = mimetype;
this.text = text;
this.storage = storage;
},
};
Subject.fromPlain = function(rawSubject) {
return new Subject(rawSubject[0], // uri
rawSubject[1], // interpretation
rawSubject[2], // manifestation
rawSubject[3], // origin
rawSubject[4], // mimetype
rawSubject[5], // text
rawSubject[6]); // storage
};
Subject.toPlain = function(subject) {
let rawSubject = [];
rawSubject[0] = subject.uri;
rawSubject[1] = subject.interpretation;
rawSubject[2] = subject.manifestation
rawSubject[3] = subject.origin;
rawSubject[4] = subject.mimetype;
rawSubject[5] = subject.text;
rawSubject[6] = subject.storage;
return rawSubject;
};
/* Zeitgeist Events */
function Event(interpretation, manifestation, actor, subjects, payload) {
this._init(interpretation, manifestation, actor, subjects, payload);
};
Event.prototype = {
_init: function(interpretation, manifestation, actor, subjects, payload) {
this.id = 0;
this.timestamp = 0;
this.actor = actor;
this.interpretation = interpretation;
this.manifestation = manifestation;
this.actor = actor;
this.payload = payload;
this.subjects = subjects;
},
};
Event.fromPlain = function(rawEvent) {
let subjects = rawEvent[1].map(Subject.fromPlain);
let event = new Event(rawEvent[0][2], // interpretation
rawEvent[0][3], // manifestation
rawEvent[0][4], // actor
subjects, // subjects
rawEvent[2]);// payload
event.id = rawEvent[0][0]; // id
event.timestamp = parseInt(rawEvent[0][1], 10); // timestamp - it comes as a string over d-bus (yuck)
return event;
};
Event.toPlain = function(event) {
let rawEvent = [];
rawEvent[0] = [];
rawEvent[0][0] = event.id.toString();
rawEvent[0][1] = event.timestamp.toString();
rawEvent[0][2] = event.interpretation;
rawEvent[0][3] = event.manifestation;
rawEvent[0][4] = event.actor;
rawEvent[1] = event.subjects.map(Subject.toPlain);
rawEvent[2] = event.payload;
return rawEvent;
};
// Zeitgeist D-Bus interface definitions. Note that most of these are
// incomplete, and only cover the methods/properties/signals that
// we're currently using.
/* Zeitgeist D-Bus Interface */
const LOG_NAME = 'org.gnome.zeitgeist.Engine';
const LOG_PATH = '/org/gnome/zeitgeist/log/activity';
const LogIface = {
name: 'org.gnome.zeitgeist.Log',
methods: [
{ name: 'GetEvents',
inSignature: 'au',
outSignature: 'a'+SIG_EVENT },
{ name: 'FindRelatedUris',
inSignature: 'au',
outSignature: '(xx)a(' + SIG_EVENT + ')a'+ SIG_EVENT + 'uuu' },
{ name: 'FindEventIds',
inSignature: '(xx)a' + SIG_EVENT + 'uuu',
outSignature: 'au' },
{ name: 'FindEvents',
inSignature: '(xx)a' + SIG_EVENT + 'uuu',
outSignature: 'a' + SIG_EVENT },
{ name: 'InsertEvents',
inSignature: 'a' + SIG_EVENT,
outSignature: 'au' },
{ name: 'DeleteEvents',
inSignature: 'au',
outSignature: '(xx)' },
{ name: 'DeleteLog',
inSignature: '',
outSignature: '' },
{ name: 'Quit',
inSignature: '',
outSignature: '' },
// FIXME: Add missing DBus Methods
// - InstallMonitor
// - RemoveMonitor
],
properties: [
{ name: 'Get',
inSignature: 'ss',
outSignature: 'v',
access: 'read' },
{ name: 'Set',
inSignature: 'ssv',
outSignature: '',
access: 'read' },
{ name: 'GetAll',
inSignature: 's',
outSignature: 'a{sv}',
access: 'read' },
]
};
const Log = DBus.makeProxyClass(LogIface);
const _log = new Log(DBus.session, LOG_NAME, LOG_PATH);
function findEvents(timeRange, eventTemplates, storageState, numEvents, resultType, callback) {
function handler(results, error) {
if (error != null)
log("Error querying Zeitgeist for events: "+error);
else
callback(results.map(Event.fromPlain));
}
_log.FindEventsRemote(timeRange, eventTemplates.map(Event.toPlain),
storageState, numEvents, resultType, handler);
}
/* Zeitgeist Full-Text-Search Interface */
const INDEX_NAME = 'org.gnome.zeitgeist.Engine';
const INDEX_PATH = '/org/gnome/zeitgeist/index/activity';
const IndexIface = {
name: 'org.gnome.zeitgeist.Index',
methods: [
{ name: 'Search',
inSignature: 's(xx)a'+SIG_EVENT+'uuu',
outSignature: 'a'+SIG_EVENT+'u' },
],
};
const Index = DBus.makeProxyClass(IndexIface);
const _index = new Index(DBus.session, INDEX_NAME, INDEX_PATH);
/**
* fullTextSearch:
*
* Asynchronously search Zeitgeist's index for events relating to the query.
*
* @param query The query string, using asterisks for wildcards. Wildcards must
* be used at the start and/or end of a string to get relevant information.
* @param eventTemplates Zeitgeist event templates, see
* http://zeitgeist-project.com/docs/0.6/datamodel.html#event for more
* information
* @param callback The callback, takes a list containing Zeitgeist.Event
* objects
*/
function fullTextSearch(query, eventTemplates, callback) {
function handler(results, error) {
if (error != null)
log("Error searching with Zeitgeist FTS: "+error);
else
callback(results[0].map(Event.fromPlain));
}
_index.SearchRemote(query, [0, MAX_TIMESTAMP],
eventTemplates.map(Event.toPlain),
0, // offset into the search results
MAX_RESULTS,
ResultType.MOST_POPULAR_SUBJECTS, handler);
}

View File

@@ -87,7 +87,7 @@ AltTabPopup.prototype = {
let [childMinHeight, childNaturalHeight] = this._appSwitcher.actor.get_preferred_height(primary.width - hPadding);
let [childMinWidth, childNaturalWidth] = this._appSwitcher.actor.get_preferred_width(childNaturalHeight);
childBox.x1 = Math.max(primary.x + leftPadding, primary.x + Math.floor((primary.width - childNaturalWidth) / 2));
childBox.x2 = Math.min(primary.x + primary.width - rightPadding, childBox.x1 + childNaturalWidth);
childBox.x2 = Math.min(primary.x + primary.width - hPadding, childBox.x1 + childNaturalWidth);
childBox.y1 = primary.y + Math.floor((primary.height - childNaturalHeight) / 2);
childBox.y2 = childBox.y1 + childNaturalHeight;
this._appSwitcher.actor.allocate(childBox, flags);
@@ -145,12 +145,6 @@ AltTabPopup.prototype = {
this._appIcons = this._appSwitcher.icons;
// Need to force an allocation so we can figure out whether we
// need to scroll when selecting
this.actor.opacity = 0;
this.actor.show();
this.actor.get_allocation_box();
// Make the initial selection
if (switch_group) {
if (backward) {
@@ -162,11 +156,29 @@ AltTabPopup.prototype = {
this._select(0, 0);
}
} else if (this._appIcons.length == 1) {
this._select(0);
if (!backward && this._appIcons[0].cachedWindows.length > 1) {
// For compatibility with the multi-app case below
this._select(0, 1, true);
} else
this._select(0);
} else if (backward) {
this._select(this._appIcons.length - 1);
} else {
this._select(1);
let firstWindows = this._appIcons[0].cachedWindows;
if (firstWindows.length > 1) {
let curAppNextWindow = firstWindows[1];
let nextAppWindow = this._appIcons[1].cachedWindows[0];
// If the next window of the current app is more-recently-used
// than the first window of the next app, then select it.
if (curAppNextWindow.get_workspace() == global.screen.get_active_workspace() &&
curAppNextWindow.get_user_time() > nextAppWindow.get_user_time())
this._select(0, 1, true);
else
this._select(1);
} else {
this._select(1);
}
}
// There's a race condition; if the user released Alt before
@@ -180,6 +192,8 @@ AltTabPopup.prototype = {
return false;
}
this.actor.opacity = 0;
this.actor.show();
Tweener.addTween(this.actor,
{ opacity: 255,
time: POPUP_FADE_TIME,
@@ -587,7 +601,7 @@ SwitcherList.prototype = {
this._rightArrow.opacity = this._rightGradient.opacity;
},
addItem : function(item, label) {
addItem : function(item) {
let bbox = new St.Button({ style_class: 'item-box',
reactive: true });
@@ -598,8 +612,6 @@ SwitcherList.prototype = {
bbox.connect('clicked', Lang.bind(this, function() { this._onItemClicked(n); }));
bbox.connect('enter-event', Lang.bind(this, function() { this._onItemEnter(n); }));
bbox.label_actor = label;
this._items.push(bbox);
},
@@ -985,7 +997,7 @@ AppSwitcher.prototype = {
_addIcon : function(appIcon) {
this.icons.push(appIcon);
this.addItem(appIcon.actor, appIcon.label);
this.addItem(appIcon.actor);
let n = this._arrows.length;
let arrow = new St.DrawingArea({ style_class: 'switcher-arrow' });
@@ -1055,12 +1067,9 @@ ThumbnailList.prototype = {
this._labels.push(bin);
bin.add_actor(name);
box.add_actor(bin);
this.addItem(box, name);
} else {
this.addItem(box, null);
}
this.addItem(box);
}
},

View File

@@ -2,16 +2,19 @@
const Clutter = imports.gi.Clutter;
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const Gtk = imports.gi.Gtk;
const Shell = imports.gi.Shell;
const Lang = imports.lang;
const Signals = imports.signals;
const Meta = imports.gi.Meta;
const St = imports.gi.St;
const Mainloop = imports.mainloop;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const AppFavorites = imports.ui.appFavorites;
const DND = imports.ui.dnd;
const DocInfo = imports.misc.docInfo;
const IconGrid = imports.ui.iconGrid;
const Main = imports.ui.main;
const Overview = imports.ui.overview;
@@ -20,8 +23,8 @@ const Search = imports.ui.search;
const Tweener = imports.ui.tweener;
const Workspace = imports.ui.workspace;
const Params = imports.misc.params;
const Zeitgeist = imports.misc.zeitgeist;
const MAX_APPLICATION_WORK_MILLIS = 75;
const MENU_POPUP_TIMEOUT = 600;
const SCROLL_TIME = 0.1;
@@ -34,8 +37,6 @@ AlphabeticalView.prototype = {
this._grid = new IconGrid.IconGrid({ xAlign: St.Align.START });
this._appSystem = Shell.AppSystem.get_default();
this._pendingAppLaterId = 0;
this._apps = [];
this._filterApp = null;
let box = new St.BoxLayout({ vertical: true });
@@ -111,30 +112,6 @@ AlphabeticalView.prototype = {
this._apps[i].actor.visible = filter(this._apps[i]._appInfo);
},
// Create actors for the applications in an idle to avoid blocking
// for too long; see bug 647778
_addPendingApps: function() {
let i;
let startTimeMillis = new Date().getTime();
for (i = 0; i < this._pendingAppIds.length; i++) {
let id = this._pendingAppIds[i];
this._addApp(this._pendingApps[id]);
let currentTimeMillis = new Date().getTime();
if (currentTimeMillis - startTimeMillis > MAX_APPLICATION_WORK_MILLIS)
break;
}
this._pendingAppIds.splice(0, i + 1);
if (this._pendingAppIds.length > 0) {
return true;
} else {
this._pendingAppLaterId = 0;
this._pendingAppIds = null;
this._pendingApps = null;
return false;
}
},
refresh: function(apps) {
let ids = [];
for (let i in apps)
@@ -145,12 +122,9 @@ AlphabeticalView.prototype = {
this._removeAll();
this._pendingAppIds = ids;
this._pendingApps = apps;
if (this._pendingAppLaterId)
Meta.later_remove(this._pendingAppLaterId);
this._pendingAppLaterId = Meta.later_add(Meta.LaterType.BEFORE_REDRAW,
Lang.bind(this, this._addPendingApps));
for (let i = 0; i < ids.length; i++) {
this._addApp(apps[ids[i]]);
}
}
};
@@ -253,6 +227,7 @@ ViewByCategories.prototype = {
let sections = this._appSystem.get_sections();
this._apps = apps;
this._view.refresh(apps);
/* Translators: Filter to display all applications */
this._addFilter(_("All"), -1);
@@ -264,7 +239,6 @@ ViewByCategories.prototype = {
this._addFilter(sections[i], i);
this._selectCategory(-1);
this._view.refresh(apps);
if (this._focusDummy) {
let focused = this._focusDummy.has_key_focus();
@@ -342,7 +316,7 @@ BaseAppSearchProvider.prototype = {
timestamp: null });
let app = this._appSys.get_app(id);
app.open_new_window(params.workspace ? params.workspace.index() : -1);
app.open_new_window(params.workspace ? params.workspace.get_index() : -1);
}
};
@@ -432,8 +406,6 @@ AppWellIcon.prototype = {
this.icon = new AppIcon(app, iconParams);
this.actor.set_child(this.icon.actor);
this.actor.label_actor = this.icon.label;
this.actor.connect('button-press-event', Lang.bind(this, this._onButtonPress));
this.actor.connect('clicked', Lang.bind(this, this._onClicked));
this.actor.connect('popup-menu', Lang.bind(this, this._onKeyboardPopupMenu));
@@ -613,6 +585,7 @@ AppIconMenu.prototype = {
this.blockSourceEvents = true;
this._source = source;
this._eventTemplate = new Zeitgeist.Event('', '', "application://" + this._source.app.get_id(), [], []);
this.connect('activate', Lang.bind(this, this._onActivate));
this.connect('open-state-changed', Lang.bind(this, this._onOpenStateChanged));
@@ -659,6 +632,63 @@ AppIconMenu.prototype = {
this._toggleFavoriteMenuItem = this._appendMenuItem(isFavorite ? _("Remove from Favorites")
: _("Add to Favorites"));
Zeitgeist.findEvents([new Date().getTime() - 86400000*90, Zeitgeist.MAX_TIMESTAMP],
[this._eventTemplate],
Zeitgeist.StorageState.ANY,
100,
Zeitgeist.ResultType.MOST_RECENT_SUBJECTS,
Lang.bind(this, this._appendJumplist));
},
_appendJumplist: function (events) {
let fetchedUris = [];
let hasJumplist = false;
function appendEvents(events2, count, type) {
if (count == null) {
count = 3;
}
if (type == null) {
type = "emblem-favorite";
}
let j = 0;
if (events.length > 0) {
for (let i in events) {
let uri = events[i].subjects[0].uri.replace('file://', '');
uri = uri.replace(/\%20/g, ' '); // FIXME: properly unescape, or get the display name otherwise
if (fetchedUris.indexOf(uri) == -1 &&
(GLib.file_test(uri, GLib.FileTest.EXISTS) || this._source.app.get_id() == "tomboy.desktop")) {
if (!hasJumplist) {
this._appendSeparator();
hasJumplist = true;
}
this._appendJumplistItem(events[i], type);
fetchedUris.push(uri);
j++;
if (j >= count)
break;
}
}
}
}
appendEvents.call(this, events, 4, "document-open-recent");
Zeitgeist.findEvents([new Date().getTime() - 86400000*90, Zeitgeist.MAX_TIMESTAMP],
[this._eventTemplate],
Zeitgeist.StorageState.ANY,
100,
Zeitgeist.ResultType.MOST_POPULAR_SUBJECTS,
Lang.bind(this, appendEvents));
},
_appendJumplistItem: function (event, type) {
let info = new DocInfo.ZeitgeistItemInfo(event);
let item = new PopupMenu.PopupImageMenuItem(info.name, type);
this.addMenuItem(item);
item.connect('activate', Lang.bind(this, function () {
let app = new Gio.DesktopAppInfo.new(this._source.app.get_id());
app.launch_uris([info.uri], null);
}));
},
_appendSeparator: function () {

View File

@@ -3,6 +3,8 @@
const Shell = imports.gi.Shell;
const Lang = imports.lang;
const Signals = imports.signals;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Main = imports.ui.main;

View File

@@ -8,6 +8,9 @@ const St = imports.gi.St;
const Signals = imports.signals;
const Pango = imports.gi.Pango;
const Gettext_gtk30 = imports.gettext.domain('gtk30');
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const C_ = Gettext.pgettext;
const Mainloop = imports.mainloop;
const Shell = imports.gi.Shell;

View File

@@ -323,6 +323,6 @@ CtrlAltTabSwitcher.prototype = {
let text = new St.Label({ text: item.name });
box.add(text, { x_fill: false });
this.addItem(box, text);
this.addItem(box);
}
};

View File

@@ -6,6 +6,8 @@ const Lang = imports.lang;
const Meta = imports.gi.Meta;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const AppDisplay = imports.ui.appDisplay;
const AppFavorites = imports.ui.appFavorites;

View File

@@ -8,6 +8,8 @@ const Cairo = imports.cairo;
const Clutter = imports.gi.Clutter;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Util = imports.misc.util;
const Main = imports.ui.main;

View File

@@ -1,47 +0,0 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
const DocInfo = imports.misc.docInfo;
const Params = imports.misc.params;
const Search = imports.ui.search;
function DocSearchProvider() {
this._init();
}
DocSearchProvider.prototype = {
__proto__: Search.SearchProvider.prototype,
_init: function(name) {
Search.SearchProvider.prototype._init.call(this, _("RECENT ITEMS"));
this._docManager = DocInfo.getDocManager();
},
getResultMeta: function(resultId) {
let docInfo = this._docManager.lookupByUri(resultId);
if (!docInfo)
return null;
return { 'id': resultId,
'name': docInfo.name,
'createIcon': function(size) {
return docInfo.createIcon(size);
}
};
},
activateResult: function(id, params) {
params = Params.parse(params, { workspace: null,
timestamp: null });
let docInfo = this._docManager.lookupByUri(id);
docInfo.launch(params.workspace ? params.workspace.index() : -1);
},
getInitialResultSet: function(terms) {
return this._docManager.initialSearch(terms);
},
getSubsearchResultSet: function(previousResults, terms) {
return this._docManager.subsearch(previousResults, terms);
}
};

View File

@@ -22,6 +22,9 @@ const DBus = imports.dbus;
const Lang = imports.lang;
const Signals = imports.signals;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Clutter = imports.gi.Clutter;
const Gdm = imports.gi.Gdm;
const GLib = imports.gi.GLib;
@@ -363,10 +366,8 @@ EndSessionDialog.prototype = {
if (this._user.is_loaded && !dialogContent.iconName) {
let iconFile = this._user.get_icon_file();
if (GLib.file_test(iconFile, GLib.FileTest.EXISTS))
this._setIconFromFile(iconFile, dialogContent.iconStyleClass);
else
this._setIconFromName('avatar-default', dialogContent.iconStyleClass);
this._setIconFromFile(iconFile, dialogContent.iconStyleClass);
} else if (dialogContent.iconName) {
this._setIconFromName(dialogContent.iconName,
dialogContent.iconStyleClass);
@@ -405,6 +406,10 @@ EndSessionDialog.prototype = {
},
_updateButtons: function() {
if (this.state != ModalDialog.State.OPENING &&
this.state != ModalDialog.State.OPENED)
return;
let dialogContent = DialogContent[this._type];
let buttons = [{ action: Lang.bind(this, this.cancel),
label: _("Cancel"),
@@ -514,12 +519,11 @@ EndSessionDialog.prototype = {
this._inhibitors.push(inhibitor);
}
this._updateButtons();
if (!this.open(timestamp))
throw new DBus.DBusError('org.gnome.Shell.ModalDialog.GrabError',
"Cannot grab pointer and keyboard");
this._updateButtons();
this._updateContent();
let signalId = this.connect('opened',

View File

@@ -1,22 +1,14 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
imports.gi.versions.Clutter = '1.0';
imports.gi.versions.Gio = '2.0';
imports.gi.versions.Gdk = '3.0';
imports.gi.versions.GdkPixbuf = '2.0';
imports.gi.versions.Gtk = '3.0';
const Clutter = imports.gi.Clutter;;
const Gettext = imports.gettext;
const GLib = imports.gi.GLib;
const Gtk = imports.gi.Gtk;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Gettext_gtk30 = imports.gettext.domain('gtk30');
// We can't import shell JS modules yet, because they may have
// variable initializations, etc, that depend on init() already having
// been run.
const Tweener = imports.ui.tweener;
const Format = imports.misc.format;
// "monkey patch" in some varargs ClutterContainer methods; we need
// to do this per-container class since there is no representation
@@ -69,20 +61,26 @@ function _blockMethod(method, replacement, reason) {
}
function init() {
// Add some bindings to the global JS namespace; (gjs keeps the web
// browser convention of having that namespace be called 'window'.)
window.global = Shell.Global.get();
Tweener.init();
String.prototype.format = Format.format;
window._ = Gettext.gettext;
window.C_ = Gettext.pgettext;
window.ngettext = Gettext.ngettext;
// Work around https://bugzilla.mozilla.org/show_bug.cgi?id=508783
Date.prototype.toLocaleFormat = function(format) {
return Shell.util_format_date(format, this.getTime());
};
// Set the default direction for St widgets (this needs to be done before any use of St)
if (Gtk.Widget.get_default_direction() == Gtk.TextDirection.RTL) {
if (Gettext_gtk30.gettext('default:LTR') == 'default:RTL') {
St.Widget.set_default_direction(St.TextDirection.RTL);
}
// Miscellaneous monkeypatching
let slowdownEnv = GLib.getenv('GNOME_SHELL_SLOWDOWN_FACTOR');
if (slowdownEnv) {
let factor = parseFloat(slowdownEnv);
if (!isNaN(factor) && factor > 0.0)
St.set_slow_down_factor(factor);
}
_patchContainerClass(St.BoxLayout);
_patchContainerClass(St.Table);
@@ -90,14 +88,8 @@ function init() {
return St.describe_actor(this);
};
let origToString = Object.prototype.toString;
Object.prototype.toString = function() {
let base = origToString.call(this);
if ('actor' in this && this.actor instanceof Clutter.Actor)
return base.replace(/\]$/, ' delegate for ' + this.actor.toString().substring(1));
else
return base;
};
if (window.global === undefined) // test environment
return;
_blockMethod('Clutter.Event.get_state', 'Shell.get_event_state',
'gjs\'s handling of Clutter.ModifierType is broken. See bug 597292.');
@@ -109,23 +101,4 @@ function init() {
// Shell.Global.prototype itself is read-only.
global.set_property_mutable('imports.gi.Shell.Global.prototype', 'set_property_mutable', true);
Shell.Global.prototype.set_property_mutable = undefined;
// Work around https://bugzilla.mozilla.org/show_bug.cgi?id=508783
Date.prototype.toLocaleFormat = function(format) {
return Shell.util_format_date(format, this.getTime());
};
let slowdownEnv = GLib.getenv('GNOME_SHELL_SLOWDOWN_FACTOR');
if (slowdownEnv) {
let factor = parseFloat(slowdownEnv);
if (!isNaN(factor) && factor > 0.0)
St.set_slow_down_factor(factor);
}
// OK, now things are initialized enough that we can import shell JS
const Format = imports.misc.format;
const Tweener = imports.ui.tweener;
Tweener.init();
String.prototype.format = Format.format;
}

View File

@@ -3,7 +3,6 @@
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const St = imports.gi.St;
const Shell = imports.gi.Shell;
const Config = imports.misc.config;
@@ -68,13 +67,7 @@ function loadExtension(dir, enabled, type) {
return;
}
let metadataContents;
try {
metadataContents = Shell.get_file_contents_utf8_sync(metadataFile.get_path());
} catch (e) {
global.logError(baseErrorString + 'Failed to load metadata.json: ' + e);
return;
}
let [success, metadataContents, len, etag] = metadataFile.load_contents(null);
let meta;
try {
meta = JSON.parse(metadataContents);

View File

@@ -1,500 +0,0 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const Goa = imports.gi.Goa;
const Lang = imports.lang;
const Mainloop = imports.mainloop;
const Shell = imports.gi.Shell;
const Signals = imports.signals;
const St = imports.gi.St;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const C_ = Gettext.pgettext;
const Gtk = imports.gi.Gtk;
const Pango = imports.gi.Pango;
const History = imports.misc.history;
const Main = imports.ui.main;
const MessageTray = imports.ui.messageTray;
// ----------------------------------------------------------------------------------------------------
function Client() {
this._init();
}
Client.prototype = {
_init : function() {
this._client = null;
this._accountIdToMailMonitor = {}
this._mailSource = null;
// TODO: need to call refreshAllMonitors() when network-connectivity changes
Goa.Client.new(null, /* cancellable */
Lang.bind(this, this._onClientConstructed));
},
_onClientConstructed : function(object, asyncRes) {
this._client = object.new_finish(asyncRes);
this._updateAccounts();
this._client.connect('account-added', Lang.bind(this, this._updateAccounts));
this._client.connect('account-removed', Lang.bind(this, this._updateAccounts));
this._client.connect('account-changed', Lang.bind(this, this._updateAccounts));
},
_updateAccounts : function () {
let objects = this._client.get_accounts();
let mailIds = {};
// Add monitors for accounts that now exist
for (let n = 0; n < objects.length; n++) {
let object = objects[n];
let id = object.account.id;
if (object.mail) {
mailIds[id] = true;
if (!(id in this._accountIdToMailMonitor)) {
let monitor = new MailMonitor(this, object);
this._accountIdToMailMonitor[id] = monitor;
}
}
}
// Nuke monitors for accounts that are now non-existant
let monitorsToRemove = []
for (let existingMonitorId in this._accountIdToMailMonitor) {
if (!(existingMonitorId in mailIds)) {
monitorsToRemove.push(existingMonitorId);
}
}
for (let n = 0; n < monitorsToRemove.length; n++) {
let id = monitorsToRemove[n];
let monitor = this._accountIdToMailMonitor[id];
delete this._accountIdToMailMonitor[id]
monitor.destroy();
}
},
_ensureMailSource: function() {
if (!this._mailSource) {
this._mailSource = new MailSource(this);
this._mailSource.connect('destroy', Lang.bind(this,
function () {
this._mailSource = null;
}));
Main.messageTray.add(this._mailSource);
}
},
addPendingMessage: function(message) {
this._ensureMailSource();
this._mailSource.addMessage(message);
},
refreshAllMonitors: function() {
log('Refreshing all mail monitors');
for (let id in this._accountIdToMailMonitor) {
let monitor = this._accountIdToMailMonitor[id];
monitor.refresh();
}
}
}
// ----------------------------------------------------------------------------------------------------
function Message(uid, from, subject, excerpt, uri, can_be_marked_as_spam, can_be_starred) {
this._init(uid, from, subject, excerpt, uri, can_be_marked_as_spam, can_be_starred);
}
Message.prototype = {
_init: function(uid, from, subject, excerpt, uri, can_be_marked_as_spam, can_be_starred) {
this.uid = uid;
this.from = from;
this.subject = subject;
this.excerpt = excerpt;
this.uri = uri;
this.can_be_marked_as_spam = can_be_marked_as_spam;
this.can_be_starred = can_be_starred;
this.receivedAt = new Date();
}
}
// ----------------------------------------------------------------------------------------------------
function MailMonitor(client, accountObject) {
this._init(client, accountObject);
}
MailMonitor.prototype = {
_init : function(client, accountObject) {
this._client = client;
this._accountObject = accountObject;
this._account = this._accountObject.get_account();
this._mail = this._accountObject.get_mail();
// Create the remote monitor object
this._proxy = null;
this._cancellable = new Gio.Cancellable();
this._mail.call_create_monitor(this._cancellable, Lang.bind(this, this._onMonitorCreated));
},
destroy : function() {
this._cancellable.cancel();
if (this._proxy) {
// We don't really care if this fails or not
this._proxy.call_close(null, Lang.bind(this, function() { }));
this._proxy.disconnect(this._messageReceivedId);
this._proxy = null;
}
},
refresh : function() {
if (this._proxy) {
// We don't really care if this fails or not
log('Refreshing mail monitor for account ' + this._account.name);
this._proxy.call_refresh(null, Lang.bind(this, function() { }));
}
},
_onMonitorCreated : function(mail, asyncRes) {
// TODO: a (gboolean, object_path) tuple is returned here
// See https://bugzilla.gnome.org/show_bug.cgi?id=649657
let ret = mail.call_create_monitor_finish(asyncRes);
let object_path = ret[1];
Goa.MailMonitorProxy.new_for_bus(Gio.BusType.SESSION,
Gio.DBusProxyFlags.NONE,
'org.gnome.OnlineAccounts',
object_path,
null, /* cancellable */
Lang.bind(this, this._onMonitorProxyConstructed));
},
_onMonitorProxyConstructed : function(monitor, asyncRes) {
this._proxy = monitor.new_for_bus_finish(asyncRes);
// Now listen for changes on the mail monitor proxy
this._messageReceivedId = this._proxy.connect('message-received',
Lang.bind(this, this._onMessageReceived));
},
_onMessageReceived : function(monitor, uid, from, subject, excerpt, uri, can_be_marked_as_spam, can_be_starred) {
let message = new Message(uid, from, subject, excerpt, uri, can_be_marked_as_spam, can_be_starred);
if (!Main.messageTray.getBusy()) {
let source = new Source(this._client, message);
let notification = new Notification(source, this._client, this, message);
// If the user is not marked as busy, present the notification to the user
Main.messageTray.add(source);
source.notify(notification);
} else {
// ... otherwise, if the user is busy, just add it to the MailSource's list
// of pending messages
this._client.addPendingMessage(message);
}
},
MessageAddStar: function (message) {
this._proxy.call_add_star(message.uid,
null, /* cancellable */
Lang.bind(this,
function(object, asyncRes) {
this._proxy.call_add_star_finish(asyncRes);
}));
},
MessageMarkAsSpam: function (message) {
this._proxy.call_mark_as_spam(message.uid,
null, /* cancellable */
Lang.bind(this,
function(object, asyncRes) {
this._proxy.call_add_star_finish(asyncRes);
}));
}
}
// ----------------------------------------------------------------------------------------------------
function Source(client, message) {
this._init(client, message);
}
Source.prototype = {
__proto__: MessageTray.Source.prototype,
_init : function(client, message) {
this._client = client;
this._message = message;
// Init super class and add ourselves to the message tray
MessageTray.Source.prototype._init.call(this, 'Message from ' + _stripEmailAddress(this._message.from));
this.setTransient(true);
this.isChat = true;
this._setSummaryIcon(this.createNotificationIcon());
},
createNotificationIcon : function() {
// TODO: use account icon
let icon = new St.Icon({ icon_type: St.IconType.FULLCOLOR,
icon_size: this.ICON_SIZE,
icon_name: 'mail-send'});
return icon;
}
}
// ----------------------------------------------------------------------------------------------------
function _stripEmailAddress(name_and_addr) {
let bracketStartPos = name_and_addr.indexOf(' <');
if (bracketStartPos == -1) {
return name_and_addr;
} else {
return name_and_addr.slice(0, bracketStartPos);
}
}
function Notification(source, client, monitor, message) {
this._init(source, client, monitor, message);
}
Notification.prototype = {
__proto__: MessageTray.Notification.prototype,
_init : function(source, client, monitor, message) {
this._client = client;
this._monitor = monitor
this._message = message;
this._ignore = false;
this._alreadyExpanded = false;
this._strippedFrom = _stripEmailAddress(this._message.from);
let title = this._strippedFrom;
let banner = this._message.subject + ' \u2014 ' + this._message.excerpt; // — U+2014 EM DASH
// Init super class
MessageTray.Notification.prototype._init.call(this, source, title, banner);
// Change the contents once expanded
this.connect('expanded', Lang.bind (this, this._onExpanded));
this.update(title, banner);
this.setUrgency(MessageTray.Urgency.NORMAL);
this.setTransient(true);
this.addButton('ignore', 'Ignore');
if (message.can_be_starred)
this.addButton('star', 'Star');
if (message.can_be_marked_as_spam)
this.addButton('spam', 'Junk');
if (this._message.uri.length > 0) {
this.addButton('open', 'Open');
}
this.connect('action-invoked', Lang.bind(this,
function(notification, id) {
if (id == 'ignore') {
this._actionIgnore();
} else if (id == 'star') {
this._actionStar();
} else if (id == 'spam') {
this._actionSpam();
} else if (id == 'open') {
this._actionOpen();
}
}));
this.connect('clicked', Lang.bind(this,
function() {
if (this._message.uri.length > 0) {
this._actionOpen();
}
}));
// Hmm, should be ::done-displaying instead?
this.connect('destroy', Lang.bind(this, this._onDestroyed));
},
_onExpanded : function() {
if (this._alreadyExpanded)
return;
this._alreadyExpanded = true;
let escapedExcerpt = GLib.markup_escape_text(this._message.excerpt, -1);
let bannerMarkup = '<b>Subject:</b> ' + this._message.subject + '\n';
// TODO: if available, insert other headers such as Cc
bannerMarkup += '\n' + escapedExcerpt;
this.update(this._strippedFrom, bannerMarkup, {bannerMarkup: true});
},
_onDestroyed : function(reason) {
// If not ignoring the message, push it onto the Mail source
if (!this._ignore) {
this._client.addPendingMessage(this._message);
}
},
_actionIgnore : function() {
this._ignore = true;
},
_actionStar : function() {
this._ignore = true;
this._monitor.MessageAddStar(this._message);
},
_actionSpam : function() {
this._ignore = true;
this._monitor.MessageMarkAsSpam(this._message);
},
_actionOpen : function() {
this._ignore = true;
Gio.app_info_launch_default_for_uri(this._message.uri,
global.create_app_launch_context());
}
}
// ----------------------------------------------------------------------------------------------------
function _sameDay(dateA, dateB) {
return (dateA.getDate() == dateB.getDate() &&
dateA.getMonth() == dateB.getMonth() &&
dateA.getYear() == dateB.getYear());
}
function _sameYear(dateA, dateB) {
return (dateA.getYear() == dateB.getYear());
}
function _formatRelativeDate(date) {
let ret = ''
let now = new Date();
if (_sameDay(date, now)) {
ret = date.toLocaleFormat("%l:%M %p");
} else {
if (_sameYear(date, now)) {
ret = date.toLocaleFormat("%B %e");
} else {
ret = date.toLocaleFormat("%B %e, %Y");
}
}
return ret;
}
function _addMessageToTable(table, message) {
let formattedExcerpt = message.excerpt.replace(/\r/g, '').replace(/\n/g, ' ');
let formattedDate = _formatRelativeDate(message.receivedAt);
let fromLabel = new St.Label({ style_class: 'goa-message-base goa-message-from',
text: _stripEmailAddress(message.from)});
let hbox = new St.BoxLayout({ style_class: 'goa-message-hbox', vertical: false });
let subjectLabel = new St.Label({ style_class: 'goa-message-base goa-message-subject',
text: message.subject });
let excerptLabel = new St.Label({ style_class: 'goa-message-base goa-message-excerpt',
text: formattedExcerpt });
let dateLabel = new St.Label({ style_class: 'goa-message-base goa-message-date',
text: formattedDate });
excerptLabel.clutter_text.line_wrap = false;
excerptLabel.clutter_text.ellipsize = Pango.EllipsizeMode.END;
hbox.add(subjectLabel, { x_fill: true,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.START });
hbox.add(excerptLabel, { x_fill: true,
y_fill: false,
x_align: St.Align.END,
y_align: St.Align.START });
let n = table.get_row_count();
table.add(fromLabel, { x_fill: true, x_expand: true, row: n, col: 0 });
table.add(hbox, { row: n, col: 1 });
table.add(dateLabel, { row: n, col: 2 });
}
function MailSource(client) {
this._init(client);
}
MailSource.prototype = {
__proto__: MessageTray.Source.prototype,
_init : function(client) {
this._client = client;
this._pendingMessages = [];
// Init super class and add ourselves to the message tray
MessageTray.Source.prototype._init.call(this, 'Mail');
// Create the notification
this._notification = new MessageTray.Notification(this)
this._notification.setUrgency(MessageTray.Urgency.NORMAL);
this._notification.setResident(true);
this._updateNotification();
this.pushNotification(this._notification);
// Refresh all monitors everytime the "Mail" notification is displayed
this._notification.connect('expanded', Lang.bind(this,
function() {
this._client.refreshAllMonitors();
}));
},
createNotificationIcon : function() {
let numPending = this._pendingMessages.length;
let baseIcon = new Gio.ThemedIcon({ name: 'mail-mark-unread'});
let numerableIcon = new Gtk.NumerableIcon({ gicon: baseIcon });
numerableIcon.set_count(numPending);
let icon = new St.Icon({ icon_type: St.IconType.FULLCOLOR,
icon_size: this.ICON_SIZE });
icon.set_gicon(numerableIcon);
return icon;
},
_updateNotification: function() {
if (!this._notification)
return
let title = 'Mail';
let banner = ''
let table = new St.Table({ homogeneous: false,
style_class: 'goa-message-table',
reactive: true });
for (let n = 0; n < this._pendingMessages.length; n++)
_addMessageToTable (table, this._pendingMessages[n]);
this._notification.update(title, banner, { clear: true,
icon: this.createNotificationIcon() });
this._notification.addActor(table);
this._notification.addButton('close', 'Close');
this._notification.addButton('ignore-all', 'Ignore All');
this._notification.connect('action-invoked', Lang.bind(this,
function(notification, id) {
if (id == 'close') {
// TODO: Can't find another way hide it
notification._onClicked();
} else if (id == 'ignore-all') {
this.clearMessages();
}
}));
},
addMessage: function(message) {
this._pendingMessages.push(message);
// Update notification
this._updateNotification();
// Update icon with latest pending count
this._setSummaryIcon(this.createNotificationIcon());
},
clearMessages: function() {
let notification = this._notification;
this._notification = null;
if (notification)
notification.destroy();
this.destroy();
},
}

View File

@@ -42,10 +42,10 @@ BaseIcon.prototype = {
box.add_actor(this._iconBin);
if (params.showLabel) {
this.label = new St.Label({ text: label });
box.add_actor(this.label);
this._name = new St.Label({ text: label });
box.add_actor(this._name);
} else {
this.label = null;
this._name = null;
}
if (params.createIcon)
@@ -67,8 +67,8 @@ BaseIcon.prototype = {
let childBox = new Clutter.ActorBox();
if (this.label) {
let [labelMinHeight, labelNatHeight] = this.label.get_preferred_height(-1);
if (this._name) {
let [labelMinHeight, labelNatHeight] = this._name.get_preferred_height(-1);
preferredHeight += this._spacing + labelNatHeight;
let labelHeight = availHeight >= preferredHeight ? labelNatHeight
@@ -79,7 +79,7 @@ BaseIcon.prototype = {
childBox.x2 = availWidth;
childBox.y1 = iconSize + this._spacing;
childBox.y2 = childBox.y1 + labelHeight;
this.label.allocate(childBox, flags);
this._name.allocate(childBox, flags);
}
childBox.x1 = Math.floor((availWidth - iconNatWidth) / 2);
@@ -98,8 +98,8 @@ BaseIcon.prototype = {
alloc.min_size = iconMinHeight;
alloc.natural_size = iconNatHeight;
if (this.label) {
let [labelMinHeight, labelNatHeight] = this.label.get_preferred_height(forWidth);
if (this._name) {
let [labelMinHeight, labelNatHeight] = this._name.get_preferred_height(forWidth);
alloc.min_size += this._spacing + labelMinHeight;
alloc.natural_size += this._spacing + labelNatHeight;
}

View File

@@ -5,13 +5,14 @@ const Cogl = imports.gi.Cogl;
const GConf = imports.gi.GConf;
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const Gtk = imports.gi.Gtk;
const Pango = imports.gi.Pango;
const St = imports.gi.St;
const Shell = imports.gi.Shell;
const Signals = imports.signals;
const Lang = imports.lang;
const Mainloop = imports.mainloop;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const History = imports.misc.history;
const ExtensionSystem = imports.ui.extensionSystem;
@@ -25,11 +26,13 @@ var commandHeader = 'const Clutter = imports.gi.Clutter; ' +
'const Gtk = imports.gi.Gtk; ' +
'const Mainloop = imports.mainloop; ' +
'const Meta = imports.gi.Meta; ' +
'const Semantic = imports.misc.semantic' +
'const Shell = imports.gi.Shell; ' +
'const Tp = imports.gi.TelepathyGLib; ' +
'const Main = imports.ui.main; ' +
'const Lang = imports.lang; ' +
'const Tweener = imports.ui.tweener; ' +
'const Zeitgeist = imports.misc.zeitgeist; ' +
/* Utility functions...we should probably be able to use these
* in the shell core code too. */
'const stage = global.stage; ' +
@@ -99,19 +102,12 @@ Notebook.prototype = {
selectIndex: function(index) {
if (index == this._selectedIndex)
return;
this._unselect();
if (index < 0) {
this._unselect();
this.emit('selection', null);
return;
}
// Focus the new tab before unmapping the old one
let tabData = this._tabs[index];
if (!tabData.scrollView.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false))
this.actor.grab_key_focus();
this._unselect();
tabData.labelBox.add_style_pseudo_class('selected');
tabData.scrollView.show();
this._selectedIndex = index;
@@ -713,7 +709,6 @@ LookingGlass.prototype = {
let toolbar = new St.BoxLayout({ name: 'Toolbar' });
this.actor.add_actor(toolbar);
let inspectIcon = new St.Icon({ icon_name: 'gtk-color-picker',
icon_type: St.IconType.FULLCOLOR,
icon_size: 24 });
toolbar.add_actor(inspectIcon);
inspectIcon.reactive = true;
@@ -751,7 +746,12 @@ LookingGlass.prototype = {
let label = new St.Label({ text: 'js>>> ' });
entryArea.add(label);
this._entry = new St.Entry({ can_focus: true });
this._entry = new St.Entry();
/* unmapping the edit box will un-focus it, undo that */
notebook.connect('selection', Lang.bind(this, function (nb, child) {
if (child == this._evalBox)
global.stage.set_key_focus(this._entry);
}));
entryArea.add(this._entry, { expand: true });
this._windowList = new WindowList();
@@ -910,7 +910,6 @@ LookingGlass.prototype = {
if (!Main.pushModal(this._entry))
return;
this._notebook.selectIndex(0);
this.actor.show();
this.actor.lower(Main.chrome.actor);
this._open = true;

View File

@@ -1,5 +1,11 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
imports.gi.versions.Clutter = '1.0';
imports.gi.versions.Gio = '2.0';
imports.gi.versions.Gdk = '3.0';
imports.gi.versions.GdkPixbuf = '2.0';
imports.gi.versions.Gtk = '3.0';
const Clutter = imports.gi.Clutter;
const DBus = imports.dbus;
const Gdk = imports.gi.Gdk;
@@ -11,6 +17,8 @@ const Mainloop = imports.mainloop;
const Meta = imports.gi.Meta;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Chrome = imports.ui.chrome;
const CtrlAltTab = imports.ui.ctrlAltTab;
@@ -29,7 +37,6 @@ const WindowAttentionHandler = imports.ui.windowAttentionHandler;
const Scripting = imports.ui.scripting;
const ShellDBus = imports.ui.shellDBus;
const TelepathyClient = imports.ui.telepathyClient;
const GoaClient = imports.ui.goaClient;
const WindowManager = imports.ui.windowManager;
const Magnifier = imports.ui.magnifier;
const XdndHandler = imports.ui.xdndHandler;
@@ -51,7 +58,6 @@ let messageTray = null;
let notificationDaemon = null;
let windowAttentionHandler = null;
let telepathyClient = null;
let goaClient = null;
let ctrlAltTabManager = null;
let recorder = null;
let shellDBusService = null;
@@ -69,7 +75,12 @@ let _cssStylesheet = null;
let background = null;
function start() {
// Monkey patch utility functions into the global proxy;
// Add a binding for 'global' in the global JS namespace; (gjs
// keeps the web browser convention of having that namespace be
// called 'window'.)
window.global = Shell.Global.get();
// Now monkey patch utility functions into the global proxy;
// This is easier and faster than indirecting down into global
// if we want to call back up into JS.
global.logError = _logError;
@@ -91,6 +102,8 @@ function start() {
// not loading any events until the user presses the clock
global.launch_calendar_server();
Environment.init();
// Ensure ShellWindowTracker and ShellAppUsage are initialized; this will
// also initialize ShellAppSystem first. ShellAppSystem
// needs to load all the .desktop files, and ShellWindowTracker
@@ -141,7 +154,6 @@ function start() {
notificationDaemon = new NotificationDaemon.NotificationDaemon();
windowAttentionHandler = new WindowAttentionHandler.WindowAttentionHandler();
telepathyClient = new TelepathyClient.Client();
goaClient = new GoaClient.Client();
overview.init();
statusIconDispatcher.start(messageTray.actor);

View File

@@ -20,6 +20,9 @@ const Params = imports.misc.params;
const Tweener = imports.ui.tweener;
const Util = imports.misc.util;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const ANIMATION_TIME = 0.2;
const NOTIFICATION_TIMEOUT = 4;
const SUMMARY_TIMEOUT = 1;
@@ -408,7 +411,6 @@ Notification.prototype = {
this._bannerBodyText = null;
this._bannerBodyMarkup = false;
this._titleFitsInBannerMode = true;
this._titleDirection = St.TextDirection.NONE;
this._spacing = 0;
this._scrollPolicy = Gtk.PolicyType.AUTOMATIC;
@@ -508,19 +510,6 @@ Notification.prototype = {
title = title ? _fixMarkup(title.replace(/\n/g, ' '), params.titleMarkup) : '';
this._titleLabel.clutter_text.set_markup('<b>' + title + '</b>');
if (Pango.find_base_dir(title, -1) == Pango.Direction.RTL)
this._titleDirection = St.TextDirection.RTL;
else
this._titleDirection = St.TextDirection.LTR;
// Let the title's text direction control the overall direction
// of the notification - in case where different scripts are used
// in the notification, this is the right thing for the icon, and
// arguably for action buttons as well. Labels other than the title
// will be allocated at the available width, so that their alignment
// is done correctly automatically.
this._table.set_direction(this._titleDirection);
// Unless the notification has custom content, we save this._bannerBodyText
// to add it to the content of the notification if the notification is
// expandable due to other elements in its content area or due to the banner
@@ -722,39 +711,23 @@ Notification.prototype = {
let availWidth = box.x2 - box.x1;
let titleBox = new Clutter.ActorBox();
let titleBoxW = Math.min(titleNatW, availWidth);
if (this._titleDirection == St.TextDirection.RTL) {
titleBox.x1 = availWidth - titleBoxW;
titleBox.x2 = availWidth;
} else {
titleBox.x1 = 0;
titleBox.x2 = titleBoxW;
}
titleBox.y1 = 0;
titleBox.x1 = titleBox.y1 = 0;
titleBox.x2 = Math.min(titleNatW, availWidth);
titleBox.y2 = titleNatH;
this._titleLabel.allocate(titleBox, flags);
this._titleFitsInBannerMode = (titleNatW <= availWidth);
let bannerFits = true;
if (titleBoxW + this._spacing > availWidth) {
if (titleBox.x2 + this._spacing > availWidth) {
this._bannerLabel.opacity = 0;
bannerFits = false;
} else {
let bannerBox = new Clutter.ActorBox();
if (this._titleDirection == St.TextDirection.RTL) {
bannerBox.x1 = 0;
bannerBox.x2 = titleBox.x1 - this._spacing;
bannerFits = (bannerBox.x2 - bannerNatW >= 0);
} else {
bannerBox.x1 = titleBox.x2 + this._spacing;
bannerBox.x2 = availWidth;
bannerFits = (bannerBox.x1 + bannerNatW <= availWidth);
}
bannerBox.x1 = titleBox.x2 + this._spacing;
bannerBox.y1 = 0;
bannerBox.x2 = Math.min(bannerBox.x1 + bannerNatW, availWidth);
bannerBox.y2 = titleNatH;
bannerFits = (bannerBox.x1 + bannerNatW <= availWidth);
this._bannerLabel.allocate(bannerBox, flags);
// Make _bannerLabel visible if the entire notification
@@ -1301,10 +1274,6 @@ MessageTray.prototype = {
},
getBusy: function(source) {
return this._busy;
},
contains: function(source) {
return this._getIndexOfSummaryItemForSource(source) >= 0;
},

View File

@@ -10,6 +10,8 @@ const Pango = imports.gi.Pango;
const St = imports.gi.St;
const Shell = imports.gi.Shell;
const Signals = imports.signals;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Params = imports.misc.params;
@@ -48,6 +50,10 @@ ModalDialog.prototype = {
coordinate: Clutter.BindCoordinate.POSITION | Clutter.BindCoordinate.SIZE });
this._group.add_constraint(constraint);
global.focus_manager.add_group(this._group);
this._initialKeyFocus = this._group;
this._savedKeyFocus = null;
this._group.connect('destroy', Lang.bind(this, this._onGroupDestroy));
this._actionKeys = {};
@@ -88,10 +94,6 @@ ModalDialog.prototype = {
{ expand: true,
x_align: St.Align.MIDDLE,
y_align: St.Align.END });
global.focus_manager.add_group(this._dialogLayout);
this._initialKeyFocus = this._dialogLayout;
this._savedKeyFocus = null;
},
setButtons: function(buttons) {
@@ -193,7 +195,6 @@ ModalDialog.prototype = {
this.state = State.CLOSING;
this.popModal(timestamp);
this._savedKeyFocus = null;
Tweener.addTween(this._group,
{ opacity: 0,

View File

@@ -7,6 +7,8 @@ const Lang = imports.lang;
const Shell = imports.gi.Shell;
const Mainloop = imports.mainloop;
const St = imports.gi.St;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Config = imports.misc.config;
const Main = imports.ui.main;
@@ -187,11 +189,9 @@ NotificationDaemon.prototype = {
actions, hints, timeout) {
let id;
// Filter out chat and presence notifications from Empathy, since we
// Filter out notifications from Empathy, since we
// handle that information from telepathyClient.js
if (appName == 'Empathy' && (hints['category'] == 'im.received' ||
hints['category'] == 'presence.online' ||
hints['category'] == 'presence.offline')) {
if (appName == 'Empathy') {
// Ignore replacesId since we already sent back a
// NotificationClosed for that id.
id = nextNotificationId++;

View File

@@ -8,12 +8,13 @@ const Signals = imports.signals;
const Lang = imports.lang;
const St = imports.gi.St;
const Shell = imports.gi.Shell;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Gdk = imports.gi.Gdk;
const AppDisplay = imports.ui.appDisplay;
const Dash = imports.ui.dash;
const DND = imports.ui.dnd;
const DocDisplay = imports.ui.docDisplay;
const Lightbox = imports.ui.lightbox;
const Main = imports.ui.main;
const MessageTray = imports.ui.messageTray;
@@ -23,6 +24,7 @@ const Tweener = imports.ui.tweener;
const ViewSelector = imports.ui.viewSelector;
const WorkspacesView = imports.ui.workspacesView;
const WorkspaceThumbnail = imports.ui.workspaceThumbnail;
const ZeitgeistSearch = imports.ui.zeitgeistSearch;
// Time for initial animation going into Overview mode
const ANIMATION_TIME = 0.25;
@@ -190,7 +192,11 @@ Overview.prototype = {
this.viewSelector.addSearchProvider(new AppDisplay.AppSearchProvider());
this.viewSelector.addSearchProvider(new AppDisplay.PrefsSearchProvider());
this.viewSelector.addSearchProvider(new PlaceDisplay.PlaceSearchProvider());
this.viewSelector.addSearchProvider(new DocDisplay.DocSearchProvider());
this.viewSelector.addSearchProvider(new ZeitgeistSearch.DocumentsAsyncSearchProvider());
this.viewSelector.addSearchProvider(new ZeitgeistSearch.VideosAsyncSearchProvider());
this.viewSelector.addSearchProvider(new ZeitgeistSearch.MusicAsyncSearchProvider());
this.viewSelector.addSearchProvider(new ZeitgeistSearch.PicturesAsyncSearchProvider());
this.viewSelector.addSearchProvider(new ZeitgeistSearch.OtherAsyncSearchProvider());
// TODO - recalculate everything when desktop size changes
this.dash = new Dash.Dash();

View File

@@ -9,6 +9,8 @@ const Pango = imports.gi.Pango;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Signals = imports.signals;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Config = imports.misc.config;
const CtrlAltTab = imports.ui.ctrlAltTab;
@@ -258,14 +260,10 @@ AppMenuButton.prototype = {
this._iconBox = new Shell.Slicer({ name: 'appMenuIcon' });
this._iconBox.connect('style-changed',
Lang.bind(this, this._onIconBoxStyleChanged));
this._iconBox.connect('notify::allocation',
Lang.bind(this, this._updateIconBoxClip));
this._container.add_actor(this._iconBox);
this._label = new TextShadower();
this._container.add_actor(this._label.actor);
this._iconBottomClip = 0;
this._quitMenu = new PopupMenu.PopupMenuItem('');
this.menu.addMenuItem(this._quitMenu);
this._quitMenu.connect('activate', Lang.bind(this, this._onQuit));
@@ -336,16 +334,11 @@ AppMenuButton.prototype = {
_onIconBoxStyleChanged: function() {
let node = this._iconBox.get_theme_node();
this._iconBottomClip = node.get_length('app-icon-bottom-clip');
this._updateIconBoxClip();
},
_updateIconBoxClip: function() {
let allocation = this._iconBox.allocation;
if (this._iconBottomClip > 0)
let bottomClip = node.get_length('app-icon-bottom-clip');
if (bottomClip > 0)
this._iconBox.set_clip(0, 0,
allocation.x2 - allocation.x1,
allocation.y2 - allocation.y1 - this._iconBottomClip);
this._iconBox.width,
this._iconBox.height - bottomClip);
else
this._iconBox.remove_clip();
},
@@ -815,8 +808,6 @@ Panel.prototype = {
reactive: true });
this.actor._delegate = this;
this._statusArea = {};
Main.overview.connect('shown', Lang.bind(this, function () {
this.actor.add_style_class_name('in-overview');
}));
@@ -913,7 +904,6 @@ Panel.prototype = {
style_class: 'panel-button',
reactive: true,
can_focus: true });
this._activities = this.button;
this.button.set_child(label);
this.button._delegate = this.button;
this.button._xdndTimeOut = 0;
@@ -942,10 +932,10 @@ Panel.prototype = {
this._hotCorner = null;
this._appMenu = new AppMenuButton();
this._leftBox.add(this._appMenu.actor);
let appMenuButton = new AppMenuButton();
this._leftBox.add(appMenuButton.actor);
this._menus.addMenu(this._appMenu.menu);
this._menus.addMenu(appMenuButton.menu);
/* center */
this._dateMenu = new DateMenu.DateMenuButton();
@@ -964,12 +954,12 @@ Panel.prototype = {
this._rightBox.add(this._trayBox);
this._rightBox.add(this._statusBox);
this._userMenu = new StatusMenu.StatusMenuButton();
this._userMenu.actor.name = 'panelStatus';
this._rightBox.add(this._userMenu.actor);
this._statusmenu = new StatusMenu.StatusMenuButton();
this._statusmenu.actor.name = 'panelStatus';
this._rightBox.add(this._statusmenu.actor);
// Synchronize the buttons pseudo classes with its corner
this._userMenu.actor.connect('style-changed', Lang.bind(this,
this._statusmenu.actor.connect('style-changed', Lang.bind(this,
function(actor) {
let rtl = actor.get_direction() == St.TextDirection.RTL;
let corner = rtl ? this._leftCorner : this._rightCorner;
@@ -1052,13 +1042,11 @@ Panel.prototype = {
let indicator = new constructor();
this._statusBox.add(indicator.actor);
this._menus.addMenu(indicator.menu);
this._statusArea[role] = indicator;
}
// PopupMenuManager depends on menus being added in order for
// keyboard navigation
this._menus.addMenu(this._userMenu.menu);
this._menus.addMenu(this._statusmenu.menu);
},
startupAnimation: function() {

View File

@@ -32,15 +32,6 @@ Button.prototype = {
},
_onButtonPress: function(actor, event) {
if (!this.menu.isOpen) {
// Setting the max-height won't do any good if the minimum height of the
// menu is higher then the screen; it's useful if part of the menu is
// scrollable so the minimum height is smaller than the natural height
let monitor = global.get_primary_monitor();
this.menu.actor.style = ('max-height: ' +
Math.round(monitor.height - Main.panel.actor.height) +
'px;');
}
this.menu.toggle();
},

View File

@@ -7,6 +7,8 @@ const Lang = imports.lang;
const Mainloop = imports.mainloop;
const Signals = imports.signals;
const St = imports.gi.St;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const DND = imports.ui.dnd;
const Main = imports.ui.main;

View File

@@ -22,6 +22,8 @@
const Lang = imports.lang;
const Signals = imports.signals;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Shell = imports.gi.Shell;
const Clutter = imports.gi.Clutter;
const St = imports.gi.St;

View File

@@ -13,6 +13,9 @@ const Main = imports.ui.main;
const Params = imports.misc.params;
const Tweener = imports.ui.tweener;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const SLIDER_SCROLL_STEP = 0.05; /* Slider scrolling step in % */
function PopupBaseMenuItem(params) {
@@ -495,7 +498,7 @@ PopupSliderMenuItem.prototype = {
this._slider = new St.DrawingArea({ style_class: 'popup-slider-menu-item', reactive: true });
this.addActor(this._slider, { span: -1, expand: true });
this._slider.connect('repaint', Lang.bind(this, this._sliderRepaint));
this.actor.connect('button-press-event', Lang.bind(this, this._startDragging));
this._slider.connect('button-press-event', Lang.bind(this, this._startDragging));
this.actor.connect('scroll-event', Lang.bind(this, this._onScrollEvent));
this._releaseId = this._motionId = 0;
@@ -763,7 +766,6 @@ PopupMenuBase.prototype = {
this.box = new St.BoxLayout({ vertical: true });
}
this.box.connect_after('queue-relayout', Lang.bind(this, this._menuQueueRelayout));
this.length = 0;
this.isOpen = false;
@@ -771,10 +773,6 @@ PopupMenuBase.prototype = {
// for the menu which causes its prelight state to freeze
this.blockSourceEvents = false;
// Can be set while a menu is up to let all events through without special
// menu handling useful for scrollbars in menus, and probably not otherwise.
this.passEvents = false;
this._activeMenuItem = null;
},
@@ -853,8 +851,6 @@ PopupMenuBase.prototype = {
menuItem.connect('destroy', Lang.bind(this, function() {
menuItem.disconnect(menuItem._subMenuActivateId);
menuItem.disconnect(menuItem._subMenuActiveChangeId);
this.length--;
}));
} else if (menuItem instanceof PopupSubMenuMenuItem) {
if (before_item == null)
@@ -871,8 +867,6 @@ PopupMenuBase.prototype = {
this._connectItemSignals(menuItem);
else
throw TypeError("Invalid argument to PopupMenuBase.addMenuItem()");
this.length++;
},
getColumnWidths: function() {
@@ -1044,109 +1038,45 @@ PopupSubMenu.prototype = {
__proto__: PopupMenuBase.prototype,
_init: function(sourceActor, sourceArrow) {
PopupMenuBase.prototype._init.call(this, sourceActor);
PopupMenuBase.prototype._init.call(this, sourceActor, 'popup-sub-menu');
this._arrow = sourceArrow;
this._arrow.rotation_center_z_gravity = Clutter.Gravity.CENTER;
// Since a function of a submenu might be to provide a "More.." expander
// with long content, we make it scrollable - the scrollbar will only take
// effect if a CSS max-height is set on the top menu.
this.actor = new St.ScrollView({ style_class: 'popup-sub-menu',
hscrollbar_policy: Gtk.PolicyType.NEVER,
vscrollbar_policy: Gtk.PolicyType.NEVER });
// StScrollbar plays dirty tricks with events, calling
// clutter_set_motion_events_enabled (FALSE) during the scroll; this
// confuses our event tracking, so we just turn it off during the
// scroll.
let vscroll = this.actor.get_vscroll_bar();
vscroll.connect('scroll-start',
Lang.bind(this, function() {
let topMenu = this._getTopMenu();
if (topMenu)
topMenu.passEvents = true;
}));
vscroll.connect('scroll-stop',
Lang.bind(this, function() {
let topMenu = this._getTopMenu();
if (topMenu)
topMenu.passEvents = false;
}));
this.actor.add_actor(this.box);
this.actor = this.box;
this.actor._delegate = this;
this.actor.clip_to_allocation = true;
this.actor.connect('key-press-event', Lang.bind(this, this._onKeyPressEvent));
this.actor.hide();
},
_getTopMenu: function() {
let actor = this.actor.get_parent();
while (actor) {
if (actor._delegate && actor._delegate instanceof PopupMenu)
return actor._delegate;
actor = actor.get_parent();
}
return null;
},
_needsScrollbar: function() {
let topMenu = this._getTopMenu();
let [topMinHeight, topNaturalHeight] = topMenu.actor.get_preferred_height(-1);
let topThemeNode = topMenu.actor.get_theme_node();
let topMaxHeight = topThemeNode.get_max_height();
return topMaxHeight >= 0 && topNaturalHeight >= topMaxHeight;
},
open: function(animate) {
if (this.isOpen)
return;
this.isOpen = true;
// we don't implement the !animate case because that doesn't
// currently get used...
let [naturalHeight, minHeight] = this.actor.get_preferred_height(-1);
this.actor.height = 0;
this.actor.show();
let needsScrollbar = this._needsScrollbar();
// St.ScrollView always requests space horizontally for a possible vertical
// scrollbar if in AUTOMATIC mode. Doing better would require implementation
// of width-for-height in St.BoxLayout and St.ScrollView. This looks bad
// when we *don't* need it, so turn off the scrollbar when that's true.
// Dynamic changes in whether we need it aren't handled properly.
this.actor.vscrollbar_policy =
needsScrollbar ? Gtk.PolicyType.AUTOMATIC : Gtk.PolicyType.NEVER;
// It looks funny if we animate with a scrollbar (at what point is
// the scrollbar added?) so just skip that case
if (animate && needsScrollbar)
animate = false;
if (animate) {
let [minHeight, naturalHeight] = this.actor.get_preferred_height(-1);
this.actor.height = 0;
this.actor._arrow_rotation = this._arrow.rotation_angle_z;
Tweener.addTween(this.actor,
{ _arrow_rotation: 90,
height: naturalHeight,
time: 0.25,
onUpdateScope: this,
onUpdate: function() {
this._arrow.rotation_angle_z = this.actor._arrow_rotation;
},
onCompleteScope: this,
onComplete: function() {
this.actor.set_height(-1);
this.emit('open-state-changed', true);
}
});
} else {
this._arrow.rotation_angle_z = 90;
this.emit('open-state-changed', true);
}
this.actor._arrow_rotation = this._arrow.rotation_angle_z;
Tweener.addTween(this.actor,
{ _arrow_rotation: 90,
height: naturalHeight,
time: 0.25,
onUpdateScope: this,
onUpdate: function() {
this._arrow.rotation_angle_z = this.actor._arrow_rotation;
},
onCompleteScope: this,
onComplete: function() {
this.actor.set_height(-1);
this.emit('open-state-changed', true);
}
});
},
close: function(animate) {
@@ -1158,9 +1088,6 @@ PopupSubMenu.prototype = {
if (this._activeMenuItem)
this._activeMenuItem.setActive(false);
if (animate && this._needsScrollbar())
animate = false;
if (animate) {
this.actor._arrow_rotation = this._arrow.rotation_angle_z;
Tweener.addTween(this.actor,
@@ -1496,12 +1423,8 @@ PopupMenuManager.prototype = {
this._owner.menuEventFilter(event))
return true;
if (this._activeMenu != null && this._activeMenu.passEvents)
return false;
let activeMenuContains = this._eventIsOnActiveMenu(event);
let eventType = event.type();
if (eventType == Clutter.EventType.BUTTON_RELEASE) {
if (activeMenuContains) {
return false;

View File

@@ -8,6 +8,8 @@ const Meta = imports.gi.Meta;
const St = imports.gi.St;
const Shell = imports.gi.Shell;
const Signals = imports.signals;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const FileUtils = imports.misc.fileUtils;
const Main = imports.ui.main;

View File

@@ -7,6 +7,9 @@ const Signals = imports.signals;
const Shell = imports.gi.Shell;
const Util = imports.misc.util;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const FileUtils = imports.misc.fileUtils;
const Main = imports.ui.main;
@@ -112,6 +115,43 @@ function SearchProvider(title) {
SearchProvider.prototype = {
_init: function(title) {
this.title = title;
this.searchSystem = null;
this.searchAsync = false;
},
_asyncCancelled: function() {
},
startAsync: function() {
this.searchAsync = true;
},
tryCancelAsync: function() {
if (!this.searchAsync)
return;
this._asyncCancelled();
this.searchAsync = false;
},
/**
* addItems:
* @items: an array of result identifier strings representing
* items which match the last given search terms.
*
* This should be used for something that requires a bit more
* logic; it's designed to be an asyncronous way to add a result
* to the current search.
*/
addItems: function( items) {
if (!this.searchSystem)
throw new Error('Search provider not registered');
if (!items.length)
return;
this.tryCancelAsync();
this.searchSystem.addProviderItems(this, items);
},
/**
@@ -209,6 +249,7 @@ SearchProvider.prototype = {
};
Signals.addSignalMethods(SearchProvider.prototype);
function OpenSearchSystem() {
this._init();
}
@@ -271,18 +312,24 @@ OpenSearchSystem.prototype = {
},
_addProvider: function(fileName) {
let path = global.datadir + '/search_providers/' + fileName;
let source = Shell.get_file_contents_utf8_sync(path);
let [success, name, url, langs, icon_uri] = Shell.parse_search_provider(source);
let provider ={ name: name,
url: url,
id: this._providers.length,
icon_uri: icon_uri,
langs: langs };
if (this._checkSupportedProviderLanguage(provider)) {
this._providers.push(provider);
this.emit('changed');
}
let file = Gio.file_new_for_path(global.datadir + '/search_providers/' + fileName);
let source = '';
file.load_contents_async(null, Lang.bind(this, function (obj, res) {
let [success, source] = file.load_contents_finish(res);
if (source) {
let [success, name, url, langs, icon_uri] = global.parse_search_provider(source);
let provider ={ name: name,
url: url,
id: this._providers.length,
icon_uri: icon_uri,
langs: langs };
if (this._checkSupportedProviderLanguage(provider)) {
this._providers.push(provider);
this.emit('changed');
}
}
}));
},
_refresh: function() {
@@ -315,6 +362,7 @@ SearchSystem.prototype = {
},
registerProvider: function (provider) {
provider.searchSystem = this;
this._providers.push(provider);
},
@@ -331,30 +379,50 @@ SearchSystem.prototype = {
this._previousResults = [];
},
addProviderItems: function(provider, items) {
let index = this._providers.indexOf(provider);
let [provider2, results] = this._previousResults[index];
if (provider !== provider2)
return;
results.push.apply(results, items);
this.emit('results-updated', this._previousResults);
},
updateSearch: function(searchString) {
searchString = searchString.replace(/^\s+/g, '').replace(/\s+$/g, '');
if (searchString == '')
return [];
return;
let terms = searchString.split(/\s+/);
let isSubSearch = terms.length == this._previousTerms.length;
if (isSubSearch) {
for (let i = 0; i < terms.length; i++) {
if (terms[i].indexOf(this._previousTerms[i]) != 0) {
isSubSearch = false;
break;
this.updateSearchResults(terms);
},
updateSearchResults: function(terms) {
let isSubSearch = false;
if (terms) {
isSubSearch = terms.length == this._previousTerms.length;
if (isSubSearch) {
for (let i = 0; i < terms.length; i++) {
if (terms[i].indexOf(this._previousTerms[i]) != 0) {
isSubSearch = false;
break;
}
}
}
} else {
terms = this._previousTerms;
}
let results = [];
if (isSubSearch) {
for (let i = 0; i < this._previousResults.length; i++) {
for (let i = 0; i < this._providers.length; i++) {
let [provider, previousResults] = this._previousResults[i];
provider.tryCancelAsync();
try {
let providerResults = provider.getSubsearchResultSet(previousResults, terms);
if (providerResults.length > 0)
results.push([provider, providerResults]);
results.push([provider, providerResults]);
} catch (error) {
global.log ('A ' + error.name + ' has occured in ' + provider.title + ': ' + error.message);
}
@@ -362,10 +430,10 @@ SearchSystem.prototype = {
} else {
for (let i = 0; i < this._providers.length; i++) {
let provider = this._providers[i];
provider.tryCancelAsync();
try {
let providerResults = provider.getInitialResultSet(terms);
if (providerResults.length > 0)
results.push([provider, providerResults]);
results.push([provider, providerResults]);
} catch (error) {
global.log ('A ' + error.name + ' has occured in ' + provider.title + ': ' + error.message);
}
@@ -374,8 +442,7 @@ SearchSystem.prototype = {
this._previousTerms = terms;
this._previousResults = results;
return results;
}
this.emit('results-updated', results);
},
};
Signals.addSignalMethods(SearchSystem.prototype);

View File

@@ -2,6 +2,8 @@
const Clutter = imports.gi.Clutter;
const Lang = imports.lang;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Gtk = imports.gi.Gtk;
const Meta = imports.gi.Meta;
const St = imports.gi.St;
@@ -37,7 +39,6 @@ SearchResult.prototype = {
let icon = new IconGrid.BaseIcon(this.metaInfo['name'],
{ createIcon: this.metaInfo['createIcon'] });
content.set_child(icon.actor);
this.actor.label_actor = icon.label;
}
this._content = content;
this.actor.set_child(content);
@@ -76,12 +77,11 @@ SearchResult.prototype = {
},
getDragActorSource: function() {
// not exactly right, but alignment problems are hard to notice
return this._content;
return this.metaInfo['icon'];
},
getDragActor: function(stageX, stageY) {
return this.metaInfo['createIcon'](Main.overview.dash.iconSize);
return new Clutter.Clone({ source: this.metaInfo['icon'] });
},
shellWorkspaceLaunch: function(params) {
@@ -182,6 +182,7 @@ function SearchResults(searchSystem, openSearchSystem) {
SearchResults.prototype = {
_init: function(searchSystem, openSearchSystem) {
this._searchSystem = searchSystem;
this._searchSystem.connect('results-updated', Lang.bind(this, this._updateResults));
this._openSearchSystem = openSearchSystem;
this.actor = new St.BoxLayout({ name: 'searchResults',
@@ -216,9 +217,11 @@ SearchResults.prototype = {
this._selectedProvider = -1;
this._providers = this._searchSystem.getProviders();
this._providerMeta = [];
for (let i = 0; i < this._providers.length; i++)
this._providerMetaResults = {};
for (let i = 0; i < this._providers.length; i++) {
this.createProviderMeta(this._providers[i]);
this._providerMetaResults[this.providers[i].title] = [];
}
this._searchProvidersBox = new St.BoxLayout({ style_class: 'search-providers-box' });
this.actor.add(this._searchProvidersBox);
@@ -258,7 +261,6 @@ SearchResults.prototype = {
let title = new St.Label({ text: provider.name,
style_class: 'dash-search-button-label' });
button.label_actor = title;
bin.set_child(title);
button.set_child(bin);
provider.actor = button;
@@ -297,6 +299,12 @@ SearchResults.prototype = {
meta.actor.hide();
}
},
_clearDisplayForProvider: function(index) {
let meta = this._providerMeta[index];
meta.resultDisplay.clear();
meta.actor.hide();
},
reset: function() {
this._searchSystem.reset();
@@ -312,15 +320,15 @@ SearchResults.prototype = {
this._statusText.show();
},
doSearch: function (searchString) {
this._searchSystem.updateSearch(searchString);
},
_metaForProvider: function(provider) {
return this._providerMeta[this._providers.indexOf(provider)];
},
updateSearch: function (searchString) {
let results = this._searchSystem.updateSearch(searchString);
this._clearDisplay();
_updateResults: function(searchSystem, results) {
if (results.length == 0) {
this._statusText.set_text(_("No matching results."));
this._statusText.show();
@@ -330,28 +338,27 @@ SearchResults.prototype = {
this._statusText.hide();
}
let terms = this._searchSystem.getTerms();
let terms = searchSystem.getTerms();
this._openSearchSystem.setSearchTerms(terms);
// To avoid CSS transitions causing flickering
// of the selection when the first search result
// stays the same, we hide the content while
// filling in the results and setting the initial
// selection.
this._content.hide();
for (let i = 0; i < results.length; i++) {
let [provider, providerResults] = results[i];
let meta = this._metaForProvider(provider);
meta.actor.show();
meta.resultDisplay.renderResults(providerResults, terms);
if (providerResults.length == 0)
this._clearDisplayForProvider(i)
else {
if (this._providerMetaResults[provider.title] != providerResults) {
this._providerMetaResults[provider.title] = providerResults;
this._clearDisplayForProvider(i);
let meta = this._metaForProvider(provider);
meta.actor.show();
meta.resultDisplay.renderResults(providerResults, terms);
}
}
}
if (this._selectedOpenSearchButton == -1)
this.selectDown(false);
this._content.show();
return true;
},

View File

@@ -14,6 +14,9 @@ const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const Util = imports.misc.util;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const A11Y_SCHEMA = 'org.gnome.desktop.a11y.keyboard';
const KEY_STICKY_KEYS_ENABLED = 'stickykeys-enable';
const KEY_BOUNCE_KEYS_ENABLED = 'bouncekeys-enable';

View File

@@ -16,6 +16,9 @@ const MessageTray = imports.ui.messageTray;
const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const ConnectionState = {
DISCONNECTED: 0,
CONNECTED: 1,
@@ -64,7 +67,7 @@ Indicator.prototype = {
this._fullMenuItems = [new PopupMenu.PopupSeparatorMenuItem(),
new PopupMenu.PopupMenuItem(_("Send Files to Device...")),
new PopupMenu.PopupMenuItem(_("Set up a New Device...")),
new PopupMenu.PopupMenuItem(_("Setup a New Device...")),
new PopupMenu.PopupSeparatorMenuItem()];
this._hasDevices = false;
this._deviceSep = this._fullMenuItems[0]; // hidden if no device exists
@@ -124,6 +127,13 @@ Indicator.prototype = {
}
},
_deviceCompare: function(d1, d2) {
return d1.device_path == d2.device_path &&
d1.bdaddr == d2.bdaddr &&
d1.can_connect == d2.can_connect &&
d1.capabilities == d2.capabilities;
},
_updateDevices: function() {
let devices = this._applet.get_devices();
@@ -132,8 +142,12 @@ Indicator.prototype = {
let item = this._deviceItems[i];
let destroy = true;
for (let j = 0; j < devices.length; j++) {
if (item._device.device_path == devices[j].device_path) {
this._updateDeviceItem(item, devices[j]);
// we need to deep compare because BluetoothSimpleDevice is a boxed type
// (but we take advantage of that, because _skip will disappear the next
// time get_devices() is called)
if (this._deviceCompare(item._device, devices[j])) {
item.label.text = devices[j].alias;
devices[j]._skip = true;
destroy = false;
break;
}
@@ -148,7 +162,7 @@ Indicator.prototype = {
this._hasDevices = newlist.length > 0;
for (let i = 0; i < devices.length; i++) {
let d = devices[i];
if (d._item)
if (d._skip)
continue;
let item = this._createDeviceItem(d);
if (item) {
@@ -163,55 +177,17 @@ Indicator.prototype = {
this._deviceSep.actor.hide();
},
_updateDeviceItem: function(item, device) {
if (!device.can_connect && device.capabilities == GnomeBluetoothApplet.Capabilities.NONE) {
item.destroy();
return;
}
let prevDevice = item._device;
let prevCapabilities = prevDevice.capabilities;
let prevCanConnect = prevDevice.can_connect;
// adopt the new device object
item._device = device;
device._item = item;
// update properties
item.label.text = device.alias;
if (prevCapabilities != device.capabilities ||
prevCanConnect != device.can_connect) {
// need to rebuild the submenu
item.menu.removeAll();
this._buildDeviceSubMenu(item, device);
}
// update connected property
if (device.can_connect)
item._connectedMenuitem.setToggleState(device.connected);
},
_createDeviceItem: function(device) {
if (!device.can_connect && device.capabilities == GnomeBluetoothApplet.Capabilities.NONE)
return null;
let item = new PopupMenu.PopupSubMenuMenuItem(device.alias);
// adopt the device object, and add a back link
item._device = device;
device._item = item;
this._buildDeviceSubMenu(item, device);
return item;
},
_buildDeviceSubMenu: function(item, device) {
if (device.can_connect) {
item._connected = device.connected;
item._connectedMenuitem = new PopupMenu.PopupSwitchMenuItem(_("Connection"), device.connected);
let menuitem = new PopupMenu.PopupSwitchMenuItem(_("Connection"), device.connected);
item._connectedMenuitem.connect('toggled', Lang.bind(this, function() {
menuitem.connect('toggled', Lang.bind(this, function() {
if (item._connected > ConnectionState.CONNECTED) {
// operation already in progress, revert
menuitem.setToggleState(menuitem.state);
@@ -241,7 +217,7 @@ Indicator.prototype = {
}
}));
item.menu.addMenuItem(item._connectedMenuitem);
item.menu.addMenuItem(menuitem);
}
if (device.capabilities & GnomeBluetoothApplet.Capabilities.OBEX_PUSH) {
@@ -287,6 +263,8 @@ Indicator.prototype = {
default:
break;
}
return item;
},
_updateFullMenu: function() {

View File

@@ -13,6 +13,9 @@ const PopupMenu = imports.ui.popupMenu;
const PanelMenu = imports.ui.panelMenu;
const Util = imports.misc.util;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
function LayoutMenuItem() {
this._init.apply(this, arguments);
}

View File

@@ -18,8 +18,10 @@ const MessageTray = imports.ui.messageTray;
const ModemManager = imports.misc.modemManager;
const Util = imports.misc.util;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const NMConnectionCategory = {
INVALID: 'invalid',
WIRED: 'wired',
WIRELESS: 'wireless',
WWAN: 'wwan',
@@ -30,10 +32,8 @@ const NMAccessPointSecurity = {
UNKNOWN: 0,
NONE: 1,
WEP: 2,
WPA_PSK: 3,
WPA2_PSK: 4,
WPA_ENT: 5,
WPA2_ENT: 6
WPA: 3,
WPA2: 4
};
// small optimization, to avoid using [] all the time
@@ -41,21 +41,6 @@ const NM80211Mode = NetworkManager['80211Mode'];
const NM80211ApFlags = NetworkManager['80211ApFlags'];
const NM80211ApSecurityFlags = NetworkManager['80211ApSecurityFlags'];
// number of wireless networks that should be visible
// (the remaining are placed into More...)
const NUM_VISIBLE_NETWORKS = 5;
const NMAppletHelperInterface = {
name: 'org.gnome.network_manager_applet',
methods: [
{ name: 'ConnectToHiddenNetwork', inSignature: '', outSignature: '' },
{ name: 'CreateWifiNetwork', inSignature: '', outSignature: '' },
{ name: 'ConnectTo8021xNetwork', inSignature: 'oo', outSignature: '' },
{ name: 'ConnectTo3gNetwork', inSignature: 'o', outSignature: '' }
],
};
const NMAppletProxy = DBus.makeProxyClass(NMAppletHelperInterface);
function macToArray(string) {
return string.split(':').map(function(el) {
return parseInt(el, 16);
@@ -115,13 +100,8 @@ NMNetworkMenuItem.prototype = {
accessPoints = sortAccessPoints(accessPoints);
this.bestAP = accessPoints[0];
if (!title) {
let ssid = this.bestAP.get_ssid();
if (ssid)
title = NetworkManager.utils_ssid_to_utf8(ssid);
if (!title)
title = _("<unknown>");
}
let ssid = this.bestAP.get_ssid();
title = title || NetworkManager.utils_ssid_to_utf8(ssid) || _("<unknown>");
this._label = new St.Label({ text: title });
this.addActor(this._label);
@@ -132,11 +112,12 @@ NMNetworkMenuItem.prototype = {
style_class: 'popup-menu-icon' });
this._icons.add_actor(this._signalIcon);
this._secureIcon = new St.Icon({ style_class: 'popup-menu-icon' });
if (this.bestAP._secType != NMAccessPointSecurity.UNKNOWN &&
this.bestAP._secType != NMAccessPointSecurity.NONE)
this._secureIcon.icon_name = 'network-wireless-encrypted';
this._icons.add_actor(this._secureIcon);
this.bestAP._secType != NMAccessPointSecurity.NONE) {
this._secureIcon = new St.Icon({ icon_name: 'network-wireless-encrypted',
style_class: 'popup-menu-icon' });
this._icons.add_actor(this._secureIcon);
}
this._accessPoints = [ ];
for (let i = 0; i < accessPoints.length; i++) {
@@ -151,18 +132,15 @@ NMNetworkMenuItem.prototype = {
}
},
_updated: function(ap) {
if (ap.strength > this.bestAP.strength)
_updated: function(ap, strength) {
if (strength > this.bestAP.strength)
this.bestAP = ap;
this._signalIcon.icon_name = this._getIcon();
},
_getIcon: function() {
if (this.bestAP.mode == NM80211Mode.ADHOC)
return 'network-workgroup';
else
return 'network-wireless-signal-' + signalToIcon(this.bestAP.strength);
return 'network-wireless-signal-' + signalToIcon(this.bestAP.strength);
},
updateAccessPoints: function(accessPoints) {
@@ -222,7 +200,7 @@ NMDeviceTitleMenuItem.prototype = {
},
setStatus: function(text) {
if (text != null) {
if (text) {
this._statusLabel.text = text;
this._statusBin.child = this._statusLabel;
this.actor.reactive = false;
@@ -276,14 +254,7 @@ NMWiredSectionTitleMenuItem.prototype = {
return;
}
let newState = this._switch.state;
// Immediately reset the switch to false, it will be updated appropriately
// by state-changed signals in devices (but fixes the VPN not being in sync
// if the ActiveConnection object is never seen by libnm-glib)
this._switch.setToggleState(false);
if (newState)
if (this._switch.state)
this._device.activate();
else
this._device.deactivate();
@@ -389,8 +360,6 @@ NMDevice.prototype = {
this.deactivate();
this.emit('enabled-changed');
}));
this._updateStatusItem();
}
this.section = new PopupMenu.PopupMenuSection();
@@ -407,19 +376,10 @@ NMDevice.prototype = {
GObject.Object.prototype.disconnect.call(this.device, this._stateChangedId);
this._stateChangedId = 0;
}
if (this._carrierChangedId) {
// see above for why this is needed
GObject.Object.prototype.disconnect.call(this.device, this._carrierChangedId);
this._carrierChangedId = 0;
}
if (this._firmwareChangedId) {
GObject.Object.prototype.disconnect.call(this.device, this._firmwareChangedId);
this._firmwareChangedId = 0;
}
this._clearSection();
if (this.statusItem)
this.statusItem.destroy();
if (this.titleItem)
this.titleItem.destroy();
this.section.destroy();
},
@@ -438,8 +398,7 @@ NMDevice.prototype = {
this._client.activate_connection(this._connections[0].connection, this.device, null, null);
} else if (this._autoConnectionName) {
let connection = this._createAutomaticConnection();
if (connection)
this._client.add_and_activate_connection(connection, this.device, null, null);
this._client.add_and_activate_connection(connection, this.device, null, null);
}
},
@@ -465,7 +424,7 @@ NMDevice.prototype = {
},
checkConnection: function(connection) {
let exists = this._findConnection(connection._uuid) != -1;
let exists = this._findConnection(connection) != -1;
let valid = this.connectionValid(connection);
if (exists && !valid)
this.removeConnection(connection);
@@ -516,7 +475,7 @@ NMDevice.prototype = {
},
connectionValid: function(connection) {
return this.device.connection_valid(connection);
throw new TypeError('Invoking pure virtual function NMDevice.connectionValid');
},
setEnabled: function(enabled) {
@@ -526,16 +485,12 @@ NMDevice.prototype = {
getStatusLabel: function() {
switch(this.device.state) {
case NetworkManager.DeviceState.UNMANAGED:
case NetworkManager.DeviceState.DISCONNECTED:
case NetworkManager.DeviceState.DEACTIVATING:
case NetworkManager.DeviceState.ACTIVATED:
return null;
case NetworkManager.DeviceState.PREPARE:
case NetworkManager.DeviceState.CONFIG:
case NetworkManager.DeviceState.IP_CONFIG:
case NetworkManager.DeviceState.IP_CHECK:
case NetworkManager.DeviceState.SECONDARIES:
return _("connecting...");
case NetworkManager.DeviceState.NEED_AUTH:
/* Translators: this is for network connections that require some kind of key or password */
@@ -595,7 +550,8 @@ NMDevice.prototype = {
},
_shouldShowConnectionList: function() {
return (this.device.state >= NetworkManager.DeviceState.DISCONNECTED);
return (this.device.state == NetworkManager.DeviceState.DISCONNECTED ||
this.device.state == NetworkManager.DeviceState.ACTIVATED);
},
_createSection: function() {
@@ -619,8 +575,7 @@ NMDevice.prototype = {
this._autoConnectionItem = new PopupMenu.PopupMenuItem(this._autoConnectionName);
this._autoConnectionItem.connect('activate', Lang.bind(this, function() {
let connection = this._createAutomaticConnection();
if (connection)
this._client.add_and_activate_connection(connection, this.device, null, null);
this._client.add_and_activate_connection(connection, this.device, null, null);
}));
this.section.addMenuItem(this._autoConnectionItem);
}
@@ -671,14 +626,6 @@ NMDevice.prototype = {
break;
}
this._updateStatusItem();
this._clearSection();
this._createSection();
this.emit('state-changed');
},
_updateStatusItem: function() {
if (this._carrierChangedId) {
// see above for why this is needed
GObject.Object.prototype.disconnect.call(this.device, this._carrierChangedId);
@@ -691,6 +638,10 @@ NMDevice.prototype = {
this.statusItem.setStatus(this.getStatusLabel());
this.statusItem.setToggleState(this.connected);
this._clearSection();
this._createSection();
this.emit('state-changed');
},
_substateChanged: function() {
@@ -735,6 +686,17 @@ NMDeviceWired.prototype = {
NMDevice.prototype._init.call(this, client, device, connections);
},
connectionValid: function(connection) {
if (connection._type != NetworkManager.SETTING_WIRED_SETTING_NAME)
return false;
let ethernetSettings = connection.get_setting_by_name(NetworkManager.SETTING_WIRED_SETTING_NAME);
let fixedMac = ethernetSettings.get_mac_address();
if (fixedMac)
return macCompare(fixedMac, macToArray(this.device.perm_hw_address));
return true;
},
_createSection: function() {
NMDevice.prototype._createSection.call(this);
@@ -777,10 +739,6 @@ NMDeviceModem.prototype = {
this.mobileDevice = null;
this._connectionType = 'ppp';
this._applet_proxy = new NMAppletProxy(DBus.session,
'org.gnome.network_manager_applet',
'/org/gnome/network_manager_applet');
this._capabilities = device.current_capabilities;
if (this._capabilities & NetworkManager.DeviceModemCapabilities.GSM_UMTS) {
is_wwan = true;
@@ -859,15 +817,12 @@ NMDeviceModem.prototype = {
},
_createSection: function() {
if (!this._shouldShowConnectionList())
return;
if (this.mobileDevice) {
// If operator_name is null, just pass the empty string, as the item is hidden anyway
this._operatorItem = new PopupMenu.PopupImageMenuItem(this.mobileDevice.operator_name || '',
this._getSignalIcon(),
{ reactive: false });
if (!this.mobileDevice.operator_name)
if (this.mobileDevice.operator_name)
this._operatorItem.actor.hide();
this.section.addMenuItem(this._operatorItem);
}
@@ -875,20 +830,30 @@ NMDeviceModem.prototype = {
NMDevice.prototype._createSection.call(this);
},
_clearSection: function() {
clearSection: function() {
this._operatorItem = null;
NMDevice.prototype._clearSection.call(this);
},
connectionValid: function(connection) {
return connection._type == this._connectionType;
},
_createAutomaticConnection: function() {
// Mobile wizard is handled by nm-applet for now...
this._applet_proxy.ConnectTo3gNetworkRemote(this.device.get_path(),
Lang.bind(this, function(results, err) {
if (err)
log(err);
}));
return null;
// FIXME: we need to summon the mobile wizard here
// or NM will not have the necessary parameters to complete the connection
// pending a DBus method on nm-applet
let connection = new NetworkManager.Connection;
connection._uuid = NetworkManager.utils_uuid_generate();
connection.add_setting(new NetworkManager.SettingConnection({
uuid: connection._uuid,
id: this._autoConnectionName,
type: this._connectionType,
autoconnect: false
}));
return connection;
}
};
@@ -908,6 +873,18 @@ NMDeviceBluetooth.prototype = {
NMDevice.prototype._init.call(this, client, device, connections);
},
connectionValid: function(connection) {
if (connection._type != NetworkManager.SETTING_BLUETOOTH_SETTING_NAME)
return false;
let bluetoothSettings = connection.get_setting_by_name(NetworkManager.SETTING_BLUETOOTH_SETTING_NAME);
let fixedBdaddr = bluetoothSettings.get_bdaddr();
if (fixedBdaddr)
return macCompare(fixedBdaddr, macToArray(this.device.hw_address));
return true;
},
_createAutomaticConnection: function() {
let connection = new NetworkManager.Connection;
connection._uuid = NetworkManager.utils_uuid_generate();
@@ -930,7 +907,7 @@ NMDeviceBluetooth.prototype = {
},
_updateAutoConnectionName: function() {
this._autoConnectionName = this._makeConnectionName(this.device);
this._autoConnectionName = this._makeConnectioName(this.device);
this._clearSection();
this._createSection();
@@ -963,13 +940,7 @@ NMDeviceVPN.prototype = {
},
get connected() {
return !!this._activeConnection;
},
setActiveConnection: function(activeConnection) {
NMDevice.prototype.setActiveConnection.call(this, activeConnection);
this.emit('active-connection-changed');
return true;
},
_shouldShowConnectionList: function() {
@@ -999,10 +970,6 @@ NMDeviceWireless.prototype = {
this._overflowItem = null;
this._networks = [ ];
this._applet_proxy = new NMAppletProxy(DBus.session,
'org.gnome.network_manager_applet',
'/org/gnome/network_manager_applet');
// breaking the layers with this, but cannot call
// this.connectionValid until I have a device
this.device = device;
@@ -1027,27 +994,18 @@ NMDeviceWireless.prototype = {
item: null,
accessPoints: [ ap ]
};
obj.ssidText = NetworkManager.utils_ssid_to_utf8(obj.ssid);
this._networks.push(obj);
}
// Check if some connection is valid for this AP
for (let j = 0; j < validConnections.length; j++) {
let connection = validConnections[j];
if (ap.connection_valid(connection) &&
if (this._connectionValidForAP(connection, ap) &&
obj.connections.indexOf(connection) == -1) {
obj.connections.push(connection);
}
}
}
if (this.device.active_access_point) {
this._activeNetwork = this._networks[this._findNetwork(this.device.active_access_point)];
} else {
this._activeNetwork = null;
}
this._networks.sort(this._networkSortFunction);
this._apChangedId = device.connect('notify::active-access-point', Lang.bind(this, this._activeApChanged));
this._apAddedId = device.connect('access-point-added', Lang.bind(this, this._accessPointAdded));
this._apRemovedId = device.connect('access-point-removed', Lang.bind(this, this._accessPointRemoved));
@@ -1055,13 +1013,8 @@ NMDeviceWireless.prototype = {
},
destroy: function() {
if (this._apChangedId) {
// see above for this HACK
GObject.Object.prototype.disconnect.call(this.device, this._apChangedId);
this._apChangedId = 0;
}
if (this._apAddedId) {
// see above for this HACK
GObject.Object.prototype.disconnect.call(this.device, this._apAddedId);
this._apAddedId = 0;
}
@@ -1108,7 +1061,7 @@ NMDeviceWireless.prototype = {
if (best) {
for (let i = 0; i < bestApObj.accessPoints.length; i++) {
let ap = bestApObj.accessPoints[i];
if (ap.connection_valid(best)) {
if (this._connectionValidForAP(best, ap)) {
this._client.activate_connection(best, this.device, ap.dbus_path, null);
break;
}
@@ -1127,76 +1080,35 @@ NMDeviceWireless.prototype = {
}
},
_activeApChanged: function() {
this._activeNetwork = null;
let activeAp = this.device.active_access_point;
if (activeAp) {
let pos = this._findNetwork(activeAp);
this._activeNetwork = this._networks[pos];
}
// we don't refresh the view here, setActiveConnection will
},
_getApSecurityType: function(accessPoint) {
if (accessPoint._secType)
return accessPoint._secType;
// XXX: have this checked by someone familiar with IEEE 802.1x
let flags = accessPoint.flags;
let wpa_flags = accessPoint.wpa_flags;
let rsn_flags = accessPoint.rsn_flags;
let type;
if (rsn_flags != NM80211ApSecurityFlags.NONE) {
/* RSN check first so that WPA+WPA2 APs are treated as RSN/WPA2 */
if (rsn_flags & NM80211ApSecurityFlags.KEY_MGMT_802_1X)
type = NMAccessPointSecurity.WPA2_ENT;
else if (rsn_flags & NM80211ApSecurityFlags.KEY_MGMT_PSK)
type = NMAccessPointSecurity.WPA2_PSK;
} else if (wpa_flags != NM80211ApSecurityFlags.NONE) {
if (wpa_flags & NM80211ApSecurityFlags.KEY_MGMT_802_1X)
type = NMAccessPointSecurity.WPA_ENT;
else if (wpa_flags & NM80211ApSecurityFlags.KEY_MGMT_PSK)
type = NMAccessPointSecurity.WPA_PSK;
} else {
if (flags & NM80211ApFlags.PRIVACY)
type = NMAccessPointSecurity.WEP;
else
type = NMAccessPointSecurity.NONE;
}
if ( !(flags & NM80211ApFlags.PRIVACY)
&& (wpa_flags == NM80211ApSecurityFlags.NONE)
&& (rsn_flags == NM80211ApSecurityFlags.NONE))
type = NMAccessPointSecurity.NONE;
else if ( (flags & NM80211ApFlags.PRIVACY)
&& (wpa_flags == NM80211ApSecurityFlags.NONE)
&& (rsn_flags == NM80211ApSecurityFlags.NONE))
type = NMAccessPointSecurity.WEP;
else if ( !(flags & NM80211ApFlags.PRIVACY)
&& (wpa_flags != NM80211ApSecurity.NONE)
&& (rsn_flags != NM80211ApSecurity.NONE))
type = NMAccessPointSecurity.WPA;
else
type = NMAccessPointSecurity.WPA2;
// cache the found value to avoid checking flags all the time
accessPoint._secType = type;
return type;
},
_networkSortFunction: function(one, two) {
let oneHasConnection = one.connections.length != 0;
let twoHasConnection = two.connections.length != 0;
// place known connections first
// (-1 = good order, 1 = wrong order)
if (oneHasConnection && !twoHasConnection)
return -1;
else if (!oneHasConnection && twoHasConnection)
return 1;
let oneHasSecurity = one.security != NMAccessPointSecurity.NONE;
let twoHasSecurity = two.security != NMAccessPointSecurity.NONE;
// place secure connections first
// (we treat WEP/WPA/WPA2 the same as there is no way to
// take them apart from the UI)
if (oneHasSecurity && !twoHasSecurity)
return -1;
else if (!oneHasSecurity && twoHasSecurity)
return 1;
// sort alphabetically
return GLib.utf8_collate(one.ssidText, two.ssidText);
},
_networkCompare: function(network, accessPoint) {
if (!ssidCompare(network.ssid, accessPoint.get_ssid()))
return false;
@@ -1219,8 +1131,6 @@ NMDeviceWireless.prototype = {
_accessPointAdded: function(device, accessPoint) {
let pos = this._findNetwork(accessPoint);
let apObj;
let needsupdate = false;
if (pos != -1) {
apObj = this._networks[pos];
if (apObj.accessPoints.indexOf(accessPoint) != -1) {
@@ -1229,8 +1139,6 @@ NMDeviceWireless.prototype = {
}
apObj.accessPoints.push(accessPoint);
if (apObj.item)
apObj.item.updateAccessPoints(apObj.accessPoints);
} else {
apObj = { ssid: accessPoint.get_ssid(),
mode: accessPoint.mode,
@@ -1239,54 +1147,21 @@ NMDeviceWireless.prototype = {
item: null,
accessPoints: [ accessPoint ]
};
apObj.ssidText = NetworkManager.utils_ssid_to_utf8(apObj.ssid);
needsupdate = true;
this._networks.push(apObj);
}
// check if this enables new connections for this group
for (let i = 0; i < this._connections.length; i++) {
let connection = this._connections[i].connection;
if (accessPoint.connection_valid(connection) &&
if (this._connectionValidForAP(connection, accessPoint) &&
apObj.connections.indexOf(connection) == -1) {
apObj.connections.push(connection);
// this potentially changes the order
needsupdate = true;
}
}
if (needsupdate) {
if (apObj.item)
apObj.item.destroy();
if (pos != -1)
this._networks.splice(pos, 1);
if (this._networks.length == 0) {
// only network in the list
this._networks.push(apObj);
this._clearSection();
this._createSection();
return;
}
// skip networks that should appear earlier
let menuPos = 0;
for (pos = 0;
pos < this._networks.length &&
this._networkSortFunction(this._networks[pos], apObj) < 0; ++pos) {
if (this._networks[pos] != this._activeNetwork)
menuPos++;
}
// (re-)add the network
this._networks.splice(pos, 0, apObj);
if (this._shouldShowConnectionList()) {
menuPos += (this._activeConnectionItem ? 1 : 0);
this._createNetworkItem(apObj, menuPos);
}
}
// update everything
this._clearSection();
this._createSection();
},
_accessPointRemoved: function(device, accessPoint) {
@@ -1311,11 +1186,6 @@ NMDeviceWireless.prototype = {
if (apObj.item)
apObj.item.destroy();
this._networks.splice(pos, 1);
if (this._overflowItem &&
this._overflowItem.menu.length == 0) {
this._overflowItem.destroy();
this._overflowItem = null;
}
} else if (apObj.item)
apObj.item.updateAccessPoints(apObj.accessPoints);
},
@@ -1326,7 +1196,7 @@ NMDeviceWireless.prototype = {
item.connect('activate', Lang.bind(this, function() {
let accessPoints = sortAccessPoints(accessPointObj.accessPoints);
for (let i = 0; i < accessPoints.length; i++) {
if (accessPoints[i].connection_valid(connection)) {
if (this._connectionValidForAP(connection, accessPoints[i])) {
this._client.activate_connection(connection, this.device, accessPoints[i].dbus_path, null);
break;
}
@@ -1335,6 +1205,40 @@ NMDeviceWireless.prototype = {
return item;
},
connectionValid: function(connection) {
if (connection._type != NetworkManager.SETTING_WIRELESS_SETTING_NAME)
return false;
let wirelessSettings = connection.get_setting_by_name(NetworkManager.SETTING_WIRELESS_SETTING_NAME);
let wirelessSecuritySettings = connection.get_setting_by_name(NetworkManager.SETTING_WIRELESS_SECURITY_SETTING_NAME);
let fixedMac = wirelessSettings.get_mac_address();
if (fixedMac && !macCompare(fixedMac, macToArray(this.device.perm_hw_address)))
return false;
if (wirelessSecuritySettings &&
wirelessSecuritySettings.key_mgmt != 'none' &&
wirelessSecuritySettings.key_mgmt != 'ieee8021x') {
let capabilities = this.device.wireless_capabilities;
if (!(capabilities & NetworkManager.DeviceWifiCapabilities.WPA) ||
!(capabilities & NetworkManager.DeviceWifiCapabilities.CIPHER_TKIP))
return false;
if (wirelessSecuritySettings.get_num_protos() == 1 &&
wirelessSecuritySettings.get_proto(0) == 'rsn' &&
!(capabilities & NetworkManager.DeviceWifiCapabilities.RSN))
return false;
if (wirelessSecuritySettings.get_num_pairwise() == 1 &&
wirelessSecuritySettings.get_pairwise(0) == 'ccmp' &&
!(capabilities & NetworkManager.DeviceWifiCapabilities.CIPHER_CCMP))
return false;
if (wirelessSecuritySettings.get_num_groups() == 1 &&
wirelessSecuritySettings.get_group(0) == 'ccmp' &&
!(capabilities & NetworkManager.DeviceWifiCapabilities.CIPHER_CCMP))
return false;
}
return true;
},
_clearSection: function() {
NMDevice.prototype._clearSection.call(this);
@@ -1364,12 +1268,6 @@ NMDeviceWireless.prototype = {
// remove the connection from the access point group
connections.splice(k);
anyauto = connections.length == 0;
if (anyauto) {
// this potentially changes the sorting order
forceupdate = true;
break;
}
if (apObj.item) {
if (apObj.item instanceof PopupMenu.PopupSubMenuMenuItem) {
let items = apObj.item.menu.getMenuItems();
@@ -1395,7 +1293,6 @@ NMDeviceWireless.prototype = {
}
if (forceupdate || anyauto) {
this._networks.sort(this._networkSortFunction);
this._clearSection();
this._createSection();
}
@@ -1411,29 +1308,78 @@ NMDeviceWireless.prototype = {
this._connections.push(obj);
// find an appropriate access point
let forceupdate = false;
let any = false, forceupdate = false;
for (let i = 0; i < this._networks.length; i++) {
let apObj = this._networks[i];
// Check if connection is valid for any of these access points
let any = false;
for (let k = 0; k < apObj.accessPoints.length; k++) {
let ap = apObj.accessPoints[k];
if (ap.connection_valid(connection)) {
if (this._connectionValidForAP(connection, ap)) {
apObj.connections.push(connection);
// this potentially changes the sorting order
forceupdate = true;
any = true;
break;
}
}
if (any && this._shouldShowConnectionList()) {
// we need to show this connection
if (apObj.item && apObj.item.menu) {
// We're already showing the submenu for this access point
apObj.item.menu.addMenuItem(this._createAPItem(connection, apObj, true));
} else {
if (apObj.item)
apObj.item.destroy();
if (apObj.connections.length == 1) {
apObj.item = this._createAPItem(connection, apObj, false);
this.section.addMenuItem(apObj.item);
} else {
apObj.item = null;
// we need to force an update to create the submenu
forceupdate = true;
}
}
}
}
if (forceupdate) {
this._networks.sort(this._networkSortFunction);
this._clearSection();
this._createSection();
}
},
_connectionValidForAP: function(connection, ap) {
// copied and adapted from nm-applet
let wirelessSettings = connection.get_setting_by_name(NetworkManager.SETTING_WIRELESS_SETTING_NAME);
if (!ssidCompare(wirelessSettings.get_ssid(), ap.get_ssid()))
return false;
let wirelessSecuritySettings = connection.get_setting_by_name(NetworkManager.SETTING_WIRELESS_SECURITY_SETTING_NAME);
let fixedBssid = wirelessSettings.get_bssid();
if (fixedBssid && !macCompare(fixedBssid, macToArray(ap.hw_address)))
return false;
let fixedBand = wirelessSettings.band;
if (fixedBand) {
let freq = ap.frequency;
if (fixedBand == 'a' && (freq < 4915 || freq > 5825))
return false;
if (fixedBand == 'bg' && (freq < 2412 || freq > 2484))
return false;
}
let fixedChannel = wirelessSettings.channel;
if (fixedChannel && fixedChannel != NetworkManager.utils_wifi_freq_to_channel(ap.frequency))
return false;
if (!wirelessSecuritySettings)
return true;
return wirelessSettings.ap_security_compatible(wirelessSecuritySettings, ap.flags, ap.wpa_flags, ap.rsn_flags, ap.mode);
},
_createActiveConnectionItem: function() {
let activeAp = this.device.active_access_point;
let icon, title;
@@ -1480,48 +1426,6 @@ NMDeviceWireless.prototype = {
return connection;
},
_createNetworkItem: function(apObj, position) {
if(apObj.connections.length > 0) {
if (apObj.connections.length == 1)
apObj.item = this._createAPItem(apObj.connections[0], apObj, false);
else {
let title = apObj.ssidText;
apObj.item = new PopupMenu.PopupSubMenuMenuItem(title);
apObj.item._apObj = apObj;
for (let i = 0; i < apObj.connections.length; i++)
apObj.item.menu.addMenuItem(this._createAPItem(apObj.connections[i], apObj, true));
}
} else {
apObj.item = new NMNetworkMenuItem(apObj.accessPoints);
apObj.item._apObj = apObj;
apObj.item.connect('activate', Lang.bind(this, function() {
let accessPoints = sortAccessPoints(apObj.accessPoints);
if ( (accessPoints[0]._secType == NMAccessPointSecurity.WPA2_ENT)
|| (accessPoints[0]._secType == NMAccessPointSecurity.WPA_ENT)) {
// 802.1x-enabled APs get handled by nm-applet for now...
this._applet_proxy.ConnectTo8021xNetworkRemote(this.device.get_path(),
accessPoints[0].dbus_path,
Lang.bind(this, function(results, err) {
if (err)
log(err);
}));
} else {
let connection = this._createAutomaticConnection(apObj);
this._client.add_and_activate_connection(connection, this.device, accessPoints[0].dbus_path, null)
}
}));
}
if (position < NUM_VISIBLE_NETWORKS)
this.section.addMenuItem(apObj.item);
else {
if (!this._overflowItem) {
this._overflowItem = new PopupMenu.PopupSubMenuMenuItem(_("More..."));
this.section.addMenuItem(this._overflowItem);
}
this._overflowItem.menu.addMenuItem(apObj.item, position - NUM_VISIBLE_NETWORKS);
}
},
_createSection: function() {
if (!this._shouldShowConnectionList())
return;
@@ -1531,14 +1435,47 @@ NMDeviceWireless.prototype = {
this.section.addMenuItem(this._activeConnectionItem);
}
let activeOffset = this._activeConnectionItem ? 1 : 0;
let activeAp = this.device.active_access_point;
let activeApSsid = activeAp ? activeAp.get_ssid() : null;
// we want five access points in the menu, including the active one
let numItems = this._activeConnection ? 4 : 5;
for(let j = 0; j < this._networks.length; j++) {
let apObj = this._networks[j];
if (apObj == this._activeNetwork)
if(activeAp && ssidCompare(apObj.ssid, activeApSsid))
continue;
this._createNetworkItem(apObj, j + activeOffset);
let menuItem;
if(apObj.connections.length > 0) {
if (apObj.connections.length == 1)
apObj.item = this._createAPItem(apObj.connections[0], apObj, false);
else {
let title = NetworkManager.utils_ssid_to_utf8(apObj.ssid) || _("<unknown>");
apObj.item = new PopupMenu.PopupSubMenuMenuItem(title);
apObj.item._apObj = apObj;
for (let i = 0; i < apObj.connections.length; i++)
apObj.item.menu.addMenuItem(this._createAPItem(apObj.connections[i], apObj, true));
}
} else {
apObj.item = new NMNetworkMenuItem(apObj.accessPoints);
apObj.item._apObj = apObj;
apObj.item.connect('activate', Lang.bind(this, function() {
let connection = this._createAutomaticConnection(apObj);
let accessPoints = sortAccessPoints(apObj.accessPoints);
this._client.add_and_activate_connection(connection, this.device, accessPoints[0].dbus_path, null)
}));
}
if (j < numItems)
this.section.addMenuItem(apObj.item);
else {
if (!this._overflowItem) {
this._overflowItem = new PopupMenu.PopupSubMenuMenuItem(_("More..."));
this.section.addMenuItem(this._overflowItem);
}
this._overflowItem.menu.addMenuItem(apObj.item);
}
}
},
};
@@ -1602,9 +1539,6 @@ NMApplet.prototype = {
device: new NMDeviceVPN(this._client),
item: new NMWiredSectionTitleMenuItem(_("VPN Connections"))
};
this._devices.vpn.device.connect('active-connection-changed', Lang.bind(this, function() {
this._devices.vpn.item.updateForDevice(this._devices.vpn.device);
}));
this._devices.vpn.item.updateForDevice(this._devices.vpn.device);
this._devices.vpn.section.addMenuItem(this._devices.vpn.item);
this._devices.vpn.section.addMenuItem(this._devices.vpn.device.section);
@@ -1708,8 +1642,6 @@ NMApplet.prototype = {
managedDevices.forEach(function(dev) {
dev.statusItem.actor.show();
});
// remove status text from the section title item
item.updateForDevice(null);
}
}
},
@@ -1759,13 +1691,13 @@ NMApplet.prototype = {
{ icon: icon });
this._source.notify(notification);
})); */
wrapper._deviceStateChangedId = wrapper.connect('state-changed', Lang.bind(this, function(dev) {
wrapper._stateChangedId = wrapper.connect('state-changed', Lang.bind(this, function(dev) {
this._syncSectionTitle(dev.category);
}));
wrapper._destroyId = wrapper.connect('destroy', function(wrapper) {
//wrapper.disconnect(wrapper._networkLostId);
//wrapper.disconnect(wrapper._activationFailedId);
wrapper.disconnect(wrapper._deviceStateChangedId);
wrapper.disconnect(wrapper._stateChangedId);
});
let section = this._devices[wrapper.category].section;
let devices = this._devices[wrapper.category].devices;
@@ -1806,10 +1738,8 @@ NMApplet.prototype = {
for (let i = 0; i < closedConnections.length; i++) {
let active = closedConnections[i];
if (active._primaryDevice) {
if (active._primaryDevice)
active._primaryDevice.setActiveConnection(null);
active._primaryDevice = null;
}
if (active._notifyStateId) {
active.disconnect(active._notifyStateId);
active._notifyStateId = 0;
@@ -1863,9 +1793,14 @@ NMApplet.prototype = {
if (a.default6)
default_ip6 = a;
if (a.state == NetworkManager.ActiveConnectionState.ACTIVATING)
if (a.state == NetworkManager.ActiveConnectionState.ACTIVATING) {
activating = a;
// don't set activating connections to devices, NMDevice:state-changed
// should take care of rebuilding the menu
continue;
}
if (!a._primaryDevice) {
if (a._type != NetworkManager.SETTING_VPN_SETTING_NAME) {
// find a good device to be considered primary
@@ -1983,12 +1918,11 @@ NMApplet.prototype = {
this._connections.splice(connection);
let section = connection._section;
if (section == NMConnectionCategory.VPN) {
this._devices.vpn.device.removeConnection(connection);
if (this._devices.vpn.device.empty)
this._devices.vpn.section.actor.hide();
} else if (section != NMConnectionCategory.INVALID) {
} else {
let devices = this._devices[section].devices;
for (let i = 0; i < devices.length; i++)
devices[i].removeConnection(connection);
@@ -2002,19 +1936,16 @@ NMApplet.prototype = {
_updateConnection: function(connection) {
let connectionSettings = connection.get_setting_by_name(NetworkManager.SETTING_CONNECTION_SETTING_NAME);
connection._type = connectionSettings.type;
connection._section = this._ctypes[connection._type] || NMConnectionCategory.INVALID;
connection._section = this._ctypes[connection._type];
connection._name = connectionSettings.id;
connection._uuid = connectionSettings.uuid;
connection._timestamp = connectionSettings.timestamp;
let section = connection._section;
if (connection._section == NMConnectionCategory.INVALID)
return;
if (section == NMConnectionCategory.VPN) {
this._devices.vpn.device.checkConnection(connection);
this._devices.vpn.section.actor.show();
connection._everAdded = true;
} else {
let devices = this._devices[section].devices;
for (let i = 0; i < devices.length; i++) {
@@ -2102,7 +2033,7 @@ NMApplet.prototype = {
let ap = dev.device.active_access_point;
let mode = dev.device.mode;
if (!ap) {
if (mode != NM80211Mode.ADHOC) {
if (mode != NetworkManager['80211Mode'].ADHOC) {
log('An active wireless connection, in infrastructure mode, involves no access point?');
break;
}

View File

@@ -11,6 +11,9 @@ const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const Util = imports.misc.util;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const BUS_NAME = 'org.gnome.PowerManager';
const OBJECT_PATH = '/org/gnome/PowerManager';
@@ -112,15 +115,15 @@ Indicator.prototype = {
let timestring;
if (time > 60) {
if (minutes == 0) {
timestring = ngettext("%d hour remaining", "%d hours remaining", hours).format(hours);
timestring = Gettext.ngettext("%d hour remaining", "%d hours remaining", hours).format(hours);
} else {
/* TRANSLATORS: this is a time string, as in "%d hours %d minutes remaining" */
let template = _("%d %s %d %s remaining");
timestring = template.format (hours, ngettext("hour", "hours", hours), minutes, ngettext("minute", "minutes", minutes));
timestring = template.format (hours, Gettext.ngettext("hour", "hours", hours), minutes, Gettext.ngettext("minute", "minutes", minutes));
}
} else
timestring = ngettext("%d minute remaining", "%d minutes remaining", minutes).format(minutes);
timestring = Gettext.ngettext("%d minute remaining", "%d minutes remaining", minutes).format(minutes);
this._batteryItem.label.text = timestring;
}
this._primaryPercentage.text = Math.round(percentage) + '%';

View File

@@ -13,6 +13,9 @@ const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const Util = imports.misc.util;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const VOLUME_ADJUSTMENT_STEP = 0.05; /* Volume adjustment step in % */
const VOLUME_NOTIFY_ID = 1;

View File

@@ -9,6 +9,8 @@ const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Tp = imports.gi.TelepathyGLib;
const UPowerGlib = imports.gi.UPowerGlib;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const GnomeSession = imports.misc.gnomeSession;
const Main = imports.ui.main;

View File

@@ -9,6 +9,9 @@ const Signals = imports.signals;
const St = imports.gi.St;
const Tpl = imports.gi.TelepathyLogger;
const Tp = imports.gi.TelepathyGLib;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const C_ = Gettext.pgettext;
const History = imports.misc.history;
const Main = imports.ui.main;
@@ -77,9 +80,14 @@ Client.prototype = {
// The second argument, recover, means _observeChannels will be run
// for any existing channel as well.
let dbus = Tp.DBusDaemon.dup();
this._observer = Shell.TpClient.new(dbus);
this._observer.set_observe_channels_func(
Lang.bind(this, this._observeChannels));
this._observer = Tp.SimpleObserver.new(dbus, true, 'GnomeShell', true,
Lang.bind(this, this._observeChannels));
// We only care about single-user text-based chats
let props = {};
props[Tp.PROP_CHANNEL_CHANNEL_TYPE] = Tp.IFACE_CHANNEL_TYPE_TEXT;
props[Tp.PROP_CHANNEL_TARGET_HANDLE_TYPE] = Tp.HandleType.CONTACT;
this._observer.add_observer_filter(props);
try {
this._observer.register();
@@ -286,9 +294,6 @@ Source.prototype = {
},
_messageReceived: function(channel, message) {
if (message.get_message_type() == Tp.ChannelTextMessageType.DELIVERY_REPORT)
return;
message = makeMessageFromTpMessage(message, NotificationDirection.RECEIVED);
this._notification.appendMessage(message);
this.notify();
@@ -468,8 +473,6 @@ Notification.prototype = {
var daysAgo = (now.getTime() - date.getTime()) / (24 * 60 * 60 * 1000);
let format;
// Show a week day and time if date is in the last week
if (daysAgo < 1 || (daysAgo < 7 && now.getDay() != date.getDay())) {
/* Translators: this is a time format string followed by a date.
@@ -516,16 +519,18 @@ Notification.prototype = {
},
appendAliasChange: function(oldAlias, newAlias) {
oldAlias = GLib.markup_escape_text(oldAlias, -1);
newAlias = GLib.markup_escape_text(newAlias, -1);
// FIXME: uncomment this after 3.0 string freeze ends
/* Translators: this is the other person changing their old IM name to their new
IM name. */
let message = '<i>' + _("%s is now known as %s").format(oldAlias, newAlias) + '</i>';
let label = this.addBody(message, true);
label.add_style_class_name('chat-meta-message');
this._history.unshift({ actor: label, time: (Date.now() / 1000), realMessage: false });
this.update(newAlias, null, { customContent: true });
// oldAlias = GLib.markup_escape_text(oldAlias, -1);
// newAlias = GLib.markup_escape_text(newAlias, -1);
// /* Translators: this is the other person changing their old IM name to their new
// IM name. */
// let message = '<i>' + _("%s is now known as %s").format(oldAlias, newAlias) + '</i>';
// let label = this.addBody(message, true);
// label.add_style_class_name('chat-meta-message');
// this._history.unshift({ actor: label, time: (Date.now() / 1000), realMessage: false });
// this.update(newAlias, null, { customContent: true });
},
_onEntryActivated: function() {

View File

@@ -8,6 +8,8 @@ const Signals = imports.signals;
const Lang = imports.lang;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Main = imports.ui.main;
const Search = imports.ui.search;
@@ -150,6 +152,10 @@ SearchTab.prototype = {
return true;
}));
this._entry.connect('secondary-icon-clicked', Lang.bind(this,
function() {
this._reset();
}));
this._entry.connect('notify::mapped', Lang.bind(this, this._onMapped));
global.stage.connect('notify::key-focus', Lang.bind(this, this._updateCursorVisibility));
@@ -160,14 +166,7 @@ SearchTab.prototype = {
hide: function() {
BaseTab.prototype.hide.call(this);
// Leave the entry focused when it doesn't have any text;
// when replacing a selected search term, Clutter emits
// two 'text-changed' signals, one for deleting the previous
// text and one for the new one - the second one is handled
// incorrectly when we remove focus
// (https://bugzilla.gnome.org/show_bug.cgi?id=636341) */
if (this._text.text != '')
this._reset();
this._reset();
},
_reset: function () {
@@ -227,7 +226,7 @@ SearchTab.prototype = {
if (this._iconClickedId == 0) {
this._iconClickedId = this._entry.connect('secondary-icon-clicked',
Lang.bind(this, function() {
this._reset();
this.reset();
}));
}
this._activate();
@@ -291,7 +290,7 @@ SearchTab.prototype = {
_doSearch: function () {
this._searchTimeoutId = 0;
let text = this._text.get_text().replace(/^\s+/g, '').replace(/\s+$/g, '');
this._searchResults.updateSearch(text);
this._searchResults.doSearch(text);
return false;
}

View File

@@ -2,6 +2,8 @@
const Lang = imports.lang;
const Shell = imports.gi.Shell;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const Main = imports.ui.main;
const MessageTray = imports.ui.messageTray;

View File

@@ -237,7 +237,7 @@ WindowClone.prototype = {
this.emit('zoom-start');
if (!this._zoomLightbox)
this._zoomLightbox = new Lightbox.Lightbox(Main.uiGroup,
this._zoomLightbox = new Lightbox.Lightbox(global.stage,
{ fadeTime: LIGHTBOX_FADE_TIME });
this._zoomLightbox.show();
@@ -248,7 +248,7 @@ WindowClone.prototype = {
this._zoomGlobalOrig.setPosition.apply(this._zoomGlobalOrig, this.actor.get_transformed_position());
this._zoomGlobalOrig.setScale(width / this.actor.width, height / this.actor.height);
this.actor.reparent(Main.uiGroup);
this.actor.reparent(global.stage);
this._zoomLightbox.highlight(this.actor);
[this.actor.x, this.actor.y] = this._zoomGlobalOrig.getPosition();
@@ -296,9 +296,6 @@ WindowClone.prototype = {
},
_onDragBegin : function (draggable, time) {
if (this._zooming)
this._zoomEnd();
[this.dragOrigX, this.dragOrigY] = this.actor.get_position();
this.dragOrigScale = this.actor.scale_x;
this.inDrag = true;
@@ -397,8 +394,6 @@ WindowOverlay.prototype = {
show: function() {
this._hidden = false;
if (this._windowClone.actor.has_pointer)
this.closeButton.show();
this.title.show();
},
@@ -1118,9 +1113,7 @@ Workspace.prototype = {
// the compositor finds out about them...
Mainloop.idle_add(Lang.bind(this,
function () {
if (this.actor &&
metaWin.get_compositor_private() &&
metaWin.get_workspace() == this.metaWorkspace)
if (this.actor && metaWin.get_compositor_private())
this._doAddWindow(metaWin);
return false;
}));

View File

@@ -276,9 +276,7 @@ WorkspaceThumbnail.prototype = {
// the compositor finds out about them...
Mainloop.idle_add(Lang.bind(this,
function () {
if (this.actor &&
metaWin.get_compositor_private() &&
metaWin.get_workspace() == this.metaWorkspace)
if (this.actor && metaWin.get_compositor_private())
this._doAddWindow(metaWin);
return false;
}));

View File

@@ -7,6 +7,8 @@ const Meta = imports.gi.Meta;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Signals = imports.signals;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const DND = imports.ui.dnd;
const Main = imports.ui.main;
@@ -199,10 +201,12 @@ WorkspacesView.prototype = {
Tweener.removeTweens(workspace.actor);
let opacity = (this._inDrag && w != active) ? 200 : 255;
let y = (w - active) * (this._height + this._spacing + this._workspaceRatioSpacing);
if (showAnimation) {
let params = { y: y,
opacity: opacity,
time: WORKSPACE_SWITCH_TIME,
transition: 'easeOutQuad'
};
@@ -220,6 +224,7 @@ WorkspacesView.prototype = {
Tweener.addTween(workspace.actor, params);
} else {
workspace.actor.set_position(0, y);
workspace.actor.opacity = opacity;
if (w == 0)
this._updateVisibility();
}
@@ -434,14 +439,20 @@ WorkspacesView.prototype = {
if (topWorkspace) {
if (topWorkspace.actor.contains(dragEvent.targetActor)) {
hoverWorkspace = topWorkspace;
topWorkspace.opacity = topWorkspace.actor.opacity = 255;
result = topWorkspace.handleDragOver(dragEvent.source, dragEvent.dragActor);
} else {
topWorkspace.opacity = topWorkspace.actor.opacity = 200;
}
}
if (bottomWorkspace) {
if (bottomWorkspace.actor.contains(dragEvent.targetActor)) {
hoverWorkspace = bottomWorkspace;
bottomWorkspace.opacity = bottomWorkspace.actor.opacity = 255;
result = bottomWorkspace.handleDragOver(dragEvent.source, dragEvent.dragActor);
} else {
bottomWorkspace.opacity = bottomWorkspace.actor.opacity = 200;
}
}

202
js/ui/zeitgeistSearch.js Normal file
View File

@@ -0,0 +1,202 @@
/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*-
*
* Copyright (C) 2010 Seif Lotfy <seif@lotfy.com>
* Copyright (C) 2011 Siegfried-Angel Gevatter Pujals <siegfried@gevatter.com>
* Copyright (C) 2010-2011 Collabora Ltd.
* Authored by: Seif Lotfy <seif@lotfy.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*/
const Lang = imports.lang;
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio
const Semantic = imports.misc.semantic;
const Zeitgeist = imports.misc.zeitgeist;
const Gettext = imports.gettext.domain('gnome-shell');
const _ = Gettext.gettext;
const DocInfo = imports.misc.docInfo;
const Search = imports.ui.search;
// FIXME: The subject cache is never being emptied.
let ZeitgeistSubjectCache = {};
function ZeitgeistAsyncSearchProvider(title, interpretations) {
this._init(title, interpretations);
}
ZeitgeistAsyncSearchProvider.prototype = {
__proto__: Search.SearchProvider.prototype,
_init: function(title, interpretations) {
Search.SearchProvider.prototype._init.call(this, title);
this._buildTemplates(interpretations);
},
_buildTemplates: function(interpretations) {
this.templates = [];
for (let i = 0; i < interpretations.length; i++) {
let subject = new Zeitgeist.Subject('', interpretations[i], '', '', '', '', '');
let event = new Zeitgeist.Event('', '', '', [subject], []);
this.templates.push(event);
}
},
_search: function(terms) {
this._search_terms = terms;
Zeitgeist.fullTextSearch(terms[0]+'*',
this.templates,
Lang.bind(this, function(events) {
if (terms == this._search_terms)
this._asyncCallback(events);
}));
},
_asyncCancelled: function() {
this._search_terms = null;
},
getInitialResultSet: function(terms) {
this._search(terms);
return [];
},
getSubsearchResultSet: function(previousResults, terms) {
this.tryCancelAsync();
return this.getInitialResultSet(terms);
},
getResultMeta: function(resultId) {
return { 'id': ZeitgeistSubjectCache[resultId].uri,
'name': ZeitgeistSubjectCache[resultId].name,
'createIcon': function (size) {
return ZeitgeistSubjectCache[resultId].createIcon(size);
},
};
},
activateResult: function(resultId) {
Gio.app_info_launch_default_for_uri(resultId,
global.create_app_launch_context());
},
_asyncCallback: function(events) {
let items = [];
for (let i = 0; i < events.length; i++) {
let event = events[i];
let subject = event.subjects[0];
let uri = subject.uri.replace('file://', '');
uri = GLib.uri_unescape_string(uri, '');
if (GLib.file_test(uri, GLib.FileTest.EXISTS)) {
if (!ZeitgeistSubjectCache.hasOwnProperty(subject.uri)) {
let info = new DocInfo.ZeitgeistItemInfo(event);
ZeitgeistSubjectCache[info.uri] = info;
}
items.push(subject.uri);
}
}
this.addItems(items);
}
};
function DocumentsAsyncSearchProvider() {
this._init();
}
DocumentsAsyncSearchProvider.prototype = {
__proto__: ZeitgeistAsyncSearchProvider.prototype,
_init: function() {
let interpretations = [Semantic.NFO_DOCUMENT];
ZeitgeistAsyncSearchProvider.prototype._init.call(this, _("DOCUMENTS"), interpretations);
}
};
function VideosAsyncSearchProvider() {
this._init();
}
VideosAsyncSearchProvider.prototype = {
__proto__: ZeitgeistAsyncSearchProvider.prototype,
_init: function() {
let interpretations = [Semantic.NFO_VIDEO];
ZeitgeistAsyncSearchProvider.prototype._init.call(this, _("VIDEOS"), interpretations);
}
};
function MusicAsyncSearchProvider() {
this._init();
}
MusicAsyncSearchProvider.prototype = {
__proto__: ZeitgeistAsyncSearchProvider.prototype,
_init: function() {
let interpretations = [
Semantic.NFO_AUDIO,
Semantic.NMM_MUSIC_PIECE];
ZeitgeistAsyncSearchProvider.prototype._init.call(this, _("MUSIC"), interpretations);
}
};
function PicturesAsyncSearchProvider() {
this._init();
}
PicturesAsyncSearchProvider.prototype = {
__proto__: ZeitgeistAsyncSearchProvider.prototype,
_init: function() {
let interpretations = [Semantic.NFO_IMAGE];
ZeitgeistAsyncSearchProvider.prototype._init.call(this, _("PICTURES"), interpretations);
}
};
function OtherAsyncSearchProvider() {
this._init();
}
OtherAsyncSearchProvider.prototype = {
__proto__: ZeitgeistAsyncSearchProvider.prototype,
_init: function() {
let interpretations = [
'!' + Semantic.NFO_IMAGE,
'!' + Semantic.NFO_DOCUMENT,
'!' + Semantic.NFO_VIDEO,
'!' + Semantic.NFO_AUDIO,
'!' + Semantic.NMM_MUSIC_PIECE];
ZeitgeistAsyncSearchProvider.prototype._init.call(this, _("OTHER"), interpretations);
},
_buildTemplates: function(interpretations) {
// Here we want to get everything matching all of the templates, and
// not just any of them. Therefore we need to AND the interpretations
// instead of OR'ing them; this is done by having an Event with
// different Subjects.
this.templates = [];
let subjects = [];
for (let i = 0; i < interpretations.length; i++) {
let subject = new Zeitgeist.Subject('', interpretations[i], '', '', '', '', '');
subjects.push(subject);
}
let event = new Zeitgeist.Event('', '', '', subjects, []);
this.templates.push(event);
}
};

View File

@@ -1,8 +1,6 @@
af
an
ar
bg
bn
bn_IN
ca
cs
@@ -10,10 +8,8 @@ da
de
el
en_GB
eo
es
et
eu
fa
fi
fr
@@ -40,7 +36,6 @@ pt
pt_BR
ro
ru
sk
sl
sr
sr@latin

610
po/af.po

File diff suppressed because it is too large Load Diff

1161
po/an.po

File diff suppressed because it is too large Load Diff

1202
po/bn.po

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: HEAD\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-03-29 00:29+0200\n"
"PO-Revision-Date: 2011-04-03 23:19+0200\n"
"PO-Revision-Date: 2011-03-27 13:05+0100\n"
"Last-Translator: Gil Forcada <gilforcada@guifi.net>\n"
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
"Language: ca\n"
@@ -62,7 +62,7 @@ msgstr "Historial de les ordres utilitzades en el diàleg de l'Alt+F2"
#: ../data/org.gnome.shell.gschema.xml.in.h:7
msgid "History for the looking glass dialog"
msgstr "Historial del depurador del GNOME Shell"
msgstr "Historial del diàleg de l'Alt+F2"
#: ../data/org.gnome.shell.gschema.xml.in.h:8
msgid "If true, display date in the clock, in addition to time."
@@ -71,7 +71,7 @@ msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:9
msgid "If true, display seconds in time."
msgstr "Si és «true» (cert) es mostren els segons."
msgstr "Si és «true» (cert) es mostren el segons."
#: ../data/org.gnome.shell.gschema.xml.in.h:10
msgid "If true, display the ISO week date in the calendar."
@@ -106,7 +106,7 @@ msgstr ""
"s'estableix a un valor nul, s'utilitzarà el conducte predeterminat que ara "
"mateix és «videorate ! vp8enc quality=10 speed=2 threads=%T ! queue ! "
"webmmux» que enregistra amb el format WEBM amb el còdec VP8. El %T és una "
"variable per estimar el nombre de fils d'execució paral·lels òptims del "
"variable per a estimar el nombre de fils d'execució paral·lels òptims del "
"sistema."
#: ../data/org.gnome.shell.gschema.xml.in.h:14
@@ -787,7 +787,7 @@ msgstr "Permet l'accés sempre"
#: ../js/ui/status/bluetooth.js:377
msgid "Grant this time only"
msgstr "Permet-ho només ara"
msgstr "Permete-ho només ara"
#: ../js/ui/status/bluetooth.js:378
msgid "Reject"

683
po/cs.po

File diff suppressed because it is too large Load Diff

133
po/da.po
View File

@@ -14,8 +14,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-03-30 22:40+0200\n"
"PO-Revision-Date: 2011-03-30 19:55+0000\n"
"POT-Creation-Date: 2011-03-28 23:40+0200\n"
"PO-Revision-Date: 2011-03-28 20:00+0000\n"
"Last-Translator: Kris Thomsen <lakristho@gmail.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\n"
@@ -345,13 +345,13 @@ msgid "Nothing Scheduled"
msgstr "Intet planlagt"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:490
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d. %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:493
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d. %B %Y"
@@ -372,7 +372,7 @@ msgstr "Denne uge"
msgid "Next week"
msgstr "Næste uge"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1007
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1000
msgid "Remove"
msgstr "Fjern"
@@ -463,21 +463,24 @@ msgid "Logging out of the system."
msgstr "Logger ud af systemet."
#: ../js/ui/endSessionDialog.js:75 ../js/ui/endSessionDialog.js:82
#, fuzzy
msgid "Power Off"
msgstr "Sluk"
msgstr "Sluk..."
#: ../js/ui/endSessionDialog.js:76
#, fuzzy
msgid "Click Power Off to quit these applications and power off the system."
msgstr "Tryk Sluk for at afslutte disse programmer og lukke systemet ned."
msgstr "Tryk Log ud for at afslutte disse programmer og logge ud af systemet."
#: ../js/ui/endSessionDialog.js:77
#, c-format
#, fuzzy, c-format
msgid "The system will power off automatically in %d seconds."
msgstr "Systemet vil lukke ned automatisk om %d sekunder."
msgstr "Systemet vil genstarte automatisk om %d sekunder."
#: ../js/ui/endSessionDialog.js:78
#, fuzzy
msgid "Powering off the system."
msgstr "Lukker systemet ned."
msgstr "Logger ud af systemet."
#: ../js/ui/endSessionDialog.js:80 ../js/ui/endSessionDialog.js:88
#: ../js/ui/endSessionDialog.js:93
@@ -532,11 +535,11 @@ msgstr "Vis kilde"
msgid "Web Page"
msgstr "Webside"
#: ../js/ui/messageTray.js:1000
#: ../js/ui/messageTray.js:993
msgid "Open"
msgstr "Åbn"
#: ../js/ui/messageTray.js:2164
#: ../js/ui/messageTray.js:2151
msgid "System Information"
msgstr "Systeminformation"
@@ -559,20 +562,20 @@ msgid "Dash"
msgstr "Favoritområde"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:524
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Afslut %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:902
#: ../js/ui/panel.js:893
msgid "Activities"
msgstr "Aktiviteter"
#: ../js/ui/panel.js:1003
#: ../js/ui/panel.js:994
msgid "Top Bar"
msgstr "Toppanel"
msgstr ""
#: ../js/ui/placeDisplay.js:122
#, c-format
@@ -593,15 +596,15 @@ msgstr "STEDER & ENHEDER"
#: ../js/ui/polkitAuthenticationAgent.js:74
msgid "Authentication Required"
msgstr "Godkendelse er påkrævet"
msgstr ""
#: ../js/ui/polkitAuthenticationAgent.js:108
msgid "Administrator"
msgstr "Administrator"
msgstr ""
#: ../js/ui/polkitAuthenticationAgent.js:176
msgid "Authenticate"
msgstr "Godkend"
msgstr ""
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
@@ -609,11 +612,11 @@ msgstr "Godkend"
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
msgid "Sorry, that didn't work. Please try again."
msgstr "Beklager, godkendelse mislykkedes. Prøv igen."
msgstr ""
#: ../js/ui/polkitAuthenticationAgent.js:276
msgid "Password:"
msgstr "Adgangskode:"
msgstr ""
#. Translators: this MUST be either "toggle-switch-us"
#. (for toggle switches containing the English words
@@ -837,140 +840,150 @@ msgid "Localization Settings"
msgstr "Indstillinger for sprog"
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1454
#, fuzzy
msgid "<unknown>"
msgstr "<ukendt>"
msgstr "Ukendt"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:311
#, fuzzy
msgid "disabled"
msgstr "deaktiveret"
msgstr "Deaktiveret"
#: ../js/ui/status/network.js:494
#, fuzzy
msgid "connecting..."
msgstr "forbinder..."
msgstr "Forbindelse"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:497
msgid "authentication required"
msgstr "godkendelse påkrævet"
msgstr ""
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:507
msgid "firmware missing"
msgstr "firmware mangler"
msgstr ""
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:514
msgid "cable unplugged"
msgstr "kabel er ikke sat i"
msgstr ""
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:519
#, fuzzy
msgid "unavailable"
msgstr "utilgængelig"
msgstr "Tilgængelig"
#: ../js/ui/status/network.js:521
#, fuzzy
msgid "connection failed"
msgstr "forbindelse mislykkedes"
msgstr "Forbindelse"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:602 ../js/ui/status/network.js:1402
msgid "Connected (private)"
msgstr "Forbundet (privat)"
msgstr ""
#: ../js/ui/status/network.js:683
msgid "Auto Ethernet"
msgstr "Auto ethernet"
msgstr ""
#: ../js/ui/status/network.js:758
msgid "Auto broadband"
msgstr "Auto bredbånd"
msgstr ""
#: ../js/ui/status/network.js:761
msgid "Auto dial-up"
msgstr "Auto opringning"
msgstr ""
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:904 ../js/ui/status/network.js:1414
#, c-format
msgid "Auto %s"
msgstr "Auto %s"
msgstr ""
#: ../js/ui/status/network.js:906
#, fuzzy
msgid "Auto bluetooth"
msgstr "Auto bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/network.js:1416
msgid "Auto wireless"
msgstr "Auto trådløs"
msgstr ""
#: ../js/ui/status/network.js:1474
msgid "More..."
msgstr "Mere..."
msgstr ""
#: ../js/ui/status/network.js:1497
msgid "Enable networking"
msgstr "Aktivér netværk"
msgstr ""
#: ../js/ui/status/network.js:1509
msgid "Wired"
msgstr "Trådet"
msgstr ""
#: ../js/ui/status/network.js:1520
msgid "Wireless"
msgstr "Trådløs"
msgstr ""
#: ../js/ui/status/network.js:1530
msgid "Mobile broadband"
msgstr "Mobilt bredbånd"
msgstr ""
#: ../js/ui/status/network.js:1540
#, fuzzy
msgid "VPN Connections"
msgstr "VPN-forbindelser"
msgstr "Forbindelse"
#: ../js/ui/status/network.js:1549
#, fuzzy
msgid "Network Settings"
msgstr "Indstillinger for netværk"
msgstr "Indstillinger for strømstyring"
#: ../js/ui/status/network.js:1844
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Du er nu forbundet til den mobile bredbåndsforbindelse \"%s\""
msgstr ""
#: ../js/ui/status/network.js:1848
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Du er nu forbundet til det trådløse netværk \"%s\""
msgstr ""
#: ../js/ui/status/network.js:1852
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Du er nu forbundet til det trådede netværk \"%s\""
msgstr ""
#: ../js/ui/status/network.js:1856
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Du er nu forbundet til VPN-netværket \"%s\""
msgstr ""
#: ../js/ui/status/network.js:1861
#, c-format
msgid "You're now connected to '%s'"
msgstr "Du er nu forbundet til \"%s\""
msgstr ""
#: ../js/ui/status/network.js:1869
#, fuzzy
msgid "Connection established"
msgstr "Forbindelse oprettet"
msgstr "Forbindelse"
#: ../js/ui/status/network.js:1991
msgid "Networking is disabled"
msgstr "Netværk er deaktiveret"
msgstr ""
#: ../js/ui/status/network.js:2116
#, fuzzy
msgid "Network Manager"
msgstr "Netværkshåndtering"
msgstr "Håndtering"
#: ../js/ui/status/power.js:85
msgid "Power Settings"
@@ -1070,22 +1083,22 @@ msgstr "Lydstyrke"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:331
#, c-format
msgid "%s is online."
msgstr "%s er online."
#: ../js/ui/telepathyClient.js:340
#: ../js/ui/telepathyClient.js:336
#, c-format
msgid "%s is offline."
msgstr "%s er offline."
#: ../js/ui/telepathyClient.js:343
#: ../js/ui/telepathyClient.js:339
#, c-format
msgid "%s is away."
msgstr "%s er ikke til stede."
#: ../js/ui/telepathyClient.js:346
#: ../js/ui/telepathyClient.js:342
#, c-format
msgid "%s is busy."
msgstr "%s er optaget."
@@ -1093,7 +1106,7 @@ msgstr "%s er optaget."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:482
#: ../js/ui/telepathyClient.js:473
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Sendt kl. %X i %As"
@@ -1147,9 +1160,9 @@ msgid "Print version"
msgstr "Udskriv version"
#: ../src/shell-app.c:454
#, c-format
#, fuzzy, c-format
msgid "Failed to launch '%s'"
msgstr "Kunne ikke re \"%s\""
msgstr "Kunne ikke afmontere \"%s\""
#: ../src/shell-global.c:1395
msgid "Less than a minute ago"
@@ -1185,11 +1198,11 @@ msgstr[1] "%d uger siden"
#: ../src/shell-mobile-providers.c:80
msgid "United Kingdom"
msgstr "Storbritannien"
msgstr ""
#: ../src/shell-mobile-providers.c:526
msgid "Default"
msgstr "Standard"
msgstr ""
#: ../src/shell-polkit-authentication-agent.c:334
msgid "Authentication dialog was dismissed by the user"

View File

@@ -5,7 +5,7 @@
# workspace - Arbeitsfläche
#
# Hendrik Brandt <heb@gnome-de.org>, 2009.
# Hendrik Richter <hendrikr@gnome.org>, 2009, 2010, 2011.
# Hendrik Richter <hendrikr@gnome.org>, 2009.
# Mario Blättermann <mariobl@gnome.org>, 2009, 2010, 2011.
# Mario Klug <mario@klug.me>, 2010.
# Jakob Kramer <jakob.kramer@gmx.de>, 2010.
@@ -17,9 +17,9 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-03-27 14:43+0000\n"
"PO-Revision-Date: 2011-04-22 14:23+0200\n"
"Last-Translator: Hendrik Richter <hendrikr@gnome.org>\n"
"POT-Creation-Date: 2011-03-27 05:13+0000\n"
"PO-Revision-Date: 2011-03-27 15:45+0200\n"
"Last-Translator: Christian Kirbach <Christian.Kirbach@googlemail.com>\n"
"Language-Team: Deutsch <gnome-de@gnome.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -241,7 +241,7 @@ msgstr "%s wurde aus Ihren Favoriten entfernt"
#: ../js/ui/calendar.js:66
msgctxt "event list time"
msgid "All Day"
msgstr "Ganztägig"
msgstr "Ganztgig"
#. Translators: Shown in calendar event list, if 24h format
#: ../js/ui/calendar.js:71
@@ -249,15 +249,11 @@ msgctxt "event list time"
msgid "%H:%M"
msgstr "%H:%M"
#
# Da wir keine AM/PM-Suffixe haben, die Zeit von Terminen aber eindeutig
# angezeigt werden soll, wird im Kalender stets das 24h-Format verwendet.
#
#. Transators: Shown in calendar event list, if 12h format
#: ../js/ui/calendar.js:78
msgctxt "event list time"
msgid "%l:%M %p"
msgstr "%H:%M"
msgstr "%l:%M"
#. Translators: Calendar grid abbreviation for Sunday.
#. *
@@ -383,7 +379,7 @@ msgstr "Diese Woche"
#: ../js/ui/calendar.js:754
msgid "Next week"
msgstr "Nächste Woche"
msgstr "Nchste Woche"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1000
msgid "Remove"
@@ -395,7 +391,7 @@ msgstr "Einstellungen für Datum und Uhrzeit"
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "Kalender öffnen"
msgstr "Kalender ffnen"
#. Translators: This is the time format with date used
#. in 24-hour mode.
@@ -421,21 +417,21 @@ msgstr "%a %R"
#. for AM/PM.
#: ../js/ui/dateMenu.js:177
msgid "%a %b %e, %l:%M:%S %p"
msgstr "%a, %e. %b, %l:%M:%S"
msgstr "%a, %e. %b, %H:%M:%S"
#: ../js/ui/dateMenu.js:178
msgid "%a %b %e, %l:%M %p"
msgstr "%a, %e. %b, %l:%M"
msgstr "%a, %e. %b, %H:%M"
#. Translators: This is a time format without date used
#. for AM/PM.
#: ../js/ui/dateMenu.js:182
msgid "%a %l:%M:%S %p"
msgstr "%a %l:%M:%S"
msgstr "%a %H:%M:%S"
#: ../js/ui/dateMenu.js:183
msgid "%a %l:%M %p"
msgstr "%a %l:%M"
msgstr "%a %H:%M"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
@@ -799,7 +795,7 @@ msgstr "Legitimierungsanfrage von %s"
#: ../js/ui/status/bluetooth.js:374
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Gerät »%s« bittet um Zugriff auf den Dienst »%s«"
msgstr "Gert »%s« bittet um Zugriff auf den Dienst »%s«"
#: ../js/ui/status/bluetooth.js:376
msgid "Always grant access"
@@ -821,7 +817,7 @@ msgstr "Koppelungsbestätigung für %s"
#: ../js/ui/status/bluetooth.js:414 ../js/ui/status/bluetooth.js:448
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Gerät »%s« möchte mit diesem Rechner gekoppelt werden"
msgstr "Gert »%s« mchte mit diesem Rechner gekoppelt werden"
#: ../js/ui/status/bluetooth.js:415
#, c-format
@@ -840,11 +836,11 @@ msgstr "Stimmt nicht überein"
#: ../js/ui/status/bluetooth.js:441
#, c-format
msgid "Pairing request for %s"
msgstr "Koppelungsanfrage für %s"
msgstr "Koppelungsanfrage fr %s"
#: ../js/ui/status/bluetooth.js:449
msgid "Please enter the PIN mentioned on the device."
msgstr "Bitte geben Sie die auf dem Gerät angezeigte PIN ein."
msgstr "Bitte geben Sie die auf dem Gert angezeigte PIN ein."
#: ../js/ui/status/bluetooth.js:465
msgid "OK"
@@ -1070,7 +1066,7 @@ msgstr "Mobiltelefon"
#: ../js/ui/status/power.js:244
msgid "Media player"
msgstr "Medienwiedergabegerät"
msgstr "Medienwiedergabegert"
#: ../js/ui/status/power.js:246
msgid "Tablet"
@@ -1086,7 +1082,7 @@ msgstr "Unbekannt"
#: ../js/ui/status/volume.js:45
msgid "Volume"
msgstr "Lautstärke"
msgstr "Lautstrke"
#: ../js/ui/status/volume.js:58
msgid "Microphone"
@@ -1252,7 +1248,7 @@ msgstr "%1$s: %2$s"
#~ msgstr "Ausschalten des Systems."
#~ msgid "Confirm"
#~ msgstr "Bestätigen"
#~ msgstr "Besttigen"
#~| msgid "Cancel"
#~ msgid "Panel"

View File

@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-03-30 14:52+0100\n"
"PO-Revision-Date: 2011-03-30 14:55+0100\n"
"POT-Creation-Date: 2011-03-08 19:51+0000\n"
"PO-Revision-Date: 2011-03-08 19:50+0100\n"
"Last-Translator: Bruce Cowan <bruce@bcowan.me.uk>\n"
"Language-Team: British English <en@li.org>\n"
"Language: en_GB\n"
@@ -169,43 +169,47 @@ msgstr "Whether to collect statistics about application usage"
msgid "disabled OpenSearch providers"
msgstr "disabled OpenSearch providers"
#: ../js/misc/util.js:71
#: ../js/misc/util.js:86
msgid "Command not found"
msgstr "Command not found"
#. Replace "Error invoking GLib.shell_parse_argv: " with
#. something nicer
#: ../js/misc/util.js:98
#: ../js/misc/util.js:113
msgid "Could not parse command:"
msgstr "Could not parse command:"
#: ../js/misc/util.js:106
#: ../js/misc/util.js:135
msgid "No such application"
msgstr "No such application"
#: ../js/misc/util.js:148
#, c-format
msgid "Execution of '%s' failed:"
msgstr "Execution of '%s' failed:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:230
#: ../js/ui/appDisplay.js:226
msgid "All"
msgstr "All"
#: ../js/ui/appDisplay.js:328
#: ../js/ui/appDisplay.js:324
msgid "APPLICATIONS"
msgstr "APPLICATIONS"
#: ../js/ui/appDisplay.js:354
#: ../js/ui/appDisplay.js:350
msgid "SETTINGS"
msgstr "SETTINGS"
#: ../js/ui/appDisplay.js:625
#: ../js/ui/appDisplay.js:612
msgid "New Window"
msgstr "New Window"
#: ../js/ui/appDisplay.js:628
#: ../js/ui/appDisplay.js:615
msgid "Remove from Favorites"
msgstr "Remove from Favourites"
#: ../js/ui/appDisplay.js:629
#: ../js/ui/appDisplay.js:616
msgid "Add to Favorites"
msgstr "Add to Favourites"
@@ -338,13 +342,13 @@ msgid "Nothing Scheduled"
msgstr "Nothing Scheduled"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:490
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:493
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d %B, %Y"
@@ -365,7 +369,7 @@ msgstr "This week"
msgid "Next week"
msgstr "Next week"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1007
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:933
msgid "Remove"
msgstr "Remove"
@@ -420,7 +424,7 @@ msgstr "%a %l:%M %p"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
#.
#: ../js/ui/dateMenu.js:194
#: ../js/ui/dateMenu.js:209
msgid "%A %B %e, %Y"
msgstr "%A %e %B, %Y"
@@ -433,7 +437,7 @@ msgstr "RECENT ITEMS"
msgid "Log Out %s"
msgstr "Log Out %s"
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:70
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:69
msgid "Log Out"
msgstr "Log Out"
@@ -455,43 +459,45 @@ msgstr "You will be logged out automatically in %d seconds."
msgid "Logging out of the system."
msgstr "Logging out of the system."
#: ../js/ui/endSessionDialog.js:75 ../js/ui/endSessionDialog.js:82
msgid "Power Off"
msgstr "Power Off"
#: ../js/ui/endSessionDialog.js:74 ../js/ui/endSessionDialog.js:78
msgid "Shut Down"
msgstr "Shut Down"
#: ../js/ui/endSessionDialog.js:75
msgid "Click Shut Down to quit these applications and shut down the system."
msgstr "Click Shut Down to quit these applications and shut down the system."
#: ../js/ui/endSessionDialog.js:76
msgid "Click Power Off to quit these applications and power off the system."
msgstr "Click Power Off to quit these applications and power off the system."
#, c-format
msgid "The system will shut down automatically in %d seconds."
msgstr "The system will shut down automatically in %d seconds."
#: ../js/ui/endSessionDialog.js:77
#, c-format
msgid "The system will power off automatically in %d seconds."
msgstr "The system will power off automatically in %d seconds."
msgid "Shutting down the system."
msgstr "Shutting down the system."
#: ../js/ui/endSessionDialog.js:78
msgid "Powering off the system."
msgstr "Powering off the system."
#: ../js/ui/endSessionDialog.js:80 ../js/ui/endSessionDialog.js:88
#: ../js/ui/endSessionDialog.js:93
#: ../js/ui/endSessionDialog.js:84 ../js/ui/endSessionDialog.js:88
msgid "Restart"
msgstr "Restart"
#: ../js/ui/endSessionDialog.js:89
#: ../js/ui/endSessionDialog.js:85
msgid "Click Restart to quit these applications and restart the system."
msgstr "Click Restart to quit these applications and restart the system."
#: ../js/ui/endSessionDialog.js:90
#: ../js/ui/endSessionDialog.js:86
#, c-format
msgid "The system will restart automatically in %d seconds."
msgstr "The system will restart automatically in %d seconds."
#: ../js/ui/endSessionDialog.js:91
#: ../js/ui/endSessionDialog.js:87
msgid "Restarting the system."
msgstr "Restarting the system."
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/endSessionDialog.js:395
msgid "Confirm"
msgstr "Confirm"
#: ../js/ui/endSessionDialog.js:400 ../js/ui/status/bluetooth.js:470
msgid "Cancel"
msgstr "Cancel"
@@ -505,7 +511,7 @@ msgstr "Enabled"
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:627 ../src/gvc/gvc-mixer-control.c:1091
#: ../js/ui/lookingGlass.js:627 ../src/gvc/gvc-mixer-control.c:1087
msgid "Disabled"
msgstr "Disabled"
@@ -525,47 +531,47 @@ msgstr "View Source"
msgid "Web Page"
msgstr "Web Page"
#: ../js/ui/messageTray.js:1000
#: ../js/ui/messageTray.js:926
msgid "Open"
msgstr "Open"
#: ../js/ui/messageTray.js:2164
#: ../js/ui/messageTray.js:1963
msgid "System Information"
msgstr "System Information"
#: ../js/ui/overview.js:91
#: ../js/ui/overview.js:88
msgid "Undo"
msgstr "Undo"
#: ../js/ui/overview.js:186
#: ../js/ui/overview.js:183
msgid "Windows"
msgstr "Windows"
#: ../js/ui/overview.js:189
#: ../js/ui/overview.js:186
msgid "Applications"
msgstr "Applications"
#. Translators: this is the name of the dock/favorites area on
#. the left of the overview
#: ../js/ui/overview.js:205
#: ../js/ui/overview.js:202
msgid "Dash"
msgstr "Dash"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:524
#: ../js/ui/panel.js:532
#, c-format
msgid "Quit %s"
msgstr "Quit %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:902
#: ../js/ui/panel.js:893
msgid "Activities"
msgstr "Activities"
#: ../js/ui/panel.js:1003
msgid "Top Bar"
msgstr "Top Bar"
#: ../js/ui/panel.js:994
msgid "Panel"
msgstr "Panel"
#: ../js/ui/placeDisplay.js:122
#, c-format
@@ -580,89 +586,64 @@ msgstr "Retry"
msgid "Connect to..."
msgstr "Connect to…"
#: ../js/ui/placeDisplay.js:380
#: ../js/ui/placeDisplay.js:409
msgid "PLACES & DEVICES"
msgstr "PLACES & DEVICES"
#: ../js/ui/polkitAuthenticationAgent.js:74
msgid "Authentication Required"
msgstr "Authentication Required"
#: ../js/ui/polkitAuthenticationAgent.js:108
msgid "Administrator"
msgstr "Administrator"
#: ../js/ui/polkitAuthenticationAgent.js:176
msgid "Authenticate"
msgstr "Authenticate"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
msgid "Sorry, that didn't work. Please try again."
msgstr "Sorry, that didn't work. Please try again."
#: ../js/ui/polkitAuthenticationAgent.js:276
msgid "Password:"
msgstr "Password:"
#. Translators: this MUST be either "toggle-switch-us"
#. (for toggle switches containing the English words
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:679
#: ../js/ui/popupMenu.js:618
msgid "toggle-switch-us"
msgstr "toggle-switch-us"
#: ../js/ui/runDialog.js:205
#: ../js/ui/runDialog.js:201
msgid "Please enter a command:"
msgstr "Please enter a command:"
#: ../js/ui/searchDisplay.js:310
#: ../js/ui/searchDisplay.js:283
msgid "Searching..."
msgstr "Searching…"
#: ../js/ui/searchDisplay.js:324
#: ../js/ui/searchDisplay.js:297
msgid "No matching results."
msgstr "No matching results."
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:163
#: ../js/ui/statusMenu.js:228
#: ../js/ui/statusMenu.js:102 ../js/ui/statusMenu.js:166
msgid "Power Off..."
msgstr "Power Off…"
#: ../js/ui/statusMenu.js:163 ../js/ui/statusMenu.js:227
#: ../js/ui/statusMenu.js:104 ../js/ui/statusMenu.js:165
msgid "Suspend"
msgstr "Suspend"
#: ../js/ui/statusMenu.js:184
#: ../js/ui/statusMenu.js:125
msgid "Available"
msgstr "Available"
#: ../js/ui/statusMenu.js:189
#: ../js/ui/statusMenu.js:130
msgid "Busy"
msgstr "Busy"
#: ../js/ui/statusMenu.js:197
#: ../js/ui/statusMenu.js:138
msgid "My Account"
msgstr "My Account"
#: ../js/ui/statusMenu.js:201
#: ../js/ui/statusMenu.js:142
msgid "System Settings"
msgstr "System Settings"
#: ../js/ui/statusMenu.js:208
#: ../js/ui/statusMenu.js:149
msgid "Lock Screen"
msgstr "Lock Screen"
#: ../js/ui/statusMenu.js:213
#: ../js/ui/statusMenu.js:153
msgid "Switch User"
msgstr "Switch User"
#: ../js/ui/statusMenu.js:218
#: ../js/ui/statusMenu.js:158
msgid "Log Out..."
msgstr "Log Out…"
@@ -670,12 +651,14 @@ msgstr "Log Out…"
msgid "Zoom"
msgstr "Zoom"
#. let screenReader = this._buildItem(_("Screen Reader"), APPLICATIONS_SCHEMA,
#. 'screen-reader-enabled');
#. this.menu.addMenuItem(screenReader);
#. let screenKeyboard = this._buildItem(_("Screen Keyboard"), APPLICATIONS_SCHEMA,
#. 'screen-keyboard-enabled');
#. this.menu.addMenuItem(screenKeyboard);
#: ../js/ui/status/accessibility.js:69
msgid "Screen Reader"
msgstr "Screen Reader"
#: ../js/ui/status/accessibility.js:73
msgid "Screen Keyboard"
msgstr "Screen Keyboard"
#: ../js/ui/status/accessibility.js:77
msgid "Visual Alerts"
msgstr "Visual Alerts"
@@ -700,17 +683,17 @@ msgstr "Mouse Keys"
msgid "Universal Access Settings"
msgstr "Universal Access Settings"
#: ../js/ui/status/accessibility.js:146
#: ../js/ui/status/accessibility.js:145
msgid "High Contrast"
msgstr "High Contrast"
#: ../js/ui/status/accessibility.js:183
#: ../js/ui/status/accessibility.js:182
msgid "Large Text"
msgstr "Large Text"
#: ../js/ui/status/bluetooth.js:42 ../js/ui/status/bluetooth.js:237
#: ../js/ui/status/bluetooth.js:333 ../js/ui/status/bluetooth.js:367
#: ../js/ui/status/bluetooth.js:407 ../js/ui/status/bluetooth.js:440
#: ../js/ui/status/bluetooth.js:42 ../js/ui/status/bluetooth.js:241
#: ../js/ui/status/bluetooth.js:337 ../js/ui/status/bluetooth.js:371
#: ../js/ui/status/bluetooth.js:411 ../js/ui/status/bluetooth.js:444
msgid "Bluetooth"
msgstr "Bluetooth"
@@ -730,94 +713,94 @@ msgstr "Setup a New Device…"
msgid "Bluetooth Settings"
msgstr "Bluetooth Settings"
#: ../js/ui/status/bluetooth.js:188
#: ../js/ui/status/bluetooth.js:192
msgid "Connection"
msgstr "Connection"
#: ../js/ui/status/bluetooth.js:224
#: ../js/ui/status/bluetooth.js:228
msgid "Send Files..."
msgstr "Send Files…"
#: ../js/ui/status/bluetooth.js:229
#: ../js/ui/status/bluetooth.js:233
msgid "Browse Files..."
msgstr "Browse Files…"
#: ../js/ui/status/bluetooth.js:238
#: ../js/ui/status/bluetooth.js:242
msgid "Error browsing device"
msgstr "Error browsing device"
#: ../js/ui/status/bluetooth.js:239
#: ../js/ui/status/bluetooth.js:243
#, c-format
msgid "The requested device cannot be browsed, error is '%s'"
msgstr "The requested device cannot be browsed, error is '%s'"
#: ../js/ui/status/bluetooth.js:247
#: ../js/ui/status/bluetooth.js:251
msgid "Keyboard Settings"
msgstr "Keyboard Settings"
#: ../js/ui/status/bluetooth.js:252
#: ../js/ui/status/bluetooth.js:256
msgid "Mouse Settings"
msgstr "Mouse Settings"
#: ../js/ui/status/bluetooth.js:259 ../js/ui/status/volume.js:66
#: ../js/ui/status/bluetooth.js:263 ../js/ui/status/volume.js:65
msgid "Sound Settings"
msgstr "Sound Settings"
#: ../js/ui/status/bluetooth.js:368
#: ../js/ui/status/bluetooth.js:372
#, c-format
msgid "Authorization request from %s"
msgstr "Authorisation request from %s"
#: ../js/ui/status/bluetooth.js:374
#: ../js/ui/status/bluetooth.js:378
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Device %s wants access to the service '%s'"
#: ../js/ui/status/bluetooth.js:376
#: ../js/ui/status/bluetooth.js:380
msgid "Always grant access"
msgstr "Always grant access"
#: ../js/ui/status/bluetooth.js:377
#: ../js/ui/status/bluetooth.js:381
msgid "Grant this time only"
msgstr "Grant this time only"
#: ../js/ui/status/bluetooth.js:378
#: ../js/ui/status/bluetooth.js:382
msgid "Reject"
msgstr "Reject"
#: ../js/ui/status/bluetooth.js:408
#: ../js/ui/status/bluetooth.js:412
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Pairing confirmation for %s"
#: ../js/ui/status/bluetooth.js:414 ../js/ui/status/bluetooth.js:448
#: ../js/ui/status/bluetooth.js:418 ../js/ui/status/bluetooth.js:452
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Device %s wants to pair with this computer"
#: ../js/ui/status/bluetooth.js:415
#: ../js/ui/status/bluetooth.js:419
#, c-format
msgid "Please confirm whether the PIN '%s' matches the one on the device."
msgstr "Please confirm whether the PIN '%s' matches the one on the device."
#: ../js/ui/status/bluetooth.js:417
#: ../js/ui/status/bluetooth.js:421
msgid "Matches"
msgstr "Matches"
#: ../js/ui/status/bluetooth.js:418
#: ../js/ui/status/bluetooth.js:422
msgid "Does not match"
msgstr "Does not match"
#: ../js/ui/status/bluetooth.js:441
#: ../js/ui/status/bluetooth.js:445
#, c-format
msgid "Pairing request for %s"
msgstr "Pairing request for %s"
#: ../js/ui/status/bluetooth.js:449
#: ../js/ui/status/bluetooth.js:453
msgid "Please enter the PIN mentioned on the device."
msgstr "Please enter the PIN mentioned on the device."
#: ../js/ui/status/bluetooth.js:465
#: ../js/ui/status/bluetooth.js:469
msgid "OK"
msgstr "OK"
@@ -829,153 +812,17 @@ msgstr "Show Keyboard Layout…"
msgid "Localization Settings"
msgstr "Localisation Settings"
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1454
msgid "<unknown>"
msgstr "<unknown>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:311
msgid "disabled"
msgstr "disabled"
#: ../js/ui/status/network.js:494
msgid "connecting..."
msgstr "connecting…"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:497
msgid "authentication required"
msgstr "authentication required"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:507
msgid "firmware missing"
msgstr "firmware missing"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:514
msgid "cable unplugged"
msgstr "cable unplugged"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:519
msgid "unavailable"
msgstr "unavailable"
#: ../js/ui/status/network.js:521
msgid "connection failed"
msgstr "connection failed"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:602 ../js/ui/status/network.js:1402
msgid "Connected (private)"
msgstr "Connected (private)"
#: ../js/ui/status/network.js:683
msgid "Auto Ethernet"
msgstr "Auto Ethernet"
#: ../js/ui/status/network.js:758
msgid "Auto broadband"
msgstr "Auto broadband"
#: ../js/ui/status/network.js:761
msgid "Auto dial-up"
msgstr "Auto dial-up"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:904 ../js/ui/status/network.js:1414
#, c-format
msgid "Auto %s"
msgstr "Auto %s"
#: ../js/ui/status/network.js:906
msgid "Auto bluetooth"
msgstr "Auto bluetooth"
#: ../js/ui/status/network.js:1416
msgid "Auto wireless"
msgstr "Auto wireless"
#: ../js/ui/status/network.js:1474
msgid "More..."
msgstr "More…"
#: ../js/ui/status/network.js:1497
msgid "Enable networking"
msgstr "Enable networking"
#: ../js/ui/status/network.js:1509
msgid "Wired"
msgstr "Wired"
#: ../js/ui/status/network.js:1520
msgid "Wireless"
msgstr "Wireless"
#: ../js/ui/status/network.js:1530
msgid "Mobile broadband"
msgstr "Mobile broadband"
#: ../js/ui/status/network.js:1540
msgid "VPN Connections"
msgstr "VPN Connections"
#: ../js/ui/status/network.js:1549
msgid "Network Settings"
msgstr "Network Settings"
#: ../js/ui/status/network.js:1844
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "You're now connected to mobile broadband connection '%s'"
#: ../js/ui/status/network.js:1848
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "You're now connected to wireless network '%s'"
#: ../js/ui/status/network.js:1852
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "You're now connected to wired network '%s'"
#: ../js/ui/status/network.js:1856
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "You're now connected to VPN network '%s'"
#: ../js/ui/status/network.js:1861
#, c-format
msgid "You're now connected to '%s'"
msgstr "You're now connected to '%s'"
#: ../js/ui/status/network.js:1869
msgid "Connection established"
msgstr "Connection established"
#: ../js/ui/status/network.js:1991
msgid "Networking is disabled"
msgstr "Networking is disabled"
#: ../js/ui/status/network.js:2116
msgid "Network Manager"
msgstr "Network Manager"
#: ../js/ui/status/power.js:85
msgid "Power Settings"
msgstr "Power Settings"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:111
#: ../js/ui/status/power.js:110
msgid "Estimating..."
msgstr "Estimating…"
#: ../js/ui/status/power.js:118
#: ../js/ui/status/power.js:117
#, c-format
msgid "%d hour remaining"
msgid_plural "%d hours remaining"
@@ -983,102 +830,102 @@ msgstr[0] "%d hour remaining"
msgstr[1] "%d hours remaining"
#. TRANSLATORS: this is a time string, as in "%d hours %d minutes remaining"
#: ../js/ui/status/power.js:121
#: ../js/ui/status/power.js:120
#, c-format
msgid "%d %s %d %s remaining"
msgstr "%d %s %d %s remaining"
#: ../js/ui/status/power.js:123
#: ../js/ui/status/power.js:122
msgid "hour"
msgid_plural "hours"
msgstr[0] "hour"
msgstr[1] "hours"
#: ../js/ui/status/power.js:123
#: ../js/ui/status/power.js:122
msgid "minute"
msgid_plural "minutes"
msgstr[0] "minute"
msgstr[1] "minutes"
#: ../js/ui/status/power.js:126
#: ../js/ui/status/power.js:125
#, c-format
msgid "%d minute remaining"
msgid_plural "%d minutes remaining"
msgstr[0] "%d minute remaining"
msgstr[1] "%d minutes remaining"
#: ../js/ui/status/power.js:228
#: ../js/ui/status/power.js:227
msgid "AC adapter"
msgstr "AC adapter"
#: ../js/ui/status/power.js:230
#: ../js/ui/status/power.js:229
msgid "Laptop battery"
msgstr "Laptop battery"
#: ../js/ui/status/power.js:232
#: ../js/ui/status/power.js:231
msgid "UPS"
msgstr "UPS"
#: ../js/ui/status/power.js:234
#: ../js/ui/status/power.js:233
msgid "Monitor"
msgstr "Monitor"
#: ../js/ui/status/power.js:236
#: ../js/ui/status/power.js:235
msgid "Mouse"
msgstr "Mouse"
#: ../js/ui/status/power.js:238
#: ../js/ui/status/power.js:237
msgid "Keyboard"
msgstr "Keyboard"
#: ../js/ui/status/power.js:240
#: ../js/ui/status/power.js:239
msgid "PDA"
msgstr "PDA"
#: ../js/ui/status/power.js:242
#: ../js/ui/status/power.js:241
msgid "Cell phone"
msgstr "Mobile phone"
#: ../js/ui/status/power.js:244
#: ../js/ui/status/power.js:243
msgid "Media player"
msgstr "Media player"
#: ../js/ui/status/power.js:246
#: ../js/ui/status/power.js:245
msgid "Tablet"
msgstr "Tablet"
#: ../js/ui/status/power.js:248
#: ../js/ui/status/power.js:247
msgid "Computer"
msgstr "Computer"
#: ../js/ui/status/power.js:250 ../src/shell-app-system.c:1088
#: ../js/ui/status/power.js:249 ../src/shell-app-system.c:1013
msgid "Unknown"
msgstr "Unknown"
#: ../js/ui/status/volume.js:45
#: ../js/ui/status/volume.js:44
msgid "Volume"
msgstr "Volume"
#: ../js/ui/status/volume.js:58
#: ../js/ui/status/volume.js:57
msgid "Microphone"
msgstr "Microphone"
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:239
#, c-format
msgid "%s is online."
msgstr "%s is online."
#: ../js/ui/telepathyClient.js:340
#: ../js/ui/telepathyClient.js:244
#, c-format
msgid "%s is offline."
msgstr "%s is offline."
#: ../js/ui/telepathyClient.js:343
#: ../js/ui/telepathyClient.js:247
#, c-format
msgid "%s is away."
msgstr "%s is away."
#: ../js/ui/telepathyClient.js:346
#: ../js/ui/telepathyClient.js:250
#, c-format
msgid "%s is busy."
msgstr "%s is busy."
@@ -1086,7 +933,7 @@ msgstr "%s is busy."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:482
#: ../js/ui/telepathyClient.js:348
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Sent at %X on %A"
@@ -1095,11 +942,11 @@ msgstr "Sent at %X on %A"
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters.
#: ../js/ui/viewSelector.js:122
#: ../js/ui/viewSelector.js:117
msgid "Type to search..."
msgstr "Type to search…"
#: ../js/ui/viewSelector.js:142 ../src/shell-util.c:250
#: ../js/ui/viewSelector.js:137 ../src/shell-util.c:250
msgid "Search"
msgstr "Search"
@@ -1115,7 +962,7 @@ msgstr "'%s' is ready"
#. translators:
#. * The number of sound outputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1098
#: ../src/gvc/gvc-mixer-control.c:1094
#, c-format
msgid "%u Output"
msgid_plural "%u Outputs"
@@ -1124,66 +971,53 @@ msgstr[1] "%u Outputs"
#. translators:
#. * The number of sound inputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1108
#: ../src/gvc/gvc-mixer-control.c:1104
#, c-format
msgid "%u Input"
msgid_plural "%u Inputs"
msgstr[0] "%u Input"
msgstr[1] "%u Inputs"
#: ../src/gvc/gvc-mixer-control.c:1406
#: ../src/gvc/gvc-mixer-control.c:1402
msgid "System Sounds"
msgstr "System Sounds"
#: ../src/main.c:446
#: ../src/main.c:395
msgid "Print version"
msgstr "Print version"
#: ../src/shell-app.c:454
#, c-format
msgid "Failed to launch '%s'"
msgstr "Failed to launch '%s'"
#: ../src/shell-global.c:1395
#: ../src/shell-global.c:1308
msgid "Less than a minute ago"
msgstr "Less than a minute ago"
#: ../src/shell-global.c:1399
#: ../src/shell-global.c:1312
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
msgstr[0] "%d minute ago"
msgstr[1] "%d minutes ago"
#: ../src/shell-global.c:1404
#: ../src/shell-global.c:1317
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
msgstr[0] "%d hour ago"
msgstr[1] "%d hours ago"
#: ../src/shell-global.c:1409
#: ../src/shell-global.c:1322
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "%d day ago"
msgstr[1] "%d days ago"
#: ../src/shell-global.c:1414
#: ../src/shell-global.c:1327
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
msgstr[0] "%d week ago"
msgstr[1] "%d weeks ago"
#: ../src/shell-mobile-providers.c:80
msgid "United Kingdom"
msgstr "United Kingdom"
#: ../src/shell-mobile-providers.c:526
msgid "Default"
msgstr "Default"
#: ../src/shell-polkit-authentication-agent.c:334
msgid "Authentication dialog was dismissed by the user"
msgstr "Authentication dialogue was dismissed by the user"
@@ -1208,34 +1042,6 @@ msgstr "File System"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "No such application"
#~ msgstr "No such application"
#~ msgid "Shut Down"
#~ msgstr "Shut Down"
#~ msgid "Click Shut Down to quit these applications and shut down the system."
#~ msgstr ""
#~ "Click Shut Down to quit these applications and shut down the system."
#~ msgid "The system will shut down automatically in %d seconds."
#~ msgstr "The system will shut down automatically in %d seconds."
#~ msgid "Shutting down the system."
#~ msgstr "Shutting down the system."
#~ msgid "Confirm"
#~ msgstr "Confirm"
#~ msgid "Panel"
#~ msgstr "Panel"
#~ msgid "Screen Reader"
#~ msgstr "Screen Reader"
#~ msgid "Screen Keyboard"
#~ msgstr "Screen Keyboard"
#~ msgid "Clock"
#~ msgstr "Clock"

1222
po/eo.po

File diff suppressed because it is too large Load Diff

287
po/es.po
View File

@@ -2,17 +2,17 @@
# Copyright (C) 2009 gnome-shell's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell package.
# Benjamín Valero Espinosa <benjavalero@gmail.com>, 2011.
# Jorge González <jorgegonz@svn.gnome.org>, 2009, 2010, 2011.
# Daniel Mustieles <daniel.mustieles@gmail.com>, 2010, 2011.
# Jorge González <jorgegonz@svn.gnome.org>, 2009, 2010, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell.master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-04-28 21:32+0000\n"
"PO-Revision-Date: 2011-04-29 11:09+0200\n"
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
"POT-Creation-Date: 2011-03-25 20:20+0000\n"
"PO-Revision-Date: 2011-03-25 21:35+0100\n"
"Last-Translator: Jorge González <jorgegonz@svn.gnome.org>\n"
"Language-Team: Español <gnome-es-list@gnome.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -96,16 +96,16 @@ msgid ""
"at the optimal thread count on the system."
msgstr ""
"Establece la tubería GStreamer usada para codificar grabaciones. Sigue la "
"sintaxis usada para gst-launch. La tubería debería tener un sumidero («sink») "
"de ensamblaje/sesensamblaje donde el vídeo que se está grabando se graba. "
"Generalmente tendrá un origen de ensamblado/desensamblado; la salida de ese "
"punto se escibirá en el archivo de salida. No obstante la tubería también "
"puede tomar parte en su propia salida; esto se puede usar para enviar la "
"salida a un servidor «icecast» a través de shout2send o similar. Cuando no "
"está establecido o lo está a un valor vacío, se usará la tubería "
"predeterminada. Actualmente es «videorate ! vp8enc quality=10 speed=2 threads="
"%T ! queue ! webmmux» y greba en WEBM usando el códec VP8. Se usa %T como "
"suposición para el número de hilos óptimos en el sistema."
"sintaxis usada para gst-launch. La tubería debería tener un sumidero "
"(«sink») de ensamblaje/sesensamblaje donde el vídeo que se está grabando se "
"graba. Generalmente tendrá un origen de ensamblado/desensamblado; la salida "
"de ese punto se escibirá en el archivo de salida. No obstante la tubería "
"también puede tomar parte en su propia salida; esto se puede usar para "
"enviar la salida a un servidor «icecast» a través de shout2send o similar. "
"Cuando no está establecido o lo está a un valor vacío, se usará la tubería "
"predeterminada. Actualmente es «videorate ! vp8enc quality=10 speed=2 "
"threads=%T ! queue ! webmmux» y greba en WEBM usando el códec VP8. Se usa %T "
"como suposición para el número de hilos óptimos en el sistema."
#: ../data/org.gnome.shell.gschema.xml.in.h:14
msgid "Show date in clock"
@@ -190,27 +190,27 @@ msgid "Execution of '%s' failed:"
msgstr "Falló la ejecución de «%s»:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:260
#: ../js/ui/appDisplay.js:230
msgid "All"
msgstr "Todas"
#: ../js/ui/appDisplay.js:359
#: ../js/ui/appDisplay.js:328
msgid "APPLICATIONS"
msgstr "APLICACIONES"
#: ../js/ui/appDisplay.js:385
#: ../js/ui/appDisplay.js:354
msgid "SETTINGS"
msgstr "CONFIGURACIÓN"
#: ../js/ui/appDisplay.js:658
#: ../js/ui/appDisplay.js:625
msgid "New Window"
msgstr "Ventana nueva"
#: ../js/ui/appDisplay.js:661
#: ../js/ui/appDisplay.js:628
msgid "Remove from Favorites"
msgstr "Quitar de los favoritos"
#: ../js/ui/appDisplay.js:662
#: ../js/ui/appDisplay.js:629
msgid "Add to Favorites"
msgstr "Añadir a los favoritos"
@@ -343,13 +343,13 @@ msgid "Nothing Scheduled"
msgstr "Nada programado"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:487
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:490
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d de %B de %Y"
@@ -370,7 +370,7 @@ msgstr "Esta semana"
msgid "Next week"
msgstr "La semana que viene"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1037
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:994
msgid "Remove"
msgstr "Quitar"
@@ -498,8 +498,8 @@ msgstr "El sistema se reiniciará automáticamente en %d segundos."
msgid "Restarting the system."
msgstr "Reiniciando el sistema."
#: ../js/ui/endSessionDialog.js:413 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:491
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Cancelar"
@@ -533,11 +533,11 @@ msgstr "Ver fuente"
msgid "Web Page"
msgstr "Página web"
#: ../js/ui/messageTray.js:1030
#: ../js/ui/messageTray.js:987
msgid "Open"
msgstr "Abrir"
#: ../js/ui/messageTray.js:2194
#: ../js/ui/messageTray.js:2145
msgid "System Information"
msgstr "Información del sistema"
@@ -557,21 +557,21 @@ msgstr "Aplicaciones"
#. the left of the overview
#: ../js/ui/overview.js:205
msgid "Dash"
msgstr "Tablero"
msgstr "Plano"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:533
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Salir de %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:913
#: ../js/ui/panel.js:878
msgid "Activities"
msgstr "Actividades"
#: ../js/ui/panel.js:1015
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "Barra superior"
@@ -604,15 +604,11 @@ msgstr "Administrador"
msgid "Authenticate"
msgstr "Autenticar"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
#: ../js/ui/polkitAuthenticationAgent.js:260
msgid "Sorry, that didn't work. Please try again."
msgstr "Inténtelo de nuevo,"
#: ../js/ui/polkitAuthenticationAgent.js:276
#: ../js/ui/polkitAuthenticationAgent.js:272
msgid "Password:"
msgstr "Contraseña:"
@@ -629,11 +625,11 @@ msgstr "toggle-switch-intl"
msgid "Please enter a command:"
msgstr "Introduzca un comando:"
#: ../js/ui/searchDisplay.js:313
#: ../js/ui/searchDisplay.js:310
msgid "Searching..."
msgstr "Buscando…"
#: ../js/ui/searchDisplay.js:327
#: ../js/ui/searchDisplay.js:324
msgid "No matching results."
msgstr "No se encontró ningún resultado coincidente."
@@ -716,9 +712,9 @@ msgstr "Contraste alto"
msgid "Large Text"
msgstr "Texto grande"
#: ../js/ui/status/bluetooth.js:42 ../js/ui/status/bluetooth.js:264
#: ../js/ui/status/bluetooth.js:358 ../js/ui/status/bluetooth.js:392
#: ../js/ui/status/bluetooth.js:432 ../js/ui/status/bluetooth.js:465
#: ../js/ui/status/bluetooth.js:42 ../js/ui/status/bluetooth.js:237
#: ../js/ui/status/bluetooth.js:333 ../js/ui/status/bluetooth.js:367
#: ../js/ui/status/bluetooth.js:407 ../js/ui/status/bluetooth.js:440
msgid "Bluetooth"
msgstr "Bluetooth"
@@ -731,102 +727,101 @@ msgid "Send Files to Device..."
msgstr "Enviar archivos al dispositivo…"
#: ../js/ui/status/bluetooth.js:70
#| msgid "Setup a New Device..."
msgid "Set up a New Device..."
msgid "Setup a New Device..."
msgstr "Configurar un dispositivo nuevo…"
#: ../js/ui/status/bluetooth.js:95
msgid "Bluetooth Settings"
msgstr "Configuración de Bluetooth"
#: ../js/ui/status/bluetooth.js:215
#: ../js/ui/status/bluetooth.js:188
msgid "Connection"
msgstr "Conexión"
#: ../js/ui/status/bluetooth.js:251
#: ../js/ui/status/bluetooth.js:224
msgid "Send Files..."
msgstr "Enviar archivos…"
#: ../js/ui/status/bluetooth.js:256
#: ../js/ui/status/bluetooth.js:229
msgid "Browse Files..."
msgstr "Examinar archivos…"
#: ../js/ui/status/bluetooth.js:265
#: ../js/ui/status/bluetooth.js:238
msgid "Error browsing device"
msgstr "Error al examinar el dispositivo"
#: ../js/ui/status/bluetooth.js:266
#: ../js/ui/status/bluetooth.js:239
#, c-format
msgid "The requested device cannot be browsed, error is '%s'"
msgstr "No se puede examinar el dispositivo solicitado, el error es «%s»"
#: ../js/ui/status/bluetooth.js:274
#: ../js/ui/status/bluetooth.js:247
msgid "Keyboard Settings"
msgstr "Configuración del teclado"
#: ../js/ui/status/bluetooth.js:279
#: ../js/ui/status/bluetooth.js:252
msgid "Mouse Settings"
msgstr "Ajustes del ratón…"
#: ../js/ui/status/bluetooth.js:286 ../js/ui/status/volume.js:66
#: ../js/ui/status/bluetooth.js:259 ../js/ui/status/volume.js:66
msgid "Sound Settings"
msgstr "Configuración del sonido"
#: ../js/ui/status/bluetooth.js:393
#: ../js/ui/status/bluetooth.js:368
#, c-format
msgid "Authorization request from %s"
msgstr "Solicitud de autorización de %s"
#: ../js/ui/status/bluetooth.js:399
#: ../js/ui/status/bluetooth.js:374
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "El dispositivo %s quiere acceder al servicio «%s»"
#: ../js/ui/status/bluetooth.js:401
#: ../js/ui/status/bluetooth.js:376
msgid "Always grant access"
msgstr "Conceder acceso siempre"
#: ../js/ui/status/bluetooth.js:402
#: ../js/ui/status/bluetooth.js:377
msgid "Grant this time only"
msgstr "Conceder sólo esta vez"
#: ../js/ui/status/bluetooth.js:403
#: ../js/ui/status/bluetooth.js:378
msgid "Reject"
msgstr "Rechazar"
#: ../js/ui/status/bluetooth.js:433
#: ../js/ui/status/bluetooth.js:408
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Confirmación de emparejamiento para «%s»"
#: ../js/ui/status/bluetooth.js:439 ../js/ui/status/bluetooth.js:473
#: ../js/ui/status/bluetooth.js:414 ../js/ui/status/bluetooth.js:448
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "El dispositivo «%s» quiere emparejarse con este equipo"
#: ../js/ui/status/bluetooth.js:440
#: ../js/ui/status/bluetooth.js:415
#, c-format
msgid "Please confirm whether the PIN '%s' matches the one on the device."
msgstr "Confirme que el PIN mostrado en «%s» coincide con el del dispositivo."
#: ../js/ui/status/bluetooth.js:442
#: ../js/ui/status/bluetooth.js:417
msgid "Matches"
msgstr "Coincide"
#: ../js/ui/status/bluetooth.js:443
#: ../js/ui/status/bluetooth.js:418
msgid "Does not match"
msgstr "No coincide"
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/status/bluetooth.js:441
#, c-format
msgid "Pairing request for %s"
msgstr "Solicitud de emparejamiento para «%s»"
#: ../js/ui/status/bluetooth.js:474
#: ../js/ui/status/bluetooth.js:449
msgid "Please enter the PIN mentioned on the device."
msgstr "Introduzca el PIN mencionado en el dispositivo."
#: ../js/ui/status/bluetooth.js:490
#: ../js/ui/status/bluetooth.js:465
msgid "OK"
msgstr "Aceptar"
@@ -838,139 +833,139 @@ msgstr "Mostrar la distribución del teclado…"
msgid "Localization Settings"
msgstr "Configuración regional"
#: ../js/ui/status/network.js:113
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1437
msgid "<unknown>"
msgstr "<desconocido>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:330
#: ../js/ui/status/network.js:295
msgid "disabled"
msgstr "desactivada"
#: ../js/ui/status/network.js:528
#: ../js/ui/status/network.js:478
msgid "connecting..."
msgstr "conectando…"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:531
#: ../js/ui/status/network.js:481
msgid "authentication required"
msgstr "se necesita autenticación"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:541
#: ../js/ui/status/network.js:491
msgid "firmware missing"
msgstr "falta el «firmware»"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:548
#: ../js/ui/status/network.js:498
msgid "cable unplugged"
msgstr "cable desconectado"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:553
#: ../js/ui/status/network.js:503
msgid "unavailable"
msgstr "no disponible"
#: ../js/ui/status/network.js:555
#: ../js/ui/status/network.js:505
msgid "connection failed"
msgstr "falló la conexión"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:635 ../js/ui/status/network.js:1532
#: ../js/ui/status/network.js:585 ../js/ui/status/network.js:1385
msgid "Connected (private)"
msgstr "Conectada (privada)"
#: ../js/ui/status/network.js:720
#: ../js/ui/status/network.js:666
msgid "Auto Ethernet"
msgstr "Ethernet automática"
#: ../js/ui/status/network.js:795
#: ../js/ui/status/network.js:741
msgid "Auto broadband"
msgstr "Banda ancha automática"
#: ../js/ui/status/network.js:798
#: ../js/ui/status/network.js:744
msgid "Auto dial-up"
msgstr "Marcado automático"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:944 ../js/ui/status/network.js:1544
#: ../js/ui/status/network.js:887 ../js/ui/status/network.js:1397
#, c-format
msgid "Auto %s"
msgstr "%s automática"
#: ../js/ui/status/network.js:946
#: ../js/ui/status/network.js:889
msgid "Auto bluetooth"
msgstr "Bluetooth automático"
#: ../js/ui/status/network.js:1546
#: ../js/ui/status/network.js:1399
msgid "Auto wireless"
msgstr "Inalámbrica automática"
#: ../js/ui/status/network.js:1583
#: ../js/ui/status/network.js:1457
msgid "More..."
msgstr "Más…"
#: ../js/ui/status/network.js:1625
#: ../js/ui/status/network.js:1480
msgid "Enable networking"
msgstr "Activar red"
#: ../js/ui/status/network.js:1637
#: ../js/ui/status/network.js:1492
msgid "Wired"
msgstr "Cableada"
#: ../js/ui/status/network.js:1648
#: ../js/ui/status/network.js:1503
msgid "Wireless"
msgstr "Inalámbrica"
#: ../js/ui/status/network.js:1658
#: ../js/ui/status/network.js:1513
msgid "Mobile broadband"
msgstr "Banda ancha móvil"
#: ../js/ui/status/network.js:1668
#: ../js/ui/status/network.js:1523
msgid "VPN Connections"
msgstr "Conexiones VPN"
#: ../js/ui/status/network.js:1680
#: ../js/ui/status/network.js:1532
msgid "Network Settings"
msgstr "Configuración de la red"
#: ../js/ui/status/network.js:1974
#: ../js/ui/status/network.js:1827
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Ahora está conectado a la red de banda ancha móvil «%s»"
#: ../js/ui/status/network.js:1978
#: ../js/ui/status/network.js:1831
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Ahora está conectado a la red inalámbrica «%s»"
#: ../js/ui/status/network.js:1982
#: ../js/ui/status/network.js:1835
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Ahora está conectado a la red cableada «%s»"
#: ../js/ui/status/network.js:1986
#: ../js/ui/status/network.js:1839
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Ahora está conectado a la VPN «%s»"
#: ../js/ui/status/network.js:1991
#: ../js/ui/status/network.js:1844
#, c-format
msgid "You're now connected to '%s'"
msgstr "Ahora está conectado a «%s»"
#: ../js/ui/status/network.js:1999
#: ../js/ui/status/network.js:1852
msgid "Connection established"
msgstr "Conexión establecida"
#: ../js/ui/status/network.js:2125
#: ../js/ui/status/network.js:1974
msgid "Networking is disabled"
msgstr "La red está desactivada"
#: ../js/ui/status/network.js:2250
#: ../js/ui/status/network.js:2099
msgid "Network Manager"
msgstr "Gestor de la red"
@@ -1072,22 +1067,22 @@ msgstr "Volumen"
msgid "Microphone"
msgstr "Micrófono"
#: ../js/ui/telepathyClient.js:330
#: ../js/ui/telepathyClient.js:332
#, c-format
msgid "%s is online."
msgstr "%s está conectado/a."
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:337
#, c-format
msgid "%s is offline."
msgstr "%s está desconectado/a."
#: ../js/ui/telepathyClient.js:338
#: ../js/ui/telepathyClient.js:340
#, c-format
msgid "%s is away."
msgstr "%s está ausente."
#: ../js/ui/telepathyClient.js:341
#: ../js/ui/telepathyClient.js:343
#, c-format
msgid "%s is busy."
msgstr "%s está ocupado/a."
@@ -1095,18 +1090,11 @@ msgstr "%s está ocupado/a."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:479
#: ../js/ui/telepathyClient.js:474
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Enviado a las %X el %A"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/telepathyClient.js:524
#, c-format
msgid "%s is now known as %s"
msgstr "Ahora %s se llama %s"
#. Translators: this is the text displayed
#. in the search entry when no search is
#. active; it should not exceed ~30
@@ -1151,7 +1139,7 @@ msgstr[1] "%u entradas"
msgid "System Sounds"
msgstr "Sonidos del sistema"
#: ../src/main.c:445
#: ../src/main.c:446
msgid "Print version"
msgstr "Imprimir versión"
@@ -1160,6 +1148,38 @@ msgstr "Imprimir versión"
msgid "Failed to launch '%s'"
msgstr "Falló al lanzar «%s»"
#: ../src/shell-global.c:1395
msgid "Less than a minute ago"
msgstr "Hace menos de un minuto"
#: ../src/shell-global.c:1399
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
msgstr[0] "Hace %d minuto"
msgstr[1] "Hace %d minutos"
#: ../src/shell-global.c:1404
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
msgstr[0] "Hace %d hora"
msgstr[1] "Hace %d horas"
#: ../src/shell-global.c:1409
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "Hace %d día"
msgstr[1] "Hace %d días"
#: ../src/shell-global.c:1414
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
msgstr[0] "Hace %d semana"
msgstr[1] "Hace %d semanas"
#: ../src/shell-mobile-providers.c:80
msgid "United Kingdom"
msgstr "Reino Unido"
@@ -1192,29 +1212,6 @@ msgstr "Sistema de archivos"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "Less than a minute ago"
#~ msgstr "Hace menos de un minuto"
#~ msgid "%d minute ago"
#~ msgid_plural "%d minutes ago"
#~ msgstr[0] "Hace %d minuto"
#~ msgstr[1] "Hace %d minutos"
#~ msgid "%d hour ago"
#~ msgid_plural "%d hours ago"
#~ msgstr[0] "Hace %d hora"
#~ msgstr[1] "Hace %d horas"
#~ msgid "%d day ago"
#~ msgid_plural "%d days ago"
#~ msgstr[0] "Hace %d día"
#~ msgstr[1] "Hace %d días"
#~ msgid "%d week ago"
#~ msgid_plural "%d weeks ago"
#~ msgstr[0] "Hace %d semana"
#~ msgstr[1] "Hace %d semanas"
#~ msgid "Shut Down"
#~ msgstr "Apagar"
@@ -1242,6 +1239,9 @@ msgstr "%1$s: %2$s"
#~ msgid "Screen Keyboard"
#~ msgstr "Teclado en pantalla"
#~ msgid "%s is now known as %s"
#~ msgstr "Ahora %s se llama %s"
#~ msgid "PREFERENCES"
#~ msgstr "PREFERENCIAS"
@@ -1416,8 +1416,8 @@ msgstr "%1$s: %2$s"
#~ "If true and format is either \"12-hour\" or \"24-hour\", display seconds "
#~ "in time."
#~ msgstr ""
#~ "Si es cierta y el formato es «12-horas» o «24-horas», muestra los segundos "
#~ "en la hora."
#~ "Si es cierta y el formato es «12-horas» o «24-horas», muestra los "
#~ "segundos en la hora."
#~ msgid ""
#~ "This key specifies the format used by the panel clock when the format key "
@@ -1434,18 +1434,19 @@ msgstr "%1$s: %2$s"
#~ msgid ""
#~ "This key specifies the hour format used by the panel clock. Possible "
#~ "values are \"12-hour\", \"24-hour\", \"unix\" and \"custom\". If set to "
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. 1970-"
#~ "01-01. If set to \"custom\", the clock will display time according to the "
#~ "format specified in the custom_format key. Note that if set to either "
#~ "\"unix\" or \"custom\", the show_date and show_seconds keys are ignored."
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. "
#~ "1970-01-01. If set to \"custom\", the clock will display time according "
#~ "to the format specified in the custom_format key. Note that if set to "
#~ "either \"unix\" or \"custom\", the show_date and show_seconds keys are "
#~ "ignored."
#~ msgstr ""
#~ "Esta clave especifica el formato de la hora especificado por el reloj del "
#~ "panel. Los valores posibles son «12-hour» (12 horas), «24-hour» (24 horas), "
#~ "«unix» y «custom» (personalizado).Si se establece a «unix» el reloj mostrará "
#~ "la hora en segundos desde la época (1 de enero de 1970). Si se establece "
#~ "a «custom» el reloj mostrará la hora según el formato especificado en la "
#~ "clave «custom_format». Note que si se establece a «unix» o «custom» se "
#~ "ignoran las claves «show_date» y «show_seconds»."
#~ "panel. Los valores posibles son «12-hour» (12 horas), «24-hour» (24 "
#~ "horas), «unix» y «custom» (personalizado).Si se establece a «unix» el "
#~ "reloj mostrará la hora en segundos desde la época (1 de enero de 1970). "
#~ "Si se establece a «custom» el reloj mostrará la hora según el formato "
#~ "especificado en la clave «custom_format». Note que si se establece a "
#~ "«unix» o «custom» se ignoran las claves «show_date» y «show_seconds»."
#~ msgid "Clock Format"
#~ msgstr "Formato del reloj"

View File

@@ -13,8 +13,8 @@ msgstr ""
"Project-Id-Version: gnome-shell MASTER\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-03-30 17:13+0000\n"
"PO-Revision-Date: 2011-03-30 23:56+0300\n"
"POT-Creation-Date: 2011-03-18 10:35+0000\n"
"PO-Revision-Date: 2011-03-18 21:33+0300\n"
"Last-Translator: Mattias Põldaru <mahfiaz@gmail.com>\n"
"Language-Team: Estonian <gnome-et@linux.ee>\n"
"Language: et\n"
@@ -385,19 +385,19 @@ msgstr "Sind logitakse %d sekundi pärast automaatselt välja."
msgid "Logging out of the system."
msgstr "Süsteemist väljalogimine"
msgid "Power Off"
msgid "Shut Down"
msgstr "Lülita välja"
msgid "Click Power Off to quit these applications and power off the system."
msgid "Click Shut Down to quit these applications and shut down the system."
msgstr ""
"Nende rakenduste sulgemiseks ja süsteemi väljalülitamiseks klõpsa nupule "
"Lülita välja."
"Logi välja."
#, c-format
msgid "The system will power off automatically in %d seconds."
msgid "The system will shut down automatically in %d seconds."
msgstr "%d sekundi pärast lülitub süsteem automaatselt välja."
msgid "Powering off the system."
msgid "Shutting down the system."
msgstr "Süsteemi väljalülitamine."
msgid "Restart"
@@ -415,6 +415,9 @@ msgstr "Süsteem taaskäivitatakse automaatselt %d sekundi pärast."
msgid "Restarting the system."
msgstr "Süsteemi taaskäivitamine."
msgid "Confirm"
msgstr "Kinnita"
msgid "Cancel"
msgstr "Katkesta"
@@ -471,8 +474,8 @@ msgstr "Lõpeta %s"
msgid "Activities"
msgstr "Tegevused"
msgid "Top Bar"
msgstr "Ülemine riba"
msgid "Panel"
msgstr "Paneel"
#, c-format
msgid "Failed to unmount '%s'"
@@ -487,25 +490,6 @@ msgstr "Ühendumine..."
msgid "PLACES & DEVICES"
msgstr "Asukohad ja seadmed"
msgid "Authentication Required"
msgstr "Vajalik on autentimine"
msgid "Administrator"
msgstr "Administraator"
msgid "Authenticate"
msgstr "Autendi"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
msgid "Sorry, that didn't work. Please try again."
msgstr "Kahjuks see ei sobinud. Palun proovi uuesti."
msgid "Password:"
msgstr "Parool:"
#. Translators: this MUST be either "toggle-switch-us"
#. (for toggle switches containing the English words
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
@@ -688,11 +672,6 @@ msgstr "ühendumine..."
msgid "authentication required"
msgstr "vajalik on autentimine"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
msgid "firmware missing"
msgstr "püsivara puudub"
#. Translators: this is for wired network devices that are physically disconnected
msgid "cable unplugged"
msgstr "juhe eemaldatud"
@@ -771,7 +750,7 @@ msgstr "Loodi ühendus VPN-võrguga '%s'"
msgid "You're now connected to '%s'"
msgstr "Loodi võrguühendus '%s' kaudu"
msgid "Connection established"
msgid "Connection estabilished"
msgstr "Ühendus loodud"
msgid "Networking is disabled"
@@ -977,26 +956,6 @@ msgstr "Failisüsteem"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "Shut Down"
#~ msgstr "Lülita välja"
#~ msgid "Click Shut Down to quit these applications and shut down the system."
#~ msgstr ""
#~ "Nende rakenduste sulgemiseks ja süsteemi väljalülitamiseks klõpsa nupule "
#~ "Logi välja."
#~ msgid "The system will shut down automatically in %d seconds."
#~ msgstr "%d sekundi pärast lülitub süsteem automaatselt välja."
#~ msgid "Shutting down the system."
#~ msgstr "Süsteemi väljalülitamine."
#~ msgid "Confirm"
#~ msgstr "Kinnita"
#~ msgid "Panel"
#~ msgstr "Paneel"
#~ msgid "No such application"
#~ msgstr "Sellist rakendust ei ole"

1232
po/eu.po

File diff suppressed because it is too large Load Diff

1230
po/fa.po

File diff suppressed because it is too large Load Diff

1259
po/fi.po

File diff suppressed because it is too large Load Diff

114
po/gl.po
View File

@@ -12,8 +12,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-04-22 17:56+0200\n"
"PO-Revision-Date: 2011-04-22 17:57+0200\n"
"POT-Creation-Date: 2011-03-27 20:33+0200\n"
"PO-Revision-Date: 2011-03-27 20:33+0200\n"
"Last-Translator: Fran Diéguez <frandieguez@gnome.org>\n"
"Language-Team: Galician <gnome-l10n-gl@gnome.org>\n"
"Language: gl\n"
@@ -197,23 +197,23 @@ msgstr "Produciuse un fallo na execución de «%s»:"
msgid "All"
msgstr "Todos"
#: ../js/ui/appDisplay.js:329
#: ../js/ui/appDisplay.js:328
msgid "APPLICATIONS"
msgstr "APLICATIVOS"
#: ../js/ui/appDisplay.js:355
#: ../js/ui/appDisplay.js:354
msgid "SETTINGS"
msgstr "CONFIGURACIÓN"
#: ../js/ui/appDisplay.js:626
#: ../js/ui/appDisplay.js:625
msgid "New Window"
msgstr "Xanela nova"
#: ../js/ui/appDisplay.js:629
#: ../js/ui/appDisplay.js:628
msgid "Remove from Favorites"
msgstr "Eliminar dos favoritos"
#: ../js/ui/appDisplay.js:630
#: ../js/ui/appDisplay.js:629
msgid "Add to Favorites"
msgstr "Engadir aos favoritos"
@@ -346,13 +346,13 @@ msgid "Nothing Scheduled"
msgstr "Nada programado"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:492
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:495
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d de %B de %Y"
@@ -373,7 +373,7 @@ msgstr "Esta semana"
msgid "Next week"
msgstr "A vindeira semana"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1037
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1000
msgid "Remove"
msgstr "Eliminar"
@@ -409,17 +409,17 @@ msgstr "%a %R"
#. for AM/PM.
#: ../js/ui/dateMenu.js:177
msgid "%a %b %e, %l:%M:%S %p"
msgstr "%a %e de %b, %l:%M:%S"
msgstr "%a %e de %b, %H:%M:%S"
#: ../js/ui/dateMenu.js:178
msgid "%a %b %e, %l:%M %p"
msgstr "%a %e de %b, %l:%M %p"
msgstr "%a %e de %b, %H:%M"
#. Translators: This is a time format without date used
#. for AM/PM.
#: ../js/ui/dateMenu.js:182
msgid "%a %l:%M:%S %p"
msgstr "%a %l:%M:%S %p"
msgstr "%a %H:%M:%S"
#: ../js/ui/dateMenu.js:183
msgid "%a %l:%M %p"
@@ -502,7 +502,7 @@ msgstr "O seu computador reiniciarase automaticamente en %d segundos."
msgid "Restarting the system."
msgstr "Reiniciando o computador."
#: ../js/ui/endSessionDialog.js:413 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Cancelar"
@@ -537,11 +537,11 @@ msgstr "Ver fonte"
msgid "Web Page"
msgstr "Páxina web"
#: ../js/ui/messageTray.js:1030
#: ../js/ui/messageTray.js:993
msgid "Open"
msgstr "Abrir"
#: ../js/ui/messageTray.js:2194
#: ../js/ui/messageTray.js:2151
msgid "System Information"
msgstr "Información do sistema"
@@ -564,18 +564,18 @@ msgid "Dash"
msgstr "Panel"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:524
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Saír de %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:902
#: ../js/ui/panel.js:878
msgid "Activities"
msgstr "Actividades"
#: ../js/ui/panel.js:1003
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "Barra superior"
@@ -633,11 +633,11 @@ msgstr "toggle-switch-intl"
msgid "Please enter a command:"
msgstr "Insira unha orde:"
#: ../js/ui/searchDisplay.js:311
#: ../js/ui/searchDisplay.js:310
msgid "Searching..."
msgstr "Buscando..."
#: ../js/ui/searchDisplay.js:325
#: ../js/ui/searchDisplay.js:324
msgid "No matching results."
msgstr "Non hai resultados que coincidan."
@@ -841,139 +841,139 @@ msgstr "Mostrar a distribución do teclado…"
msgid "Localization Settings"
msgstr "Configuracións do son"
#: ../js/ui/status/network.js:109 ../js/ui/status/network.js:1498
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1454
msgid "<unknown>"
msgstr "<descoñecida>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:326
#: ../js/ui/status/network.js:311
msgid "disabled"
msgstr "desactivada"
#: ../js/ui/status/network.js:521
#: ../js/ui/status/network.js:494
msgid "connecting..."
msgstr "conectando..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:524
#: ../js/ui/status/network.js:497
msgid "authentication required"
msgstr "autenticación requirida"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:534
#: ../js/ui/status/network.js:507
msgid "firmware missing"
msgstr "falta o «firmware»"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:541
#: ../js/ui/status/network.js:514
msgid "cable unplugged"
msgstr "cable desconectado"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:546
#: ../js/ui/status/network.js:519
msgid "unavailable"
msgstr "non dispoñíbel"
#: ../js/ui/status/network.js:548
#: ../js/ui/status/network.js:521
msgid "connection failed"
msgstr "conexión fallida"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:628 ../js/ui/status/network.js:1446
#: ../js/ui/status/network.js:602 ../js/ui/status/network.js:1402
msgid "Connected (private)"
msgstr "Conectado (privado)"
#: ../js/ui/status/network.js:713
#: ../js/ui/status/network.js:683
msgid "Auto Ethernet"
msgstr "Ethernet automática"
#: ../js/ui/status/network.js:788
#: ../js/ui/status/network.js:758
msgid "Auto broadband"
msgstr "Banda larga automática"
#: ../js/ui/status/network.js:791
#: ../js/ui/status/network.js:761
msgid "Auto dial-up"
msgstr "Por liña conmutada automática"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:937 ../js/ui/status/network.js:1458
#: ../js/ui/status/network.js:904 ../js/ui/status/network.js:1414
#, c-format
msgid "Auto %s"
msgstr "%s automática"
#: ../js/ui/status/network.js:939
#: ../js/ui/status/network.js:906
msgid "Auto bluetooth"
msgstr "Bluetooth automática"
#: ../js/ui/status/network.js:1460
#: ../js/ui/status/network.js:1416
msgid "Auto wireless"
msgstr "Sen fíos automática"
#: ../js/ui/status/network.js:1518
#: ../js/ui/status/network.js:1474
msgid "More..."
msgstr "Máis..."
#: ../js/ui/status/network.js:1541
#: ../js/ui/status/network.js:1497
msgid "Enable networking"
msgstr "Activar rede"
#: ../js/ui/status/network.js:1553
#: ../js/ui/status/network.js:1509
msgid "Wired"
msgstr "Con fíos"
#: ../js/ui/status/network.js:1564
#: ../js/ui/status/network.js:1520
msgid "Wireless"
msgstr "Sen fíos"
#: ../js/ui/status/network.js:1574
#: ../js/ui/status/network.js:1530
msgid "Mobile broadband"
msgstr "Banda larga móbil"
#: ../js/ui/status/network.js:1584
#: ../js/ui/status/network.js:1540
msgid "VPN Connections"
msgstr "Conexións VPN"
#: ../js/ui/status/network.js:1596
#: ../js/ui/status/network.js:1549
msgid "Network Settings"
msgstr "Configuracións da rede"
#: ../js/ui/status/network.js:1890
#: ../js/ui/status/network.js:1844
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Vostede está conectado agora á conexión de banda larga móbil «%s»"
#: ../js/ui/status/network.js:1894
#: ../js/ui/status/network.js:1848
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Vostede está conectado agora á conexión sen fíos «%s»"
#: ../js/ui/status/network.js:1898
#: ../js/ui/status/network.js:1852
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Vostede está conectado agora á conexión con fíos «%s»"
#: ../js/ui/status/network.js:1902
#: ../js/ui/status/network.js:1856
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Vostede está conectado agora á conexión VPN «%s»"
#: ../js/ui/status/network.js:1907
#: ../js/ui/status/network.js:1861
#, c-format
msgid "You're now connected to '%s'"
msgstr "Vostede está conectado agora a «%s»"
#: ../js/ui/status/network.js:1915
#: ../js/ui/status/network.js:1869
msgid "Connection established"
msgstr "Conexión estabelecida"
#: ../js/ui/status/network.js:2041
#: ../js/ui/status/network.js:1991
msgid "Networking is disabled"
msgstr "A rede está desactivada"
#: ../js/ui/status/network.js:2166
#: ../js/ui/status/network.js:2116
msgid "Network Manager"
msgstr "Xestor de rede"
@@ -1075,22 +1075,22 @@ msgstr "Volume"
msgid "Microphone"
msgstr "Micrófono"
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:331
#, c-format
msgid "%s is online."
msgstr "%s está conectado/a."
#: ../js/ui/telepathyClient.js:340
#: ../js/ui/telepathyClient.js:336
#, c-format
msgid "%s is offline."
msgstr "%s está desconectado/a."
#: ../js/ui/telepathyClient.js:343
#: ../js/ui/telepathyClient.js:339
#, c-format
msgid "%s is away."
msgstr "%s está ausente."
#: ../js/ui/telepathyClient.js:346
#: ../js/ui/telepathyClient.js:342
#, c-format
msgid "%s is busy."
msgstr "%s está ocupado/a."
@@ -1098,7 +1098,7 @@ msgstr "%s está ocupado/a."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:484
#: ../js/ui/telepathyClient.js:473
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Enviado ás %X o %A"
@@ -1147,7 +1147,7 @@ msgstr[1] "%u entradas"
msgid "System Sounds"
msgstr "Sons do sistema"
#: ../src/main.c:445
#: ../src/main.c:446
msgid "Print version"
msgstr "Imprimir versión"

801
po/gu.po

File diff suppressed because it is too large Load Diff

265
po/he.po
View File

@@ -8,11 +8,10 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-05-13 13:23+0300\n"
"PO-Revision-Date: 2011-05-13 13:23+0200\n"
"POT-Creation-Date: 2011-03-26 00:54+0200\n"
"PO-Revision-Date: 2011-03-26 00:55+0200\n"
"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n"
"Language-Team: Hebrew <sh.yaron@gmail.com>\n"
"Language: he\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -63,7 +62,7 @@ msgstr "History for command (Alt-F2) dialog"
#: ../data/org.gnome.shell.gschema.xml.in.h:7
msgid "History for the looking glass dialog"
msgstr "History for the looking glass dialog"
msgstr "היסטוריית תיבת הדו־שיח של זכוכית המגדלת"
#: ../data/org.gnome.shell.gschema.xml.in.h:8
msgid "If true, display date in the clock, in addition to time."
@@ -188,27 +187,27 @@ msgid "Execution of '%s' failed:"
msgstr "ההרצה של '%s' נכשלה:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:260
#: ../js/ui/appDisplay.js:230
msgid "All"
msgstr "הכול"
#: ../js/ui/appDisplay.js:359
#: ../js/ui/appDisplay.js:328
msgid "APPLICATIONS"
msgstr "יישומים"
#: ../js/ui/appDisplay.js:385
#: ../js/ui/appDisplay.js:354
msgid "SETTINGS"
msgstr "הגדרות"
#: ../js/ui/appDisplay.js:658
#: ../js/ui/appDisplay.js:625
msgid "New Window"
msgstr "חלון חדש"
#: ../js/ui/appDisplay.js:661
#: ../js/ui/appDisplay.js:628
msgid "Remove from Favorites"
msgstr "הסרה מהמועדפים"
#: ../js/ui/appDisplay.js:662
#: ../js/ui/appDisplay.js:629
msgid "Add to Favorites"
msgstr "הוספה למועדפים"
@@ -341,13 +340,13 @@ msgid "Nothing Scheduled"
msgstr "היומן ריק"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:490
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, ה־%e ב%B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:493
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, ה־%e ב%B, %Y"
@@ -368,7 +367,7 @@ msgstr "השבוע"
msgid "Next week"
msgstr "בשבוע הבא"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1037
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1000
msgid "Remove"
msgstr "הסרה"
@@ -493,8 +492,8 @@ msgstr "המערכת תופעל מחדש בעוד %d שניות."
msgid "Restarting the system."
msgstr "המערכת מופעלת מחדש"
#: ../js/ui/endSessionDialog.js:413 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:491
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "ביטול"
@@ -528,11 +527,11 @@ msgstr "צפייה במקור"
msgid "Web Page"
msgstr "דף אינטרנט"
#: ../js/ui/messageTray.js:1030
#: ../js/ui/messageTray.js:993
msgid "Open"
msgstr "פתיחה"
#: ../js/ui/messageTray.js:2194
#: ../js/ui/messageTray.js:2151
msgid "System Information"
msgstr "פרטי המערכת"
@@ -555,18 +554,18 @@ msgid "Dash"
msgstr "חלונית"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:533
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "יציאה מ־%s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:913
#: ../js/ui/panel.js:878
msgid "Activities"
msgstr "פעילויות"
#: ../js/ui/panel.js:1015
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "הסרגל העליון"
@@ -599,15 +598,11 @@ msgstr "מנהל"
msgid "Authenticate"
msgstr "אימות"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
#: ../js/ui/polkitAuthenticationAgent.js:260
msgid "Sorry, that didn't work. Please try again."
msgstr "פעולה זו לא הצליחה, נא לנסות שוב. עמך הסליחה."
#: ../js/ui/polkitAuthenticationAgent.js:276
#: ../js/ui/polkitAuthenticationAgent.js:272
msgid "Password:"
msgstr "ססמה:"
@@ -624,11 +619,11 @@ msgstr "toggle-switch-intl"
msgid "Please enter a command:"
msgstr "נא להזין פקודה:"
#: ../js/ui/searchDisplay.js:313
#: ../js/ui/searchDisplay.js:310
msgid "Searching..."
msgstr "בחיפוש..."
#: ../js/ui/searchDisplay.js:327
#: ../js/ui/searchDisplay.js:324
msgid "No matching results."
msgstr "אין תוצאות תואמות."
@@ -643,7 +638,7 @@ msgstr "השהיה"
#: ../js/ui/statusMenu.js:184
msgid "Available"
msgstr "פנוי"
msgstr "זמין"
#: ../js/ui/statusMenu.js:189
msgid "Busy"
@@ -711,9 +706,9 @@ msgstr "ניגודיות גבוהה"
msgid "Large Text"
msgstr "טקסט גדול"
#: ../js/ui/status/bluetooth.js:42 ../js/ui/status/bluetooth.js:264
#: ../js/ui/status/bluetooth.js:358 ../js/ui/status/bluetooth.js:392
#: ../js/ui/status/bluetooth.js:432 ../js/ui/status/bluetooth.js:465
#: ../js/ui/status/bluetooth.js:42 ../js/ui/status/bluetooth.js:237
#: ../js/ui/status/bluetooth.js:333 ../js/ui/status/bluetooth.js:367
#: ../js/ui/status/bluetooth.js:407 ../js/ui/status/bluetooth.js:440
msgid "Bluetooth"
msgstr "Bluetooth"
@@ -726,101 +721,101 @@ msgid "Send Files to Device..."
msgstr "שליחת קובץ להתקן..."
#: ../js/ui/status/bluetooth.js:70
msgid "Set up a New Device..."
msgid "Setup a New Device..."
msgstr "הגדרת התקן חדש..."
#: ../js/ui/status/bluetooth.js:95
msgid "Bluetooth Settings"
msgstr "הגדרות Bluetooth"
#: ../js/ui/status/bluetooth.js:215
#: ../js/ui/status/bluetooth.js:188
msgid "Connection"
msgstr "חיבור"
#: ../js/ui/status/bluetooth.js:251
#: ../js/ui/status/bluetooth.js:224
msgid "Send Files..."
msgstr "שליחת קבצים..."
#: ../js/ui/status/bluetooth.js:256
#: ../js/ui/status/bluetooth.js:229
msgid "Browse Files..."
msgstr "עיון בקבצים..."
#: ../js/ui/status/bluetooth.js:265
#: ../js/ui/status/bluetooth.js:238
msgid "Error browsing device"
msgstr "שגיאה בעיון בהתקן"
#: ../js/ui/status/bluetooth.js:266
#: ../js/ui/status/bluetooth.js:239
#, c-format
msgid "The requested device cannot be browsed, error is '%s'"
msgstr "לא ניתן לעיין בהתקן הנבחר, השגיאה היא '%s'"
#: ../js/ui/status/bluetooth.js:274
#: ../js/ui/status/bluetooth.js:247
msgid "Keyboard Settings"
msgstr "הגדרות מקלדת"
#: ../js/ui/status/bluetooth.js:279
#: ../js/ui/status/bluetooth.js:252
msgid "Mouse Settings"
msgstr "הגדרות עכבר"
#: ../js/ui/status/bluetooth.js:286 ../js/ui/status/volume.js:66
#: ../js/ui/status/bluetooth.js:259 ../js/ui/status/volume.js:66
msgid "Sound Settings"
msgstr "הגדרות שמע"
#: ../js/ui/status/bluetooth.js:393
#: ../js/ui/status/bluetooth.js:368
#, c-format
msgid "Authorization request from %s"
msgstr "בקשת אישור מאת %s"
#: ../js/ui/status/bluetooth.js:399
#: ../js/ui/status/bluetooth.js:374
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "ההתקן %s מעוניין לגשת אל השירות '%s'"
#: ../js/ui/status/bluetooth.js:401
#: ../js/ui/status/bluetooth.js:376
msgid "Always grant access"
msgstr "תמיד להעניק גישה"
#: ../js/ui/status/bluetooth.js:402
#: ../js/ui/status/bluetooth.js:377
msgid "Grant this time only"
msgstr "הענקת גישה הפעם בלבד"
#: ../js/ui/status/bluetooth.js:403
#: ../js/ui/status/bluetooth.js:378
msgid "Reject"
msgstr "סירוב"
#: ../js/ui/status/bluetooth.js:433
#: ../js/ui/status/bluetooth.js:408
#, c-format
msgid "Pairing confirmation for %s"
msgstr "אישור צימוד עבור %s"
#: ../js/ui/status/bluetooth.js:439 ../js/ui/status/bluetooth.js:473
#: ../js/ui/status/bluetooth.js:414 ../js/ui/status/bluetooth.js:448
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "ההתקן %s מעוניין בצימוד עם מחשב זה"
#: ../js/ui/status/bluetooth.js:440
#: ../js/ui/status/bluetooth.js:415
#, c-format
msgid "Please confirm whether the PIN '%s' matches the one on the device."
msgstr "נא לאשר האם קוד ה־PIN '%s' תואם את זה שמופיע בהתקן."
#: ../js/ui/status/bluetooth.js:442
#: ../js/ui/status/bluetooth.js:417
msgid "Matches"
msgstr "התאמות"
#: ../js/ui/status/bluetooth.js:443
#: ../js/ui/status/bluetooth.js:418
msgid "Does not match"
msgstr "אינו תואם"
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/status/bluetooth.js:441
#, c-format
msgid "Pairing request for %s"
msgstr "בקשת צימוד עבור %s"
#: ../js/ui/status/bluetooth.js:474
#: ../js/ui/status/bluetooth.js:449
msgid "Please enter the PIN mentioned on the device."
msgstr "נא להזין את קוד ה־PIN המוזכר בהתקן."
#: ../js/ui/status/bluetooth.js:490
#: ../js/ui/status/bluetooth.js:465
msgid "OK"
msgstr "אישור"
@@ -832,139 +827,139 @@ msgstr "הצגת פריסת המקלדת..."
msgid "Localization Settings"
msgstr "הגדרות אזוריות"
#: ../js/ui/status/network.js:126
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1453
msgid "<unknown>"
msgstr "<לא ידוע>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:343
#: ../js/ui/status/network.js:311
msgid "disabled"
msgstr "מנוטרל"
#: ../js/ui/status/network.js:542
#: ../js/ui/status/network.js:494
msgid "connecting..."
msgstr "בהתחברות..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:545
#: ../js/ui/status/network.js:497
msgid "authentication required"
msgstr "נדרש אימות"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:555
#: ../js/ui/status/network.js:507
msgid "firmware missing"
msgstr "הקושחה חסרה"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:562
#: ../js/ui/status/network.js:514
msgid "cable unplugged"
msgstr "הכבל מנותק"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:567
#: ../js/ui/status/network.js:519
msgid "unavailable"
msgstr "לא זמין"
#: ../js/ui/status/network.js:569
#: ../js/ui/status/network.js:521
msgid "connection failed"
msgstr "החיבור נכשל"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:650 ../js/ui/status/network.js:1459
#: ../js/ui/status/network.js:601 ../js/ui/status/network.js:1401
msgid "Connected (private)"
msgstr "מחובר (פרטי)"
#: ../js/ui/status/network.js:735
#: ../js/ui/status/network.js:682
msgid "Auto Ethernet"
msgstr "אתרנט אוטומטי"
#: ../js/ui/status/network.js:803
#: ../js/ui/status/network.js:757
msgid "Auto broadband"
msgstr "פס רחב אוטומטי"
#: ../js/ui/status/network.js:806
#: ../js/ui/status/network.js:760
msgid "Auto dial-up"
msgstr "חיוג אוטומטי"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:930 ../js/ui/status/network.js:1471
#: ../js/ui/status/network.js:903 ../js/ui/status/network.js:1413
#, c-format
msgid "Auto %s"
msgstr "%s אוטומטי"
#: ../js/ui/status/network.js:932
#: ../js/ui/status/network.js:905
msgid "Auto bluetooth"
msgstr "Bluetooth אוטומטי"
#: ../js/ui/status/network.js:1473
#: ../js/ui/status/network.js:1415
msgid "Auto wireless"
msgstr "אלחוטי אוטומטי"
#: ../js/ui/status/network.js:1521
#: ../js/ui/status/network.js:1473
msgid "More..."
msgstr "עוד..."
#: ../js/ui/status/network.js:1563
#: ../js/ui/status/network.js:1496
msgid "Enable networking"
msgstr "הפעלת תכונת הרשת"
#: ../js/ui/status/network.js:1575
#: ../js/ui/status/network.js:1508
msgid "Wired"
msgstr "קווי"
#: ../js/ui/status/network.js:1586
#: ../js/ui/status/network.js:1519
msgid "Wireless"
msgstr "אלחוטי"
#: ../js/ui/status/network.js:1596
#: ../js/ui/status/network.js:1529
msgid "Mobile broadband"
msgstr "פס־רחב נייד"
#: ../js/ui/status/network.js:1606
#: ../js/ui/status/network.js:1539
msgid "VPN Connections"
msgstr "חיבורי VPN"
#: ../js/ui/status/network.js:1618
#: ../js/ui/status/network.js:1548
msgid "Network Settings"
msgstr "הגדרות הרשת"
#: ../js/ui/status/network.js:1912
#: ../js/ui/status/network.js:1843
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "כרגע ישנו חיבור בינך ובין רשת הפס הרחב הניידת '%s'"
#: ../js/ui/status/network.js:1916
#: ../js/ui/status/network.js:1847
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "כרגע ישנו חיבור בינך ובין הרשת האלחוטית '%s'"
#: ../js/ui/status/network.js:1920
#: ../js/ui/status/network.js:1851
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "כרגע ישנו חיבור בינך ובין הרשת הקווית '%s'"
#: ../js/ui/status/network.js:1924
#: ../js/ui/status/network.js:1855
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "כרגע ישנו חיבור בינך ובין רשת ה־VPN '%s'"
#: ../js/ui/status/network.js:1929
#: ../js/ui/status/network.js:1860
#, c-format
msgid "You're now connected to '%s'"
msgstr "כעת ישנו חיבור בינך ובין '%s'"
#: ../js/ui/status/network.js:1937
#: ../js/ui/status/network.js:1868
msgid "Connection established"
msgstr "ההתחברות הצליחה"
#: ../js/ui/status/network.js:2063
#: ../js/ui/status/network.js:1990
msgid "Networking is disabled"
msgstr "תכונת הרשת מנוטרלת"
#: ../js/ui/status/network.js:2188
#: ../js/ui/status/network.js:2115
msgid "Network Manager"
msgstr "מנהל הרשתות"
@@ -1070,22 +1065,22 @@ msgstr "עצמה"
msgid "Microphone"
msgstr "מיקרופון"
#: ../js/ui/telepathyClient.js:333
#: ../js/ui/telepathyClient.js:331
#, c-format
msgid "%s is online."
msgstr "%s התחבר/ה."
#: ../js/ui/telepathyClient.js:338
#: ../js/ui/telepathyClient.js:336
#, c-format
msgid "%s is offline."
msgstr "%s התנתק/ה."
#: ../js/ui/telepathyClient.js:341
#: ../js/ui/telepathyClient.js:339
#, c-format
msgid "%s is away."
msgstr "'%s' מרוחק/ת."
#: ../js/ui/telepathyClient.js:344
#: ../js/ui/telepathyClient.js:342
#, c-format
msgid "%s is busy."
msgstr "%s עסוק/ה."
@@ -1093,18 +1088,11 @@ msgstr "%s עסוק/ה."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:482
#: ../js/ui/telepathyClient.js:473
#, no-c-format
msgid "Sent at %X on %A"
msgstr "נשלח ב־%X בשעה %A"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/telepathyClient.js:527
#, c-format
msgid "%s is now known as %s"
msgstr "השם של %s הוחלף ל־%s"
#. Translators: this is the text displayed
#. in the search entry when no search is
#. active; it should not exceed ~30
@@ -1151,15 +1139,51 @@ msgstr[2] "2 קלטים"
msgid "System Sounds"
msgstr "צלילי מערכת"
#: ../src/main.c:445
#: ../src/main.c:446
msgid "Print version"
msgstr "Print version"
#: ../src/shell-app.c:464
#: ../src/shell-app.c:454
#, c-format
msgid "Failed to launch '%s'"
msgstr "אירע כשל בטעינת '%s'"
#: ../src/shell-global.c:1395
msgid "Less than a minute ago"
msgstr "לפני פחות מדקה"
#: ../src/shell-global.c:1399
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
msgstr[0] "לפני דקה"
msgstr[1] "לפני %d דקות"
msgstr[2] "לפני 2 דקות"
#: ../src/shell-global.c:1404
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
msgstr[0] "לפני שעה"
msgstr[1] "לפני %d שעות"
msgstr[2] "לפני שעתיים"
#: ../src/shell-global.c:1409
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "לפני יום"
msgstr[1] "לפני %d ימים"
msgstr[2] "לפני יומיים"
#: ../src/shell-global.c:1414
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
msgstr[0] "לפני שבוע"
msgstr[1] "לפני %d שבועות"
msgstr[2] "לפני שבועיים"
#: ../src/shell-mobile-providers.c:80
msgid "United Kingdom"
msgstr "בריטניה"
@@ -1192,33 +1216,6 @@ msgstr "מערכת הקבצים"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "Less than a minute ago"
#~ msgstr "לפני פחות מדקה"
#~ msgid "%d minute ago"
#~ msgid_plural "%d minutes ago"
#~ msgstr[0] "לפני דקה"
#~ msgstr[1] "לפני %d דקות"
#~ msgstr[2] "לפני 2 דקות"
#~ msgid "%d hour ago"
#~ msgid_plural "%d hours ago"
#~ msgstr[0] "לפני שעה"
#~ msgstr[1] "לפני %d שעות"
#~ msgstr[2] "לפני שעתיים"
#~ msgid "%d day ago"
#~ msgid_plural "%d days ago"
#~ msgstr[0] "לפני יום"
#~ msgstr[1] "לפני %d ימים"
#~ msgstr[2] "לפני יומיים"
#~ msgid "%d week ago"
#~ msgid_plural "%d weeks ago"
#~ msgstr[0] "לפני שבוע"
#~ msgstr[1] "לפני %d שבועות"
#~ msgstr[2] "לפני שבועיים"
#~ msgid "Shut Down"
#~ msgstr "כיבוי"
@@ -1431,19 +1428,17 @@ msgstr "%1$s: %2$s"
#~ msgid ""
#~ "This key specifies the hour format used by the panel clock. Possible "
#~ "values are \"12-hour\", \"24-hour\", \"unix\" and \"custom\". If set to "
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. "
#~ "1970-01-01. If set to \"custom\", the clock will display time according "
#~ "to the format specified in the custom_format key. Note that if set to "
#~ "either \"unix\" or \"custom\", the show_date and show_seconds keys are "
#~ "ignored."
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. 1970-"
#~ "01-01. If set to \"custom\", the clock will display time according to the "
#~ "format specified in the custom_format key. Note that if set to either "
#~ "\"unix\" or \"custom\", the show_date and show_seconds keys are ignored."
#~ msgstr ""
#~ "This key specifies the hour format used by the panel clock. Possible "
#~ "values are \"12-hour\", \"24-hour\", \"unix\" and \"custom\". If set to "
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. "
#~ "1970-01-01. If set to \"custom\", the clock will display time according "
#~ "to the format specified in the custom_format key. Note that if set to "
#~ "either \"unix\" or \"custom\", the show_date and show_seconds keys are "
#~ "ignored."
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. 1970-"
#~ "01-01. If set to \"custom\", the clock will display time according to the "
#~ "format specified in the custom_format key. Note that if set to either "
#~ "\"unix\" or \"custom\", the show_date and show_seconds keys are ignored."
#~ msgid "Clock Format"
#~ msgstr "מבנה השעון"

View File

@@ -1,4 +1,4 @@
# translation of gnome-shell.master.hi.po to Hindi
# translation of gnome-shell.po.master.hi.po to Hindi
# Hindi translation for gnome-shell.
# Copyright (C) 2011 gnome-shell's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-shell package.
@@ -6,10 +6,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell.master.hi\n"
"Project-Id-Version: gnome-shell.po.master.hi\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-03-28 08:48+0000\n"
"PO-Revision-Date: 2011-04-01 13:59+0530\n"
"POT-Creation-Date: 2011-03-28 05:30+0000\n"
"PO-Revision-Date: 2011-03-28 13:39+0530\n"
"Last-Translator: Rajesh Ranjan\n"
"Language-Team: Hindi <Indlinux>\n"
"MIME-Version: 1.0\n"
@@ -20,7 +20,7 @@ msgstr ""
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME शेल"
msgstr ""
#: ../data/gnome-shell.desktop.in.in.h:2
msgid "Window management and application launching"
@@ -316,7 +316,7 @@ msgstr ""
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d"
msgstr ""
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723
@@ -334,11 +334,11 @@ msgstr "कल"
#: ../js/ui/calendar.js:746
msgid "This week"
msgstr "इस सप्ताह"
msgstr ""
#: ../js/ui/calendar.js:754
msgid "Next week"
msgstr "अगला सप्ताह"
msgstr ""
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1000
msgid "Remove"
@@ -346,47 +346,47 @@ msgstr "हटाएँ"
#: ../js/ui/dateMenu.js:91
msgid "Date and Time Settings"
msgstr "तिथि व समय सेटिंग्स"
msgstr ""
#: ../js/ui/dateMenu.js:111
msgid "Open Calendar"
msgstr "पंचांग खोलें"
msgstr ""
#. Translators: This is the time format with date used
#. in 24-hour mode.
#: ../js/ui/dateMenu.js:164
msgid "%a %b %e, %R:%S"
msgstr "%a %b %e, %R:%S"
msgstr ""
#: ../js/ui/dateMenu.js:165
msgid "%a %b %e, %R"
msgstr "%a %b %e, %R"
msgstr ""
#. Translators: This is the time format without date used
#. in 24-hour mode.
#: ../js/ui/dateMenu.js:169
msgid "%a %R:%S"
msgstr "%a %R:%S"
msgstr ""
#: ../js/ui/dateMenu.js:170
msgid "%a %R"
msgstr "%a %R"
msgstr ""
#. Translators: This is a time format with date used
#. for AM/PM.
#: ../js/ui/dateMenu.js:177
msgid "%a %b %e, %l:%M:%S %p"
msgstr "%a %b %e, %l:%M:%S %p"
msgstr ""
#: ../js/ui/dateMenu.js:178
msgid "%a %b %e, %l:%M %p"
msgstr "%a %b %e, %l:%M %p"
msgstr ""
#. Translators: This is a time format without date used
#. for AM/PM.
#: ../js/ui/dateMenu.js:182
msgid "%a %l:%M:%S %p"
msgstr "%a %l:%M:%S %p"
msgstr ""
#: ../js/ui/dateMenu.js:183
msgid "%a %l:%M %p"
@@ -397,16 +397,16 @@ msgstr "%a %l:%M %p"
#.
#: ../js/ui/dateMenu.js:194
msgid "%A %B %e, %Y"
msgstr "%A %B %e, %Y"
msgstr ""
#: ../js/ui/docDisplay.js:19
msgid "RECENT ITEMS"
msgstr "हालिया मद"
msgstr ""
#: ../js/ui/endSessionDialog.js:63
#, c-format
msgid "Log Out %s"
msgstr "लॉगआउट %s"
msgstr ""
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:70
msgid "Log Out"
@@ -432,7 +432,7 @@ msgstr ""
#: ../js/ui/endSessionDialog.js:75 ../js/ui/endSessionDialog.js:82
msgid "Power Off"
msgstr "बिजली बंद"
msgstr ""
#: ../js/ui/endSessionDialog.js:76
msgid "Click Power Off to quit these applications and power off the system."
@@ -490,7 +490,7 @@ msgstr "त्रुटि"
#: ../js/ui/lookingGlass.js:631
msgid "Out of date"
msgstr "समयातीत"
msgstr ""
#: ../js/ui/lookingGlass.js:656
msgid "View Source"
@@ -530,7 +530,7 @@ msgstr "डैश"
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "छोड़ें %s"
msgstr ""
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
@@ -540,7 +540,7 @@ msgstr "क्रियाएँ"
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "शीर्ष पट्टी"
msgstr ""
#: ../js/ui/placeDisplay.js:122
#, c-format
@@ -623,7 +623,7 @@ msgstr "व्यस्त"
#: ../js/ui/statusMenu.js:197
msgid "My Account"
msgstr "मेरा खाता"
msgstr ""
#: ../js/ui/statusMenu.js:201
msgid "System Settings"
@@ -653,7 +653,7 @@ msgstr "ज़ूम"
#. this.menu.addMenuItem(screenKeyboard);
#: ../js/ui/status/accessibility.js:77
msgid "Visual Alerts"
msgstr "दृष्टि चेतावनी"
msgstr ""
#: ../js/ui/status/accessibility.js:80
msgid "Sticky Keys"
@@ -732,7 +732,7 @@ msgstr "कुंजीपट विन्यास"
#: ../js/ui/status/bluetooth.js:252
msgid "Mouse Settings"
msgstr "माउस सेटिंग"
msgstr ""
#: ../js/ui/status/bluetooth.js:259 ../js/ui/status/volume.js:66
msgid "Sound Settings"
@@ -851,7 +851,7 @@ msgstr ""
#: ../js/ui/status/network.js:683
msgid "Auto Ethernet"
msgstr "स्वतः इथरनेट"
msgstr ""
#: ../js/ui/status/network.js:758
msgid "Auto broadband"
@@ -893,7 +893,7 @@ msgstr "बेतार"
#: ../js/ui/status/network.js:1530
msgid "Mobile broadband"
msgstr "मोबाइल ब्रॉडबैंड"
msgstr ""
#: ../js/ui/status/network.js:1540
msgid "VPN Connections"
@@ -938,11 +938,11 @@ msgstr ""
#: ../js/ui/status/network.js:2116
msgid "Network Manager"
msgstr "संजाल प्रबंधक"
msgstr ""
#: ../js/ui/status/power.js:85
msgid "Power Settings"
msgstr "बिजली सेटिंग्स"
msgstr ""
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
@@ -1141,8 +1141,8 @@ msgstr[1] "%d घंटा पहले"
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "%d दिन पहले"
msgstr[1] "%d दिन पहले"
msgstr[0] ""
msgstr[1] ""
#: ../src/shell-global.c:1414
#, c-format

231
po/hu.po
View File

@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-04-01 13:34+0200\n"
"PO-Revision-Date: 2011-04-01 13:36+0200\n"
"POT-Creation-Date: 2011-03-19 02:47+0100\n"
"PO-Revision-Date: 2011-03-19 02:47+0100\n"
"Last-Translator: Gabor Kelemen <kelemeng at gnome dot hu>\n"
"Language-Team: Hungarian <gnome at fsf dot hu>\n"
"Language: \n"
@@ -189,27 +189,27 @@ msgid "Execution of '%s' failed:"
msgstr "„%s” végrehajtása meghiúsult:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:230
#: ../js/ui/appDisplay.js:226
msgid "All"
msgstr "Összes"
#: ../js/ui/appDisplay.js:328
#: ../js/ui/appDisplay.js:324
msgid "APPLICATIONS"
msgstr "ALKALMAZÁSOK"
#: ../js/ui/appDisplay.js:354
#: ../js/ui/appDisplay.js:350
msgid "SETTINGS"
msgstr "BEÁLLÍTÁSOK"
#: ../js/ui/appDisplay.js:625
#: ../js/ui/appDisplay.js:612
msgid "New Window"
msgstr "Új ablak"
#: ../js/ui/appDisplay.js:628
#: ../js/ui/appDisplay.js:615
msgid "Remove from Favorites"
msgstr "Eltávolítás a Kedvencek közül"
#: ../js/ui/appDisplay.js:629
#: ../js/ui/appDisplay.js:616
msgid "Add to Favorites"
msgstr "Hozzáadás a Kedvencekhez"
@@ -342,13 +342,13 @@ msgid "Nothing Scheduled"
msgstr "Semmi sincs ütemezve"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:490
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:493
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %Y %B %d"
@@ -369,7 +369,7 @@ msgstr "Ezen a héten"
msgid "Next week"
msgstr "Jövő héten"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1007
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:933
msgid "Remove"
msgstr "Eltávolítás"
@@ -437,7 +437,7 @@ msgstr "LEGUTÓBBI ELEMEK"
msgid "Log Out %s"
msgstr "%s kijelentkeztetése"
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:70
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:69
msgid "Log Out"
msgstr "Kijelentkezés"
@@ -461,45 +461,49 @@ msgstr "Automatikusan ki fog jelentkezni %d másodperc múlva."
msgid "Logging out of the system."
msgstr "Kijelentkezés a rendszerből."
#: ../js/ui/endSessionDialog.js:75 ../js/ui/endSessionDialog.js:82
msgid "Power Off"
msgstr "Kikapcsolás"
#: ../js/ui/endSessionDialog.js:74 ../js/ui/endSessionDialog.js:78
msgid "Shut Down"
msgstr "Leállítás"
#: ../js/ui/endSessionDialog.js:75
msgid "Click Shut Down to quit these applications and shut down the system."
msgstr ""
"Nyomja meg a Kijelentkezés gombot az alkalmazások bezárásához és a rendszer "
"leállításához."
#: ../js/ui/endSessionDialog.js:76
msgid "Click Power Off to quit these applications and power off the system."
msgstr "Nyomja meg a Kikapcsolás gombot az alkalmazások bezárásához és a rendszer kikapcsolásához."
#, c-format
msgid "The system will shut down automatically in %d seconds."
msgstr "A rendszer automatikusan leáll %d másodperc múlva."
#: ../js/ui/endSessionDialog.js:77
#, c-format
msgid "The system will power off automatically in %d seconds."
msgstr "A rendszer automatikusan kikapcsol %d másodperc múlva."
msgid "Shutting down the system."
msgstr "A rendszer leállítása"
#: ../js/ui/endSessionDialog.js:78
msgid "Powering off the system."
msgstr "A rendszer kikapcsolása."
#: ../js/ui/endSessionDialog.js:80 ../js/ui/endSessionDialog.js:88
#: ../js/ui/endSessionDialog.js:93
#: ../js/ui/endSessionDialog.js:84 ../js/ui/endSessionDialog.js:88
msgid "Restart"
msgstr "Újraindítás"
#: ../js/ui/endSessionDialog.js:89
#: ../js/ui/endSessionDialog.js:85
msgid "Click Restart to quit these applications and restart the system."
msgstr ""
"Nyomja meg az Újraindítás gombot az alkalmazások bezárásához és a rendszer "
"újraindításához."
#: ../js/ui/endSessionDialog.js:90
#: ../js/ui/endSessionDialog.js:86
#, c-format
msgid "The system will restart automatically in %d seconds."
msgstr "A rendszer automatikusan újraindul %d másodperc múlva."
#: ../js/ui/endSessionDialog.js:91
#: ../js/ui/endSessionDialog.js:87
msgid "Restarting the system."
msgstr "A rendszer újraindítása."
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/endSessionDialog.js:395
msgid "Confirm"
msgstr "Megerősítés"
#: ../js/ui/endSessionDialog.js:400 ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Mégse"
@@ -533,48 +537,48 @@ msgstr "Forrás megtekintése"
msgid "Web Page"
msgstr "Weblap"
#: ../js/ui/messageTray.js:1000
#: ../js/ui/messageTray.js:926
msgid "Open"
msgstr "Megnyitás"
#: ../js/ui/messageTray.js:2164
#: ../js/ui/messageTray.js:1986
msgid "System Information"
msgstr "Rendszerinformációk"
#: ../js/ui/overview.js:91
#: ../js/ui/overview.js:88
msgid "Undo"
msgstr "Visszavonás"
#: ../js/ui/overview.js:186
#: ../js/ui/overview.js:183
msgid "Windows"
msgstr "Ablakok"
#: ../js/ui/overview.js:189
#: ../js/ui/overview.js:186
msgid "Applications"
msgstr "Alkalmazások"
# FIXME - valami jobbat
#. Translators: this is the name of the dock/favorites area on
#. the left of the overview
#: ../js/ui/overview.js:205
#: ../js/ui/overview.js:202
msgid "Dash"
msgstr "Dash"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:524
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "%s bezárása"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:902
#: ../js/ui/panel.js:874
msgid "Activities"
msgstr "Tevékenységek"
#: ../js/ui/panel.js:1003
msgid "Top Bar"
msgstr "Felső sáv"
#: ../js/ui/panel.js:975
msgid "Panel"
msgstr "Panel"
#: ../js/ui/placeDisplay.js:122
#, c-format
@@ -593,85 +597,60 @@ msgstr "Kapcsolódás…"
msgid "PLACES & DEVICES"
msgstr "HELYEK ÉS ESZKÖZÖK"
#: ../js/ui/polkitAuthenticationAgent.js:74
msgid "Authentication Required"
msgstr "Hitelesítés szükséges"
#: ../js/ui/polkitAuthenticationAgent.js:108
msgid "Administrator"
msgstr "Rendszergazda"
#: ../js/ui/polkitAuthenticationAgent.js:176
msgid "Authenticate"
msgstr "Hitelesítés"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
msgid "Sorry, that didn't work. Please try again."
msgstr "A hitelesítés sikertelen. Próbálja újra."
#: ../js/ui/polkitAuthenticationAgent.js:276
msgid "Password:"
msgstr "Jelszó:"
#. Translators: this MUST be either "toggle-switch-us"
#. (for toggle switches containing the English words
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:679
#: ../js/ui/popupMenu.js:636
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:205
#: ../js/ui/runDialog.js:201
msgid "Please enter a command:"
msgstr "Adjon meg egy parancsot:"
#: ../js/ui/searchDisplay.js:310
#: ../js/ui/searchDisplay.js:283
msgid "Searching..."
msgstr "Keresés…"
#: ../js/ui/searchDisplay.js:324
#: ../js/ui/searchDisplay.js:297
msgid "No matching results."
msgstr "Nincs találat."
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:163
#: ../js/ui/statusMenu.js:228
#: ../js/ui/statusMenu.js:114 ../js/ui/statusMenu.js:178
msgid "Power Off..."
msgstr "Kikapcsolás…"
#: ../js/ui/statusMenu.js:163 ../js/ui/statusMenu.js:227
#: ../js/ui/statusMenu.js:116 ../js/ui/statusMenu.js:177
msgid "Suspend"
msgstr "Felfüggesztés"
#: ../js/ui/statusMenu.js:184
#: ../js/ui/statusMenu.js:137
msgid "Available"
msgstr "Elérhető"
#: ../js/ui/statusMenu.js:189
#: ../js/ui/statusMenu.js:142
msgid "Busy"
msgstr "Elfoglalt"
#: ../js/ui/statusMenu.js:197
#: ../js/ui/statusMenu.js:150
msgid "My Account"
msgstr "Saját fiók"
#: ../js/ui/statusMenu.js:201
#: ../js/ui/statusMenu.js:154
msgid "System Settings"
msgstr "Rendszerbeállítások"
#: ../js/ui/statusMenu.js:208
#: ../js/ui/statusMenu.js:161
msgid "Lock Screen"
msgstr "Képernyő zárolása"
#: ../js/ui/statusMenu.js:213
#: ../js/ui/statusMenu.js:165
msgid "Switch User"
msgstr "Felhasználóváltás"
#: ../js/ui/statusMenu.js:218
#: ../js/ui/statusMenu.js:170
msgid "Log Out..."
msgstr "Kijelentkezés…"
@@ -838,139 +817,133 @@ msgstr "Billentyűzetkiosztás megjelenítése…"
msgid "Localization Settings"
msgstr "Lokalizációs beállítások"
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1454
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1393
msgid "<unknown>"
msgstr "<ismeretlen>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:311
#: ../js/ui/status/network.js:295
msgid "disabled"
msgstr "tiltva"
#: ../js/ui/status/network.js:494
#: ../js/ui/status/network.js:476
msgid "connecting..."
msgstr "kapcsolódás…"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:497
#: ../js/ui/status/network.js:479
msgid "authentication required"
msgstr "hitelesítés szükséges"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:507
msgid "firmware missing"
msgstr "hiányzó firmware"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:514
#: ../js/ui/status/network.js:485
msgid "cable unplugged"
msgstr "vezeték kihúzva"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:519
#: ../js/ui/status/network.js:489
msgid "unavailable"
msgstr "nem érhető el"
#: ../js/ui/status/network.js:521
#: ../js/ui/status/network.js:491
msgid "connection failed"
msgstr "a kapcsolódás meghiúsult"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:602 ../js/ui/status/network.js:1402
#: ../js/ui/status/network.js:571 ../js/ui/status/network.js:1341
msgid "Connected (private)"
msgstr "Kapcsolódva (privát)"
#: ../js/ui/status/network.js:683
#: ../js/ui/status/network.js:636
msgid "Auto Ethernet"
msgstr "Auto Ethernet"
#: ../js/ui/status/network.js:758
#: ../js/ui/status/network.js:697
msgid "Auto broadband"
msgstr "Auto széles sáv"
#: ../js/ui/status/network.js:761
#: ../js/ui/status/network.js:700
msgid "Auto dial-up"
msgstr "Auto betárcsázós"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:904 ../js/ui/status/network.js:1414
#: ../js/ui/status/network.js:843 ../js/ui/status/network.js:1353
#, c-format
msgid "Auto %s"
msgstr "Auto %s"
#: ../js/ui/status/network.js:906
#: ../js/ui/status/network.js:845
msgid "Auto bluetooth"
msgstr "Auto Bluetooth"
#: ../js/ui/status/network.js:1416
#: ../js/ui/status/network.js:1355
msgid "Auto wireless"
msgstr "Auto vezeték nélküli"
#: ../js/ui/status/network.js:1474
#: ../js/ui/status/network.js:1413
msgid "More..."
msgstr "Több…"
#: ../js/ui/status/network.js:1497
#: ../js/ui/status/network.js:1436
msgid "Enable networking"
msgstr "Hálózat engedélyezése"
#: ../js/ui/status/network.js:1509
#: ../js/ui/status/network.js:1448
msgid "Wired"
msgstr "Vezetékes"
#: ../js/ui/status/network.js:1520
#: ../js/ui/status/network.js:1459
msgid "Wireless"
msgstr "Vezeték nélküli"
#: ../js/ui/status/network.js:1530
#: ../js/ui/status/network.js:1469
msgid "Mobile broadband"
msgstr "Mobil széles sáv"
#: ../js/ui/status/network.js:1540
#: ../js/ui/status/network.js:1479
msgid "VPN Connections"
msgstr "VPN kapcsolatok"
#: ../js/ui/status/network.js:1549
#: ../js/ui/status/network.js:1488
msgid "Network Settings"
msgstr "Hálózati beállítások"
#: ../js/ui/status/network.js:1844
#: ../js/ui/status/network.js:1783
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Csatlakozott a(z) „%s” mobil széles sávú kapcsolathoz"
#: ../js/ui/status/network.js:1848
#: ../js/ui/status/network.js:1787
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Csatlakozott a(z) „%s” vezeték nélküli hálózathoz"
#: ../js/ui/status/network.js:1852
#: ../js/ui/status/network.js:1791
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Csatlakozott a(z) „%s” vezetékes hálózathoz"
#: ../js/ui/status/network.js:1856
#: ../js/ui/status/network.js:1795
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Csatlakozott a(z) „%s” VPN hálózathoz"
#: ../js/ui/status/network.js:1861
#: ../js/ui/status/network.js:1800
#, c-format
msgid "You're now connected to '%s'"
msgstr "Csatlakozott ehhez: „%s”"
#: ../js/ui/status/network.js:1869
#: ../js/ui/status/network.js:1808
msgid "Connection established"
msgstr "Kapcsolat létrejött"
#: ../js/ui/status/network.js:1991
#: ../js/ui/status/network.js:1930
msgid "Networking is disabled"
msgstr "Hálózat letiltva"
#: ../js/ui/status/network.js:2116
#: ../js/ui/status/network.js:2055
msgid "Network Manager"
msgstr "Hálózatkezelő"
@@ -1060,7 +1033,7 @@ msgstr "Táblagép"
msgid "Computer"
msgstr "Számítógép"
#: ../js/ui/status/power.js:250 ../src/shell-app-system.c:1088
#: ../js/ui/status/power.js:250 ../src/shell-app-system.c:961
msgid "Unknown"
msgstr "Ismeretlen"
@@ -1072,22 +1045,22 @@ msgstr "Hangerő"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:332
#, c-format
msgid "%s is online."
msgstr "%s elérhető."
#: ../js/ui/telepathyClient.js:340
#: ../js/ui/telepathyClient.js:337
#, c-format
msgid "%s is offline."
msgstr "%s kilépett."
#: ../js/ui/telepathyClient.js:343
#: ../js/ui/telepathyClient.js:340
#, c-format
msgid "%s is away."
msgstr "%s távol van."
#: ../js/ui/telepathyClient.js:346
#: ../js/ui/telepathyClient.js:343
#, c-format
msgid "%s is busy."
msgstr "%s elfoglalt."
@@ -1095,7 +1068,7 @@ msgstr "%s elfoglalt."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:482
#: ../js/ui/telepathyClient.js:474
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Elküldve: %A, %X"
@@ -1104,11 +1077,11 @@ msgstr "Elküldve: %A, %X"
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters.
#: ../js/ui/viewSelector.js:122
#: ../js/ui/viewSelector.js:119
msgid "Type to search..."
msgstr "Gépeljen a kereséshez…"
#: ../js/ui/viewSelector.js:142 ../src/shell-util.c:250
#: ../js/ui/viewSelector.js:139 ../src/shell-util.c:250
msgid "Search"
msgstr "Oldalsáv"
@@ -1144,7 +1117,7 @@ msgstr[1] "%u bemenet"
msgid "System Sounds"
msgstr "Rendszerhangok"
#: ../src/main.c:446
#: ../src/main.c:397
msgid "Print version"
msgstr "Verzió kiírása"
@@ -1153,32 +1126,32 @@ msgstr "Verzió kiírása"
msgid "Failed to launch '%s'"
msgstr "„%s” indítása meghiúsult"
#: ../src/shell-global.c:1395
#: ../src/shell-global.c:1340
msgid "Less than a minute ago"
msgstr "Kevesebb, mint egy perce"
#: ../src/shell-global.c:1399
#: ../src/shell-global.c:1344
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
msgstr[0] "%d perce"
msgstr[1] "%d perce"
#: ../src/shell-global.c:1404
#: ../src/shell-global.c:1349
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
msgstr[0] "%d órája"
msgstr[1] "%d órája"
#: ../src/shell-global.c:1409
#: ../src/shell-global.c:1354
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "%d napja"
msgstr[1] "%d napja"
#: ../src/shell-global.c:1414
#: ../src/shell-global.c:1359
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"

111
po/it.po
View File

@@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-04-03 10:34+0200\n"
"PO-Revision-Date: 2011-04-03 10:35+0200\n"
"POT-Creation-Date: 2011-03-24 22:46+0100\n"
"PO-Revision-Date: 2011-03-24 22:58+0100\n"
"Last-Translator: Luca Ferretti <lferrett@gnome.org>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
"Language: it\n"
@@ -345,13 +345,13 @@ msgid "Nothing Scheduled"
msgstr "Nessun evento"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:490
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:493
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e %B %Y"
@@ -372,7 +372,7 @@ msgstr "Questa settimana"
msgid "Next week"
msgstr "Prossima settimana"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1007
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:994
msgid "Remove"
msgstr "Rimuovi"
@@ -471,8 +471,7 @@ msgstr "Spegni"
#: ../js/ui/endSessionDialog.js:76
msgid "Click Power Off to quit these applications and power off the system."
msgstr ""
"Fare clic su «Spegni» per chiudere queste applicazioni e spegnere il sistema."
msgstr "Fare clic su «Spegni» per chiudere queste applicazioni e spegnere il sistema."
#: ../js/ui/endSessionDialog.js:77
#, c-format
@@ -540,11 +539,11 @@ msgstr "Visualizza sorgente"
msgid "Web Page"
msgstr "Pagina web"
#: ../js/ui/messageTray.js:1000
#: ../js/ui/messageTray.js:987
msgid "Open"
msgstr "Apri"
#: ../js/ui/messageTray.js:2164
#: ../js/ui/messageTray.js:2145
msgid "System Information"
msgstr "Informazione di sistema"
@@ -568,18 +567,18 @@ msgid "Dash"
msgstr "Dash"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:524
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Chiudi %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:902
#: ../js/ui/panel.js:878
msgid "Activities"
msgstr "Attività"
#: ../js/ui/panel.js:1003
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "Barra superiore"
@@ -613,15 +612,11 @@ msgstr "Amministratore"
msgid "Authenticate"
msgstr "Autentica"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
#: ../js/ui/polkitAuthenticationAgent.js:260
msgid "Sorry, that didn't work. Please try again."
msgstr "Errore nell'autenticazione. Provare di nuovo."
msgstr ""
#: ../js/ui/polkitAuthenticationAgent.js:276
#: ../js/ui/polkitAuthenticationAgent.js:272
msgid "Password:"
msgstr "Password:"
@@ -638,11 +633,11 @@ msgstr "toggle-switch-us"
msgid "Please enter a command:"
msgstr "Inserire un comando:"
#: ../js/ui/searchDisplay.js:311
#: ../js/ui/searchDisplay.js:310
msgid "Searching..."
msgstr "Ricerca..."
#: ../js/ui/searchDisplay.js:325
#: ../js/ui/searchDisplay.js:324
msgid "No matching results."
msgstr "Nessun risultato corrispondente."
@@ -849,139 +844,133 @@ msgstr "Mostra disposizione tastiera..."
msgid "Localization Settings"
msgstr "Impostazioni localizzazione"
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1467
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1393
msgid "<unknown>"
msgstr "<sconosciuto>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:318
#: ../js/ui/status/network.js:295
msgid "disabled"
msgstr "disabilitata"
#: ../js/ui/status/network.js:501
#: ../js/ui/status/network.js:476
msgid "connecting..."
msgstr "connessione..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:504
#: ../js/ui/status/network.js:479
msgid "authentication required"
msgstr "richiesta autenticazione"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:514
msgid "firmware missing"
msgstr "firmware mancante"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:521
#: ../js/ui/status/network.js:485
msgid "cable unplugged"
msgstr "cavo scollegato"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:526
#: ../js/ui/status/network.js:489
msgid "unavailable"
msgstr "non disponibile"
#: ../js/ui/status/network.js:528
#: ../js/ui/status/network.js:491
msgid "connection failed"
msgstr "connessione non riuscita"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:609 ../js/ui/status/network.js:1415
#: ../js/ui/status/network.js:571 ../js/ui/status/network.js:1341
msgid "Connected (private)"
msgstr "Connessa (privata)"
#: ../js/ui/status/network.js:690
#: ../js/ui/status/network.js:636
msgid "Auto Ethernet"
msgstr "Ethernet automatica"
#: ../js/ui/status/network.js:765
#: ../js/ui/status/network.js:697
msgid "Auto broadband"
msgstr "Banda larga automatica"
#: ../js/ui/status/network.js:768
#: ../js/ui/status/network.js:700
msgid "Auto dial-up"
msgstr "Dial-up automatica"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:911 ../js/ui/status/network.js:1427
#: ../js/ui/status/network.js:843 ../js/ui/status/network.js:1353
#, c-format
msgid "Auto %s"
msgstr "%s automatica"
#: ../js/ui/status/network.js:913
#: ../js/ui/status/network.js:845
msgid "Auto bluetooth"
msgstr "Bluetooth automatica"
#: ../js/ui/status/network.js:1429
#: ../js/ui/status/network.js:1355
msgid "Auto wireless"
msgstr "Wireless automatica"
#: ../js/ui/status/network.js:1487
#: ../js/ui/status/network.js:1413
msgid "More..."
msgstr "Altro..."
#: ../js/ui/status/network.js:1510
#: ../js/ui/status/network.js:1436
msgid "Enable networking"
msgstr "Abilita rete"
#: ../js/ui/status/network.js:1522
#: ../js/ui/status/network.js:1448
msgid "Wired"
msgstr "Via cavo"
#: ../js/ui/status/network.js:1533
#: ../js/ui/status/network.js:1459
msgid "Wireless"
msgstr "Wireless"
#: ../js/ui/status/network.js:1543
#: ../js/ui/status/network.js:1469
msgid "Mobile broadband"
msgstr "Banda larga mobile"
#: ../js/ui/status/network.js:1553
#: ../js/ui/status/network.js:1479
msgid "VPN Connections"
msgstr "Connessioni VPN"
#: ../js/ui/status/network.js:1565
#: ../js/ui/status/network.js:1488
msgid "Network Settings"
msgstr "Impostazioni rete"
#: ../js/ui/status/network.js:1860
#: ../js/ui/status/network.js:1783
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Connessi alla rete mobile «%s»"
#: ../js/ui/status/network.js:1864
#: ../js/ui/status/network.js:1787
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Connessi alla rete wireless «%s»"
#: ../js/ui/status/network.js:1868
#: ../js/ui/status/network.js:1791
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Connessi alla rete via cavo «%s»"
#: ../js/ui/status/network.js:1872
#: ../js/ui/status/network.js:1795
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Connessi alla rete VPN «%s»"
#: ../js/ui/status/network.js:1877
#: ../js/ui/status/network.js:1800
#, c-format
msgid "You're now connected to '%s'"
msgstr "Connessi a «%s»"
#: ../js/ui/status/network.js:1885
#: ../js/ui/status/network.js:1808
msgid "Connection established"
msgstr "Connessione stabilita"
#: ../js/ui/status/network.js:2007
#: ../js/ui/status/network.js:1930
msgid "Networking is disabled"
msgstr "Rete disabilitata"
#: ../js/ui/status/network.js:2132
#: ../js/ui/status/network.js:2055
msgid "Network Manager"
msgstr "Gestore reti"
@@ -1084,22 +1073,22 @@ msgstr "Volume"
msgid "Microphone"
msgstr "Microfono"
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:332
#, c-format
msgid "%s is online."
msgstr "%s è disponibile."
#: ../js/ui/telepathyClient.js:340
#: ../js/ui/telepathyClient.js:337
#, c-format
msgid "%s is offline."
msgstr "%s è fuori rete."
#: ../js/ui/telepathyClient.js:343
#: ../js/ui/telepathyClient.js:340
#, c-format
msgid "%s is away."
msgstr "%s è assente."
#: ../js/ui/telepathyClient.js:346
#: ../js/ui/telepathyClient.js:343
#, c-format
msgid "%s is busy."
msgstr "%s non è disponibile."
@@ -1107,7 +1096,7 @@ msgstr "%s non è disponibile."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:482
#: ../js/ui/telepathyClient.js:474
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Inviato alle %-H.%M di %A"

1350
po/ja.po

File diff suppressed because it is too large Load Diff

View File

@@ -7,8 +7,8 @@ msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-03-25 20:20+0000\n"
"PO-Revision-Date: 2011-04-02 19:58+0900\n"
"POT-Creation-Date: 2011-03-24 08:03+0000\n"
"PO-Revision-Date: 2011-03-25 21:56+0900\n"
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
"Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
"MIME-Version: 1.0\n"
@@ -617,8 +617,7 @@ msgstr "검색하는 중..."
msgid "No matching results."
msgstr "일치하는 결과가 없습니다."
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:163
#: ../js/ui/statusMenu.js:228
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:228
msgid "Power Off..."
msgstr "컴퓨터 끄기..."
@@ -817,7 +816,7 @@ msgstr "키보드 배치 보기..."
msgid "Localization Settings"
msgstr "지역화 설정"
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1437
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1393
msgid "<unknown>"
msgstr "<알 수 없음>"
@@ -826,130 +825,124 @@ msgstr "<알 수 없음>"
msgid "disabled"
msgstr "사용 않음"
#: ../js/ui/status/network.js:478
#: ../js/ui/status/network.js:476
msgid "connecting..."
msgstr "연결하는 중..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:481
#: ../js/ui/status/network.js:479
msgid "authentication required"
msgstr "인증이 필요합니다"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:491
msgid "firmware missing"
msgstr "펌웨어 없음"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:498
#: ../js/ui/status/network.js:485
msgid "cable unplugged"
msgstr "케이블이 분리되었습니다"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:503
#: ../js/ui/status/network.js:489
msgid "unavailable"
msgstr "사용 불가"
#: ../js/ui/status/network.js:505
#: ../js/ui/status/network.js:491
msgid "connection failed"
msgstr "연결이 실패했습니다"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:585 ../js/ui/status/network.js:1385
#: ../js/ui/status/network.js:571 ../js/ui/status/network.js:1341
msgid "Connected (private)"
msgstr "연결됨 (개인)"
#: ../js/ui/status/network.js:666
#: ../js/ui/status/network.js:636
msgid "Auto Ethernet"
msgstr "자동 이더넷"
#: ../js/ui/status/network.js:741
#: ../js/ui/status/network.js:697
msgid "Auto broadband"
msgstr "자동 고속 통신망"
#: ../js/ui/status/network.js:744
#: ../js/ui/status/network.js:700
msgid "Auto dial-up"
msgstr "자동 전화접속"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:887 ../js/ui/status/network.js:1397
#: ../js/ui/status/network.js:843 ../js/ui/status/network.js:1353
#, c-format
msgid "Auto %s"
msgstr "자동 %s"
#: ../js/ui/status/network.js:889
#: ../js/ui/status/network.js:845
msgid "Auto bluetooth"
msgstr "자동 블루투스"
#: ../js/ui/status/network.js:1399
#: ../js/ui/status/network.js:1355
msgid "Auto wireless"
msgstr "자동 무선"
#: ../js/ui/status/network.js:1457
#: ../js/ui/status/network.js:1413
msgid "More..."
msgstr "더 보기..."
#: ../js/ui/status/network.js:1480
#: ../js/ui/status/network.js:1436
msgid "Enable networking"
msgstr "네트워크 사용"
#: ../js/ui/status/network.js:1492
#: ../js/ui/status/network.js:1448
msgid "Wired"
msgstr "유선"
#: ../js/ui/status/network.js:1503
#: ../js/ui/status/network.js:1459
msgid "Wireless"
msgstr "무선"
#: ../js/ui/status/network.js:1513
#: ../js/ui/status/network.js:1469
msgid "Mobile broadband"
msgstr "휴대전화 네트워크"
#: ../js/ui/status/network.js:1523
#: ../js/ui/status/network.js:1479
msgid "VPN Connections"
msgstr "VPN 연결"
#: ../js/ui/status/network.js:1532
#: ../js/ui/status/network.js:1488
msgid "Network Settings"
msgstr "네트워크 설정"
#: ../js/ui/status/network.js:1827
#: ../js/ui/status/network.js:1783
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "'%s' 휴대전화 네트워크에 연결되었습니다"
#: ../js/ui/status/network.js:1831
#: ../js/ui/status/network.js:1787
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "'%s' 무선 네트워크에 연결되었습니다"
#: ../js/ui/status/network.js:1835
#: ../js/ui/status/network.js:1791
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "'%s' 유선 네트워크에 연결되었습니다"
#: ../js/ui/status/network.js:1839
#: ../js/ui/status/network.js:1795
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "'%s' VPN 네트워크에 연결되었습니다"
#: ../js/ui/status/network.js:1844
#: ../js/ui/status/network.js:1800
#, c-format
msgid "You're now connected to '%s'"
msgstr "이제 '%s'에 연결되었습니다"
#: ../js/ui/status/network.js:1852
#: ../js/ui/status/network.js:1808
msgid "Connection established"
msgstr "연결이 되었습니다"
#: ../js/ui/status/network.js:1974
#: ../js/ui/status/network.js:1930
msgid "Networking is disabled"
msgstr "네트워크를 사용하지 않습니다"
#: ../js/ui/status/network.js:2099
#: ../js/ui/status/network.js:2055
msgid "Network Manager"
msgstr "네트워크 관리"

243
po/lt.po
View File

@@ -6,9 +6,9 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-04-01 22:30+0200\n"
"PO-Revision-Date: 2011-04-01 22:27+0100\n"
"Last-Translator: Gintautas Miliauskas <gintautas@miliauskas.lt>\n"
"POT-Creation-Date: 2011-03-21 14:25+0100\n"
"PO-Revision-Date: 2011-03-19 14:56+0300\n"
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
"Language-Team: Lithuanian <gnome-lt@lists.akl.lt>\n"
"Language: lt\n"
"MIME-Version: 1.0\n"
@@ -188,27 +188,27 @@ msgid "Execution of '%s' failed:"
msgstr "Nepavyko paleisti „%s“:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:230
#: ../js/ui/appDisplay.js:226
msgid "All"
msgstr "Visi"
#: ../js/ui/appDisplay.js:328
#: ../js/ui/appDisplay.js:324
msgid "APPLICATIONS"
msgstr "PROGRAMOS"
#: ../js/ui/appDisplay.js:354
#: ../js/ui/appDisplay.js:350
msgid "SETTINGS"
msgstr "NUSTATYMAI"
#: ../js/ui/appDisplay.js:625
#: ../js/ui/appDisplay.js:616
msgid "New Window"
msgstr "Naujas langas"
#: ../js/ui/appDisplay.js:628
#: ../js/ui/appDisplay.js:619
msgid "Remove from Favorites"
msgstr "Pašalinti iš mėgstamų"
#: ../js/ui/appDisplay.js:629
#: ../js/ui/appDisplay.js:620
msgid "Add to Favorites"
msgstr "Pridėti prie mėgstamų"
@@ -341,13 +341,13 @@ msgid "Nothing Scheduled"
msgstr "Niekas nesuplanuota"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:490
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:493
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %Y %B %d"
@@ -368,7 +368,7 @@ msgstr "Šią savaitę"
msgid "Next week"
msgstr "Kitą savaitę"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1007
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:933
msgid "Remove"
msgstr "Pašalinti"
@@ -436,7 +436,7 @@ msgstr "PASKUTINIEJI ELEMENTAI"
msgid "Log Out %s"
msgstr "Atjungti %s"
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:70
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:69
msgid "Log Out"
msgstr "Atsijungti"
@@ -460,46 +460,48 @@ msgstr "Jūs būsite automatiškai atjungtas po %d sekundžių."
msgid "Logging out of the system."
msgstr "Atsijungiama nuo sistemos."
#: ../js/ui/endSessionDialog.js:75 ../js/ui/endSessionDialog.js:82
msgid "Power Off"
#: ../js/ui/endSessionDialog.js:74 ../js/ui/endSessionDialog.js:78
msgid "Shut Down"
msgstr "Išjungti"
#: ../js/ui/endSessionDialog.js:76
msgid "Click Power Off to quit these applications and power off the system."
#: ../js/ui/endSessionDialog.js:75
msgid "Click Shut Down to quit these applications and shut down the system."
msgstr ""
"Spauskite „Išjungti“, jei norite užverti šias programas ir išjungti sistemą."
"Spauskite „išjungti“, jei norite užverti šias programas ir išjungti sistemą."
#: ../js/ui/endSessionDialog.js:77
#: ../js/ui/endSessionDialog.js:76
#, c-format
msgid "The system will power off automatically in %d seconds."
msgid "The system will shut down automatically in %d seconds."
msgstr "Sistema automatiškai išsijungs po %d sekundžių."
#: ../js/ui/endSessionDialog.js:78
msgid "Powering off the system."
msgstr "Sistema išjungiama."
#: ../js/ui/endSessionDialog.js:77
msgid "Shutting down the system."
msgstr "Sistemos išjungimas."
#: ../js/ui/endSessionDialog.js:80 ../js/ui/endSessionDialog.js:88
#: ../js/ui/endSessionDialog.js:93
#: ../js/ui/endSessionDialog.js:84 ../js/ui/endSessionDialog.js:88
msgid "Restart"
msgstr "Įkelti iš naujo"
#: ../js/ui/endSessionDialog.js:89
#: ../js/ui/endSessionDialog.js:85
msgid "Click Restart to quit these applications and restart the system."
msgstr ""
"Spauskite „įkelti iš naujo“, jei norite užverti šias programas ir įkelti "
"sistemą iš naujo."
#: ../js/ui/endSessionDialog.js:90
#: ../js/ui/endSessionDialog.js:86
#, c-format
msgid "The system will restart automatically in %d seconds."
msgstr "Sistema bus įkelta iš naujo po %d sekundžių."
#: ../js/ui/endSessionDialog.js:91
#: ../js/ui/endSessionDialog.js:87
msgid "Restarting the system."
msgstr "Sistemos įkėlimas iš naujo"
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/endSessionDialog.js:395
msgid "Confirm"
msgstr "Patvirtinti"
#: ../js/ui/endSessionDialog.js:400 ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Atšaukti"
@@ -533,47 +535,47 @@ msgstr "Žiūrėti šaltinį"
msgid "Web Page"
msgstr "Tinklalapis"
#: ../js/ui/messageTray.js:1000
#: ../js/ui/messageTray.js:926
msgid "Open"
msgstr "Atverti"
#: ../js/ui/messageTray.js:2164
#: ../js/ui/messageTray.js:1986
msgid "System Information"
msgstr "Sistemos informacija"
#: ../js/ui/overview.js:91
#: ../js/ui/overview.js:88
msgid "Undo"
msgstr "Atšaukti"
#: ../js/ui/overview.js:186
#: ../js/ui/overview.js:183
msgid "Windows"
msgstr "Langai"
#: ../js/ui/overview.js:189
#: ../js/ui/overview.js:186
msgid "Applications"
msgstr "Programos"
#. Translators: this is the name of the dock/favorites area on
#. the left of the overview
#: ../js/ui/overview.js:205
#: ../js/ui/overview.js:202
msgid "Dash"
msgstr "Paleidimo sritis"
msgstr ""
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:524
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Užverti %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:902
#: ../js/ui/panel.js:874
msgid "Activities"
msgstr "Apžvalga"
#: ../js/ui/panel.js:1003
msgid "Top Bar"
msgstr "Viršutinė juosta"
#: ../js/ui/panel.js:975
msgid "Panel"
msgstr "Skydelis"
#: ../js/ui/placeDisplay.js:122
#, c-format
@@ -592,85 +594,60 @@ msgstr "Prisijungti prie..."
msgid "PLACES & DEVICES"
msgstr "VIETOS ir ĮRENGINIAI"
#: ../js/ui/polkitAuthenticationAgent.js:74
msgid "Authentication Required"
msgstr "Reikia patvirtinti tapatybę"
#: ../js/ui/polkitAuthenticationAgent.js:108
msgid "Administrator"
msgstr "Administratorius"
#: ../js/ui/polkitAuthenticationAgent.js:176
msgid "Authenticate"
msgstr "Patvirtinti tapatybę"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
msgid "Sorry, that didn't work. Please try again."
msgstr "Atsiprašome, tai nesuveikė. Pabandykite dar kartą."
#: ../js/ui/polkitAuthenticationAgent.js:276
msgid "Password:"
msgstr "Slaptažodis:"
#. Translators: this MUST be either "toggle-switch-us"
#. (for toggle switches containing the English words
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:679
#: ../js/ui/popupMenu.js:636
msgid "toggle-switch-us"
msgstr "toggle-switch-us"
#: ../js/ui/runDialog.js:205
#: ../js/ui/runDialog.js:201
msgid "Please enter a command:"
msgstr "Įveskite komandą:"
#: ../js/ui/searchDisplay.js:310
#: ../js/ui/searchDisplay.js:287
msgid "Searching..."
msgstr "Ieškoma..."
#: ../js/ui/searchDisplay.js:324
#: ../js/ui/searchDisplay.js:301
msgid "No matching results."
msgstr "Nerasta atitikmenų."
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:163
#: ../js/ui/statusMenu.js:228
#: ../js/ui/statusMenu.js:114 ../js/ui/statusMenu.js:178
msgid "Power Off..."
msgstr "Išjungti..."
#: ../js/ui/statusMenu.js:163 ../js/ui/statusMenu.js:227
#: ../js/ui/statusMenu.js:116 ../js/ui/statusMenu.js:177
msgid "Suspend"
msgstr "Užmigdyti"
#: ../js/ui/statusMenu.js:184
#: ../js/ui/statusMenu.js:137
msgid "Available"
msgstr "Esu"
#: ../js/ui/statusMenu.js:189
#: ../js/ui/statusMenu.js:142
msgid "Busy"
msgstr "Užsiėmęs (-usi)"
#: ../js/ui/statusMenu.js:197
#: ../js/ui/statusMenu.js:150
msgid "My Account"
msgstr "Mano paskyra"
#: ../js/ui/statusMenu.js:201
#: ../js/ui/statusMenu.js:154
msgid "System Settings"
msgstr "Sistemos nustatymai"
#: ../js/ui/statusMenu.js:208
#: ../js/ui/statusMenu.js:161
msgid "Lock Screen"
msgstr "Užrakinti ekraną"
#: ../js/ui/statusMenu.js:213
#: ../js/ui/statusMenu.js:165
msgid "Switch User"
msgstr "Keisti naudotoją"
#: ../js/ui/statusMenu.js:218
#: ../js/ui/statusMenu.js:170
msgid "Log Out..."
msgstr "Atsijungti ..."
@@ -837,139 +814,133 @@ msgstr "Rodyti klaviatūros išdėstymą..."
msgid "Localization Settings"
msgstr "Lokalizacijos nustatymai"
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1454
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1393
msgid "<unknown>"
msgstr "<nežinoma>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:311
#: ../js/ui/status/network.js:295
msgid "disabled"
msgstr "išjungta"
#: ../js/ui/status/network.js:494
#: ../js/ui/status/network.js:476
msgid "connecting..."
msgstr "jungiamasi..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:497
#: ../js/ui/status/network.js:479
msgid "authentication required"
msgstr "reikia patvirtinti tapatybę"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:507
msgid "firmware missing"
msgstr "Trūksta integruotos programinės įrangos (firmware)"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:514
#: ../js/ui/status/network.js:485
msgid "cable unplugged"
msgstr "kabelis neįjungtas"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:519
#: ../js/ui/status/network.js:489
msgid "unavailable"
msgstr "nepasiekiamas"
#: ../js/ui/status/network.js:521
#: ../js/ui/status/network.js:491
msgid "connection failed"
msgstr "nepavyko prisijungti"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:602 ../js/ui/status/network.js:1402
#: ../js/ui/status/network.js:571 ../js/ui/status/network.js:1341
msgid "Connected (private)"
msgstr "Prisijungta (privatus)"
#: ../js/ui/status/network.js:683
#: ../js/ui/status/network.js:636
msgid "Auto Ethernet"
msgstr "Automatinis vietinis"
#: ../js/ui/status/network.js:758
#: ../js/ui/status/network.js:697
msgid "Auto broadband"
msgstr "Automatinis plačiajuostis"
#: ../js/ui/status/network.js:761
#: ../js/ui/status/network.js:700
msgid "Auto dial-up"
msgstr "Automatinis telefoninis"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:904 ../js/ui/status/network.js:1414
#: ../js/ui/status/network.js:843 ../js/ui/status/network.js:1353
#, c-format
msgid "Auto %s"
msgstr "Automatinis %s"
#: ../js/ui/status/network.js:906
#: ../js/ui/status/network.js:845
msgid "Auto bluetooth"
msgstr "Automatinis bluetooth"
#: ../js/ui/status/network.js:1416
#: ../js/ui/status/network.js:1355
msgid "Auto wireless"
msgstr "Automatinis belaidis"
#: ../js/ui/status/network.js:1474
#: ../js/ui/status/network.js:1413
msgid "More..."
msgstr "Daugiau..."
#: ../js/ui/status/network.js:1497
#: ../js/ui/status/network.js:1436
msgid "Enable networking"
msgstr "Įjungti tinklą"
#: ../js/ui/status/network.js:1509
#: ../js/ui/status/network.js:1448
msgid "Wired"
msgstr "Laidinis"
#: ../js/ui/status/network.js:1520
#: ../js/ui/status/network.js:1459
msgid "Wireless"
msgstr "Belaidis"
#: ../js/ui/status/network.js:1530
#: ../js/ui/status/network.js:1469
msgid "Mobile broadband"
msgstr "Mobilus plačiajuostis"
#: ../js/ui/status/network.js:1540
#: ../js/ui/status/network.js:1479
msgid "VPN Connections"
msgstr "VPN ryšiai"
#: ../js/ui/status/network.js:1549
#: ../js/ui/status/network.js:1488
msgid "Network Settings"
msgstr "Tinklo nustatymai"
#: ../js/ui/status/network.js:1844
#: ../js/ui/status/network.js:1783
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Dabar esate prisijungęs prie mobilaus plačiajuosčio ryšio „%s“"
#: ../js/ui/status/network.js:1848
#: ../js/ui/status/network.js:1787
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Dabar esate prisijungęs prie belaidžio tinklo „%s“"
#: ../js/ui/status/network.js:1852
#: ../js/ui/status/network.js:1791
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Dabar esate prisijungęs prie laidinio tinklo „%s“"
#: ../js/ui/status/network.js:1856
#: ../js/ui/status/network.js:1795
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Dabar esate prisijungęs prie VPN tinklo „%s“"
#: ../js/ui/status/network.js:1861
#: ../js/ui/status/network.js:1800
#, c-format
msgid "You're now connected to '%s'"
msgstr "Dabar esate prisijungęs prie „%s“"
#: ../js/ui/status/network.js:1869
#: ../js/ui/status/network.js:1808
msgid "Connection established"
msgstr "Ryšys užmegstas"
#: ../js/ui/status/network.js:1991
#: ../js/ui/status/network.js:1930
msgid "Networking is disabled"
msgstr "Tinklas išjungtas"
#: ../js/ui/status/network.js:2116
#: ../js/ui/status/network.js:2055
msgid "Network Manager"
msgstr "Tinklo valdymas"
@@ -1075,22 +1046,22 @@ msgstr "Garsumas"
msgid "Microphone"
msgstr "Mikrofonas"
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:332
#, c-format
msgid "%s is online."
msgstr "%s yra prisijungęs"
#: ../js/ui/telepathyClient.js:340
#: ../js/ui/telepathyClient.js:337
#, c-format
msgid "%s is offline."
msgstr "%s yra atsijungęs"
#: ../js/ui/telepathyClient.js:343
#: ../js/ui/telepathyClient.js:340
#, c-format
msgid "%s is away."
msgstr "%s yra nepasiekiamas"
#: ../js/ui/telepathyClient.js:346
#: ../js/ui/telepathyClient.js:343
#, c-format
msgid "%s is busy."
msgstr "%s yra užsiėmęs."
@@ -1098,7 +1069,7 @@ msgstr "%s yra užsiėmęs."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:482
#: ../js/ui/telepathyClient.js:474
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Išsiųsta %A %H:%M:%S"
@@ -1149,7 +1120,7 @@ msgstr[2] "%u įvestys"
msgid "System Sounds"
msgstr "Sistemos garsai"
#: ../src/main.c:446
#: ../src/main.c:397
msgid "Print version"
msgstr "Atspausdinti versiją"
@@ -1158,11 +1129,11 @@ msgstr "Atspausdinti versiją"
msgid "Failed to launch '%s'"
msgstr "Nepavyko paleisti „%s“"
#: ../src/shell-global.c:1395
#: ../src/shell-global.c:1340
msgid "Less than a minute ago"
msgstr "Mažiau nei prieš minutę"
#: ../src/shell-global.c:1399
#: ../src/shell-global.c:1344
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
@@ -1170,7 +1141,7 @@ msgstr[0] "prieš %d minutę"
msgstr[1] "prieš %d minutes"
msgstr[2] "prieš %d minučių"
#: ../src/shell-global.c:1404
#: ../src/shell-global.c:1349
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
@@ -1178,7 +1149,7 @@ msgstr[0] "prieš %d valandą"
msgstr[1] "prieš %d valandas"
msgstr[2] "prieš %d valandų"
#: ../src/shell-global.c:1409
#: ../src/shell-global.c:1354
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
@@ -1186,7 +1157,7 @@ msgstr[0] "prieš %d dieną"
msgstr[1] "prieš %d dienas"
msgstr[2] "prieš %d dienų"
#: ../src/shell-global.c:1414
#: ../src/shell-global.c:1359
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
@@ -1226,26 +1197,6 @@ msgstr "Failų sistema"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "Shut Down"
#~ msgstr "Išjungti"
#~ msgid "Click Shut Down to quit these applications and shut down the system."
#~ msgstr ""
#~ "Spauskite „išjungti“, jei norite užverti šias programas ir išjungti "
#~ "sistemą."
#~ msgid "The system will shut down automatically in %d seconds."
#~ msgstr "Sistema automatiškai išsijungs po %d sekundžių."
#~ msgid "Shutting down the system."
#~ msgstr "Sistemos išjungimas."
#~ msgid "Confirm"
#~ msgstr "Patvirtinti"
#~ msgid "Panel"
#~ msgstr "Skydelis"
#~ msgid "Clock"
#~ msgstr "Laikrodis"

118
po/lv.po
View File

@@ -2,15 +2,14 @@
# This file is distributed under the same license as the PACKAGE package.
#
# Rudolfs <rudolfs.mazurs@gmail.com>, 2011.
# Rūdofls Mazurs <rudolfs.mazurs@gmail.com>, 2011.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug."
"cgi?product=gnome-shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-03-27 22:10+0000\n"
"PO-Revision-Date: 2011-04-04 02:11+0300\n"
"Last-Translator: Rūdofls Mazurs <rudolfs.mazurs@gmail.com>\n"
"POT-Creation-Date: 2011-03-25 20:20+0000\n"
"PO-Revision-Date: 2011-03-26 14:14+0200\n"
"Last-Translator: Rudolfs <rudolfs.mazurs@gmail.com>\n"
"Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -190,7 +189,7 @@ msgstr "'%s' izpilde neizdevās:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:230
msgid "All"
msgstr "Visas"
msgstr "Visi"
#: ../js/ui/appDisplay.js:328
msgid "APPLICATIONS"
@@ -368,7 +367,7 @@ msgstr "Šonedēļ"
msgid "Next week"
msgstr "Nākamnedēļ"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1000
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:994
msgid "Remove"
msgstr "Izņemt"
@@ -461,19 +460,23 @@ msgid "Logging out of the system."
msgstr "Izrakstās no sistēmas."
#: ../js/ui/endSessionDialog.js:75 ../js/ui/endSessionDialog.js:82
#| msgid "Power Off..."
msgid "Power Off"
msgstr "Izslēgt"
#: ../js/ui/endSessionDialog.js:76
#| msgid "Click Log Out to quit these applications and log out of the system."
msgid "Click Power Off to quit these applications and power off the system."
msgstr "Spiediet 'Izslēgt', lai izietu no šīm lietotnēm un izslēgtu sistēmas."
#: ../js/ui/endSessionDialog.js:77
#, c-format
#| msgid "The system will restart automatically in %d seconds."
msgid "The system will power off automatically in %d seconds."
msgstr "Sistēma tiks izslēgta automātiski pēc %d sekundēm."
#: ../js/ui/endSessionDialog.js:78
#| msgid "Logging out of the system."
msgid "Powering off the system."
msgstr "Izslēdz sistēmu."
@@ -507,13 +510,13 @@ msgstr "Nav instalētu paplašinājumu"
#: ../js/ui/lookingGlass.js:625
msgid "Enabled"
msgstr "Aktivēta"
msgstr "Aktivēts"
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:627 ../src/gvc/gvc-mixer-control.c:1091
msgid "Disabled"
msgstr "Deaktivēta"
msgstr "Deaktivēts"
#: ../js/ui/lookingGlass.js:629
msgid "Error"
@@ -531,11 +534,11 @@ msgstr "Skatīt avotu"
msgid "Web Page"
msgstr "Tīmekļa lapa"
#: ../js/ui/messageTray.js:993
#: ../js/ui/messageTray.js:987
msgid "Open"
msgstr "Atvērt"
#: ../js/ui/messageTray.js:2151
#: ../js/ui/messageTray.js:2145
msgid "System Information"
msgstr "Sistēmas informācija"
@@ -545,7 +548,7 @@ msgstr "Atsaukt"
#: ../js/ui/overview.js:186
msgid "Windows"
msgstr "Logi"
msgstr "Logs"
#: ../js/ui/overview.js:189
msgid "Applications"
@@ -567,7 +570,7 @@ msgstr "Iziet no %s"
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:878
msgid "Activities"
msgstr "Aktivitātes"
msgstr "Darbības"
#: ../js/ui/panel.js:979
msgid "Top Bar"
@@ -591,6 +594,7 @@ msgid "PLACES & DEVICES"
msgstr "VIETAS un IERĪCES"
#: ../js/ui/polkitAuthenticationAgent.js:74
#| msgid "authentication required"
msgid "Authentication Required"
msgstr "Nepieciešama autentifikācija"
@@ -599,18 +603,15 @@ msgid "Administrator"
msgstr "Administrators"
#: ../js/ui/polkitAuthenticationAgent.js:176
#| msgid "authentication required"
msgid "Authenticate"
msgstr "Autentificēt"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
#: ../js/ui/polkitAuthenticationAgent.js:260
msgid "Sorry, that didn't work. Please try again."
msgstr "Diemžēl tas nenostrādāja. Lūdzu, mēģiniet vēlreiz."
#: ../js/ui/polkitAuthenticationAgent.js:276
#: ../js/ui/polkitAuthenticationAgent.js:272
msgid "Password:"
msgstr "Parole:"
@@ -835,139 +836,140 @@ msgstr "Rādīt tastatūras izkārtojumu..."
msgid "Localization Settings"
msgstr "Lokalizācijas iestatījumi"
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1454
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1437
msgid "<unknown>"
msgstr "<nezināms>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:311
#: ../js/ui/status/network.js:295
msgid "disabled"
msgstr "izslēgts"
msgstr "deaktivēts"
#: ../js/ui/status/network.js:494
#: ../js/ui/status/network.js:478
msgid "connecting..."
msgstr "savienojas..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:497
#: ../js/ui/status/network.js:481
msgid "authentication required"
msgstr "nepieciešama autentifikācija"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:507
#: ../js/ui/status/network.js:491
msgid "firmware missing"
msgstr "trūkst aparātprogrammatūras"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:514
#: ../js/ui/status/network.js:498
msgid "cable unplugged"
msgstr "vads atvienots"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:519
#: ../js/ui/status/network.js:503
msgid "unavailable"
msgstr "nav pieejams"
#: ../js/ui/status/network.js:521
#: ../js/ui/status/network.js:505
msgid "connection failed"
msgstr "savienojums neizdevās"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:602 ../js/ui/status/network.js:1402
#: ../js/ui/status/network.js:585 ../js/ui/status/network.js:1385
msgid "Connected (private)"
msgstr "Savienots (privāts)"
#: ../js/ui/status/network.js:683
#: ../js/ui/status/network.js:666
msgid "Auto Ethernet"
msgstr "Auto Ethernet"
#: ../js/ui/status/network.js:758
#: ../js/ui/status/network.js:741
msgid "Auto broadband"
msgstr "Auto platjosla"
#: ../js/ui/status/network.js:761
#: ../js/ui/status/network.js:744
msgid "Auto dial-up"
msgstr "Auto iezvanlīnija"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:904 ../js/ui/status/network.js:1414
#: ../js/ui/status/network.js:887 ../js/ui/status/network.js:1397
#, c-format
msgid "Auto %s"
msgstr "Automātisks %s"
msgstr "Auto %s"
#: ../js/ui/status/network.js:906
#: ../js/ui/status/network.js:889
msgid "Auto bluetooth"
msgstr "Automātisks bluetooth"
msgstr "Auto bluetooth"
#: ../js/ui/status/network.js:1416
#: ../js/ui/status/network.js:1399
msgid "Auto wireless"
msgstr "Automātisks bezvadu"
msgstr "Auto bezvadu"
#: ../js/ui/status/network.js:1474
#: ../js/ui/status/network.js:1457
msgid "More..."
msgstr "Vairāk..."
#: ../js/ui/status/network.js:1497
#: ../js/ui/status/network.js:1480
msgid "Enable networking"
msgstr "Aktivē tīklošanu"
#: ../js/ui/status/network.js:1509
#: ../js/ui/status/network.js:1492
msgid "Wired"
msgstr "Vadu"
#: ../js/ui/status/network.js:1520
#: ../js/ui/status/network.js:1503
msgid "Wireless"
msgstr "Bezvadu"
#: ../js/ui/status/network.js:1530
#: ../js/ui/status/network.js:1513
msgid "Mobile broadband"
msgstr "Mobilā platjosla"
#: ../js/ui/status/network.js:1540
#: ../js/ui/status/network.js:1523
msgid "VPN Connections"
msgstr "VPN savienojumi"
#: ../js/ui/status/network.js:1549
#: ../js/ui/status/network.js:1532
msgid "Network Settings"
msgstr "Tīkla iestatījumi"
#: ../js/ui/status/network.js:1844
#: ../js/ui/status/network.js:1827
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Jūs esat savienojies ar mobilo platjoslas savienojumu '%s'"
#: ../js/ui/status/network.js:1848
#: ../js/ui/status/network.js:1831
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Jūs esat savienojies ar bezvadu tīklu '%s'"
#: ../js/ui/status/network.js:1852
#: ../js/ui/status/network.js:1835
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Jūs esat savienojies ar vadu tīklu '%s'"
#: ../js/ui/status/network.js:1856
#: ../js/ui/status/network.js:1839
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Jūs esat savienojies ar VPN tīklu '%s'"
#: ../js/ui/status/network.js:1861
#: ../js/ui/status/network.js:1844
#, c-format
msgid "You're now connected to '%s'"
msgstr "Jūs esat savienojies ar '%s'"
#: ../js/ui/status/network.js:1869
#: ../js/ui/status/network.js:1852
#| msgid "Connection estabilished"
msgid "Connection established"
msgstr "Savienojums izveidots"
#: ../js/ui/status/network.js:1991
#: ../js/ui/status/network.js:1974
msgid "Networking is disabled"
msgstr "Tīklošana ir deaktivēta"
#: ../js/ui/status/network.js:2116
#: ../js/ui/status/network.js:2099
msgid "Network Manager"
msgstr "Tīkla pārvaldnieks"
@@ -1067,28 +1069,28 @@ msgstr "Nezināms"
#: ../js/ui/status/volume.js:45
msgid "Volume"
msgstr "Skaļums"
msgstr "Sējums"
#: ../js/ui/status/volume.js:58
msgid "Microphone"
msgstr "Mikrofons"
#: ../js/ui/telepathyClient.js:331
#: ../js/ui/telepathyClient.js:332
#, c-format
msgid "%s is online."
msgstr "%s ir tiešsaistē."
#: ../js/ui/telepathyClient.js:336
#: ../js/ui/telepathyClient.js:337
#, c-format
msgid "%s is offline."
msgstr "%s ir nesaistē."
#: ../js/ui/telepathyClient.js:339
#: ../js/ui/telepathyClient.js:340
#, c-format
msgid "%s is away."
msgstr "%s\" ir prom."
#: ../js/ui/telepathyClient.js:342
#: ../js/ui/telepathyClient.js:343
#, c-format
msgid "%s is busy."
msgstr "%s\" ir aizņemts."
@@ -1096,7 +1098,7 @@ msgstr "%s\" ir aizņemts."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:473
#: ../js/ui/telepathyClient.js:474
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Sūtīts %X %A"

274
po/nb.po
View File

@@ -4,12 +4,13 @@
#
# Kjartan Maraas <kmaraas@gnome.org>, 2009-2011.
# Torstein Adolf Winterseth <kvikende@fsfe.org>, 2010.
#: ../js/ui/polkitAuthenticationAgent.js:142
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell 2.91.x\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-05-11 00:12+0200\n"
"PO-Revision-Date: 2011-05-11 21:20+0200\n"
"POT-Creation-Date: 2011-03-23 21:46+0100\n"
"PO-Revision-Date: 2011-03-23 21:47+0100\n"
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
"Language-Team: Norwegian Bokmål <i18n-nb@lister.ping.uio.no>\n"
"Language: \n"
@@ -32,55 +33,53 @@ msgid ""
"Allows access to internal debugging and monitoring tools using the Alt-F2 "
"dialog."
msgstr ""
"Tillat tilgang til interne feilsøkings- og overvåkingsverktøy ved å bruke "
"Alt-F2-dialogen."
"Tillat tilgang til interne feilsøkings og overvåkingsverktøy ved å bruke Alt-"
"F2-dialogen."
#: ../data/org.gnome.shell.gschema.xml.in.h:2
msgid "Enable internal tools useful for developers and testers from Alt-F2"
msgstr "Aktiver interne verktøy for utviklere og testere fra Alt-F2"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:3
msgid "File extension used for storing the screencast"
msgstr "Filendelse i bruk ved lagring av skjermvideo"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:4
msgid "Framerate used for recording screencasts."
msgstr "Bildefrekvens i bruk ved lagring av skjermvideoer."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:5
msgid ""
"GNOME Shell extensions have a uuid property; this key lists extensions which "
"should not be loaded."
msgstr ""
"GNOME Shell-utvidelser har en uuid-egenskap. Denne nøkkelen lister "
"utvidelser som ikke bør lastes."
#: ../data/org.gnome.shell.gschema.xml.in.h:6
msgid "History for command (Alt-F2) dialog"
msgstr "Historikk for kommandodialog (Alt-F2)"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:7
msgid "History for the looking glass dialog"
msgstr "Historikk for forstørrelsesglass-dialogen"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:8
msgid "If true, display date in the clock, in addition to time."
msgstr "Viser dato i tillegg til tid i klokken hvis «true»."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:9
msgid "If true, display seconds in time."
msgstr "Viser sekunder i klokken hvis «true»."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:10
msgid "If true, display the ISO week date in the calendar."
msgstr "Viser ISO-ukedato i kalenderen hvis «true»."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:11
msgid "List of desktop file IDs for favorite applications"
msgstr "Liste av skrivebordfil-ider for favorittprogrammer"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:13
#, no-c-format, fuzzy
#, no-c-format
msgid ""
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
"used for gst-launch. The pipeline should have an unconnected sink pad where "
@@ -92,7 +91,7 @@ msgid ""
"'videorate ! vp8enc quality=10 speed=2 threads=%T ! queue ! webmmux' and "
"records to WEBM using the VP8 codec. %T is used as a placeholder for a guess "
"at the optimal thread count on the system."
msgstr "Setter GStreamer-rør som brukes til å kode opptak. Den følger syntaksen som brukes for gst-launch."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:14
msgid "Show date in clock"
@@ -111,8 +110,6 @@ msgid ""
"The applications corresponding to these identifiers will be displayed in the "
"favorites area."
msgstr ""
"Programmene som passer til disse identifikatorene vil bli vist i "
"favorittområdet."
#: ../data/org.gnome.shell.gschema.xml.in.h:18
msgid ""
@@ -120,21 +117,16 @@ msgid ""
"current date, and use this extension. It should be changed when recording to "
"a different container format."
msgstr ""
"Filnavnet for skjermvideoopptak vil være unikt og bestå av gjeldende dato, "
"og bruke denne filendelsen. Den bør endres når du gjør opptak til et nytt "
"oppbevaringsformat."
#: ../data/org.gnome.shell.gschema.xml.in.h:19
msgid ""
"The framerate of the resulting screencast recordered by GNOME Shell's "
"screencast recorder in frames-per-second."
msgstr ""
"Bildefrekvensen i den ferdige skjermvideoen tatt opp med GNOME Shells "
"skjermvideoopptaker i bilder per sekund."
#: ../data/org.gnome.shell.gschema.xml.in.h:20
msgid "The gstreamer pipeline used to encode the screencast"
msgstr "Gstreamer-kommandokø brukt til å kode skjermvideoen"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.h:21
msgid ""
@@ -143,10 +135,6 @@ msgid ""
"want to disable this for privacy reasons. Please note that doing so won't "
"remove already saved data."
msgstr ""
"GNOME Shell vil normalt holde øye med åpne programmer for å kunne vise de "
"mest bruke (for eksempel i oppstartsmenyer). Denne informasjonen vil bli "
"holdt privat, men du kan deaktivere denne lagringen av personvernårsaker. "
"Hvis du slår det av, vil det ikke fjerne allerede lagret informasjon."
#: ../data/org.gnome.shell.gschema.xml.in.h:22
msgid "Uuids of extensions to disable"
@@ -176,27 +164,27 @@ msgid "Execution of '%s' failed:"
msgstr "Kjøring av «%s» feilet:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:260
#: ../js/ui/appDisplay.js:230
msgid "All"
msgstr "Alle"
#: ../js/ui/appDisplay.js:359
#: ../js/ui/appDisplay.js:328
msgid "APPLICATIONS"
msgstr "PROGRAMMER"
#: ../js/ui/appDisplay.js:385
#: ../js/ui/appDisplay.js:354
msgid "SETTINGS"
msgstr "INNSTILLINGER"
#: ../js/ui/appDisplay.js:658
#: ../js/ui/appDisplay.js:625
msgid "New Window"
msgstr "Nytt vindu"
#: ../js/ui/appDisplay.js:661
#: ../js/ui/appDisplay.js:628
msgid "Remove from Favorites"
msgstr "Fjern fra favoritter"
#: ../js/ui/appDisplay.js:662
#: ../js/ui/appDisplay.js:629
msgid "Add to Favorites"
msgstr "Legg til i favoritter"
@@ -274,7 +262,7 @@ msgstr "F"
#: ../js/ui/calendar.js:130
msgctxt "grid saturday"
msgid "S"
msgstr "L"
msgstr "S"
#. Translators: Event list abbreviation for Sunday.
#. *
@@ -291,19 +279,19 @@ msgstr "Sø"
#: ../js/ui/calendar.js:145
msgctxt "list monday"
msgid "M"
msgstr "Ma"
msgstr "M"
#. Translators: Event list abbreviation for Tuesday
#: ../js/ui/calendar.js:147
msgctxt "list tuesday"
msgid "T"
msgstr "Ti"
msgstr "T"
#. Translators: Event list abbreviation for Wednesday
#: ../js/ui/calendar.js:149
msgctxt "list wednesday"
msgid "W"
msgstr "On"
msgstr "O"
#. Translators: Event list abbreviation for Thursday
#: ../js/ui/calendar.js:151
@@ -315,13 +303,13 @@ msgstr "To"
#: ../js/ui/calendar.js:153
msgctxt "list friday"
msgid "F"
msgstr "Fr"
msgstr "F"
#. Translators: Event list abbreviation for Saturday
#: ../js/ui/calendar.js:155
msgctxt "list saturday"
msgid "S"
msgstr ""
msgstr "S"
#. Translators: Text to show if there are no events
#: ../js/ui/calendar.js:704
@@ -329,13 +317,13 @@ msgid "Nothing Scheduled"
msgstr "Ingenting planlagt"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:487
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A %B %d"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:490
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A %B %d, %Y"
@@ -356,7 +344,7 @@ msgstr "Denne uken"
msgid "Next week"
msgstr "Neste uke"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1037
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:994
msgid "Remove"
msgstr "Fjern"
@@ -485,8 +473,8 @@ msgstr "Systemet vil starte på nytt automatisk om %d sekunder."
msgid "Restarting the system."
msgstr "Starter systemet på nytt."
#: ../js/ui/endSessionDialog.js:413 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:491
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Avbryt"
@@ -520,11 +508,11 @@ msgstr "Vis kildekode"
msgid "Web Page"
msgstr "Nettside"
#: ../js/ui/messageTray.js:1030
#: ../js/ui/messageTray.js:987
msgid "Open"
msgstr "Åpne"
#: ../js/ui/messageTray.js:2194
#: ../js/ui/messageTray.js:2145
msgid "System Information"
msgstr "Systeminformasjon"
@@ -547,18 +535,18 @@ msgid "Dash"
msgstr "Favoritter"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:533
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Avslutt %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:913
#: ../js/ui/panel.js:878
msgid "Activities"
msgstr "Aktiviteter"
#: ../js/ui/panel.js:1015
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "Topp-panel"
@@ -591,15 +579,11 @@ msgstr "Administrator"
msgid "Authenticate"
msgstr "Autentiser"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
#: ../js/ui/polkitAuthenticationAgent.js:260
msgid "Sorry, that didn't work. Please try again."
msgstr "Beklager, det virket ikke. Vennligst prøv igjen."
#: ../js/ui/polkitAuthenticationAgent.js:276
#: ../js/ui/polkitAuthenticationAgent.js:272
msgid "Password:"
msgstr "Passord:"
@@ -616,16 +600,15 @@ msgstr "toggle-switch-intl"
msgid "Please enter a command:"
msgstr "Oppgi en kommando:"
#: ../js/ui/searchDisplay.js:313
#: ../js/ui/searchDisplay.js:310
msgid "Searching..."
msgstr "Søker …"
#: ../js/ui/searchDisplay.js:327
#: ../js/ui/searchDisplay.js:324
msgid "No matching results."
msgstr "Ingen treff."
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:163
#: ../js/ui/statusMenu.js:228
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:228
msgid "Power Off..."
msgstr "Slå av …"
@@ -703,9 +686,9 @@ msgstr "Høy kontrast"
msgid "Large Text"
msgstr "Stor tekst"
#: ../js/ui/status/bluetooth.js:42 ../js/ui/status/bluetooth.js:264
#: ../js/ui/status/bluetooth.js:358 ../js/ui/status/bluetooth.js:392
#: ../js/ui/status/bluetooth.js:432 ../js/ui/status/bluetooth.js:465
#: ../js/ui/status/bluetooth.js:42 ../js/ui/status/bluetooth.js:237
#: ../js/ui/status/bluetooth.js:333 ../js/ui/status/bluetooth.js:367
#: ../js/ui/status/bluetooth.js:407 ../js/ui/status/bluetooth.js:440
msgid "Bluetooth"
msgstr "Bluetooth"
@@ -718,101 +701,101 @@ msgid "Send Files to Device..."
msgstr "Send filer til enhet …"
#: ../js/ui/status/bluetooth.js:70
msgid "Set up a New Device..."
msgid "Setup a New Device..."
msgstr "Sett opp en ny enhet …"
#: ../js/ui/status/bluetooth.js:95
msgid "Bluetooth Settings"
msgstr "Innstillinger for Bluetooth"
#: ../js/ui/status/bluetooth.js:215
#: ../js/ui/status/bluetooth.js:188
msgid "Connection"
msgstr "Tilkobling"
#: ../js/ui/status/bluetooth.js:251
#: ../js/ui/status/bluetooth.js:224
msgid "Send Files..."
msgstr "Send filer …"
#: ../js/ui/status/bluetooth.js:256
#: ../js/ui/status/bluetooth.js:229
msgid "Browse Files..."
msgstr "Bla gjennom filer …"
#: ../js/ui/status/bluetooth.js:265
#: ../js/ui/status/bluetooth.js:238
msgid "Error browsing device"
msgstr "Feil under lesing av enhet"
#: ../js/ui/status/bluetooth.js:266
#: ../js/ui/status/bluetooth.js:239
#, c-format
msgid "The requested device cannot be browsed, error is '%s'"
msgstr "Kan ikke bla gjennom forespurt enhet. Feilen er «%s»"
#: ../js/ui/status/bluetooth.js:274
#: ../js/ui/status/bluetooth.js:247
msgid "Keyboard Settings"
msgstr "Innstillinger for tastatur"
#: ../js/ui/status/bluetooth.js:279
#: ../js/ui/status/bluetooth.js:252
msgid "Mouse Settings"
msgstr "Innstillinger for mus"
#: ../js/ui/status/bluetooth.js:286 ../js/ui/status/volume.js:66
#: ../js/ui/status/bluetooth.js:259 ../js/ui/status/volume.js:66
msgid "Sound Settings"
msgstr "Innstillinger for lyd"
#: ../js/ui/status/bluetooth.js:393
#: ../js/ui/status/bluetooth.js:368
#, c-format
msgid "Authorization request from %s"
msgstr "Forespørsel om autorisering fra %s"
#: ../js/ui/status/bluetooth.js:399
#: ../js/ui/status/bluetooth.js:374
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Enhet %s vil ha tilgang til tjenesten «%s»"
#: ../js/ui/status/bluetooth.js:401
#: ../js/ui/status/bluetooth.js:376
msgid "Always grant access"
msgstr "Alltid gi tilgang"
#: ../js/ui/status/bluetooth.js:402
#: ../js/ui/status/bluetooth.js:377
msgid "Grant this time only"
msgstr "Gi tilgang kun denne ene gangen"
#: ../js/ui/status/bluetooth.js:403
#: ../js/ui/status/bluetooth.js:378
msgid "Reject"
msgstr "Avvis"
#: ../js/ui/status/bluetooth.js:433
#: ../js/ui/status/bluetooth.js:408
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Bekreftelse for tilkobling for %s"
#: ../js/ui/status/bluetooth.js:439 ../js/ui/status/bluetooth.js:473
#: ../js/ui/status/bluetooth.js:414 ../js/ui/status/bluetooth.js:448
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Enhet %s vil koble seg sammen med denne datamaskinen"
#: ../js/ui/status/bluetooth.js:440
#: ../js/ui/status/bluetooth.js:415
#, c-format
msgid "Please confirm whether the PIN '%s' matches the one on the device."
msgstr "Vennligst bekreft om PIN «%s» er lik den som brukes på enheten."
#: ../js/ui/status/bluetooth.js:442
#: ../js/ui/status/bluetooth.js:417
msgid "Matches"
msgstr "Stemmer overens"
#: ../js/ui/status/bluetooth.js:443
#: ../js/ui/status/bluetooth.js:418
msgid "Does not match"
msgstr "Stemmer ikke overens"
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/status/bluetooth.js:441
#, c-format
msgid "Pairing request for %s"
msgstr "Forespørsel om tilkobling for %s"
#: ../js/ui/status/bluetooth.js:474
#: ../js/ui/status/bluetooth.js:449
msgid "Please enter the PIN mentioned on the device."
msgstr "Vennligst oppgi PIN som oppgitt på enheten."
#: ../js/ui/status/bluetooth.js:490
#: ../js/ui/status/bluetooth.js:465
msgid "OK"
msgstr "OK"
@@ -824,139 +807,133 @@ msgstr "Vis tastaturutforming …"
msgid "Localization Settings"
msgstr "Innstillinger for lokalisering"
#: ../js/ui/status/network.js:126
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1393
msgid "<unknown>"
msgstr "<ukjent>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:343
#: ../js/ui/status/network.js:295
msgid "disabled"
msgstr "slått av"
#: ../js/ui/status/network.js:542
#: ../js/ui/status/network.js:476
msgid "connecting..."
msgstr "kobler til …"
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:545
#: ../js/ui/status/network.js:479
msgid "authentication required"
msgstr "autentisering kreves"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:555
msgid "firmware missing"
msgstr "fastvare mangler"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:562
#: ../js/ui/status/network.js:485
msgid "cable unplugged"
msgstr "kabel koblet fra"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:567
#: ../js/ui/status/network.js:489
msgid "unavailable"
msgstr "ikke tilgjengelig"
#: ../js/ui/status/network.js:569
#: ../js/ui/status/network.js:491
msgid "connection failed"
msgstr "tilkobling feilet"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:650 ../js/ui/status/network.js:1459
#: ../js/ui/status/network.js:571 ../js/ui/status/network.js:1341
msgid "Connected (private)"
msgstr "Tilkoblet (privat)"
#: ../js/ui/status/network.js:735
#: ../js/ui/status/network.js:636
msgid "Auto Ethernet"
msgstr "Automatisk Ethernet"
#: ../js/ui/status/network.js:803
#: ../js/ui/status/network.js:697
msgid "Auto broadband"
msgstr "Automatisk bredbånd"
#: ../js/ui/status/network.js:806
#: ../js/ui/status/network.js:700
msgid "Auto dial-up"
msgstr "Automatisk oppringt"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:930 ../js/ui/status/network.js:1471
#: ../js/ui/status/network.js:843 ../js/ui/status/network.js:1353
#, c-format
msgid "Auto %s"
msgstr "Automatisk %s"
#: ../js/ui/status/network.js:932
#: ../js/ui/status/network.js:845
msgid "Auto bluetooth"
msgstr "Automatisk Bluetooth"
#: ../js/ui/status/network.js:1473
#: ../js/ui/status/network.js:1355
msgid "Auto wireless"
msgstr "Automatisk trådløst"
#: ../js/ui/status/network.js:1521
#: ../js/ui/status/network.js:1413
msgid "More..."
msgstr "Mer …"
#: ../js/ui/status/network.js:1563
#: ../js/ui/status/network.js:1436
msgid "Enable networking"
msgstr "Slå på nettverk"
#: ../js/ui/status/network.js:1575
#: ../js/ui/status/network.js:1448
msgid "Wired"
msgstr "Kablet"
#: ../js/ui/status/network.js:1586
#: ../js/ui/status/network.js:1459
msgid "Wireless"
msgstr "Trådløst"
#: ../js/ui/status/network.js:1596
#: ../js/ui/status/network.js:1469
msgid "Mobile broadband"
msgstr "Mobilt bredbånd"
#: ../js/ui/status/network.js:1606
#: ../js/ui/status/network.js:1479
msgid "VPN Connections"
msgstr "VPN-tilkoblinger"
#: ../js/ui/status/network.js:1618
#: ../js/ui/status/network.js:1488
msgid "Network Settings"
msgstr "Innstillinger for nettverk"
#: ../js/ui/status/network.js:1912
#: ../js/ui/status/network.js:1783
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Du er nå koblet til mobil bredbåndstilkobling «%s»"
#: ../js/ui/status/network.js:1916
#: ../js/ui/status/network.js:1787
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Du er nå koblet til trådløst nettverk «%s»"
#: ../js/ui/status/network.js:1920
#: ../js/ui/status/network.js:1791
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Du er nå koblet til kablet nettverk «%s»"
#: ../js/ui/status/network.js:1924
#: ../js/ui/status/network.js:1795
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Du er nå koblet til virtuelt privat nettverk «%s»"
#: ../js/ui/status/network.js:1929
#: ../js/ui/status/network.js:1800
#, c-format
msgid "You're now connected to '%s'"
msgstr "Du er nå koblet til «%s»"
#: ../js/ui/status/network.js:1937
#: ../js/ui/status/network.js:1808
msgid "Connection established"
msgstr "Tilkobling etablert"
#: ../js/ui/status/network.js:2063
#: ../js/ui/status/network.js:1930
msgid "Networking is disabled"
msgstr "Nettverk er slått av"
#: ../js/ui/status/network.js:2188
#: ../js/ui/status/network.js:2055
msgid "Network Manager"
msgstr "Nettverkshåndtering"
@@ -1058,22 +1035,22 @@ msgstr "Volum"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/telepathyClient.js:330
#: ../js/ui/telepathyClient.js:332
#, c-format
msgid "%s is online."
msgstr "%s er tilkoblet."
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:337
#, c-format
msgid "%s is offline."
msgstr "%s er frakoblet."
#: ../js/ui/telepathyClient.js:338
#: ../js/ui/telepathyClient.js:340
#, c-format
msgid "%s is away."
msgstr "«%s» er borte."
#: ../js/ui/telepathyClient.js:341
#: ../js/ui/telepathyClient.js:343
#, c-format
msgid "%s is busy."
msgstr "%s er opptatt."
@@ -1081,18 +1058,11 @@ msgstr "%s er opptatt."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:479
#: ../js/ui/telepathyClient.js:474
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Sendt %X på %A"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/telepathyClient.js:524
#, c-format
msgid "%s is now known as %s"
msgstr "%s er nå kjent som %s"
#. Translators: this is the text displayed
#. in the search entry when no search is
#. active; it should not exceed ~30
@@ -1137,18 +1107,50 @@ msgstr[1] "%u innganger"
msgid "System Sounds"
msgstr "Systemlyder"
#: ../src/main.c:445
#: ../src/main.c:438
msgid "Print version"
msgstr "Skriv ut versjon"
#: ../src/shell-app.c:464
#: ../src/shell-app.c:454
#, c-format
msgid "Failed to launch '%s'"
msgstr "Klarte ikke å starte «%s»"
#: ../src/shell-global.c:1395
msgid "Less than a minute ago"
msgstr "Mindre enn ett minutt siden"
#: ../src/shell-global.c:1399
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
msgstr[0] "%d minutt siden"
msgstr[1] "%d minutter siden"
#: ../src/shell-global.c:1404
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
msgstr[0] "%d time siden"
msgstr[1] "%d timer siden"
#: ../src/shell-global.c:1409
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "%d dag siden"
msgstr[1] "%d dager siden"
#: ../src/shell-global.c:1414
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
msgstr[0] "%d uke siden"
msgstr[1] "%d uker siden"
#: ../src/shell-mobile-providers.c:80
msgid "United Kingdom"
msgstr "Storbritannia"
msgstr ""
#: ../src/shell-mobile-providers.c:526
msgid "Default"

View File

@@ -1125,7 +1125,7 @@ msgstr "%s is opgestart"
#: ../js/ui/windowAttentionHandler.js:44
#, c-format
msgid "'%s' is ready"
msgstr "%s is gereed"
msgstr "%s is klaar"
#. translators:
#. * The number of sound outputs on a particular device

114
po/pl.po
View File

@@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-04-22 16:23+0200\n"
"PO-Revision-Date: 2011-04-22 16:27+0200\n"
"POT-Creation-Date: 2011-03-28 20:21+0200\n"
"PO-Revision-Date: 2011-03-28 20:22+0200\n"
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
"Language-Team: Polish <gnomepl@aviary.pl>\n"
"Language: pl\n"
@@ -196,23 +196,23 @@ msgstr "Wykonanie polecenia \"%s\" się nie powiodło:"
msgid "All"
msgstr "Wszystkie"
#: ../js/ui/appDisplay.js:329
#: ../js/ui/appDisplay.js:328
msgid "APPLICATIONS"
msgstr "Programy"
#: ../js/ui/appDisplay.js:355
#: ../js/ui/appDisplay.js:354
msgid "SETTINGS"
msgstr "Ustawienia"
#: ../js/ui/appDisplay.js:626
#: ../js/ui/appDisplay.js:625
msgid "New Window"
msgstr "Nowe okno"
#: ../js/ui/appDisplay.js:629
#: ../js/ui/appDisplay.js:628
msgid "Remove from Favorites"
msgstr "Usuń z ulubionych"
#: ../js/ui/appDisplay.js:630
#: ../js/ui/appDisplay.js:629
msgid "Add to Favorites"
msgstr "Dodaj do ulubionych"
@@ -345,13 +345,13 @@ msgid "Nothing Scheduled"
msgstr "Nic nie zaplanowano"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:492
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:495
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e %B %Y"
@@ -372,7 +372,7 @@ msgstr "Ten tydzień"
msgid "Next week"
msgstr "Następny tydzień"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1037
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1000
msgid "Remove"
msgstr "Usuń"
@@ -408,7 +408,7 @@ msgstr "%a, %R"
#. for AM/PM.
#: ../js/ui/dateMenu.js:177
msgid "%a %b %e, %l:%M:%S %p"
msgstr "%a %e %b, %l:%M:%S %p"
msgstr "%a %e %b, %H:%M:%S %p"
#: ../js/ui/dateMenu.js:178
msgid "%a %b %e, %l:%M %p"
@@ -499,7 +499,7 @@ msgstr "System zostanie automatycznie uruchomiony ponownie za %d sekund."
msgid "Restarting the system."
msgstr "Ponowne uruchamianie systemu."
#: ../js/ui/endSessionDialog.js:413 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Anuluj"
@@ -534,11 +534,11 @@ msgstr "Wyświetl źródło"
msgid "Web Page"
msgstr "Strona WWW"
#: ../js/ui/messageTray.js:1030
#: ../js/ui/messageTray.js:993
msgid "Open"
msgstr "Otwórz"
#: ../js/ui/messageTray.js:2194
#: ../js/ui/messageTray.js:2151
msgid "System Information"
msgstr "Informacje systemowe"
@@ -561,18 +561,18 @@ msgid "Dash"
msgstr "Ulubione"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:524
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Zakończ program %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:902
#: ../js/ui/panel.js:878
msgid "Activities"
msgstr "Podgląd"
#: ../js/ui/panel.js:1003
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "Górny pasek"
@@ -630,11 +630,11 @@ msgstr "toggle-switch-intl"
msgid "Please enter a command:"
msgstr "Proszę wprowadzić polecenie:"
#: ../js/ui/searchDisplay.js:311
#: ../js/ui/searchDisplay.js:310
msgid "Searching..."
msgstr "Wyszukiwanie..."
#: ../js/ui/searchDisplay.js:325
#: ../js/ui/searchDisplay.js:324
msgid "No matching results."
msgstr "Brak wyników."
@@ -838,139 +838,139 @@ msgstr "Wyświetl układ klawiatury..."
msgid "Localization Settings"
msgstr "Ustawienia lokalizacji"
#: ../js/ui/status/network.js:109 ../js/ui/status/network.js:1498
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1454
msgid "<unknown>"
msgstr "<nieznane>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:326
#: ../js/ui/status/network.js:311
msgid "disabled"
msgstr "wyłączone"
#: ../js/ui/status/network.js:521
#: ../js/ui/status/network.js:494
msgid "connecting..."
msgstr "łączenie..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:524
#: ../js/ui/status/network.js:497
msgid "authentication required"
msgstr "wymagane jest uwierzytelnienie"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:534
#: ../js/ui/status/network.js:507
msgid "firmware missing"
msgstr "brak oprogramowania wbudowanego"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:541
#: ../js/ui/status/network.js:514
msgid "cable unplugged"
msgstr "kabel jest niepodłączony"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:546
#: ../js/ui/status/network.js:519
msgid "unavailable"
msgstr "niedostępne"
#: ../js/ui/status/network.js:548
#: ../js/ui/status/network.js:521
msgid "connection failed"
msgstr "połączenie się nie powiodło"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:628 ../js/ui/status/network.js:1446
#: ../js/ui/status/network.js:602 ../js/ui/status/network.js:1402
msgid "Connected (private)"
msgstr "Połączono (prywatne)"
#: ../js/ui/status/network.js:713
#: ../js/ui/status/network.js:683
msgid "Auto Ethernet"
msgstr "Automatyczne Ethernet"
#: ../js/ui/status/network.js:788
#: ../js/ui/status/network.js:758
msgid "Auto broadband"
msgstr "Automatyczne komórkowe"
#: ../js/ui/status/network.js:791
#: ../js/ui/status/network.js:761
msgid "Auto dial-up"
msgstr "Automatyczne wdzwaniane"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:937 ../js/ui/status/network.js:1458
#: ../js/ui/status/network.js:904 ../js/ui/status/network.js:1414
#, c-format
msgid "Auto %s"
msgstr "Automatyczne %s"
#: ../js/ui/status/network.js:939
#: ../js/ui/status/network.js:906
msgid "Auto bluetooth"
msgstr "Automatyczne Bluetooth"
#: ../js/ui/status/network.js:1460
#: ../js/ui/status/network.js:1416
msgid "Auto wireless"
msgstr "Automatyczne bezprzewodowe"
#: ../js/ui/status/network.js:1518
#: ../js/ui/status/network.js:1474
msgid "More..."
msgstr "Więcej..."
#: ../js/ui/status/network.js:1541
#: ../js/ui/status/network.js:1497
msgid "Enable networking"
msgstr "Włącz sieć"
#: ../js/ui/status/network.js:1553
#: ../js/ui/status/network.js:1509
msgid "Wired"
msgstr "Przewodowe"
#: ../js/ui/status/network.js:1564
#: ../js/ui/status/network.js:1520
msgid "Wireless"
msgstr "Bezprzewodowe"
#: ../js/ui/status/network.js:1574
#: ../js/ui/status/network.js:1530
msgid "Mobile broadband"
msgstr "Komórkowe"
#: ../js/ui/status/network.js:1584
#: ../js/ui/status/network.js:1540
msgid "VPN Connections"
msgstr "Połączenia VPN"
#: ../js/ui/status/network.js:1596
#: ../js/ui/status/network.js:1549
msgid "Network Settings"
msgstr "Ustawienia sieci"
#: ../js/ui/status/network.js:1890
#: ../js/ui/status/network.js:1844
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Połączono z siecią komórkową \"%s\""
#: ../js/ui/status/network.js:1894
#: ../js/ui/status/network.js:1848
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Połączono z siecią bezprzewodową \"%s\""
#: ../js/ui/status/network.js:1898
#: ../js/ui/status/network.js:1852
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Połączono z siecią przewodową \"%s\""
#: ../js/ui/status/network.js:1902
#: ../js/ui/status/network.js:1856
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Połączono z siecią VPN \"%s\""
#: ../js/ui/status/network.js:1907
#: ../js/ui/status/network.js:1861
#, c-format
msgid "You're now connected to '%s'"
msgstr "Połączono z siecią \"%s\""
#: ../js/ui/status/network.js:1915
#: ../js/ui/status/network.js:1869
msgid "Connection established"
msgstr "Nawiązano połączenie"
#: ../js/ui/status/network.js:2041
#: ../js/ui/status/network.js:1991
msgid "Networking is disabled"
msgstr "Sieć jest wyłączona"
#: ../js/ui/status/network.js:2166
#: ../js/ui/status/network.js:2116
msgid "Network Manager"
msgstr "Menedżer sieci"
@@ -1076,22 +1076,22 @@ msgstr "Głośność"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:331
#, c-format
msgid "%s is online."
msgstr "Użytkownik %s jest w trybie online."
msgstr "Użytkownik %s jest online."
#: ../js/ui/telepathyClient.js:340
#: ../js/ui/telepathyClient.js:336
#, c-format
msgid "%s is offline."
msgstr "Użytkownik %s jest w trybie offline."
msgstr "Użytkownik %s jest offline."
#: ../js/ui/telepathyClient.js:343
#: ../js/ui/telepathyClient.js:339
#, c-format
msgid "%s is away."
msgstr "Użytkownik %s jest nieobecny."
#: ../js/ui/telepathyClient.js:346
#: ../js/ui/telepathyClient.js:342
#, c-format
msgid "%s is busy."
msgstr "Użytkownik %s jest zajęty."
@@ -1099,7 +1099,7 @@ msgstr "Użytkownik %s jest zajęty."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:484
#: ../js/ui/telepathyClient.js:473
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Wysłano o %H:%M w dniu %e %b"
@@ -1150,7 +1150,7 @@ msgstr[2] "%u wejść"
msgid "System Sounds"
msgstr "Dźwięki systemowe"
#: ../src/main.c:445
#: ../src/main.c:446
msgid "Print version"
msgstr "Wyświetla wersję"

241
po/pt.po
View File

@@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: 3.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-03-29 23:48+0100\n"
"PO-Revision-Date: 2011-03-29 23:50+0000\n"
"POT-Creation-Date: 2011-03-20 23:18+0000\n"
"PO-Revision-Date: 2011-03-20 23:45+0000\n"
"Last-Translator: Duarte Loreto <happyguy_pt@hotmail.com>\n"
"Language-Team: Portuguese <gnome_pt@yahoogroups.com>\n"
"Language: pt\n"
@@ -189,27 +189,27 @@ msgid "Execution of '%s' failed:"
msgstr "Falha ao executar '%s':"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:230
#: ../js/ui/appDisplay.js:226
msgid "All"
msgstr "Todas"
#: ../js/ui/appDisplay.js:328
#: ../js/ui/appDisplay.js:324
msgid "APPLICATIONS"
msgstr "APLICAÇÕES"
#: ../js/ui/appDisplay.js:354
#: ../js/ui/appDisplay.js:350
msgid "SETTINGS"
msgstr "DEFINIÇÕES"
#: ../js/ui/appDisplay.js:625
#: ../js/ui/appDisplay.js:616
msgid "New Window"
msgstr "Nova Janela"
#: ../js/ui/appDisplay.js:628
#: ../js/ui/appDisplay.js:619
msgid "Remove from Favorites"
msgstr "Remover dos Favoritos"
#: ../js/ui/appDisplay.js:629
#: ../js/ui/appDisplay.js:620
msgid "Add to Favorites"
msgstr "Adicionar aos Favoritos"
@@ -342,13 +342,13 @@ msgid "Nothing Scheduled"
msgstr "Nada Agendado"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720 ../js/ui/telepathyClient.js:490
#: ../js/ui/calendar.js:720
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723 ../js/ui/telepathyClient.js:493
#: ../js/ui/calendar.js:723
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %B %d, %Y"
@@ -369,7 +369,7 @@ msgstr "Esta semana"
msgid "Next week"
msgstr "Próxima semana"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1007
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:933
msgid "Remove"
msgstr "Remover"
@@ -437,15 +437,13 @@ msgstr "ITENS RECENTES"
msgid "Log Out %s"
msgstr "Terminar a Sessão de %s"
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:70
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:69
msgid "Log Out"
msgstr "Terminar Sessão"
#: ../js/ui/endSessionDialog.js:65
msgid "Click Log Out to quit these applications and log out of the system."
msgstr ""
"Clique em Terminar Sessão para fechar estas aplicações e terminar a sessão "
"no sistema."
msgstr "Clique em Terminar Sessão para fechar estas aplicações e terminar a sessão no sistema."
#: ../js/ui/endSessionDialog.js:66
#, c-format
@@ -461,44 +459,45 @@ msgstr "A sua sessão terminará automaticamente dentro de %d segundos."
msgid "Logging out of the system."
msgstr "A terminar a sessão no sistema."
#: ../js/ui/endSessionDialog.js:75 ../js/ui/endSessionDialog.js:82
msgid "Power Off"
#: ../js/ui/endSessionDialog.js:74 ../js/ui/endSessionDialog.js:78
msgid "Shut Down"
msgstr "Desligar"
#: ../js/ui/endSessionDialog.js:76
msgid "Click Power Off to quit these applications and power off the system."
#: ../js/ui/endSessionDialog.js:75
msgid "Click Shut Down to quit these applications and shut down the system."
msgstr "Clique em Desligar para fechar estas aplicações e desligar o sistema."
#: ../js/ui/endSessionDialog.js:77
#: ../js/ui/endSessionDialog.js:76
#, c-format
msgid "The system will power off automatically in %d seconds."
msgid "The system will shut down automatically in %d seconds."
msgstr "O sistema irá desligar-se automaticamente dentro de %d segundos."
#: ../js/ui/endSessionDialog.js:78
msgid "Powering off the system."
#: ../js/ui/endSessionDialog.js:77
msgid "Shutting down the system."
msgstr "A desligar o sistema."
#: ../js/ui/endSessionDialog.js:80 ../js/ui/endSessionDialog.js:88
#: ../js/ui/endSessionDialog.js:93
#: ../js/ui/endSessionDialog.js:84 ../js/ui/endSessionDialog.js:88
msgid "Restart"
msgstr "Reiniciar"
#: ../js/ui/endSessionDialog.js:89
#: ../js/ui/endSessionDialog.js:85
msgid "Click Restart to quit these applications and restart the system."
msgstr ""
"Clique em Reiniciar para fechar estas aplicações e reiniciar o sistema."
msgstr "Clique em Reiniciar para fechar estas aplicações e reiniciar o sistema."
#: ../js/ui/endSessionDialog.js:90
#: ../js/ui/endSessionDialog.js:86
#, c-format
msgid "The system will restart automatically in %d seconds."
msgstr "O sistema irá reiniciar-se automaticamente dentro de %d segundos."
#: ../js/ui/endSessionDialog.js:91
#: ../js/ui/endSessionDialog.js:87
msgid "Restarting the system."
msgstr "A reiniciar o sistema."
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/endSessionDialog.js:395
msgid "Confirm"
msgstr "Confirmar"
#: ../js/ui/endSessionDialog.js:400 ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Cancelar"
@@ -532,47 +531,47 @@ msgstr "Visualizar o Código Fonte"
msgid "Web Page"
msgstr "Página Web"
#: ../js/ui/messageTray.js:1000
#: ../js/ui/messageTray.js:926
msgid "Open"
msgstr "Abrir"
#: ../js/ui/messageTray.js:2164
#: ../js/ui/messageTray.js:1986
msgid "System Information"
msgstr "Informação do Sistema"
#: ../js/ui/overview.js:91
#: ../js/ui/overview.js:88
msgid "Undo"
msgstr "Desfazer"
#: ../js/ui/overview.js:186
#: ../js/ui/overview.js:183
msgid "Windows"
msgstr "Janelas"
#: ../js/ui/overview.js:189
#: ../js/ui/overview.js:186
msgid "Applications"
msgstr "Aplicações"
#. Translators: this is the name of the dock/favorites area on
#. the left of the overview
#: ../js/ui/overview.js:205
#: ../js/ui/overview.js:202
msgid "Dash"
msgstr "Atalhos"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:524
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Terminar %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:902
#: ../js/ui/panel.js:874
msgid "Activities"
msgstr "Actividades"
#: ../js/ui/panel.js:1003
msgid "Top Bar"
msgstr "Barra Superior"
#: ../js/ui/panel.js:975
msgid "Panel"
msgstr "Painel"
#: ../js/ui/placeDisplay.js:122
#, c-format
@@ -591,85 +590,60 @@ msgstr "Estabelecer ligação a..."
msgid "PLACES & DEVICES"
msgstr "LOCAIS & DISPOSITIVOS"
#: ../js/ui/polkitAuthenticationAgent.js:74
msgid "Authentication Required"
msgstr "Necessária Autenticação"
#: ../js/ui/polkitAuthenticationAgent.js:108
msgid "Administrator"
msgstr "Administrador"
#: ../js/ui/polkitAuthenticationAgent.js:176
msgid "Authenticate"
msgstr "Autenticar"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
msgid "Sorry, that didn't work. Please try again."
msgstr "Falha inesperada na autenticação. Tente novamente."
#: ../js/ui/polkitAuthenticationAgent.js:276
msgid "Password:"
msgstr "Senha:"
#. Translators: this MUST be either "toggle-switch-us"
#. (for toggle switches containing the English words
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:679
#: ../js/ui/popupMenu.js:636
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:205
#: ../js/ui/runDialog.js:201
msgid "Please enter a command:"
msgstr "Introduza um comando:"
#: ../js/ui/searchDisplay.js:310
#: ../js/ui/searchDisplay.js:287
msgid "Searching..."
msgstr "A Procurar..."
#: ../js/ui/searchDisplay.js:324
#: ../js/ui/searchDisplay.js:301
msgid "No matching results."
msgstr "Nenhum resultado coincidente."
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:163
#: ../js/ui/statusMenu.js:228
#: ../js/ui/statusMenu.js:114 ../js/ui/statusMenu.js:178
msgid "Power Off..."
msgstr "Desligar..."
#: ../js/ui/statusMenu.js:163 ../js/ui/statusMenu.js:227
#: ../js/ui/statusMenu.js:116 ../js/ui/statusMenu.js:177
msgid "Suspend"
msgstr "Suspender"
#: ../js/ui/statusMenu.js:184
#: ../js/ui/statusMenu.js:137
msgid "Available"
msgstr "Disponível"
#: ../js/ui/statusMenu.js:189
#: ../js/ui/statusMenu.js:142
msgid "Busy"
msgstr "Ocupado"
#: ../js/ui/statusMenu.js:197
#: ../js/ui/statusMenu.js:150
msgid "My Account"
msgstr "A Minha Conta"
#: ../js/ui/statusMenu.js:201
#: ../js/ui/statusMenu.js:154
msgid "System Settings"
msgstr "Definições de Sistema"
#: ../js/ui/statusMenu.js:208
#: ../js/ui/statusMenu.js:161
msgid "Lock Screen"
msgstr "Trancar o Ecrã"
#: ../js/ui/statusMenu.js:213
#: ../js/ui/statusMenu.js:165
msgid "Switch User"
msgstr "Alternar Utilizador"
#: ../js/ui/statusMenu.js:218
#: ../js/ui/statusMenu.js:170
msgid "Log Out..."
msgstr "Terminar Sessão..."
@@ -836,139 +810,133 @@ msgstr "Apresentar a Disposição de Teclado..."
msgid "Localization Settings"
msgstr "Definições de Localização"
#: ../js/ui/status/network.js:104 ../js/ui/status/network.js:1454
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1393
msgid "<unknown>"
msgstr "<desconhecido>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:311
#: ../js/ui/status/network.js:295
msgid "disabled"
msgstr "desactivado"
#: ../js/ui/status/network.js:494
#: ../js/ui/status/network.js:476
msgid "connecting..."
msgstr "a ligar..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:497
#: ../js/ui/status/network.js:479
msgid "authentication required"
msgstr "necessária autenticação"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:507
msgid "firmware missing"
msgstr "falta o firmware"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:514
#: ../js/ui/status/network.js:485
msgid "cable unplugged"
msgstr "cabo desligado"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:519
#: ../js/ui/status/network.js:489
msgid "unavailable"
msgstr "indisponível"
#: ../js/ui/status/network.js:521
#: ../js/ui/status/network.js:491
msgid "connection failed"
msgstr "falha ao ligar"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:602 ../js/ui/status/network.js:1402
#: ../js/ui/status/network.js:571 ../js/ui/status/network.js:1341
msgid "Connected (private)"
msgstr "Ligado (privada)"
#: ../js/ui/status/network.js:683
#: ../js/ui/status/network.js:636
msgid "Auto Ethernet"
msgstr "Ethernet automática"
#: ../js/ui/status/network.js:758
#: ../js/ui/status/network.js:697
msgid "Auto broadband"
msgstr "Banda larga automática"
#: ../js/ui/status/network.js:761
#: ../js/ui/status/network.js:700
msgid "Auto dial-up"
msgstr "Ligação telefónica automática"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:904 ../js/ui/status/network.js:1414
#: ../js/ui/status/network.js:843 ../js/ui/status/network.js:1353
#, c-format
msgid "Auto %s"
msgstr "%s automática"
#: ../js/ui/status/network.js:906
#: ../js/ui/status/network.js:845
msgid "Auto bluetooth"
msgstr "Bluetooth automático"
#: ../js/ui/status/network.js:1416
#: ../js/ui/status/network.js:1355
msgid "Auto wireless"
msgstr "Wireless automático"
#: ../js/ui/status/network.js:1474
#: ../js/ui/status/network.js:1413
msgid "More..."
msgstr "Mais..."
#: ../js/ui/status/network.js:1497
#: ../js/ui/status/network.js:1436
msgid "Enable networking"
msgstr "Activar a rede"
#: ../js/ui/status/network.js:1509
#: ../js/ui/status/network.js:1448
msgid "Wired"
msgstr "Com fios"
#: ../js/ui/status/network.js:1520
#: ../js/ui/status/network.js:1459
msgid "Wireless"
msgstr "Sem fios"
#: ../js/ui/status/network.js:1530
#: ../js/ui/status/network.js:1469
msgid "Mobile broadband"
msgstr "Banda larga móvel"
#: ../js/ui/status/network.js:1540
#: ../js/ui/status/network.js:1479
msgid "VPN Connections"
msgstr "Ligações VPN"
#: ../js/ui/status/network.js:1549
#: ../js/ui/status/network.js:1488
msgid "Network Settings"
msgstr "Definições de Rede"
#: ../js/ui/status/network.js:1844
#: ../js/ui/status/network.js:1783
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Está ligado à ligação '%s' em banda larga móvel"
#: ../js/ui/status/network.js:1848
#: ../js/ui/status/network.js:1787
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Está ligado à rede sem fios '%s'"
#: ../js/ui/status/network.js:1852
#: ../js/ui/status/network.js:1791
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Está ligado à rede com fios '%s'"
#: ../js/ui/status/network.js:1856
#: ../js/ui/status/network.js:1795
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Está ligado à rede VPN '%s'"
#: ../js/ui/status/network.js:1861
#: ../js/ui/status/network.js:1800
#, c-format
msgid "You're now connected to '%s'"
msgstr "Está ligado a '%s'"
#: ../js/ui/status/network.js:1869
#: ../js/ui/status/network.js:1808
msgid "Connection established"
msgstr "Ligação estabelecida"
#: ../js/ui/status/network.js:1991
#: ../js/ui/status/network.js:1930
msgid "Networking is disabled"
msgstr "Os serviços de rede estão desligados"
#: ../js/ui/status/network.js:2116
#: ../js/ui/status/network.js:2055
msgid "Network Manager"
msgstr "Gestor de Rede"
@@ -1070,22 +1038,22 @@ msgstr "Volume"
msgid "Microphone"
msgstr "Microfone"
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:332
#, c-format
msgid "%s is online."
msgstr "%s está ligado."
#: ../js/ui/telepathyClient.js:340
#: ../js/ui/telepathyClient.js:337
#, c-format
msgid "%s is offline."
msgstr "%s está desligado."
#: ../js/ui/telepathyClient.js:343
#: ../js/ui/telepathyClient.js:340
#, c-format
msgid "%s is away."
msgstr "%s está ausente."
#: ../js/ui/telepathyClient.js:346
#: ../js/ui/telepathyClient.js:343
#, c-format
msgid "%s is busy."
msgstr "%s está ocupado."
@@ -1093,7 +1061,7 @@ msgstr "%s está ocupado."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:482
#: ../js/ui/telepathyClient.js:474
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Enviado às %X de %A"
@@ -1142,7 +1110,7 @@ msgstr[1] "%u Entradas"
msgid "System Sounds"
msgstr "Sons de Sistema"
#: ../src/main.c:446
#: ../src/main.c:397
msgid "Print version"
msgstr "Versão de impressão"
@@ -1151,32 +1119,32 @@ msgstr "Versão de impressão"
msgid "Failed to launch '%s'"
msgstr "Falha ao iniciar '%s'"
#: ../src/shell-global.c:1395
#: ../src/shell-global.c:1340
msgid "Less than a minute ago"
msgstr "Há menos de um minuto atrás"
#: ../src/shell-global.c:1399
#: ../src/shell-global.c:1344
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
msgstr[0] "%d minuto atrás"
msgstr[1] "%d minutos atrás"
#: ../src/shell-global.c:1404
#: ../src/shell-global.c:1349
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
msgstr[0] "%d hora atrás"
msgstr[1] "%d horas atrás"
#: ../src/shell-global.c:1409
#: ../src/shell-global.c:1354
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "%d dia atrás"
msgstr[1] "%d dias atrás"
#: ../src/shell-global.c:1414
#: ../src/shell-global.c:1359
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
@@ -1215,25 +1183,6 @@ msgstr "Sistema de Ficheiros"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "Shut Down"
#~ msgstr "Desligar"
#~ msgid "Click Shut Down to quit these applications and shut down the system."
#~ msgstr ""
#~ "Clique em Desligar para fechar estas aplicações e desligar o sistema."
#~ msgid "The system will shut down automatically in %d seconds."
#~ msgstr "O sistema irá desligar-se automaticamente dentro de %d segundos."
#~ msgid "Shutting down the system."
#~ msgstr "A desligar o sistema."
#~ msgid "Confirm"
#~ msgstr "Confirmar"
#~ msgid "Panel"
#~ msgstr "Painel"
#~ msgid "Clock"
#~ msgstr "Relógio"

1266
po/sk.po

File diff suppressed because it is too large Load Diff

347
po/sl.po
View File

@@ -8,14 +8,14 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-05-09 08:37+0000\n"
"PO-Revision-Date: 2011-05-09 12:27+0100\n"
"POT-Creation-Date: 2011-03-26 15:31+0000\n"
"PO-Revision-Date: 2011-03-26 20:24+0100\n"
"Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
"Language: Slovenian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: Slovenian\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n%100==4 ? 3 : 0);\n"
"X-Poedit-Language: Slovenian\n"
"X-Poedit-Country: SLOVENIA\n"
@@ -138,27 +138,27 @@ msgid "Execution of '%s' failed:"
msgstr "Izvedba '%s' je spodletela:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:260
#: ../js/ui/appDisplay.js:230
msgid "All"
msgstr "Vse"
#: ../js/ui/appDisplay.js:359
#: ../js/ui/appDisplay.js:328
msgid "APPLICATIONS"
msgstr "Programi"
#: ../js/ui/appDisplay.js:385
#: ../js/ui/appDisplay.js:354
msgid "SETTINGS"
msgstr "NASTAVITVE"
#: ../js/ui/appDisplay.js:658
#: ../js/ui/appDisplay.js:625
msgid "New Window"
msgstr "Novo okno"
#: ../js/ui/appDisplay.js:661
#: ../js/ui/appDisplay.js:628
msgid "Remove from Favorites"
msgstr "Odstrani iz priljubljenih"
#: ../js/ui/appDisplay.js:662
#: ../js/ui/appDisplay.js:629
msgid "Add to Favorites"
msgstr "Dodaj med priljubljene"
@@ -292,14 +292,12 @@ msgstr "Nič ni razporejeno"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720
#: ../js/ui/telepathyClient.js:487
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d. %m."
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723
#: ../js/ui/telepathyClient.js:490
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d %B %Y"
@@ -321,7 +319,7 @@ msgid "Next week"
msgstr "Naslednji teden"
#: ../js/ui/dash.js:174
#: ../js/ui/messageTray.js:1037
#: ../js/ui/messageTray.js:1000
msgid "Remove"
msgstr "Odstrani"
@@ -449,9 +447,9 @@ msgstr "Sistem se bo samodejno ponovno zagnal čez %d sekund."
msgid "Restarting the system."
msgstr "Ponoven zagon sistema."
#: ../js/ui/endSessionDialog.js:413
#: ../js/ui/endSessionDialog.js:415
#: ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:491
#: ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Prekliči"
@@ -486,11 +484,11 @@ msgstr "Poglej vir"
msgid "Web Page"
msgstr "Spletna stran"
#: ../js/ui/messageTray.js:1030
#: ../js/ui/messageTray.js:993
msgid "Open"
msgstr "Odpri"
#: ../js/ui/messageTray.js:2194
#: ../js/ui/messageTray.js:2151
msgid "System Information"
msgstr "Podrobnosti sistema"
@@ -513,18 +511,18 @@ msgid "Dash"
msgstr "Armaturna plošča"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:533
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Končaj %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:913
#: ../js/ui/panel.js:878
msgid "Activities"
msgstr "Dejavnosti"
#: ../js/ui/panel.js:1015
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "Vrhnja vrstica"
@@ -557,15 +555,11 @@ msgstr "Skrbnik"
msgid "Authenticate"
msgstr "Overi"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
#: ../js/ui/polkitAuthenticationAgent.js:260
msgid "Sorry, that didn't work. Please try again."
msgstr "Dejanje je spodletelo. Poskusite znova."
#: ../js/ui/polkitAuthenticationAgent.js:276
#: ../js/ui/polkitAuthenticationAgent.js:272
msgid "Password:"
msgstr "Geslo:"
@@ -582,11 +576,11 @@ msgstr "toggle-switch-intl"
msgid "Please enter a command:"
msgstr "Vnos ukaza:"
#: ../js/ui/searchDisplay.js:313
#: ../js/ui/searchDisplay.js:310
msgid "Searching..."
msgstr "Iskanje ..."
#: ../js/ui/searchDisplay.js:327
#: ../js/ui/searchDisplay.js:324
msgid "No matching results."
msgstr "Ni zadetkov iskanja"
@@ -672,11 +666,11 @@ msgid "Large Text"
msgstr "Veliko besedilo"
#: ../js/ui/status/bluetooth.js:42
#: ../js/ui/status/bluetooth.js:264
#: ../js/ui/status/bluetooth.js:358
#: ../js/ui/status/bluetooth.js:392
#: ../js/ui/status/bluetooth.js:432
#: ../js/ui/status/bluetooth.js:465
#: ../js/ui/status/bluetooth.js:237
#: ../js/ui/status/bluetooth.js:333
#: ../js/ui/status/bluetooth.js:367
#: ../js/ui/status/bluetooth.js:407
#: ../js/ui/status/bluetooth.js:440
msgid "Bluetooth"
msgstr "Bluetooth"
@@ -689,103 +683,103 @@ msgid "Send Files to Device..."
msgstr "Pošilji datoteke na napravo ..."
#: ../js/ui/status/bluetooth.js:70
msgid "Set up a New Device..."
msgstr "Nastavitev nove naprave ..."
msgid "Setup a New Device..."
msgstr "Namestitev nove naprave ..."
#: ../js/ui/status/bluetooth.js:95
msgid "Bluetooth Settings"
msgstr "Nastavitve za Bluetooth"
#: ../js/ui/status/bluetooth.js:215
#: ../js/ui/status/bluetooth.js:188
msgid "Connection"
msgstr "Povezava"
#: ../js/ui/status/bluetooth.js:251
#: ../js/ui/status/bluetooth.js:224
msgid "Send Files..."
msgstr "Pošlji datoteke ..."
#: ../js/ui/status/bluetooth.js:256
#: ../js/ui/status/bluetooth.js:229
msgid "Browse Files..."
msgstr "Brskanje datotek ..."
#: ../js/ui/status/bluetooth.js:265
#: ../js/ui/status/bluetooth.js:238
msgid "Error browsing device"
msgstr "Napaka med brskanjem po napravi"
#: ../js/ui/status/bluetooth.js:266
#: ../js/ui/status/bluetooth.js:239
#, c-format
msgid "The requested device cannot be browsed, error is '%s'"
msgstr "Po zahtevani naprave ni mogoče brskati, napaka je '%s'"
#: ../js/ui/status/bluetooth.js:274
#: ../js/ui/status/bluetooth.js:247
msgid "Keyboard Settings"
msgstr "Nastavitve tipkovnice"
#: ../js/ui/status/bluetooth.js:279
#: ../js/ui/status/bluetooth.js:252
msgid "Mouse Settings"
msgstr "Nastavitve miške"
#: ../js/ui/status/bluetooth.js:286
#: ../js/ui/status/bluetooth.js:259
#: ../js/ui/status/volume.js:66
msgid "Sound Settings"
msgstr "Nastavitve zvoka"
#: ../js/ui/status/bluetooth.js:393
#: ../js/ui/status/bluetooth.js:368
#, c-format
msgid "Authorization request from %s"
msgstr "Zahteva za pooblastitev od %s"
#: ../js/ui/status/bluetooth.js:399
#: ../js/ui/status/bluetooth.js:374
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Naprava %s želi dostop do storitve '%s'."
#: ../js/ui/status/bluetooth.js:401
#: ../js/ui/status/bluetooth.js:376
msgid "Always grant access"
msgstr "Vedno odobri dostop"
#: ../js/ui/status/bluetooth.js:402
#: ../js/ui/status/bluetooth.js:377
msgid "Grant this time only"
msgstr "Odobri le tokrat"
#: ../js/ui/status/bluetooth.js:403
#: ../js/ui/status/bluetooth.js:378
msgid "Reject"
msgstr "Zavrni"
#: ../js/ui/status/bluetooth.js:433
#: ../js/ui/status/bluetooth.js:408
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Potrditev razčlenjevanja za %s"
#: ../js/ui/status/bluetooth.js:439
#: ../js/ui/status/bluetooth.js:473
#: ../js/ui/status/bluetooth.js:414
#: ../js/ui/status/bluetooth.js:448
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Naprava %s se skuša povezati s tem računalnikom"
#: ../js/ui/status/bluetooth.js:440
#: ../js/ui/status/bluetooth.js:415
#, c-format
msgid "Please confirm whether the PIN '%s' matches the one on the device."
msgstr "Potrdite, ali se PIN '%s' ujema s tistim na napravi."
#: ../js/ui/status/bluetooth.js:442
#: ../js/ui/status/bluetooth.js:417
msgid "Matches"
msgstr "Ujemanja"
#: ../js/ui/status/bluetooth.js:443
#: ../js/ui/status/bluetooth.js:418
msgid "Does not match"
msgstr "Se ne ujema"
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/status/bluetooth.js:441
#, c-format
msgid "Pairing request for %s"
msgstr "Zahteva razčlenjevanja za %s"
#: ../js/ui/status/bluetooth.js:474
#: ../js/ui/status/bluetooth.js:449
msgid "Please enter the PIN mentioned on the device."
msgstr "Vnesite PIN, ki je naveden na napravi."
#: ../js/ui/status/bluetooth.js:490
#: ../js/ui/status/bluetooth.js:465
msgid "OK"
msgstr "V redu"
@@ -797,141 +791,142 @@ msgstr "Pokaži razporeditev tipkovnice ..."
msgid "Localization Settings"
msgstr "Krajevne nastavitve"
#: ../js/ui/status/network.js:126
#: ../js/ui/status/network.js:104
#: ../js/ui/status/network.js:1454
msgid "<unknown>"
msgstr "<neznano>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:343
#: ../js/ui/status/network.js:311
msgid "disabled"
msgstr "onemogočeno"
#: ../js/ui/status/network.js:542
#: ../js/ui/status/network.js:494
msgid "connecting..."
msgstr "povezovanje ..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:545
#: ../js/ui/status/network.js:497
msgid "authentication required"
msgstr "zahtevana je overitev"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:555
#: ../js/ui/status/network.js:507
msgid "firmware missing"
msgstr "manjka strojna programska oprema"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:562
#: ../js/ui/status/network.js:514
msgid "cable unplugged"
msgstr "kabel ni priklopljen"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:567
#: ../js/ui/status/network.js:519
msgid "unavailable"
msgstr "ni na voljo"
#: ../js/ui/status/network.js:569
#: ../js/ui/status/network.js:521
msgid "connection failed"
msgstr "povezovanje je spodletelo"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:650
#: ../js/ui/status/network.js:1459
#: ../js/ui/status/network.js:602
#: ../js/ui/status/network.js:1402
msgid "Connected (private)"
msgstr "Povezano (zasebna povezava)"
#: ../js/ui/status/network.js:735
#: ../js/ui/status/network.js:683
msgid "Auto Ethernet"
msgstr "Samodejni eternet"
#: ../js/ui/status/network.js:803
#: ../js/ui/status/network.js:758
msgid "Auto broadband"
msgstr "Samodejni širokopasovni dostop"
#: ../js/ui/status/network.js:806
#: ../js/ui/status/network.js:761
msgid "Auto dial-up"
msgstr "Samodejni klicni dostop"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:930
#: ../js/ui/status/network.js:1471
#: ../js/ui/status/network.js:904
#: ../js/ui/status/network.js:1414
#, c-format
msgid "Auto %s"
msgstr "Samodejna povezava z %s"
#: ../js/ui/status/network.js:932
#: ../js/ui/status/network.js:906
msgid "Auto bluetooth"
msgstr "Samodejna povezava z Bluetooth"
#: ../js/ui/status/network.js:1473
#: ../js/ui/status/network.js:1416
msgid "Auto wireless"
msgstr "Samodejni brezžični dostop"
#: ../js/ui/status/network.js:1521
#: ../js/ui/status/network.js:1474
msgid "More..."
msgstr "Več ..."
#: ../js/ui/status/network.js:1563
#: ../js/ui/status/network.js:1497
msgid "Enable networking"
msgstr "Omogoči omrežje"
#: ../js/ui/status/network.js:1575
#: ../js/ui/status/network.js:1509
msgid "Wired"
msgstr "Žično"
#: ../js/ui/status/network.js:1586
#: ../js/ui/status/network.js:1520
msgid "Wireless"
msgstr "Brezžično"
#: ../js/ui/status/network.js:1596
#: ../js/ui/status/network.js:1530
msgid "Mobile broadband"
msgstr "Mobilni širokopasovni dostop"
#: ../js/ui/status/network.js:1606
#: ../js/ui/status/network.js:1540
msgid "VPN Connections"
msgstr "Povezave VPN"
#: ../js/ui/status/network.js:1618
#: ../js/ui/status/network.js:1549
msgid "Network Settings"
msgstr "Omrežne nastavitve"
#: ../js/ui/status/network.js:1912
#: ../js/ui/status/network.js:1844
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Vzpostavljena je povezava z mobilnim širokopasovnim omrežjem '%s'."
#: ../js/ui/status/network.js:1916
#: ../js/ui/status/network.js:1848
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Vzpostavljena je povezava z brezžičnim omrežjem '%s'."
#: ../js/ui/status/network.js:1920
#: ../js/ui/status/network.js:1852
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Vzpostavljena je povezava z žičnim omrežjem '%s'."
#: ../js/ui/status/network.js:1924
#: ../js/ui/status/network.js:1856
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Vzpostavljena je povezava z omrežjem VPN '%s'"
#: ../js/ui/status/network.js:1929
#: ../js/ui/status/network.js:1861
#, c-format
msgid "You're now connected to '%s'"
msgstr "Vzpostavljena je povezava z '%s'."
#: ../js/ui/status/network.js:1937
#: ../js/ui/status/network.js:1869
msgid "Connection established"
msgstr "Povezava je vzpostavljena"
#: ../js/ui/status/network.js:2063
#: ../js/ui/status/network.js:1991
msgid "Networking is disabled"
msgstr "Omrežje je onemogočeno"
#: ../js/ui/status/network.js:2188
#: ../js/ui/status/network.js:2116
msgid "Network Manager"
msgstr "Upravljalnik omrežij"
@@ -1042,22 +1037,22 @@ msgstr "Glasnost"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/telepathyClient.js:330
#: ../js/ui/telepathyClient.js:331
#, c-format
msgid "%s is online."
msgstr "%s je povezan."
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:336
#, c-format
msgid "%s is offline."
msgstr "%s ni povezan."
#: ../js/ui/telepathyClient.js:338
#: ../js/ui/telepathyClient.js:339
#, c-format
msgid "%s is away."
msgstr "%s je odsoten."
#: ../js/ui/telepathyClient.js:341
#: ../js/ui/telepathyClient.js:342
#, c-format
msgid "%s is busy."
msgstr "%s je zaposlen."
@@ -1065,18 +1060,11 @@ msgstr "%s je zaposlen."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:479
#: ../js/ui/telepathyClient.js:473
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Poslano na %X ob %A"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/telepathyClient.js:524
#, c-format
msgid "%s is now known as %s"
msgstr "%s je sedaj znan kot v %s"
#. Translators: this is the text displayed
#. in the search entry when no search is
#. active; it should not exceed ~30
@@ -1126,15 +1114,55 @@ msgstr[3] "%u dovodi naprave"
msgid "System Sounds"
msgstr "Sistemski zvoki"
#: ../src/main.c:445
#: ../src/main.c:446
msgid "Print version"
msgstr "Izpiši različico"
#: ../src/shell-app.c:464
#: ../src/shell-app.c:454
#, c-format
msgid "Failed to launch '%s'"
msgstr "Zaganjanje '%s' je spodletelo"
#: ../src/shell-global.c:1395
msgid "Less than a minute ago"
msgstr "Pred manj kot eno minuto"
#: ../src/shell-global.c:1399
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
msgstr[0] "Pred %d minutami"
msgstr[1] "Pred %d minuto"
msgstr[2] "Pred %d minutama"
msgstr[3] "Pred %d minutami"
#: ../src/shell-global.c:1404
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
msgstr[0] "Pred %d urami"
msgstr[1] "Pred %d uro"
msgstr[2] "Pred %d urama"
msgstr[3] "Pred %d urami"
#: ../src/shell-global.c:1409
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "Pred %d dnevi"
msgstr[1] "Pred %d dnevom"
msgstr[2] "Pred %d dnevoma"
msgstr[3] "Pred %d dnevi"
#: ../src/shell-global.c:1414
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
msgstr[0] "Pred %d tedni"
msgstr[1] "Pred %d tednom"
msgstr[2] "Pred %d tednoma"
msgstr[3] "Pred %d tedni"
#: ../src/shell-mobile-providers.c:80
msgid "United Kingdom"
msgstr "Velika Britanija"
@@ -1167,96 +1195,46 @@ msgstr "Datotečni sistem"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "Less than a minute ago"
#~ msgstr "Pred manj kot eno minuto"
#~ msgid "%d minute ago"
#~ msgid_plural "%d minutes ago"
#~ msgstr[0] "Pred %d minutami"
#~ msgstr[1] "Pred %d minuto"
#~ msgstr[2] "Pred %d minutama"
#~ msgstr[3] "Pred %d minutami"
#~ msgid "%d hour ago"
#~ msgid_plural "%d hours ago"
#~ msgstr[0] "Pred %d urami"
#~ msgstr[1] "Pred %d uro"
#~ msgstr[2] "Pred %d urama"
#~ msgstr[3] "Pred %d urami"
#~ msgid "%d day ago"
#~ msgid_plural "%d days ago"
#~ msgstr[0] "Pred %d dnevi"
#~ msgstr[1] "Pred %d dnevom"
#~ msgstr[2] "Pred %d dnevoma"
#~ msgstr[3] "Pred %d dnevi"
#~ msgid "%d week ago"
#~ msgid_plural "%d weeks ago"
#~ msgstr[0] "Pred %d tedni"
#~ msgstr[1] "Pred %d tednom"
#~ msgstr[2] "Pred %d tednoma"
#~ msgstr[3] "Pred %d tedni"
#~ msgid "Shut Down"
#~ msgstr "Izklopi"
#~ msgid "Click Shut Down to quit these applications and shut down the system."
#~ msgstr "Kliknite Izklop za končanje teh programov in izklop sistema."
#~ msgid "The system will shut down automatically in %d seconds."
#~ msgstr "Sistem se bo samodejno izklopil čez %d sekund."
#~ msgid "Shutting down the system."
#~ msgstr "Izklapljanje sistema."
#~ msgid "Confirm"
#~ msgstr "Potrdi"
#~ msgid "Panel"
#~ msgstr "Pult"
#~ msgid "No such application"
#~ msgstr "Ni takšnega programa"
#~ msgid "Screen Reader"
#~ msgstr "Zaslonski bralnik"
#~ msgid "Screen Keyboard"
#~ msgstr "Zaslonska tipkovnica"
#~ msgid "%s is now known as %s"
#~ msgstr "%s je sedaj znan kot v %s"
#~ msgid "PREFERENCES"
#~ msgstr "Možnosti"
#~ msgid "Shut Down..."
#~ msgstr "Izklopi ..."
#~ msgid "Search your computer"
#~ msgstr "Iskanje po računalniku"
#~ msgid "Clip the crosshairs at the center"
#~ msgstr "Ali merek prekriva kazalko miške v središču"
#~ msgid "Color of the crosshairs"
#~ msgstr "Barva merka"
#~ msgid ""
#~ "Determines the length of the vertical and horizontal lines that make up "
#~ "the crosshairs."
#~ msgstr "Določi dolžino navpične in vodoravne črte, ki določata merek."
#~ msgid ""
#~ "Determines the transparency of the crosshairs, from fully opaque to fully "
#~ "transparent."
#~ msgstr "Določi prosojnost merka, od prekrivne to prozorne."
#~ msgid "Enable lens mode"
#~ msgstr "Omogočeni način leče"
#~ msgid ""
#~ "For centered mouse tracking, when the system pointer is at or near the "
#~ "edge of the screen, the magnified contents continue to scroll such that "
@@ -1265,63 +1243,48 @@ msgstr "%1$s: %2$s"
#~ "Pri usredinjenem sledenju miški, ko je sistemski kazalnik ob robu "
#~ "zaslona, približanje vsebine drsi naprej tako, da je rob zaslona v "
#~ "približanem pogledu."
#~ msgid "Length of the crosshairs"
#~ msgstr "Dolžina merka"
#~ msgid "Magnification factor"
#~ msgstr "Faktor približanja"
#~ msgid "Mouse Tracking Mode"
#~ msgstr "Način sledenja miške"
#~ msgid "Opacity of the crosshairs"
#~ msgstr "Prosojnost merka"
#~ msgid "Screen position"
#~ msgstr "Položaj zaslona"
#~ msgid "Scroll magnified contents beyond the edges of the desktop"
#~ msgstr "Zdrsni približano vsebino preko robov namizja"
#~ msgid "Show or hide crosshairs"
#~ msgstr "Pokaži ali skrij merek"
#~ msgid "Show or hide the magnifier"
#~ msgstr "Pokaži ali skrij približevalnik"
#~ msgid "Show or hide the magnifier and all of its zoom regions."
#~ msgstr "Pokaže ali skrije povečevalo in vsa njegova območja približevanja."
#~ msgid ""
#~ "The color of the the vertical and horizontal lines that make up the "
#~ "crosshairs."
#~ msgstr "Barva navpične in vodoravne črte, ki določata merek."
#~ msgid ""
#~ "The magnified view either fills the entire screen, or occupies the top-"
#~ "half, bottom-half, left-half, or right-half of the screen."
#~ msgstr ""
#~ "Približan pogled lahko zapolni celoten zaslon, lahko pa zasede zgornjo, "
#~ "spodnjo, levo ali pa desno polovico zaslona."
#~ msgid ""
#~ "The power of the magnification. A value of 1.0 means no magnification. A "
#~ "value of 2.0 doubles the size."
#~ msgstr ""
#~ "Vrednost približanja. Vrednost 1.0 pomeni brez približanja, vrednost 2.0 "
#~ "pa podvoji učinek približanja."
#~ msgid "Thickness of the crosshairs"
#~ msgstr "Debelina merka"
#~ msgid ""
#~ "Whether the magnified view should be centered over the location of the "
#~ "system mouse and move with it."
#~ msgstr ""
#~ "Ali naj bo približan pogled usredinjen na mesto sistemske miške in se z "
#~ "njo premika."
#~ msgid ""
#~ "Width of the vertical and horizontal lines that make up the crosshairs."
#~ msgstr "Širina navpične in vodoravne čete, ki določata merek."
@@ -1329,36 +1292,28 @@ msgstr "%1$s: %2$s"
#, fuzzy
#~ msgid "Bluetooth Agent"
#~ msgstr "Agent KAOS"
#~ msgid ""
#~ "Can't add a new workspace because maximum workspaces limit has been "
#~ "reached."
#~ msgstr ""
#~ "Ni mogoče dodati nove delovne površine, ker je doseženo njihovo največje "
#~ "dovoljeno število."
#~ msgid "Can't remove the first workspace."
#~ msgstr "Ni mogoče odstraniti prve delovne površine."
#~ msgid "Clock"
#~ msgstr "Ura"
#~ msgid "Customize the panel clock"
#~ msgstr "Prilagodi uro pladnja"
#~ msgid "Custom format of the clock"
#~ msgstr "Zapis ure po meri"
#~ msgid "Hour format"
#~ msgstr "Urni zapis"
#~ msgid ""
#~ "If true and format is either \"12-hour\" or \"24-hour\", display seconds "
#~ "in time."
#~ msgstr ""
#~ "Izbrana možnost določa ali \"12-urni\" ali pa \"24-urni\" zapis časa s "
#~ "prikazanimi sekundami."
#~ msgid ""
#~ "This key specifies the format used by the panel clock when the format key "
#~ "is set to \"custom\". You can use conversion specifiers understood by "
@@ -1369,103 +1324,77 @@ msgstr "%1$s: %2$s"
#~ "zapisa nastavljen kot \"prikrojen\". Za določitev zapisa lahko uporabite "
#~ "tudi oznake funkcije strftime(), ki so podrobneje zapisane v priročniku "
#~ "funkcije."
#~ msgid ""
#~ "This key specifies the hour format used by the panel clock. Possible "
#~ "values are \"12-hour\", \"24-hour\", \"unix\" and \"custom\". If set to "
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. 1970-"
#~ "01-01. If set to \"custom\", the clock will display time according to the "
#~ "format specified in the custom_format key. Note that if set to either "
#~ "\"unix\" or \"custom\", the show_date and show_seconds keys are ignored."
#~ "\"unix\", the clock will display time in seconds since Epoch, i.e. "
#~ "1970-01-01. If set to \"custom\", the clock will display time according "
#~ "to the format specified in the custom_format key. Note that if set to "
#~ "either \"unix\" or \"custom\", the show_date and show_seconds keys are "
#~ "ignored."
#~ msgstr ""
#~ "Ključ določa zapis ure. Mogoče vrednosti so \"12-urni\", \"24-urni\", "
#~ "\"unix\" in \"po meri\". Možnost \"unix\" prikazuje čas v sekundah od "
#~ "začetka ere, torej od 01.01.1970, možnost \"po meri\" pa omogoča "
#~ "prikrojen zapis. Pri izbiri zapisa \"unix\" ali \"po meri\" sta izbiri "
#~ "pokaži datum in pokaži sekunde, prezrti."
#~ msgid "Clock Format"
#~ msgstr "Zapis ure"
#~ msgid "Clock Preferences"
#~ msgstr "Možnosti ure"
#~ msgid "Panel Display"
#~ msgstr "Prikazovanje pladnja"
#~ msgid "Show seco_nds"
#~ msgstr "Pokaži _sekunde"
#~ msgid "Show the _date"
#~ msgstr "Pokaži _datum"
#~ msgid "_12 hour format"
#~ msgstr "_12-urni zapis časa"
#~ msgid "_24 hour format"
#~ msgstr "_24-urni zapis časa"
#~ msgid "Preferences"
#~ msgstr "Možnosti"
#~ msgid "What's using power..."
#~ msgstr "Kaj porablja napetost ..."
#~ msgid "Overview workspace view mode"
#~ msgstr "Način pregleda predogleda delovnih površin"
#~ msgid ""
#~ "The selected workspace view mode in the overview. Supported values are "
#~ "\"single\" and \"grid\"."
#~ msgstr ""
#~ "Izbrani pogled delovnih površin v predogledu. Podprte vrednosti sta "
#~ "\"enojno\" in \"mrežno\"."
#~ msgid "Drag here to add favorites"
#~ msgstr "S potegom na to mesto se izbor doda med priljubljene"
#~ msgid "Find"
#~ msgstr "Najdi"
#~ msgid "Invisible"
#~ msgstr "Nevidno"
#~ msgid "System Preferences..."
#~ msgstr "Sistemske možnosti ..."
#~ msgid "ON"
#~ msgstr "⚪"
#~ msgid "OFF"
#~ msgstr "⚫"
#~ msgid "Sidebar"
#~ msgstr "Stranska vrstica"
#~ msgid "Recent Documents"
#~ msgstr "Nedavni dokumenti"
#~ msgid "PLACES"
#~ msgstr "Mesta"
#~ msgid "SEARCH RESULTS"
#~ msgstr "Rezultati iskanja"
#~ msgid "Can't lock screen: %s"
#~ msgstr "Ni mogoče zakleniti zaslona: %s"
#~ msgid "Can't temporarily set screensaver to blank screen: %s"
#~ msgstr ""
#~ "Ni mogoče začasno nastaviti črnega zaslona za ohranjevalnik zaslona: %s"
#~ msgid "Can't logout: %s"
#~ msgstr "Ni se mogoče odjaviti: %s"
#~ msgid "Frequent"
#~ msgstr "Pogosto"
#~ msgid "(see all)"
#~ msgstr "(poglej vse)"
#~ msgid "Browse"
#~ msgstr "Prebrskaj"

239
po/sr.po
View File

@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-03-25 20:20+0000\n"
"PO-Revision-Date: 2011-03-31 11:06+0200\n"
"POT-Creation-Date: 2011-03-19 10:16+0000\n"
"PO-Revision-Date: 2011-03-19 12:37+0100\n"
"Last-Translator: Милош Поповић <gpopac@gmail.com>\n"
"Language-Team: Serbian <gnom@prevod.org>\n"
"MIME-Version: 1.0\n"
@@ -188,27 +188,27 @@ msgid "Execution of '%s' failed:"
msgstr "Није успело покретање „%s“:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:230
#: ../js/ui/appDisplay.js:226
msgid "All"
msgstr "Све"
#: ../js/ui/appDisplay.js:328
#: ../js/ui/appDisplay.js:324
msgid "APPLICATIONS"
msgstr "ПРОГРАМИ"
#: ../js/ui/appDisplay.js:354
#: ../js/ui/appDisplay.js:350
msgid "SETTINGS"
msgstr "ПОДЕШАВАЊА"
#: ../js/ui/appDisplay.js:625
#: ../js/ui/appDisplay.js:616
msgid "New Window"
msgstr "Нови прозор"
#: ../js/ui/appDisplay.js:628
#: ../js/ui/appDisplay.js:619
msgid "Remove from Favorites"
msgstr "Уклони из омиљених"
#: ../js/ui/appDisplay.js:629
#: ../js/ui/appDisplay.js:620
msgid "Add to Favorites"
msgstr "Додај у омиљене"
@@ -368,7 +368,7 @@ msgstr "Ове недеље"
msgid "Next week"
msgstr "Следеће недеље"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:994
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:933
msgid "Remove"
msgstr "Уклони"
@@ -436,7 +436,7 @@ msgstr "СКОРАШЊЕ СТАВКЕ"
msgid "Log Out %s"
msgstr "Одјави „%s“"
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:70
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:69
msgid "Log Out"
msgstr "Одјави"
@@ -459,50 +459,47 @@ msgstr "Бићете аутоматски одјављени за %d сек."
msgid "Logging out of the system."
msgstr "Одјављујем се са система."
#: ../js/ui/endSessionDialog.js:75 ../js/ui/endSessionDialog.js:82
#| msgid "Power Off..."
msgid "Power Off"
msgstr "Искључи"
#: ../js/ui/endSessionDialog.js:74 ../js/ui/endSessionDialog.js:78
msgid "Shut Down"
msgstr "Угаси"
#: ../js/ui/endSessionDialog.js:75
msgid "Click Shut Down to quit these applications and shut down the system."
msgstr "Кликните на „Угаси“ да напустите ове програме и да угасите систем."
#: ../js/ui/endSessionDialog.js:76
#| msgid "Click Log Out to quit these applications and log out of the system."
msgid "Click Power Off to quit these applications and power off the system."
msgstr ""
"Кликните на „Искључи“ да напустите ове програме и да искључите рачунар."
#, c-format
msgid "The system will shut down automatically in %d seconds."
msgstr "Систем ће се аутоматски искључити за %d сек."
#: ../js/ui/endSessionDialog.js:77
#, c-format
#| msgid "The system will restart automatically in %d seconds."
msgid "The system will power off automatically in %d seconds."
msgstr "Рачунар ће се аутоматски искључити за %d сек."
msgid "Shutting down the system."
msgstr "Искључујем систем."
#: ../js/ui/endSessionDialog.js:78
#| msgid "Logging out of the system."
msgid "Powering off the system."
msgstr "Искључујем рачунар."
#: ../js/ui/endSessionDialog.js:80 ../js/ui/endSessionDialog.js:88
#: ../js/ui/endSessionDialog.js:93
#: ../js/ui/endSessionDialog.js:84 ../js/ui/endSessionDialog.js:88
msgid "Restart"
msgstr "Поново покрени"
#: ../js/ui/endSessionDialog.js:89
#: ../js/ui/endSessionDialog.js:85
msgid "Click Restart to quit these applications and restart the system."
msgstr ""
"Кликните на „Поново покрени“ да напустите ове програме и да поново покренете "
"систем."
#: ../js/ui/endSessionDialog.js:90
#: ../js/ui/endSessionDialog.js:86
#, c-format
msgid "The system will restart automatically in %d seconds."
msgstr "Систем ће се аутоматски поново покренути за %d сек."
#: ../js/ui/endSessionDialog.js:91
#: ../js/ui/endSessionDialog.js:87
msgid "Restarting the system."
msgstr "Поновно покрећем систем."
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/endSessionDialog.js:395
msgid "Confirm"
msgstr "Потврди"
#: ../js/ui/endSessionDialog.js:400 ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Откажи"
@@ -536,29 +533,29 @@ msgstr "Погледај извор"
msgid "Web Page"
msgstr "Интернет страница"
#: ../js/ui/messageTray.js:987
#: ../js/ui/messageTray.js:926
msgid "Open"
msgstr "Отвори"
#: ../js/ui/messageTray.js:2145
#: ../js/ui/messageTray.js:1986
msgid "System Information"
msgstr "Информације о систему"
#: ../js/ui/overview.js:91
#: ../js/ui/overview.js:88
msgid "Undo"
msgstr "Опозови"
#: ../js/ui/overview.js:186
#: ../js/ui/overview.js:183
msgid "Windows"
msgstr "Прозори"
#: ../js/ui/overview.js:189
#: ../js/ui/overview.js:186
msgid "Applications"
msgstr "Програми"
#. Translators: this is the name of the dock/favorites area on
#. the left of the overview
#: ../js/ui/overview.js:205
#: ../js/ui/overview.js:202
msgid "Dash"
msgstr "Дашер"
@@ -570,13 +567,13 @@ msgstr "Напусти „%s“"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:878
#: ../js/ui/panel.js:874
msgid "Activities"
msgstr "Активности"
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "Горња трака"
#: ../js/ui/panel.js:975
msgid "Panel"
msgstr "Панел"
#: ../js/ui/placeDisplay.js:122
#, c-format
@@ -595,83 +592,60 @@ msgstr "Повежи се на..."
msgid "PLACES & DEVICES"
msgstr "МЕСТА И УРЕЂАЈИ"
#: ../js/ui/polkitAuthenticationAgent.js:74
#| msgid "authentication required"
msgid "Authentication Required"
msgstr "Потребна је пријава"
#: ../js/ui/polkitAuthenticationAgent.js:108
msgid "Administrator"
msgstr "Администратор"
#: ../js/ui/polkitAuthenticationAgent.js:176
#| msgid "authentication required"
msgid "Authenticate"
msgstr "Потврда идентитета"
#: ../js/ui/polkitAuthenticationAgent.js:260
msgid "Sorry, that didn't work. Please try again."
msgstr "Погрешно! Покушајте поново."
#: ../js/ui/polkitAuthenticationAgent.js:272
msgid "Password:"
msgstr "Лозинка:"
#. Translators: this MUST be either "toggle-switch-us"
#. (for toggle switches containing the English words
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:679
#: ../js/ui/popupMenu.js:636
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:205
#: ../js/ui/runDialog.js:201
msgid "Please enter a command:"
msgstr "Унесите наредбу:"
#: ../js/ui/searchDisplay.js:310
#: ../js/ui/searchDisplay.js:287
msgid "Searching..."
msgstr "Тражим..."
#: ../js/ui/searchDisplay.js:324
#: ../js/ui/searchDisplay.js:301
msgid "No matching results."
msgstr "Нема одговарајућих резултата."
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:163
#: ../js/ui/statusMenu.js:228
#: ../js/ui/statusMenu.js:114 ../js/ui/statusMenu.js:178
msgid "Power Off..."
msgstr "Искључи..."
#: ../js/ui/statusMenu.js:163 ../js/ui/statusMenu.js:227
#: ../js/ui/statusMenu.js:116 ../js/ui/statusMenu.js:177
msgid "Suspend"
msgstr "Обустави"
#: ../js/ui/statusMenu.js:184
#: ../js/ui/statusMenu.js:137
msgid "Available"
msgstr "Доступан"
#: ../js/ui/statusMenu.js:189
#: ../js/ui/statusMenu.js:142
msgid "Busy"
msgstr "Заузет"
#: ../js/ui/statusMenu.js:197
#: ../js/ui/statusMenu.js:150
msgid "My Account"
msgstr "Мој налог"
#: ../js/ui/statusMenu.js:201
#: ../js/ui/statusMenu.js:154
msgid "System Settings"
msgstr "Подешавања система"
#: ../js/ui/statusMenu.js:208
#: ../js/ui/statusMenu.js:161
msgid "Lock Screen"
msgstr "Закључај екран"
#: ../js/ui/statusMenu.js:213
#: ../js/ui/statusMenu.js:165
msgid "Switch User"
msgstr "Промени корисника"
#: ../js/ui/statusMenu.js:218
#: ../js/ui/statusMenu.js:170
msgid "Log Out..."
msgstr "Одјави ме..."
@@ -838,139 +812,143 @@ msgstr "Прикажи распоред тастатуре..."
msgid "Localization Settings"
msgstr "Подешавања локализације"
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1437
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1393
#| msgid "Unknown"
msgid "<unknown>"
msgstr "<непознато>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:295
#| msgid "Disabled"
msgid "disabled"
msgstr "онемогућено"
#: ../js/ui/status/network.js:478
#: ../js/ui/status/network.js:476
#| msgid "Connection"
msgid "connecting..."
msgstr "повезујем се..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:481
#: ../js/ui/status/network.js:479
msgid "authentication required"
msgstr "потребна је пријава"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:491
msgid "firmware missing"
msgstr "недостаје фирмвер"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:498
#: ../js/ui/status/network.js:485
msgid "cable unplugged"
msgstr "кабли је искључен"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:503
#: ../js/ui/status/network.js:489
#| msgid "Available"
msgid "unavailable"
msgstr "недоступно"
#: ../js/ui/status/network.js:505
#: ../js/ui/status/network.js:491
#| msgid "Connection"
msgid "connection failed"
msgstr "повезивање није успело"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:585 ../js/ui/status/network.js:1385
#: ../js/ui/status/network.js:571 ../js/ui/status/network.js:1341
msgid "Connected (private)"
msgstr "Повезан (приватно)"
#: ../js/ui/status/network.js:666
#: ../js/ui/status/network.js:636
msgid "Auto Ethernet"
msgstr "Аутоматска жичана веза"
#: ../js/ui/status/network.js:741
#: ../js/ui/status/network.js:697
msgid "Auto broadband"
msgstr "Аутоматска широкопојасна веза"
#: ../js/ui/status/network.js:744
#: ../js/ui/status/network.js:700
msgid "Auto dial-up"
msgstr "Аутоматска дајал-ап веза"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:887 ../js/ui/status/network.js:1397
#: ../js/ui/status/network.js:843 ../js/ui/status/network.js:1353
#, c-format
#| msgid "Quit %s"
msgid "Auto %s"
msgstr "Аутоматска %s веза"
#: ../js/ui/status/network.js:889
#: ../js/ui/status/network.js:845
#| msgid "Bluetooth"
msgid "Auto bluetooth"
msgstr "Аутоматска блутут веза"
#: ../js/ui/status/network.js:1399
#: ../js/ui/status/network.js:1355
msgid "Auto wireless"
msgstr "Аутоматска бежична веза"
#: ../js/ui/status/network.js:1457
#: ../js/ui/status/network.js:1413
msgid "More..."
msgstr "Више..."
#: ../js/ui/status/network.js:1480
#: ../js/ui/status/network.js:1436
msgid "Enable networking"
msgstr "Омогући мрежне услуге"
#: ../js/ui/status/network.js:1492
#: ../js/ui/status/network.js:1448
msgid "Wired"
msgstr "Жичана"
#: ../js/ui/status/network.js:1503
#: ../js/ui/status/network.js:1459
msgid "Wireless"
msgstr "Бежична"
#: ../js/ui/status/network.js:1513
#: ../js/ui/status/network.js:1469
msgid "Mobile broadband"
msgstr "Мобилна широкопојасна"
#: ../js/ui/status/network.js:1523
#: ../js/ui/status/network.js:1479
#| msgid "Connection"
msgid "VPN Connections"
msgstr "ВПН веза"
#: ../js/ui/status/network.js:1532
#: ../js/ui/status/network.js:1488
#| msgid "Power Settings"
msgid "Network Settings"
msgstr "Подешавања мрежа"
#: ../js/ui/status/network.js:1827
#: ../js/ui/status/network.js:1783
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Повезани сте на мобилну широкопојасну мрежу „%s“"
#: ../js/ui/status/network.js:1831
#: ../js/ui/status/network.js:1787
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Повезани сте на мобилну бежичну мрежу „%s“"
#: ../js/ui/status/network.js:1835
#: ../js/ui/status/network.js:1791
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Повезани сте на мобилну жичану мрежу „%s“"
#: ../js/ui/status/network.js:1839
#: ../js/ui/status/network.js:1795
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Повезани сте на мобилну ВПН мрежу „%s“"
#: ../js/ui/status/network.js:1844
#: ../js/ui/status/network.js:1800
#, c-format
msgid "You're now connected to '%s'"
msgstr "Повезани сте на „%s“"
#: ../js/ui/status/network.js:1852
#: ../js/ui/status/network.js:1808
#| msgid "Connection"
msgid "Connection established"
msgstr "Веза је успостављена"
#: ../js/ui/status/network.js:1974
#: ../js/ui/status/network.js:1930
msgid "Networking is disabled"
msgstr "Умрежавање је онемогућено"
#: ../js/ui/status/network.js:2099
#: ../js/ui/status/network.js:2055
msgid "Network Manager"
msgstr "Управник мреже"
@@ -1068,7 +1046,7 @@ msgstr "Таблет"
msgid "Computer"
msgstr "Рачунар"
#: ../js/ui/status/power.js:250 ../src/shell-app-system.c:1088
#: ../js/ui/status/power.js:250 ../src/shell-app-system.c:961
msgid "Unknown"
msgstr "Непознато"
@@ -1156,20 +1134,21 @@ msgstr[3] "%u улаз"
msgid "System Sounds"
msgstr "Системски звуци"
#: ../src/main.c:446
#: ../src/main.c:397
msgid "Print version"
msgstr "Испиши вррзију"
#: ../src/shell-app.c:454
#, c-format
#| msgid "Failed to unmount '%s'"
msgid "Failed to launch '%s'"
msgstr "Не могу да покренем „%s“"
#: ../src/shell-global.c:1395
#: ../src/shell-global.c:1340
msgid "Less than a minute ago"
msgstr "Пре мање од једног минута"
#: ../src/shell-global.c:1399
#: ../src/shell-global.c:1344
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
@@ -1178,7 +1157,7 @@ msgstr[1] "Пре %d минута"
msgstr[2] "Пре %d минута"
msgstr[3] "Пре један минут"
#: ../src/shell-global.c:1404
#: ../src/shell-global.c:1349
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
@@ -1187,7 +1166,7 @@ msgstr[1] "Пре %d сата"
msgstr[2] "Пре %d сати"
msgstr[3] "Пре једног сата"
#: ../src/shell-global.c:1409
#: ../src/shell-global.c:1354
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
@@ -1196,7 +1175,7 @@ msgstr[1] "Пре %d дана"
msgstr[2] "Пре %d дана"
msgstr[3] "Пре један дан"
#: ../src/shell-global.c:1414
#: ../src/shell-global.c:1359
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
@@ -1237,24 +1216,6 @@ msgstr "Систем датотека"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "Shut Down"
#~ msgstr "Угаси"
#~ msgid "Click Shut Down to quit these applications and shut down the system."
#~ msgstr "Кликните на „Угаси“ да напустите ове програме и да угасите систем."
#~ msgid "The system will shut down automatically in %d seconds."
#~ msgstr "Систем ће се аутоматски искључити за %d сек."
#~ msgid "Shutting down the system."
#~ msgstr "Искључујем систем."
#~ msgid "Confirm"
#~ msgstr "Потврди"
#~ msgid "Panel"
#~ msgstr "Панел"
#~| msgid "Applications"
#~ msgid "No such application"
#~ msgstr "Нема таквог програма"

View File

@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2011-03-25 20:20+0000\n"
"PO-Revision-Date: 2011-03-31 11:06+0200\n"
"POT-Creation-Date: 2011-03-19 10:16+0000\n"
"PO-Revision-Date: 2011-03-19 12:37+0100\n"
"Last-Translator: Miloš Popović <gpopac@gmail.com>\n"
"Language-Team: Serbian <gnom@prevod.org>\n"
"MIME-Version: 1.0\n"
@@ -188,27 +188,27 @@ msgid "Execution of '%s' failed:"
msgstr "Nije uspelo pokretanje „%s“:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:230
#: ../js/ui/appDisplay.js:226
msgid "All"
msgstr "Sve"
#: ../js/ui/appDisplay.js:328
#: ../js/ui/appDisplay.js:324
msgid "APPLICATIONS"
msgstr "PROGRAMI"
#: ../js/ui/appDisplay.js:354
#: ../js/ui/appDisplay.js:350
msgid "SETTINGS"
msgstr "PODEŠAVANJA"
#: ../js/ui/appDisplay.js:625
#: ../js/ui/appDisplay.js:616
msgid "New Window"
msgstr "Novi prozor"
#: ../js/ui/appDisplay.js:628
#: ../js/ui/appDisplay.js:619
msgid "Remove from Favorites"
msgstr "Ukloni iz omiljenih"
#: ../js/ui/appDisplay.js:629
#: ../js/ui/appDisplay.js:620
msgid "Add to Favorites"
msgstr "Dodaj u omiljene"
@@ -368,7 +368,7 @@ msgstr "Ove nedelje"
msgid "Next week"
msgstr "Sledeće nedelje"
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:994
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:933
msgid "Remove"
msgstr "Ukloni"
@@ -436,7 +436,7 @@ msgstr "SKORAŠNJE STAVKE"
msgid "Log Out %s"
msgstr "Odjavi „%s“"
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:70
#: ../js/ui/endSessionDialog.js:64 ../js/ui/endSessionDialog.js:69
msgid "Log Out"
msgstr "Odjavi"
@@ -459,50 +459,47 @@ msgstr "Bićete automatski odjavljeni za %d sek."
msgid "Logging out of the system."
msgstr "Odjavljujem se sa sistema."
#: ../js/ui/endSessionDialog.js:75 ../js/ui/endSessionDialog.js:82
#| msgid "Power Off..."
msgid "Power Off"
msgstr "Isključi"
#: ../js/ui/endSessionDialog.js:74 ../js/ui/endSessionDialog.js:78
msgid "Shut Down"
msgstr "Ugasi"
#: ../js/ui/endSessionDialog.js:75
msgid "Click Shut Down to quit these applications and shut down the system."
msgstr "Kliknite na „Ugasi“ da napustite ove programe i da ugasite sistem."
#: ../js/ui/endSessionDialog.js:76
#| msgid "Click Log Out to quit these applications and log out of the system."
msgid "Click Power Off to quit these applications and power off the system."
msgstr ""
"Kliknite na „Isključi“ da napustite ove programe i da isključite računar."
#, c-format
msgid "The system will shut down automatically in %d seconds."
msgstr "Sistem će se automatski isključiti za %d sek."
#: ../js/ui/endSessionDialog.js:77
#, c-format
#| msgid "The system will restart automatically in %d seconds."
msgid "The system will power off automatically in %d seconds."
msgstr "Računar će se automatski isključiti za %d sek."
msgid "Shutting down the system."
msgstr "Isključujem sistem."
#: ../js/ui/endSessionDialog.js:78
#| msgid "Logging out of the system."
msgid "Powering off the system."
msgstr "Isključujem računar."
#: ../js/ui/endSessionDialog.js:80 ../js/ui/endSessionDialog.js:88
#: ../js/ui/endSessionDialog.js:93
#: ../js/ui/endSessionDialog.js:84 ../js/ui/endSessionDialog.js:88
msgid "Restart"
msgstr "Ponovo pokreni"
#: ../js/ui/endSessionDialog.js:89
#: ../js/ui/endSessionDialog.js:85
msgid "Click Restart to quit these applications and restart the system."
msgstr ""
"Kliknite na „Ponovo pokreni“ da napustite ove programe i da ponovo pokrenete "
"sistem."
#: ../js/ui/endSessionDialog.js:90
#: ../js/ui/endSessionDialog.js:86
#, c-format
msgid "The system will restart automatically in %d seconds."
msgstr "Sistem će se automatski ponovo pokrenuti za %d sek."
#: ../js/ui/endSessionDialog.js:91
#: ../js/ui/endSessionDialog.js:87
msgid "Restarting the system."
msgstr "Ponovno pokrećem sistem."
#: ../js/ui/endSessionDialog.js:415 ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/endSessionDialog.js:395
msgid "Confirm"
msgstr "Potvrdi"
#: ../js/ui/endSessionDialog.js:400 ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Otkaži"
@@ -536,29 +533,29 @@ msgstr "Pogledaj izvor"
msgid "Web Page"
msgstr "Internet stranica"
#: ../js/ui/messageTray.js:987
#: ../js/ui/messageTray.js:926
msgid "Open"
msgstr "Otvori"
#: ../js/ui/messageTray.js:2145
#: ../js/ui/messageTray.js:1986
msgid "System Information"
msgstr "Informacije o sistemu"
#: ../js/ui/overview.js:91
#: ../js/ui/overview.js:88
msgid "Undo"
msgstr "Opozovi"
#: ../js/ui/overview.js:186
#: ../js/ui/overview.js:183
msgid "Windows"
msgstr "Prozori"
#: ../js/ui/overview.js:189
#: ../js/ui/overview.js:186
msgid "Applications"
msgstr "Programi"
#. Translators: this is the name of the dock/favorites area on
#. the left of the overview
#: ../js/ui/overview.js:205
#: ../js/ui/overview.js:202
msgid "Dash"
msgstr "Dašer"
@@ -570,13 +567,13 @@ msgstr "Napusti „%s“"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:878
#: ../js/ui/panel.js:874
msgid "Activities"
msgstr "Aktivnosti"
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "Gornja traka"
#: ../js/ui/panel.js:975
msgid "Panel"
msgstr "Panel"
#: ../js/ui/placeDisplay.js:122
#, c-format
@@ -595,83 +592,60 @@ msgstr "Poveži se na..."
msgid "PLACES & DEVICES"
msgstr "MESTA I UREĐAJI"
#: ../js/ui/polkitAuthenticationAgent.js:74
#| msgid "authentication required"
msgid "Authentication Required"
msgstr "Potrebna je prijava"
#: ../js/ui/polkitAuthenticationAgent.js:108
msgid "Administrator"
msgstr "Administrator"
#: ../js/ui/polkitAuthenticationAgent.js:176
#| msgid "authentication required"
msgid "Authenticate"
msgstr "Potvrda identiteta"
#: ../js/ui/polkitAuthenticationAgent.js:260
msgid "Sorry, that didn't work. Please try again."
msgstr "Pogrešno! Pokušajte ponovo."
#: ../js/ui/polkitAuthenticationAgent.js:272
msgid "Password:"
msgstr "Lozinka:"
#. Translators: this MUST be either "toggle-switch-us"
#. (for toggle switches containing the English words
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
#. switches containing "◯" and "|"). Other values will
#. simply result in invisible toggle switches.
#: ../js/ui/popupMenu.js:679
#: ../js/ui/popupMenu.js:636
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:205
#: ../js/ui/runDialog.js:201
msgid "Please enter a command:"
msgstr "Unesite naredbu:"
#: ../js/ui/searchDisplay.js:310
#: ../js/ui/searchDisplay.js:287
msgid "Searching..."
msgstr "Tražim..."
#: ../js/ui/searchDisplay.js:324
#: ../js/ui/searchDisplay.js:301
msgid "No matching results."
msgstr "Nema odgovarajućih rezultata."
#: ../js/ui/statusMenu.js:161 ../js/ui/statusMenu.js:163
#: ../js/ui/statusMenu.js:228
#: ../js/ui/statusMenu.js:114 ../js/ui/statusMenu.js:178
msgid "Power Off..."
msgstr "Isključi..."
#: ../js/ui/statusMenu.js:163 ../js/ui/statusMenu.js:227
#: ../js/ui/statusMenu.js:116 ../js/ui/statusMenu.js:177
msgid "Suspend"
msgstr "Obustavi"
#: ../js/ui/statusMenu.js:184
#: ../js/ui/statusMenu.js:137
msgid "Available"
msgstr "Dostupan"
#: ../js/ui/statusMenu.js:189
#: ../js/ui/statusMenu.js:142
msgid "Busy"
msgstr "Zauzet"
#: ../js/ui/statusMenu.js:197
#: ../js/ui/statusMenu.js:150
msgid "My Account"
msgstr "Moj nalog"
#: ../js/ui/statusMenu.js:201
#: ../js/ui/statusMenu.js:154
msgid "System Settings"
msgstr "Podešavanja sistema"
#: ../js/ui/statusMenu.js:208
#: ../js/ui/statusMenu.js:161
msgid "Lock Screen"
msgstr "Zaključaj ekran"
#: ../js/ui/statusMenu.js:213
#: ../js/ui/statusMenu.js:165
msgid "Switch User"
msgstr "Promeni korisnika"
#: ../js/ui/statusMenu.js:218
#: ../js/ui/statusMenu.js:170
msgid "Log Out..."
msgstr "Odjavi me..."
@@ -838,139 +812,143 @@ msgstr "Prikaži raspored tastature..."
msgid "Localization Settings"
msgstr "Podešavanja lokalizacije"
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1437
#: ../js/ui/status/network.js:102 ../js/ui/status/network.js:1393
#| msgid "Unknown"
msgid "<unknown>"
msgstr "<nepoznato>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:295
#| msgid "Disabled"
msgid "disabled"
msgstr "onemogućeno"
#: ../js/ui/status/network.js:478
#: ../js/ui/status/network.js:476
#| msgid "Connection"
msgid "connecting..."
msgstr "povezujem se..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:481
#: ../js/ui/status/network.js:479
msgid "authentication required"
msgstr "potrebna je prijava"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:491
msgid "firmware missing"
msgstr "nedostaje firmver"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:498
#: ../js/ui/status/network.js:485
msgid "cable unplugged"
msgstr "kabli je isključen"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:503
#: ../js/ui/status/network.js:489
#| msgid "Available"
msgid "unavailable"
msgstr "nedostupno"
#: ../js/ui/status/network.js:505
#: ../js/ui/status/network.js:491
#| msgid "Connection"
msgid "connection failed"
msgstr "povezivanje nije uspelo"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:585 ../js/ui/status/network.js:1385
#: ../js/ui/status/network.js:571 ../js/ui/status/network.js:1341
msgid "Connected (private)"
msgstr "Povezan (privatno)"
#: ../js/ui/status/network.js:666
#: ../js/ui/status/network.js:636
msgid "Auto Ethernet"
msgstr "Automatska žičana veza"
#: ../js/ui/status/network.js:741
#: ../js/ui/status/network.js:697
msgid "Auto broadband"
msgstr "Automatska širokopojasna veza"
#: ../js/ui/status/network.js:744
#: ../js/ui/status/network.js:700
msgid "Auto dial-up"
msgstr "Automatska dajal-ap veza"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:887 ../js/ui/status/network.js:1397
#: ../js/ui/status/network.js:843 ../js/ui/status/network.js:1353
#, c-format
#| msgid "Quit %s"
msgid "Auto %s"
msgstr "Automatska %s veza"
#: ../js/ui/status/network.js:889
#: ../js/ui/status/network.js:845
#| msgid "Bluetooth"
msgid "Auto bluetooth"
msgstr "Automatska blutut veza"
#: ../js/ui/status/network.js:1399
#: ../js/ui/status/network.js:1355
msgid "Auto wireless"
msgstr "Automatska bežična veza"
#: ../js/ui/status/network.js:1457
#: ../js/ui/status/network.js:1413
msgid "More..."
msgstr "Više..."
#: ../js/ui/status/network.js:1480
#: ../js/ui/status/network.js:1436
msgid "Enable networking"
msgstr "Omogući mrežne usluge"
#: ../js/ui/status/network.js:1492
#: ../js/ui/status/network.js:1448
msgid "Wired"
msgstr "Žičana"
#: ../js/ui/status/network.js:1503
#: ../js/ui/status/network.js:1459
msgid "Wireless"
msgstr "Bežična"
#: ../js/ui/status/network.js:1513
#: ../js/ui/status/network.js:1469
msgid "Mobile broadband"
msgstr "Mobilna širokopojasna"
#: ../js/ui/status/network.js:1523
#: ../js/ui/status/network.js:1479
#| msgid "Connection"
msgid "VPN Connections"
msgstr "VPN veza"
#: ../js/ui/status/network.js:1532
#: ../js/ui/status/network.js:1488
#| msgid "Power Settings"
msgid "Network Settings"
msgstr "Podešavanja mreža"
#: ../js/ui/status/network.js:1827
#: ../js/ui/status/network.js:1783
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Povezani ste na mobilnu širokopojasnu mrežu „%s“"
#: ../js/ui/status/network.js:1831
#: ../js/ui/status/network.js:1787
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Povezani ste na mobilnu bežičnu mrežu „%s“"
#: ../js/ui/status/network.js:1835
#: ../js/ui/status/network.js:1791
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Povezani ste na mobilnu žičanu mrežu „%s“"
#: ../js/ui/status/network.js:1839
#: ../js/ui/status/network.js:1795
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Povezani ste na mobilnu VPN mrežu „%s“"
#: ../js/ui/status/network.js:1844
#: ../js/ui/status/network.js:1800
#, c-format
msgid "You're now connected to '%s'"
msgstr "Povezani ste na „%s“"
#: ../js/ui/status/network.js:1852
#: ../js/ui/status/network.js:1808
#| msgid "Connection"
msgid "Connection established"
msgstr "Veza je uspostavljena"
#: ../js/ui/status/network.js:1974
#: ../js/ui/status/network.js:1930
msgid "Networking is disabled"
msgstr "Umrežavanje je onemogućeno"
#: ../js/ui/status/network.js:2099
#: ../js/ui/status/network.js:2055
msgid "Network Manager"
msgstr "Upravnik mreže"
@@ -1068,7 +1046,7 @@ msgstr "Tablet"
msgid "Computer"
msgstr "Računar"
#: ../js/ui/status/power.js:250 ../src/shell-app-system.c:1088
#: ../js/ui/status/power.js:250 ../src/shell-app-system.c:961
msgid "Unknown"
msgstr "Nepoznato"
@@ -1156,20 +1134,21 @@ msgstr[3] "%u ulaz"
msgid "System Sounds"
msgstr "Sistemski zvuci"
#: ../src/main.c:446
#: ../src/main.c:397
msgid "Print version"
msgstr "Ispiši vrrziju"
#: ../src/shell-app.c:454
#, c-format
#| msgid "Failed to unmount '%s'"
msgid "Failed to launch '%s'"
msgstr "Ne mogu da pokrenem „%s“"
#: ../src/shell-global.c:1395
#: ../src/shell-global.c:1340
msgid "Less than a minute ago"
msgstr "Pre manje od jednog minuta"
#: ../src/shell-global.c:1399
#: ../src/shell-global.c:1344
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
@@ -1178,7 +1157,7 @@ msgstr[1] "Pre %d minuta"
msgstr[2] "Pre %d minuta"
msgstr[3] "Pre jedan minut"
#: ../src/shell-global.c:1404
#: ../src/shell-global.c:1349
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
@@ -1187,7 +1166,7 @@ msgstr[1] "Pre %d sata"
msgstr[2] "Pre %d sati"
msgstr[3] "Pre jednog sata"
#: ../src/shell-global.c:1409
#: ../src/shell-global.c:1354
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
@@ -1196,7 +1175,7 @@ msgstr[1] "Pre %d dana"
msgstr[2] "Pre %d dana"
msgstr[3] "Pre jedan dan"
#: ../src/shell-global.c:1414
#: ../src/shell-global.c:1359
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
@@ -1237,24 +1216,6 @@ msgstr "Sistem datoteka"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "Shut Down"
#~ msgstr "Ugasi"
#~ msgid "Click Shut Down to quit these applications and shut down the system."
#~ msgstr "Kliknite na „Ugasi“ da napustite ove programe i da ugasite sistem."
#~ msgid "The system will shut down automatically in %d seconds."
#~ msgstr "Sistem će se automatski isključiti za %d sek."
#~ msgid "Shutting down the system."
#~ msgstr "Isključujem sistem."
#~ msgid "Confirm"
#~ msgstr "Potvrdi"
#~ msgid "Panel"
#~ msgstr "Panel"
#~| msgid "Applications"
#~ msgid "No such application"
#~ msgstr "Nema takvog programa"

297
po/sv.po
View File

@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-05-01 09:53+0200\n"
"PO-Revision-Date: 2011-05-01 09:53+0100\n"
"POT-Creation-Date: 2011-03-25 22:15+0100\n"
"PO-Revision-Date: 2011-03-25 22:15+0100\n"
"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
"Language: sv\n"
@@ -134,27 +134,27 @@ msgid "Execution of '%s' failed:"
msgstr "Körning av \"%s\" misslyckades:"
#. Translators: Filter to display all applications
#: ../js/ui/appDisplay.js:260
#: ../js/ui/appDisplay.js:230
msgid "All"
msgstr "Alla"
#: ../js/ui/appDisplay.js:359
#: ../js/ui/appDisplay.js:328
msgid "APPLICATIONS"
msgstr "PROGRAM"
#: ../js/ui/appDisplay.js:385
#: ../js/ui/appDisplay.js:354
msgid "SETTINGS"
msgstr "INSTÄLLNINGAR"
#: ../js/ui/appDisplay.js:658
#: ../js/ui/appDisplay.js:625
msgid "New Window"
msgstr "Nytt fönster"
#: ../js/ui/appDisplay.js:661
#: ../js/ui/appDisplay.js:628
msgid "Remove from Favorites"
msgstr "Ta bort från favoriter"
#: ../js/ui/appDisplay.js:662
#: ../js/ui/appDisplay.js:629
msgid "Add to Favorites"
msgstr "Lägg till som favorit"
@@ -186,7 +186,7 @@ msgstr "%H.%M"
#: ../js/ui/calendar.js:78
msgctxt "event list time"
msgid "%l:%M %p"
msgstr "%I.%M %p"
msgstr "%l.%M %p"
#. Translators: Calendar grid abbreviation for Sunday.
#. *
@@ -288,14 +288,12 @@ msgstr "Ingenting i schemat"
#. Translators: Shown on calendar heading when selected day occurs on current year
#: ../js/ui/calendar.js:720
#: ../js/ui/telepathyClient.js:487
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d %B"
#. Translators: Shown on calendar heading when selected day occurs on different year
#: ../js/ui/calendar.js:723
#: ../js/ui/telepathyClient.js:490
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d %B, %Y"
@@ -306,7 +304,7 @@ msgstr "Idag"
#: ../js/ui/calendar.js:737
msgid "Tomorrow"
msgstr "Imorgon"
msgstr "Igår"
#: ../js/ui/calendar.js:746
msgid "This week"
@@ -317,7 +315,7 @@ msgid "Next week"
msgstr "Nästa vecka"
#: ../js/ui/dash.js:174
#: ../js/ui/messageTray.js:1037
#: ../js/ui/messageTray.js:994
msgid "Remove"
msgstr "Ta bort"
@@ -353,21 +351,21 @@ msgstr "%a %R"
#. for AM/PM.
#: ../js/ui/dateMenu.js:177
msgid "%a %b %e, %l:%M:%S %p"
msgstr "%a %e %b, %I.%M.%S %p"
msgstr "%a %e %b, %H.%M.%S"
#: ../js/ui/dateMenu.js:178
msgid "%a %b %e, %l:%M %p"
msgstr "%a %e %b, %I.%M %p"
msgstr "%a %e %b, %H.%M"
#. Translators: This is a time format without date used
#. for AM/PM.
#: ../js/ui/dateMenu.js:182
msgid "%a %l:%M:%S %p"
msgstr "%a %I.%M.%S %p"
msgstr "%a %H.%M.%S"
#: ../js/ui/dateMenu.js:183
msgid "%a %l:%M %p"
msgstr "%a %I.%M %p"
msgstr "%a %H.%M"
#. Translators: This is the date format to use when the calendar popup is
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
@@ -445,9 +443,9 @@ msgstr "Systemet kommer att startas om automatiskt om %d sekunder."
msgid "Restarting the system."
msgstr "Starta om systemet."
#: ../js/ui/endSessionDialog.js:413
#: ../js/ui/endSessionDialog.js:415
#: ../js/ui/polkitAuthenticationAgent.js:172
#: ../js/ui/status/bluetooth.js:491
#: ../js/ui/status/bluetooth.js:466
msgid "Cancel"
msgstr "Avbryt"
@@ -482,11 +480,11 @@ msgstr "Visa källa"
msgid "Web Page"
msgstr "Webbsida"
#: ../js/ui/messageTray.js:1030
#: ../js/ui/messageTray.js:987
msgid "Open"
msgstr "Öppna"
#: ../js/ui/messageTray.js:2194
#: ../js/ui/messageTray.js:2145
msgid "System Information"
msgstr "Systeminformation"
@@ -509,18 +507,18 @@ msgid "Dash"
msgstr "Favoriter"
#. TODO - _quit() doesn't really work on apps in state STARTING yet
#: ../js/ui/panel.js:533
#: ../js/ui/panel.js:515
#, c-format
msgid "Quit %s"
msgstr "Avsluta %s"
#. Button on the left side of the panel.
#. Translators: If there is no suitable word for "Activities" in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:913
#: ../js/ui/panel.js:878
msgid "Activities"
msgstr "Aktiviteter"
#: ../js/ui/panel.js:1015
#: ../js/ui/panel.js:979
msgid "Top Bar"
msgstr "Övre rad"
@@ -553,15 +551,11 @@ msgstr "Administratör"
msgid "Authenticate"
msgstr "Autentisera"
#. Translators: "that didn't work" refers to the fact that the
#. * requested authentication was not gained; this can happen
#. * because of an authentication error (like invalid password),
#. * for instance.
#: ../js/ui/polkitAuthenticationAgent.js:264
#: ../js/ui/polkitAuthenticationAgent.js:260
msgid "Sorry, that didn't work. Please try again."
msgstr "Tyvärr, det fungerade inte. Försök igen."
#: ../js/ui/polkitAuthenticationAgent.js:276
#: ../js/ui/polkitAuthenticationAgent.js:272
msgid "Password:"
msgstr "Lösenord:"
@@ -578,11 +572,11 @@ msgstr "toggle-switch-intl"
msgid "Please enter a command:"
msgstr "Ange ett kommando:"
#: ../js/ui/searchDisplay.js:313
#: ../js/ui/searchDisplay.js:310
msgid "Searching..."
msgstr "Söker..."
#: ../js/ui/searchDisplay.js:327
#: ../js/ui/searchDisplay.js:324
msgid "No matching results."
msgstr "Inga sökträffar."
@@ -668,11 +662,11 @@ msgid "Large Text"
msgstr "Stor text"
#: ../js/ui/status/bluetooth.js:42
#: ../js/ui/status/bluetooth.js:264
#: ../js/ui/status/bluetooth.js:358
#: ../js/ui/status/bluetooth.js:392
#: ../js/ui/status/bluetooth.js:432
#: ../js/ui/status/bluetooth.js:465
#: ../js/ui/status/bluetooth.js:237
#: ../js/ui/status/bluetooth.js:333
#: ../js/ui/status/bluetooth.js:367
#: ../js/ui/status/bluetooth.js:407
#: ../js/ui/status/bluetooth.js:440
msgid "Bluetooth"
msgstr "Bluetooth"
@@ -685,103 +679,103 @@ msgid "Send Files to Device..."
msgstr "Skicka filer till enhet..."
#: ../js/ui/status/bluetooth.js:70
msgid "Set up a New Device..."
msgid "Setup a New Device..."
msgstr "Konfigurera en ny enhet..."
#: ../js/ui/status/bluetooth.js:95
msgid "Bluetooth Settings"
msgstr "Inställningar för Bluetooth"
#: ../js/ui/status/bluetooth.js:215
#: ../js/ui/status/bluetooth.js:188
msgid "Connection"
msgstr "Anslutning"
#: ../js/ui/status/bluetooth.js:251
#: ../js/ui/status/bluetooth.js:224
msgid "Send Files..."
msgstr "Skicka filer..."
#: ../js/ui/status/bluetooth.js:256
#: ../js/ui/status/bluetooth.js:229
msgid "Browse Files..."
msgstr "Bläddra efter filer..."
#: ../js/ui/status/bluetooth.js:265
#: ../js/ui/status/bluetooth.js:238
msgid "Error browsing device"
msgstr "Fel vid bläddring i enheten"
#: ../js/ui/status/bluetooth.js:266
#: ../js/ui/status/bluetooth.js:239
#, c-format
msgid "The requested device cannot be browsed, error is '%s'"
msgstr "Den begärda enheten kan inte bläddras. Felet är \"%s\""
#: ../js/ui/status/bluetooth.js:274
#: ../js/ui/status/bluetooth.js:247
msgid "Keyboard Settings"
msgstr "Tangentbordsinställningar"
#: ../js/ui/status/bluetooth.js:279
#: ../js/ui/status/bluetooth.js:252
msgid "Mouse Settings"
msgstr "Musinställningar"
#: ../js/ui/status/bluetooth.js:286
#: ../js/ui/status/bluetooth.js:259
#: ../js/ui/status/volume.js:66
msgid "Sound Settings"
msgstr "Ljudinställningar"
#: ../js/ui/status/bluetooth.js:393
#: ../js/ui/status/bluetooth.js:368
#, c-format
msgid "Authorization request from %s"
msgstr "Auktoriseringsbegäran från %s"
#: ../js/ui/status/bluetooth.js:399
#: ../js/ui/status/bluetooth.js:374
#, c-format
msgid "Device %s wants access to the service '%s'"
msgstr "Enheten %s vill ha åtkomst till tjänsten \"%s\""
#: ../js/ui/status/bluetooth.js:401
#: ../js/ui/status/bluetooth.js:376
msgid "Always grant access"
msgstr "Tillåt alltid åtkomst"
#: ../js/ui/status/bluetooth.js:402
#: ../js/ui/status/bluetooth.js:377
msgid "Grant this time only"
msgstr "Tillåt för denna gång"
#: ../js/ui/status/bluetooth.js:403
#: ../js/ui/status/bluetooth.js:378
msgid "Reject"
msgstr "Neka"
#: ../js/ui/status/bluetooth.js:433
#: ../js/ui/status/bluetooth.js:408
#, c-format
msgid "Pairing confirmation for %s"
msgstr "Bekräftelse av ihopparning för %s"
#: ../js/ui/status/bluetooth.js:439
#: ../js/ui/status/bluetooth.js:473
#: ../js/ui/status/bluetooth.js:414
#: ../js/ui/status/bluetooth.js:448
#, c-format
msgid "Device %s wants to pair with this computer"
msgstr "Enheten %s vill paras ihop med denna dator"
#: ../js/ui/status/bluetooth.js:440
#: ../js/ui/status/bluetooth.js:415
#, c-format
msgid "Please confirm whether the PIN '%s' matches the one on the device."
msgstr "Bekräfta huruvida PIN-koden \"%s\" stämmer med den på enheten."
#: ../js/ui/status/bluetooth.js:442
#: ../js/ui/status/bluetooth.js:417
msgid "Matches"
msgstr "Stämmer"
#: ../js/ui/status/bluetooth.js:443
#: ../js/ui/status/bluetooth.js:418
msgid "Does not match"
msgstr "Stämmer inte"
#: ../js/ui/status/bluetooth.js:466
#: ../js/ui/status/bluetooth.js:441
#, c-format
msgid "Pairing request for %s"
msgstr "Ihopparningsbegäran för %s"
#: ../js/ui/status/bluetooth.js:474
#: ../js/ui/status/bluetooth.js:449
msgid "Please enter the PIN mentioned on the device."
msgstr "Ange PIN-koden som anges på enheten."
#: ../js/ui/status/bluetooth.js:490
#: ../js/ui/status/bluetooth.js:465
msgid "OK"
msgstr "OK"
@@ -793,141 +787,142 @@ msgstr "Visa tangentbordslayout..."
msgid "Localization Settings"
msgstr "Språkinställningar"
#: ../js/ui/status/network.js:113
#: ../js/ui/status/network.js:102
#: ../js/ui/status/network.js:1437
msgid "<unknown>"
msgstr "<okänd>"
#. Translators: this indicates that wireless or wwan is disabled by hardware killswitch
#: ../js/ui/status/network.js:330
#: ../js/ui/status/network.js:295
msgid "disabled"
msgstr "inaktiverad"
#: ../js/ui/status/network.js:528
#: ../js/ui/status/network.js:478
msgid "connecting..."
msgstr "ansluter..."
#. Translators: this is for network connections that require some kind of key or password
#: ../js/ui/status/network.js:531
#: ../js/ui/status/network.js:481
msgid "authentication required"
msgstr "autentisering krävs"
#. Translators: this is for devices that require some kind of firmware or kernel
#. module, which is missing
#: ../js/ui/status/network.js:541
#: ../js/ui/status/network.js:491
msgid "firmware missing"
msgstr "fast programvara saknas"
#. Translators: this is for wired network devices that are physically disconnected
#: ../js/ui/status/network.js:548
#: ../js/ui/status/network.js:498
msgid "cable unplugged"
msgstr "kabeln är inte ansluten"
#. Translators: this is for a network device that cannot be activated (for example it
#. is disabled by rfkill, or it has no coverage
#: ../js/ui/status/network.js:553
#: ../js/ui/status/network.js:503
msgid "unavailable"
msgstr "inte tillgänglig"
#: ../js/ui/status/network.js:555
#: ../js/ui/status/network.js:505
msgid "connection failed"
msgstr "anslutningen misslyckades"
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
#. and we cannot access its settings (including the name)
#: ../js/ui/status/network.js:635
#: ../js/ui/status/network.js:1532
#: ../js/ui/status/network.js:585
#: ../js/ui/status/network.js:1385
msgid "Connected (private)"
msgstr "Ansluten (privat)"
#: ../js/ui/status/network.js:720
#: ../js/ui/status/network.js:666
msgid "Auto Ethernet"
msgstr "Automatiskt ethernet"
#: ../js/ui/status/network.js:795
#: ../js/ui/status/network.js:741
msgid "Auto broadband"
msgstr "Automatiskt bredband"
#: ../js/ui/status/network.js:798
#: ../js/ui/status/network.js:744
msgid "Auto dial-up"
msgstr "Automatiskt uppringt nätverk"
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
#: ../js/ui/status/network.js:944
#: ../js/ui/status/network.js:1544
#: ../js/ui/status/network.js:887
#: ../js/ui/status/network.js:1397
#, c-format
msgid "Auto %s"
msgstr "Automatiskt %s"
#: ../js/ui/status/network.js:946
#: ../js/ui/status/network.js:889
msgid "Auto bluetooth"
msgstr "Automatisk Bluetooth"
#: ../js/ui/status/network.js:1546
#: ../js/ui/status/network.js:1399
msgid "Auto wireless"
msgstr "Automatiskt trådlöst nätverk"
#: ../js/ui/status/network.js:1583
#: ../js/ui/status/network.js:1457
msgid "More..."
msgstr "Mer..."
#: ../js/ui/status/network.js:1625
#: ../js/ui/status/network.js:1480
msgid "Enable networking"
msgstr "Aktivera nätverk"
#: ../js/ui/status/network.js:1637
#: ../js/ui/status/network.js:1492
msgid "Wired"
msgstr "Trådbundet"
#: ../js/ui/status/network.js:1648
#: ../js/ui/status/network.js:1503
msgid "Wireless"
msgstr "Trådlöst"
#: ../js/ui/status/network.js:1658
#: ../js/ui/status/network.js:1513
msgid "Mobile broadband"
msgstr "Mobilt bredband"
#: ../js/ui/status/network.js:1668
#: ../js/ui/status/network.js:1523
msgid "VPN Connections"
msgstr "VPN-anslutningar"
#: ../js/ui/status/network.js:1680
#: ../js/ui/status/network.js:1532
msgid "Network Settings"
msgstr "Nätverksinställningar"
#: ../js/ui/status/network.js:1974
#: ../js/ui/status/network.js:1827
#, c-format
msgid "You're now connected to mobile broadband connection '%s'"
msgstr "Du är nu ansluten till mobila bredbandsanslutningen \"%s\""
#: ../js/ui/status/network.js:1978
#: ../js/ui/status/network.js:1831
#, c-format
msgid "You're now connected to wireless network '%s'"
msgstr "Du är nu ansluten till trådlösa nätverket \"%s\""
#: ../js/ui/status/network.js:1982
#: ../js/ui/status/network.js:1835
#, c-format
msgid "You're now connected to wired network '%s'"
msgstr "Du är nu ansluten till trådbundna nätverket \"%s\""
#: ../js/ui/status/network.js:1986
#: ../js/ui/status/network.js:1839
#, c-format
msgid "You're now connected to VPN network '%s'"
msgstr "Du är nu ansluten till VPN-nätverket \"%s\""
#: ../js/ui/status/network.js:1991
#: ../js/ui/status/network.js:1844
#, c-format
msgid "You're now connected to '%s'"
msgstr "Du är nu ansluten till \"%s\""
#: ../js/ui/status/network.js:1999
#: ../js/ui/status/network.js:1852
msgid "Connection established"
msgstr "Anslutningen etablerad"
#: ../js/ui/status/network.js:2125
#: ../js/ui/status/network.js:1974
msgid "Networking is disabled"
msgstr "Nätverk är inaktiverat"
#: ../js/ui/status/network.js:2250
#: ../js/ui/status/network.js:2099
msgid "Network Manager"
msgstr "Nätverkshanterare"
@@ -1030,22 +1025,22 @@ msgstr "Volym"
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/telepathyClient.js:330
#: ../js/ui/telepathyClient.js:332
#, c-format
msgid "%s is online."
msgstr "%s är ansluten."
#: ../js/ui/telepathyClient.js:335
#: ../js/ui/telepathyClient.js:337
#, c-format
msgid "%s is offline."
msgstr "%s är frånkopplad."
#: ../js/ui/telepathyClient.js:338
#: ../js/ui/telepathyClient.js:340
#, c-format
msgid "%s is away."
msgstr "%s är frånvarande."
#: ../js/ui/telepathyClient.js:341
#: ../js/ui/telepathyClient.js:343
#, c-format
msgid "%s is busy."
msgstr "%s är upptagen."
@@ -1053,18 +1048,11 @@ msgstr "%s är upptagen."
#. Translators: this is a time format string followed by a date.
#. If applicable, replace %X with a strftime format valid for your
#. locale, without seconds.
#: ../js/ui/telepathyClient.js:479
#: ../js/ui/telepathyClient.js:474
#, no-c-format
msgid "Sent at %X on %A"
msgstr "Skickades klockan %X på %A"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/telepathyClient.js:524
#, c-format
msgid "%s is now known as %s"
msgstr "%s är nu känd som %s"
#. Translators: this is the text displayed
#. in the search entry when no search is
#. active; it should not exceed ~30
@@ -1110,7 +1098,7 @@ msgstr[1] "%u ingångar"
msgid "System Sounds"
msgstr "Systemljud"
#: ../src/main.c:445
#: ../src/main.c:446
msgid "Print version"
msgstr "Skriv ut version"
@@ -1119,6 +1107,38 @@ msgstr "Skriv ut version"
msgid "Failed to launch '%s'"
msgstr "Misslyckades med att starta \"%s\""
#: ../src/shell-global.c:1395
msgid "Less than a minute ago"
msgstr "Mindre än en minut sedan"
#: ../src/shell-global.c:1399
#, c-format
msgid "%d minute ago"
msgid_plural "%d minutes ago"
msgstr[0] "%d minut sedan"
msgstr[1] "%d minuter sedan"
#: ../src/shell-global.c:1404
#, c-format
msgid "%d hour ago"
msgid_plural "%d hours ago"
msgstr[0] "%d timme sedan"
msgstr[1] "%d timmar sedan"
#: ../src/shell-global.c:1409
#, c-format
msgid "%d day ago"
msgid_plural "%d days ago"
msgstr[0] "%d dag sedan"
msgstr[1] "%d dagar sedan"
#: ../src/shell-global.c:1414
#, c-format
msgid "%d week ago"
msgid_plural "%d weeks ago"
msgstr[0] "%d vecka sedan"
msgstr[1] "%d veckor sedan"
#: ../src/shell-mobile-providers.c:80
msgid "United Kingdom"
msgstr "Storbritannien"
@@ -1151,33 +1171,6 @@ msgstr "Filsystem"
msgid "%1$s: %2$s"
msgstr "%1$s: %2$s"
#~ msgid "Less than a minute ago"
#~ msgstr "Mindre än en minut sedan"
#~ msgid "%d minute ago"
#~ msgid_plural "%d minutes ago"
#~ msgstr[0] "%d minut sedan"
#~ msgstr[1] "%d minuter sedan"
#~ msgid "%d hour ago"
#~ msgid_plural "%d hours ago"
#~ msgstr[0] "%d timme sedan"
#~ msgstr[1] "%d timmar sedan"
#~ msgid "%d day ago"
#~ msgid_plural "%d days ago"
#~ msgstr[0] "%d dag sedan"
#~ msgstr[1] "%d dagar sedan"
#~ msgid "%d week ago"
#~ msgid_plural "%d weeks ago"
#~ msgstr[0] "%d vecka sedan"
#~ msgstr[1] "%d veckor sedan"
#, fuzzy
#~ msgid "No such application"
#~ msgstr "Program"
@@ -1185,128 +1178,90 @@ msgstr "%1$s: %2$s"
#, fuzzy
#~ msgid "Shut Down"
#~ msgstr "Stäng av..."
#~ msgid "Screen Reader"
#~ msgstr "Skärmläsare"
#~ msgid "Screen Keyboard"
#~ msgstr "Skärmtangentbord"
#~ msgid "Clock"
#~ msgstr "Klocka"
#~ msgid "Customize the panel clock"
#~ msgstr "Anpassa panelklockan"
#~ msgid "Custom format of the clock"
#~ msgstr "Anpassat format för klockan"
#~ msgid "Hour format"
#~ msgstr "Timmesformat"
#~ msgid ""
#~ "If true and format is either \"12-hour\" or \"24-hour\", display seconds "
#~ "in time."
#~ msgstr ""
#~ "Om true och formatet antingen är \"12-hour\" eller \"24-hour\", visa "
#~ "sekunder i tiden."
#~ msgid "Enable lens mode"
#~ msgstr "Aktivera linsläge"
#~ msgid "Magnification factor"
#~ msgstr "Förstoringsfaktor"
#~ msgid "Screen position"
#~ msgstr "Skärmposition"
#~ msgid "Clock Format"
#~ msgstr "Klockformat"
#~ msgid "Clock Preferences"
#~ msgstr "Klockinställningar"
#~ msgid "Panel Display"
#~ msgstr "Panelvisning"
#~ msgid "Show seco_nds"
#~ msgstr "Visa seku_nder"
#~ msgid "Show the _date"
#~ msgstr "Visa _datum"
#~ msgid "_12 hour format"
#~ msgstr "_12-timmarsformat"
#~ msgid "_24 hour format"
#~ msgstr "_24-timmarsformat"
#~ msgid "PREFERENCES"
#~ msgstr "INSTÄLLNINGAR"
#~ msgid "Preferences"
#~ msgstr "Inställningar"
#~ msgid "Search your computer"
#~ msgstr "Sök i din dator"
#~ msgid ""
#~ "Can't add a new workspace because maximum workspaces limit has been "
#~ "reached."
#~ msgstr ""
#~ "Kan inte lägga till en ny arbetsyta eftersom maximalt antal arbetsytor "
#~ "har uppnåtts."
#~ msgid "Can't remove the first workspace."
#~ msgstr "Kan inte ta bort första arbetsytan."
#~ msgid "Drag here to add favorites"
#~ msgstr "Dra hit för att lägga till favorit"
#~ msgid "Find"
#~ msgstr "Sök"
#~ msgid "ON"
#~ msgstr "PÅ"
#~ msgid "OFF"
#~ msgstr "AV"
#~ msgid "Invisible"
#~ msgstr "Osynlig"
#~ msgid "PLACES"
#~ msgstr "PLATSER"
#~ msgid "SEARCH RESULTS"
#~ msgstr "SÖKRESULTAT"
#~ msgid "Recent Documents"
#~ msgstr "Senaste dokument"
#~ msgid "(see all)"
#~ msgstr "(se alla)"
#~ msgid "Can't lock screen: %s"
#~ msgstr "Kan inte låsa skärmen: %s"
#~ msgid "Can't temporarily set screensaver to blank screen: %s"
#~ msgstr "Kan inte temporärt ställa in skärmsläckaren till blank skärm: %s"
#~ msgid "Can't logout: %s"
#~ msgstr "Kan inte logga ut: %s"
#~ msgid "Sidebar"
#~ msgstr "Sidopanel"
#~ msgid "Browse"
#~ msgstr "Bläddra"
#~ msgid "Find apps or documents"
#~ msgstr "Hitta program eller dokument"
#~ msgid "DOCUMENTS"
#~ msgstr "DOKUMENT"
#~ msgid "The user manager object this user is controlled by."
#~ msgstr "Användarhanteringsobjektet som denna användare styrs av."

1438
po/ta.po

File diff suppressed because it is too large Load Diff

1374
po/th.po

File diff suppressed because it is too large Load Diff

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