Compare commits

..

1 Commits

Author SHA1 Message Date
672ca8850a windowManager: add animations for fullscreen and unfullscreen
We use the newly introduced feature from Mutter to hook up our own
fullscreen and unfullscreen animations.
To give the illusion of a transition as smooth as possible, we create a
snapshot of the current contents of the actor before its state is
changed, and crossfade between the two states while the size changes.

https://bugzilla.gnome.org/show_bug.cgi?id=707248
2015-10-12 15:40:30 -04:00
221 changed files with 17806 additions and 26080 deletions

6
.gitignore vendored
View File

@ -17,8 +17,10 @@ config.status
config
configure
data/50-gnome-shell-*.xml
data/org.gnome.Shell.desktop
data/org.gnome.Shell.desktop.in
data/gnome-shell.desktop
data/gnome-shell.desktop.in
data/gnome-shell-wayland.desktop
data/gnome-shell-wayland.desktop.in
data/gnome-shell-extension-prefs.desktop
data/gnome-shell-extension-prefs.desktop.in
data/gnome-shell-theme.gresource

210
NEWS
View File

@ -1,213 +1,3 @@
3.21.3
======
* Do not disable suspend action when locked [Florian; #725960]
* Remember input sources MRU list [Cosimo; #766826]
* networkAgent: Handle VPN service aliases [David; #658484]
* Plug a memory leak [Hans; #710230]
Contributors:
Cosimo Cecchi, Florian Müllner, Hans Petter Jansson, David Woodhouse
Translations:
Tiago Santos [pt], Cédric Valmary [oc], Muhammet Kara [tr],
Daniel Mustieles [es], Rafael Fontenelle [pt_BR]
3.21.2
======
* Fix sorting of hidden apps in app switcher [Florian; #766238]
* Set logind's LockedHint property when locked [Victor; #764773]
* Allocate framebuffers early to fix a crash on NVIDIA [Martin; #764898]
* Fix cycle-windows/cycle-group keybindings [Florian; #730739]
* Switch to shared desktop schema for calendar settings [Iain; #766318]
* Misc. bug fixes [Florian, Cosimo, Michele; #766325, #758471, #757556,
#757019, #766598]
Contributors:
Cosimo Cecchi, Michele Gaio, Iain Lane, Florian Müllner, Martin Szulecki,
Victor Toso
Translations:
Tiago Santos [pt], Kjartan Maraas [nb], Jiro Matsuzawa [ja],
Cédric Valmary [oc], Sveinn í Felli [is]
3.21.1
======
* Save screencasts in HOME if XDG_VIDEO_DIR doesn't exist [Florian; #765015]
* Don't show orientation lock when g-s-d won't rotate [Florian; #765267]
* Misc. bug fixes [Heiher, Florian, Marek, Rui; #722752, #765061, #763068,
#765607, #757676, #760439]
Contributors:
Heiher, Marek Chalupa, Rui Matos, Florian Müllner
Translations:
Arash Mousavi [fa], Kristjan SCHMIDT [eo], GNOME Translation Robot [gd]
3.20.1
======
* Plug a memory leak [Aaron; #735705]
Contributors:
Aaron Plattner
Translations:
Daniel Korostil [uk], Matej Urbančič [sl], Inaki Larranaga Murgoitio [eu],
Cheng-Chia Tseng [zh_TW], Fabio Tomat [fur], Trần Ngọc Quân [vi],
YunQiang Su [zh_CN], Marek Černocký [cs], Arash Mousavi [fa],
Alexander Shopov [bg], Khaled Hosny [ar]
3.20.0
======
Translations:
Changwoo Ryu [ko], Baurzhan Muftakhidinov [kk], Milo Casagrande [it],
Anders Jonsson [sv], Muhammet Kara [tr], Alexandre Franke [fr],
Rūdolfs Mazurs [lv], Ask Hjorth Larsen [da], Jiro Matsuzawa [ja]
3.19.92
=======
* Update location dialog according to latest mockups [Zeeshan; #762480]
* Fix deleting chat notifications in calendar [Florian; #747991]
Contributors:
Zeeshan Ali (Khattak), Florian Müllner
Translations:
Rūdolfs Mazurs [lv], Changwoo Ryu [ko], Matej Urbančič [sl],
Justin van Steijn [nl], Fabio Tomat [fur], Kris Thomsen [da],
Marek Černocký [cs], Piotr Drąg [pl], Dušan Kazik [sk],
Мирослав Николић [sr, sr@latin], Balázs Úr [hu], Yosef Or Boczko [he],
Daniel Mustieles [es], Fran Dieguez [gl], Bernd Homuth [de],
Tom Tryfonidis [el], Jiri Grönroos [fi], Gil Forcada [ca],
Artur Morais [pt_BR], Aurimas Černius [lt], Stas Solovey [ru]
3.19.91
=======
* location: Ask user only once [Zeeshan; #762559]
* Fix jiggling when auto-hiding legacy tray [Florian; #747957]
* Misc. bug fixes [Florian, Michael, Ting-Wei; #762475, #762507, #755659]
Contributors:
Zeeshan Ali (Khattak), Michael Catanzaro, Ting-Wei Lan, Florian Müllner
Translations:
Мирослав Николић [sr, sr@latin], Piotr Drąg [pl], A S Alam [pa],
Artur de Aquino Morais [pt_BR], Daniel Mustieles [es],
Chao-Hsiung Liao [zh_TW], Daniel Korostil [uk], Fran Dieguez [gl],
Tom Tryfonidis [el], Bernd Homuth [de], Sebastian Rasmussen [sv],
Jordi Mas [ca], Piotr Drąg [ga], Cédric Valmary [oc], Gábor Kelemen [hu],
Baurzhan Muftakhidinov [kk], Friedel Wolff [af], Marek Černocký [cs],
Mingye Wang (Arthur2e5) [zh_CN], Aron Xu [zh_CN], Khaled Hosny [ar],
Aurimas Černius [lt], Stas Solovey [ru], Yosef Or Boczko [he]
3.19.90
=======
* Correctly identify VPN secret requests [Lubomir; #760999]
* Improve week number presentation [Jakub; #683245]
* Add audio device selection dialog [Florian; #760284]
* Add media controls to the time and date drop down [Florian; #756491]
* Fix IBus candidate popup position under wayland [Rui; #753476]
* Ask user to grant applications access to location [Zeeshan; #762119]
* Misc. bug fixes [Mario, Jakub, Florian; #761208, #761772, #762270]
Contributors:
Zeeshan Ali (Khattak), Michael Catanzaro, Rui Matos, Florian Müllner,
Lubomir Rintel, Mario Sanchez Prada, Jakub Steiner
Translations:
Alexander Shopov [bg], Balázs Meskó [hu], Fabio Tomat [fur],
Dušan Kazik [sk], Piotr Drąg [pl], Alexandre Franke [fr],
Mario Blättermann [de], Milo Casagrande [it], Jordi Mas [ca]
3.19.4
======
* gdm: Do not allow bypassing disabled Sign In button [Michael; #746180]
* Style week numbers in calendar [Jakub; #683245]
* Misc. bug fixes [Christophe, Jakub, Rui; #759708, #760577, #760945]
Contributors:
Michael Catanzaro, Marek Černocký, Christophe Fergeau, Rui Matos,
Jakub Steiner
Translations:
Aurimas Černius [lt], Enrico Nicoletto [pt_BR], Andika Triwidada [id],
Mario Blättermann [de], Marek Černocký [cs], Kjartan Maraas [nb],
Muhammet Kara [tr], Stas Solovey [ru]
3.19.3
======
* Fix thumbnail scaling in window switcher on HiDPI [Florian; #758676]
* Update animated backgrounds on timezone changes [Florian; #758939]
* loginDialog: Update user list on user changes [Michael; #758568]
* Fix touch interaction on wayland [Carlos; #756748]
Contributors:
Michael Catanzaro, Carlos Garnacho, Kalev Lember, Florian Müllner
Translations:
Daniel Korostil [uk], Muhammet Kara [tr], Dušan Kazik [sk],
Baurzhan Muftakhidinov [kk], Marek Černocký [cs]
3.19.2
======
* Make gnome-shell DBus activatable [Ray; #741666]
* Fix browser plugin crash in Firefox [Carlos; #737932, #757940]
* Optionally show battery percentage in system status area [Bastien; #735771]
* Misc. bug fixes [Kalev, Florian, Bastien; #757418, #757668, #757779, #757816,
#745626, #758220]
Contributors:
Michael Biebl, Michael Catanzaro, Piotr Drąg, Carlos Garcia Campos,
Kalev Lember, Florian Müllner, Bastien Nocera, Ray Strode
Translations:
Pedro Albuquerque [pt], liushuyu [zh_CN], Yosef Or Boczko [he],
Jiri Grönroos [fi], Kjartan Maraas [nb], GNOME Translation Robot [gd],
Daniel Mustieles [es], Marek Černocký [cs], Kristjan SCHMIDT [eo],
Stas Solovey [ru]
3.19.1
======
* Respect text-scaling factor under wayland [Owen; #756447]
* Show the Bluetooth submenu when there were setup devices [Bastien; #723848]
* Misc. bug fixes [Florian, Cosimo, Rui, Ray, Owen, Jakub, Bastien;
#756697, #756714, #756605, #754814, #738942, #756983, #756925,
#757011, #673235, #757150]
Contributors:
Cosimo Cecchi, Rui Matos, Florian Müllner, Bastien Nocera, Jakub Steiner,
Ray Strode, Owen W. Taylor
Translations:
Kjartan Maraas [nb], Khaled Hosny [ar], Balázs Meskó [hu],
Daniel Șerbănescu [ro], Marek Černocký [cs]
3.18.1
======
* Fix screen freezes when a notification is pushed [Carlos; #755425]
* Fix overzealous ellipsization in system status menu [Adel, Florian; #708472]
* Hide app menu when disabled by setting [Florian; #745919]
* Fix lightbox effect when animations are disabled [Rui; #755827]
* Do not mark hotplug notifications as critical [Florian; #657923]
* Fix icons getting cut off in dash [Florian; #745649]
* Animate fullscreen/unfullscreen operations [Cosimo; #707248]
* Misc. bug fixes [Florian, Owen; #748919, #674799, #754581]
Contributors:
Emmanuele Bassi, Michael Catanzaro, Cosimo Cecchi, Matthias Clasen,
Adel Gadllah, Carlos Garnacho, Ekaterina Gerasimova, Rui Matos,
Florian Müllner, Owen W. Taylor
Translations:
Марко Костић [sr], Милош Поповић [sr@latin], Khaled Hosny [ar],
Trần Ngọc Quân [vi], Petr Kovar [cs], Alexandre Franke [fr],
Fran Dieguez [gl], Anders Jonsson [sv], Piotr Drąg [pl], Dušan Kazik [sk],
Milo Casagrande [it], Changwoo Ryu [ko], Stas Solovey [ru],
Rafael Fontenelle [pt_BR], Tom Tryfonidis [el], Aurimas Černius [lt],
Seán de Búrca [ga], Christian Kirbach [de], Jiri Grönroos [fi],
Pedro Albuquerque [pt], Baurzhan Muftakhidinov [kk], Daniel Mustieles [es],
Marek Černocký [cs], Ask Hjorth Larsen [da], Inaki Larranaga Murgoitio [eu]
3.18.0
======

View File

@ -3,10 +3,7 @@ mozillalibdir = $(BROWSER_PLUGIN_DIR)
mozillalib_LTLIBRARIES = libgnome-shell-browser-plugin.la
# Browsers can unload and reload the module while browsing, which is not supported by GObject.
# We pass -Wl,-z,nodelete to the linker to ensure the module is never unloaded.
# https://bugzilla.gnome.org/show_bug.cgi?id=737932
libgnome_shell_browser_plugin_la_LDFLAGS = -module -avoid-version -no-undefined -Wl,-z,nodelete
libgnome_shell_browser_plugin_la_LDFLAGS = -module -avoid-version -no-undefined
libgnome_shell_browser_plugin_la_LIBADD = \
$(BROWSER_PLUGIN_LIBS)

View File

@ -33,16 +33,20 @@
#include <json-glib/json-glib.h>
#define ORIGIN "extensions.gnome.org"
#define PLUGIN_NAME "GNOME Shell Integration"
#define PLUGIN_DESCRIPTION "This plugin provides integration with GNOME Shell " \
#define PLUGIN_NAME "Gnome Shell Integration"
#define PLUGIN_DESCRIPTION "This plugin provides integration with Gnome Shell " \
"for live extension enabling and disabling. " \
"It can be used only by extensions.gnome.org"
#define PLUGIN_MIME_STRING "application/x-gnome-shell-integration::GNOME Shell Integration Dummy Content-Type";
#define PLUGIN_MIME_STRING "application/x-gnome-shell-integration::Gnome Shell Integration Dummy Content-Type";
#define PLUGIN_API_VERSION 5
#define EXTENSION_DISABLE_VERSION_CHECK_KEY "disable-extension-version-validation"
typedef struct {
GDBusProxy *proxy;
} PluginData;
static NPNetscapeFuncs funcs;
static inline gchar *
@ -141,6 +145,121 @@ check_origin_and_protocol (NPP instance)
return ret;
}
/* =============== public entry points =================== */
NPError
NP_Initialize(NPNetscapeFuncs *pfuncs, NPPluginFuncs *plugin)
{
/* global initialization routine, called once when plugin
is loaded */
g_debug ("plugin loaded");
memcpy (&funcs, pfuncs, sizeof (funcs));
plugin->size = sizeof(NPPluginFuncs);
plugin->newp = NPP_New;
plugin->destroy = NPP_Destroy;
plugin->getvalue = NPP_GetValue;
plugin->setwindow = NPP_SetWindow;
return NPERR_NO_ERROR;
}
NPError
NP_Shutdown(void)
{
return NPERR_NO_ERROR;
}
const char*
NP_GetMIMEDescription(void)
{
return PLUGIN_MIME_STRING;
}
NPError
NP_GetValue(void *instance,
NPPVariable variable,
void *value)
{
switch (variable) {
case NPPVpluginNameString:
*(char**)value = PLUGIN_NAME;
break;
case NPPVpluginDescriptionString:
*(char**)value = PLUGIN_DESCRIPTION;
break;
default:
;
}
return NPERR_NO_ERROR;
}
NPError
NPP_New(NPMIMEType mimetype,
NPP instance,
uint16_t mode,
int16_t argc,
char **argn,
char **argv,
NPSavedData *saved)
{
/* instance initialization function */
PluginData *data;
GError *error = NULL;
g_debug ("plugin created");
if (!check_origin_and_protocol (instance))
return NPERR_GENERIC_ERROR;
data = g_slice_new (PluginData);
instance->pdata = data;
data->proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SESSION,
G_DBUS_PROXY_FLAGS_NONE,
NULL, /* interface info */
"org.gnome.Shell",
"/org/gnome/Shell",
"org.gnome.Shell.Extensions",
NULL, /* GCancellable */
&error);
if (!data->proxy)
{
/* ignore error if the shell is not running, otherwise warn */
if (error->domain != G_DBUS_ERROR ||
error->code != G_DBUS_ERROR_NAME_HAS_NO_OWNER)
{
g_warning ("Failed to set up Shell proxy: %s", error->message);
}
g_clear_error (&error);
return NPERR_GENERIC_ERROR;
}
g_debug ("plugin created successfully");
return NPERR_NO_ERROR;
}
NPError
NPP_Destroy(NPP instance,
NPSavedData **saved)
{
/* instance finalization function */
PluginData *data = instance->pdata;
g_debug ("plugin destroyed");
g_object_unref (data->proxy);
g_slice_free (PluginData, data);
return NPERR_NO_ERROR;
}
/* =================== scripting interface =================== */
typedef struct {
@ -163,6 +282,14 @@ on_shell_signal (GDBusProxy *proxy,
{
PluginObject *obj = user_data;
/* FIXME: We have half a dozen bug reports in which this function crashes in
* WebKit due to a null NPObject. This should never happen, but since it is
* happening, let's turn the crash into a critical.
*
* https://bugzilla.gnome.org/show_bug.cgi?id=737932
*/
g_return_if_fail (obj->instance);
if (strcmp (signal_name, "ExtensionStatusChanged") == 0)
{
gchar *uuid;
@ -193,6 +320,12 @@ on_shell_appeared (GDBusConnection *connection,
{
PluginObject *obj = (PluginObject*) user_data;
/* FIXME: Not sure if this is ever hit or not, but let's play it safe.
*
* https://bugzilla.gnome.org/show_bug.cgi?id=737932
*/
g_return_if_fail (obj->instance);
if (obj->restart_listener)
{
NPVariant result = { NPVariantType_Void };
@ -211,18 +344,45 @@ static NPObject *
plugin_object_allocate (NPP instance,
NPClass *klass)
{
PluginObject *obj = (PluginObject *) funcs.memalloc (sizeof (PluginObject));
PluginData *data = instance->pdata;
PluginObject *obj = g_slice_new0 (PluginObject);
memset (obj, 0, sizeof (PluginObject));
obj->instance = instance;
obj->proxy = g_object_ref (data->proxy);
obj->settings = g_settings_new (SHELL_SCHEMA);
obj->signal_id = g_signal_connect (obj->proxy, "g-signal",
G_CALLBACK (on_shell_signal), obj);
return (NPObject*) obj;
obj->watch_name_id = g_bus_watch_name (G_BUS_TYPE_SESSION,
"org.gnome.Shell",
G_BUS_NAME_WATCHER_FLAGS_NONE,
on_shell_appeared,
NULL,
obj,
NULL);
g_debug ("plugin object created");
return (NPObject*)obj;
}
static void
plugin_object_deallocate (NPObject *npobj)
{
funcs.memfree (npobj);
PluginObject *obj = (PluginObject*)npobj;
g_signal_handler_disconnect (obj->proxy, obj->signal_id);
g_object_unref (obj->proxy);
if (obj->listener)
funcs.releaseobject (obj->listener);
if (obj->watch_name_id)
g_bus_unwatch_name (obj->watch_name_id);
g_debug ("plugin object destroyed");
g_slice_free (PluginObject, obj);
}
static inline gboolean
@ -873,149 +1033,6 @@ init_methods_and_properties (void)
onextension_changed_id = funcs.getstringidentifier ("onchange");
}
/* =============== public entry points =================== */
NPError
NP_Initialize(NPNetscapeFuncs *pfuncs, NPPluginFuncs *plugin)
{
/* global initialization routine, called once when plugin
is loaded */
g_debug ("plugin loaded");
memcpy (&funcs, pfuncs, sizeof (funcs));
plugin->size = sizeof(NPPluginFuncs);
plugin->newp = NPP_New;
plugin->destroy = NPP_Destroy;
plugin->getvalue = NPP_GetValue;
plugin->setwindow = NPP_SetWindow;
plugin->event = NPP_HandleEvent;
return NPERR_NO_ERROR;
}
NPError
NP_Shutdown(void)
{
return NPERR_NO_ERROR;
}
const char*
NP_GetMIMEDescription(void)
{
return PLUGIN_MIME_STRING;
}
NPError
NP_GetValue(void *instance,
NPPVariable variable,
void *value)
{
switch (variable) {
case NPPVpluginNameString:
*(char**)value = PLUGIN_NAME;
break;
case NPPVpluginDescriptionString:
*(char**)value = PLUGIN_DESCRIPTION;
break;
default:
;
}
return NPERR_NO_ERROR;
}
NPError
NPP_New(NPMIMEType mimetype,
NPP instance,
uint16_t mode,
int16_t argc,
char **argn,
char **argv,
NPSavedData *saved)
{
/* instance initialization function */
PluginObject *obj;
GError *error = NULL;
g_debug ("plugin created");
if (!check_origin_and_protocol (instance))
return NPERR_GENERIC_ERROR;
/* set windowless mode */
funcs.setvalue(instance, NPPVpluginWindowBool, NULL);
g_debug ("creating scriptable object");
init_methods_and_properties ();
obj = (PluginObject *) funcs.createobject (instance, &plugin_class);
instance->pdata = obj;
obj->proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SESSION,
G_DBUS_PROXY_FLAGS_NONE,
NULL, /* interface info */
"org.gnome.Shell",
"/org/gnome/Shell",
"org.gnome.Shell.Extensions",
NULL, /* GCancellable */
&error);
if (!obj->proxy)
{
/* ignore error if the shell is not running, otherwise warn */
if (!g_error_matches (error, G_DBUS_ERROR, G_DBUS_ERROR_NAME_HAS_NO_OWNER))
{
g_warning ("Failed to set up Shell proxy: %s", error->message);
}
g_clear_error (&error);
return NPERR_GENERIC_ERROR;
}
obj->settings = g_settings_new (SHELL_SCHEMA);
obj->signal_id = g_signal_connect (obj->proxy, "g-signal",
G_CALLBACK (on_shell_signal), obj);
obj->watch_name_id = g_bus_watch_name (G_BUS_TYPE_SESSION,
"org.gnome.Shell",
G_BUS_NAME_WATCHER_FLAGS_NONE,
on_shell_appeared,
NULL,
obj,
NULL);
g_debug ("plugin created successfully");
return NPERR_NO_ERROR;
}
NPError
NPP_Destroy(NPP instance,
NPSavedData **saved)
{
/* instance finalization function */
PluginObject *obj = (PluginObject *) instance->pdata;
if (!obj)
return NPERR_INVALID_INSTANCE_ERROR;
g_debug ("plugin destroyed");
g_signal_handler_disconnect (obj->proxy, obj->signal_id);
g_object_unref (obj->proxy);
if (obj->listener)
funcs.releaseobject (obj->listener);
if (obj->restart_listener)
funcs.releaseobject (obj->restart_listener);
if (obj->watch_name_id)
g_bus_unwatch_name (obj->watch_name_id);
funcs.releaseobject((NPObject *)obj);
return NPERR_NO_ERROR;
}
NPError
NPP_GetValue(NPP instance,
NPPVariable variable,
@ -1026,10 +1043,13 @@ NPP_GetValue(NPP instance,
switch (variable) {
case NPPVpluginScriptableNPObject:
g_debug ("creating scriptable object");
if (!instance->pdata)
return NPERR_INVALID_INSTANCE_ERROR;
init_methods_and_properties ();
*(NPObject**)value = instance->pdata;
*(NPObject**)value = funcs.createobject (instance, &plugin_class);
break;
case NPPVpluginNeedsXEmbed:
*(bool *)value = TRUE;
break;
default:
@ -1047,11 +1067,3 @@ NPP_SetWindow(NPP instance,
{
return NPERR_NO_ERROR;
}
int16_t
NPP_HandleEvent(NPP instance,
void *event)
{
/* Ignore the event */
return FALSE;
}

View File

@ -1,5 +1,5 @@
AC_PREREQ(2.63)
AC_INIT([gnome-shell],[3.21.3],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AC_INIT([gnome-shell],[3.18.0],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
AX_IS_RELEASE([git-directory])
AC_CONFIG_HEADERS([config.h])
@ -52,7 +52,7 @@ if $PKG_CONFIG --exists gstreamer-1.0 '>=' $GSTREAMER_MIN_VERSION ; then
AC_MSG_RESULT(yes)
build_recorder=true
recorder_modules="gstreamer-1.0 gstreamer-base-1.0 x11 gtk+-3.0"
PKG_CHECK_MODULES(TEST_SHELL_RECORDER, $recorder_modules mutter-clutter-1.0)
PKG_CHECK_MODULES(TEST_SHELL_RECORDER, $recorder_modules clutter-1.0)
else
AC_MSG_RESULT(no)
fi
@ -77,7 +77,7 @@ AC_MSG_RESULT($enable_systemd)
CLUTTER_MIN_VERSION=1.21.5
GOBJECT_INTROSPECTION_MIN_VERSION=1.45.4
GJS_MIN_VERSION=1.39.0
MUTTER_MIN_VERSION=3.21.3
MUTTER_MIN_VERSION=3.18.0
GTK_MIN_VERSION=3.15.0
GIO_MIN_VERSION=2.45.3
LIBECAL_MIN_VERSION=3.5.3
@ -98,8 +98,8 @@ SHARED_PCS="gio-unix-2.0 >= $GIO_MIN_VERSION
gjs-internals-1.0 >= $GJS_MIN_VERSION
$recorder_modules
gdk-x11-3.0 libsoup-2.4
mutter-clutter-1.0 >= $CLUTTER_MIN_VERSION
mutter-cogl-pango-1.0
clutter-x11-1.0 >= $CLUTTER_MIN_VERSION
clutter-glx-1.0 >= $CLUTTER_MIN_VERSION
libstartup-notification-1.0 >= $STARTUP_NOTIFICATION_MIN_VERSION
gobject-introspection-1.0 >= $GOBJECT_INTROSPECTION_MIN_VERSION
libcanberra libcanberra-gtk3
@ -114,12 +114,12 @@ PKG_CHECK_MODULES(GNOME_SHELL, $SHARED_PCS)
PKG_CHECK_MODULES(MUTTER, libmutter >= $MUTTER_MIN_VERSION)
PKG_CHECK_MODULES(GNOME_SHELL_JS, gio-2.0 gjs-internals-1.0 >= $GJS_MIN_VERSION)
PKG_CHECK_MODULES(ST, mutter-clutter-1.0 gtk+-3.0 libcroco-0.6 >= 0.6.8 x11)
PKG_CHECK_MODULES(ST, clutter-1.0 gtk+-3.0 libcroco-0.6 >= 0.6.8 x11)
PKG_CHECK_MODULES(SHELL_PERF_HELPER, gtk+-3.0 gio-2.0)
PKG_CHECK_MODULES(SHELL_HOTPLUG_SNIFFER, gio-2.0 gdk-pixbuf-2.0)
PKG_CHECK_MODULES(TRAY, mutter-clutter-1.0 gtk+-3.0)
PKG_CHECK_MODULES(TRAY, gtk+-3.0)
PKG_CHECK_MODULES(GVC, libpulse >= $PULSE_MIN_VERS libpulse-mainloop-glib gobject-2.0)
PKG_CHECK_MODULES(DESKTOP_SCHEMAS, gsettings-desktop-schemas >= 3.21.3)
PKG_CHECK_MODULES(DESKTOP_SCHEMAS, gsettings-desktop-schemas >= 3.13.1)
AC_ARG_ENABLE(browser-plugin,
[AS_HELP_STRING([--enable-browser-plugin],

View File

@ -2,14 +2,11 @@ CLEANFILES =
NULL =
desktopdir=$(datadir)/applications
desktop_DATA = org.gnome.Shell.desktop gnome-shell-extension-prefs.desktop
desktop_DATA = gnome-shell.desktop gnome-shell-wayland.desktop gnome-shell-extension-prefs.desktop
if HAVE_NETWORKMANAGER
desktop_DATA += org.gnome.Shell.PortalHelper.desktop
portaldir = $(datadir)/xdg-desktop-portal/portals
portal_DATA = gnome-shell.portal
servicedir = $(datadir)/dbus-1/services
service_DATA = org.gnome.Shell.PortalHelper.service
@ -35,7 +32,6 @@ endif
introspectiondir = $(datadir)/dbus-1/interfaces
introspection_DATA = \
org.gnome.Shell.PadOsd.xml \
org.gnome.Shell.Screencast.xml \
org.gnome.Shell.Screenshot.xml \
org.gnome.ShellSearchProvider.xml \
@ -108,14 +104,14 @@ convertdir = $(datadir)/GConf/gsettings
convert_DATA = gnome-shell-overrides.convert
EXTRA_DIST = \
org.gnome.Shell.desktop.in.in \
gnome-shell.desktop.in.in \
gnome-shell-wayland.desktop.in.in \
gnome-shell-extension-prefs.desktop.in.in \
$(introspection_DATA) \
$(menu_DATA) \
$(convert_DATA) \
$(keys_in_files) \
$(dist_theme_files) \
pad-osd.css \
perf-background.xml.in \
org.gnome.Shell.PortalHelper.desktop.in \
org.gnome.Shell.PortalHelper.service.in \
@ -125,7 +121,8 @@ EXTRA_DIST = \
$(NULL)
CLEANFILES += \
org.gnome.Shell.desktop.in \
gnome-shell.desktop.in \
gnome-shell-wayland.desktop.in \
gnome-shell-extension-prefs.in \
$(desktop_DATA) \
$(keys_DATA) \

View File

@ -22,7 +22,6 @@
<file>no-events.svg</file>
<file>no-notifications.svg</file>
<file>noise-texture.png</file>
<file>pad-osd.css</file>
<file>page-indicator-active.svg</file>
<file>page-indicator-inactive.svg</file>
<file>page-indicator-checked.svg</file>

View File

@ -0,0 +1,15 @@
[Desktop Entry]
Type=Application
_Name=GNOME Shell (wayland compositor)
_Comment=Window management and application launching
Exec=@bindir@/gnome-shell --wayland --display-server
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-shell
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-Version=@VERSION@
Categories=GNOME;GTK;Core;
OnlyShowIn=GNOME;
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer
X-GNOME-Autostart-Notify=true
X-GNOME-AutoRestart=false

View File

@ -10,7 +10,7 @@ X-GNOME-Bugzilla-Version=@VERSION@
Categories=GNOME;GTK;Core;
OnlyShowIn=GNOME;
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer
X-GNOME-Autostart-Phase=WindowManager
X-GNOME-Provides=panel;windowmanager;
X-GNOME-Autostart-Notify=true
X-GNOME-AutoRestart=false

View File

@ -1,4 +0,0 @@
[portal]
DBusName=org.freedesktop.impl.portal.desktop.gnome
Interfaces=org.freedesktop.impl.portal.Access
UseIn=gnome

View File

@ -1,28 +0,0 @@
<!DOCTYPE node PUBLIC
'-//freedesktop//DTD D-BUS Object Introspection 1.0//EN'
'http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd'>
<node>
<!--
org.gnome.Shell.PadOSD:
@short_description: Pad OSD interface
The interface used to show button map OSD on pad devices.
-->
<interface name='org.gnome.Shell.Wacom.PadOsd'>
<!--
Show:
@device_node: device node file, usually in /dev/input/...
@edition_mode: whether toggling edition mode on when showing
Shows the pad button map OSD for the requested device, the OSD
will be shown according the current device settings (output
mapping, left handed mode, ...)
-->
<method name='Show'>
<arg name='device_node' direction='in' type='o'/>
<arg name='edition_mode' direction='in' type='b'/>
</method>
</interface>
</node>

View File

@ -51,7 +51,7 @@
</key>
<key name="looking-glass-history" type="as">
<default>[]</default>
<!-- Translators: looking glass is a debugger and inspector tool, see https://wiki.gnome.org/Projects/GnomeShell/LookingGlass -->
<!-- Translators: looking glass is a debugger and inspector tool, see https://live.gnome.org/GnomeShell/LookingGlass -->
<_summary>History for the looking glass dialog</_summary>
</key>
<key name="always-show-log-out" type="b">
@ -72,20 +72,22 @@
This key sets the default state of the checkbox.
</_description>
</key>
<key name="had-bluetooth-devices-setup" type="b">
<default>false</default>
<_summary>Whether the default Bluetooth adapter had set up devices associated to it</_summary>
<_description>
The shell will only show a Bluetooth menu item if a Bluetooth
adapter is powered, or if there were devices set up associated
with the default adapter. This will be reset if the default
adapter is ever seen not to have devices associated to it.
</_description>
</key>
<child name="calendar" schema="org.gnome.shell.calendar"/>
<child name="keybindings" schema="org.gnome.shell.keybindings"/>
<child name="keyboard" schema="org.gnome.shell.keyboard"/>
</schema>
<schema id="org.gnome.shell.calendar" path="/org/gnome/shell/calendar/"
gettext-domain="@GETTEXT_PACKAGE@">
<key name="show-weekdate" type="b">
<default>false</default>
<_summary>Show the week date in the calendar</_summary>
<_description>
If true, display the ISO week date in the calendar.
</_description>
</key>
</schema>
<schema id="org.gnome.shell.keybindings" path="/org/gnome/shell/keybindings/"
gettext-domain="@GETTEXT_PACKAGE@">
<key name="open-application-menu" type="as">

View File

@ -41,9 +41,9 @@ stage {
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.button:insensitive {
color: gray;
color: #7f7f7f;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(62, 67, 69, 0.7);
background-color: rgba(62, 67, 68, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
@ -65,9 +65,9 @@ stage {
icon-shadow: 0 1px black;
padding: 12px; }
.modal-dialog-linked-button:insensitive {
color: gray;
color: #7f7f7f;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(62, 67, 69, 0.7);
background-color: rgba(62, 67, 68, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
@ -107,8 +107,8 @@ StEntry {
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
border-color: rgba(166, 166, 166, 0.5); }
StEntry:insensitive {
color: gray;
border-color: #0e0e0e;
color: #7f7f7f;
border-color: #0d0d0d;
box-shadow: none; }
StEntry StIcon.capslock-warning {
icon-size: 16px;
@ -142,7 +142,7 @@ StScrollBar {
.slider {
height: 1em;
-slider-height: 0.3em;
-slider-background-color: #0e0e0e;
-slider-background-color: #0d0d0d;
-slider-border-color: black;
-slider-active-background-color: #215d9c;
-slider-active-border-color: #184472;
@ -199,7 +199,7 @@ StScrollBar {
border-radius: 9px;
color: #eeeeec;
background-color: rgba(23, 25, 26, 0.95);
border: 1px solid rgba(238, 238, 236, 0.2); }
border: 3px solid rgba(238, 238, 236, 0.5); }
.modal-dialog .modal-dialog-content-box {
padding: 24px; }
.modal-dialog .run-dialog-entry {
@ -224,7 +224,7 @@ StScrollBar {
/* End Session Dialog */
.end-session-dialog {
spacing: 42px;
border: 1px solid rgba(238, 238, 236, 0.2); }
border: 3px solid rgba(238, 238, 236, 0.2); }
.end-session-dialog-list {
padding-top: 20px; }
@ -399,77 +399,6 @@ StScrollBar {
width: 48px;
height: 48px; }
/* Audio selection dialog */
.audio-device-selection-dialog {
spacing: 30px; }
.audio-selection-content {
spacing: 20px;
padding: 24px; }
.audio-selection-title {
font-weight: bold;
text-align: center; }
.audio-selection-box {
spacing: 20px; }
.audio-selection-device {
border: 1px solid rgba(238, 238, 236, 0.2);
border-radius: 12px; }
.audio-selection-device:active, .audio-selection-device:hover, .audio-selection-device:focus {
background-color: #215d9c; }
.audio-selection-device-box {
padding: 20px;
spacing: 20px; }
.audio-selection-device-icon {
icon-size: 64px; }
/* Access Dialog */
.access-dialog {
spacing: 30px; }
.access-dialog-main-layout {
padding: 12px 20px 0;
spacing: 12px; }
.access-dialog-content {
max-width: 28em;
spacing: 20px; }
.access-dialog-icon {
min-width: 48px;
icon-size: 48px; }
.access-dialog-title {
font-weight: bold; }
.access-dialog-subtitle {
color: #999999;
font-weight: bold; }
/* Geolocation Dialog */
.geolocation-dialog {
spacing: 30px; }
.geolocation-dialog-main-layout {
spacing: 12px; }
.geolocation-dialog-content {
spacing: 20px; }
.geolocation-dialog-icon {
icon-size: 48px; }
.geolocation-dialog-title {
font-weight: bold; }
.geolocation-dialog-reason {
color: #999999;
font-weight: bold; }
/* Network Agent Dialog */
.network-dialog-secret-table {
spacing-rows: 15px;
@ -479,9 +408,9 @@ StScrollBar {
spacing-rows: 15px;
spacing-columns: 1em; }
/* Popovers/Menus */
/* Popvers/Menus */
.popup-menu {
min-width: 15em; }
min-width: 200px; }
.popup-menu .popup-sub-menu {
background-color: black;
box-shadow: inset 0 -1px 0px #0d0d0d; }
@ -558,9 +487,6 @@ StScrollBar {
border-radius: 0.3em;
background-color: rgba(11, 12, 13, 0.5);
color: #eeeeec; }
.osd-window .level-bar {
background-color: #eeeeec;
border-radius: 0.3em; }
/* App Switcher */
.switcher-popup {
@ -699,8 +625,6 @@ StScrollBar {
#panel .panel-status-indicators-box,
#panel .panel-status-menu-box {
spacing: 2px; }
#panel .power-status.panel-status-indicators-box {
spacing: 0; }
#panel .screencast-indicator {
color: #f57900; }
@ -792,7 +716,7 @@ StScrollBar {
border-radius: 1.4em; }
.calendar-day-base:hover, .calendar-day-base:focus {
background-color: #0d0d0d; }
.calendar-day-base:active, .calendar-day-base:selected {
.calendar-day-base:active {
color: white;
background-color: #215d9c;
border-color: transparent; }
@ -811,7 +735,7 @@ StScrollBar {
border-left-width: 1px; }
.calendar-nonwork-day {
color: gray; }
color: #7f7f7f; }
.calendar-today {
font-weight: bold;
@ -826,20 +750,9 @@ StScrollBar {
color: rgba(255, 255, 255, 0.15);
opacity: 0.5; }
.calendar-week-number {
font-size: 70%;
font-weight: bold;
width: 2.3em;
height: 1.8em;
border-radius: 2px;
padding: 0.5em 0 0;
margin: 6px;
background-color: rgba(255, 255, 255, 0.3);
color: #000; }
/* Message list */
.message-list {
width: 31.5em; }
width: 420px; }
.message-list-sections {
spacing: 1.5em; }
@ -895,23 +808,6 @@ StScrollBar {
padding: 8px;
font-size: .9em; }
.message-media-control {
padding: 6px; }
.message-media-control:last-child:ltr {
padding-right: 18px; }
.message-media-control:last-child:rtl {
padding-left: 18px; }
.media-message-cover-icon {
icon-size: 32px; }
.media-message-cover-icon.fallback {
color: #1a1a1a;
background-color: #000;
border: 2px solid #000;
border-radius: 2px;
icon-size: 16px;
padding: 8px; }
.system-switch-user-submenu-icon.user-icon {
icon-size: 20px;
padding: 0 2px; }
@ -927,7 +823,8 @@ StScrollBar {
color: transparent; }
.aggregate-menu {
min-width: 21em; }
min-width: 280px;
max-width: 400px; }
.aggregate-menu .popup-menu-icon {
padding: 0 4px; }
@ -1064,14 +961,10 @@ StScrollBar {
.search-entry {
width: 320px;
padding: 7px 9px;
border-radius: 6px;
border-color: #747467;
color: #eeeeec;
background-color: #2e3436; }
border-radius: 6px; }
.search-entry:focus {
padding: 6px 8px;
border-width: 2px;
border-color: #215d9c; }
border-width: 2px; }
.search-entry .search-entry-icon {
icon-size: 1em;
padding: 0 4px;
@ -1599,9 +1492,9 @@ StScrollBar {
text-shadow: none;
icon-shadow: none; }
.login-dialog .modal-dialog-button:default:insensitive {
color: gray;
color: #7f7f7f;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(62, 67, 69, 0.7);
background-color: rgba(62, 67, 68, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }

View File

@ -41,9 +41,9 @@ stage {
icon-shadow: 0 1px black;
box-shadow: inset 0px 0px 0px 1px #215d9c; }
.button:insensitive {
color: #949796;
color: #939695;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(66, 72, 73, 0.7);
background-color: rgba(66, 71, 73, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
@ -65,9 +65,9 @@ stage {
icon-shadow: 0 1px black;
padding: 12px; }
.modal-dialog-linked-button:insensitive {
color: #949796;
color: #939695;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(66, 72, 73, 0.7);
background-color: rgba(66, 71, 73, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }
@ -107,8 +107,8 @@ StEntry {
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
border-color: rgba(154, 154, 142, 0.5); }
StEntry:insensitive {
color: #949796;
border-color: #333636;
color: #939695;
border-color: #323636;
box-shadow: none; }
StEntry StIcon.capslock-warning {
icon-size: 16px;
@ -131,10 +131,10 @@ StScrollBar {
background-color: transparent; }
StScrollBar StButton#vhandle, StScrollBar StButton#hhandle {
border-radius: 8px;
background-color: #a6a8a7;
background-color: #a5a8a6;
margin: 3px; }
StScrollBar StButton#vhandle:hover, StScrollBar StButton#hhandle:hover {
background-color: #cacbc9; }
background-color: #c9cbc9; }
StScrollBar StButton#vhandle:active, StScrollBar StButton#hhandle:active {
background-color: #215d9c; }
@ -142,7 +142,7 @@ StScrollBar {
.slider {
height: 1em;
-slider-height: 0.3em;
-slider-background-color: #333636;
-slider-background-color: #323636;
-slider-border-color: #1c1f1f;
-slider-active-background-color: #215d9c;
-slider-active-border-color: #184472;
@ -199,7 +199,7 @@ StScrollBar {
border-radius: 9px;
color: #eeeeec;
background-color: rgba(23, 25, 26, 0.95);
border: 1px solid rgba(238, 238, 236, 0.2); }
border: 3px solid rgba(238, 238, 236, 0.5); }
.modal-dialog .modal-dialog-content-box {
padding: 24px; }
.modal-dialog .run-dialog-entry {
@ -224,7 +224,7 @@ StScrollBar {
/* End Session Dialog */
.end-session-dialog {
spacing: 42px;
border: 1px solid rgba(238, 238, 236, 0.2); }
border: 3px solid rgba(238, 238, 236, 0.2); }
.end-session-dialog-list {
padding-top: 20px; }
@ -399,77 +399,6 @@ StScrollBar {
width: 48px;
height: 48px; }
/* Audio selection dialog */
.audio-device-selection-dialog {
spacing: 30px; }
.audio-selection-content {
spacing: 20px;
padding: 24px; }
.audio-selection-title {
font-weight: bold;
text-align: center; }
.audio-selection-box {
spacing: 20px; }
.audio-selection-device {
border: 1px solid rgba(238, 238, 236, 0.2);
border-radius: 12px; }
.audio-selection-device:active, .audio-selection-device:hover, .audio-selection-device:focus {
background-color: #215d9c; }
.audio-selection-device-box {
padding: 20px;
spacing: 20px; }
.audio-selection-device-icon {
icon-size: 64px; }
/* Access Dialog */
.access-dialog {
spacing: 30px; }
.access-dialog-main-layout {
padding: 12px 20px 0;
spacing: 12px; }
.access-dialog-content {
max-width: 28em;
spacing: 20px; }
.access-dialog-icon {
min-width: 48px;
icon-size: 48px; }
.access-dialog-title {
font-weight: bold; }
.access-dialog-subtitle {
color: #8e8e80;
font-weight: bold; }
/* Geolocation Dialog */
.geolocation-dialog {
spacing: 30px; }
.geolocation-dialog-main-layout {
spacing: 12px; }
.geolocation-dialog-content {
spacing: 20px; }
.geolocation-dialog-icon {
icon-size: 48px; }
.geolocation-dialog-title {
font-weight: bold; }
.geolocation-dialog-reason {
color: #8e8e80;
font-weight: bold; }
/* Network Agent Dialog */
.network-dialog-secret-table {
spacing-rows: 15px;
@ -479,9 +408,9 @@ StScrollBar {
spacing-rows: 15px;
spacing-columns: 1em; }
/* Popovers/Menus */
/* Popvers/Menus */
.popup-menu {
min-width: 15em; }
min-width: 200px; }
.popup-menu .popup-sub-menu {
background-color: #343a3a;
box-shadow: inset 0 -1px 0px #282c2c; }
@ -558,13 +487,6 @@ StScrollBar {
border-radius: 0.3em;
background-color: rgba(11, 12, 13, 0.5);
color: #eeeeec; }
.osd-window .level-bar {
background-color: #eeeeec;
border-radius: 0.3em; }
.pad-osd-window {
background-color: rgba(0, 0, 0, 0.8);
}
/* App Switcher */
.switcher-popup {
@ -703,8 +625,6 @@ StScrollBar {
#panel .panel-status-indicators-box,
#panel .panel-status-menu-box {
spacing: 2px; }
#panel .power-status.panel-status-indicators-box {
spacing: 0; }
#panel .screencast-indicator {
color: #f57900; }
@ -796,7 +716,7 @@ StScrollBar {
border-radius: 1.4em; }
.calendar-day-base:hover, .calendar-day-base:focus {
background-color: #454c4c; }
.calendar-day-base:active, .calendar-day-base:selected {
.calendar-day-base:active {
color: white;
background-color: #215d9c;
border-color: transparent; }
@ -815,7 +735,7 @@ StScrollBar {
border-left-width: 1px; }
.calendar-nonwork-day {
color: #949796; }
color: #939695; }
.calendar-today {
font-weight: bold;
@ -830,20 +750,9 @@ StScrollBar {
color: rgba(238, 238, 236, 0.15);
opacity: 0.5; }
.calendar-week-number {
font-size: 70%;
font-weight: bold;
width: 2.3em;
height: 1.8em;
border-radius: 2px;
padding: 0.5em 0 0;
margin: 6px;
background-color: rgba(238, 238, 236, 0.3);
color: #393f3f; }
/* Message list */
.message-list {
width: 31.5em; }
width: 420px; }
.message-list-sections {
spacing: 1.5em; }
@ -899,23 +808,6 @@ StScrollBar {
padding: 8px;
font-size: .9em; }
.message-media-control {
padding: 6px; }
.message-media-control:last-child:ltr {
padding-right: 18px; }
.message-media-control:last-child:rtl {
padding-left: 18px; }
.media-message-cover-icon {
icon-size: 32px; }
.media-message-cover-icon.fallback {
color: #515a5a;
background-color: #393f3f;
border: 2px solid #393f3f;
border-radius: 2px;
icon-size: 16px;
padding: 8px; }
.system-switch-user-submenu-icon.user-icon {
icon-size: 20px;
padding: 0 2px; }
@ -931,7 +823,8 @@ StScrollBar {
color: transparent; }
.aggregate-menu {
min-width: 21em; }
min-width: 280px;
max-width: 400px; }
.aggregate-menu .popup-menu-icon {
padding: 0 4px; }
@ -1068,14 +961,10 @@ StScrollBar {
.search-entry {
width: 320px;
padding: 7px 9px;
border-radius: 6px;
border-color: #747467;
color: #eeeeec;
background-color: #2e3436; }
border-radius: 6px; }
.search-entry:focus {
padding: 6px 8px;
border-width: 2px;
border-color: #215d9c; }
border-width: 2px; }
.search-entry .search-entry-icon {
icon-size: 1em;
padding: 0 4px;
@ -1603,9 +1492,9 @@ StScrollBar {
text-shadow: none;
icon-shadow: none; }
.login-dialog .modal-dialog-button:default:insensitive {
color: #949796;
color: #939695;
border-color: rgba(0, 0, 0, 0.7);
background-color: rgba(66, 72, 73, 0.7);
background-color: rgba(66, 71, 73, 0.7);
box-shadow: none;
text-shadow: none;
icon-shadow: none; }

View File

@ -1,30 +0,0 @@
.Leader {
stroke-width: .5 !important;
stroke: #535353;
fill: none !important;
}
.Button {
stroke-width: .25;
stroke: #ededed;
fill: #ededed;
}
.Ring {
stroke-width: .5 !important;
stroke: #535353 !important;
fill: none !important;
}
.Label {
stroke: none !important;
stroke-width: .1 !important;
font-size: .1 !important;
fill: transparent !important;
}
.TouchStrip, .TouchRing {
stroke-width: .1 !important;
stroke: #ededed !important;
fill: #535353 !important;
}

View File

@ -113,7 +113,7 @@ expand_content_files=
# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
GTKDOC_CFLAGS=$(GNOME_SHELL_CFLAGS)
GTKDOC_LIBS=$(GNOME_SHELL_LIBS) $(top_builddir)/src/libgnome-shell-menu.la $(top_builddir)/src/libgnome-shell-base.la $(top_builddir)/src/libgnome-shell.la -rpath $(MUTTER_TYPELIB_DIR)
GTKDOC_LIBS=$(GNOME_SHELL_LIBS) $(top_builddir)/src/libgnome-shell-menu.la $(top_builddir)/src/libgnome-shell-base.la $(top_builddir)/src/libgnome-shell.la
# This includes the standard gtk-doc make rules, copied by gtkdocize.
include $(top_srcdir)/gtk-doc.make

View File

@ -78,7 +78,7 @@ expand_content_files=
# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
GTKDOC_CFLAGS=
GTKDOC_LIBS=$(top_builddir)/src/libst-1.0.la -rpath $(MUTTER_TYPELIB_DIR)
GTKDOC_LIBS=$(top_builddir)/src/libst-1.0.la
# This includes the standard gtk-doc make rules, copied by gtkdocize.
include $(top_srcdir)/gtk-doc.make

View File

@ -23,6 +23,11 @@ const GnomeShellIface = '<node> \
</interface> \
</node>';
const customCss = '.prefs-button { \
padding: 8px; \
border-radius: 20px; \
}';
const GnomeShellProxy = Gio.DBusProxy.makeProxyWrapper(GnomeShellIface);
function stripPrefix(string, prefix) {
@ -171,6 +176,21 @@ const Application = new Lang.Class({
this._window.show_all();
},
_addCustomStyle: function() {
let provider = new Gtk.CssProvider();
try {
provider.load_from_data(customCss, -1);
} catch(e) {
log('Failed to add application style');
return;
}
let screen = this._window.window.get_screen();
let priority = Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION;
Gtk.StyleContext.add_provider_for_screen(screen, provider, priority);
},
_sortList: function(row1, row2) {
let name1 = ExtensionUtils.extensions[row1.uuid].metadata.name;
let name2 = ExtensionUtils.extensions[row2.uuid].metadata.name;
@ -219,6 +239,7 @@ const Application = new Lang.Class({
_onStartup: function(app) {
this._buildUI(app);
this._addCustomStyle();
this._scanExtensions();
},
@ -295,7 +316,7 @@ const ExtensionRow = new Lang.Class({
button.add(new Gtk.Image({ icon_name: 'emblem-system-symbolic',
icon_size: Gtk.IconSize.BUTTON,
visible: true }));
button.get_style_context().add_class('circular');
button.get_style_context().add_class('prefs-button');
hbox.add(button);
this.prefsButton = button;

View File

@ -189,8 +189,7 @@ const AuthPrompt = new Lang.Class({
this._updateNextButtonSensitivity(this._entry.text.length > 0);
}));
this._entry.clutter_text.connect('activate', Lang.bind(this, function() {
if (this.nextButton.reactive)
this.emit('next');
this.emit('next');
}));
},

View File

@ -16,34 +16,6 @@
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
/*
* In order for transformation animations to look good, they need to be
* incremental and have some order to them (e.g., fade out hidden items,
* then shrink to close the void left over). Chaining animations in this way can
* be error-prone and wordy using just Tweener callbacks.
*
* The classes in this file help with this:
*
* - Task. encapsulates schedulable work to be run in a specific scope.
*
* - ConsecutiveBatch. runs a series of tasks in order and completes
* when the last in the series finishes.
*
* - ConcurrentBatch. runs a set of tasks at the same time and completes
* when the last to finish completes.
*
* - Hold. prevents a batch from completing the pending task until
* the hold is released.
*
* The tasks associated with a batch are specified in a list at batch
* construction time as either task objects or plain functions.
* Batches are task objects, themselves, so they can be nested.
*
* These classes aren't specific to GDM, but were found to be unintuitive and so
* are not used elsewhere. These APIs may ultimately get dropped entirely and
* replaced by something else.
*/
const Lang = imports.lang;
const Signals = imports.signals;

View File

@ -96,7 +96,7 @@ const UserListItem = new Lang.Class({
},
_onDestroy: function() {
this.user.disconnect(this._userChangedId);
this._user.disconnect(this._userChangedId);
},
_onClicked: function() {
@ -212,10 +212,6 @@ const UserList = new Lang.Class({
return item;
},
containsUser: function(user) {
return this._items[user.get_user_name()] != null;
},
addUser: function(user) {
if (!user.is_loaded)
return;
@ -928,7 +924,11 @@ const LoginDialog = new Lang.Class({
},
onUpdateScope: this,
onComplete: function() {
this._greeter.call_start_session_when_ready_sync(serviceName, true, null);
let id = Mainloop.idle_add(Lang.bind(this, function() {
this._greeter.call_start_session_when_ready_sync(serviceName, true, null);
return GLib.SOURCE_REMOVE;
}));
GLib.Source.set_name_by_id(id, '[gnome-shell] this._greeter.call_start_session_when_ready_sync');
},
onCompleteScope: this });
},
@ -1130,10 +1130,6 @@ const LoginDialog = new Lang.Class({
this._userManager.disconnect(this._userRemovedId);
this._userRemovedId = 0;
}
if (this._userChangedId) {
this._userManager.disconnect(this._userChangedId);
this._userChangedId = 0;
}
this._textureCache.disconnect(this._updateLogoTextureId);
Main.layoutManager.disconnect(this._startupCompleteId);
if (this._settings) {
@ -1180,14 +1176,6 @@ const LoginDialog = new Lang.Class({
this._userList.removeUser(user);
}));
this._userChangedId = this._userManager.connect('user-changed',
Lang.bind(this, function(userManager, user) {
if (this._userList.containsUser(user) && user.locked)
this._userList.removeUser(user);
else if (!this._userList.containsUser(user) && !user.locked)
this._userList.addUser(user);
}));
return GLib.SOURCE_REMOVE;
},

View File

@ -31,12 +31,10 @@
<file>portalHelper/main.js</file>
<file>ui/accessDialog.js</file>
<file>ui/altTab.js</file>
<file>ui/animation.js</file>
<file>ui/appDisplay.js</file>
<file>ui/appFavorites.js</file>
<file>ui/audioDeviceSelection.js</file>
<file>ui/backgroundMenu.js</file>
<file>ui/background.js</file>
<file>ui/boxpointer.js</file>
@ -64,15 +62,12 @@
<file>ui/magnifierDBus.js</file>
<file>ui/main.js</file>
<file>ui/messageTray.js</file>
<file>ui/messageList.js</file>
<file>ui/modalDialog.js</file>
<file>ui/mpris.js</file>
<file>ui/notificationDaemon.js</file>
<file>ui/osdWindow.js</file>
<file>ui/osdMonitorLabeler.js</file>
<file>ui/overview.js</file>
<file>ui/overviewControls.js</file>
<file>ui/padOsd.js</file>
<file>ui/panel.js</file>
<file>ui/panelMenu.js</file>
<file>ui/pointerWatcher.js</file>

View File

@ -40,9 +40,6 @@ const SystemdLoginSessionIface = '<node> \
<signal name="Lock" /> \
<signal name="Unlock" /> \
<property name="Active" type="b" access="read" /> \
<method name="SetLockedHint"> \
<arg type="b" direction="in"/> \
</method> \
</interface> \
</node>';
@ -134,13 +131,10 @@ const LoginManagerSystemd = new Lang.Class({
canSuspend: function(asyncCallback) {
this._proxy.CanSuspendRemote(function(result, error) {
if (error) {
asyncCallback(false, false);
} else {
let needsAuth = result[0] == 'challenge';
let canSuspend = needsAuth || result[0] == 'yes';
asyncCallback(canSuspend, needsAuth);
}
if (error)
asyncCallback(false);
else
asyncCallback(result[0] != 'no' && result[0] != 'na');
});
},
@ -193,7 +187,7 @@ const LoginManagerDummy = new Lang.Class({
},
canSuspend: function(asyncCallback) {
asyncCallback(false, false);
asyncCallback(false);
},
listSessions: function(asyncCallback) {

View File

@ -1,202 +0,0 @@
const Clutter = imports.gi.Clutter;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const Lang = imports.lang;
const Pango = imports.gi.Pango;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const CheckBox = imports.ui.checkBox;
const ModalDialog = imports.ui.modalDialog;
const RequestIface = '<node> \
<interface name="org.freedesktop.impl.portal.Request"> \
<method name="Close"/> \
</interface> \
</node>';
const AccessIface = '<node> \
<interface name="org.freedesktop.impl.portal.Access"> \
<method name="AccessDialog"> \
<arg type="o" name="handle" direction="in"/> \
<arg type="s" name="app_id" direction="in"/> \
<arg type="s" name="parent_window" direction="in"/> \
<arg type="s" name="title" direction="in"/> \
<arg type="s" name="subtitle" direction="in"/> \
<arg type="s" name="body" direction="in"/> \
<arg type="a{sv}" name="options" direction="in"/> \
<arg type="u" name="response" direction="out"/> \
<arg type="a{sv}" name="results" direction="out"/> \
</method> \
</interface> \
</node>';
const DialogResponse = {
OK: 0,
CANCEL: 1,
CLOSED: 2
};
const AccessDialog = new Lang.Class({
Name: 'AccessDialog',
Extends: ModalDialog.ModalDialog,
_init: function(invocation, handle, title, subtitle, body, options) {
this.parent({ styleClass: 'access-dialog' });
this._invocation = invocation;
this._handle = handle;
this._requestExported = false;
this._request = Gio.DBusExportedObject.wrapJSObject(RequestIface, this);
for (let option in options)
options[option] = options[option].deep_unpack();
this._buildLayout(title, subtitle, body, options);
},
_buildLayout: function(title, subtitle, body, options) {
// No support for non-modal system dialogs, so ignore the option
//let modal = options['modal'] || true;
let denyLabel = options['deny_label'] || _("Deny Access");
let grantLabel = options['grant_label'] || _("Grant Access");
let iconName = options['icon'] || null;
let choices = options['choices'] || [];
let mainContentBox = new St.BoxLayout();
mainContentBox.style_class = 'access-dialog-main-layout';
this.contentLayout.add_actor(mainContentBox);
let icon = new St.Icon({ style_class: 'access-dialog-icon',
icon_name: iconName,
y_align: Clutter.ActorAlign.START });
mainContentBox.add_actor(icon);
let messageBox = new St.BoxLayout({ vertical: true });
messageBox.style_class = 'access-dialog-content',
mainContentBox.add_actor(messageBox);
let label;
label = new St.Label({ style_class: 'access-dialog-title headline',
text: title });
messageBox.add_actor(label);
label = new St.Label({ style_class: 'access-dialog-subtitle',
text: subtitle });
label.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
label.clutter_text.line_wrap = true;
messageBox.add_actor(label);
this._choices = new Map();
for (let i = 0; i < choices.length; i++) {
let [id, name, opts, selected] = choices[i];
if (opts.length > 0)
continue; // radio buttons, not implemented
let check = new CheckBox.CheckBox();
check.getLabelActor().text = name;
check.actor.checked = selected == "true";
messageBox.add_actor(check.actor);
this._choices.set(id, check);
}
label = new St.Label({ text: body });
label.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
label.clutter_text.line_wrap = true;
messageBox.add_actor(label);
this.addButton({ label: denyLabel,
action: () => {
this._sendResponse(DialogResponse.CANCEL);
},
key: Clutter.KEY_Escape });
this.addButton({ label: grantLabel,
action: () => {
this._sendResponse(DialogResponse.OK);
}});
},
open: function() {
this.parent();
let connection = this._invocation.get_connection();
this._requestExported = this._request.export(connection, this._handle);
},
CloseAsync: function(invocation, params) {
if (this._invocation.get_sender() != invocation.get_sender()) {
invocation.return_error_literal(Gio.DBusError,
Gio.DBusError.ACCESS_DENIED,
'');
return;
}
this._sendResponse(DialogResponse.CLOSED);
},
_sendResponse: function(response) {
if (this._requestExported)
this._request.unexport();
this._requestExported = false;
let results = {};
if (response == DialogResponse.OK) {
for (let [id, check] of this._choices) {
let checked = check.actor.checked ? 'true' : 'false';
results[id] = new GLib.Variant('s', checked);
}
}
// Delay actual response until the end of the close animation (if any)
this.connect('closed', () => {
this._invocation.return_value(new GLib.Variant('(ua{sv})',
[response, results]));
});
this.close();
}
});
const AccessDialogDBus = new Lang.Class({
Name: 'AccessDialogDBus',
_init: function() {
this._accessDialog = null;
this._windowTracker = Shell.WindowTracker.get_default();
this._dbusImpl = Gio.DBusExportedObject.wrapJSObject(AccessIface, this);
this._dbusImpl.export(Gio.DBus.session, '/org/freedesktop/portal/desktop');
Gio.DBus.session.own_name('org.freedesktop.impl.portal.desktop.gnome', Gio.BusNameOwnerFlags.REPLACE, null, null);
},
AccessDialogAsync: function(params, invocation) {
if (this._accessDialog) {
invocation.return_error_literal(Gio.DBusError,
Gio.DBusError.LIMITS_EXCEEDED,
'Already showing a system access dialog');
return;
}
let [handle, appId, parentWindow, title, subtitle, body, options] = params;
// We probably want to use parentWindow and global.display.focus_window
// for this check in the future
if (appId && appId + '.desktop' != this._windowTracker.focus_app.id) {
invocation.return_error_literal(Gio.DBusError,
Gio.DBusError.ACCESS_DENIED,
'Only the focused app is allowed to show a system access dialog');
return;
}
let dialog = new AccessDialog(invocation, handle, title,
subtitle, body, options);
dialog.open();
dialog.connect('closed', () => { this._accessDialog = null; });
this._accessDialog = dialog;
}
});

View File

@ -354,59 +354,6 @@ const AppSwitcherPopup = new Lang.Class({
}
});
const CyclerPopup = new Lang.Class({
Name: 'CyclerPopup',
Extends: SwitcherPopup.SwitcherPopup,
Abstract: true,
_init : function() {
this.parent();
this._items = this._getWindows();
if (this._items.length == 0)
return;
// We don't show an actual popup, so just provide what SwitcherPopup
// expects instead of inheriting from SwitcherList
this._switcherList = { actor: new St.Widget(),
highlight: Lang.bind(this, this._highlightItem),
connect: function() {} };
},
_highlightItem: function(index, justOutline) {
Main.activateWindow(this._items[index]);
},
_finish: function() {
this._highlightItem(this._selectedIndex);
this.parent();
}
});
const GroupCyclerPopup = new Lang.Class({
Name: 'GroupCyclerPopup',
Extends: CyclerPopup,
_getWindows: function() {
let app = Shell.WindowTracker.get_default().focus_app;
return app ? app.get_windows() : [];
},
_keyPressHandler: function(keysym, action) {
if (action == Meta.KeyBindingAction.CYCLE_GROUP)
this._select(this._next());
else if (action == Meta.KeyBindingAction.CYCLE_GROUP_BACKWARD)
this._select(this._previous());
else
return Clutter.EVENT_PROPAGATE;
return Clutter.EVENT_STOP;
}
});
const WindowSwitcherPopup = new Lang.Class({
Name: 'WindowSwitcherPopup',
Extends: SwitcherPopup.SwitcherPopup,
@ -454,32 +401,6 @@ const WindowSwitcherPopup = new Lang.Class({
}
});
const WindowCyclerPopup = new Lang.Class({
Name: 'WindowCyclerPopup',
Extends: CyclerPopup,
_init: function() {
this._settings = new Gio.Settings({ schema_id: 'org.gnome.shell.window-switcher' });
this.parent();
},
_getWindows: function() {
let workspace = this._settings.get_boolean('current-workspace-only') ? global.screen.get_active_workspace() : null;
return global.display.get_tab_list(Meta.TabList.NORMAL, workspace);
},
_keyPressHandler: function(keysym, action) {
if (action == Meta.KeyBindingAction.CYCLE_WINDOWS)
this._select(this._next());
else if (action == Meta.KeyBindingAction.CYCLE_WINDOWS_BACKWARD)
this._select(this._previous());
else
return Clutter.EVENT_PROPAGATE;
return Clutter.EVENT_STOP;
}
});
const AppIcon = new Lang.Class({
Name: 'AppIcon',
@ -764,17 +685,15 @@ const WindowIcon = new Lang.Class({
this._icon.destroy_all_children();
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
switch (mode) {
case AppIconMode.THUMBNAIL_ONLY:
size = WINDOW_PREVIEW_SIZE;
this._icon.add_actor(_createWindowClone(mutterWindow, size * scaleFactor));
this._icon.add_actor(_createWindowClone(mutterWindow, WINDOW_PREVIEW_SIZE));
break;
case AppIconMode.BOTH:
size = WINDOW_PREVIEW_SIZE;
this._icon.add_actor(_createWindowClone(mutterWindow, size * scaleFactor));
this._icon.add_actor(_createWindowClone(mutterWindow, WINDOW_PREVIEW_SIZE));
if (this.app)
this._icon.add_actor(this._createAppIcon(this.app,
@ -786,7 +705,7 @@ const WindowIcon = new Lang.Class({
this._icon.add_actor(this._createAppIcon(this.app, size));
}
this._icon.set_size(size * scaleFactor, size * scaleFactor);
this._icon.set_size(size, size);
},
_createAppIcon: function(app, size) {

View File

@ -7,7 +7,7 @@ const St = imports.gi.St;
const Signals = imports.signals;
const Atk = imports.gi.Atk;
const ANIMATED_ICON_UPDATE_TIMEOUT = 16;
const ANIMATED_ICON_UPDATE_TIMEOUT = 14;
const Animation = new Lang.Class({
Name: 'Animation',
@ -33,7 +33,7 @@ const Animation = new Lang.Class({
if (this._frame == 0)
this._showFrame(0);
this._timeoutId = GLib.timeout_add(GLib.PRIORITY_LOW, this._speed, Lang.bind(this, this._update));
this._timeoutId = Mainloop.timeout_add(this._speed, Lang.bind(this, this._update));
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._update');
}

View File

@ -1814,7 +1814,7 @@ const AppIconMenu = new Lang.Class({
if (!source.actor.mapped)
this.close();
}));
source.actor.connect('destroy', Lang.bind(this, this.destroy));
source.actor.connect('destroy', Lang.bind(this, function () { this.actor.destroy(); }));
Main.uiGroup.add_actor(this.actor);
},

View File

@ -16,18 +16,16 @@ const RENAMED_DESKTOP_IDS = {
'glchess.desktop': 'gnome-chess.desktop',
'glines.desktop': 'five-or-more.desktop',
'gnect.desktop': 'four-in-a-row.desktop',
'gnibbles.desktop': 'org.gnome.Nibbles.desktop',
'gnibbles.desktop': 'gnome-nibbles.desktop',
'gnobots2.desktop': 'gnome-robots.desktop',
'gnome-boxes.desktop': 'org.gnome.Boxes.desktop',
'gnome-clocks.desktop': 'org.gnome.clocks.desktop',
'gnome-contacts.desktop': 'org.gnome.Contacts.desktop',
'gnome-documents.desktop': 'org.gnome.Documents.desktop',
'gnome-font-viewer.desktop': 'org.gnome.font-viewer.desktop',
'gnome-nibbles.desktop': 'org.gnome.Nibbles.desktop',
'gnome-photos.desktop': 'org.gnome.Photos.desktop',
'gnome-screenshot.desktop': 'org.gnome.Screenshot.desktop',
'gnome-software.desktop': 'org.gnome.Software.desktop',
'gnome-terminal.desktop': 'org.gnome.Terminal.desktop',
'gnome-weather.desktop': 'org.gnome.Weather.Application.desktop',
'gnomine.desktop': 'gnome-mines.desktop',
'gnotravex.desktop': 'gnome-tetravex.desktop',

View File

@ -1,216 +0,0 @@
const Clutter = imports.gi.Clutter;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const Lang = imports.lang;
const Meta = imports.gi.Meta;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Main = imports.ui.main;
const ModalDialog = imports.ui.modalDialog;
const AudioDevice = {
HEADPHONES: 1 << 0,
HEADSET: 1 << 1,
MICROPHONE: 1 << 2
};
const AudioDeviceSelectionIface = '<node> \
<interface name="org.gnome.Shell.AudioDeviceSelection"> \
<method name="Open"> \
<arg name="devices" direction="in" type="as" /> \
</method> \
<method name="Close"> \
</method> \
<signal name="DeviceSelected"> \
<arg name="device" type="s" /> \
</signal> \
</interface> \
</node>';
const AudioDeviceSelectionDialog = new Lang.Class({
Name: 'AudioDeviceSelectionDialog',
Extends: ModalDialog.ModalDialog,
_init: function(devices) {
this.parent({ styleClass: 'audio-device-selection-dialog' });
this._deviceItems = {};
this._buildLayout();
if (devices & AudioDevice.HEADPHONES)
this._addDevice(AudioDevice.HEADPHONES);
if (devices & AudioDevice.HEADSET)
this._addDevice(AudioDevice.HEADSET);
if (devices & AudioDevice.MICROPHONE)
this._addDevice(AudioDevice.MICROPHONE);
if (this._selectionBox.get_n_children() < 2)
throw new Error('Too few devices for a selection');
},
destroy: function() {
this.parent();
},
_buildLayout: function(devices) {
let title = new St.Label({ style_class: 'audio-selection-title',
text: _("Select Audio Device"),
x_align: Clutter.ActorAlign.CENTER });
this.contentLayout.style_class = 'audio-selection-content';
this.contentLayout.add(title);
this._selectionBox = new St.BoxLayout({ style_class: 'audio-selection-box' });
this.contentLayout.add(this._selectionBox, { expand: true });
this.addButton({ action: Lang.bind(this, this._openSettings),
label: _("Sound Settings") });
this.addButton({ action: Lang.bind(this, this.close),
label: _("Cancel"),
key: Clutter.Escape });
},
_getDeviceLabel: function(device) {
switch(device) {
case AudioDevice.HEADPHONES:
return _("Headphones");
case AudioDevice.HEADSET:
return _("Headset");
case AudioDevice.MICROPHONE:
return _("Microphone");
default:
return null;
}
},
_getDeviceIcon: function(device) {
switch(device) {
case AudioDevice.HEADPHONES:
return 'audio-headphones-symbolic';
case AudioDevice.HEADSET:
return 'audio-headset-symbolic';
case AudioDevice.MICROPHONE:
return 'audio-input-microphone-symbolic';
default:
return null;
}
},
_addDevice: function(device) {
let box = new St.BoxLayout({ style_class: 'audio-selection-device-box',
vertical: true });
box.connect('notify::height',
function() {
Meta.later_add(Meta.LaterType.BEFORE_REDRAW,
function() {
box.width = box.height;
});
});
let icon = new St.Icon({ style_class: 'audio-selection-device-icon',
icon_name: this._getDeviceIcon(device) });
box.add(icon);
let label = new St.Label({ style_class: 'audio-selection-device-label',
text: this._getDeviceLabel(device),
x_align: Clutter.ActorAlign.CENTER });
box.add(label);
let button = new St.Button({ style_class: 'audio-selection-device',
can_focus: true,
child: box });
this._selectionBox.add(button);
button.connect('clicked', Lang.bind(this,
function() {
this.emit('device-selected', device);
this.close();
Main.overview.hide();
}));
},
_openSettings: function() {
let desktopFile = 'gnome-sound-panel.desktop'
let app = Shell.AppSystem.get_default().lookup_app(desktopFile);
if (!app) {
log('Settings panel for desktop file ' + desktopFile + ' could not be loaded!');
return;
}
this.close();
Main.overview.hide();
app.activate();
}
});
const AudioDeviceSelectionDBus = new Lang.Class({
Name: 'AudioDeviceSelectionDBus',
_init: function() {
this._audioSelectionDialog = null;
this._dbusImpl = Gio.DBusExportedObject.wrapJSObject(AudioDeviceSelectionIface, this);
this._dbusImpl.export(Gio.DBus.session, '/org/gnome/Shell/AudioDeviceSelection');
Gio.DBus.session.own_name('org.gnome.Shell.AudioDeviceSelection', Gio.BusNameOwnerFlags.REPLACE, null, null);
},
_onDialogClosed: function() {
this._audioSelectionDialog = null;
},
_onDeviceSelected: function(dialog, device) {
let connection = this._dbusImpl.get_connection();
let info = this._dbusImpl.get_info();
let deviceName = Object.keys(AudioDevice).filter(
function(dev) {
return AudioDevice[dev] == device;
})[0].toLowerCase();
connection.emit_signal(this._audioSelectionDialog._sender,
this._dbusImpl.get_object_path(),
info ? info.name : null,
'DeviceSelected',
GLib.Variant.new('(s)', [deviceName]));
},
OpenAsync: function(params, invocation) {
if (this._audioSelectionDialog) {
invocation.return_value(null);
return;
}
let [deviceNames] = params;
let devices = 0;
deviceNames.forEach(function(n) {
devices |= AudioDevice[n.toUpperCase()];
});
let dialog;
try {
dialog = new AudioDeviceSelectionDialog(devices);
} catch(e) {
invocation.return_value(null);
return;
}
dialog._sender = invocation.get_sender();
dialog.connect('closed', Lang.bind(this, this._onDialogClosed));
dialog.connect('device-selected',
Lang.bind(this, this._onDeviceSelected));
dialog.open();
this._audioSelectionDialog = dialog;
invocation.return_value(null);
},
CloseAsync: function(params, invocation) {
if (this._audioSelectionDialog &&
this._audioSelectionDialog._sender == invocation.get_sender())
this._audioSelectionDialog.close();
invocation.return_value(null);
}
});

View File

@ -247,13 +247,6 @@ const Background = new Lang.Class({
this._cancellable = new Gio.Cancellable();
this.isLoaded = false;
this._clock = new GnomeDesktop.WallClock();
this._timezoneChangedId = this._clock.connect('notify::timezone',
Lang.bind(this, function() {
if (this._animation)
this._loadAnimation(this._animation.file);
}));
this._settingsChangedSignalId = this._settings.connect('changed', Lang.bind(this, function() {
this.emit('changed');
}));
@ -272,10 +265,6 @@ const Background = new Lang.Class({
}
this._fileWatches = null;
if (this._timezoneChangedId != 0)
this._clock.disconnect(this._timezoneChangedId);
this._timezoneChangedId = 0;
if (this._settingsChangedSignalId != 0)
this._settings.disconnect(this._settingsChangedSignalId);
this._settingsChangedSignalId = 0;
@ -696,7 +685,6 @@ const BackgroundManager = new Lang.Class({
time: FADE_ANIMATION_TIME,
transition: 'easeOutQuad',
onComplete: function() {
oldBackgroundActor.background.run_dispose();
oldBackgroundActor.destroy();
}
});

File diff suppressed because it is too large Load Diff

View File

@ -313,10 +313,6 @@ const AutorunSource = new Lang.Class({
getIcon: function() {
return this.mount.get_icon();
},
_createPolicy: function() {
return new MessageTray.NotificationApplicationPolicy('org.gnome.Nautilus');
}
});

View File

@ -796,18 +796,10 @@ const NetworkAgent = new Lang.Class({
path = GLib.build_filenamev([Config.LIBEXECDIR, path]);
}
if (GLib.file_test(path, GLib.FileTest.IS_EXECUTABLE)) {
if (GLib.file_test(path, GLib.FileTest.IS_EXECUTABLE))
this._vpnBinaries[service] = { fileName: path, externalUIMode: externalUIMode, supportsHints: hints };
try {
let aliases = keyfile.get_string_list('VPN Connection', 'aliases');
for (let alias of aliases) {
this._vpnBinaries[alias] = { fileName: path, externalUIMode: externalUIMode, supportsHints: hints };
}
} catch(e) { } // ignore errors if key does not exist
} else {
else
throw new Error('VPN plugin at %s is not executable'.format(path));
}
} catch(e) {
log('Error \'%s\' while processing VPN keyfile \'%s\''.
format(e.message, dir.get_child(name).get_path()));

View File

@ -12,9 +12,9 @@ const St = imports.gi.St;
const Tpl = imports.gi.TelepathyLogger;
const Tp = imports.gi.TelepathyGLib;
const Calendar = imports.ui.calendar;
const History = imports.misc.history;
const Main = imports.ui.main;
const MessageList = imports.ui.messageList;
const MessageTray = imports.ui.messageTray;
const Params = imports.misc.params;
const PopupMenu = imports.ui.popupMenu;
@ -469,7 +469,6 @@ const ChatSource = new Lang.Class({
destroy: function(reason) {
if (this._client.is_handling_channel(this._channel)) {
this._ackMessages();
// The chat box has been destroyed so it can't
// handle the channel any more.
this._channel.close_async(function(channel, result) {
@ -867,7 +866,7 @@ const ChatNotificationBanner = new Lang.Class({
},
_addMessage: function(message) {
let highlighter = new MessageList.URLHighlighter(message.body, true, true);
let highlighter = new Calendar.URLHighlighter(message.body, true, true);
let body = highlighter.actor;
let styles = message.styles;

View File

@ -259,7 +259,7 @@ const ShowAppsIcon = new Lang.Class({
},
_createIcon: function(size) {
this._iconActor = new St.Icon({ icon_name: 'view-app-grid-symbolic',
this._iconActor = new St.Icon({ icon_name: 'view-grid-symbolic',
icon_size: size,
style_class: 'show-apps-icon',
track_hover: true });
@ -644,14 +644,15 @@ const Dash = new Lang.Class({
let firstIcon = firstButton._delegate.icon;
let minHeight, natHeight;
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
// Enforce the current icon size during the size request
firstIcon.icon.ensure_style();
let [currentWidth, currentHeight] = firstIcon.icon.get_size();
firstIcon.icon.set_size(this.iconSize * scaleFactor, this.iconSize * scaleFactor);
firstIcon.setIconSize(this.iconSize);
[minHeight, natHeight] = firstButton.get_preferred_height(-1);
firstIcon.icon.set_size(currentWidth, currentHeight);
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
let iconSizes = baseIconSizes.map(function(s) {
return s * scaleFactor;
});
// Subtract icon padding and box spacing from the available height
availHeight -= iconChildren.length * (natHeight - this.iconSize * scaleFactor) +
@ -659,10 +660,6 @@ const Dash = new Lang.Class({
let availSize = availHeight / iconChildren.length;
let iconSizes = baseIconSizes.map(function(s) {
return s * scaleFactor;
});
let newIconSize = baseIconSizes[0];
for (let i = 0; i < iconSizes.length; i++) {
if (iconSizes[i] < availSize)

View File

@ -360,7 +360,7 @@ const DateMenuButton = new Lang.Class({
}));
// Fill up the first column
this._messageList = new Calendar.CalendarMessageList();
this._messageList = new Calendar.MessageList();
hbox.add(this._messageList.actor, { expand: true, y_fill: false, y_align: St.Align.START });
// Fill up the second column

View File

@ -79,12 +79,9 @@ const _Draggable = new Lang.Class({
dragActorOpacity: undefined });
this.actor = actor;
if (!params.manualMode) {
if (!params.manualMode)
this.actor.connect('button-press-event',
Lang.bind(this, this._onButtonPress));
this.actor.connect('touch-event',
Lang.bind(this, this._onTouchEvent));
}
this.actor.connect('destroy', Lang.bind(this, function() {
this._actorDestroyed = true;
@ -124,50 +121,8 @@ const _Draggable = new Lang.Class({
return Clutter.EVENT_PROPAGATE;
},
_onTouchEvent: function (actor, event) {
if (event.type() != Clutter.EventType.TOUCH_BEGIN ||
!global.display.is_pointer_emulating_sequence(event.get_event_sequence()))
return Clutter.EVENT_PROPAGATE;
if (Tweener.getTweenCount(actor))
return Clutter.EVENT_PROPAGATE;
this._touchSequence = event.get_event_sequence();
this._buttonDown = true;
this._grabActor();
let [stageX, stageY] = event.get_coords();
this._dragStartX = stageX;
this._dragStartY = stageY;
return Clutter.EVENT_PROPAGATE;
},
_grabDevice: function(actor) {
let manager = Clutter.DeviceManager.get_default();
let pointer = manager.get_core_device(Clutter.InputDeviceType.POINTER_DEVICE);
if (pointer && this._touchSequence)
pointer.sequence_grab(this._touchSequence, actor);
else if (pointer)
pointer.grab (actor);
this._grabbedDevice = pointer;
},
_ungrabDevice: function() {
if (this._touchSequence)
this._grabbedDevice.sequence_ungrab (this._touchSequence);
else
this._grabbedDevice.ungrab();
this._touchSequence = null;
this._grabbedDevice = null;
},
_grabActor: function() {
this._grabDevice(this.actor);
Clutter.grab_pointer(this.actor);
this._onEventId = this.actor.connect('event',
Lang.bind(this, this._onEvent));
},
@ -176,7 +131,7 @@ const _Draggable = new Lang.Class({
if (!this._onEventId)
return;
this._ungrabDevice();
Clutter.ungrab_pointer();
this.actor.disconnect(this._onEventId);
this._onEventId = null;
},
@ -185,13 +140,13 @@ const _Draggable = new Lang.Class({
if (!this._eventsGrabbed) {
this._eventsGrabbed = Main.pushModal(_getEventHandlerActor());
if (this._eventsGrabbed)
this._grabDevice(_getEventHandlerActor());
Clutter.grab_pointer(_getEventHandlerActor());
}
},
_ungrabEvents: function() {
if (this._eventsGrabbed) {
this._ungrabDevice();
Clutter.ungrab_pointer();
Main.popModal(_getEventHandlerActor());
this._eventsGrabbed = false;
}
@ -202,9 +157,7 @@ const _Draggable = new Lang.Class({
// didn't start the drag, to drop the draggable in case the drag was in progress, and
// to complete the drag and ensure that whatever happens to be under the pointer does
// not get triggered if the drag was cancelled with Esc.
if (event.type() == Clutter.EventType.BUTTON_RELEASE ||
(event.type() == Clutter.EventType.TOUCH_END &&
global.display.is_pointer_emulating_sequence(event.get_event_sequence()))) {
if (event.type() == Clutter.EventType.BUTTON_RELEASE) {
this._buttonDown = false;
if (this._dragInProgress) {
return this._dragActorDropped(event);
@ -219,9 +172,7 @@ const _Draggable = new Lang.Class({
}
// We intercept MOTION event to figure out if the drag has started and to draw
// this._dragActor under the pointer when dragging is in progress
} else if (event.type() == Clutter.EventType.MOTION ||
(event.type() == Clutter.EventType.TOUCH_UPDATE &&
global.display.is_pointer_emulating_sequence(event.get_event_sequence()))) {
} else if (event.type() == Clutter.EventType.MOTION) {
if (this._dragInProgress) {
return this._updateDragPosition(event);
} else if (this._dragActor == null) {
@ -263,7 +214,7 @@ const _Draggable = new Lang.Class({
* This function is useful to call if you've specified manualMode
* for the draggable.
*/
startDrag: function (stageX, stageY, time, sequence) {
startDrag: function (stageX, stageY, time) {
currentDraggable = this;
this._dragInProgress = true;
@ -277,8 +228,6 @@ const _Draggable = new Lang.Class({
this.emit('drag-begin', time);
if (this._onEventId)
this._ungrabActor();
this._touchSequence = sequence;
this._grabEvents();
global.screen.set_cursor(Meta.Cursor.DND_IN_DRAG);
@ -389,8 +338,8 @@ const _Draggable = new Lang.Class({
let threshold = Gtk.Settings.get_default().gtk_dnd_drag_threshold;
if ((Math.abs(stageX - this._dragStartX) > threshold ||
Math.abs(stageY - this._dragStartY) > threshold)) {
this.startDrag(stageX, stageY, event.get_time(), this._touchSequence);
this._updateDragPosition(event);
this.startDrag(stageX, stageY, event.get_time());
this._updateDragPosition(event);
}
return true;
@ -571,13 +520,20 @@ const _Draggable = new Lang.Class({
return;
}
this._animateDragEnd(eventTime,
{ x: snapBackX,
y: snapBackY,
scale_x: snapBackScale,
scale_y: snapBackScale,
time: SNAP_BACK_ANIMATION_TIME,
});
this._animationInProgress = true;
// No target, so snap back
Tweener.addTween(this._dragActor,
{ x: snapBackX,
y: snapBackY,
scale_x: snapBackScale,
scale_y: snapBackScale,
opacity: this._dragOrigOpacity,
time: SNAP_BACK_ANIMATION_TIME,
transition: 'easeOutQuad',
onComplete: this._onAnimationComplete,
onCompleteScope: this,
onCompleteParams: [this._dragActor, eventTime]
});
},
_restoreDragActor: function(eventTime) {
@ -589,44 +545,18 @@ const _Draggable = new Lang.Class({
this._dragActor.set_scale(restoreScale, restoreScale);
this._dragActor.opacity = 0;
this._animateDragEnd(eventTime,
{ time: REVERT_ANIMATION_TIME });
},
_animateDragEnd: function (eventTime, params) {
this._animationInProgress = true;
// finish animation if the actor gets destroyed
// during it
this._dragActorDestroyId =
this._dragActor.connect('destroy',
Lang.bind(this, this._finishAnimation));
params['opacity'] = this._dragOrigOpacity;
params['transition'] = 'easeOutQuad';
params['onComplete'] = this._onAnimationComplete;
params['onCompleteScope'] = this;
params['onCompleteParams'] = [this._dragActor, eventTime];
// start the animation
Tweener.addTween(this._dragActor, params)
},
_finishAnimation : function () {
if (!this._animationInProgress)
return
this._animationInProgress = false;
if (!this._buttonDown)
this._dragComplete();
global.screen.set_cursor(Meta.Cursor.DEFAULT);
Tweener.addTween(this._dragActor,
{ opacity: this._dragOrigOpacity,
time: REVERT_ANIMATION_TIME,
transition: 'easeOutQuad',
onComplete: this._onAnimationComplete,
onCompleteScope: this,
onCompleteParams: [this._dragActor, eventTime]
});
},
_onAnimationComplete : function (dragActor, eventTime) {
dragActor.disconnect(this._dragActorDestroyId);
this._dragActorDestroyId = 0;
if (this._dragOrigParent) {
Main.uiGroup.remove_child(this._dragActor);
this._dragOrigParent.add_actor(this._dragActor);
@ -635,9 +565,12 @@ const _Draggable = new Lang.Class({
} else {
dragActor.destroy();
}
global.screen.set_cursor(Meta.Cursor.DEFAULT);
this.emit('drag-end', eventTime, false);
this._finishAnimation();
this._animationInProgress = false;
if (!this._buttonDown)
this._dragComplete();
},
_dragComplete: function() {

View File

@ -1,6 +1,6 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
/*
* Copyright 2010-2016 Red Hat, Inc
* Copyright 2010 Red Hat, Inc
*
* 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
@ -114,7 +114,7 @@ const restartDialogContent = {
showOtherSessions: true,
};
const restartUpdateDialogContent = {
const restartInstallDialogContent = {
subject: C_("title", "Restart & Install Updates"),
description: function(seconds) {
@ -132,38 +132,18 @@ const restartUpdateDialogContent = {
showOtherSessions: true,
};
const restartUpgradeDialogContent = {
subject: C_("title", "Restart & Install Upgrade"),
upgradeDescription: function(distroName, distroVersion) {
/* Translators: This is the text displayed for system upgrades in the
shut down dialog. First %s gets replaced with the distro name and
second %s with the distro version to upgrade to */
return _("%s %s will be installed after restart. Upgrade installation can take a long time: ensure that you have backed up and that the computer is plugged in.").format(distroName, distroVersion);
},
disableTimer: true,
showBatteryWarning: false,
confirmButtons: [{ signal: 'ConfirmedReboot',
label: C_("button", "Restart &amp; Install") }],
iconName: 'view-refresh-symbolic',
iconStyleClass: 'end-session-dialog-shutdown-icon',
showOtherSessions: true,
};
const DialogType = {
LOGOUT: 0 /* GSM_SHELL_END_SESSION_DIALOG_TYPE_LOGOUT */,
SHUTDOWN: 1 /* GSM_SHELL_END_SESSION_DIALOG_TYPE_SHUTDOWN */,
RESTART: 2 /* GSM_SHELL_END_SESSION_DIALOG_TYPE_RESTART */,
UPDATE_RESTART: 3,
UPGRADE_RESTART: 4
UPDATE_RESTART: 3
};
const DialogContent = {
0 /* DialogType.LOGOUT */: logoutDialogContent,
1 /* DialogType.SHUTDOWN */: shutdownDialogContent,
2 /* DialogType.RESTART */: restartDialogContent,
3 /* DialogType.UPDATE_RESTART */: restartUpdateDialogContent,
4 /* DialogType.UPGRADE_RESTART */: restartUpgradeDialogContent
3 /* DialogType.UPDATE_RESTART */: restartInstallDialogContent
};
const MAX_USERS_IN_SESSION_DIALOG = 5;
@ -183,10 +163,7 @@ const LogindSession = Gio.DBusProxy.makeProxyWrapper(LogindSessionIface);
const PkOfflineIface = '<node> \
<interface name="org.freedesktop.PackageKit.Offline"> \
<property name="UpdatePrepared" type="b" access="read"/> \
<property name="UpdateTriggered" type="b" access="read"/> \
<property name="UpgradePrepared" type="b" access="read"/> \
<property name="UpgradeTriggered" type="b" access="read"/> \
<property name="PreparedUpgrade" type="a{sv}" access="read"/> \
<property name="TriggerAction" type="s" access="read"/> \
<method name="Trigger"> \
<arg type="s" name="action" direction="in"/> \
</method> \
@ -438,19 +415,11 @@ const EndSessionDialog = new Lang.Class({
if (dialogContent.descriptionWithUser)
description = dialogContent.descriptionWithUser(realName, displayTime);
else
description = dialogContent.description(displayTime);
}
}
// Use a different description when we are installing a system upgrade
if (dialogContent.upgradeDescription) {
let name = this._pkOfflineProxy.PreparedUpgrade['name'].deep_unpack();
let version = this._pkOfflineProxy.PreparedUpgrade['version'].deep_unpack();
if (name != null && version != null)
description = dialogContent.upgradeDescription(name, version);
}
// Fall back to regular description
if (!description)
description = dialogContent.description(displayTime);
@ -729,12 +698,9 @@ const EndSessionDialog = new Lang.Class({
this._totalSecondsToStayOpen = totalSecondsToStayOpen;
this._type = type;
if (this._type == DialogType.RESTART) {
if (this._pkOfflineProxy.UpdateTriggered)
this._type = DialogType.UPDATE_RESTART;
else if (this._pkOfflineProxy.UpgradeTriggered)
this._type = DialogType.UPGRADE_RESTART;
}
if (this._type == DialogType.RESTART &&
this._pkOfflineProxy.TriggerAction == 'reboot')
this._type = DialogType.UPDATE_RESTART;
this._applications = [];
this._applicationList.destroy_all_children();
@ -761,19 +727,19 @@ const EndSessionDialog = new Lang.Class({
if (dialogContent.showOtherSessions)
this._loadSessions();
let updateTriggered = this._pkOfflineProxy.UpdateTriggered;
let updateAlreadyTriggered = this._pkOfflineProxy.TriggerAction == 'power-off' || this._pkOfflineProxy.TriggerAction == 'reboot';
let updatePrepared = this._pkOfflineProxy.UpdatePrepared;
let updatesAllowed = this._updatesPermission && this._updatesPermission.allowed;
_setCheckBoxLabel(this._checkBox, dialogContent.checkBoxText);
this._checkBox.actor.visible = (dialogContent.checkBoxText && updatePrepared && updatesAllowed);
this._checkBox.actor.checked = (updatePrepared && updateTriggered);
this._checkBox.actor.checked = (updatePrepared && updateAlreadyTriggered);
// We show the warning either together with the checkbox, or when
// updates have already been triggered, but the user doesn't have
// enough permissions to cancel them.
this._batteryWarning.visible = (dialogContent.showBatteryWarning &&
(this._checkBox.actor.visible || updatePrepared && updateTriggered && !updatesAllowed));
(this._checkBox.actor.visible || updatePrepared && updateAlreadyTriggered && !updatesAllowed));
this._updateButtons();
@ -783,9 +749,7 @@ const EndSessionDialog = new Lang.Class({
return;
}
if (!dialogContent.disableTimer)
this._startTimer();
this._startTimer();
this._sync();
let signalId = this.connect('opened',

View File

@ -334,7 +334,7 @@ function _sessionUpdated() {
// from allowExtensions in the future
if (Main.sessionMode.allowExtensions) {
if (initted)
enabledExtensions = getEnabledExtensions();
onEnabledExtensionsChanged();
enableAllExtensions();
} else {
disableAllExtensions();

View File

@ -158,22 +158,10 @@ const CandidatePopup = new Lang.Class({
panelService.connect('set-cursor-location',
Lang.bind(this, function(ps, x, y, w, h) {
this._setDummyCursorGeometry(x, y, w, h);
Main.layoutManager.setDummyCursorGeometry(x, y, w, h);
if (this._boxPointer.actor.visible)
this._boxPointer.setPosition(Main.layoutManager.dummyCursor, 0);
}));
try {
panelService.connect('set-cursor-location-relative',
Lang.bind(this, function(ps, x, y, w, h) {
if (!global.display.focus_window)
return;
let window = global.display.focus_window.get_compositor_private();
this._setDummyCursorGeometry(window.x + x, window.y + y, w, h);
}));
} catch(e) {
// Only recent IBus versions have support for this signal
// which is used for wayland clients. In order to work
// with older IBus versions we can silently ignore the
// signal's absence.
}
panelService.connect('update-preedit-text',
Lang.bind(this, function(ps, text, cursorPosition, visible) {
this._preeditText.visible = visible;
@ -258,12 +246,6 @@ const CandidatePopup = new Lang.Class({
}));
},
_setDummyCursorGeometry: function(x, y, w, h) {
Main.layoutManager.setDummyCursorGeometry(x, y, w, h);
if (this._boxPointer.actor.visible)
this._boxPointer.setPosition(Main.layoutManager.dummyCursor, 0);
},
_updateVisibility: function() {
let isVisible = (this._preeditText.visible ||
this._auxText.visible ||

View File

@ -220,8 +220,7 @@ const LayoutManager = new Lang.Class({
global.stage.add_child(this.uiGroup);
this.overviewGroup = new St.Widget({ name: 'overviewGroup',
visible: false,
reactive: true });
visible: false });
this.addChrome(this.overviewGroup);
this.screenShieldGroup = new St.Widget({ name: 'screenShieldGroup',
@ -592,10 +591,7 @@ const LayoutManager = new Lang.Class({
this.addChrome(this._coverPane);
if (Meta.is_restart()) {
// On restart, we don't do an animation. Force an update of the
// regions immediately so that maximized windows restore to the
// right size taking struts into account.
this._updateRegions();
// On restart, we don't do an animation
} else if (Main.sessionMode.isGreeter) {
this.panelBox.translation_y = -this.panelBox.height;
} else {
@ -942,11 +938,6 @@ const LayoutManager = new Lang.Class({
if (Main.modalCount > 0)
return GLib.SOURCE_REMOVE;
// Bug workaround - get_transformed_position()/get_transformed_size() don't work after
// a change in stage size until the first pick or paint.
// https://bugzilla.gnome.org/show_bug.cgi?id=761565
global.stage.get_actor_at_pos(Clutter.PickMode.ALL, 0, 0);
let rects = [], struts = [], i;
let isPopupMenuVisible = global.top_window_group.get_children().some(isPopupMetaWindow);
let wantsInputRegion = !isPopupMenuVisible;

View File

@ -50,14 +50,15 @@ const LegacyTray = new Lang.Class({
this._slideLayout.translationX = 0;
this._slideLayout.slideDirection = OverviewControls.SlideDirection.LEFT;
this._slider = new St.Widget({ x_expand: true, y_expand: true,
this._slider = new St.Widget({ style_class: 'legacy-tray',
x_expand: true, y_expand: true,
x_align: Clutter.ActorAlign.START,
y_align: Clutter.ActorAlign.END,
layout_manager: this._slideLayout });
this.actor.add_actor(this._slider);
this._slider.connect('notify::allocation', Lang.bind(this, this._syncBarrier));
this._box = new St.BoxLayout({ style_class: 'legacy-tray' });
this._box = new St.BoxLayout();
this._slider.add_actor(this._box);
this._concealHandle = new St.Button({ style_class: 'legacy-tray-handle',

View File

@ -11,8 +11,6 @@ const Meta = imports.gi.Meta;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const AccessDialog = imports.ui.accessDialog;
const AudioDeviceSelection = imports.ui.audioDeviceSelection;
const Components = imports.ui.components;
const CtrlAltTab = imports.ui.ctrlAltTab;
const EndSessionDialog = imports.ui.endSessionDialog;
@ -26,7 +24,6 @@ const ModalDialog = imports.ui.modalDialog;
const OsdWindow = imports.ui.osdWindow;
const OsdMonitorLabeler = imports.ui.osdMonitorLabeler;
const Overview = imports.ui.overview;
const PadOsd = imports.ui.padOsd;
const Panel = imports.ui.panel;
const Params = imports.misc.params;
const RunDialog = imports.ui.runDialog;
@ -62,12 +59,9 @@ let screenShield = null;
let notificationDaemon = null;
let windowAttentionHandler = null;
let ctrlAltTabManager = null;
let padOsdService = null;
let osdWindowManager = null;
let osdMonitorLabeler = null;
let sessionMode = null;
let shellAccessDialogDBusService = null;
let shellAudioSelectionDBusService = null;
let shellDBusService = null;
let shellMountOpDBusService = null;
let screenSaverDBus = null;
@ -84,7 +78,6 @@ let _startDate;
let _defaultCssStylesheet = null;
let _cssStylesheet = null;
let _a11ySettings = null;
let _themeResource = null;
function _sessionUpdated() {
if (sessionMode.isPrimary)
@ -126,8 +119,6 @@ function start() {
_loadDefaultStylesheet);
_initializeUI();
shellAccessDialogDBusService = new AccessDialog.AccessDialogDBus();
shellAudioSelectionDBusService = new AudioDeviceSelection.AudioDeviceSelectionDBus();
shellDBusService = new ShellDBus.GnomeShell();
shellMountOpDBusService = new ShellMountOperation.GnomeShellMountOpHandler();
@ -146,7 +137,9 @@ function _initializeUI() {
Shell.WindowTracker.get_default();
Shell.AppUsage.get_default();
reloadThemeResource();
let resource = Gio.Resource.load(global.datadir + '/gnome-shell-theme.gresource');
resource._register();
_loadDefaultStylesheet();
// Setup the stage hierarchy early
@ -157,7 +150,6 @@ function _initializeUI() {
// working until it's updated.
uiGroup = layoutManager.uiGroup;
padOsdService = new PadOsd.PadOsdService();
screencastService = new Screencast.ScreencastService();
xdndHandler = new XdndHandler.XdndHandler();
ctrlAltTabManager = new CtrlAltTab.CtrlAltTabManager();
@ -197,8 +189,6 @@ function _initializeUI() {
return true;
});
global.display.connect('gl-video-memory-purged', loadTheme);
// Provide the bus object for gnome-session to
// initiate logouts.
EndSessionDialog.init();
@ -300,14 +290,6 @@ function setThemeStylesheet(cssStylesheet) {
_cssStylesheet = cssStylesheet ? Gio.File.new_for_path(cssStylesheet) : null;
}
function reloadThemeResource() {
if (_themeResource)
_themeResource._unregister();
_themeResource = Gio.Resource.load(global.datadir + '/gnome-shell-theme.gresource');
_themeResource._register();
}
/**
* loadTheme:
*

View File

@ -1,726 +0,0 @@
const Atk = imports.gi.Atk;
const Clutter = imports.gi.Clutter;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const GObject = imports.gi.GObject;
const Lang = imports.lang;
const Main = imports.ui.main;
const MessageTray = imports.ui.messageTray;
const Meta = imports.gi.Meta;
const Pango = imports.gi.Pango;
const Signals = imports.signals;
const St = imports.gi.St;
const Calendar = imports.ui.calendar;
const Tweener = imports.ui.tweener;
const Util = imports.misc.util;
const MESSAGE_ANIMATION_TIME = 0.1;
const DEFAULT_EXPAND_LINES = 6;
function _fixMarkup(text, allowMarkup) {
if (allowMarkup) {
// Support &amp;, &quot;, &apos;, &lt; and &gt;, escape all other
// occurrences of '&'.
let _text = text.replace(/&(?!amp;|quot;|apos;|lt;|gt;)/g, '&amp;');
// Support <b>, <i>, and <u>, escape anything else
// so it displays as raw markup.
_text = _text.replace(/<(?!\/?[biu]>)/g, '&lt;');
try {
Pango.parse_markup(_text, -1, '');
return _text;
} catch (e) {}
}
// !allowMarkup, or invalid markup
return GLib.markup_escape_text(text, -1);
}
const URLHighlighter = new Lang.Class({
Name: 'URLHighlighter',
_init: function(text, lineWrap, allowMarkup) {
if (!text)
text = '';
this.actor = new St.Label({ reactive: true, style_class: 'url-highlighter',
x_expand: true, x_align: Clutter.ActorAlign.START });
this._linkColor = '#ccccff';
this.actor.connect('style-changed', Lang.bind(this, function() {
let [hasColor, color] = this.actor.get_theme_node().lookup_color('link-color', false);
if (hasColor) {
let linkColor = color.to_string().substr(0, 7);
if (linkColor != this._linkColor) {
this._linkColor = linkColor;
this._highlightUrls();
}
}
}));
this.actor.clutter_text.line_wrap = lineWrap;
this.actor.clutter_text.line_wrap_mode = Pango.WrapMode.WORD_CHAR;
this.setMarkup(text, allowMarkup);
this.actor.connect('button-press-event', Lang.bind(this, function(actor, event) {
// Don't try to URL highlight when invisible.
// The MessageTray doesn't actually hide us, so
// we need to check for paint opacities as well.
if (!actor.visible || actor.get_paint_opacity() == 0)
return Clutter.EVENT_PROPAGATE;
// Keep Notification.actor from seeing this and taking
// a pointer grab, which would block our button-release-event
// handler, if an URL is clicked
return this._findUrlAtPos(event) != -1;
}));
this.actor.connect('button-release-event', Lang.bind(this, function (actor, event) {
if (!actor.visible || actor.get_paint_opacity() == 0)
return Clutter.EVENT_PROPAGATE;
let urlId = this._findUrlAtPos(event);
if (urlId != -1) {
let url = this._urls[urlId].url;
if (url.indexOf(':') == -1)
url = 'http://' + url;
Gio.app_info_launch_default_for_uri(url, global.create_app_launch_context(0, -1));
return Clutter.EVENT_STOP;
}
return Clutter.EVENT_PROPAGATE;
}));
this.actor.connect('motion-event', Lang.bind(this, function(actor, event) {
if (!actor.visible || actor.get_paint_opacity() == 0)
return Clutter.EVENT_PROPAGATE;
let urlId = this._findUrlAtPos(event);
if (urlId != -1 && !this._cursorChanged) {
global.screen.set_cursor(Meta.Cursor.POINTING_HAND);
this._cursorChanged = true;
} else if (urlId == -1) {
global.screen.set_cursor(Meta.Cursor.DEFAULT);
this._cursorChanged = false;
}
return Clutter.EVENT_PROPAGATE;
}));
this.actor.connect('leave-event', Lang.bind(this, function() {
if (!this.actor.visible || this.actor.get_paint_opacity() == 0)
return Clutter.EVENT_PROPAGATE;
if (this._cursorChanged) {
this._cursorChanged = false;
global.screen.set_cursor(Meta.Cursor.DEFAULT);
}
return Clutter.EVENT_PROPAGATE;
}));
},
setMarkup: function(text, allowMarkup) {
text = text ? _fixMarkup(text, allowMarkup) : '';
this._text = text;
this.actor.clutter_text.set_markup(text);
/* clutter_text.text contain text without markup */
this._urls = Util.findUrls(this.actor.clutter_text.text);
this._highlightUrls();
},
_highlightUrls: function() {
// text here contain markup
let urls = Util.findUrls(this._text);
let markup = '';
let pos = 0;
for (let i = 0; i < urls.length; i++) {
let url = urls[i];
let str = this._text.substr(pos, url.pos - pos);
markup += str + '<span foreground="' + this._linkColor + '"><u>' + url.url + '</u></span>';
pos = url.pos + url.url.length;
}
markup += this._text.substr(pos);
this.actor.clutter_text.set_markup(markup);
},
_findUrlAtPos: function(event) {
let success;
let [x, y] = event.get_coords();
[success, x, y] = this.actor.transform_stage_point(x, y);
let find_pos = -1;
for (let i = 0; i < this.actor.clutter_text.text.length; i++) {
let [success, px, py, line_height] = this.actor.clutter_text.position_to_coords(i);
if (py > y || py + line_height < y || x < px)
continue;
find_pos = i;
}
if (find_pos != -1) {
for (let i = 0; i < this._urls.length; i++)
if (find_pos >= this._urls[i].pos &&
this._urls[i].pos + this._urls[i].url.length > find_pos)
return i;
}
return -1;
}
});
const ScaleLayout = new Lang.Class({
Name: 'ScaleLayout',
Extends: Clutter.BinLayout,
_connectContainer: function(container) {
if (this._container == container)
return;
if (this._container)
for (let id of this._signals)
this._container.disconnect(id);
this._container = container;
this._signals = [];
if (this._container)
for (let signal of ['notify::scale-x', 'notify::scale-y']) {
let id = this._container.connect(signal, Lang.bind(this,
function() {
this.layout_changed();
}));
this._signals.push(id);
}
},
vfunc_get_preferred_width: function(container, forHeight) {
this._connectContainer(container);
let [min, nat] = this.parent(container, forHeight);
return [Math.floor(min * container.scale_x),
Math.floor(nat * container.scale_x)];
},
vfunc_get_preferred_height: function(container, forWidth) {
this._connectContainer(container);
let [min, nat] = this.parent(container, forWidth);
return [Math.floor(min * container.scale_y),
Math.floor(nat * container.scale_y)];
}
});
const LabelExpanderLayout = new Lang.Class({
Name: 'LabelExpanderLayout',
Extends: Clutter.LayoutManager,
Properties: { 'expansion': GObject.ParamSpec.double('expansion',
'Expansion',
'Expansion of the layout, between 0 (collapsed) ' +
'and 1 (fully expanded',
GObject.ParamFlags.READABLE | GObject.ParamFlags.WRITABLE,
0, 1, 0)},
_init: function(params) {
this._expansion = 0;
this._expandLines = DEFAULT_EXPAND_LINES;
this.parent(params);
},
get expansion() {
return this._expansion;
},
set expansion(v) {
if (v == this._expansion)
return;
this._expansion = v;
this.notify('expansion');
let visibleIndex = this._expansion > 0 ? 1 : 0;
for (let i = 0; this._container && i < this._container.get_n_children(); i++)
this._container.get_child_at_index(i).visible = (i == visibleIndex);
this.layout_changed();
},
set expandLines(v) {
if (v == this._expandLines)
return;
this._expandLines = v;
if (this._expansion > 0)
this.layout_changed();
},
vfunc_set_container: function(container) {
this._container = container;
},
vfunc_get_preferred_width: function(container, forHeight) {
let [min, nat] = [0, 0];
for (let i = 0; i < container.get_n_children(); i++) {
if (i > 1)
break; // we support one unexpanded + one expanded child
let child = container.get_child_at_index(i);
let [childMin, childNat] = child.get_preferred_width(forHeight);
[min, nat] = [Math.max(min, childMin), Math.max(nat, childNat)];
}
return [min, nat];
},
vfunc_get_preferred_height: function(container, forWidth) {
let [min, nat] = [0, 0];
let children = container.get_children();
if (children[0])
[min, nat] = children[0].get_preferred_height(forWidth);
if (children[1]) {
let [min2, nat2] = children[1].get_preferred_height(forWidth);
let [expMin, expNat] = [Math.min(min2, min * this._expandLines),
Math.min(nat2, nat * this._expandLines)];
[min, nat] = [min + this._expansion * (expMin - min),
nat + this._expansion * (expNat - nat)];
}
return [min, nat];
},
vfunc_allocate: function(container, box, flags) {
for (let i = 0; i < container.get_n_children(); i++) {
let child = container.get_child_at_index(i);
if (child.visible)
child.allocate(box, flags);
}
}
});
const Message = new Lang.Class({
Name: 'Message',
_init: function(title, body) {
this.expanded = false;
this.actor = new St.Button({ style_class: 'message',
accessible_role: Atk.Role.NOTIFICATION,
can_focus: true,
x_expand: true, x_fill: true });
this.actor.connect('key-press-event',
Lang.bind(this, this._onKeyPressed));
let vbox = new St.BoxLayout({ vertical: true });
this.actor.set_child(vbox);
let hbox = new St.BoxLayout();
vbox.add_actor(hbox);
this._actionBin = new St.Widget({ layout_manager: new ScaleLayout(),
visible: false });
vbox.add_actor(this._actionBin);
this._iconBin = new St.Bin({ style_class: 'message-icon-bin',
y_expand: true,
visible: false });
hbox.add_actor(this._iconBin);
let contentBox = new St.BoxLayout({ style_class: 'message-content',
vertical: true, x_expand: true });
hbox.add_actor(contentBox);
this._mediaControls = new St.BoxLayout();
hbox.add_actor(this._mediaControls);
let titleBox = new St.BoxLayout();
contentBox.add_actor(titleBox);
this.titleLabel = new St.Label({ style_class: 'message-title',
x_expand: true,
x_align: Clutter.ActorAlign.START });
this.setTitle(title);
titleBox.add_actor(this.titleLabel);
this._secondaryBin = new St.Bin({ style_class: 'message-secondary-bin' });
titleBox.add_actor(this._secondaryBin);
let closeIcon = new St.Icon({ icon_name: 'window-close-symbolic',
icon_size: 16 });
this._closeButton = new St.Button({ child: closeIcon, visible: false });
titleBox.add_actor(this._closeButton);
this._bodyStack = new St.Widget({ x_expand: true });
this._bodyStack.layout_manager = new LabelExpanderLayout();
contentBox.add_actor(this._bodyStack);
this.bodyLabel = new URLHighlighter('', false, this._useBodyMarkup);
this.bodyLabel.actor.add_style_class_name('message-body');
this._bodyStack.add_actor(this.bodyLabel.actor);
this.setBody(body);
this._closeButton.connect('clicked', Lang.bind(this, this.close));
this.actor.connect('notify::hover', Lang.bind(this, this._sync));
this.actor.connect('clicked', Lang.bind(this, this._onClicked));
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
this._sync();
},
close: function() {
this.emit('close');
},
setIcon: function(actor) {
this._iconBin.child = actor;
this._iconBin.visible = (actor != null);
},
setSecondaryActor: function(actor) {
this._secondaryBin.child = actor;
},
setTitle: function(text) {
let title = text ? _fixMarkup(text.replace(/\n/g, ' '), false) : '';
this.titleLabel.clutter_text.set_markup(title);
},
setBody: function(text) {
this._bodyText = text;
this.bodyLabel.setMarkup(text ? text.replace(/\n/g, ' ') : '',
this._useBodyMarkup);
if (this._expandedLabel)
this._expandedLabel.setMarkup(text, this._useBodyMarkup);
},
setUseBodyMarkup: function(enable) {
if (this._useBodyMarkup === enable)
return;
this._useBodyMarkup = enable;
if (this.bodyLabel)
this.setBody(this._bodyText);
},
setActionArea: function(actor) {
if (actor == null) {
if (this._actionBin.get_n_children() > 0)
this._actionBin.get_child_at_index(0).destroy();
return;
}
if (this._actionBin.get_n_children() > 0)
throw new Error('Message already has an action area');
this._actionBin.add_actor(actor);
this._actionBin.visible = this.expanded;
},
addMediaControl: function(iconName, callback) {
let icon = new St.Icon({ icon_name: iconName, icon_size: 16 });
let button = new St.Button({ style_class: 'message-media-control',
child: icon });
button.connect('clicked', callback);
this._mediaControls.add_actor(button);
return button;
},
setExpandedBody: function(actor) {
if (actor == null) {
if (this._bodyStack.get_n_children() > 1)
this._bodyStack.get_child_at_index(1).destroy();
return;
}
if (this._bodyStack.get_n_children() > 1)
throw new Error('Message already has an expanded body actor');
this._bodyStack.insert_child_at_index(actor, 1);
},
setExpandedLines: function(nLines) {
this._bodyStack.layout_manager.expandLines = nLines;
},
expand: function(animate) {
this.expanded = true;
this._actionBin.visible = (this._actionBin.get_n_children() > 0);
if (this._bodyStack.get_n_children() < 2) {
this._expandedLabel = new URLHighlighter(this._bodyText,
true, this._useBodyMarkup);
this.setExpandedBody(this._expandedLabel.actor);
}
if (animate) {
Tweener.addTween(this._bodyStack.layout_manager,
{ expansion: 1,
time: MessageTray.ANIMATION_TIME,
transition: 'easeOutQuad' });
this._actionBin.scale_y = 0;
Tweener.addTween(this._actionBin,
{ scale_y: 1,
time: MessageTray.ANIMATION_TIME,
transition: 'easeOutQuad' });
} else {
this._bodyStack.layout_manager.expansion = 1;
this._actionBin.scale_y = 1;
}
this.emit('expanded');
},
unexpand: function(animate) {
if (animate) {
Tweener.addTween(this._bodyStack.layout_manager,
{ expansion: 0,
time: MessageTray.ANIMATION_TIME,
transition: 'easeOutQuad' });
Tweener.addTween(this._actionBin,
{ scale_y: 0,
time: MessageTray.ANIMATION_TIME,
transition: 'easeOutQuad',
onCompleteScope: this,
onComplete: function() {
this._actionBin.hide();
this.expanded = false;
}});
} else {
this._bodyStack.layout_manager.expansion = 0;
this._actionBin.scale_y = 0;
this.expanded = false;
}
this.emit('unexpanded');
},
canClose: function() {
return this._mediaControls.get_n_children() == 0;
},
_sync: function() {
let hovered = this.actor.hover;
this._closeButton.visible = hovered && this.canClose();
this._secondaryBin.visible = !hovered;
},
_onClicked: function() {
},
_onDestroy: function() {
},
_onKeyPressed: function(a, event) {
let keysym = event.get_key_symbol();
if (keysym == Clutter.KEY_Delete ||
keysym == Clutter.KEY_KP_Delete) {
this.close();
return Clutter.EVENT_STOP;
}
return Clutter.EVENT_PROPAGATE;
}
});
Signals.addSignalMethods(Message.prototype);
const MessageListSection = new Lang.Class({
Name: 'MessageListSection',
_init: function(title) {
this.actor = new St.BoxLayout({ style_class: 'message-list-section',
clip_to_allocation: true,
x_expand: true, vertical: true });
let titleBox = new St.BoxLayout({ style_class: 'message-list-section-title-box' });
this.actor.add_actor(titleBox);
this._title = new St.Button({ style_class: 'message-list-section-title',
label: title,
can_focus: true,
x_expand: true,
x_align: St.Align.START });
titleBox.add_actor(this._title);
this._title.connect('clicked', Lang.bind(this, this._onTitleClicked));
this._title.connect('key-focus-in', Lang.bind(this, this._onKeyFocusIn));
let closeIcon = new St.Icon({ icon_name: 'window-close-symbolic' });
this._closeButton = new St.Button({ style_class: 'message-list-section-close',
child: closeIcon,
accessible_name: _("Clear section"),
can_focus: true });
this._closeButton.set_x_align(Clutter.ActorAlign.END);
titleBox.add_actor(this._closeButton);
this._closeButton.connect('clicked', Lang.bind(this, this.clear));
this._list = new St.BoxLayout({ style_class: 'message-list-section-list',
vertical: true });
this.actor.add_actor(this._list);
this._list.connect('actor-added', Lang.bind(this, this._sync));
this._list.connect('actor-removed', Lang.bind(this, this._sync));
let id = Main.sessionMode.connect('updated',
Lang.bind(this, this._sync));
this.actor.connect('destroy', function() {
Main.sessionMode.disconnect(id);
});
this._messages = new Map();
this._date = new Date();
this.empty = true;
this._sync();
},
_onTitleClicked: function() {
Main.overview.hide();
Main.panel.closeCalendar();
},
_onKeyFocusIn: function(actor) {
this.emit('key-focus-in', actor);
},
get allowed() {
return true;
},
setDate: function(date) {
if (Calendar.sameDay(date, this._date))
return;
this._date = date;
this._sync();
},
addMessage: function(message, animate) {
this.addMessageAtIndex(message, -1, animate);
},
addMessageAtIndex: function(message, index, animate) {
let obj = {
container: null,
destroyId: 0,
keyFocusId: 0,
closeId: 0
};
let pivot = new Clutter.Point({ x: .5, y: .5 });
let scale = animate ? 0 : 1;
obj.container = new St.Widget({ layout_manager: new ScaleLayout(),
pivot_point: pivot,
scale_x: scale, scale_y: scale });
obj.keyFocusId = message.actor.connect('key-focus-in',
Lang.bind(this, this._onKeyFocusIn));
obj.destroyId = message.actor.connect('destroy',
Lang.bind(this, function() {
this.removeMessage(message, false);
}));
obj.closeId = message.connect('close',
Lang.bind(this, function() {
this.removeMessage(message, true);
}));
this._messages.set(message, obj);
obj.container.add_actor(message.actor);
this._list.insert_child_at_index(obj.container, index);
if (animate)
Tweener.addTween(obj.container, { scale_x: 1,
scale_y: 1,
time: MESSAGE_ANIMATION_TIME,
transition: 'easeOutQuad' });
},
moveMessage: function(message, index, animate) {
let obj = this._messages.get(message);
if (!animate) {
this._list.set_child_at_index(obj.container, index);
return;
}
let onComplete = Lang.bind(this, function() {
this._list.set_child_at_index(obj.container, index);
Tweener.addTween(obj.container, { scale_x: 1,
scale_y: 1,
time: MESSAGE_ANIMATION_TIME,
transition: 'easeOutQuad' });
});
Tweener.addTween(obj.container, { scale_x: 0,
scale_y: 0,
time: MESSAGE_ANIMATION_TIME,
transition: 'easeOutQuad',
onComplete: onComplete });
},
removeMessage: function(message, animate) {
let obj = this._messages.get(message);
message.actor.disconnect(obj.destroyId);
message.actor.disconnect(obj.keyFocusId);
message.disconnect(obj.closeId);
this._messages.delete(message);
if (animate) {
Tweener.addTween(obj.container, { scale_x: 0, scale_y: 0,
time: MESSAGE_ANIMATION_TIME,
transition: 'easeOutQuad',
onComplete: function() {
obj.container.destroy();
global.sync_pointer();
}});
} else {
obj.container.destroy();
global.sync_pointer();
}
},
clear: function() {
let messages = [...this._messages.keys()].filter(function(message) {
return message.canClose();
});
// If there are few messages, letting them all zoom out looks OK
if (messages.length < 2) {
messages.forEach(function(message) {
message.close();
});
} else {
// Otherwise we slide them out one by one, and then zoom them
// out "off-screen" in the end to smoothly shrink the parent
let delay = MESSAGE_ANIMATION_TIME / Math.max(messages.length, 5);
for (let i = 0; i < messages.length; i++) {
let message = messages[i];
let obj = this._messages.get(message);
Tweener.addTween(obj.container,
{ anchor_x: this._list.width,
opacity: 0,
time: MESSAGE_ANIMATION_TIME,
delay: i * delay,
transition: 'easeOutQuad',
onComplete: function() {
message.close();
}});
}
}
},
_canClear: function() {
for (let message of this._messages.keys())
if (message.canClose())
return true;
return false;
},
_shouldShow: function() {
return !this.empty;
},
_sync: function() {
let empty = this._list.get_n_children() == 0;
let changed = this.empty !== empty;
this.empty = empty;
if (changed)
this.emit('empty-changed');
this._closeButton.visible = this._canClear();
this.actor.visible = this.allowed && this._shouldShow();
}
});
Signals.addSignalMethods(MessageListSection.prototype);

View File

@ -259,7 +259,7 @@ const ModalDialog = new Lang.Class({
if (this.state == State.OPENED || this.state == State.OPENING)
return true;
if (!this.pushModal(timestamp))
if (!this.pushModal({ timestamp: timestamp }))
return false;
this._fadeOpen(onPrimary);
@ -318,11 +318,8 @@ const ModalDialog = new Lang.Class({
pushModal: function (timestamp) {
if (this._hasModal)
return true;
let params = { actionMode: this._actionMode };
if (timestamp)
params['timestamp'] = timestamp;
if (!Main.pushModal(this._group, params))
if (!Main.pushModal(this._group, { timestamp: timestamp,
actionMode: this._actionMode }))
return false;
this._hasModal = true;

View File

@ -1,270 +0,0 @@
const Gio = imports.gi.Gio;
const Lang = imports.lang;
const Signals = imports.signals;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
const Calendar = imports.ui.calendar;
const Main = imports.ui.main;
const MessageList = imports.ui.messageList;
const DBusIface = '<node> \
<interface name="org.freedesktop.DBus"> \
<method name="ListNames"> \
<arg type="as" direction="out" name="names" /> \
</method> \
<signal name="NameOwnerChanged"> \
<arg type="s" direction="out" name="name" /> \
<arg type="s" direction="out" name="oldOwner" /> \
<arg type="s" direction="out" name="newOwner" /> \
</signal> \
</interface> \
</node>';
const DBusProxy = Gio.DBusProxy.makeProxyWrapper(DBusIface);
const MprisIface = '<node> \
<interface name="org.mpris.MediaPlayer2"> \
<method name="Raise" /> \
<property name="CanRaise" type="b" access="read" /> \
<property name="DesktopEntry" type="s" access="read" /> \
</interface> \
</node>';
const MprisProxy = Gio.DBusProxy.makeProxyWrapper(MprisIface);
const MprisPlayerIface = '<node> \
<interface name="org.mpris.MediaPlayer2.Player"> \
<method name="PlayPause" /> \
<method name="Next" /> \
<method name="Previous" /> \
<property name="CanPlay" type="b" access="read" /> \
<property name="Metadata" type="a{sv}" access="read" /> \
<property name="PlaybackStatus" type="s" access="read" /> \
</interface> \
</node>';
const MprisPlayerProxy = Gio.DBusProxy.makeProxyWrapper(MprisPlayerIface);
const MPRIS_PLAYER_PREFIX = 'org.mpris.MediaPlayer2.';
const MediaMessage = new Lang.Class({
Name: 'MediaMessage',
Extends: MessageList.Message,
_init: function(player) {
this._player = player;
this.parent('', '');
this._icon = new St.Icon({ style_class: 'media-message-cover-icon' });
this.setIcon(this._icon);
this.addMediaControl('media-skip-backward-symbolic',
Lang.bind(this, function() {
this._player.previous();
}));
this._playPauseButton = this.addMediaControl(null,
Lang.bind(this, function() {
this._player.playPause();
}));
this.addMediaControl('media-skip-forward-symbolic',
Lang.bind(this, function() {
this._player.next();
}));
this._player.connect('changed', Lang.bind(this, this._update));
this._player.connect('closed', Lang.bind(this, this.close));
this._update();
},
_onClicked: function() {
this._player.raise();
Main.panel.closeCalendar();
},
_update: function() {
this.setTitle(this._player.trackArtists.join(', '));
this.setBody(this._player.trackTitle);
if (this._player.trackCoverUrl) {
let file = Gio.File.new_for_uri(this._player.trackCoverUrl);
this._icon.gicon = new Gio.FileIcon({ file: file });
this._icon.remove_style_class_name('fallback');
} else {
this._icon.icon_name = 'audio-x-generic-symbolic';
this._icon.add_style_class_name('fallback');
}
let isPlaying = this._player.status == 'Playing';
let iconName = isPlaying ? 'media-playback-pause-symbolic'
: 'media-playback-start-symbolic';
this._playPauseButton.child.icon_name = iconName;
}
});
const MprisPlayer = new Lang.Class({
Name: 'MprisPlayer',
_init: function(busName) {
this._mprisProxy = new MprisProxy(Gio.DBus.session, busName,
'/org/mpris/MediaPlayer2',
Lang.bind(this, this._onMprisProxyReady));
this._playerProxy = new MprisPlayerProxy(Gio.DBus.session, busName,
'/org/mpris/MediaPlayer2',
Lang.bind(this, this._onPlayerProxyReady));
this._visible = false;
this._trackArtists = [];
this._trackTitle = '';
this._trackCoverUrl = '';
},
get status() {
return this._playerProxy.PlaybackStatus;
},
get trackArtists() {
return this._trackArtists;
},
get trackTitle() {
return this._trackTitle;
},
get trackCoverUrl() {
return this._trackCoverUrl;
},
playPause: function() {
this._playerProxy.PlayPauseRemote();
},
next: function() {
this._playerProxy.NextRemote();
},
previous: function() {
this._playerProxy.PreviousRemote();
},
raise: function() {
// The remote Raise() method may run into focus stealing prevention,
// so prefer activating the app via .desktop file if possible
let app = null;
if (this._mprisProxy.DesktopEntry) {
let desktopId = this._mprisProxy.DesktopEntry + '.desktop';
app = Shell.AppSystem.get_default().lookup_app(desktopId);
}
if (app)
app.activate();
else if (this._mprisProxy.CanRaise)
this._mprisProxy.RaiseRemote();
},
_close: function() {
this._mprisProxy.disconnect(this._ownerNotifyId);
this._mprisProxy = null;
this._playerProxy.disconnect(this._propsChangedId);
this._playerProxy = null;
this.emit('closed');
},
_onMprisProxyReady: function() {
this._ownerNotifyId = this._mprisProxy.connect('notify::g-name-owner',
Lang.bind(this, function() {
if (!this._mprisProxy.g_name_owner)
this._close();
}));
},
_onPlayerProxyReady: function() {
this._propsChangedId = this._playerProxy.connect('g-properties-changed',
Lang.bind(this, this._updateState));
this._updateState();
},
_updateState: function() {
let metadata = {};
for (let prop in this._playerProxy.Metadata)
metadata[prop] = this._playerProxy.Metadata[prop].deep_unpack();
this._trackArtists = metadata['xesam:artist'] || [_("Unknown artist")];
this._trackTitle = metadata['xesam:title'] || _("Unknown title");
this._trackCoverUrl = metadata['mpris:artUrl'] || '';
this.emit('changed');
let visible = this._playerProxy.CanPlay;
if (this._visible != visible) {
this._visible = visible;
if (visible)
this.emit('show');
else
this._close();
}
}
});
Signals.addSignalMethods(MprisPlayer.prototype);
const MediaSection = new Lang.Class({
Name: 'MediaSection',
Extends: MessageList.MessageListSection,
_init: function() {
this.parent(_("Media"));
this._players = new Map();
this._proxy = new DBusProxy(Gio.DBus.session,
'org.freedesktop.DBus',
'/org/freedesktop/DBus',
Lang.bind(this, this._onProxyReady));
},
_shouldShow: function() {
return !this.empty && Calendar.isToday(this._date);
},
_addPlayer: function(busName) {
if (this._players.get(busName))
return;
let player = new MprisPlayer(busName);
player.connect('closed', Lang.bind(this,
function() {
this._players.delete(busName);
}));
player.connect('show', Lang.bind(this,
function() {
let message = new MediaMessage(player);
this.addMessage(message, true);
}));
this._players.set(busName, player);
},
_onProxyReady: function() {
this._proxy.ListNamesRemote(Lang.bind(this,
function([names]) {
names.forEach(Lang.bind(this,
function(name) {
if (!name.startsWith(MPRIS_PLAYER_PREFIX))
return;
this._addPlayer(name);
}));
}));
this._proxy.connectSignal('NameOwnerChanged',
Lang.bind(this, this._onNameOwnerChanged));
},
_onNameOwnerChanged: function(proxy, sender, [name, oldOwner, newOwner]) {
if (!name.startsWith(MPRIS_PLAYER_PREFIX))
return;
if (newOwner && !oldOwner)
this._addPlayer(name);
}
});

View File

@ -22,13 +22,11 @@ const LevelBar = new Lang.Class({
this._level = 0;
this.actor = new St.Bin({ style_class: 'level',
x_align: St.Align.START,
y_fill: true });
this._bar = new St.Widget({ style_class: 'level-bar' });
x_fill: true, y_fill: true });
this._bar = new St.DrawingArea();
this._bar.connect('repaint', Lang.bind(this, this._repaint));
this.actor.set_child(this._bar);
this.actor.connect('notify::width', () => { this.level = this.level; });
},
get level() {
@ -36,44 +34,39 @@ const LevelBar = new Lang.Class({
},
set level(value) {
this._level = Math.max(0, Math.min(value, 100));
let alloc = this.actor.get_allocation_box();
let newWidth = Math.round((alloc.x2 - alloc.x1) * this._level / 100);
if (newWidth != this._bar.width)
this._bar.width = newWidth;
}
});
const OsdWindowConstraint = new Lang.Class({
Name: 'OsdWindowConstraint',
Extends: Clutter.Constraint,
_init: function(props) {
this._minSize = 0;
this.parent(props);
let newValue = Math.max(0, Math.min(value, 100));
if (newValue == this._level)
return;
this._level = newValue;
this._bar.queue_repaint();
},
set minSize(v) {
this._minSize = v;
if (this.actor)
this.actor.queue_relayout();
},
_repaint: function() {
let cr = this._bar.get_context();
vfunc_update_allocation: function(actor, actorBox) {
// Clutter will adjust the allocation for margins,
// so add it to our minimum size
let minSize = this._minSize + actor.margin_top + actor.margin_bottom;
let [width, height] = actorBox.get_size();
let node = this.actor.get_theme_node();
let radius = node.get_border_radius(0); // assume same radius for all corners
Clutter.cairo_set_source_color(cr, node.get_foreground_color());
// Enforce a ratio of 1
let size = Math.ceil(Math.max(minSize, height));
actorBox.set_size(size, size);
let [w, h] = this._bar.get_surface_size();
w *= (this._level / 100.);
// Recenter
let [x, y] = actorBox.get_origin();
actorBox.set_origin(Math.floor(x + width / 2 - size / 2),
Math.floor(y + height / 2 - size / 2));
if (w == 0)
return;
cr.moveTo(radius, 0);
if (w >= radius)
cr.arc(w - radius, radius, radius, 1.5 * Math.PI, 2. * Math.PI);
else
cr.lineTo(w, 0);
if (w >= radius)
cr.arc(w - radius, h - radius, radius, 0, 0.5 * Math.PI);
else
cr.lineTo(w, h);
cr.arc(radius, h - radius, radius, 0.5 * Math.PI, Math.PI);
cr.arc(radius, radius, radius, Math.PI, 1.5 * Math.PI);
cr.fill();
cr.$dispose();
}
});
@ -81,6 +74,7 @@ const OsdWindow = new Lang.Class({
Name: 'OsdWindow',
_init: function(monitorIndex) {
this._popupSize = 0;
this.actor = new St.Widget({ x_expand: true,
y_expand: true,
x_align: Clutter.ActorAlign.CENTER,
@ -90,12 +84,19 @@ const OsdWindow = new Lang.Class({
let constraint = new Layout.MonitorConstraint({ index: monitorIndex });
this.actor.add_constraint(constraint);
this._boxConstraint = new OsdWindowConstraint();
this._box = new St.BoxLayout({ style_class: 'osd-window',
vertical: true });
this._box.add_constraint(this._boxConstraint);
this.actor.add_actor(this._box);
this._box.connect('style-changed', Lang.bind(this, this._onStyleChanged));
this._box.connect('notify::height', Lang.bind(this,
function() {
Meta.later_add(Meta.LaterType.BEFORE_REDRAW, Lang.bind(this,
function() {
this._box.width = this._box.height;
}));
}));
this._icon = new St.Icon();
this._box.add(this._icon, { expand: true });
@ -197,12 +198,30 @@ const OsdWindow = new Lang.Class({
let scalew = monitor.width / 640.0;
let scaleh = monitor.height / 480.0;
let scale = Math.min(scalew, scaleh);
let popupSize = 110 * Math.max(1, scale);
this._popupSize = 110 * Math.max(1, scale);
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
this._icon.icon_size = popupSize / (2 * scaleFactor);
this._icon.icon_size = this._popupSize / (2 * scaleFactor);
this._box.translation_y = monitor.height / 4;
this._boxConstraint.minSize = popupSize;
this._box.style_changed();
},
_onStyleChanged: function() {
let themeNode = this._box.get_theme_node();
let horizontalPadding = themeNode.get_horizontal_padding();
let verticalPadding = themeNode.get_vertical_padding();
let topBorder = themeNode.get_border_width(St.Side.TOP);
let bottomBorder = themeNode.get_border_width(St.Side.BOTTOM);
let leftBorder = themeNode.get_border_width(St.Side.LEFT);
let rightBorder = themeNode.get_border_width(St.Side.RIGHT);
let minWidth = this._popupSize - verticalPadding - leftBorder - rightBorder;
let minHeight = this._popupSize - horizontalPadding - topBorder - bottomBorder;
// minWidth/minHeight here are in real pixels,
// but the theme takes measures in unscaled dimensions
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
this._box.style = 'min-height: %dpx;'.format(Math.max(minWidth, minHeight) / scaleFactor);
}
});

View File

@ -107,12 +107,18 @@ const Overview = new Lang.Class({
this._overviewCreated = true;
let layout = new Clutter.BinLayout();
this._stack = new Clutter.Actor({ layout_manager: layout });
this._stack.add_constraint(new LayoutManager.MonitorConstraint({ primary: true }));
/* Translators: This is the main view to select
activities. See also note for "Activities" string. */
this._overview = new St.BoxLayout({ name: 'overview',
accessible_name: _("Overview"),
vertical: true });
this._overview.add_constraint(new LayoutManager.MonitorConstraint({ primary: true }));
reactive: true,
vertical: true,
x_expand: true,
y_expand: true });
this._overview._delegate = this;
// The main Background actors are inside global.window_group which are
@ -120,7 +126,7 @@ const Overview = new Lang.Class({
// one. Instances of this class share a single CoglTexture behind the
// scenes which allows us to show the background with different
// rendering options without duplicating the texture data.
this._backgroundGroup = new Meta.BackgroundGroup({ reactive: true });
this._backgroundGroup = new Meta.BackgroundGroup();
Main.layoutManager.overviewGroup.add_child(this._backgroundGroup);
this._bgManagers = [];
@ -143,7 +149,8 @@ const Overview = new Lang.Class({
Main.layoutManager.overviewGroup.add_child(this._coverPane);
this._coverPane.connect('event', Lang.bind(this, function (actor, event) { return Clutter.EVENT_STOP; }));
Main.layoutManager.overviewGroup.add_child(this._overview);
this._stack.add_actor(this._overview);
Main.layoutManager.overviewGroup.add_child(this._stack);
this._coverPane.hide();
@ -152,9 +159,6 @@ const Overview = new Lang.Class({
dragMotion: Lang.bind(this, this._onDragMotion)
};
Main.layoutManager.overviewGroup.connect('scroll-event',
Lang.bind(this, this._onScrollEvent));
Main.xdndHandler.connect('drag-begin', Lang.bind(this, this._onDragBegin));
Main.xdndHandler.connect('drag-end', Lang.bind(this, this._onDragEnd));
@ -251,6 +255,7 @@ const Overview = new Lang.Class({
// Add our same-line elements after the search entry
this._overview.add(this._controls.actor, { y_fill: true, expand: true });
this._controls.actor.connect('scroll-event', Lang.bind(this, this._onScrollEvent));
// TODO - recalculate everything when desktop size changes
this.dashIconSize = this._dash.iconSize;
@ -367,7 +372,7 @@ const Overview = new Lang.Class({
if (this.isDummy)
return;
this._backgroundGroup.add_action(action);
this._overview.add_action(action);
},
_getDesktopClone: function() {
@ -547,8 +552,8 @@ const Overview = new Lang.Class({
Meta.disable_unredirect_for_screen(global.screen);
this.viewSelector.show();
this._overview.opacity = 0;
Tweener.addTween(this._overview,
this._stack.opacity = 0;
Tweener.addTween(this._stack,
{ opacity: 255,
transition: 'easeOutQuad',
time: ANIMATION_TIME,
@ -613,7 +618,7 @@ const Overview = new Lang.Class({
this.viewSelector.animateFromOverview();
// Make other elements fade out.
Tweener.addTween(this._overview,
Tweener.addTween(this._stack,
{ opacity: 0,
transition: 'easeOutQuad',
time: ANIMATION_TIME,

View File

@ -421,6 +421,7 @@ const ControlsManager = new Lang.Class({
let layout = new ControlsLayout();
this.actor = new St.Widget({ layout_manager: layout,
reactive: true,
x_expand: true, y_expand: true,
clip_to_allocation: true });
this._group = new St.BoxLayout({ name: 'overview-group',

View File

@ -1,733 +0,0 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
const Lang = imports.lang;
const Meta = imports.gi.Meta;
const Shell = imports.gi.Shell;
const Clutter = imports.gi.Clutter;
const St = imports.gi.St;
const Rsvg = imports.gi.Rsvg;
const GLib = imports.gi.GLib;
const Gtk = imports.gi.Gtk;
const Gio = imports.gi.Gio;
const GDesktopEnums = imports.gi.GDesktopEnums;
const Atk = imports.gi.Atk;
const Cairo = imports.cairo;
const Signals = imports.signals;
const Main = imports.ui.main;
const PopupMenu = imports.ui.popupMenu;
const Layout = imports.ui.layout;
const ACTIVE_COLOR = "#729fcf";
const LTR = 0;
const RTL = 1;
const CW = 0;
const CCW = 1;
const UP = 0;
const DOWN = 1;
const KeybindingEntry = new Lang.Class({
Name: 'KeybindingEntry',
_init: function () {
this.actor = new St.Entry({ hint_text: _('New shortcut...'),
width: 120 });
this.actor.connect('captured-event', Lang.bind(this, this._onCapturedEvent));
this.actor.connect('destroy', Lang.bind(this, this.destroy));
},
_onCapturedEvent: function (actor, event) {
if (event.type() == Clutter.EventType.KEY_PRESS) {
if (GLib.unichar_isprint(event.get_key_unicode())) {
let str = Gtk.accelerator_name_with_keycode(null,
event.get_key_symbol(),
event.get_key_code(),
event.get_state());
this.actor.set_text(str);
this.emit('keybinding', str);
}
return Clutter.EVENT_STOP;
}
return Clutter.EVENT_PROPAGATE;
},
destroy: function () {
this.actor.destroy();
}
});
Signals.addSignalMethods(KeybindingEntry.prototype);
const ActionComboBox = new Lang.Class({
Name: 'ActionComboBox',
_init: function () {
this.actor = new St.Button({ style_class: 'button' });
this.actor.connect('clicked', Lang.bind(this, this._onButtonClicked));
this.actor.set_toggle_mode(true);
let boxLayout = new Clutter.BoxLayout({ orientation: Clutter.Orientation.HORIZONTAL,
spacing: 6 });
let box = new St.Widget({ layout_manager: boxLayout });
this.actor.set_child(box);
this._label = new St.Label({ width: 150 });
box.add_child(this._label)
let arrow = new St.Icon({ style_class: 'popup-menu-arrow',
icon_name: 'pan-down-symbolic',
accessible_role: Atk.Role.ARROW,
y_expand: true,
y_align: Clutter.ActorAlign.CENTER });
box.add_child(arrow);
/* Order matches GDesktopPadButtonAction enum */
this._actions = [_('Application defined'),
_('Show on-screen help'),
_('Switch monitor'),
_('Assign keystroke')];
this._editMenu = new PopupMenu.PopupMenu(this.actor, 0, St.Side.TOP);
this._editMenu.connect('menu-closed', Lang.bind(this, function() { this.actor.set_checked(false); }));
this._editMenu.actor.hide();
Main.uiGroup.add_actor(this._editMenu.actor);
for (let i = 0; i < this._actions.length; i++) {
let str = this._actions[i];
let action = i;
this._editMenu.addAction(str, Lang.bind(this, function() { this._onActionSelected(action) }));
}
this.setAction(GDesktopEnums.PadButtonAction.NONE);
},
_onActionSelected: function (action) {
this.setAction(action);
this.popdown();
this.emit('action', action);
},
setAction: function (action) {
this._label.set_text(this._actions[action]);
},
popup: function () {
this._editMenu.open(true);
},
popdown: function () {
this._editMenu.close(true);
},
_onButtonClicked: function () {
if (this.actor.get_checked())
this.popup();
else
this.popdown();
}
});
Signals.addSignalMethods(ActionComboBox.prototype);
const ActionEditor = new Lang.Class({
Name: 'ActionEditor',
_init: function () {
let boxLayout = new Clutter.BoxLayout({ orientation: Clutter.Orientation.HORIZONTAL,
spacing: 12 });
this.actor = new St.Widget({ layout_manager: boxLayout });
this._actionComboBox = new ActionComboBox();
this._actionComboBox.connect('action', Lang.bind(this, this._onActionSelected));
this.actor.add_actor(this._actionComboBox.actor);
this._keybindingEdit = new KeybindingEntry();
this._keybindingEdit.connect('keybinding', Lang.bind(this, this._onKeybindingEdited));
this._keybindingEdit.actor.hide();
this.actor.add_actor(this._keybindingEdit.actor);
this._doneButton = new St.Button ({ label: _('Done'),
width: 100,
style_class: 'button'});
this._doneButton.connect('clicked', Lang.bind(this, this._onEditingDone));
this.actor.add_actor(this._doneButton);
},
setSettings: function (settings) {
this._buttonSettings = settings;
this._currentAction = this._buttonSettings.get_enum('action');
this._currentKeybinding = this._buttonSettings.get_string('keybinding');
this._actionComboBox.setAction (this._currentAction);
if (this._currentAction == GDesktopEnums.PadButtonAction.KEYBINDING) {
this._keybindingEdit.actor.set_text(this._currentKeybinding);
this._keybindingEdit.actor.show();
} else {
this._keybindingEdit.actor.hide();
}
},
close: function() {
this._actionComboBox.popdown();
this.actor.hide();
},
_onKeybindingEdited: function (entry, keybinding) {
this._currentKeybinding = keybinding;
},
_onActionSelected: function (menu, action) {
this._currentAction = action;
if (action == GDesktopEnums.PadButtonAction.KEYBINDING) {
this._keybindingEdit.actor.show();
this._keybindingEdit.actor.grab_key_focus();
} else {
this._keybindingEdit.actor.hide();
}
},
_storeSettings: function () {
if (!this._buttonSettings)
return;
let keybinding = null;
if (this._currentAction == GDesktopEnums.PadButtonAction.KEYBINDING)
keybinding = this._currentKeybinding;
this._buttonSettings.set_enum('action', this._currentAction);
if (keybinding)
this._buttonSettings.set_string('keybinding', keybinding);
else
this._buttonSettings.reset('keybinding');
},
_onEditingDone: function () {
this._storeSettings();
this.close();
this.emit ('done');
}
});
Signals.addSignalMethods(ActionEditor.prototype);
const PadDiagram = new Lang.Class({
Name: 'PadDiagram',
Extends: St.DrawingArea,
_init: function (imagePath, leftHanded) {
this.parent();
let file = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/pad-osd.css');
let [success, css, etag] = file.load_contents(null);
this._css = css;
let originalHandle = Rsvg.Handle.new_from_file(imagePath);
let dimensions = originalHandle.get_dimensions();
this._imageWidth = dimensions.width;
this._imageHeight = dimensions.height;
this._activeButtons = [];
this._imagePath = imagePath;
this._handle = this._composeStyledDiagram();
this.connect('repaint', Lang.bind(this, this._repaint));
this.connect('notify::size', Lang.bind(this, this._updateScale));
this._leftHanded = leftHanded;
},
_wrappingSvgHeader: function () {
return ('<?xml version="1.0" encoding="UTF-8" standalone="no"?>' +
'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" ' +
'xmlns:xi="http://www.w3.org/2001/XInclude" ' +
'width="' + this._imageWidth + '" height="' + this._imageHeight + '"> ' +
'<style type="text/css">');
},
_wrappingSvgFooter: function () {
return ('</style>' +
'<xi:include href="' + this._imagePath + '" />' +
'</svg>');
},
_cssString: function () {
let css = this._css;
for (let i = 0; i < this._activeButtons.length; i++) {
let ch = String.fromCharCode('A'.charCodeAt() + this._activeButtons[i]);
css += ('.' + ch + ' { ' +
' stroke: ' + ACTIVE_COLOR + ' !important; ' +
' fill: ' + ACTIVE_COLOR + ' !important; ' +
'} ');
}
return css;
},
_composeStyledDiagram: function () {
let svgData = '';
if (!GLib.file_test(this._imagePath, GLib.FileTest.EXISTS))
return null;
svgData += this._wrappingSvgHeader();
svgData += this._cssString();
svgData += this._wrappingSvgFooter();
let handle = new Rsvg.Handle();
handle.set_base_uri (GLib.path_get_dirname (this._imagePath));
handle.write(svgData);
handle.close();
return handle;
},
_updateScale: function () {
let [width, height] = this.get_size();
let dimensions = this._handle.get_dimensions ();
let scaleX = width / dimensions.width;
let scaleY = height / dimensions.height;
this._scale = Math.min(scaleX, scaleY);
},
_repaint: function (area) {
if (this._handle == null)
return;
let [width, height] = area.get_surface_size();
let dimensions = this._handle.get_dimensions ();
let cr = this.get_context();
if (this._scale == null)
this._updateScale();
cr.save();
cr.translate (width/2, height/2);
cr.scale (this._scale, this._scale);
if (this._leftHanded)
cr.rotate(Math.PI);
cr.translate (-dimensions.width/2, -dimensions.height/2);
this._handle.render_cairo(cr);
cr.restore();
cr.$dispose();
},
_transformPoint: function (x, y) {
if (this._handle == null || this._scale == null)
return [x, y];
// I miss Cairo.Matrix
let [width, height] = this.get_size();
let dimensions = this._handle.get_dimensions ();
x = x * this._scale + width / 2 - dimensions.width / 2 * this._scale;
y = y * this._scale + height / 2 - dimensions.height / 2 * this._scale;;
return [Math.round(x), Math.round(y)];
},
_getItemLabelCoords: function (labelName, leaderName) {
if (this._handle == null)
return [false];
let leaderPos, leaderSize, pos;
let found, direction;
[found, pos] = this._handle.get_position_sub('#' + labelName);
if (!found)
return [false];
[found, leaderPos] = this._handle.get_position_sub('#' + leaderName);
[found, leaderSize] = this._handle.get_dimensions_sub('#' + leaderName);
if (!found)
return [false];
if (pos.x > leaderPos.x + leaderSize.width)
direction = LTR;
else
direction = RTL;
if (this._leftHanded) {
direction = 1 - direction;
pos.x = this._imageWidth - pos.x;
pos.y = this._imageHeight - pos.y;
}
let [x, y] = this._transformPoint(pos.x, pos.y)
return [true, x, y, direction];
},
getButtonLabelCoords: function (button) {
let ch = String.fromCharCode('A'.charCodeAt() + button);
let labelName = 'Label' + ch;
let leaderName = 'Leader' + ch;
return this._getItemLabelCoords(labelName, leaderName);
},
getRingLabelCoords: function (number, dir) {
let numStr = number > 0 ? number.toString() : '';
let dirStr = dir == CW ? 'CW' : 'CCW';
let labelName = 'LabelRing' + numStr + dirStr;
let leaderName = 'LeaderRing' + numStr + dirStr;
return this._getItemLabelCoords(labelName, leaderName);
},
getStripLabelCoords: function (number, dir) {
let numStr = number > 0 ? (number + 1).toString() : '';
let dirStr = dir == UP ? 'Up' : 'Down';
let labelName = 'LabelStrip' + numStr + dirStr;
let leaderName = 'LeaderStrip' + numStr + dirStr;
return this._getItemLabelCoords(labelName, leaderName);
},
_invalidateSvg: function () {
if (this._handle == null)
return;
this._handle = this._composeStyledDiagram();
this.queue_repaint();
},
activateButton: function (button) {
this._activeButtons.push(button);
this._invalidateSvg ();
},
deactivateButton: function (button) {
for (let i = 0; i < this._activeButtons.length; i++) {
if (this._activeButtons[i] == button)
this._activeButtons.splice(i, 1);
}
this._invalidateSvg ();
}
});
const PadOsd = new Lang.Class({
Name: 'PadOsd',
_init: function (padDevice, settings, imagePath, editionMode, monitorIndex) {
this.padDevice = padDevice;
this._settings = settings;
this._imagePath = imagePath;
this._editionMode = editionMode;
this._capturedEventId = global.stage.connect('captured-event', Lang.bind(this, this._onCapturedEvent));
this.actor = new Shell.GenericContainer({ style_class: 'pad-osd-window',
reactive: true,
x: 0,
y: 0,
width: global.screen_width,
height: global.screen_height });
this.actor.connect('allocate', Lang.bind(this, this._allocate));
this.actor.connect('destroy', Lang.bind(this, this.destroy));
Main.uiGroup.add_actor(this.actor);
this._monitorIndex = monitorIndex;
let constraint = new Layout.MonitorConstraint({ index: monitorIndex });
this.actor.add_constraint(constraint);
this._padDiagram = new PadDiagram(this._imagePath, settings.get_boolean('left-handed'));
this.actor.add_actor(this._padDiagram);
this._buttonBox = new St.Widget({ layout_manager: new Clutter.BinLayout(),
x_expand: true,
x_align: Clutter.ActorAlign.CENTER,
y_align: Clutter.ActorAlign.CENTER });
this._editButton = new St.Button({ label: _('Edit...'),
style_class: 'button',
can_focus: true,
x_expand: true });
this._editButton.connect('clicked', Lang.bind(this, function () { this.setEditionMode(true) }));
this._buttonBox.add_actor(this._editButton);
this.actor.add_actor(this._buttonBox);
let boxLayout = new Clutter.BoxLayout({ orientation: Clutter.Orientation.VERTICAL });
this._labelBox = new St.Widget({ layout_manager: boxLayout,
x_expand: true,
x_align: Clutter.ActorAlign.CENTER,
y_align: Clutter.ActorAlign.CENTER });
this._titleLabel = new St.Label();
this._titleLabel.clutter_text.set_markup('<span size="larger"><b>' + padDevice.get_device_name() + '</b></span>');
this._labelBox.add_actor(this._titleLabel);
this._tipLabel = new St.Label();
this._labelBox.add_actor(this._tipLabel);
this.actor.add_actor(this._labelBox);
this._actionEditor = new ActionEditor();
this._actionEditor.connect ('done', Lang.bind(this, this._endButtonActionEdition));
this.actor.add_actor(this._actionEditor.actor);
this._labels = [];
this._ringLabels = [];
this._stripLabels = [];
// FIXME: Fix num buttons.
let i = 0;
for (i = 0; i < 50; i++) {
let [found, x, y, direction] = this._padDiagram.getButtonLabelCoords(i);
if (!found)
break;
let label = this._createLabel(i, Meta.PadActionType.BUTTON);
this._labels.push(label);
}
for (i = 0; i < padDevice.get_n_rings(); i++) {
let [found, x, y, direction] = this._padDiagram.getRingLabelCoords(i, CW);
let [found2, x2, y2, direction2] = this._padDiagram.getRingLabelCoords(i, CCW);
if (!found || !found2)
break;
let label1 = this._createLabel(i, Meta.PadActionType.RING);
let label2 = this._createLabel(i, Meta.PadActionType.RING);
this._ringLabels.push([label1, label2]);
}
for (i = 0; i < padDevice.get_n_strips(); i++) {
let [found, x, y, direction] = this._padDiagram.getStripLabelCoords(i, UP);
let [found2, x2, y2, direction2] = this._padDiagram.getStripLabelCoords(i, DOWN);
if (!found || !found2)
break;
let label1 = this._createLabel(i, Meta.PadActionType.STRIP);
let label2 = this._createLabel(i, Meta.PadActionType.STRIP);
this._stripLabels.push([label1, label2]);
}
this._syncEditionMode();
},
_createLabel: function (number, type) {
let str = global.display.get_pad_action_label(this.padDevice, type, number);
let label = new St.Label({ text: str ? str : _('None') });
this.actor.add_actor(label);
return label;
},
_allocateChild: function (child, x, y, direction, box) {
let [prefHeight, natHeight] = child.get_preferred_height (-1);
let [prefWidth, natWidth] = child.get_preferred_width (natHeight);
let childBox = new Clutter.ActorBox();
natWidth = Math.min(natWidth, 250);
if (direction == LTR) {
childBox.x1 = x + box.x1;
childBox.x2 = x + box.x1 + natWidth;
} else {
childBox.x1 = x + box.x1 - natWidth;
childBox.x2 = x + box.x1;
}
childBox.y1 = y + box.y1 - natHeight / 2;
childBox.y2 = y + box.y1 + natHeight / 2;
child.allocate(childBox, 0);
},
_allocate: function (actor, box, flags) {
let [prefLabelHeight, natLabelHeight] = this._labelBox.get_preferred_height(box.x2 - box.x1);
let buttonY = Math.max((box.y2 - box.y1) * 3 / 4 + box.y1, (box.y2 - box.y1) - 100);
let childBox = new Clutter.ActorBox();
let diagramBox = new Clutter.ActorBox();
diagramBox.x1 = box.x1;
diagramBox.x2 = box.x2;
diagramBox.y1 = prefLabelHeight;
diagramBox.y2 = buttonY;
this._padDiagram.allocate(diagramBox, flags);
childBox.x1 = box.x1;
childBox.x2 = box.x2;
childBox.y1 = buttonY;
childBox.y2 = box.y2;
this._buttonBox.allocate(childBox, flags);
childBox.y1 = 0;
childBox.y2 = prefLabelHeight;
this._labelBox.allocate(childBox, flags);
for (let i = 0; i < this._labels.length; i++) {
let label = this._labels[i];
let [found, x, y, direction] = this._padDiagram.getButtonLabelCoords(i);
this._allocateChild(label, x, y, direction, diagramBox);
}
for (let i = 0; i < this._ringLabels.length; i++) {
let [label1, label2] = this._ringLabels[i];
let [found, x, y, direction] = this._padDiagram.getRingLabelCoords(i, CW);
this._allocateChild(label1, x, y, direction, diagramBox);
[found, x, y, direction] = this._padDiagram.getRingLabelCoords(i, CCW);
this._allocateChild(label2, x, y, direction, diagramBox);
}
for (let i = 0; i < this._stripLabels.length; i++) {
let [label1, label2] = this._stripLabels[i];
let [found, x, y, direction] = this._padDiagram.getStripLabelCoords(i, UP);
this._allocateChild(label1, x, y, direction, diagramBox);
[found, x, y, direction] = this._padDiagram.getStripLabelCoords(i, DOWN);
this._allocateChild(label2, x, y, direction, diagramBox);
}
if (this._editingButtonAction != null) {
let [found, x, y, direction] = this._padDiagram.getButtonLabelCoords(this._editingButtonAction);
this._allocateChild(this._actionEditor.actor, x, y, direction, diagramBox);
}
},
_onCapturedEvent : function (actor, event) {
if (event.type() == Clutter.EventType.PAD_BUTTON_PRESS &&
event.get_source_device() == this.padDevice) {
this._padDiagram.activateButton(event.get_button());
if (this._editionMode)
this._startButtonActionEdition(event.get_button());
return Clutter.EVENT_STOP;
} else if (event.type() == Clutter.EventType.PAD_BUTTON_RELEASE &&
event.get_source_device() == this.padDevice) {
this._padDiagram.deactivateButton(event.get_button());
return Clutter.EVENT_STOP;
} else if (event.type() == Clutter.EventType.KEY_PRESS &&
(!this._editionMode || event.get_key_symbol() == Clutter.Escape)) {
if (this._editingButtonAction != null)
this._endButtonActionEdition();
else
this.destroy();
return Clutter.EVENT_STOP;
}
return Clutter.EVENT_PROPAGATE;
},
_syncEditionMode: function () {
this._editButton.set_reactive(!this._editionMode);
this._editButton.save_easing_state();
this._editButton.set_easing_duration(200);
this._editButton.set_opacity(this._editionMode ? 128 : 255);
this._editButton.restore_easing_state();
let title;
if (this._editionMode) {
title = _('Press a button to configure');
this._tipLabel.set_text (_("Press Esc to exit"));
} else {
title = this.padDevice.get_device_name();
this._tipLabel.set_text (_("Press any key to exit"));
}
this._titleLabel.clutter_text.set_markup('<span size="larger"><b>' + title + '</b></span>');
},
_endButtonActionEdition: function () {
this._actionEditor.close();
if (this._editingButtonAction != null) {
// Update and show the label
let str = global.display.get_pad_action_label(this.padDevice,
Meta.PadActionType.BUTTON,
this._editingButtonAction);
this._labels[this._editingButtonAction].set_text(str ? str : _('None'));
this._labels[this._editingButtonAction].show();
this._editingButtonAction = null;
}
this._editedButtonSettings = null;
},
_startButtonActionEdition: function (button) {
if (this._editingButtonAction == button)
return;
this._endButtonActionEdition();
this._editingButtonAction = button;
this._labels[this._editingButtonAction].hide();
this._actionEditor.actor.show();
this.actor.queue_relayout();
let ch = String.fromCharCode('A'.charCodeAt() + button);
let settingsPath = this._settings.path + "button" + ch + '/';
this._editedButtonSettings = Gio.Settings.new_with_path('org.gnome.desktop.peripherals.tablet.pad-button',
settingsPath);
this._actionEditor.setSettings (this._editedButtonSettings);
},
setEditionMode: function (editionMode) {
if (this._editionMode == editionMode)
return;
this._editionMode = editionMode;
this._syncEditionMode();
},
destroy: function () {
this._actionEditor.close();
if (this._capturedEventId != 0) {
global.stage.disconnect(this._capturedEventId);
this._capturedEventId = 0;
}
if (this.actor) {
let actor = this.actor;
this.actor = null;
actor.destroy();
this.emit('closed');
}
}
});
Signals.addSignalMethods(PadOsd.prototype);
const PadOsdIface = '<node> \
<interface name="org.gnome.Shell.Wacom.PadOsd"> \
<method name="Show"> \
<arg name="device_node" direction="in" type="o"/> \
<arg name="edition_mode" direction="in" type="b"/> \
</method> \
</interface> \
</node>';
const PadOsdService = new Lang.Class({
Name: 'PadOsdService',
_init: function() {
this._dbusImpl = Gio.DBusExportedObject.wrapJSObject(PadOsdIface, this);
this._dbusImpl.export(Gio.DBus.session, '/org/gnome/Shell/Wacom');
Gio.DBus.session.own_name('org.gnome.Shell.Wacom.PadOsd', Gio.BusNameOwnerFlags.REPLACE, null, null);
},
ShowAsync: function(params, invocation) {
let [deviceNode, editionMode] = params;
let deviceManager = Clutter.DeviceManager.get_default();
let devices = deviceManager.list_devices();
let padDevice = null;
devices.forEach(Lang.bind(this, function(device) {
if (deviceNode == device.get_device_node())
padDevice = device;
}));
if (padDevice == null ||
padDevice.get_device_type() != Clutter.InputDeviceType.PAD_DEVICE) {
invocation.return_error_literal(Gio.IOErrorEnum,
Gio.IOErrorEnum.CANCELLED,
"Invalid params");
return;
}
global.display.request_pad_osd(padDevice, editionMode);
invocation.return_value(null);
}
});
Signals.addSignalMethods(PadOsdService.prototype);

View File

@ -459,8 +459,7 @@ const ActivitiesButton = new Lang.Class({
if (event.type() == Clutter.EventType.TOUCH_END ||
event.type() == Clutter.EventType.BUTTON_RELEASE)
if (Main.overview.shouldToggleByCornerOrButton())
Main.overview.toggle();
Main.overview.toggle();
return Clutter.EVENT_PROPAGATE;
},
@ -468,8 +467,7 @@ const ActivitiesButton = new Lang.Class({
_onKeyRelease: function(actor, event) {
let symbol = event.get_key_symbol();
if (symbol == Clutter.KEY_Return || symbol == Clutter.KEY_space) {
if (Main.overview.shouldToggleByCornerOrButton())
Main.overview.toggle();
Main.overview.toggle();
}
return Clutter.EVENT_PROPAGATE;
},
@ -654,39 +652,6 @@ const PanelCorner = new Lang.Class({
}
});
const AggregateLayout = new Lang.Class({
Name: 'AggregateLayout',
Extends: Clutter.BoxLayout,
_init: function(params) {
if (!params)
params = {};
params['orientation'] = Clutter.Orientation.VERTICAL;
this.parent(params);
this._sizeChildren = [];
},
addSizeChild: function(actor) {
this._sizeChildren.push(actor);
this.layout_changed();
},
vfunc_get_preferred_width: function(container, forHeight) {
let themeNode = container.get_theme_node();
let minWidth = themeNode.get_min_width();
let natWidth = minWidth;
for (let i = 0; i < this._sizeChildren.length; i++) {
let child = this._sizeChildren[i];
let [childMin, childNat] = child.get_preferred_width(forHeight);
minWidth = Math.max(minWidth, childMin);
natWidth = Math.max(minWidth, childNat);
}
return [minWidth, natWidth];
}
});
const AggregateMenu = new Lang.Class({
Name: 'AggregateMenu',
Extends: PanelMenu.Button,
@ -695,9 +660,6 @@ const AggregateMenu = new Lang.Class({
this.parent(0.0, C_("System menu in the top bar", "System"), false);
this.menu.actor.add_style_class_name('aggregate-menu');
let menuLayout = new AggregateLayout();
this.menu.box.set_layout_manager(menuLayout);
this._indicators = new St.BoxLayout({ style_class: 'panel-status-indicators-box' });
this.actor.add_child(this._indicators);
@ -746,11 +708,6 @@ const AggregateMenu = new Lang.Class({
this.menu.addMenuItem(this._rfkill.menu);
this.menu.addMenuItem(this._power.menu);
this.menu.addMenuItem(this._system.menu);
menuLayout.addSizeChild(this._location.menu.actor);
menuLayout.addSizeChild(this._rfkill.menu.actor);
menuLayout.addSizeChild(this._power.menu.actor);
menuLayout.addSizeChild(this._system.menu.actor);
},
});

View File

@ -1146,16 +1146,6 @@ const PopupSubMenuMenuItem = new Lang.Class({
this.actor.remove_style_pseudo_class ('active');
this._setOpenState(!this._getOpenState());
return Clutter.EVENT_PROPAGATE;
},
_onTouchEvent: function(actor, event) {
if (event.type() == Clutter.EventType.TOUCH_END) {
// Since we override the parent, we need to manage what the parent does
// with the active style class
this.actor.remove_style_pseudo_class ('active');
this._setOpenState(!this._getOpenState());
}
return Clutter.EVENT_PROPAGATE;
}
});

View File

@ -61,7 +61,6 @@ const RunDialog = new Lang.Class({
// rt is short for "reload theme"
'rt': Lang.bind(this, function() {
Main.reloadThemeResource();
Main.loadTheme();
})
};

View File

@ -349,6 +349,7 @@ const Arrow = new Lang.Class({
_init: function(params) {
this.parent(params);
this.x_fill = this.y_fill = true;
this.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
this._drawingArea = new St.DrawingArea();
this._drawingArea.connect('repaint', Lang.bind(this, this._drawArrow));
@ -376,22 +377,6 @@ const Arrow = new Lang.Class({
cr.$dispose();
},
vfunc_get_paint_volume: function(volume) {
if (!this.parent(volume))
return false;
if (!this._shadow)
return true;
let shadow_box = new Clutter.ActorBox();
this._shadow.get_box(this._drawingArea.get_allocation_box(), shadow_box);
volume.set_width(Math.max(shadow_box.x2 - shadow_box.x1, volume.get_width()));
volume.set_height(Math.max(shadow_box.y2 - shadow_box.y1, volume.get_height()));
return true;
},
vfunc_style_changed: function() {
let node = this.get_theme_node();
this._shadow = node.get_shadow('-arrow-shadow');
@ -399,8 +384,6 @@ const Arrow = new Lang.Class({
this._shadowHelper = St.ShadowHelper.new(this._shadow);
else
this._shadowHelper = null;
this.parent();
},
vfunc_paint: function() {
@ -576,9 +559,6 @@ const ScreenShield = new Lang.Class({
if (prevIsActive != this._isActive)
this.emit('active-changed');
if (this._loginSession)
this._loginSession.SetLockedHintRemote(active);
this._syncInhibitor();
},
@ -728,7 +708,7 @@ const ScreenShield = new Lang.Class({
let unitaryDelay = ARROW_ANIMATION_TIME / (arrows.length + 1);
let maxOpacity = 255 * ARROW_ANIMATION_PEAK_OPACITY;
for (let i = 0; i < arrows.length; i++) {
arrows[i].opacity = 0;
arrows.opacity = 0;
Tweener.addTween(arrows[i],
{ opacity: 0,
delay: unitaryDelay * (N_ARROWS - (i + 1)),

View File

@ -137,10 +137,6 @@ const Slider = new Lang.Class({
this._motionId = this.actor.connect('motion-event', Lang.bind(this, this._motionEvent));
}
// We need to emit 'drag-begin' before moving the handle to make
// sure that no 'value-changed' signal is emitted before this one.
this.emit('drag-begin');
let absX, absY;
[absX, absY] = event.get_coords();
this._moveHandle(absX, absY);
@ -228,7 +224,6 @@ const Slider = new Lang.Class({
let delta = key == Clutter.KEY_Right ? 0.1 : -0.1;
this._value = Math.max(0, Math.min(this._value + delta, 1));
this.actor.queue_repaint();
this.emit('drag-begin');
this.emit('value-changed', this._value);
this.emit('drag-end');
return Clutter.EVENT_STOP;

View File

@ -1,8 +1,11 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
const Clutter = imports.gi.Clutter;
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const GnomeBluetooth = imports.gi.GnomeBluetooth;
const Lang = imports.lang;
const St = imports.gi.St;
const Main = imports.ui.main;
const PanelMenu = imports.ui.panelMenu;
@ -20,8 +23,6 @@ const RfkillManagerInterface = '<node> \
const RfkillManagerProxy = Gio.DBusProxy.makeProxyWrapper(RfkillManagerInterface);
const HAD_BLUETOOTH_DEVICES_SETUP = 'had-bluetooth-devices-setup';
const Indicator = new Lang.Class({
Name: 'BTIndicator',
Extends: PanelMenu.SystemIndicator,
@ -31,7 +32,6 @@ const Indicator = new Lang.Class({
this._indicator = this._addIndicator();
this._indicator.icon_name = 'bluetooth-active-symbolic';
this._hadSetupDevices = global.settings.get_boolean(HAD_BLUETOOTH_DEVICES_SETUP);
this._proxy = new RfkillManagerProxy(Gio.DBus.session, BUS_NAME, OBJECT_PATH,
Lang.bind(this, function(proxy, error) {
@ -44,15 +44,13 @@ const Indicator = new Lang.Class({
}));
this._proxy.connect('g-properties-changed', Lang.bind(this, this._sync));
this._item = new PopupMenu.PopupSubMenuMenuItem(_("Bluetooth"), true);
// The Bluetooth menu only appears when Bluetooth is in use,
// so just statically build it with a "Turn Off" menu item.
this._item = new PopupMenu.PopupSubMenuMenuItem('', true);
this._item.icon.icon_name = 'bluetooth-active-symbolic';
this._toggleItem = new PopupMenu.PopupMenuItem('');
this._toggleItem.connect('activate', Lang.bind(this, function() {
this._proxy.BluetoothAirplaneMode = !this._proxy.BluetoothAirplaneMode;
this._item.menu.addAction(_("Turn Off"), Lang.bind(this, function() {
this._proxy.BluetoothAirplaneMode = true;
}));
this._item.menu.addMenuItem(this._toggleItem);
this._item.menu.addSettingsAction(_("Bluetooth Settings"), 'gnome-bluetooth-panel.desktop');
this.menu.addMenuItem(this._item);
@ -70,75 +68,42 @@ const Indicator = new Lang.Class({
while (ret) {
let isDefault = this._model.get_value(iter,
GnomeBluetooth.Column.DEFAULT);
let isPowered = this._model.get_value(iter,
GnomeBluetooth.Column.POWERED);
if (isDefault && isPowered)
if (isDefault)
return iter;
ret = this._model.iter_next(iter);
}
return null;
},
// nDevices is the number of devices setup for the current default
// adapter if one exists and is powered. If unpowered or unavailable,
// nDevice is "1" if it had setup devices associated to it the last
// time it was seen, and "-1" if not.
//
// nConnectedDevices is the number of devices connected to the default
// adapter if one exists and is powered, or -1 if it's not available.
_getNDevices: function() {
_getNConnectedDevices: function() {
let adapter = this._getDefaultAdapter();
if (!adapter)
return [ this._hadSetupDevices ? 1 : -1, -1 ];
return 0;
let nConnectedDevices = 0;
let nDevices = 0;
let [ret, iter] = this._model.iter_children(adapter);
while (ret) {
let isConnected = this._model.get_value(iter,
GnomeBluetooth.Column.CONNECTED);
if (isConnected)
nConnectedDevices++;
let isPaired = this._model.get_value(iter,
GnomeBluetooth.Column.PAIRED);
let isTrusted = this._model.get_value(iter,
GnomeBluetooth.Column.TRUSTED);
if (isPaired || isTrusted)
nDevices++;
ret = this._model.iter_next(iter);
}
if (this._hadSetupDevices != (nDevices > 0)) {
this._hadSetupDevices = !this._hadSetupDevices;
global.settings.set_boolean(HAD_BLUETOOTH_DEVICES_SETUP, this._hadSetupDevices);
}
return [ nDevices, nConnectedDevices];
return nDevices;
},
_sync: function() {
let [ nDevices, nConnectedDevices ] = this._getNDevices();
let nDevices = this._getNConnectedDevices();
let sensitive = !Main.sessionMode.isLocked && !Main.sessionMode.isGreeter;
this.menu.setSensitive(sensitive);
this._indicator.visible = nConnectedDevices > 0;
this._indicator.visible = nDevices > 0;
this._item.actor.visible = this._proxy.BluetoothHasAirplaneMode && !this._proxy.BluetoothAirplaneMode;
// Remember if there were setup devices and show the menu
// if we've seen setup devices and we're not hard blocked
if (nDevices > 0)
this._item.actor.visible = !this._proxy.BluetoothHardwareAirplaneMode;
else
this._item.actor.visible = this._proxy.BluetoothHasAirplaneMode && !this._proxy.BluetoothAirplaneMode;
if (nConnectedDevices > 0)
/* Translators: this is the number of connected bluetooth devices */
this._item.label.text = ngettext("%d Connected", "%d Connected", nConnectedDevices).format(nConnectedDevices);
else if (nConnectedDevices == -1)
this._item.label.text = _("Off");
this._item.label.text = ngettext("%d Connected", "%d Connected", nDevices).format(nDevices);
else
this._item.label.text = _("Not In Use");
this._toggleItem.label.text = this._proxy.BluetoothAirplaneMode ? _("Turn On") : _("Turn Off");
},
});

View File

@ -61,8 +61,8 @@ const InputSource = new Lang.Class({
this.emit('changed');
},
activate: function(interactive) {
this.emit('activate', !!interactive);
activate: function() {
this.emit('activate');
},
_getXkbId: function() {
@ -109,7 +109,7 @@ const InputSourcePopup = new Lang.Class({
_finish : function() {
this.parent();
this._items[this._selectedIndex].activate(true);
this._items[this._selectedIndex].activate();
},
});
@ -159,14 +159,6 @@ const InputSourceSettings = new Lang.Class({
return [];
},
get mruSources() {
return [];
},
set mruSources(sourcesList) {
// do nothing
},
get keyboardOptions() {
return [];
},
@ -259,7 +251,6 @@ const InputSourceSessionSettings = new Lang.Class({
_DESKTOP_INPUT_SOURCES_SCHEMA: 'org.gnome.desktop.input-sources',
_KEY_INPUT_SOURCES: 'sources',
_KEY_MRU_SOURCES: 'mru-sources',
_KEY_KEYBOARD_OPTIONS: 'xkb-options',
_KEY_PER_WINDOW: 'per-window',
@ -270,9 +261,9 @@ const InputSourceSessionSettings = new Lang.Class({
this._settings.connect('changed::' + this._KEY_PER_WINDOW, Lang.bind(this, this._emitPerWindowChanged));
},
_getSourcesList: function(key) {
get inputSources() {
let sourcesList = [];
let sources = this._settings.get_value(key);
let sources = this._settings.get_value(this._KEY_INPUT_SOURCES);
let nSources = sources.n_children();
for (let i = 0; i < nSources; i++) {
@ -282,19 +273,6 @@ const InputSourceSessionSettings = new Lang.Class({
return sourcesList;
},
get inputSources() {
return this._getSourcesList(this._KEY_INPUT_SOURCES);
},
get mruSources() {
return this._getSourcesList(this._KEY_MRU_SOURCES);
},
set mruSources(sourcesList) {
let sources = GLib.Variant.new('a(ss)', sourcesList);
this._settings.set_value(this._KEY_MRU_SOURCES, sources);
},
get keyboardOptions() {
return this._settings.get_strv(this._KEY_KEYBOARD_OPTIONS);
},
@ -394,7 +372,7 @@ const InputSourceManager = new Lang.Class({
while (!(is = this._inputSources[nextIndex]))
nextIndex += 1;
is.activate(true);
is.activate();
return true;
},
@ -422,25 +400,6 @@ const InputSourceManager = new Lang.Class({
this._keyboardManager.reapply();
},
_updateMruSettings: function() {
// If IBus is not ready we don't have a full picture of all
// the available sources, so don't update the setting
if (!this._ibusReady)
return;
// If IBus is temporarily disabled, don't update the setting
if (this._disableIBus)
return;
let sourcesList = [];
for (let i = 0; i < this._mruSources.length; ++i) {
let source = this._mruSources[i];
sourcesList.push([source.type, source.id]);
}
this._settings.mruSources = sourcesList;
},
_currentInputSourceChanged: function(newSource) {
let oldSource;
[oldSource, this._currentSource] = [this._currentSource, newSource];
@ -457,7 +416,7 @@ const InputSourceManager = new Lang.Class({
this._changePerWindowSource();
},
_activateInputSource: function(is, interactive) {
_activateInputSource: function(is) {
KeyboardManager.holdKeyboard();
this._keyboardManager.apply(is.xkbId);
@ -475,54 +434,6 @@ const InputSourceManager = new Lang.Class({
this._ibusManager.setEngine(engine, KeyboardManager.releaseKeyboard);
this._currentInputSourceChanged(is);
if (interactive)
this._updateMruSettings();
},
_updateMruSources: function() {
let sourcesList = [];
for (let i in this._inputSources)
sourcesList.push(this._inputSources[i]);
this._keyboardManager.setUserLayouts(sourcesList.map(function(x) { return x.xkbId; }));
if (!this._disableIBus && this._mruSourcesBackup) {
this._mruSources = this._mruSourcesBackup;
this._mruSourcesBackup = null;
}
// Initialize from settings when we have no MRU sources list
if (this._mruSources.length == 0) {
let mruSettings = this._settings.mruSources;
for (let i = 0; i < mruSettings.length; i++) {
let mruSettingSource = mruSettings[i];
let mruSource = null;
for (let j = 0; j < sourcesList.length; j++) {
let source = sourcesList[j];
if (source.type == mruSettingSource.type &&
source.id == mruSettingSource.id) {
mruSource = source;
break;
}
}
if (mruSource)
this._mruSources.push(mruSource);
}
}
let mruSources = [];
for (let i = 0; i < this._mruSources.length; i++) {
for (let j = 0; j < sourcesList.length; j++)
if (this._mruSources[i].type == sourcesList[j].type &&
this._mruSources[i].id == sourcesList[j].id) {
mruSources = mruSources.concat(sourcesList.splice(j, 1));
break;
}
}
this._mruSources = mruSources.concat(sourcesList);
},
_inputSourcesChanged: function() {
@ -599,10 +510,30 @@ const InputSourceManager = new Lang.Class({
this.emit('sources-changed');
this._updateMruSources();
let sourcesList = [];
for (let i in this._inputSources)
sourcesList.push(this._inputSources[i]);
this._keyboardManager.setUserLayouts(sourcesList.map(function(x) { return x.xkbId; }));
if (!this._disableIBus && this._mruSourcesBackup) {
this._mruSources = this._mruSourcesBackup;
this._mruSourcesBackup = null;
}
let mruSources = [];
for (let i = 0; i < this._mruSources.length; i++) {
for (let j = 0; j < sourcesList.length; j++)
if (this._mruSources[i].type == sourcesList[j].type &&
this._mruSources[i].id == sourcesList[j].id) {
mruSources = mruSources.concat(sourcesList.splice(j, 1));
break;
}
}
this._mruSources = mruSources.concat(sourcesList);
if (this._mruSources.length > 0)
this._mruSources[0].activate(false);
this._mruSources[0].activate();
// All ibus engines are preloaded here to reduce the launching time
// when users switch the input sources.
@ -711,7 +642,7 @@ const InputSourceManager = new Lang.Class({
}
if (window._currentSource)
window._currentSource.activate(false);
window._currentSource.activate();
},
_sourcesPerWindowChanged: function() {
@ -832,10 +763,7 @@ const InputSourceIndicator = new Lang.Class({
let is = this._inputSourceManager.inputSources[i];
let menuItem = new LayoutMenuItem(is.displayName, is.shortName);
menuItem.connect('activate', function() {
is.activate(true);
});
menuItem.connect('activate', Lang.bind(is, is.activate));
let indicatorLabel = new St.Label({ text: is.shortName,
visible: false });

View File

@ -1,6 +1,5 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
const Clutter = imports.gi.Clutter;
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const Lang = imports.lang;
@ -8,18 +7,12 @@ const Lang = imports.lang;
const Main = imports.ui.main;
const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
const ModalDialog = imports.ui.modalDialog;
const Shell = imports.gi.Shell;
const Signals = imports.signals;
const St = imports.gi.St;
const LOCATION_SCHEMA = 'org.gnome.system.location';
const MAX_ACCURACY_LEVEL = 'max-accuracy-level';
const ENABLED = 'enabled';
const APP_PERMISSIONS_TABLE = 'gnome';
const APP_PERMISSIONS_ID = 'geolocation';
const GeoclueAccuracyLevel = {
NONE: 0,
COUNTRY: 1,
@ -29,15 +22,6 @@ const GeoclueAccuracyLevel = {
EXACT: 8
};
function accuracyLevelToString(accuracyLevel) {
for (let key in GeoclueAccuracyLevel) {
if (GeoclueAccuracyLevel[key] == accuracyLevel)
return key;
}
return 'NONE';
}
var GeoclueIface = '<node> \
<interface name="org.freedesktop.GeoClue2.Manager"> \
<property name="InUse" type="b" access="read"/> \
@ -62,26 +46,6 @@ var AgentIface = '<node> \
</interface> \
</node>';
var PermissionStoreIface = '<node> \
<interface name="org.freedesktop.impl.portal.PermissionStore"> \
<method name="Lookup"> \
<arg name="table" type="s" direction="in"/> \
<arg name="id" type="s" direction="in"/> \
<arg name="permissions" type="a{sas}" direction="out"/> \
<arg name="data" type="v" direction="out"/> \
</method> \
<method name="Set"> \
<arg name="table" type="s" direction="in"/> \
<arg name="create" type="b" direction="in"/> \
<arg name="id" type="s" direction="in"/> \
<arg name="app_permissions" type="a{sas}" direction="in"/> \
<arg name="data" type="v" direction="in"/> \
</method> \
</interface> \
</node>';
const PermissionStore = Gio.DBusProxy.makeProxyWrapper(PermissionStoreIface);
const Indicator = new Lang.Class({
Name: 'LocationIndicator',
Extends: PanelMenu.SystemIndicator,
@ -119,66 +83,64 @@ const Indicator = new Lang.Class({
this._onSessionUpdated();
this._onMaxAccuracyLevelChanged();
this._connectToGeoclue();
this._connectToPermissionStore();
},
get MaxAccuracyLevel() {
return this._getMaxAccuracyLevel();
},
AuthorizeAppAsync: function(params, invocation) {
let [desktopId, reqAccuracyLevel] = params;
// We (and geoclue) have currently no way to reliably identifying apps so
// for now, lets just authorize all apps as long as they provide a valid
// desktop ID. We also ensure they don't get more accuracy than global max.
AuthorizeApp: function(desktop_id, reqAccuracyLevel) {
var appSystem = Shell.AppSystem.get_default();
var app = appSystem.lookup_app(desktop_id + ".desktop");
if (app == null) {
return [false, 0];
}
let authorizer = new AppAuthorizer(desktopId,
reqAccuracyLevel,
this._permStoreProxy,
this._getMaxAccuracyLevel());
authorizer.authorize(Lang.bind(this, function(accuracyLevel) {
let ret = (accuracyLevel != GeoclueAccuracyLevel.NONE);
invocation.return_value(GLib.Variant.new('(bu)',
[ret, accuracyLevel]));
}));
let allowedAccuracyLevel = clamp(reqAccuracyLevel, 0, this._getMaxAccuracyLevel());
return [true, allowedAccuracyLevel];
},
_syncIndicator: function() {
if (this._managerProxy == null) {
if (this._proxy == null) {
this._indicator.visible = false;
this._item.actor.visible = false;
return;
}
this._indicator.visible = this._managerProxy.InUse;
this._indicator.visible = this._proxy.InUse;
this._item.actor.visible = this._indicator.visible;
this._updateMenuLabels();
},
_connectToGeoclue: function() {
if (this._managerProxy != null || this._connecting)
if (this._proxy != null || this._connecting)
return false;
this._connecting = true;
new GeoclueManager(Gio.DBus.system,
'org.freedesktop.GeoClue2',
'/org/freedesktop/GeoClue2/Manager',
Lang.bind(this, this._onManagerProxyReady));
Lang.bind(this, this._onProxyReady));
return true;
},
_onManagerProxyReady: function(proxy, error) {
_onProxyReady: function(proxy, error) {
if (error != null) {
log(error.message);
this._connecting = false;
return;
}
this._managerProxy = proxy;
this._propertiesChangedId = this._managerProxy.connect('g-properties-changed',
this._proxy = proxy;
this._propertiesChangedId = this._proxy.connect('g-properties-changed',
Lang.bind(this, this._onGeocluePropsChanged));
this._syncIndicator();
this._managerProxy.AddAgentRemote('gnome-shell', Lang.bind(this, this._onAgentRegistered));
this._proxy.AddAgentRemote('gnome-shell', Lang.bind(this, this._onAgentRegistered));
},
_onAgentRegistered: function(result, error) {
@ -191,10 +153,10 @@ const Indicator = new Lang.Class({
_onGeoclueVanished: function() {
if (this._propertiesChangedId) {
this._managerProxy.disconnect(this._propertiesChangedId);
this._proxy.disconnect(this._propertiesChangedId);
this._propertiesChangedId = 0;
}
this._managerProxy = null;
this._proxy = null;
this._syncIndicator();
},
@ -249,206 +211,9 @@ const Indicator = new Lang.Class({
let unpacked = properties.deep_unpack();
if ("InUse" in unpacked)
this._syncIndicator();
},
_connectToPermissionStore: function() {
this._permStoreProxy = null;
new PermissionStore(Gio.DBus.session,
'org.freedesktop.impl.portal.PermissionStore',
'/org/freedesktop/impl/portal/PermissionStore',
Lang.bind(this, this._onPermStoreProxyReady));
},
_onPermStoreProxyReady: function(proxy, error) {
if (error != null) {
log(error.message);
return;
}
this._permStoreProxy = proxy;
},
}
});
function clamp(value, min, max) {
return Math.max(min, Math.min(max, value));
}
const AppAuthorizer = new Lang.Class({
Name: 'LocationAppAuthorizer',
_init: function(desktopId,
reqAccuracyLevel,
permStoreProxy,
maxAccuracyLevel) {
this.desktopId = desktopId;
this.reqAccuracyLevel = reqAccuracyLevel;
this._permStoreProxy = permStoreProxy;
this._maxAccuracyLevel = maxAccuracyLevel;
this._accuracyLevel = GeoclueAccuracyLevel.NONE;
},
authorize: function(onAuthDone) {
this._onAuthDone = onAuthDone;
let appSystem = Shell.AppSystem.get_default();
this._app = appSystem.lookup_app(this.desktopId + ".desktop");
if (this._app == null || this._permStoreProxy == null) {
this._completeAuth();
return;
}
this._permStoreProxy.LookupRemote(APP_PERMISSIONS_TABLE,
APP_PERMISSIONS_ID,
Lang.bind(this,
this._onPermLookupDone));
},
_onPermLookupDone: function(result, error) {
if (error != null) {
if (error.domain == Gio.DBusError) {
// Likely no xdg-app installed, just authorize the app
this._accuracyLevel = this.reqAccuracyLevel;
this._permStoreProxy = null;
this._completeAuth();
} else {
// Currently xdg-app throws an error if we lookup for
// unknown ID (which would be the case first time this code
// runs) so we continue with user authorization as normal
// and ID is added to the store if user says "yes".
log(error.message);
this._permissions = {};
this._userAuthorizeApp();
}
return;
}
[this._permissions] = result;
let permission = this._permissions[this.desktopId];
if (permission == null) {
this._userAuthorizeApp();
} else {
let [levelStr] = permission || ['NONE'];
this._accuracyLevel = GeoclueAccuracyLevel[levelStr] ||
GeoclueAccuracyLevel.NONE;
this._completeAuth();
}
},
_userAuthorizeApp: function() {
let name = this._app.get_name();
let appInfo = this._app.get_app_info();
let reason = appInfo.get_string("X-Geoclue-Reason");
this._showAppAuthDialog(name, reason);
},
_showAppAuthDialog: function(name, reason) {
this._dialog = new GeolocationDialog(name,
reason,
this.reqAccuracyLevel);
let responseId = this._dialog.connect('response', Lang.bind(this,
function(dialog, level) {
this._dialog.disconnect(responseId);
this._accuracyLevel = level;
this._completeAuth();
}));
this._dialog.open();
},
_completeAuth: function() {
if (this._accuracyLevel != GeoclueAccuracyLevel.NONE) {
this._accuracyLevel = clamp(this._accuracyLevel,
0,
this._maxAccuracyLevel);
}
this._saveToPermissionStore();
this._onAuthDone(this._accuracyLevel);
},
_saveToPermissionStore: function() {
if (this._permStoreProxy == null)
return;
let levelStr = accuracyLevelToString(this._accuracyLevel);
let dateStr = Math.round(Date.now() / 1000).toString();
this._permissions[this.desktopId] = [levelStr, dateStr];
let data = GLib.Variant.new('av', {});
this._permStoreProxy.SetRemote(APP_PERMISSIONS_TABLE,
true,
APP_PERMISSIONS_ID,
this._permissions,
data,
function (result, error) {
if (error != null)
log(error.message);
});
},
});
const GeolocationDialog = new Lang.Class({
Name: 'GeolocationDialog',
Extends: ModalDialog.ModalDialog,
_init: function(name, reason, reqAccuracyLevel) {
this.parent({ styleClass: 'geolocation-dialog' });
this.reqAccuracyLevel = reqAccuracyLevel;
let mainContentBox = new St.BoxLayout({ style_class: 'geolocation-dialog-main-layout' });
this.contentLayout.add_actor(mainContentBox);
let icon = new St.Icon({ style_class: 'geolocation-dialog-icon',
icon_name: 'find-location-symbolic',
y_align: Clutter.ActorAlign.START });
mainContentBox.add_actor(icon);
let messageBox = new St.BoxLayout({ style_class: 'geolocation-dialog-content',
vertical: true });
mainContentBox.add_actor(messageBox);
this._title = new St.Label({ style_class: 'geolocation-dialog-title headline' });
messageBox.add_actor(this._title);
this._reason = new St.Label({ style_class: 'geolocation-dialog-reason' });
messageBox.add_actor(this._reason);
this._privacyNote = new St.Label();
messageBox.add_actor(this._privacyNote);
let button = this.addButton({ label: _("Deny Access"),
action: Lang.bind(this, this._onDenyClicked),
key: Clutter.KEY_Escape });
this.addButton({ label: _("Grant Access"),
action: Lang.bind(this, this._onGrantClicked) });
this.setInitialKeyFocus(button);
/* Translators: %s is an application name */
this._title.text = _("Give %s access to your location?").format(name);
this._privacyNote.text = _("Location access can be changed at any time from the privacy settings.");
if (reason)
this._reason.text = reason;
this._reason.visible = (reason != null);
},
_onGrantClicked: function() {
this.emit('response', this.reqAccuracyLevel);
this.close();
},
_onDenyClicked: function() {
this.emit('response', GeoclueAccuracyLevel.NONE);
this.close();
}
});
Signals.addSignalMethods(GeolocationDialog.prototype);

View File

@ -621,7 +621,7 @@ const NMDeviceBluetooth = new Lang.Class({
_init: function(client, device, settings) {
this.parent(client, device, settings);
this.item.menu.addMenuItem(createSettingsAction(_("Bluetooth Settings"), device));
this.item.menu.addMenuItem(createSettingsAction(_("Mobile Broadband Settings"), device));
},
_getDescription: function() {
@ -629,7 +629,7 @@ const NMDeviceBluetooth = new Lang.Class({
},
getConnectLabel: function() {
return _("Connect to Internet");
return _("Use as Internet connection");
},
getIndicatorIcon: function() {

View File

@ -1,8 +1,6 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
const Gio = imports.gi.Gio;
const Clutter = imports.gi.Clutter;
const St = imports.gi.St;
const Lang = imports.lang;
const UPower = imports.gi.UPowerGlib;
@ -27,8 +25,6 @@ const DisplayDeviceInterface = '<node> \
const PowerManagerProxy = Gio.DBusProxy.makeProxyWrapper(DisplayDeviceInterface);
const SHOW_BATTERY_PERCENTAGE = 'show-battery-percentage';
const Indicator = new Lang.Class({
Name: 'PowerIndicator',
Extends: PanelMenu.SystemIndicator,
@ -36,15 +32,7 @@ const Indicator = new Lang.Class({
_init: function() {
this.parent();
this._desktopSettings = new Gio.Settings({ schema_id: 'org.gnome.desktop.interface' });
this._desktopSettings.connect('changed::' + SHOW_BATTERY_PERCENTAGE,
Lang.bind(this, this._sync));
this._indicator = this._addIndicator();
this._percentageLabel = new St.Label({ y_expand: true,
y_align: Clutter.ActorAlign.CENTER });
this.indicators.add(this._percentageLabel, { expand: true, y_fill: true });
this.indicators.add_style_class_name('power-status');
this._proxy = new PowerManagerProxy(Gio.DBus.system, BUS_NAME, OBJECT_PATH,
Lang.bind(this, function(proxy, error) {
@ -95,12 +83,12 @@ const Indicator = new Lang.Class({
if (this._proxy.State == UPower.DeviceState.DISCHARGING) {
// Translators: this is <hours>:<minutes> Remaining (<percentage>)
return _("%d\u2236%02d Remaining (%d\u2009%%)").format(hours, minutes, this._proxy.Percentage);
return _("%d\u2236%02d Remaining (%d%%)").format(hours, minutes, this._proxy.Percentage);
}
if (this._proxy.State == UPower.DeviceState.CHARGING) {
// Translators: this is <hours>:<minutes> Until Full (<percentage>)
return _("%d\u2236%02d Until Full (%d\u2009%%)").format(hours, minutes, this._proxy.Percentage);
return _("%d\u2236%02d Until Full (%d%%)").format(hours, minutes, this._proxy.Percentage);
}
return null;
@ -111,12 +99,10 @@ const Indicator = new Lang.Class({
let visible = this._proxy.IsPresent;
if (visible) {
this._item.actor.show();
this._percentageLabel.visible = this._desktopSettings.get_boolean(SHOW_BATTERY_PERCENTAGE);
} else {
// If there's no battery, then we use the power icon.
this._item.actor.hide();
this._indicator.icon_name = 'system-shutdown-symbolic';
this._percentageLabel.hide();
return;
}
@ -125,14 +111,6 @@ const Indicator = new Lang.Class({
this._indicator.icon_name = icon;
this._item.icon.icon_name = icon;
// The icon label
let label
if (this._proxy.State == UPower.DeviceState.FULLY_CHARGED)
label = _("%d\u2009%%").format(100);
else
label = _("%d\u2009%%").format(this._proxy.Percentage);
this._percentageLabel.clutter_text.set_markup('<span size="smaller">' + label + '</span>');
// The status label
this._item.label.text = this._getStatus();
},

View File

@ -6,7 +6,6 @@ const Gdm = imports.gi.Gdm;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const Lang = imports.lang;
const Meta = imports.gi.Meta;
const Shell = imports.gi.Shell;
const St = imports.gi.St;
@ -111,7 +110,6 @@ const Indicator = new Lang.Class({
this._session = new GnomeSession.SessionManager();
this._loginManager = LoginManager.getLoginManager();
this._monitorManager = Meta.MonitorManager.get();
this._haveShutdown = true;
this._haveSuspend = true;
@ -157,8 +155,6 @@ const Indicator = new Lang.Class({
this._orientationSettings.connect('changed::orientation-lock',
Lang.bind(this, this._updateOrientationLock));
Main.layoutManager.connect('monitors-changed',
Lang.bind(this, this._updateOrientationLock));
Gio.DBus.system.watch_name(SENSOR_BUS_NAME,
Gio.BusNameWatcherFlags.NONE,
Lang.bind(this, this._sensorProxyAppeared),
@ -268,8 +264,7 @@ const Indicator = new Lang.Class({
_updateOrientationLock: function() {
if (this._sensorProxy)
this._orientationLockAction.visible = this._sensorProxy.HasAccelerometer &&
this._monitorManager.get_is_builtin_display_on();
this._orientationLockAction.visible = this._sensorProxy.HasAccelerometer;
else
this._orientationLockAction.visible = false;
@ -306,17 +301,14 @@ const Indicator = new Lang.Class({
},
_updateHaveSuspend: function() {
this._loginManager.canSuspend(Lang.bind(this,
function(canSuspend, needsAuth) {
this._haveSuspend = canSuspend;
this._suspendNeedsAuth = needsAuth;
this._updateSuspend();
}));
this._loginManager.canSuspend(Lang.bind(this, function(result) {
this._haveSuspend = result;
this._updateSuspend();
}));
},
_updateSuspend: function() {
let disabled = (Main.sessionMode.isLocked &&
this._suspendNeedsAuth) ||
let disabled = Main.sessionMode.isLocked ||
(Main.sessionMode.isGreeter &&
this._loginScreenSettings.get_boolean(DISABLE_RESTART_KEY));
this._suspendAction.visible = this._haveSuspend && !disabled;

View File

@ -156,7 +156,7 @@ const ViewSelector = new Lang.Class({
this.appDisplay = new AppDisplay.AppDisplay();
this._appsPage = this._addPage(this.appDisplay.actor,
_("Applications"), 'view-app-grid-symbolic');
_("Applications"), 'view-grid-symbolic');
this._searchResults = new Search.SearchResults();
this._searchPage = this._addPage(this._searchResults.actor,

View File

@ -17,7 +17,6 @@ const Main = imports.ui.main;
const ModalDialog = imports.ui.modalDialog;
const Tweener = imports.ui.tweener;
const WindowMenu = imports.ui.windowMenu;
const PadOsd = imports.ui.padOsd;
const SHELL_KEYBINDINGS_SCHEMA = 'org.gnome.shell.keybindings';
const MINIMIZE_WINDOW_ANIMATION_TIME = 0.2;
@ -678,7 +677,6 @@ const WindowManager = new Lang.Class({
this._minimizing = [];
this._unminimizing = [];
this._mapping = [];
this._resizing = [];
this._destroying = [];
this._movingWindow = null;
@ -851,34 +849,22 @@ const WindowManager = new Lang.Class({
Lang.bind(this, this._showWorkspaceSwitcher));
this.setCustomKeybindingHandler('switch-applications',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
Lang.bind(this, this._startAppSwitcher));
this.setCustomKeybindingHandler('switch-group',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
Lang.bind(this, this._startAppSwitcher));
this.setCustomKeybindingHandler('switch-applications-backward',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
Lang.bind(this, this._startAppSwitcher));
this.setCustomKeybindingHandler('switch-group-backward',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
Lang.bind(this, this._startAppSwitcher));
this.setCustomKeybindingHandler('switch-windows',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
Lang.bind(this, this._startWindowSwitcher));
this.setCustomKeybindingHandler('switch-windows-backward',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
this.setCustomKeybindingHandler('cycle-windows',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
this.setCustomKeybindingHandler('cycle-windows-backward',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
this.setCustomKeybindingHandler('cycle-group',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
this.setCustomKeybindingHandler('cycle-group-backward',
Shell.ActionMode.NORMAL,
Lang.bind(this, this._startSwitcher));
Lang.bind(this, this._startWindowSwitcher));
this.setCustomKeybindingHandler('switch-panels',
Shell.ActionMode.NORMAL |
Shell.ActionMode.OVERVIEW |
@ -916,7 +902,6 @@ const WindowManager = new Lang.Class({
Lang.bind(this, this._toggleCalendar));
global.display.connect('show-resize-popup', Lang.bind(this, this._showResizePopup));
global.display.connect('show-pad-osd', Lang.bind(this, this._showPadOsd));
Main.overview.connect('showing', Lang.bind(this, function() {
for (let i = 0; i < this._dimmedWindows.length; i++)
@ -946,19 +931,7 @@ const WindowManager = new Lang.Class({
gesture = new AppSwitchAction();
gesture.connect('activated', Lang.bind(this, this._switchApp));
global.stage.add_action(gesture);
},
_showPadOsd: function (display, device, settings, imagePath, editionMode, monitorIndex) {
if (this._currentPadOsd != null) {
if (this._currentPadOsd.padDevice == device)
this._currentPadOsd.destroy();
return null;
}
this._currentPadOsd = new PadOsd.PadOsd(device, settings, imagePath, editionMode, monitorIndex);
this._currentPadOsd.connect('closed', Lang.bind(this, function() { this._currentPadOsd = null }));
return this._currentPadOsd.actor;
},
_actionSwitchWorkspace: function(action, direction) {
@ -1261,27 +1234,6 @@ const WindowManager = new Lang.Class({
},
_fullscreenWindow: function(shellwm, actor, oldFrameRect, oldBufferRect) {
let monitor = Main.layoutManager.monitors[actor.meta_window.get_monitor()];
actor.translation_x = oldFrameRect.x - monitor.x;
actor.translation_y = oldFrameRect.y - monitor.y;
this._fullscreenAnimation(shellwm, actor, oldFrameRect);
},
_unfullscreenWindow: function(shellwm, actor, oldFrameRect, oldBufferRect) {
let targetRect = actor.meta_window.get_frame_rect();
let monitor = Main.layoutManager.monitors[actor.meta_window.get_monitor()];
actor.translation_x = -(targetRect.x - monitor.x);
actor.translation_y = -(targetRect.y - monitor.y);
this._fullscreenAnimation(shellwm, actor, oldFrameRect);
},
_fullscreenAnimation: function(shellwm, actor, oldFrameRect) {
this._resizing.push(actor);
// Position a clone of the window on top of the old position,
// while actor updates are frozen.
// Note that the MetaWindow has up to date sizing information for
// the new geometry already.
let targetRect = actor.meta_window.get_frame_rect();
let actorContent = Shell.util_get_content_for_window_actor(actor, oldFrameRect);
let actorClone = new St.Widget({ content: actorContent });
@ -1295,68 +1247,93 @@ const WindowManager = new Lang.Class({
let scaleX = targetRect.width / oldFrameRect.width;
let scaleY = targetRect.height / oldFrameRect.height;
// Now scale and fade out the clone
Tweener.addTween(actorClone,
{ x: targetRect.x,
y: targetRect.y,
scale_x: scaleX,
scale_y: scaleY,
scaleX: scaleX,
scaleY: scaleY,
opacity: 0,
time: WINDOW_ANIMATION_TIME,
transition: 'easeOutQuad'
});
// Now set scale the actor to size it as the clone.
// Note that the caller of this function already set a translation
// on the actor.
actor.scale_x = 1 / scaleX;
actor.scale_y = 1 / scaleY;
// Scale it to its actual new size
Tweener.addTween(actor,
{ scale_x: 1.0,
scale_y: 1.0,
translation_x: 0,
translation_y: 0,
time: WINDOW_ANIMATION_TIME,
transition: 'easeOutQuad',
onComplete: this._sizeChangeWindowDone,
onCompleteScope: this,
onCompleteParams: [shellwm, actor],
onOverwrite: this._sizeChangeWindowOverwritten,
onOverwriteScope: this,
onOverwriteParams: [shellwm, actor]
onCompleteParams: [shellwm, actor]
});
actor.translation_x = actor.x;
actor.translation_y = actor.y;
actor.scaleX = 1 / scaleX;
actor.scaleY = 1 / scaleY;
Tweener.addTween(actor,
{ scaleX: 1.0,
scaleY: 1.0,
translation_x: 0,
translation_y: 0,
time: WINDOW_ANIMATION_TIME,
transition: 'easeOutQuad'
});
shellwm.completed_size_change(actor);
},
_unfullscreenWindow: function(shellwm, actor, oldFrameRect, oldBufferRect) {
let targetRect = actor.meta_window.get_frame_rect();
let actorContent = Shell.util_get_content_for_window_actor(actor, oldFrameRect);
let actorClone = new St.Widget({ content: actorContent });
actorClone.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
actorClone.set_position(oldFrameRect.x, oldFrameRect.y);
actorClone.set_size(oldFrameRect.width, oldFrameRect.height);
Main.uiGroup.add_actor(actorClone);
actor.__unfullscreenClone = actorClone;
let scaleX = targetRect.width / oldFrameRect.width;
let scaleY = targetRect.height / oldFrameRect.height;
Tweener.addTween(actorClone,
{ x: targetRect.x,
y: targetRect.y,
scaleX: scaleX,
scaleY: scaleY,
opacity: 0,
time: WINDOW_ANIMATION_TIME,
transition: 'easeOutQuad',
onComplete: this._sizeChangeWindowDone,
onCompleteScope: this,
onCompleteParams: [shellwm, actor]
});
actor.translation_x = -actor.x;
actor.translation_y = -actor.y;
actor.scaleX = 1 / scaleX;
actor.scaleY = 1 / scaleY;
Tweener.addTween(actor,
{ scaleX: 1.0,
scaleY: 1.0,
translation_x: 0,
translation_y: 0,
time: WINDOW_ANIMATION_TIME,
transition: 'easeOutQuad'
});
// Now unfreeze actor updates, to get it to the new size.
// It's important that we don't wait until the animation is completed to
// do this, otherwise our scale will be applied to the old texture size.
shellwm.completed_size_change(actor);
},
_sizeChangeWindowDone: function(shellwm, actor) {
if (this._removeEffect(this._resizing, actor)) {
Tweener.removeTweens(actor);
actor.scale_x = 1.0;
actor.scale_y = 1.0;
actor.translation_x = 0;
actor.translation_y = 0;
Tweener.removeTweens(actor);
let actorClone = actor.__fullscreenClone;
if (actorClone) {
actorClone.destroy();
delete actor.__fullscreenClone;
}
let actorClone = actor.__fullscreenClone;
if (actorClone) {
actorClone.destroy();
delete actor.__fullscreenClone;
}
},
_sizeChangeWindowOverwritten: function(shellwm, actor) {
if (this._removeEffect(this._resizing, actor)) {
let actorClone = actor.__fullscreenClone;
if (actorClone) {
actorClone.destroy();
delete actor.__fullscreenClone;
}
actorClone = actor.__unfullscreenClone;
if (actorClone) {
actorClone.destroy();
delete actor.__unfullscreenClone;
}
},
@ -1393,14 +1370,11 @@ const WindowManager = new Lang.Class({
let dimmer = getWindowDimmer(actor);
if (!dimmer)
return;
if (this._shouldAnimate())
Tweener.addTween(dimmer,
{ dimFactor: 1.0,
time: DIM_TIME,
transition: 'linear'
});
else
dimmer.dimFactor = 1.0;
Tweener.addTween(dimmer,
{ dimFactor: 1.0,
time: DIM_TIME,
transition: 'linear'
});
},
_undimWindow: function(window) {
@ -1410,13 +1384,10 @@ const WindowManager = new Lang.Class({
let dimmer = getWindowDimmer(actor);
if (!dimmer)
return;
if (this._shouldAnimate())
Tweener.addTween(dimmer,
{ dimFactor: 0.0,
time: UNDIM_TIME,
transition: 'linear' });
else
dimmer.dimFactor = 0.0;
Tweener.addTween(dimmer,
{ dimFactor: 0.0,
time: UNDIM_TIME,
transition: 'linear' });
},
_mapWindow : function(shellwm, actor) {
@ -1435,9 +1406,6 @@ const WindowManager = new Lang.Class({
actor._windowType = type;
}));
if (actor.meta_window.is_attached_dialog())
this._checkDimming(actor.get_meta_window().get_transient_for());
let types = [Meta.WindowType.NORMAL,
Meta.WindowType.DIALOG,
Meta.WindowType.MODAL_DIALOG];
@ -1446,6 +1414,9 @@ const WindowManager = new Lang.Class({
return;
}
if (actor.meta_window.is_attached_dialog())
this._checkDimming(actor.get_meta_window().get_transient_for());
switch (actor._windowType) {
case Meta.WindowType.NORMAL:
actor.set_pivot_point(0.5, 1.0);
@ -1528,9 +1499,6 @@ const WindowManager = new Lang.Class({
});
}
if (window.is_attached_dialog())
this._checkDimming(window.get_transient_for(), window);
let types = [Meta.WindowType.NORMAL,
Meta.WindowType.DIALOG,
Meta.WindowType.MODAL_DIALOG];
@ -1565,6 +1533,7 @@ const WindowManager = new Lang.Class({
if (window.is_attached_dialog()) {
let parent = window.get_transient_for();
this._checkDimming(parent, window);
actor._parentDestroyId = parent.connect('unmanaged', Lang.bind(this, function () {
Tweener.removeTweens(actor);
this._destroyWindowDone(shellwm, actor);
@ -1770,37 +1739,23 @@ const WindowManager = new Lang.Class({
this._windowMenuManager.showWindowMenuForWindow(window, menu, rect);
},
_startSwitcher: function(display, screen, window, binding) {
let constructor = null;
switch (binding.get_name()) {
case 'switch-applications':
case 'switch-applications-backward':
case 'switch-group':
case 'switch-group-backward':
constructor = AltTab.AppSwitcherPopup;
break;
case 'switch-windows':
case 'switch-windows-backward':
constructor = AltTab.WindowSwitcherPopup;
break;
case 'cycle-windows':
case 'cycle-windows-backward':
constructor = AltTab.WindowCyclerPopup;
break;
case 'cycle-group':
case 'cycle-group-backward':
constructor = AltTab.GroupCyclerPopup;
break;
}
if (!constructor)
return;
_startAppSwitcher : function(display, screen, window, binding) {
/* prevent a corner case where both popups show up at once */
if (this._workspaceSwitcherPopup != null)
this._workspaceSwitcherPopup.destroy();
let tabPopup = new constructor();
let tabPopup = new AltTab.AppSwitcherPopup();
if (!tabPopup.show(binding.is_reversed(), binding.get_name(), binding.get_mask()))
tabPopup.destroy();
},
_startWindowSwitcher : function(display, screen, window, binding) {
/* prevent a corner case where both popups show up at once */
if (this._workspaceSwitcherPopup != null)
this._workspaceSwitcherPopup.destroy();
let tabPopup = new AltTab.WindowSwitcherPopup();
if (!tabPopup.show(binding.is_reversed(), binding.get_name(), binding.get_mask()))
tabPopup.destroy();

View File

@ -214,7 +214,7 @@ const WindowMenuManager = new Lang.Class({
menu.close();
});
this._sourceActor.set_size(Math.max(1, rect.width), Math.max(1, rect.height));
this._sourceActor.set_size(rect.width, rect.height);
this._sourceActor.set_position(rect.x, rect.y);
this._sourceActor.show();

View File

@ -361,9 +361,6 @@ const WindowClone = new Lang.Class({
// a long-press canceled when the pointer movement
// exceeds dnd-drag-threshold to manually start the drag
if (state == Clutter.LongPressState.CANCEL) {
let event = Clutter.get_current_event();
this._dragTouchSequence = event.get_event_sequence();
// A click cancels a long-press before any click handler is
// run - make sure to not start a drag in that case
Meta.later_add(Meta.LaterType.BEFORE_REDRAW, Lang.bind(this,
@ -372,7 +369,7 @@ const WindowClone = new Lang.Class({
return;
let [x, y] = action.get_coords();
action.release();
this._draggable.startDrag(x, y, global.get_current_time(), this._dragTouchSequence);
this._draggable.startDrag(x, y, global.get_current_time());
}));
}
return true;

View File

@ -45,11 +45,11 @@ const PrimaryActorLayout = new Lang.Class({
this.primaryActor = primaryActor;
},
vfunc_get_preferred_width: function(container, forHeight) {
vfunc_get_preferred_width: function(forHeight) {
return this.primaryActor.get_preferred_width(forHeight);
},
vfunc_get_preferred_height: function(container, forWidth) {
vfunc_get_preferred_height: function(forWidth) {
return this.primaryActor.get_preferred_height(forWidth);
},
});
@ -80,8 +80,6 @@ const WindowClone = new Lang.Class({
this.actor.connect('button-release-event',
Lang.bind(this, this._onButtonRelease));
this.actor.connect('touch-event',
Lang.bind(this, this._onTouchEvent));
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
@ -202,15 +200,6 @@ const WindowClone = new Lang.Class({
return Clutter.EVENT_STOP;
},
_onTouchEvent : function (actor, event) {
if (event.type() != Clutter.EventType.TOUCH_END ||
!global.display.is_pointer_emulating_sequence(event.get_event_sequence()))
return Clutter.EVENT_PROPAGATE;
this.emit('selected', event.get_time());
return Clutter.EVENT_STOP;
},
_onDragBegin : function (draggable, time) {
this.inDrag = true;
this.emit('drag-begin');
@ -653,7 +642,6 @@ const ThumbnailsBox = new Lang.Class({
this.actor.connect('button-press-event', function() { return Clutter.EVENT_STOP; });
this.actor.connect('button-release-event', Lang.bind(this, this._onButtonRelease));
this.actor.connect('touch-event', Lang.bind(this, this._onTouchEvent));
Main.overview.connect('showing',
Lang.bind(this, this._createThumbnails));
@ -684,31 +672,18 @@ const ThumbnailsBox = new Lang.Class({
global.screen.n_workspaces > 1;
},
_activateThumbnailAtPoint: function (stageX, stageY, time) {
_onButtonRelease: function(actor, event) {
let [stageX, stageY] = event.get_coords();
let [r, x, y] = this.actor.transform_stage_point(stageX, stageY);
for (let i = 0; i < this._thumbnails.length; i++) {
let thumbnail = this._thumbnails[i]
let [w, h] = thumbnail.actor.get_transformed_size();
if (y >= thumbnail.actor.y && y <= thumbnail.actor.y + h) {
thumbnail.activate(time);
thumbnail.activate(event.get_time());
break;
}
}
},
_onButtonRelease: function(actor, event) {
let [stageX, stageY] = event.get_coords();
this._activateThumbnailAtPoint(stageX, stageY, event.get_time());
return Clutter.EVENT_STOP;
},
_onTouchEvent: function (actor, event) {
if (event.type() == Clutter.EventType.TOUCH_END &&
global.display.is_pointer_emulating_sequence(event.get_event_sequence())) {
let [stageX, stageY] = event.get_coords();
this._activateThumbnailAtPoint(stageX, stageY, event.get_time());
}
return Clutter.EVENT_STOP;
},

View File

@ -103,7 +103,7 @@ const WorkspacesView = new Lang.Class({
page_increment: 1,
page_size: 1,
step_increment: 0,
upper: global.screen.n_workspaces });
upper: 0 });
this.scrollAdjustment.connect('notify::value',
Lang.bind(this, this._onScroll));
@ -374,10 +374,6 @@ const ExtraWorkspaceView = new Lang.Class({
this._workspace.setActualGeometry(this._actualGeometry);
},
getActiveWorkspace: function() {
return this._workspace;
},
animateToOverview: function(animationType) {
if (animationType == AnimationType.ZOOM)
this._workspace.zoomToOverview();
@ -425,10 +421,8 @@ const WorkspacesDisplay = new Lang.Class({
// Only switch to the workspace when there's no application
// windows open. The problem is that it's too easy to miss
// an app window and get the wrong one focused.
let event = Clutter.get_current_event();
let index = this._getMonitorIndexForEvent(event);
if ((action.get_button() == 1 || action.get_button() == 0) &&
this._workspacesViews[index].getActiveWorkspace().isEmpty())
if (action.get_button() == 1 &&
this._getPrimaryView().getActiveWorkspace().isEmpty())
Main.overview.hide();
}));
Main.overview.addAction(clickAction);
@ -437,18 +431,11 @@ const WorkspacesDisplay = new Lang.Class({
let panAction = new Clutter.PanAction({ threshold_trigger_edge: Clutter.GestureTriggerEdge.AFTER });
panAction.connect('pan', Lang.bind(this, this._onPan));
panAction.connect('gesture-begin', Lang.bind(this, function() {
if (this._workspacesOnlyOnPrimary) {
let event = Clutter.get_current_event();
if (this._getMonitorIndexForEvent(event) != this._primaryIndex)
return false;
}
for (let i = 0; i < this._workspacesViews.length; i++)
this._workspacesViews[i].startSwipeScroll();
return true;
}));
panAction.connect('gesture-cancel', Lang.bind(this, function() {
clickAction.release();
for (let i = 0; i < this._workspacesViews.length; i++)
this._workspacesViews[i].endSwipeScroll();
}));
@ -594,12 +581,6 @@ const WorkspacesDisplay = new Lang.Class({
}
},
_getMonitorIndexForEvent: function(event) {
let [x, y] = event.get_coords();
let rect = new Meta.Rectangle({ x: x, y: y, width: 1, height: 1 });
return global.screen.get_monitor_index_for_rect(rect);
},
_getPrimaryView: function() {
if (!this._workspacesViews.length)
return null;
@ -680,11 +661,6 @@ const WorkspacesDisplay = new Lang.Class({
_onScrollEvent: function(actor, event) {
if (!this.actor.mapped)
return Clutter.EVENT_PROPAGATE;
if (this._workspacesOnlyOnPrimary &&
this._getMonitorIndexForEvent(event) != this._primaryIndex)
return Clutter.EVENT_PROPAGATE;
let activeWs = global.screen.get_active_workspace();
let ws;
switch (event.get_scroll_direction()) {

View File

@ -140,7 +140,7 @@
<para>
<filename>/usr/share/gnome-session/sessions/gnome.session</filename>,
<filename>/usr/share/applications/org.gnome.Shell.desktop</filename>.</para>
<filename>/usr/share/applications/gnome-shell.desktop</filename>.</para>
</refsect1>
<refsect1>

View File

@ -24,7 +24,6 @@ fi
fr
fur
ga
gd
gl
gu
he

View File

@ -2,8 +2,9 @@
# Please keep this file sorted alphabetically.
[encoding: UTF-8]
data/50-gnome-shell-system.xml.in
data/gnome-shell.desktop.in.in
data/gnome-shell-extension-prefs.desktop.in.in
data/org.gnome.Shell.desktop.in.in
data/gnome-shell-wayland.desktop.in.in
data/org.gnome.shell.gschema.xml.in.in
data/org.gnome.Shell.PortalHelper.desktop.in
js/extensionPrefs/main.js
@ -14,7 +15,6 @@ js/misc/util.js
js/portalHelper/main.js
js/ui/appDisplay.js
js/ui/appFavorites.js
js/ui/audioDeviceSelection.js
js/ui/backgroundMenu.js
js/ui/calendar.js
js/ui/components/automountManager.js
@ -33,9 +33,7 @@ js/ui/keyboard.js
js/ui/legacyTray.js
js/ui/lookingGlass.js
js/ui/main.js
js/ui/messageList.js
js/ui/messageTray.js
js/ui/mpris.js
js/ui/notificationDaemon.js
js/ui/overviewControls.js
js/ui/overview.js

1403
po/af.po

File diff suppressed because it is too large Load Diff

367
po/ar.po
View File

@ -1,6 +1,6 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Khaled Hosny <khaledhosny@eglug.org>, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016.
# Khaled Hosny <khaledhosny@eglug.org>, 2009, 2010, 2011, 2012, 2013, 2014, 2015.
# Muhammed Abd-ulaziz Abd-ullah <thenubianmuha_idrecy@yahoo.co.uk>, 2012.
# Abderrahim Kitouni <a.kitouni@gmail.com>, 2012, 2014.
# Ibrahim Saed <ibraheem5000@gmail.com>, 2012.
@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-10 20:24+0200\n"
"PO-Revision-Date: 2016-04-10 20:26+0200\n"
"POT-Creation-Date: 2015-10-10 15:24+0400\n"
"PO-Revision-Date: 2015-09-23 23:52+0200\n"
"Last-Translator: Khaled Hosny <khaledhosny@eglug.org>\n"
"Language-Team: Arabic <doc@arabeyes.org>\n"
"Language: ar\n"
@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
"X-Generator: Virtaal 1.0.0-beta1\n"
"X-Generator: Virtaal 0.7.1\n"
"X-Project-Style: gnome\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
@ -45,6 +45,15 @@ msgstr "أظهر كل التطبيقات"
msgid "Open the application menu"
msgstr "افتح قائمة التطبيقات"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "صدفة جنوم"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "إدارة النوافذ وإطلاق التطبيقات"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "تفضيلات امتدادات صدفة جنوم"
@ -53,13 +62,9 @@ msgstr "تفضيلات امتدادات صدفة جنوم"
msgid "Configure GNOME Shell Extensions"
msgstr "اضبط امتدادات صدفة جنوم"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "صدفة جنوم"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "إدارة النوافذ وإطلاق التطبيقات"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "صدفة جنوم (وايلاند)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -147,129 +152,116 @@ msgid ""
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "اعرض تاريخ الأسبوع في التقويم"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "أي لوحة مفاتيح ترغب باستخدامها"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "نوع لوحة المفاتيح التي ترغب باستخدامها."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
"only' (shows only the application icon) or 'both'."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "مساحات عمل على الشاشة الرئيسية فقط"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
@ -277,52 +269,51 @@ msgstr ""
msgid "Network Login"
msgstr "ولوج الشبكة"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "حدث خطأ أثناء تشغيل حوار تفضيلات %s:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "امتدادات صدفة جنوم"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "ألغِ"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "التالي"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "فك القفل"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "ادخل"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "أغلق الجلسة"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "غير مدرج؟"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(مثلا مستخدم أو %s)"
@ -330,12 +321,12 @@ msgstr "(مثلا مستخدم أو %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "اسم المستخدم: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "نافذة الولوج"
@ -471,36 +462,16 @@ msgstr "أضِف إلى المفضّلة"
msgid "Show Details"
msgstr "أظهر التفاصيل"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "أُضيف %s إلى مفضلتك."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "أُزيل %s من مفضّلتك."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "اختر جهاز صوت"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "إعدادات الصوت"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "سماعات أذن"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "سماعة رأس"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "ميكروفون"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "غيّر الخلفية…"
@ -514,7 +485,7 @@ msgid "Settings"
msgstr "الإعدادات"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "56"
@ -524,96 +495,94 @@ msgstr "56"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "ح"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "ن"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "ث"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "ر"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "خ"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "ج"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "س"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "الشهر السابق"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "الشهر التالي"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "أسبوع %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "طوال اليوم"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "امسح القسم"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "الأحداث"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A %d %B"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A %d %B %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "التنبيهات"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "لا تنبيهات"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "لا أحداث"
@ -625,7 +594,7 @@ msgstr "وُصّل قرص خارجي"
msgid "External drive disconnected"
msgstr "فُصل القرص الخارجي"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:351
#, javascript-format
msgid "Open with %s"
msgstr "افتح باستخدام %s"
@ -749,7 +718,7 @@ msgstr "للأسف لم يُفلح هذا. أعِد المحاولة."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:760
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
msgstr "غيّر %s اسمه إلى %s"
@ -803,7 +772,6 @@ msgid "Log Out"
msgstr "خروج"
#: ../js/ui/endSessionDialog.js:67
#, javascript-format
msgid "%s will be logged out automatically in %d second."
msgid_plural "%s will be logged out automatically in %d seconds."
msgstr[0] "سيُخرج %s تلقائيا الآن."
@ -814,7 +782,6 @@ msgstr[4] "سيُخرج %s تلقائيا بعد %d ثانية."
msgstr[5] "سيُخرج %s تلقائيا بعد %d ثانية."
#: ../js/ui/endSessionDialog.js:72
#, javascript-format
msgid "You will be logged out automatically in %d second."
msgid_plural "You will be logged out automatically in %d seconds."
msgstr[0] "ستُخرج تلقائيا الآن."
@ -840,7 +807,6 @@ msgid "Install Updates & Power Off"
msgstr "ثبّت التحديثات ثم أطفئ"
#: ../js/ui/endSessionDialog.js:87
#, javascript-format
msgid "The system will power off automatically in %d second."
msgid_plural "The system will power off automatically in %d seconds."
msgstr[0] "سيُطفأ النظام تلقائيا الآن."
@ -871,7 +837,6 @@ msgid "Restart"
msgstr "إعادة التشغيل"
#: ../js/ui/endSessionDialog.js:105
#, javascript-format
msgid "The system will restart automatically in %d second."
msgid_plural "The system will restart automatically in %d seconds."
msgstr[0] "سيُعاد تشغيل النظام تلقائيا الآن."
@ -887,7 +852,6 @@ msgid "Restart & Install Updates"
msgstr "أعد التشغيل و ثبّت التحديثات"
#: ../js/ui/endSessionDialog.js:121
#, javascript-format
msgid "The system will automatically restart and install updates in %d second."
msgid_plural ""
"The system will automatically restart and install updates in %d seconds."
@ -951,11 +915,11 @@ msgid "Keyboard"
msgstr "لوحة المفاتيح"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "أخفِ الصينية"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "أيقونات الحالة"
@ -1007,26 +971,10 @@ msgstr "اعرض المصدر"
msgid "Web Page"
msgstr "صفحة الوب"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "امسح القسم"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "معلومات النظام"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "فنان غير معروف"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "عنوان غير معروف"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "وسائط"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "تراجع"
@ -1053,12 +1001,12 @@ msgstr "أنْهِ"
msgid "Activities"
msgstr "الأنشطة"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:660
msgctxt "System menu in the top bar"
msgid "System"
msgstr "النظام"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:764
msgid "Top Bar"
msgstr "الشريط العلوي"
@ -1071,15 +1019,15 @@ msgstr "الشريط العلوي"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "اكتب أمرًا"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "أغلِق"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "يُعيد التشغيل…"
@ -1090,7 +1038,6 @@ msgid "%A, %B %d"
msgstr "%A، %d %B"
#: ../js/ui/screenShield.js:144
#, javascript-format
msgid "%d new message"
msgid_plural "%d new messages"
msgstr[0] "لا رسائل جديدة"
@ -1101,7 +1048,6 @@ msgstr[4] "%d رسالة جديدة"
msgstr[5] "%d رسالة جديدة"
#: ../js/ui/screenShield.js:146
#, javascript-format
msgid "%d new notification"
msgid_plural "%d new notifications"
msgstr[0] "لا تنبيهات جديدة"
@ -1210,16 +1156,19 @@ msgstr "تباين عال"
msgid "Large Text"
msgstr "نص كبير"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "بلوتوث"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "أوقف"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "إعدادات بلوتوث"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
@ -1230,25 +1179,10 @@ msgstr[3] "%d مُتصل"
msgstr[4] "%d مُتصل"
msgstr[5] "%d مُتصل"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "مغلق"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "غير مستخدم"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "شغّل"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "أوقف"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "السطوع"
@ -1257,48 +1191,30 @@ msgstr "السطوع"
msgid "Show Keyboard Layout"
msgstr "أظهر تخطيط لوحة المفاتيح"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "التموضع مفعّل"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "عطّل"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "إعدادات الخصوصية"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "التموضع مستخدم"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "التموضع غير مفعّل"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "فعّل"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "ارفض منح الصلاحية"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "امنح الصلاحية"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "أتريد إعطاء %s صلاحية معرفة مكانك؟"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr "يمكن تغيير صلاحيات الوصول لمكانك في أي وقت من إعدادات الخصوصية."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<غير معروفة>"
@ -1307,13 +1223,13 @@ msgstr "<غير معروفة>"
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1308
#, javascript-format
msgid "%s Off"
msgstr "%s مغلق"
msgstr "%s مغلق"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:454
#, javascript-format
msgid "%s Connected"
msgstr "%s مُتصل"
msgstr "%s مُتصل"
#. Translators: this is for network devices that are physically present but are not
#. under NetworkManager's control (and thus cannot be used in the menu);
@ -1321,19 +1237,19 @@ msgstr "%s مُتصل"
#: ../js/ui/status/network.js:459
#, javascript-format
msgid "%s Unmanaged"
msgstr "%s غير مُدار"
msgstr "%s غير مُدار"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:462
#, javascript-format
msgid "%s Disconnecting"
msgstr "%s يقطع الاتّصال"
msgstr "%s يقطع الاتّصال"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
#, javascript-format
msgid "%s Connecting"
msgstr "%s يتّصل"
msgstr "%s يتّصل"
#. Translators: this is for network connections that require some kind of key or password; %s is a network identifier
#: ../js/ui/status/network.js:472
@ -1353,7 +1269,7 @@ msgstr "برمجيات %s المغروسة (Firmware) غير متاحة"
#: ../js/ui/status/network.js:484
#, javascript-format
msgid "%s Unavailable"
msgstr "%s غير متاح"
msgstr "%s غير متاح"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:487
@ -1380,7 +1296,7 @@ msgstr "عتاد %s مُعَطَّل"
#: ../js/ui/status/network.js:592
#, javascript-format
msgid "%s Disabled"
msgstr "%s معطّل"
msgstr "%s معطّل"
#: ../js/ui/status/network.js:632
msgid "Use as Internet connection"
@ -1434,6 +1350,10 @@ msgstr "اختر شبكة"
msgid "Wi-Fi Settings"
msgstr "إعدادات الاتصال اللاسلكي"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "شغّل"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1444,7 +1364,7 @@ msgstr "نقطة اتصال %s نشطة"
#: ../js/ui/status/network.js:1311
#, javascript-format
msgid "%s Not Connected"
msgstr "%s غير متّصل"
msgstr "%s غير متّصل"
#: ../js/ui/status/network.js:1411
msgid "connecting..."
@ -1483,36 +1403,31 @@ msgstr "فشل الاتصال"
msgid "Activation of network connection failed"
msgstr "فشل تفعيل اتصال الشبكة"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "إعدادات الطاقة"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "مشحونة بالكامل"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "يَحسِب…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "بقي %d%02d (%d٪)"
msgid "%d%02d Remaining (%d%%)"
msgstr "بقي %d%02d (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "بقي على الاكتمال %d%02d (%d٪)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d٪"
msgid "%d%02d Until Full (%d%%)"
msgstr "بقي على الاكتمال %d%02d (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1553,6 +1468,10 @@ msgstr "تغيّرت شدة الصوت"
msgid "Volume"
msgstr "شدة الصوت"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "ميكروفون"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "لِج كمستخدم آخر"
@ -1590,7 +1509,6 @@ msgid "Keep Changes"
msgstr "أبق على التغييرات"
#: ../js/ui/windowManager.js:103
#, javascript-format
msgid "Settings changes will revert in %d second"
msgid_plural "Settings changes will revert in %d seconds"
msgstr[0] "سيُتراجع عن التغييرات الآن"
@ -1721,33 +1639,30 @@ msgstr "استخدم طورا معينا، مثلا: \"gdm\" لشاشة الول
msgid "List possible modes"
msgstr "اسرد كل الأطوار الممكنة"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "غير معروف"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "فشل تشغيل ”%s“"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "لا تتطابق كلمتا السر."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "لا يمكن أن تكون كلمة السرّ فارغة"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "أغلق المستخدم مربع الاستيثاق الحِواري"
#~ msgid "%s is requesting access to your location."
#~ msgstr "يطلب %s صلاحية معرفة مكانك."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "صدفة جنوم (وايلاند)"
#~ msgid "Bluetooth"
#~ msgstr "بلوتوث"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
@ -1758,6 +1673,9 @@ msgstr "أغلق المستخدم مربع الاستيثاق الحِواري"
#~ msgstr[4] "%d جهازًا موصّلا"
#~ msgstr[5] "%d جهاز موصّل"
#~ msgid "Off"
#~ msgstr "مغلق"
#~ msgid "Authentication required"
#~ msgstr "الاستيثاق مطلوب"
@ -1959,6 +1877,9 @@ msgstr "أغلق المستخدم مربع الاستيثاق الحِواري"
#~ msgid "View account"
#~ msgstr "أظهر الحساب"
#~ msgid "Unknown reason"
#~ msgstr "السبب غير معروف"
#~ msgid "Open Calendar"
#~ msgstr "افتح التقويم"
@ -2051,6 +1972,9 @@ msgstr "أغلق المستخدم مربع الاستيثاق الحِواري"
#~ msgid "Device %s wants access to the service '%s'"
#~ msgstr "يريد الجهاز %s صلاحية الوصول للخدمة '%s'"
#~ msgid "Always grant access"
#~ msgstr "امنح الصلاحية دائما"
#~ msgid "Grant this time only"
#~ msgstr "امنح هذه المرة فقط"
@ -2140,6 +2064,9 @@ msgstr "أغلق المستخدم مربع الاستيثاق الحِواري"
#~ msgid "Visibility"
#~ msgstr "الرؤية"
#~ msgid "Send Files to Device…"
#~ msgstr "أرسِل ملفات للجهاز…"
#~ msgid "Set Up a New Device…"
#~ msgstr "اضبط جهازًا جديدًا…"
@ -2230,6 +2157,10 @@ msgstr "أغلق المستخدم مربع الاستيثاق الحِواري"
#~ msgstr[4] "بقيت %d دقيقة"
#~ msgstr[5] "بقيت %d دقيقة"
#~ msgctxt "percent of battery remaining"
#~ msgid "%d%%"
#~ msgstr "%d%%"
#~ msgid "AC Adapter"
#~ msgstr "مقبس طاقة"

719
po/bg.po

File diff suppressed because it is too large Load Diff

372
po/ca.po
View File

@ -3,23 +3,22 @@
# This file is distributed under the same license as the gnome-shell package.
# Siegfried-Angel Gevatter Pujals <rainct@ubuntu.com>, 2009.
# Jordi Serratosa <jordis@softcatala.cat>, 2012.
# Gil Forcada <gilforcada@guifi.net>, 2010, 2011, 2013, 2014, 2016.
# Gil Forcada <gilforcada@guifi.net>, 2010, 2011, 2013, 2014.
#
msgid ""
msgstr ""
"Project-Id-Version: HEAD\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-03-13 10:20+0000\n"
"PO-Revision-Date: 2016-03-13 14:47+0100\n"
"Last-Translator: Gil Forcada <gilforcada@guifi.net>\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-08-20 19:24+0200\n"
"PO-Revision-Date: 2015-05-28 19:32+0100\n"
"Last-Translator: David Medina <opensusecatala@gmail.com>\n"
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bits\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Gtranslator 2.91.6\n"
"X-Generator: Poedit 1.6.9\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -45,6 +44,15 @@ msgstr "Mostra totes les aplicacions"
msgid "Open the application menu"
msgstr "Obre el menú d'aplicació"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Gestor de finestres i llançador d'aplicacions"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "Preferències de les extensions del GNOME Shell"
@ -53,13 +61,9 @@ msgstr "Preferències de les extensions del GNOME Shell"
msgid "Configure GNOME Shell Extensions"
msgstr "Configureu les extensions del GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Gestor de finestres i llançador d'aplicacions"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (composició mitjançant Wayland)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -172,97 +176,78 @@ msgstr ""
"de verificació."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Si l'adaptador de Bluetooth predeterminat té dispositius configurats "
"associats"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"El Shell només mostrà una entrada de menú Bluetooth si un adaptador Bluetooh "
"està engegat, o si hi ha dispositius configurats associats a l'adaptador "
"predeterminat. Això es reiniciarà si l'adaptador predeterminat té "
"dispositius associats."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Mostra el número de la setmana al calendari"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Si és «true» (cert) es mostra el número de la setmana al calendari."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Vinculació per obrir el menú d'aplicació"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "La vinculació per obrir el menú d'aplicació."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Vinculació per obrir la vista «Mostra les aplicacions»"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Vinculació per obrir la vista «Mostra les aplicacions» de les activitats de "
"la vista general."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Vinculació per obrir la vista general"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Vinculació per obrir la vista general d'activitats."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr ""
"La vinculació per commutar la visibilitat de la llista de notificacions"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
"La vinculació per commutar la visibilitat de la llista de notificacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Vinculació per posar el focus a la notificació activa"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Vinculació per posar el focus a la notificació activa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Vinculació que fa una pausa i continua tots els «tweens» en execució, per "
"motius de depuració"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Quin tipus de teclat s'ha d'utilitzar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "El tipus de teclat que s'utilitzarà."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Limita el canviador a l'espai de treball actual."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -271,11 +256,11 @@ msgstr ""
"de treball actual es mostren en el canviador. En cas contrari es mostren "
"totes les aplicacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "El mode d'icona de les aplicacions."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -286,7 +271,7 @@ msgstr ""
"icon-only» (mostra la icona de l'aplicació) o «both» (ambdues coses: mostra "
"la miniatura de la finestra i la icona de l'aplicació)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -294,32 +279,32 @@ msgstr ""
"Si és «true» (cert), només les finestres de l'espai de treball actual es "
"mostren en el canviador. En cas contrari, es mostren totes les finestres."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Adjunta el diàleg modal a la finestra pare"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Si s'executa el GNOME Shell, aquesta clau sobreescriu la clau «org.gnome."
"mutter»."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Habilita la tesselització a les vores en deixar anar les finestres a les "
"vores de la pantalla"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Els espais de treball es gestionen dinàmicament"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Només en el monitor principal hi ha espais de treball"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Retarda el canvi del focus, quan s'està en mode ratolí, fins que el punter "
@ -329,52 +314,51 @@ msgstr ""
msgid "Network Login"
msgstr "Inici de sessió de la xarxa"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "S'ha produït un error en carregar el diàleg de preferències de %s:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Extensions del GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Cancel·la"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:435
msgid "Next"
msgstr "Següent"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Desbloqueja"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Entra"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Trieu la sessió"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "No esteu llistat?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:847
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(p. ex. l'usuari o %s)"
@ -382,12 +366,12 @@ msgstr "(p. ex. l'usuari o %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Nom d'usuari:"
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1181
msgid "Login Window"
msgstr "Finestra d'entrada"
@ -523,36 +507,16 @@ msgstr "Afegeix als preferits"
msgid "Show Details"
msgstr "Mostra els detalls"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "S'ha afegit %s als preferits."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "S'ha suprimit %s dels preferits."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Seleccioneu dispositiu d'àudio"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Paràmetres del so"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Auriculars"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Auriculars amb micròfon"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Micròfon"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Canvia el fons de l'escriptori…"
@ -561,12 +525,13 @@ msgstr "Canvia el fons de l'escriptori…"
msgid "Display Settings"
msgstr "Paràmetres de la pantalla"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:366
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:366
msgid "Settings"
msgstr "Paràmetres"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -576,96 +541,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "Dg"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "Dl"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "Dt"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "Dc"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "Dj"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "Dv"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "Ds"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Mes anterior"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Mes següent"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Setmana %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Tot el dia"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1291
msgid "Clear section"
msgstr "Neteja la secció"
#: ../js/ui/calendar.js:1518
msgid "Events"
msgstr "Cites"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1527
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A %d de %B"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A %d de %B de %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1616
msgid "Notifications"
msgstr "Notificacions"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1767
msgid "No Notifications"
msgstr "Cap notificació"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1770
msgid "No Events"
msgstr "Cap cita"
@ -677,7 +640,7 @@ msgstr "S'ha connectat un dispositiu extern"
msgid "External drive disconnected"
msgstr "S'ha desconnectat un dispositiu extern"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "Obre amb %s"
@ -993,11 +956,11 @@ msgid "Keyboard"
msgstr "Teclat"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Oculta la Safata"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Icones d'estat"
@ -1025,7 +988,7 @@ msgstr "Habilitat"
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1828
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "Inhabilitat"
@ -1049,26 +1012,10 @@ msgstr "Mostra el codi font"
msgid "Web Page"
msgstr "Pàgina web"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Neteja la secció"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Informació de l'ordinador"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Artista desconegut"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Títol desconegut"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Multimèdia"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Desfés"
@ -1085,22 +1032,17 @@ msgstr "Vista general"
msgid "Type to search…"
msgstr "Teclegeu per cercar…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Surt"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Activitats"
#: ../js/ui/panel.js:695
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Sistema"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Barra superior"
@ -1113,15 +1055,15 @@ msgstr "Barra superior"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Introduïu una ordre"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Tanca"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "S'està reiniciant…"
@ -1244,41 +1186,29 @@ msgstr "Alt contrast"
msgid "Large Text"
msgstr "Text gran"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Desactiva"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Paràmetres del Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d connectat"
msgstr[1] "%d connectats"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Desactivat"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "No s'usa"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Activa"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Desactiva"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Brillantor"
@ -1287,50 +1217,30 @@ msgstr "Brillantor"
msgid "Show Keyboard Layout"
msgstr "Mostra la disposició del teclat"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Ubicació habilitada"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Inhabilita"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Paràmetres de privacitat"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Ubicació en ús"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Ubicació inhabilitada"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Habilita"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Denega l'accés"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Permetre l'accés"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Voleu donar a %s accés a la vostra ubicació?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Podeu canviar la configuració de l'accés a la ubicació sempre que vulgueu "
"des del la configuració de la privacitat."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<desconegut>"
@ -1466,6 +1376,10 @@ msgstr "Trieu una xarxa"
msgid "Wi-Fi Settings"
msgstr "Paràmetres del sense fil"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Activa"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1515,36 +1429,31 @@ msgstr "Ha fallat la connexió"
msgid "Activation of network connection failed"
msgstr "Ha fallat l'activació de la connexió de xarxa"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Paràmetres d'energia"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Totalment carregada"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "S'està estimant la durada…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d Queda (%d %%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d Queda (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d Fins que estigui del tot carregada (%d %%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d Fins que estigui del tot carregada (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1585,6 +1494,10 @@ msgstr "S'ha canviat el volum"
msgid "Volume"
msgstr "Volum"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Micròfon"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Entra amb un altre usuari"
@ -1705,7 +1618,7 @@ msgstr "Calendari de l'Evolution"
#. translators:
#. * The number of sound outputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1835
#: ../src/gvc/gvc-mixer-control.c:1837
#, c-format
msgid "%u Output"
msgid_plural "%u Outputs"
@ -1714,66 +1627,66 @@ msgstr[1] "%u sortides"
#. translators:
#. * The number of sound inputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1845
#: ../src/gvc/gvc-mixer-control.c:1847
#, c-format
msgid "%u Input"
msgid_plural "%u Inputs"
msgstr[0] "%u entrada"
msgstr[1] "%u entrades"
#: ../src/gvc/gvc-mixer-control.c:2371
#: ../src/gvc/gvc-mixer-control.c:2373
msgid "System Sounds"
msgstr "Sons del sistema"
#: ../src/main.c:381
#: ../src/main.c:373
msgid "Print version"
msgstr "Mostra la versió"
#: ../src/main.c:387
#: ../src/main.c:379
msgid "Mode used by GDM for login screen"
msgstr "El mode que utilitzarà el GDM per a la pantalla d'entrada"
#: ../src/main.c:393
#: ../src/main.c:385
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "Utilitza un mode específic, p. ex. «gdm» per la pantalla d'entrada"
#: ../src/main.c:399
#: ../src/main.c:391
msgid "List possible modes"
msgstr "Llista els modes possibles"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Desconegut"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "No s'ha pogut iniciar «%s»"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Les contrasenyes no coincideixen."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "La contrasenya no pot ser buida"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "L'usuari ha descartat el diàleg d'autenticació"
#~ msgid "%s is requesting access to your location."
#~ msgstr "%s està demanant accés a la vostra ubicació."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "GNOME Shell (composició mitjançant Wayland)"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "%d dispositiu connectat"
#~ msgstr[1] "%d dispositius connectats"
#~ msgid "Off"
#~ msgstr "Desactivat"
#~ msgid "Authentication required"
#~ msgstr "Cal autenticació"
@ -1982,6 +1895,9 @@ msgstr "L'usuari ha descartat el diàleg d'autenticació"
#~ msgid "View account"
#~ msgstr "Mostra el compte"
#~ msgid "Unknown reason"
#~ msgstr "Motiu desconegut"
#~ msgid "Open Calendar"
#~ msgstr "Obre el calendari"

353
po/cs.po
View File

@ -5,15 +5,15 @@
# Andre Klapper <ak-47@gmx.net>, 2009.
# Petr Kovar <pknbe@volny.cz>, 2009, 2010, 2011, 2012, 2014, 2015.
# Adam Matoušek <adamatousek@gmail.com>, 2012, 2013.
# Marek Černocký <marek@manet.cz>, 2012, 2013, 2014, 2015, 2016.
# Marek Černocký <marek@manet.cz>, 2012, 2013, 2014, 2015.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-03-10 15:25+0000\n"
"PO-Revision-Date: 2016-03-10 16:35+0100\n"
"POT-Creation-Date: 2015-10-05 08:41+0000\n"
"PO-Revision-Date: 2015-10-04 11:42-0400\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <gnome-cs-list@gnome.org>\n"
"Language: cs\n"
@ -21,7 +21,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Gtranslator 2.91.7\n"
"X-Generator: Virtaal 0.7.1\n"
"X-Project-Style: gnome\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
@ -48,6 +48,15 @@ msgstr "Zobrazit všechny aplikace"
msgid "Open the application menu"
msgstr "Otevřít nabídku aplikací"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "Prostředí GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Správa oken a spouštění aplikací"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "Předvolby rozšíření GNOME Shell"
@ -56,13 +65,9 @@ msgstr "Předvolby rozšíření GNOME Shell"
msgid "Configure GNOME Shell Extensions"
msgstr "Nastavit rozšíření GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "Prostředí GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Správa oken a spouštění aplikací"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (kompozitor Waylandu)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -167,92 +172,75 @@ msgstr ""
"volby."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr "Zda měl adaptér Bluetooth nastavená zařízení pro spolupráci s ním"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"Shell zobrazuje nabídku Bluetooth jen v případě, že je adaptér Bluetooth "
"zapnutý, nebo když existují nějaká zařízení nastavená pro spolupráci s "
"výchozím adaptérem. Nabídka zmizí, když se zjistí, že výchozí adaptér nemá "
"přiřazená žádná zařízení."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Zobrazovat v kalendáři čísla týdnů"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Je-li zapnuto, zobrazovat v kalendáři čísla týdnů dle ISO."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Klávesová zkratka otevírající nabidku aplikací"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Klávesová zkratka sloužící k otevření nabídky aplikací."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Klávesová zkratka otevírající zobrazení aplikací"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Klávesová zkratka sloužící k otevření nabídky aplikací v Přehledu činností."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Klávesová zkratka otevírající přehled"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Klávesová zkratka sloužící k otevření přehledu činností"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Klávesová zkratka přepínající viditelnost seznamu upozornění"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Klávesová zkratka sloužící k přepnutí viditelnosti seznamu upozornění."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Klávesová zkratka zaměřující aktivního upozornění"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Klávesová zkratka sloužící k zaměření aktivního upozornění."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Klávesová zkratka k pozastavení a opětovnému spuštění všech běžících animací "
"tweens; pro účely ladění"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Která klávesnice se má používat"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Typ klávesnice, který se má používat."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Omezit přepínání jen na aktuální plochu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -260,11 +248,11 @@ msgstr ""
"Je-li zapnuto, objeví se v přepínači aplikací jen ty, co jsou na aktuální "
"pracovní ploše. V opačném případě jsou zahrnuty všechny aplikace."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Režim ikon aplikací"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -274,7 +262,7 @@ msgstr ""
"only“ (zobrazí náhled okna), „app-icon-only“ (zobrazí pouze ikonu aplikace) "
"a „both“ (zobrazí náhled i ikonu)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -282,28 +270,28 @@ msgstr ""
"Je-li zapnuto, objeví se v přepínači oken jen ty, co jsou na aktuální "
"pracovní ploše. V opačném případě jsou zahrnuta všechna okna."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Modální dialogová okna připojovat k rodičovskému oknu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr "Když běží GNOME Shell, tento klíč přepíše klíč v org.gnome.mutter"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Okna upuštěná u okraje obrazovky nechat řadit jako dlaždice"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Pracovní plochy jsou spravovány dynamicky"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Pracovní plochy jen na hlavním monitoru"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Se změnou zaměření v režimu myši čekat na zastavení pohybu ukazatele"
@ -311,53 +299,52 @@ msgstr "Se změnou zaměření v režimu myši čekat na zastavení pohybu ukaza
msgid "Network Login"
msgstr "Přihlášení do sítě"
#: ../js/extensionPrefs/main.js:121
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr ""
"Nastala chyba při načítání dialogového okna předvoleb pro rozšíření %s:"
#: ../js/extensionPrefs/main.js:153
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Rozšíření GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Zrušit"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Další"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Odemknout"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Přihlásit se"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Vybrat sezení"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Nejste na seznamu?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(např. uživatel nebo %s)"
@ -365,12 +352,12 @@ msgstr "(např. uživatel nebo %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Uživatelské jméno: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Přihlašovací okno"
@ -419,7 +406,7 @@ msgstr "včera, %k%M"
#: ../js/misc/util.js:203
#, no-c-format
msgid "%A, %H%M"
msgstr "%A %k%M"
msgstr "%A, %k%M"
#. Translators: this is the month name and day number
#. followed by a time string in 24h format.
@ -447,14 +434,14 @@ msgstr "%l%M%p"
#: ../js/misc/util.js:226
#, no-c-format
msgid "Yesterday, %l%M %p"
msgstr "včera %l%M%p"
msgstr "včera, %l%M%p"
#. Translators: this is the week day name followed by a time
#. string in 12h format. i.e. "Monday, 2:30 pm"
#: ../js/misc/util.js:232
#, no-c-format
msgid "%A, %l%M %p"
msgstr "%A %l%M%p"
msgstr "%A, %l%M%p"
#. Translators: this is the month name and day number
#. followed by a time string in 12h format.
@ -462,7 +449,7 @@ msgstr "%A %l%M%p"
#: ../js/misc/util.js:238
#, no-c-format
msgid "%B %d, %l%M %p"
msgstr "%e. %B %l%M%p"
msgstr "%e. %B, %l%M%p"
#. Translators: this is the month name, day number, year
#. number followed by a time string in 12h format.
@ -506,36 +493,16 @@ msgstr "Přidat mezi oblíbené"
msgid "Show Details"
msgstr "Zobrazit podrobnosti"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s byl přidán mezi oblíbené."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s byl odstraněn z oblíbených."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Výběr zvukového zařízení"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Nastavení zvuku"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Sluchátka"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Sluchátka s mikrofonem"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Změnit pozadí…"
@ -549,7 +516,7 @@ msgid "Settings"
msgstr "Nastavení"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -559,98 +526,96 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "Ne"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "Po"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "Út"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "St"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "Čt"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "Pá"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "So"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Předchozí měsíc"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Následující měsíc"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%e"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "%V. týden"
msgstr "Týden %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Celý den"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Vymazat část"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Události"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e. %B"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e. %B %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Upozornění"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "Nejsou žádná upozornění"
msgstr "Žádná upozornění"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "Nejsou žádné události"
msgstr "Žádné události"
#: ../js/ui/components/automountManager.js:91
msgid "External drive connected"
@ -660,10 +625,10 @@ msgstr "Externí svazek připojen"
msgid "External drive disconnected"
msgstr "Externí svazek odpojen"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "Otevřít pomocí %s"
msgstr "Otevřít s %s"
#: ../js/ui/components/keyring.js:120 ../js/ui/components/polkitAgent.js:315
msgid "Password:"
@ -811,7 +776,7 @@ msgstr "Oblíbené"
#.
#: ../js/ui/dateMenu.js:73
msgid "%B %e %Y"
msgstr "%e. %B %Y"
msgstr "%e. %B, %Y"
# Not sure whether we've enough space for it, but anyway, looks more aesthetically with "%A".
#. Translators: This is the accessible name of the date button shown
@ -820,7 +785,7 @@ msgstr "%e. %B %Y"
#.
#: ../js/ui/dateMenu.js:80
msgid "%A %B %e %Y"
msgstr "%A, %e. %B %Y"
msgstr "%A, %e. %B, %Y"
#: ../js/ui/dateMenu.js:160
msgid "Add world clocks…"
@ -982,11 +947,11 @@ msgid "Keyboard"
msgstr "Klávesnice"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Skrýt pořadač"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Stavové ikony"
@ -1038,26 +1003,10 @@ msgstr "Zobrazit zdroj"
msgid "Web Page"
msgstr "Webová stránka"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Vymazat část"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Informace o systému"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Neznámý umělec"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Neznámý název"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Multimédia"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Zpět"
@ -1072,24 +1021,24 @@ msgstr "Přehled"
#. characters.
#: ../js/ui/overview.js:244
msgid "Type to search…"
msgstr "vyhledávejte psaním…"
msgstr "Vyhledávejte psaním…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Ukončit"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Činnosti"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:650
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Systém"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Horní lišta"
@ -1102,15 +1051,15 @@ msgstr "Horní lišta"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Zadejte příkaz:"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Zavřít"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Restartuje se…"
@ -1235,16 +1184,19 @@ msgstr "Vysoký kontrast"
msgid "Large Text"
msgstr "Styl velkého textu"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Vypnout"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Nastavení Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
@ -1252,25 +1204,10 @@ msgstr[0] "%d připojené"
msgstr[1] "%d připojená"
msgstr[2] "%d připojených"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Vypnuto"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Nepoužívá se"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Zapnout"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Vypnout"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Jas"
@ -1279,49 +1216,29 @@ msgstr "Jas"
msgid "Show Keyboard Layout"
msgstr "Zobrazit rozložení klávesnice"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Zjišťování polohy je povoleno"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Zakázát"
msgstr "Zakázáno"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Nastavení ochrany osobních údajů"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Zjišťování polohy se používá"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Zjišťování polohy je zakázáno"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Povolit"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Zamítnout přístup"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Schválit přístup"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Schválit pro %s přístup k vaší poloze?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Přístup ke službám pro určování polohy lze kdykoliv změnit v nastavení "
"soukromí."
msgstr "Povoleno"
#: ../js/ui/status/network.js:101
msgid "<unknown>"
@ -1458,6 +1375,10 @@ msgstr "Vybrat síť"
msgid "Wi-Fi Settings"
msgstr "Nastavení WiFi"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Zapnout"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1507,37 +1428,32 @@ msgstr "Připojení selhalo"
msgid "Activation of network connection failed"
msgstr "Aktivace síťového připojení selhala"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Nastavení napájení"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Plně nabito"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Odhaduje se…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "Zbývá %d%02d (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d do nabití (%d%%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
#. changing the menu contents.
@ -1577,6 +1493,10 @@ msgstr "Hlasitost změněna"
msgid "Volume"
msgstr "Hlasitost"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Přihlásit se jako jiný uživatel"
@ -1736,27 +1656,24 @@ msgstr "Použít pro přihlašovací obrazovku zadaný režim, např. „gdm“.
msgid "List possible modes"
msgstr "Vypsat možné režimy"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Neznámé"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Nelze spustit „%s“"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Hesla si neodpovídají."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Heslo nemůže být prázdné."
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Dialogové okno ověření bylo uživatelem zrušeno"
#~ msgid "%s is requesting access to your location."
#~ msgstr "Aplikace %s žádá o přístup k informacím o vaší poloze."

351
po/da.po
View File

@ -1,9 +1,9 @@
# Danish translation of gnome-shell
# Copyright (C) 2010-2011, 2014-2016 gnome-shell
# Copyright (C) 2010-2011, 2014-2015 gnome-shell
# This file is distributed under the same license as the gnome-shell package.
#
# Kenneth Nielsen <k.nielsen81@gmail.com>, 2012.
# Kris Thomsen <mail@kristhomsen.dk>, 2009-2014, 2016.
# Kris Thomsen <mail@kristhomsen.dk>, 2009-2014.
# Ask Hjorth Larsen <asklarsen@gmail.com>, 2014, 2015.
#
# Konventioner:
@ -20,9 +20,9 @@ msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-03-20 23:45+0100\n"
"PO-Revision-Date: 2016-03-20 03:13+0100\n"
"Last-Translator: Kris Thomsen\n"
"POT-Creation-Date: 2015-10-11 18:34+0200\n"
"PO-Revision-Date: 2015-10-11 18:33+0200\n"
"Last-Translator: scootergrisen\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\n"
"MIME-Version: 1.0\n"
@ -54,6 +54,15 @@ msgstr "Vis alle programmer"
msgid "Open the application menu"
msgstr "Åbn program-menuen"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Vindueshåndtering og åbning af programmer"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "Udvidelsesmodulindstillinger for GNOME Shell"
@ -62,13 +71,9 @@ msgstr "Udvidelsesmodulindstillinger for GNOME Shell"
msgid "Configure GNOME Shell Extensions"
msgstr "Konfigurér udvidelsesmoduler til GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Vindueshåndtering og åbning af programmer"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (wayland-sammensætter)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -175,94 +180,76 @@ msgstr ""
"standard-værdien af denne tjekboks."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Om standard Bluetooth-adapteren er indstillet til at have enheder tilknyttet"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"Shell'en vil kun vise menupunktet Bluetooth, hvis en Bluetooth-adapter er "
"tændt, eller hvis der er enheder tilknyttet standard adapteren. Dette vil "
"kun blive nulstillet hvis standard adapteren på et tidspunkt, ikke længere "
"har enheder tilknyttet."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Vis ugenummer i kalenderen"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Hvis sand vises ISO-ugenummeret i kalenderen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Genvejstast til at åbne program-menuen"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Genvejstast til at åbne program-menuen."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Genvejstast til at åbne \"Vis programmer\"-visningen"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Genvejstast til at åbne \"Vis programmer\"-visningen i Aktivitets-"
"overblikket."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Genvejstast til at åbne overblikket"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Genvejstast til at åbne Aktivitetsoverblikket."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Genvejstast til at slå synligheden af påmindelseslisten til eller fra"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Genvejstast til at slå synligheden af påmindelseslisten til eller fra."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Genvejstast til at fokusere på den aktive påmindelse"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Genvejstast til at fokusere på den aktive påmindelse."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Genvejstast, som pauser og genstarter alle kørende animationer, til "
"fejlsøgningsformål"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Hvilket tastatur bruges"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Tastaturtypen som bruges."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Begræns skifteren til det nuværende arbejdsområde."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -270,11 +257,11 @@ msgstr ""
"Hvis sand, vises kun programmer, som har vinduer på det nuværende "
"arbejdsområde, i skifteren. Ellers er alle programmer inkluderet."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Ikon-tilstanden for programmet."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -284,7 +271,7 @@ msgstr ""
"er \"thumbnail-only\" (viser forhåndsvisning af vinduet), \"app-icon-only"
"\" (viser kun programikonet) eller \"both\" (begge)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -292,29 +279,29 @@ msgstr ""
"Hvis sand, vises kun vinduer fra det nuværende arbejdsområde i skifteren. "
"Ellers er alle programmer inkluderet."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Hæft modal dialog til overliggende vindue"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Denne nøgle overstyrer nøglen i org.gnome.mutter, når du kører GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Aktivér kant-fliselægning, når vinduer placeres ved skærmkanter"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Arbejdsområder er håndteret dynamisk"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Arbejdsområder kun på den primære skærm"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Forsink fokusændringer i musetilstand indtil pegeren holder op med at bevæge "
@ -324,52 +311,51 @@ msgstr ""
msgid "Network Login"
msgstr "Netværksindlogning"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Der opstod in fejl ved indlæsning af indstillingsdialogen for %s:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Udvidelsesmoduler til GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Annullér"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Næste"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Lås op"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Log ind"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Vælg session"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Ikke listet?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(f.eks. bruger eller %s)"
@ -377,12 +363,12 @@ msgstr "(f.eks. bruger eller %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Brugernavn: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Indlogningsvindue"
@ -518,36 +504,16 @@ msgstr "Føj til favoritter"
msgid "Show Details"
msgstr "Vis detaljer"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s er blevet føjet til dine favoritter."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s er blevet fjernet fra dine favoritter."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Vælg lydenhed"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Indstillinger for lyd"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Hovedtelefoner"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Headset"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Skift baggrund…"
@ -561,7 +527,7 @@ msgid "Settings"
msgstr "Indstillinger"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -571,96 +537,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "S"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "M"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "O"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "F"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "L"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Forrige måned"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Næste måned"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Uge %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Hele dagen"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Ryd afsnit"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Begivenheder"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d. %B"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d. %B %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Beskeder"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "Ingen påmindelser"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "Ingen begivenheder"
@ -672,7 +636,7 @@ msgstr "Eksternt drev tilkoblet"
msgid "External drive disconnected"
msgstr "Eksternt drev frakoblet"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:351
#, javascript-format
msgid "Open with %s"
msgstr "Åbn med %s"
@ -798,7 +762,7 @@ msgstr "Beklager, godkendelse mislykkedes. Prøv igen."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:760
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s kalder sig nu %s"
@ -983,11 +947,11 @@ msgid "Keyboard"
msgstr "Tastatur"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Skjul statusfelt"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Statusikoner"
@ -1039,26 +1003,10 @@ msgstr "Vis kilde"
msgid "Web Page"
msgstr "Webside"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Ryd afsnit"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Systeminformation"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Ukendt kunstner"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Ukendt titel"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Medier"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Fortryd"
@ -1085,12 +1033,12 @@ msgstr "Afslut"
msgid "Activities"
msgstr "Aktiviteter"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:660
msgctxt "System menu in the top bar"
msgid "System"
msgstr "System"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:764
msgid "Top Bar"
msgstr "Toppanel"
@ -1103,15 +1051,15 @@ msgstr "Toppanel"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Indtast en kommando"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Luk"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Genstarter…"
@ -1234,41 +1182,29 @@ msgstr "Høj kontrast"
msgid "Large Text"
msgstr "Stor tekst"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Sluk"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Indstillinger for Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d forbundet"
msgstr[1] "%d forbundet"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Slukket"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Ikke i brug"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Tænd"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Sluk"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Lysstyrke"
@ -1277,49 +1213,30 @@ msgstr "Lysstyrke"
msgid "Show Keyboard Layout"
msgstr "Vis tastaturlayout"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Placering aktiveret"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Slå fra"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Indstillinger for privatliv"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Placering i brug"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Placering deaktiveret"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Slå til"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Forbyd adgang"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Giv adgang"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Giv %s adgang til din placering?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Placeringsadgang kan ændres når som helst via privatlivsindstillingerne."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<ukendt>"
@ -1455,6 +1372,10 @@ msgstr "Vælg netværk"
msgid "Wi-Fi Settings"
msgstr "Indstillinger for trådløs"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Tænd"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1504,36 +1425,31 @@ msgstr "Forbindelse mislykkedes"
msgid "Activation of network connection failed"
msgstr "Aktivering af netværksforbindelse mislykkedes"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Indstillinger for strømstyring"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Fuldt opladet"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Udregner…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d tilbage (%d %%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d tilbage (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d indtil fuld (%d %%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d indtil fuld (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1574,6 +1490,10 @@ msgstr "Lydstyrke ændret"
msgid "Volume"
msgstr "Lydstyrke"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofon"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Log ind som en anden bruger"
@ -1730,39 +1650,39 @@ msgstr "Brug en specifik tilstand, f.eks. \"gdm\" til logind-skærm"
msgid "List possible modes"
msgstr "Vis mulige tilstande"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Ukendt"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Kunne ikke køre “%s”"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Adgangskoder er ikke ens."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Adgangskode må ikke være tom"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Godkendelsesdialogen blev afvist af brugeren"
#~ msgid "%s is requesting access to your location."
#~ msgstr "%s spørger efter adgang til din placering."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "GNOME Shell (wayland-sammensætter)"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "%d forbundet enhed"
#~ msgstr[1] "%d forbundne enheder"
#~ msgid "Off"
#~ msgstr "Slukket"
#~ msgid "Authentication required"
#~ msgstr "Godkendelse påkrævet"
@ -1970,6 +1890,9 @@ msgstr "Godkendelsesdialogen blev afvist af brugeren"
#~ msgid "View account"
#~ msgstr "Vis konto"
#~ msgid "Unknown reason"
#~ msgstr "Ukendt årsag"
#~ msgid "Open Calendar"
#~ msgstr "Åbn kalender"
@ -2092,6 +2015,9 @@ msgstr "Godkendelsesdialogen blev afvist af brugeren"
#~ msgid "Device %s wants access to the service '%s'"
#~ msgstr "Enheden %s ønsker adgang til tjenesten \"%s\""
#~ msgid "Always grant access"
#~ msgstr "Giv altid adgang"
#~ msgid "Grant this time only"
#~ msgstr "Giv kun lov denne gang"
@ -2264,6 +2190,9 @@ msgstr "Godkendelsesdialogen blev afvist af brugeren"
#~ msgid "Visibility"
#~ msgstr "Synlighed"
#~ msgid "Send Files to Device…"
#~ msgstr "Send filer til enhed…"
#~ msgid "Set Up a New Device…"
#~ msgstr "Indstil en ny enhed…"
@ -2341,6 +2270,10 @@ msgstr "Godkendelsesdialogen blev afvist af brugeren"
#~ msgstr[0] "%d minut tilbage"
#~ msgstr[1] "%d minutter tilbage"
#~ msgctxt "percent of battery remaining"
#~ msgid "%d%%"
#~ msgstr "%d%%"
#~ msgid "AC Adapter"
#~ msgstr "AC-adapter"

752
po/de.po

File diff suppressed because it is too large Load Diff

343
po/el.po
View File

@ -7,8 +7,8 @@ msgstr ""
"Project-Id-Version: gnome-shell.po.master\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-03-11 10:19+0000\n"
"PO-Revision-Date: 2016-03-12 11:18+0200\n"
"POT-Creation-Date: 2015-09-29 20:37+0000\n"
"PO-Revision-Date: 2015-09-30 10:37+0300\n"
"Last-Translator: Tom Tryfonidis <tomtryf@gmail.com>\n"
"Language-Team: www.gnome.gr\n"
"Language: el\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.7\n"
"X-Generator: Poedit 1.8.4\n"
"X-DamnedLies-Scope: partial\n"
"X-Poedit-SourceCharset: utf-8\n"
"X-Project-Style: gnome\n"
@ -45,6 +45,15 @@ msgstr "Εμφάνιση όλων των εφαρμογών"
msgid "Open the application menu"
msgstr "Άνοιγμα του μενού εφαρμογών"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Διαχείριση παραθύρων και εκκίνηση εφαρμογών"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "Προτιμήσεις επεκτάσεων του GNOME Shell"
@ -53,13 +62,9 @@ msgstr "Προτιμήσεις επεκτάσεων του GNOME Shell"
msgid "Configure GNOME Shell Extensions"
msgstr "Ρύθμιση επεκτάσεων του GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Διαχείριση παραθύρων και εκκίνηση εφαρμογών"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (συνθετητής wayland)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -154,7 +159,7 @@ msgstr ""
msgid ""
"Whether to remember password for mounting encrypted or remote filesystems"
msgstr ""
"Αν θα θυμάται τον κωδικό πρόσβασης για προσάρτηση κρυπτογραφημένων ή "
"Εάν θα θυμάται τον κωδικό πρόσβασης για προσάρτηση κρυπτογραφημένων ή "
"απομακρυσμένων συστημάτων αρχείων"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
@ -171,95 +176,77 @@ msgstr ""
"ορίζει την προεπιλεγμένη κατάσταση του πλαισίου ελέγχου."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Αν ο προεπιλεγμένος προσαρμογέας Bluetooth έχει ρυθμιστεί με συσχετισμένες "
"συσκευές"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"Το κέλυφος θα εμφανίσει ένα μενού Bluetooth αν είναι ενεργός ο προσαρμογέας, "
αν υπάρχουν συσχετισμένες συσκευές με αυτόν. Αυτό θα επαναφερθεί αν δεν "
"υπάρχουν συσχετισμένες συσκευές με τον προσαρμογέα."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Εμφάνιση του αριθμού εβδομάδας στο ημερολόγιο"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr ""
"Αν είναι αληθές, εμφανίζει τον αριθμό εβδομάδας κατά ISO στο ημερολόγιο."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Συνδυασμός πλήκτρων για το άνοιγμα του μενού εφαρμογών"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Συνδυασμός πλήκτρων για το άνοιγμα του μενού εφαρμογών."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Συνδυασμός πλήκτρων για το άνοιγμα της προβολής \"Εμφάνιση εφαρμογών\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Συνδυασμός πλήκτρων για το άνοιγμα της προβολής \"Εμφάνιση εφαρμογών\" της "
"επισκόπησης Δραστηριοτήτων."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Συνδυασμός πλήκτρων για το άνοιγμα της επισκόπησης"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Συνδυασμός πλήκτρων για το άνοιγμα της επισκόπησης Δραστηριοτήτων."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Συνδυασμός πλήκτρων για εναλλαγή ορατότητας της λίστας ειδοποιήσεων"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Συνδυασμός πλήκτρων για εναλλαγή ορατότητας της λίστας ειδοποιήσεων."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Συνδυασμός πλήκτρων για εστίαση της ενεργής ειδοποίησης"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Συνδυασμός πλήκτρων για εστίαση της ενεργής ειδοποίησης."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Συνδυασμός πλήκτρων που κάνει παύση και συνέχιση όλων των tween που "
"εκτελούνται, για σκοπούς αποσφαλμάτωσης"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Ποιο πληκτρολόγιο θα χρησιμοποιηθεί"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Ο τύπος του πληκτρολογίου που θα χρησιμοποιηθεί."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Περιορισμός εναλλαγής παραθύρων στον τρέχοντα χώρο εργασίας."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -268,11 +255,11 @@ msgstr ""
"εργασίας εμφανίζονται κατά την εναλλαγή παραθύρων. Αλλιώς, θα "
"περιλαμβάνονται όλες οι εφαρμογές."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Η λειτουργία εικονιδίου εφαρμογής."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -283,7 +270,7 @@ msgstr ""
"παραθύρου), 'app-icon-only' (εμφανίζει μόνο το εικονίδιο της εφαρμογής) ή "
"'both' - και τα δύο."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -291,32 +278,32 @@ msgstr ""
"Αν είναι αληθές, μόνο παράθυρα του τρέχοντα χώρου εργασίας εμφανίζονται κατά "
"την εναλλαγή παραθύρων. Αλλιώς, θα περιλαμβάνονται όλα τα παράθυρα."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Προσάρτηση αποκλειστικού διαλόγου στο γονικό παράθυρο"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Αυτό το κλειδί υπερισχύει του κλειδιού που υπάρχει στο org.gnome.mutter όταν "
"εκτελείται το GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Ενεργοποίηση της προσάρτησης άκρων, όταν αφήνετε παράθυρα στις άκρες της "
"οθόνης"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Η διαχείριση των χώρων γίνεται δυναμικά"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Χώροι εργασίας μόνο στην κύρια οθόνη"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Καθυστέρηση εστίασης αλλαγών στην λειτουργία ποντικιού μέχρι να σταματήσει "
@ -326,54 +313,53 @@ msgstr ""
msgid "Network Login"
msgstr "Σύνδεση δικτύου"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr ""
"Προέκυψε ένα σφάλμα κατά τη φόρτωση του παραθύρου διαλόγου των προτιμήσεων "
"για %s:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Επεκτάσεις GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Ακύρωση"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Επόμενο"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Ξεκλείδωμα"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Σύνδεση"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Επιλογή συνεδρίας"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Δεν είστε στη λίστα;"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(π.χ, χρήστης ή %s)"
@ -381,12 +367,12 @@ msgstr "(π.χ, χρήστης ή %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Όνομα χρήστη: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Παράθυρο σύνδεσης"
@ -522,36 +508,16 @@ msgstr "Προσθήκη στα αγαπημένα"
msgid "Show Details"
msgstr "Εμφάνιση λεπτομερειών"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "Το %s προστέθηκε στα αγαπημένα σας."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "Το %s αφαιρέθηκε από τα αγαπημένα σας."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Επιλογή συσκευής εισόδου ήχου"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Ρυθμίσεις ήχου"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Ακουστικά"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Ακουστικά ανοιχτής συνομιλίας"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Μικρόφωνο"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Αλλαγή παρασκηνίου…"
@ -565,7 +531,7 @@ msgid "Settings"
msgstr "Ρυθμίσεις"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -575,96 +541,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "Κυ"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "Δε"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "Τρ"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "Τε"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "Πε"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "Πα"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "Σα"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Προηγούμενος μήνας"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Επόμενος μήνας"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Εβδομάδα %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Όλη μέρα"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Εκκαθάριση περιοχής"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Συμβάντα"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d %B, %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Ειδοποιήσεις"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "Καμία ειδοποίηση"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "Κανένα συμβάν"
@ -676,7 +640,7 @@ msgstr "Συνδέθηκε εξωτερικός δίσκος"
msgid "External drive disconnected"
msgstr "Αποσυνδέθηκε εξωτερικός δίσκος"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "Άνοιγμα με %s"
@ -991,11 +955,11 @@ msgid "Keyboard"
msgstr "Πληκτρολόγιο"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Απόκρυψη περιοχής ειδοποιήσεων"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Εικονίδια κατάστασης"
@ -1047,26 +1011,10 @@ msgstr "Προβολή πηγής"
msgid "Web Page"
msgstr "Ιστοσελίδα"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Εκκαθάριση περιοχής"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Πληροφορίες συστήματος"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Άγνωστος καλλιτέχνης"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Άγνωστος τίτλος"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Πολυμέσα"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Αναίρεση"
@ -1083,22 +1031,22 @@ msgstr "Επισκόπηση"
msgid "Type to search…"
msgstr "Πληκτρολογήστε για αναζήτηση…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Έξοδος"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Δραστηριότητες"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:650
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Σύστημα"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Πάνω μπάρα"
@ -1111,15 +1059,15 @@ msgstr "Πάνω μπάρα"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Πληκτρολογήστε μια εντολή"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Κλείσιμο"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Επανεκκίνηση…"
@ -1242,41 +1190,29 @@ msgstr "Υψηλή αντίθεση"
msgid "Large Text"
msgstr "Μεγάλο κείμενο"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Σβήσιμο"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Ρυθμίσεις Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "Συνδέθηκε %d"
msgstr[1] "Συνδέθηκαν %d"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Εκτός σύνδεσης"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Εκτός χρήσης"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Ενεργοποίηση"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Σβήσιμο"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Φωτεινότητα"
@ -1285,50 +1221,30 @@ msgstr "Φωτεινότητα"
msgid "Show Keyboard Layout"
msgstr "Εμφάνιση διάταξης πληκτρολογίου"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Ενεργοποιήθηκε η τοποθεσία"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Απενεργοποίηση"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Ρυθμίσεις ιδιωτικότητας"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Τοποθεσία σε χρήση"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Απενεργοποιήθηκε η τοποθεσία"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Ενεργοποίηση"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Άρνηση πρόσβασης"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Παραχώρηση πρόσβασης"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Παραχώρηση της τοποθεσίας σας στο %s;"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Η πρόσβαση τοποθεσίες μπορεί να αλλαχθεί οπιαδήποτε στιγμή από τις ρυθμίσεις "
"ιδιωτικότητας."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<άγνωστο>"
@ -1465,6 +1381,10 @@ msgstr "Επιλογή δικτύου"
msgid "Wi-Fi Settings"
msgstr "Ρυθμίσεις Wi-Fi"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Ενεργοποίηση"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1514,36 +1434,31 @@ msgstr "Αποτυχία σύνδεσης"
msgid "Activation of network connection failed"
msgstr "Απέτυχε η ενεργοποίηση της σύνδεσης δικτύου"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Ρυθμίσεις τροφοδοσίας"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Πλήρως φορτισμένη"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Εκτίμηση…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d Απομένει (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d Απομένει (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d Πλήρης μέχρι (%d%%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d Πλήρης μέχρι (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1584,6 +1499,10 @@ msgstr "Άλλαξε η ένταση"
msgid "Volume"
msgstr "Ένταση"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Μικρόφωνο"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Σύνδεση ως άλλος χρήστης"
@ -1741,39 +1660,39 @@ msgstr ""
msgid "List possible modes"
msgstr "Λίστα πιθανών λειτουργιών"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Άγνωστο"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Αποτυχία εκκίνησης του “%s”"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Οι κωδικοί πρόσβασης δεν ταιριάζουν."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Ο κωδικός πρόσβασης δεν μπορεί να είναι κενός"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Το παράθυρο πιστοποίησης έκλεισε από τον χρήστη"
#~ msgid "%s is requesting access to your location."
#~ msgstr "Το %s ζητά πρόσβαση στην τοποθεσία σας."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "GNOME Shell (συνθετητής wayland)"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "%d συνδεδεμένη συσκευή"
#~ msgstr[1] "%d συνδεδεμένες συσκευές"
#~ msgid "Off"
#~ msgstr "Εκτός σύνδεσης"
#~ msgid "Authentication required"
#~ msgstr "Απαιτείται πιστοποίηση"
@ -2372,6 +2291,10 @@ msgstr "Το παράθυρο πιστοποίησης έκλεισε από τ
#~ msgstr[0] "%d λεπτό απομένει"
#~ msgstr[1] "%d λεπτά απομένουν"
#~ msgctxt "percent of battery remaining"
#~ msgid "%d%%"
#~ msgstr "%d%%"
#~ msgid "AC Adapter"
#~ msgstr "Μετασχηματιστής εναλλασσόμενου"

File diff suppressed because it is too large Load Diff

1726
po/eo.po

File diff suppressed because it is too large Load Diff

410
po/es.po
View File

@ -4,15 +4,15 @@
# Jorge González <jorgegonz@svn.gnome.org>, 2009, 2010, 2011.
# Benjamín Valero Espinosa <benjavalero@gmail.com>, 2011.
#
# Daniel Mustieles <daniel.mustieles@gmail.com>, 2010, 2011, 2012, 2013, 2014, 2015.
# Daniel Mustieles <daniel.mustieles@gmail.com>, 2010, 2011, 2012, 2013, 2014, 2015.
, 2015.
#
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: 2016-06-30 09:43+0000\n"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-10-04 20:38+0000\n"
"PO-Revision-Date: 2015-10-05 09:45+0200\n"
"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
"Language-Team: Español; Castellano <gnome-es-list@gnome.org>\n"
@ -46,6 +46,15 @@ msgstr "Mostrar todas las aplicaciones"
#: ../data/50-gnome-shell-system.xml.in.h:6
msgid "Open the application menu"
msgstr "Abrir el menú de la aplicación"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Gestión de ventanas e inicio de aplicaciones"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
@ -54,13 +63,9 @@ msgstr "Preferencias de las extensiones de GNOME Shell"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:2
msgid "Configure GNOME Shell Extensions"
msgstr "Configurar las extensiones de GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (composición wayland)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
@ -171,23 +176,12 @@ msgstr ""
"en un futuro, se mostrará la casilla «Recordar contraseña». Esta clave "
"establece el valor predeterminado de la casilla."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Indica si el adaptador Bluetooth predeterminado tiene dispositivos asociados "
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Show the week date in the calendar"
msgstr "Mostrar la fecha de la semana en el calendario"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"La shell sólo mostrará un menú de Bluetooth si hay conectado un adaptador de "
"Bluetooth, o si hay dispositivos asociados configurados con el adaptador "
"predeterminado. Esto se restablecerá si se ve que el adaptador "
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Si es cierta, muestra la fecha de semana ISO en el calendario."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
@ -319,52 +313,51 @@ msgstr ""
#: ../data/org.gnome.Shell.PortalHelper.desktop.in.h:1
msgid "Network Login"
msgstr "Inicio de sesión de la red"
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Hubo un error al lanzar el diálogo de preferencias para %s:"
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Extensiones de GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Cancelar"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Siguiente"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Desbloquear"
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Iniciar sesión"
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Elegir sesión"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#. manually entering the username.
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "¿No está en la lista?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
@ -372,12 +365,12 @@ msgstr "(ej., usuario o %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Nombre de usuario:"
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Ventana de inicio de sesión"
@ -513,36 +506,16 @@ msgstr "Añadir a los favoritos"
#: ../js/ui/appDisplay.js:1897
msgid "Show Details"
msgstr "Mostrar detalles"
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "Se ha añadido %s a sus favoritos."
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "Se ha quitado %s de sus favoritos."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Seleccionar dispositivo de sonido"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Configuración de sonido"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Auriculares"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Manos libres"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Micrófono"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
@ -551,12 +524,12 @@ msgstr "Cambiar el fondo…"
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "Configuración de pantalla"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:366
msgid "Settings"
msgstr "Configuración"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
@ -566,96 +539,94 @@ msgstr "06"
#. *
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#.
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "D"
#. Translators: Calendar grid abbreviation for Monday
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "L"
#. Translators: Calendar grid abbreviation for Tuesday
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "M"
#. Translators: Calendar grid abbreviation for Wednesday
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "X"
#. Translators: Calendar grid abbreviation for Thursday
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "J"
#. Translators: Calendar grid abbreviation for Friday
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "V"
#. Translators: Calendar grid abbreviation for Saturday
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Mes anterior"
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Siguiente mes"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Semana %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#.
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Todo el día"
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Limpiar la sección"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Eventos"
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d de %B de %Y"
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Notificaciones"
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "No hay notificaciones"
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "No hay eventos"
@ -667,7 +638,7 @@ msgstr "Dispositivo externo conectado"
#: ../js/ui/components/automountManager.js:102
msgid "External drive disconnected"
msgstr "Dispositivo externo desconectado"
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
@ -793,7 +764,7 @@ msgstr "Inténtelo de nuevo,"
msgstr "Inténtelo de nuevo,"
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#. IM name.
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
@ -926,7 +897,7 @@ msgstr[1] ""
msgstr[1] ""
"El sistema se reiniciará automáticamente e instalará las actualizaciones en "
"%d segundos."
#: ../js/ui/endSessionDialog.js:127
msgctxt "button"
msgid "Restart &amp; Install"
@ -941,47 +912,27 @@ msgctxt "checkbox"
msgctxt "checkbox"
msgid "Power off after updates are installed"
msgstr "Apagar después de instalar las actualizaciones"
#: ../js/ui/endSessionDialog.js:137
#| msgctxt "title"
#| msgid "Restart & Install Updates"
msgctxt "title"
msgid "Restart & Install Upgrade"
msgstr "Reiniciar e instalar actualizaciones"
#. Translators: This is the text displayed for system upgrades in the
#. shut down dialog. First %s gets replaced with the distro name and
#. second %s with the distro version to upgrade to
#: ../js/ui/endSessionDialog.js:142
#, javascript-format
msgid ""
"%s %s will be installed after restart. Upgrade installation can take a long "
"time: ensure that you have backed up and that the computer is plugged in."
msgstr ""
"%s %s se instalará después de reiniciar. La instalación de la actualización "
"puede tardar mucho tiempo: asegúrese de que tiene una copia de respaldo y de "
"que el equipo está enchufado."
#: ../js/ui/endSessionDialog.js:338
msgid "Running on battery power: please plug in before installing updates."
msgstr ""
"Funcionando con batería: conéctese antes de instalar las actualizaciones."
#: ../js/ui/endSessionDialog.js:355
msgid "Some applications are busy or have unsaved work."
msgstr "Algunas aplicaciones están ocupadas o tienen trabajo sin guardar."
#: ../js/ui/endSessionDialog.js:362
msgid "Other users are logged in."
msgstr "Hay otros usuarios con la sesión iniciada"
#. Translators: Remote here refers to a remote session, like a ssh login
#. Translators: Remote here refers to a remote session, like a ssh login
#: ../js/ui/endSessionDialog.js:640
#, javascript-format
msgid "%s (remote)"
msgstr "%s (remoto)"
#. Translators: Console here refers to a tty like a VT console
#. Translators: Console here refers to a tty like a VT console
#: ../js/ui/endSessionDialog.js:643
#, javascript-format
msgid "%s (console)"
@ -995,16 +946,16 @@ msgstr "Instalar"
#, javascript-format
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "¿Descargar e instalar «%s» desde extensions.gnome.org?"
#: ../js/ui/keyboard.js:741 ../js/ui/status/keyboard.js:713
msgid "Keyboard"
msgstr "Teclado"
#. translators: 'Hide' is a verb
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Ocultar bandeja"
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Iconos de estado"
@ -1032,7 +983,7 @@ msgstr "Activado"
msgstr "Activado"
#. translators:
#. * The device has been disabled
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1828
msgid "Disabled"
msgstr "Desactivado"
@ -1056,31 +1007,15 @@ msgstr "Ver fuente"
#: ../js/ui/lookingGlass.js:758
msgid "Web Page"
msgstr "Página web"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Limpiar la sección"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Información del sistema"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Artista desconocido"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Título desconocido"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Medios"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Deshacer"
#: ../js/ui/overview.js:117
msgid "Overview"
msgstr "Vista general"
@ -1088,26 +1023,27 @@ msgstr "Vista general"
#. Translators: this is the text displayed
#. in the search entry when no search is
#. active; it should not exceed ~30
#. characters.
#. characters.
#: ../js/ui/overview.js:244
msgid "Type to search…"
msgstr "Escribir para buscar…"
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Salir"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Actividades"
#: ../js/ui/panel.js:650
#| msgid "System"
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Sistema"
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Barra superior"
@ -1120,15 +1056,15 @@ msgstr "Barra superior"
#: ../js/ui/popupMenu.js:289
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Introducir un comando"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Cerrar"
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Reiniciando…"
@ -1152,11 +1088,11 @@ msgid_plural "%d new notifications"
msgid_plural "%d new notifications"
msgstr[0] "%d notificación nueva"
msgstr[1] "%d notificaciones nuevas"
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:374
msgid "Lock"
msgstr "Bloquear"
#: ../js/ui/screenShield.js:684
msgid "GNOME needs to lock the screen"
msgstr "GNOME necesita bloquear la pantalla"
@ -1167,11 +1103,11 @@ msgstr "GNOME necesita bloquear la pantalla"
#. Just tell him to stop using this app
#.
#. XXX: another option is to kick the user into the gdm login
#. screen, where we're not affected by grabs
#. screen, where we're not affected by grabs
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
msgid "Unable to lock"
msgstr "No se pudo bloquear"
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
msgid "Lock was blocked by an application"
msgstr "Una aplicación impidió el bloqueo"
@ -1251,93 +1187,61 @@ msgstr "Contraste alto"
#: ../js/ui/status/accessibility.js:202
msgid "Large Text"
msgstr "Texto grande"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:56 ../js/ui/status/network.js:624
msgid "Bluetooth Settings"
msgstr "Configuración de Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d conectado"
msgstr[1] "%d conectados"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Desconectado"
#: ../js/ui/status/bluetooth.js:140
msgid "Not In Use"
msgstr "No está en uso"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Encender"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Apagar"
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Configuración de Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d conectado"
msgstr[1] "%d conectados"
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "No está en uso"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Brillo"
#: ../js/ui/status/keyboard.js:736
msgid "Show Keyboard Layout"
msgstr "Mostrar la distribución del teclado"
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Ubicación activada"
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Desactivar"
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Configuración de privacidad"
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Ubicación en uso"
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Ubicación desactivada"
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Activar"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Denegar acceso"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Conceder acceso"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "¿Conceder acceso a %s a su ubicación?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Los servicios de ubicación se pueden cambiar en cualquier momento desde la "
"configuración de privacidad."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
@ -1404,7 +1308,7 @@ msgstr "Falló la conexión %s"
#: ../js/ui/status/network.js:503
msgid "Wired Settings"
msgstr "Configuración de red cableada"
#: ../js/ui/status/network.js:545 ../js/ui/status/network.js:624
msgid "Mobile Broadband Settings"
msgstr "Configuración de banda ancha móvil"
@ -1422,8 +1326,8 @@ msgid "%s Disabled"
msgid "%s Disabled"
msgstr "%s desactivado"
#: ../js/ui/status/network.js:632
msgid "Connect to Internet"
#: ../js/ui/status/network.js:632
msgid "Use as Internet connection"
msgstr "Usar como conexión a Internet"
#: ../js/ui/status/network.js:813
@ -1473,6 +1377,10 @@ msgstr "Seleccionar red"
#: ../js/ui/status/network.js:1177
msgid "Wi-Fi Settings"
msgstr "Configuración de Wi-Fi"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Encender"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
@ -1522,36 +1430,31 @@ msgstr "Falló la conexión"
#: ../js/ui/status/network.js:1698
msgid "Activation of network connection failed"
msgstr "Falló la activación de la conexión de red"
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Configuración de energía"
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Cargada completamente"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#. to estimate battery life
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Estimando…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d queda (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d para la carga completa (%d%%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d para la carga completa (%d%%)"
#. The menu only appears when airplane mode is on, so just
@ -1560,27 +1463,27 @@ msgstr "%d%%"
#: ../js/ui/status/rfkill.js:88
msgid "Airplane Mode On"
msgstr "Modo avión activado"
#: ../js/ui/status/system.js:343
msgid "Switch User"
msgstr "Cambiar de usuario"
#: ../js/ui/status/system.js:348
msgid "Log Out"
msgstr "Cerrar la sesión"
#: ../js/ui/status/system.js:353
msgid "Account Settings"
msgstr "Configuración de la cuenta"
#: ../js/ui/status/system.js:370
msgid "Orientation Lock"
msgstr "Bloqueo de orientación"
#: ../js/ui/status/system.js:378
msgid "Suspend"
msgstr "Suspender"
#: ../js/ui/status/system.js:381
msgid "Power Off"
msgstr "Apagar"
@ -1592,6 +1495,10 @@ msgstr "Volumen modificado"
#: ../js/ui/status/volume.js:162
msgid "Volume"
msgstr "Volumen"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Micrófono"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
@ -1712,7 +1619,7 @@ msgstr "Calendario de Evolution"
msgstr "Calendario de Evolution"
#. translators:
#. * The number of sound outputs on a particular device
#. * The number of sound outputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1835
#, c-format
msgid "%u Output"
@ -1721,14 +1628,14 @@ msgstr[1] "%u salidas"
msgstr[1] "%u salidas"
#. translators:
#. * The number of sound inputs on a particular device
#. * The number of sound inputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1845
#, c-format
msgid "%u Input"
msgid_plural "%u Inputs"
msgstr[0] "%u entrada"
msgstr[1] "%u entradas"
#: ../src/gvc/gvc-mixer-control.c:2371
msgid "System Sounds"
msgstr "Sonidos del sistema"
@ -1750,48 +1657,39 @@ msgstr ""
#: ../src/main.c:399
msgid "List possible modes"
msgstr "Listar los modos posibles"
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Desconocido"
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Falló al lanzar «%s»"
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Las contraseñas no coinciden."
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "La contraseña no puede estar vacía"
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "El usuario rechazó el diálogo de autenticación"
#~ msgid "Show the week date in the calendar"
#~ msgstr "Mostrar la fecha de la semana en el calendario"
#~ msgid "If true, display the ISO week date in the calendar."
#~ msgstr "Si es cierta, muestra la fecha de semana ISO en el calendario."
#~ msgid "Use as Internet connection"
#~ msgstr "Usar como conexión a Internet"
#~ msgid "%s is requesting access to your location."
#~ msgstr "%s solicita acceso a su ubicación."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "%d dispositivo conectado"
#~ msgstr[1] "%d dispositivos conectados"
#~ msgid "Off"
#~ msgstr "Desconectado"
#~ msgid "Authentication required"
#~ msgstr "Autenticación requerida"
@ -1944,6 +1842,9 @@ msgstr "El usuario rechazó el diálogo de autenticación"
#~ msgid "View account"
#~ msgstr "Ver cuenta"
#~ msgid "Unknown reason"
#~ msgstr "Razón desconocida"
#~ msgid "Show the message list"
#~ msgstr "Mostrar la lista de mensajes"
@ -2119,6 +2020,9 @@ msgstr "El usuario rechazó el diálogo de autenticación"
#~ msgid "Device %s wants access to the service '%s'"
#~ msgstr "El dispositivo %s quiere acceder al servicio «%s»"
#~ msgid "Always grant access"
#~ msgstr "Conceder acceso siempre"
#~ msgid "Grant this time only"
#~ msgstr "Conceder sólo esta vez"
@ -2266,6 +2170,9 @@ msgstr "El usuario rechazó el diálogo de autenticación"
#~ msgid "Visibility"
#~ msgstr "Visibilidad"
#~ msgid "Send Files to Device…"
#~ msgstr "Enviar archivos al dispositivo…"
#~ msgid "Set Up a New Device…"
#~ msgstr "Configurar un dispositivo nuevo…"
@ -2322,6 +2229,10 @@ msgstr "El usuario rechazó el diálogo de autenticación"
#~ msgid_plural "%d minutes remaining"
#~ msgstr[0] "Queda %d minuto"
#~ msgstr[1] "Quedan %d minutos"
#~ msgctxt "percent of battery remaining"
#~ msgid "%d%%"
#~ msgstr "%d%%"
#~ msgid "AC Adapter"
#~ msgstr "Adaptador de corriente"
@ -2463,6 +2374,9 @@ msgstr "El usuario rechazó el diálogo de autenticación"
#~ msgid "Subscription request"
#~ msgstr "Solicitud de suscripción"
#~ msgid "Connection error"
#~ msgstr "Error de conexión"
#~ msgid "Sent at <b>%X</b> on <b>%A</b>"
#~ msgstr "Enviado el <b>%A</b> a las <b>%H:%M</b>"

850
po/eu.po

File diff suppressed because it is too large Load Diff

510
po/fa.po

File diff suppressed because it is too large Load Diff

354
po/fi.po
View File

@ -19,15 +19,15 @@
# Timo Jyrinki <timo.jyrinki@iki.fi>, 2009-2011.
# Marko Myllynen <myllynen@redhat.com>, 2011.
# Ville-Pekka Vainio <vpvainio@iki.fi>, 2011.
# Jiri Grönroos <jiri.gronroos+l10n@iki.fi>, 2012, 2013, 2014, 2015, 2016.
# Jiri Grönroos <jiri.gronroos+l10n@iki.fi>, 2012, 2013, 2014, 2015.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-03-13 10:20+0000\n"
"PO-Revision-Date: 2016-03-13 12:32+0200\n"
"POT-Creation-Date: 2015-10-03 20:41+0000\n"
"PO-Revision-Date: 2015-09-05 13:11+0300\n"
"Last-Translator: Jiri Grönroos <jiri.gronroos+l10n@iki.fi>\n"
"Language-Team: suomi <gnome-fi-laatu@lists.sourceforge.net>\n"
"Language: fi\n"
@ -35,7 +35,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Gtranslator 2.91.7\n"
"X-Generator: Gtranslator 2.91.6\n"
"X-DamnedLies-Scope: partial\n"
"X-Project-Style: gnome\n"
"X-POT-Import-Date: 2012-03-05 15:06:10+0000\n"
@ -64,6 +64,15 @@ msgstr "Näytä kaikki sovellukset"
msgid "Open the application menu"
msgstr "Avaa sovellusvalikko"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "Gnome Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Ikkunanhallinta ja sovelluksien käynnistäminen"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "Gnome Shell -laajennusten asetukset"
@ -72,13 +81,9 @@ msgstr "Gnome Shell -laajennusten asetukset"
msgid "Configure GNOME Shell Extensions"
msgstr "Hallitse Gnome Shell -laajennuksia"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "Gnome Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Ikkunanhallinta ja sovelluksien käynnistäminen"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "Gnome Shell (Wayland-komposiointi)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -189,86 +194,73 @@ msgid ""
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Näytä viikonpäivä kalenterissa"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Jos tosi, näytä ISO-viikonpäivät kalenterissa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Sovellusvalikon avaukseen käytettävä pikanäppäin"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Sovellusvalikon avaukseen käytettävä pikanäppäin."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Näytä sovellukset -näkymän avaukseen käytettävä pikanäppäin"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Yleisnäkymän Näytä sovellukset -näkymän avaukseen käytettävä pikanäppäin."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Yleisnäkymän avaukseen käytettävä pikanäppäin"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Yleisnäkymän avaukseen käytettävä pikanäppäin."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Ilmoitusalueen näyttämiseen/piilottamiseen tarkoitettu pikanäppäin"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Ilmoitusluettelon näyttämiseen/piilottamiseen tarkoitettu pikanäppäin."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Aktiiviseen ilmoitukseen kohdistava pikanäppäin"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Aktiiviseen ilmoitukseen kohdistava pikanäppäin."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Mitä näppäimistöä käytetään"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Käytettävän näppäimistön tyyppi."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Rajoita vaihtaja nykyiseen työtilaan."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -277,11 +269,11 @@ msgstr ""
"sijaitsevat nykyisessä työtilassa. Muussa tapauksessa kaikki sovellukset "
"sisällytetään."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Sovelluskuvakkeen tila."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -291,7 +283,7 @@ msgstr ""
"'thumbnail-only' (näyttää ikkunan pienoiskuvan), 'app-icon-only' (näyttää "
"vain sovelluksen kuvakkeen) tai 'both'."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -299,29 +291,29 @@ msgstr ""
"Jos tosi,vain nykyisessä työtilassa olevat ikkunat näytetään vaihtajassa. "
"Muussa tapauksessa kaikki ikkunat näytetään."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Kiinnitä modaali-ikkuna isäntäikkunaan"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Tämä avain syrjäyttää avaimen org.gnome.mutter Gnome Shelliä käyttäessä."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Käytä reunakiinnitystä tiputtaessa ikkunoita näytön reunoille"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Työtilojen hallinta on dynaamista"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Työtilat ainoastaan ensisijaisella näytöllä"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Viivästytä kohdistuksen vaihtumista hiiritilassa, kunnes osoitin lopettaa "
@ -331,52 +323,51 @@ msgstr ""
msgid "Network Login"
msgstr "Verkkokirjautuminen"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Kohteen %s asetusikkunaa ladataessa tapahtui virhe:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "GNOME Shell -laajennukset"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Peru"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Seuraava"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Avaa lukitus"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Kirjaudu sisään"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Valitse istunto"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Ei luettelossa?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(esim. käyttäjä tai %s)"
@ -384,12 +375,12 @@ msgstr "(esim. käyttäjä tai %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Käyttäjänimi: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Kirjautumisikkuna"
@ -525,38 +516,16 @@ msgstr "Lisää suosikkeihin"
msgid "Show Details"
msgstr "Näytä tiedot"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s on lisätty suosikkeihin."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s on poistettu suosikeista."
#: ../js/ui/audioDeviceSelection.js:59
#| msgid "Send Files to Device…"
msgid "Select Audio Device"
msgstr "Valitse äänilaite"
#: ../js/ui/audioDeviceSelection.js:69
#| msgid "Account Settings"
msgid "Sound Settings"
msgstr "Ääniasetukset"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Kuulokkeet"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Headset-kuulokkeet"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofoni"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Muuta työpöydän taustaa…"
@ -570,7 +539,7 @@ msgid "Settings"
msgstr "Asetukset"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -580,98 +549,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "S"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "M"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "K"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "T"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "P"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "L"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Edellinen kuukausi"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Seuraava kuukausi"
#: ../js/ui/calendar.js:579
#, fuzzy, no-javascript-format
#| msgctxt "percent of battery remaining"
#| msgid "%d%%"
msgctxt "date day number format"
msgid "%d"
msgstr "%d %%"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Viikko %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Koko päivä"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Tyhjennä osio"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Tapahtumat"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e. %Bta"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e. %Bta %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Ilmoitukset"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "Ei ilmoituksia"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "Ei tapahtumia"
@ -683,7 +648,7 @@ msgstr "Erillinen asema yhdistetty"
msgid "External drive disconnected"
msgstr "Erillinen asema irrotettu"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "Avaa käyttäen sovellusta %s"
@ -997,11 +962,11 @@ msgid "Keyboard"
msgstr "Näppäimistö"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Piilota palkki"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Tilakuvakkeet"
@ -1053,29 +1018,10 @@ msgstr "Näytä lähde"
msgid "Web Page"
msgstr "Verkkosivusto"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Tyhjennä osio"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Järjestelmän tiedot"
#: ../js/ui/mpris.js:194
#| msgid "Unknown reason"
msgid "Unknown artist"
msgstr "Tuntematon esittäjä"
#: ../js/ui/mpris.js:195
#| msgctxt "program"
#| msgid "Unknown"
msgid "Unknown title"
msgstr "Tuntematon kappale"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Media"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Kumoa"
@ -1092,22 +1038,23 @@ msgstr "Yleisnäkymä"
msgid "Type to search…"
msgstr "Kirjoita hakeaksesi…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Lopeta"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Toiminnot"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:650
#| msgid "System"
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Järjestelmä"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Yläpalkki"
@ -1120,15 +1067,15 @@ msgstr "Yläpalkki"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Syötä komento"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Sulje"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Käynnistetään uudelleen…"
@ -1251,41 +1198,29 @@ msgstr "Korkea kontrasti"
msgid "Large Text"
msgstr "Suuri tekstin koko"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Sammuta"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Bluetooth-asetukset"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d yhdistetty"
msgstr[1] "%d yhdistetty"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Pois"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Ei käytössä"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Ota käyttöön"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Sammuta"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Kirkkaus"
@ -1294,51 +1229,30 @@ msgstr "Kirkkaus"
msgid "Show Keyboard Layout"
msgstr "Näytä näppäimistön asettelu"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Sijainti käytettävissä"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Poista käytöstä"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Yksityisyysasetukset"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Sijainti käytössä"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Sijainti pois käytöstä"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Käytä"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Estä pääsy"
#: ../js/ui/status/location.js:429
#| msgid "Always grant access"
msgid "Grant Access"
msgstr "Salli pääsy"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Saako %s käyttää sijaintitietoasi?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Sijaintitiedon käyttöoikeuksia voi muuttaa milloin tahansa "
"yksityisyysasetuksista."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<tuntematon>"
@ -1474,6 +1388,10 @@ msgstr "Valitse verkko"
msgid "Wi-Fi Settings"
msgstr "Wifin asetukset"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Ota käyttöön"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1523,36 +1441,31 @@ msgstr "Yhteys epäonnistui"
msgid "Activation of network connection failed"
msgstr "Verkkoyhteyden aktivointi epäonnistui"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Virranhallinta"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Ladattu täyteen"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Arvioidaan…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d jäljellä (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d jäljellä (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d kunnes täynnä (%d%%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr ""
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d kunnes täynnä (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1593,6 +1506,10 @@ msgstr "Äänenvoimakkuutta muutettu"
msgid "Volume"
msgstr "Äänenvoimakkuus"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofoni"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Kirjaudu toisena käyttäjänä"
@ -1749,36 +1666,39 @@ msgstr "Käytä tiettyä tilaa (esim. \"gdm\") kirjautumisnäkymää varten"
msgid "List possible modes"
msgstr "Listaa mahdolliset tilat"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Tuntematon"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Sovelluksen ”%s” käynnistäminen epäonnistui"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Salasanat eivät täsmää."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Salasana ei voi olla tyhjä"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Käyttäjä poistui tunnistautumisvalintaikkunasta"
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "Gnome Shell (Wayland-komposiointi)"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "%d yhdistetty laite"
#~ msgstr[1] "%d yhdistettyä laitetta"
#~ msgid "Off"
#~ msgstr "Pois"
#~ msgid "Authentication required"
#~ msgstr "tunnistautuminen vaaditaan"
@ -1980,6 +1900,9 @@ msgstr "Käyttäjä poistui tunnistautumisvalintaikkunasta"
#~ msgid "View account"
#~ msgstr "Näytä tili"
#~ msgid "Unknown reason"
#~ msgstr "Tuntematon syy"
#~ msgid "Open Calendar"
#~ msgstr "Avaa kalenteri"
@ -2056,6 +1979,9 @@ msgstr "Käyttäjä poistui tunnistautumisvalintaikkunasta"
#~ msgid "Device %s wants access to the service '%s'"
#~ msgstr "Laite %s pyytää pääsyä palveluun %s"
#~ msgid "Always grant access"
#~ msgstr "Salli pääsy aina"
#~ msgid "Grant this time only"
#~ msgstr "Salli vain tällä kerralla"
@ -2229,6 +2155,10 @@ msgstr "Käyttäjä poistui tunnistautumisvalintaikkunasta"
#~ msgid "Visibility"
#~ msgstr "Näkyvyys"
#~| msgid "Send Files to Device..."
#~ msgid "Send Files to Device…"
#~ msgstr "Lähetä tiedostoja laitteelle…"
#~| msgid "Set up a New Device..."
#~ msgid "Set Up a New Device…"
#~ msgstr "Asenna uusi laite…"
@ -2309,6 +2239,10 @@ msgstr "Käyttäjä poistui tunnistautumisvalintaikkunasta"
#~ msgstr[0] "%d minuutti jäljellä"
#~ msgstr[1] "%d minuuttia jäljellä"
#~ msgctxt "percent of battery remaining"
#~ msgid "%d%%"
#~ msgstr "%d %%"
#~| msgid "AC adapter"
#~ msgid "AC Adapter"
#~ msgstr "Virtalähde"

335
po/fr.po
View File

@ -13,23 +13,21 @@
# Alexandre Franke <alexandre.franke@gmail.com>, 2012, 2015.
# Mathieu Stumpf <psychoslave@culture-libre.org>, 2013.
# Alain Lojewski <allomervan@gmail.com>, 2014.
# Erwan Georget <egeorget@opmbx.org>, 2016.
#
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master fr\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2016-03-18 10:23+0000\n"
"PO-Revision-Date: 2016-03-18 19:41+0100\n"
"Last-Translator: Erwan Georget <egeorget@opmbx.org>\n"
"POT-Creation-Date: 2015-09-28 20:46+0000\n"
"PO-Revision-Date: 2015-09-28 23:39+0200\n"
"Last-Translator: Alexandre Franke <alexandre.franke@gmail.com>\n"
"Language-Team: français <gnomefr@traduc.org>\n"
"Language: fr\n"
"Language: French\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 1.8.7.1\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -55,6 +53,15 @@ msgstr "Afficher toutes les applications"
msgid "Open the application menu"
msgstr "Ouvrir le menu de l'application"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Gestion des fenêtres et lancement des applications"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "Préférences pour les extensions GNOME Shell"
@ -63,13 +70,9 @@ msgstr "Préférences pour les extensions GNOME Shell"
msgid "Configure GNOME Shell Extensions"
msgstr "Configurer les extensions GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Gestion des fenêtres et lancement des applications"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (gestionnaire de fenêtres composite Wayland)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -183,98 +186,81 @@ msgstr ""
"cocher."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr "Indique si l'adaptateur Bluetooth a des périphériques associés"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"Le shell n'affichera d'élément de menu Bluetooth que si un adaptateur "
"Bluetooth est allumé ou s'il y a des périphériques associés avec "
"l'adaptateur par défaut. Cela sera réinitialisé si l'adaptateur par défaut "
"se retrouve sans aucun périphérique associé."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Afficher la numérotation des semaines dans le calendrier"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Si vrai, afficher le numéro de semaine ISO dans le calendrier."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Combinaison de touches pour ouvrir le menu de l'application"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Combinaison de touches pour ouvrir le menu de l'application."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr ""
"Combinaison de touches pour ouvrir la vue « Afficher les applications »"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Combinaison de touches pour ouvrir la vue « Afficher les applications » de "
"la vue d'ensemble des activités."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Combinaison de touches pour ouvrir la vue d'ensemble"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Combinaison de touches pour ouvrir la vue d'ensemble des applications."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr ""
"Combinaison de touches pour inverser la visibilité de la liste des "
"notifications"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
"Combinaison de touches pour inverser la visibilité de la liste des "
"notifications"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Combinaison de touches pour donner le focus à la notification active"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Combinaison de touches pour donner le focus à la notification active."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Combinaison de touches pour stopper et fermer toutes les transitions à des "
"fins de débogage"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Le clavier utilisé"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Le type de clavier utilisé."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Limite le sélecteur de fenêtres à l'espace de travail actuel."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -283,11 +269,11 @@ msgstr ""
"travail actuel sont affichées dans le sélecteur. Sinon, toutes les "
"applications y sont incluses."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Le type d'icône des applications."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -298,7 +284,7 @@ msgstr ""
"fenêtre), « app-icon-only » (affiche uniquement l'icône de l'application), "
"ou « both » (affiche les deux)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -306,30 +292,30 @@ msgstr ""
"Si vrai, seules les fenêtres de l'espace de travail actuel sont affichées "
"dans le sélecteur. Sinon, toutes les fenêtres y sont incluses."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Attacher les dialogues modaux à leur fenêtre parente"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Cette clé prend le pas sur la clé dans org.gnome.mutter lorsque GNOME Shell "
"est lancé."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Activer l'empilage des fenêtres déposées sur les bords de l'écran"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Les espaces de travail sont gérés dynamiquement"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Les espaces de travail sont uniquement sur l'écran principal"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Retarder les changements de focus en mode souris jusqu'à ce que le pointeur "
@ -339,54 +325,53 @@ msgstr ""
msgid "Network Login"
msgstr "Identification réseau"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr ""
"Une erreur s'est produite lors du chargement de la boîte de dialogue des "
"préférences de %s :"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Extensions GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Annuler"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Suivant"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Déverrouiller"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Se connecter"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Choisir une session"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Absent de la liste ?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(par ex. utilisateur ou %s)"
@ -394,12 +379,12 @@ msgstr "(par ex. utilisateur ou %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Nom d'utilisateur : "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Fenêtre de connexion"
@ -535,36 +520,16 @@ msgstr "Ajouter aux favoris"
msgid "Show Details"
msgstr "Afficher les détails"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s a été ajouté à vos favoris."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s a été supprimé de vos favoris."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Sélectionnez le périphérique audio"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Paramètres de son"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Casque audio"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Micro-casque"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Microphone"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Modifier l'arrière-plan…"
@ -578,7 +543,7 @@ msgid "Settings"
msgstr "Paramètres"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -588,62 +553,56 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "D"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "L"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "M"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "M"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "J"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "V"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Mois précédent"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Mois suivant"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Semaine %V"
@ -665,34 +624,38 @@ msgstr "Semaine %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Journée"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Effacer la section"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Évènements"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A %d %B"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A %d %B, %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Notifications"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "Aucune notification"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "Aucun évènement"
@ -704,7 +667,7 @@ msgstr "Disque externe connecté"
msgid "External drive disconnected"
msgstr "Disque externe déconnecté"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "Ouvrir avec %s"
@ -830,7 +793,7 @@ msgstr "Échec de l'authentification. Essayez à nouveau."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:760
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s est maintenant connu sous le nom de %s"
@ -1027,11 +990,11 @@ msgid "Keyboard"
msgstr "Clavier"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Masquer le tiroir"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Icônes d'état"
@ -1083,26 +1046,10 @@ msgstr "Afficher la source"
msgid "Web Page"
msgstr "Page Web"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Effacer la section"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Informations du système"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Artiste inconnu"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Titre inconnu"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Média"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Annuler"
@ -1119,22 +1066,22 @@ msgstr "Vue d'ensemble"
msgid "Type to search…"
msgstr "Rechercher…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Quitter"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Activités"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:650
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Système"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Barre supérieure"
@ -1147,15 +1094,15 @@ msgstr "Barre supérieure"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Saisissez une commande"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Fermer"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Redémarrage en cours…"
@ -1278,41 +1225,29 @@ msgstr "Contraste élevé"
msgid "Large Text"
msgstr "Grand texte"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Éteindre"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Paramètres Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d connecté"
msgstr[1] "%d connectés"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Éteint"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Pas en cours d'utilisation"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Activer"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Éteindre"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Luminosité"
@ -1321,50 +1256,30 @@ msgstr "Luminosité"
msgid "Show Keyboard Layout"
msgstr "Afficher la disposition du clavier"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Localisation activée"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Désactiver"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Paramètres de confidentialité"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Localisation en cours d'utilisation"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Localisation désactivée"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Activer"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Refuser l'accès"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Accorder l'accès"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Donner accès à votre position à %s ?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Les règles d'accès à la localisation peuvent à tout moment être modifiées dans les "
"paramètres de confidentialité."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<inconnu>"
@ -1500,6 +1415,10 @@ msgstr "Sélectionner un réseau"
msgid "Wi-Fi Settings"
msgstr "Paramètres Wi-Fi"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Activer"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1549,36 +1468,31 @@ msgstr "Échec de connexion"
msgid "Activation of network connection failed"
msgstr "L'activation de la connexion réseau a échoué"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Paramètres de gestion de l'énergie"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Charge complète"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Estimation en cours…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d restant (%d %%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d restant (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d avant chargement complet (%d %%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d avant chargement complet (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1619,6 +1533,10 @@ msgstr "Volume modifié"
msgid "Volume"
msgstr "Volume"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Microphone"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Se connecter en tant qu'autre utilisateur"
@ -1776,27 +1694,24 @@ msgstr ""
msgid "List possible modes"
msgstr "Lister les modes possibles"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Inconnu"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Impossible de lancer « %s »"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Les mots de passe ne correspondent pas"
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Le mot de passe ne peut pas être vide"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "La fenêtre d'authentification a été écartée par l'utilisateur"
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "GNOME Shell (gestionnaire de fenêtres composite Wayland)"

1630
po/fur.po

File diff suppressed because it is too large Load Diff

View File

@ -715,7 +715,7 @@ msgstr "Tá brón orm, theip sé sin. Bain triail eile as, le do thoil."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:759
#, fuzzy, javascript-format
#, javascript-format
msgid "%s is now known as %s"
msgstr "Tugtar %2$s ar %1$s anois"

1817
po/gd.po

File diff suppressed because it is too large Load Diff

360
po/gl.po
View File

@ -6,22 +6,22 @@
# Antón Méixome <meixome@certima.net>, 2009.
# Fran Diéguez <frandieguez@gnome.org>, 2009, 2010, 2011, 2012.
# Leandro Regueiro <leandro.regueiro@gmail.com>, 2012.
# Fran Dieguez <frandieguez@gnome.org>, 2012, 2013, 2014, 2015, 2016.
#
# Fran Dieguez <frandieguez@gnome.org>, 2012, 2013, 2014, 2015.
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-03-12 13:15+0100\n"
"PO-Revision-Date: 2016-03-12 13:16+0100\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
"shell&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2015-09-28 20:46+0000\n"
"PO-Revision-Date: 2015-09-29 00:34+0200\n"
"Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n"
"Language-Team: Galician <gnome-l10n-gl@gnome.org>\n"
"Language-Team: gnome-l10n-gl@gnome.org\n"
"Language: gl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Gtranslator 2.91.7\n"
"X-Generator: Virtaal 0.7.1\n"
"X-Project-Style: gnome\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
@ -48,6 +48,15 @@ msgstr "Mostrar todos os aplicativos"
msgid "Open the application menu"
msgstr "Abrir o menú de aplicativo"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Xestor de xanelas e inicio de aplicativos"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "Preferencias das extensións de GNOME Shell"
@ -56,13 +65,9 @@ msgstr "Preferencias das extensións de GNOME Shell"
msgid "Configure GNOME Shell Extensions"
msgstr "Configure as extensións de GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Xestor de xanelas e inicio de aplicativos"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (compositor de wayland)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -170,95 +175,76 @@ msgstr ""
"estado por omisión da opción. "
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Indica se o adaptador de Bluetooth por omisión ten configurados dispositivos "
"asociados a el"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"O shell só mostrará o elemento de menú de Bluetooth se hai un adaptador de "
"Bluetooth conectado ou se houbera dispositivos asociados co adaptador "
"principal. Isto restabelecerase se o adaptador por omisión non se ve ou non "
"ten dispositivos asociados a el."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Mostrar a data da semana no calendario"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Se é verdadeiro, móstrase a data da semana ISO no calendario."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Combinación de teclas para abrir o menú de aplicativo"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Combinación de teclas para abrir o menú de aplicativo."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Combinación de teclas para abrir a vista «Mostrar aplicativos»"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Combinación de teclas para abrir a vista \"Mostrar aplicativos\" da Vista "
"xera de Actividades."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Combinación de teclas para abrir a Vista xeral"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Combinación de teclas para abrir a Vista de actividades."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr ""
"Combinación de teclas para trocar a visibilidade da área de notificacións"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
"Combinación de teclas para trocar a visibilidade da área de notificacións."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Combinación de teclas para enfocar a notificación activa"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Combinación de teclas para enfocar a notificación activa."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr "Atallo de teclado que pausa e reinicia todo os xemelgos executándose."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Que teclado usar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "O tipo de teclado a usar."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Restrinxir o trocador ao espazo de traballo actual."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -266,11 +252,11 @@ msgstr ""
"Se é verdadeiro, só se mostran no trocador os aplicativos que teñen xanelas "
"no espazo de traballo actual. Doutra maneira inclúense todos os aplicativos."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "O modo da icona do aplicativo."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -280,7 +266,7 @@ msgstr ""
"son «thumbnail-only» (mostra unha miniatura da xanela, «app-icon-only» (só "
"mostra a icona do aplicativo) ou «both» (móstranse ambas cosas)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -288,29 +274,29 @@ msgstr ""
"Se é verdadeiro, só se mostrarán no trocador as xanelas do espazo de "
"traballo actual. Doutra maneira inclúense todos os aplicativos."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Anexar o diálogo modal á xanela pai"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Esta chave sobrescribe a chave en org.gnome.mutter cando executa GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Activar o mosaico nos bordos ao arrastrar xanelas aos bordos da xanela"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Os espazos de traballo xestiónanse dinamicamente"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Espazos de traballo só no monitor primario"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Atrasar os cambios de foco no modo rato até que o punteiro se pare"
@ -318,52 +304,51 @@ msgstr "Atrasar os cambios de foco no modo rato até que o punteiro se pare"
msgid "Network Login"
msgstr "Inicio de sesión en rede"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Produciuse un erro ao cargar o diálogo de preferenzas para %s:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Extensións de GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Cancelar"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Seguinte"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Desbloquear"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Iniciar sesión"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Escolla unha sesión"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Non está na lista?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(p.ex., usuario ou %s)"
@ -371,12 +356,12 @@ msgstr "(p.ex., usuario ou %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Nome de usuario: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Xanela de inicio de sesión"
@ -512,36 +497,16 @@ msgstr "Engadir aos favoritos"
msgid "Show Details"
msgstr "Mostrar detalles"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s foi engadido aos seus favoritos."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s retirouse dos seus marcadores."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Seleccionar dispositivo de son"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Preferencias de son"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Cascos auriculares"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Auriculares"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Micrófono"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Cambiar fondo de escritorio…"
@ -555,7 +520,7 @@ msgid "Settings"
msgstr "Preferencias"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -565,96 +530,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "D"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "L"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "M"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "W"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "X"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "V"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Anterior mes"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Seguinte mes"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Semana %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Todo o día"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Limpar sección"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Eventos"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d de %B"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d de %B de %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Notificacións"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "Non hai notificacións"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "Non hai eventos"
@ -666,7 +629,7 @@ msgstr "Unidade externa conectada"
msgid "External drive disconnected"
msgstr "Unidade externa desconectada"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "Abrir con %s"
@ -978,11 +941,11 @@ msgid "Keyboard"
msgstr "Teclado"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Ocultar bandexa"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Iconas de estado"
@ -1034,26 +997,10 @@ msgstr "Ver fonte"
msgid "Web Page"
msgstr "Páxina web"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Limpar sección"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Información do sistema"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Artista descoñecido"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Título descoñecido"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Multimedia"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Desfacer"
@ -1070,22 +1017,23 @@ msgstr "Vista xeral"
msgid "Type to search…"
msgstr "Escriba para buscar…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Saír"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Actividades"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:650
#| msgid "System"
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Sistema"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Barra superior"
@ -1098,15 +1046,15 @@ msgstr "Barra superior"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Escriba unha orde"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Pechar"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Restimando…"
@ -1229,41 +1177,29 @@ msgstr "Contraste alto"
msgid "Large Text"
msgstr "Texto grande"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Apagar"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Preferencias do Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d conectado"
msgstr[1] "%d conectados"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Desactivar"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Non está en uso"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Activar"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Apagar"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Brillo"
@ -1272,50 +1208,30 @@ msgstr "Brillo"
msgid "Show Keyboard Layout"
msgstr "Mostrar a distribución do teclado"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Localización activada"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Desactivar"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Preferencias da privacidade"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Localización en uso"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Localización desactivada"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Activar"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Denegar acceso"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Conceder acceso"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Darlle acceso a %s á súa localización?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Pode cambiar o acceso á localización en calquera momento desde as "
"preferencias de privacidade."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<descoñecido>"
@ -1451,6 +1367,10 @@ msgstr "Seleccione unha rede"
msgid "Wi-Fi Settings"
msgstr "Preferencias da WiFi"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Activar"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1500,36 +1420,31 @@ msgstr "Produciuse un fallo na conexión"
msgid "Activation of network connection failed"
msgstr "Produciuse un fallo na activación da conexión de rede"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Preferencias de enerxía"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Carga completa"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Estimando…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d Faltan (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "Faltan %d:%02d (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d ate cargado (%d%%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d:%02d ate cargado (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1570,6 +1485,10 @@ msgstr "Volume cambiado"
msgid "Volume"
msgstr "Volume"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Micrófono"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Iniciar sesión como outro usuario"
@ -1728,39 +1647,39 @@ msgstr ""
msgid "List possible modes"
msgstr "Listar os modos posíbeis"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Descoñecido"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Produciuse un erro ao iniciar «%s»"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Os contrasinais non coinciden."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "O contrasinal non pode estar baleiro"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "O usuario rexeitou o diálogo de autenticación"
#~ msgid "%s is requesting access to your location."
#~ msgstr "%s está solicitando acceso á súa localización."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "GNOME Shell (compositor de wayland)"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "%d dispositivo conectado"
#~ msgstr[1] "%d dispositivos conectados"
#~ msgid "Off"
#~ msgstr "Desactivar"
#~ msgid "Authentication required"
#~ msgstr "Requírese autenticación"
@ -1912,6 +1831,9 @@ msgstr "O usuario rexeitou o diálogo de autenticación"
#~ msgid "View account"
#~ msgstr "Ver conta"
#~ msgid "Unknown reason"
#~ msgstr "Razón descoñecida"
#~ msgid "Show the message list"
#~ msgstr "Mostrar a lista de mensaxes"
@ -2086,6 +2008,9 @@ msgstr "O usuario rexeitou o diálogo de autenticación"
#~ msgid "Device %s wants access to the service '%s'"
#~ msgstr "O dispositivo %s quere acceder ao servizo «%s»"
#~ msgid "Always grant access"
#~ msgstr "Conceder acceso sempre"
#~ msgid "Grant this time only"
#~ msgstr "Conceder só esta vez"
@ -2253,6 +2178,9 @@ msgstr "O usuario rexeitou o diálogo de autenticación"
#~ msgid "Visibility"
#~ msgstr "Visibilidade"
#~ msgid "Send Files to Device…"
#~ msgstr "Enviar ficheiros ao dispositivo…"
#~ msgid "Set Up a New Device…"
#~ msgstr "Configurar un dispositivo novo…"
@ -2306,6 +2234,10 @@ msgstr "O usuario rexeitou o diálogo de autenticación"
#~ msgstr[0] "Queda %d minuto"
#~ msgstr[1] "Quedan %d minutos"
#~ msgctxt "percent of battery remaining"
#~ msgid "%d%%"
#~ msgstr "%d%%"
#~ msgid "AC Adapter"
#~ msgstr "Adaptador de corrente"

394
po/he.po
View File

@ -10,8 +10,8 @@ msgid ""
msgid ""
msgstr ""
"Project-Id-Version: gnome-shell master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-03-11 14:49+0200\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-08-30 21:15+0300\n"
"PO-Revision-Date: 2015-08-30 21:16+0300\n"
"Last-Translator: Yosef Or Boczko <yoseforb@gmail.com>\n"
"Language-Team: עברית <>\n"
@ -47,6 +47,15 @@ msgstr "הצגת כל היישומים"
#: ../data/50-gnome-shell-system.xml.in.h:6
msgid "Open the application menu"
msgstr "פתיחת תפריט היישום"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "מעטפת GNOME"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "ניהול חלונות והרצת יישומים"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
@ -55,13 +64,9 @@ msgstr "העדפות ההרחבות של GNOME Shell"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:2
msgid "Configure GNOME Shell Extensions"
msgstr "הגדרת הרחבות GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "מעטפת GNOME"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (מסדר wayland)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
@ -165,92 +170,74 @@ msgstr ""
"'Remember Password' checkbox will be present. This key sets the default "
"state of the checkbox."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Whether the default Bluetooth adapter had set up devices associated to it"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid "Show the week date in the calendar"
msgstr "Show the week date in the calendar"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "If true, display the ISO week date in the calendar."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Keybinding to open the application menu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Keybinding to open the application menu."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Keybinding to open the \"Show Applications\" view"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Keybinding to open the overview"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Keybinding to open the Activities Overview."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Keybinding to toggle the visibility of the notification list"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Keybinding to toggle the visibility of the notification list."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Keybinding to focus the active notification"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Keybinding to focus the active notification."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Which keyboard to use"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "The type of keyboard to use."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Limit switcher to current workspace."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
@ -258,51 +245,51 @@ msgstr ""
msgstr ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "The application icon mode."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
"only' (shows only the application icon) or 'both'."
msgstr ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
"only' (shows only the application icon) or 'both'."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
msgstr ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
"only' (shows only the application icon) or 'both'."
msgstr ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
"only' (shows only the application icon) or 'both'."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
msgstr ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Attach modal dialog to the parent window"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Enable edge tiling when dropping windows on screen edges"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Workspaces are managed dynamically"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Workspaces only on primary monitor"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Delay focus changes in mouse mode until the pointer stops moving"
@ -310,52 +297,51 @@ msgstr "Delay focus changes in mouse mode until the pointer stops moving"
#: ../data/org.gnome.Shell.PortalHelper.desktop.in.h:1
msgid "Network Login"
msgstr "Network Login"
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "אירעה שגיאה בעת טעינת דו־שיח ההעדפות עבור %s:"
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "הרחבות GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "ביטול"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:435
msgid "Next"
msgstr "הבא"
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "שחרור"
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "כניסה"
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "בחירת הפעלה"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#. manually entering the username.
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "לא רשום?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:847
#, javascript-format
msgid "(e.g., user or %s)"
@ -363,12 +349,12 @@ msgstr "(משתמש או %s לדוגמה)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "שם משתמש:"
#: ../js/gdm/loginDialog.js:1181
msgid "Login Window"
msgstr "חלון כניסה"
@ -504,36 +490,16 @@ msgstr "הוספה למועדפים"
#: ../js/ui/appDisplay.js:1897
msgid "Show Details"
msgstr "הצגת פרטים"
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s נוסף למועדפים שלך."
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s הוסר מהמועדפים שלך."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "בחירת התקן שמע"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "הגדרות שמע"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "אזניות"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "אזניות עם מיקרופון"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "מיקרופון"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
@ -542,12 +508,13 @@ msgstr "החלפת הרקע…"
#: ../js/ui/backgroundMenu.js:21
msgid "Display Settings"
msgstr "הגדרות תצוגה"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:366
msgid "Settings"
msgstr "הגדרות"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
@ -557,96 +524,94 @@ msgstr "65"
#. *
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#.
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "א"
#. Translators: Calendar grid abbreviation for Monday
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "ב"
#. Translators: Calendar grid abbreviation for Tuesday
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "ג"
#. Translators: Calendar grid abbreviation for Wednesday
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "ד"
#. Translators: Calendar grid abbreviation for Thursday
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "ה"
#. Translators: Calendar grid abbreviation for Friday
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "ו"
#. Translators: Calendar grid abbreviation for Saturday
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "ש"
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "חודש קודם"
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "חודש הבא"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "שבוע %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#.
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "יום שלם"
#: ../js/ui/calendar.js:1291
msgid "Clear section"
msgstr "ניקוי מקטע"
#: ../js/ui/calendar.js:1518
msgid "Events"
msgstr "אירועים"
#: ../js/ui/calendar.js:1527
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, ה־%e ב%B"
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, ה־%e ב%B, %Y"
#: ../js/ui/calendar.js:1616
msgid "Notifications"
msgstr "התרעות"
#: ../js/ui/calendar.js:1767
msgid "No Notifications"
msgstr "אין התרעות"
#: ../js/ui/calendar.js:1770
msgid "No Events"
msgstr "אין אירועים"
@ -658,7 +623,7 @@ msgstr "חובר כונן חיצוני"
#: ../js/ui/components/automountManager.js:102
msgid "External drive disconnected"
msgstr "נותק כונן חיצוני"
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
@ -964,11 +929,11 @@ msgid "Keyboard"
msgid "Keyboard"
msgstr "מקלדת"
#. translators: 'Hide' is a verb
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "הסתרת המגש"
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "סמלי מצב"
@ -996,7 +961,7 @@ msgstr "פעיל"
msgstr "פעיל"
#. translators:
#. * The device has been disabled
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "מנוטרל"
@ -1020,26 +985,10 @@ msgstr "צפייה במקור"
#: ../js/ui/lookingGlass.js:758
msgid "Web Page"
msgstr "דף אינטרנט"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "ניקוי מקטע"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "פרטי המערכת"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "אמן לא ידוע"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "כותרת לא ידועה"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "מדיה"
#: ../js/ui/overview.js:84
msgid "Undo"
@ -1056,22 +1005,17 @@ msgstr "סקירה"
#: ../js/ui/overview.js:244
msgid "Type to search…"
msgstr "יש להקליד כדי לחפש…"
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "יציאה"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "פעילויות"
#: ../js/ui/panel.js:695
msgctxt "System menu in the top bar"
msgid "System"
msgstr "מערכת"
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "הסרגל העליון"
@ -1084,15 +1028,15 @@ msgstr "הסרגל העליון"
#: ../js/ui/popupMenu.js:289
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "נא להזין פקודה"
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "סגירה"
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "מופעל מחדש…"
@ -1217,41 +1161,29 @@ msgstr "ניגודיות גבוהה"
#: ../js/ui/status/accessibility.js:202
msgid "Large Text"
msgstr "טקסט גדול"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "כיבוי"
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "הגדרות Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:105
#, c-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "אחד מחובר"
msgstr[1] "%d מחוברים"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "כבוי"
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "לא בשימוש"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "הפעלה"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "כיבוי"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
@ -1260,48 +1192,30 @@ msgstr "בהירות"
#: ../js/ui/status/keyboard.js:736
msgid "Show Keyboard Layout"
msgstr "הצגת פריסת המקלדת"
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "איכון מאופשר"
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "השבתה"
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "הגדרות פרטיות"
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "איכון בשימוש"
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "איכון מושבת"
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "אפשור"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "מניעת גישה"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "אפשור גישה"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "לתת ליישום %s גישה למיקום שלך?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr "ניתן לשנות בכל עת את הרשאות הגישה למיקום שלך מהגדרות הפרטיות."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
@ -1437,6 +1351,10 @@ msgstr "בחירת רשת"
#: ../js/ui/status/network.js:1177
msgid "Wi-Fi Settings"
msgstr "הגדרות רשת אלחוטית"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "הפעלה"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
@ -1486,37 +1404,32 @@ msgstr "ההתחברות נכשלה"
#: ../js/ui/status/network.js:1698
msgid "Activation of network connection failed"
msgstr "הפעלת חיבור הרשת נכשלה"
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "הגדרות צריכת החשמל"
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "בטעינה מלאה"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#. to estimate battery life
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "מתבצע שערוך…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:86
#, javascript-format
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d נותרו (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:91
#, javascript-format
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d:%02d עד לטעינה מלאה (%d%%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1556,6 +1469,10 @@ msgstr "עצמת השמע השתנתה"
#: ../js/ui/status/volume.js:162
msgid "Volume"
msgstr "עצמה"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "מיקרופון"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
@ -1677,7 +1594,7 @@ msgstr "יומן אבולושן"
msgstr "יומן אבולושן"
#. translators:
#. * The number of sound outputs on a particular device
#. * The number of sound outputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1837
#, c-format
msgid "%u Output"
@ -1686,60 +1603,57 @@ msgstr[1] "%u פלטים"
msgstr[1] "%u פלטים"
#. translators:
#. * The number of sound inputs on a particular device
#. * The number of sound inputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1847
#, c-format
msgid "%u Input"
msgid_plural "%u Inputs"
msgstr[0] "קלט אחד"
msgstr[1] "%u קלטים"
#: ../src/gvc/gvc-mixer-control.c:2373
msgid "System Sounds"
msgstr "צלילי מערכת"
#: ../src/main.c:373
msgid "Print version"
msgstr "Print version"
#: ../src/main.c:379
msgid "Mode used by GDM for login screen"
msgstr "המצב בו GDM יעשה שימוש לצורך מסך הכניסה"
#: ../src/main.c:385
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "שימוש במצב מסוים, לדוגמה: „gdm“ למסך הכניסה"
#: ../src/main.c:391
msgid "List possible modes"
msgstr "הצגת המצבים האפשריים"
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "לא ידוע"
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "אירע כשל בטעינת „%s”"
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "הססמאות אינן תואמות."
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "הססמה אינה יכולה להישאר ריקה"
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "המשתמש בחר להתעלם מתיבת דו־שיח האימות"
#~ msgid "%s is requesting access to your location."
#~ msgstr "%s דורש גישה למיקום שלך."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
# javascript-format
@ -1747,6 +1661,9 @@ msgstr "המשתמש בחר להתעלם מתיבת דו־שיח האימות"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "התקן אחד מחובר"
#~ msgstr[1] "%d התקנים מחוברים"
#~ msgid "Off"
#~ msgstr "כבוי"
#~ msgid "Authentication required"
#~ msgstr "נדרש אימות"
@ -1893,6 +1810,9 @@ msgstr "המשתמש בחר להתעלם מתיבת דו־שיח האימות"
#~ msgid "View account"
#~ msgstr "צפייה בחשבון"
#~ msgid "Unknown reason"
#~ msgstr "סיבה לא ידועה"
#~ msgid "Show the message list"
#~ msgstr "הצגת רשימת הודעות"
@ -2086,6 +2006,9 @@ msgstr "המשתמש בחר להתעלם מתיבת דו־שיח האימות"
#~ msgid "Device %s wants access to the service '%s'"
#~ msgstr "ההתקן %s מעוניין לגשת אל השירות '%s'"
#~ msgid "Always grant access"
#~ msgstr "תמיד להעניק גישה"
#~ msgid "Grant this time only"
#~ msgstr "הענקת גישה הפעם בלבד"
@ -2253,6 +2176,9 @@ msgstr "המשתמש בחר להתעלם מתיבת דו־שיח האימות"
#~ msgid "Visibility"
#~ msgstr "הצגה"
#~ msgid "Send Files to Device…"
#~ msgstr "שליחת קובץ להתקן…"
#~ msgid "Set Up a New Device…"
#~ msgstr "הגדרת התקן חדש…"
@ -2331,6 +2257,10 @@ msgstr "המשתמש בחר להתעלם מתיבת דו־שיח האימות"
#~ msgstr[0] "דקה אחת נותרה"
#~ msgstr[1] "%d דקות נותרו"
#~ msgstr[2] "שתי דקות נותרו"
#~ msgctxt "percent of battery remaining"
#~ msgid "%d%%"
#~ msgstr "%d%%"
#~ msgid "AC Adapter"
#~ msgstr "מתאם חשמל"

550
po/hu.po

File diff suppressed because it is too large Load Diff

480
po/id.po

File diff suppressed because it is too large Load Diff

856
po/is.po

File diff suppressed because it is too large Load Diff

360
po/it.po
View File

@ -1,9 +1,9 @@
# Italian translations for gnome-shell package.
# Copyright (C) 2009, 2010, the gnome-shell copyright holder
# Copyright (C) 2011, 2012, 2013, 2014, 2015, 2016 the Free Software Foundation
# Copyright (C) 2011, 2012, 2013, 2014, 2015 the Free Software Foundation
# This file is distributed under the same license as the gnome-shell package.
#
# Milo Casagrande <milo@milo.name>, 2009, 2010, 2012, 2013, 2014, 2015, 2016.
# Milo Casagrande <milo@milo.name>, 2009, 2010, 2012, 2013, 2014, 2015.
# Luca Ferretti <elle.uca@infinito.it>, 2010, 2011, 2012, 2013, 2014.
#
msgid ""
@ -11,8 +11,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: 2016-03-17 10:22+0000\n"
"PO-Revision-Date: 2016-03-17 21:19+0100\n"
"POT-Creation-Date: 2015-09-28 20:46+0000\n"
"PO-Revision-Date: 2015-09-29 09:02+0200\n"
"Last-Translator: Milo Casagrande <milo@milo.name>\n"
"Language-Team: Italiano <tp@lists.linux.it>\n"
"Language: it\n"
@ -21,7 +21,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-DamnedLies-Scope: partial\n"
"X-Generator: Poedit 1.8.7\n"
"X-Generator: Poedit 1.8.5\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -47,6 +47,15 @@ msgstr "Mostra tutte le applicazioni"
msgid "Open the application menu"
msgstr "Apri il menù applicazioni"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Gestisce finestre e avvia applicazioni"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "Preferenze estensioni di GNOME Shell"
@ -55,13 +64,9 @@ msgstr "Preferenze estensioni di GNOME Shell"
msgid "Configure GNOME Shell Extensions"
msgstr "Configura le estensioni di GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Gestisce finestre e avvia applicazioni"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (compositor wayland)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -170,97 +175,78 @@ msgstr ""
"stato predefinito di tale casella."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Indica se l'adattatore Bluetooth predefinito abbia avuto del dispositivi "
"associati"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"Viene visualizzato un elemento nel menù Bluetooth solamente se un adattatore "
"Bluetooth è alimentato o se vi sono stati associati altri dispositivi. Ciò "
"viene reimpostato se l'adattatore predefinito non risulta avere dispositivi "
"associati."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Mostra il numero della settimana nel calendario"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Se VERO, visualizza il giorno della settimana ISO nel calendario."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Associazione tasti per aprire menù applicazioni"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Associazione tasti per aprire il menù delle applicazioni."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Associazione tasti per aprire la vista \"Mostra applicazioni\""
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Associazione tasti per aprire la vista \"Mosta applicazioni\" della "
"panoramica Attività."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Associazione tasti per aprire la panoramica"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Associazione tasti per aprire la panoramica delle attività."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr ""
"Associazione tasti per commutare la visibilità dell'elenco delle notifiche"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
"Associazione tasti per commutare la visibilità dell'elenco delle notifiche."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Associazione tasti dare il focus alla notifica attiva"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Associazione tasti per dare il focus alla notifica attiva."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Associazione di tasti per mettere in pausa e ripristinare tutti i tween in "
"esecuzione, a scopo di debug"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Quale tastiera usare"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Il tipo di tastiera da usare."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Limita il selettore allo spazio di lavoro in uso."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -269,11 +255,11 @@ msgstr ""
"hanno finestre nello spazio di lavoro attualmente in uso. In caso contrario "
"sono incluse tutte le applicazioni."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "La modalità dell'icona dell'applicazione."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -283,7 +269,7 @@ msgstr ""
"sono: \"thumbnail-only\" (mostra una miniatura della finestra), \"app-icon-"
"only\" (mostra solo l'icona dell'applicazione) oppure \"both\"."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -292,32 +278,32 @@ msgstr ""
"spazio di lavoro attualmente in uso. In caso contrario sono incluse tutte le "
"finestre."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Collega la finestra modale a quella genitore"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Questa chiave scavalca la chiave in org.gnome.mutter quando si esegue GNOME "
"Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Abilita il tiling di bordo quando si trascinano le finestre sui bordi dello "
"schermo"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Spazi di lavoro sono gestiti dinamicamente"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Spazi di lavoro solo sul monitor primario"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr ""
"Ritarda il cambio del focus nella modalità mouse finché il puntantore non si "
@ -327,54 +313,53 @@ msgstr ""
msgid "Network Login"
msgstr "Accesso di rete"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr ""
"Si è verificato un errore durante il caricamento della finestra delle "
"preferenze per %s:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "Estensioni di GNOME Shell"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Annulla"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Avanti"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Sblocca"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Accedi"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Scegli sessione"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Non elencato?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(p.e. utente o %s)"
@ -382,12 +367,12 @@ msgstr "(p.e. utente o %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Nome utente: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Finestra di accesso"
@ -525,36 +510,16 @@ msgstr "Mostra dettagli"
# (ndt) e usare:
# L'elemento %s è stato rimosso... ?
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s è stato aggiunto ai preferiti."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s è stato rimosso dai preferiti."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Seleziona dispositivo audio"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Impostazioni audio"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Cuffie"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Cuffie con microfono"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Microfono"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Cambia sfondo…"
@ -568,7 +533,7 @@ msgid "Settings"
msgstr "Impostazioni"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -578,96 +543,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "D"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "L"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "M"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "M"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "G"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "V"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "S"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Mese precedente"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Mese successivo"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Settimana %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Giornata"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Annulla selezione"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Eventi"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %e %B"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %e %B %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Notifiche"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "Nessuna notifica"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "Nessun evento"
@ -679,7 +642,7 @@ msgstr "Unità esterna collegata"
msgid "External drive disconnected"
msgstr "Unità esterna scollegata"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "Apri con %s"
@ -805,7 +768,7 @@ msgstr "Errore nell'autenticazione. Provare di nuovo."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:760
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s ha cambiato nome in %s"
@ -994,11 +957,11 @@ msgid "Keyboard"
msgstr "Tastiera"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Nascondi cassetto"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Icone di stato"
@ -1052,26 +1015,10 @@ msgstr "Visualizza sorgente"
msgid "Web Page"
msgstr "Pagina web"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Annulla selezione"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Informazione di sistema"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Artista sconosciuto"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Titolo sconosciuto"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Supporto"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Annulla"
@ -1088,22 +1035,22 @@ msgstr "Panoramica"
msgid "Type to search…"
msgstr "Digita per cercare…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Esci"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Attività"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:650
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Sistema"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Barra superiore"
@ -1116,15 +1063,15 @@ msgstr "Barra superiore"
msgid "toggle-switch-us"
msgstr "toggle-switch-us"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Inserire un comando"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Chiudi"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Riavvio…"
@ -1248,41 +1195,29 @@ msgstr "Contrasto elevato"
msgid "Large Text"
msgstr "Caratteri grandi"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Spegni"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Impostazioni Bluetooth"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d collegato"
msgstr[1] "%d collegati"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Off"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Non in uso"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Attiva"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Spegni"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Luminosità"
@ -1291,51 +1226,31 @@ msgstr "Luminosità"
msgid "Show Keyboard Layout"
msgstr "Mostra disposizione tastiera"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Posizione abilitata"
# (ndt) o disabilitata?
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Disabilitato"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Impostazioni privacy"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Posizione in uso"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Posizione disabilitata"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Abilita"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Nega accesso"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Consenti accesso"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Consentire a %s di accedere alla propria posizione?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"L'accesso alla posizione può essere modificato in qualsiasi momento "
"attraverso le impostazioni della privacy."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<sconosciuto>"
@ -1474,6 +1389,10 @@ msgstr "Seleziona rete"
msgid "Wi-Fi Settings"
msgstr "Impostazioni Wi-Fi"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Attiva"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1523,37 +1442,32 @@ msgstr "Connessione non riuscita"
msgid "Activation of network connection failed"
msgstr "Attivazione della connessione di rete non riuscita"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Impostazioni alimentazione"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Carica"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "In stima…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d rimanente (%d %%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d rimanente (%d%%)"
# in stile MacOS sarebbe "al pieno" :P
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d alla carica (%d %%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d alla carica (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1594,6 +1508,10 @@ msgstr "Volume modificato"
msgid "Volume"
msgstr "Volume"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Microfono"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Accedi come altro utente"
@ -1751,24 +1669,50 @@ msgstr "Usa una modalità specifica, p.e. \"gdm\" per la schermata di accesso"
msgid "List possible modes"
msgstr "Elenca le modalità possibili"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Sconosciuto"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Avvio di «%s» non riuscito"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Le password non corrispondono."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "La password non può essere vuota"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Il dialogo di autenticazione è stato annullato dall'utente"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "%d dispositivo connesso"
#~ msgstr[1] "%d dispositivi connessi"
#~ msgid "Off"
#~ msgstr "Off"
#~ msgid "Authentication required"
#~ msgstr "Richiesta autenticazione"
#~ msgid "UPS"
#~ msgstr "UPS"
#~ msgid "Battery"
#~ msgstr "Batteria"
#~ msgid "Airplane Mode"
#~ msgstr "Modalità aereo"
#~ msgid "On"
#~ msgstr "On"

655
po/ja.po

File diff suppressed because it is too large Load Diff

358
po/kk.po
View File

@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: 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: 2016-03-16 22:23+0000\n"
"PO-Revision-Date: 2016-03-17 08:37+0500\n"
"POT-Creation-Date: 2015-10-04 08:41+0000\n"
"PO-Revision-Date: 2015-10-04 17:00+0500\n"
"Last-Translator: Baurzhan Muftakhidinov <baurthefirst@gmail.com>\n"
"Language-Team: Kazakh <kk_KZ@googlegroups.com>\n"
"Language: kk\n"
@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 1.8.6\n"
"X-Generator: Poedit 1.8.5\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -43,6 +43,15 @@ msgstr "Барлық қолданбаларды көрсету"
msgid "Open the application menu"
msgstr "Қолданбалар мәзірін ашу"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Терезелерді басқару мен қолданбаларды жөнелту"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "GNOME Shell кеңейту баптаулары"
@ -51,13 +60,9 @@ msgstr "GNOME Shell кеңейту баптаулары"
msgid "Configure GNOME Shell Extensions"
msgstr "GNOME Shell кеңейтулерін баптау"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Терезелерді басқару мен қолданбаларды жөнелту"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (wayland үйлестіргіші)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -165,95 +170,77 @@ msgstr ""
"бастапқы күйін орнатады."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Үнсіз келісім бойынша Bluetooth адаптерінде байланысқан құрылғылар бар ма"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"Қоршам Bluetooth мәзірін тек Bluetooth адаптері іске қосылған болса және "
"үнсіз келісім бойынша адаптерінде байланысқан құрылғылар бар болса ғана "
"көрсетеді. Бұл үнсіз келісім адаптерінде байланысқан құрылғылар жоқ болса "
"тасталады."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Күнтізбеде апта күнін көрсету"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Ақиқат болса, күнтізбеде ISO апта күнін көрсетеді."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Қолданбалар мәзірін ашу үшін пернелер комбинациясы"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Қолданбалар мәзірін ашу үшін пернелер комбинациясы."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "\"Қолданбаларды көрсету\" көрінісін ашу үшін пернелер комбинациясы"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Көрініс ішінен \"Қолданбаларды көрсету\" ашу үшін пернелер комбинациясы"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Шолуды ашу үшін пернелер комбинациясы."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Көріністі ашу үшін пернелер комбинациясы."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr ""
"Хабарламалар тізімінің көрінуін іске қосу/сөндіру үшін пернелер комбинациясы"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr ""
"Хабарламалар тізімінің көрінуін іске қосу/сөндіру үшін пернелер комбинациясы."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Белсенді ескертуге фокусты ауыстыру пернелер комбинациясы"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Белсенді ескертуге фокусты ауыстыру пернелер комбинациясы."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Барлық орындалып тұрған анимацияларды тоқтататын не жалғастыратын пернелер "
"жарлығы (жөндеу үшін)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Қолданылатын пернетақта"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Қолданылатын пернетақта түрі."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Ауыстырғышты ағымдағы жұмыс орнымен шектеу."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -261,11 +248,11 @@ msgstr ""
"Таңдалса, ауыстырғышта тек ағымдағы жұмыс орнындағы терезелері бар "
"қолданбалар көрсетіледі. Болмаса, барлық қолданбалар болады."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Қолданбаның таңбаша режимі."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -275,7 +262,7 @@ msgstr ""
"'thumbnail-only' (терезенің кіші көрінісі көрсетіледі), 'app-icon-only' (тек "
"қолданба таңбашасы көрсетіледі) немесе 'both' (екеуі де)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -283,32 +270,32 @@ msgstr ""
"Таңдалса, ауыстырғышта тек ағымдағы жұмыс орнындағы терезелер көрсетіледі. "
"Болмаса, барлық терезелер болады."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Модальды сұхбатты аталық терезесіне жалғау"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr ""
"Бұл кілт GNOME Shell орындалған кезде org.gnome.mutter ішіндегі кілтті "
"үстінен жазады."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr ""
"Терезелерді экран шеттеріне апарған кезде олардың өлшемдерін өзгертуді іске "
"қосу"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Жұмыс орындары динамикалы түрде басқарылады"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Жұмыс орындар тек біріншілік мониторда"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Тышқан режиміндегі фокусты ауыстыру курсор тоқтағанша дейін кідірту"
@ -316,52 +303,51 @@ msgstr "Тышқан режиміндегі фокусты ауыстыру ку
msgid "Network Login"
msgstr "Желілік кіру"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "%s үшін баптаулар сұхбатын жүктеу кезінде қате орын алды:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "GNOME Shell кеңейтулері"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Бас тарту"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Келесі"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Босату"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Кіру"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Сессияны таңдау"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Тізімде жоқсыз ба?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(мыс., пайдаланушы не %s)"
@ -369,12 +355,12 @@ msgstr "(мыс., пайдаланушы не %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Пайдаланушы аты:"
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Жүйеге кіру терезесі"
@ -510,36 +496,16 @@ msgstr "Таңдамалыларға қосу"
msgid "Show Details"
msgstr "Деректерді көрсету"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s таңдамалыларыңызға қосылды."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s таңдамалыларыңыздан өшірілді."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Аудио құрылғысын таңдаңыз"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Дыбыс баптаулары"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Құлаққап"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Микрофонды құлаққап"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Микрофон"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Фонды өзгерту..."
@ -553,7 +519,7 @@ msgid "Settings"
msgstr "Баптаулар"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -563,96 +529,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "Жк"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "Дс"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "Сс"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "Ср"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "Бс"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "Жм"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "Сн"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Өткен ай"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Келесі ай"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Апта %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Толық күн"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Санатты тазарту"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Оқиғалар"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %B %d, %Y"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Хабарламалар"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "Хабарламалар жоқ"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "Оқиғалар жоқ"
@ -664,7 +628,7 @@ msgstr "Сыртқы диск қосылды"
msgid "External drive disconnected"
msgstr "Сыртқы диск алынды"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "%s көмегімен ашу"
@ -789,7 +753,7 @@ msgstr "Кешіріңіз, талап сәтсіз. Қайтадан көрің
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:760
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s енді %s ретінде белгілі"
@ -963,18 +927,18 @@ msgstr "Орнату"
#: ../js/ui/extensionDownloader.js:204
#, javascript-format
msgid "Download and install “%s” from extensions.gnome.org?"
msgstr "extensions.gnome.org адресінен \"%s\" жүктеп алып, орнату керек пе?"
msgstr "extensions.gnome.org адресінен “%s” жүктеп алып, орнату керек пе?"
#: ../js/ui/keyboard.js:741 ../js/ui/status/keyboard.js:713
msgid "Keyboard"
msgstr "Пернетақта"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Жүйелік трейді жасыру"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Қалып-күй таңбашалары"
@ -1026,26 +990,10 @@ msgstr "Бастапқы кодын қарау"
msgid "Web Page"
msgstr "Веб парағы"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Санатты тазарту"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Жүйелік ақпарат"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Белгісіз әртіс"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Белгісіз атауы"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Медиа"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Болдырмау"
@ -1062,22 +1010,22 @@ msgstr "Шолу"
msgid "Type to search…"
msgstr "Іздеу үшін теріңіз..."
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Шығу"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Көрініс"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:650
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Жүйелік"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Үстідегі панель"
@ -1090,15 +1038,15 @@ msgstr "Үстідегі панель"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Команданы енгізу"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Жабу"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Қайта қосу…"
@ -1219,40 +1167,28 @@ msgstr "Жоғары контраст"
msgid "Large Text"
msgstr "Үлкен мәтін"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:56
msgid "Bluetooth Settings"
msgstr "Bluetooth баптаулары"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d байланысқан"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Сөнд."
#: ../js/ui/status/bluetooth.js:140
msgid "Not In Use"
msgstr "Қолданылуда емес"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Іске қосу"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Сөндіру"
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Bluetooth баптаулары"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d байланысқан"
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Қолданылуда емес"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Жарықтылығы"
@ -1261,50 +1197,30 @@ msgstr "Жарықтылығы"
msgid "Show Keyboard Layout"
msgstr "Пернетақта жаймасын көрсету"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Орналасу іске қосулы тұр"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Сөндіру"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Жекелік баптаулары"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Орналасу қолданылуда"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Орналасу сөндірулі тұр"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Іске қосу"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Тыйым салу"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Рұқсат ету"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "%s үшін орналасуыңызға рұқсат ету керек пе?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Орналасуыңызға қатынауды кез-кезген кезде жекелік баптауларының ішінен "
"өзгертуге болады."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<белгісіз>"
@ -1440,6 +1356,10 @@ msgstr "Желіні таңдау"
msgid "Wi-Fi Settings"
msgstr "Wi-Fi баптаулары"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Іске қосу"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1489,36 +1409,31 @@ msgstr "Байланыс орнату сәтсіз"
msgid "Activation of network connection failed"
msgstr "Желілік байланысты белсендіру сәтсіз"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Қорек баптаулары"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Толығымен зарядталған"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Есептеу..."
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d қалды (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d қалды (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d толық зарядқа дейін (%d%%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d толық зарядқа дейін (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1559,6 +1474,10 @@ msgstr "Дыбыс өзгертілді"
msgid "Volume"
msgstr "Дыбыс деңгейі"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Микрофон"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Басқа пайдаланушы ретінде жүйеге кіру"
@ -1712,38 +1631,38 @@ msgstr "Жүйеге кіру экраны үшін арнайы режимді,
msgid "List possible modes"
msgstr "Қолжетерлік режимдерді тізіп шығу"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Белгісіз"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "\"%s\" жөнелту сәтсіз"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Парольдер өзара сәйкес емес."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Пароль бос болуы мүмкін емес"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Аутентификация терезесін пайдаланушы тайдырды"
#~ msgid "%s is requesting access to your location."
#~ msgstr "%s орналасу ақпаратыңызға қатынауды сұрайды."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "GNOME Shell (wayland үйлестіргіші)"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "%d байланысқан құрылғы"
#~ msgid "Off"
#~ msgstr "Сөнд."
#~ msgid "Authentication required"
#~ msgstr "Аутентификация керек"
@ -1892,6 +1811,9 @@ msgstr "Аутентификация терезесін пайдаланушы
#~ msgid "View account"
#~ msgstr "Тіркелгіні қарап шығу"
#~ msgid "Unknown reason"
#~ msgstr "Себебі белгісіз"
#~ msgid "Show the message list"
#~ msgstr "Хабарламалар тізімін көрсету"

349
po/ko.po
View File

@ -1,9 +1,9 @@
# Korean message translation for gnome-shell
# -*- compile-command: "ko-po-check ko.po" -*-
#
# This file is distributed under the same license as the gnome-shell package.
# Young-Ho Cha <ganadist@gmail.com>, 2009.
# Seong-ho Cho <darkcircle.0426@gmail.com>, 2012.
# Changwoo Ryu <cwryu@debian.org>, 2011-2016.
# Changwoo Ryu <cwryu@debian.org>, 2011-2015.
#
#
# 주의 사항:
@ -20,8 +20,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: 2016-03-16 10:19+0000\n"
"PO-Revision-Date: 2016-03-16 21:46+0900\n"
"POT-Creation-Date: 2015-09-29 08:39+0000\n"
"PO-Revision-Date: 2015-09-29 19:14+0900\n"
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
"Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
"Language: Korean\n"
@ -54,6 +54,15 @@ msgstr "모든 프로그램 표시"
msgid "Open the application menu"
msgstr "프로그램 메뉴 열기"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "그놈 셸"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "창 관리 및 프로그램 실행"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "그놈 셸 확장 기본 설정"
@ -62,13 +71,9 @@ msgstr "그놈 셸 확장 기본 설정"
msgid "Configure GNOME Shell Extensions"
msgstr "그놈 셸 확장을 설정합니다"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "그놈 셸"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "창 관리 및 프로그램 실행"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "그놈 셸(웨일랜드 컴포지터)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -167,89 +172,73 @@ msgstr ""
"확인란의 기본 상태를 지정합니다."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr "기본 블루투스 어댑터가 여기 연결할 장치를 준비했는지 여부"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"그놈 셸에서는 블루투스 어댑터에 전원이 들어오거나, 기본 어댑터에 연결 설정한 "
"장치가 있을 경우엠나 경우에만 블루투스 메뉴 항목을 표시합니다. 기본 어댑터에 "
"연결된 장치가 하나도 없는 상황이 발견되면 이 값을 초기화합니다."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "달력에 요일 표시"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "참이면 달력에 ISO 요일을 표시합니다."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "프로그램 메뉴를 여는 키 바인딩"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "프로그램 메뉴를 여는 키 바인딩."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "\"프로그램 보기\" 뷰를 여는 키 바인딩"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr "현재 활동 요약의 \"프로그램 보기\" 뷰를 여는 키 바인딩."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "현재 활동 요약을 여는 키 바인딩"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "현재 활동 요약을 여는 키 바인딩."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "알림 목록 보이기를 토글하는 키 바인딩"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "알림 목록 보이기를 토글하는 키 바인딩."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "현재 알림에 포커스하는 키 바인딩"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "현재 알림에 포커스하는 키 바인딩."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"실행 중인 모든 하위 프로세스를 일시 중지하고 계속 하는 키 바인딩, 디버깅 목적"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "사용할 키보드"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "사용할 키보드의 종류."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "프로그램 전환을 현재 작업 공간에만 한정."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -257,11 +246,11 @@ msgstr ""
"참이면, 현재 작업 공간에 창이 있는 프로그램만 프로그램 전환 창에 표시합니다. "
"참이 아니면 모든 프로그램을 표시합니다."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "프로그램 아이콘 모드."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -270,7 +259,7 @@ msgstr ""
"창 전환에서 창이 어떻게 표시될지 설정합니다. 가능한 값은: 'thumbnail-only'(창"
"의 섬네일만 표시), 'app-icon-only'(프로그램 아이콘만 표시), 'both'(모두)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -278,28 +267,28 @@ msgstr ""
"참이면, 현재 작업 공간에 창이 있는 창만 창 전환 창에 표시합니다. 거짓이면 모"
"든 창을 표시합니다."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "상위 창에 모달 대화창 붙이기"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr "그놈 셸을 실행할 때 org.gnome.mutter의 키 대신 사용됩니다."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "화면 가장자리에 창을 놓을 때 가장자리에 맞춥니다"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "작업 공간을 동적으로 관리"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "주 모니터에서만 작업 공간 사용"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "마우스 포인터가 움직이지 않을 때까지 포커스 전환을 미루기"
@ -307,52 +296,51 @@ msgstr "마우스 포인터가 움직이지 않을 때까지 포커스 전환을
msgid "Network Login"
msgstr "네트워크 로그인"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "%s에 대한 기본 설정 대화상자를 불러오는데 오류가 발생했습니다:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "그놈 셸 확장"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "취소"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "다음"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "잠금 풀기"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "로그인"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "세션 선택"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "목록에 없습니까?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(예를 들어, 사용자 또는 %s)"
@ -360,12 +348,12 @@ msgstr "(예를 들어, 사용자 또는 %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "사용자 이름: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "로그인 창"
@ -502,36 +490,16 @@ msgstr "즐겨찾기에 추가"
msgid "Show Details"
msgstr "자세히 보기"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s 프로그램을 즐겨찾기에 추가했습니다."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s 프로그램을 즐겨찾기에서 제거했습니다."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "오디오 장치 선택"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "사운드 설정"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "헤드폰"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "헤드셋"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "마이크"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "배경 바꾸기…"
@ -545,7 +513,7 @@ msgid "Settings"
msgstr "설정"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -555,96 +523,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "일"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "월"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "화"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "수"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "목"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "금"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "토"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "이전 달"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "다음 달"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "주 %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "종일"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "부분 지우기"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "행사"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%B %d일 %A"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%Y년 %B %d일 %A"
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "알림"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "알림 없음"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "행사 없음"
@ -656,7 +622,7 @@ msgstr "외부 드라이브 연결"
msgid "External drive disconnected"
msgstr "외부 드라이브 연결 끊김"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "%s 프로그램으로 열기"
@ -958,11 +924,11 @@ msgid "Keyboard"
msgstr "키보드"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "트레이 숨기기"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "상태 아이콘"
@ -1014,26 +980,10 @@ msgstr "소스 보기"
msgid "Web Page"
msgstr "웹페이지"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "부분 지우기"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "시스템 정보"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "알 수 없는 음악가"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "알 수 없는 제목"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "미디어"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "실행 취소"
@ -1050,22 +1000,22 @@ msgstr "개요"
msgid "Type to search…"
msgstr "검색하려면 입력하십시오…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "끝내기"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "현재 활동"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:650
msgctxt "System menu in the top bar"
msgid "System"
msgstr "시스템"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "위 막대"
@ -1078,15 +1028,15 @@ msgstr "위 막대"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "명령을 입력하십시오"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "닫기"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "다시 시작하는 중…"
@ -1207,40 +1157,28 @@ msgstr "고대비"
msgid "Large Text"
msgstr "큰 글자"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "블루투스"
#: ../js/ui/status/bluetooth.js:56
msgid "Bluetooth Settings"
msgstr "블루투스 설정"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d개 연결"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "끔"
#: ../js/ui/status/bluetooth.js:140
msgid "Not In Use"
msgstr "사용 중 아님"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "켜기"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "끄기"
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "블루투스 설정"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d개 연결"
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "사용 중 아님"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "밝기"
@ -1249,48 +1187,30 @@ msgstr "밝기"
msgid "Show Keyboard Layout"
msgstr "키보드 배치 표시"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "위치 사용"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "사용 않기"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "사생활 보호 설정"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "위치 사용 중"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "위치 사용 않음"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "사용"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "접근 거부"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "접근 허용"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "현재 위치를 %s에서 접근하도록 허용하시겠습니까?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr "위치 정보 접근은 언제든지 사생활 보호 설정에서 바꿀 수 있습니다."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<알 수 없음>"
@ -1426,6 +1346,10 @@ msgstr "네트워크 선택"
msgid "Wi-Fi Settings"
msgstr "와이파이 설정"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "켜기"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1475,36 +1399,31 @@ msgstr "연결이 실패했습니다"
msgid "Activation of network connection failed"
msgstr "네트워크 연결이 실패했습니다"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "전원 설정"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "완전 충전"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "예상치 계산 중…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d 남음(%d %%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "%d%02d 남음(%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "충전까지 %d:%02d(%d %%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "충전까지 %d:%02d(%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1547,6 +1466,10 @@ msgstr "볼륨 바꿈"
msgid "Volume"
msgstr "볼륨"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "마이크"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "다른 사용자로 로그인"
@ -1701,38 +1624,38 @@ msgstr "특정 모드 사용. 예를 들어 로그인 화면에 대해 \"gdm\""
msgid "List possible modes"
msgstr "가능한 모드 목록 표시"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "알 수 없음"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "“%s” 실행에 실패했습니다"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "암호가 일치하지 않습니다."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "빈 암호를 쓸 수 없습니다"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "인증 대화 창을 사용자가 닫았습니다"
#~ msgid "%s is requesting access to your location."
#~ msgstr "%s에서 현재 위치에 접근하도록 요청합니다."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "그놈 셸(웨일랜드 컴포지터)"
#~ msgid "Bluetooth"
#~ msgstr "블루투스"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
#~ msgstr[0] "연결된 장치 %d개"
#~ msgid "Off"
#~ msgstr "끔"
#~ msgid "Authentication required"
#~ msgstr "인증 필요"

379
po/lt.po
View File

@ -4,15 +4,15 @@
# Žygimantas Beručka <zygis@gnome.org>, 2010, 2011, 2012.
# Algimantas Margevičius <gymka@mail.ru>, 2011.
# Mantas Kriaučiūnas <mantas@akl.lt>, 2012, 2013.
# Aurimas Černius <aurisc4@gmail.com>, 2013, 2014, 2015, 2016.
# Aurimas Černius <aurisc4@gmail.com>, 2013, 2014, 2015.
#
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: 2016-03-13 10:20+0000\n"
"PO-Revision-Date: 2016-03-13 21:20+0200\n"
"POT-Creation-Date: 2015-09-30 08:35+0000\n"
"PO-Revision-Date: 2015-09-30 22:16+0300\n"
"Last-Translator: Aurimas Černius <aurisc4@gmail.com>\n"
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
"Language: lt\n"
@ -48,21 +48,26 @@ msgstr "Rodyti visas programas"
msgid "Open the application menu"
msgstr "Atverti programų meniu"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell aplinka"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Langų valdymas ir programų paleidimas"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "GNOME Shell plėtinių nuostatos"
msgstr "GNOME Shell plėtinių nustatymai"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:2
msgid "Configure GNOME Shell Extensions"
msgstr "Konfigūruoti GNOME Shell plėtinius"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME Shell aplinka"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Langų tvarkymas ir programų paleidimas"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME Shell (wayland kompozitorius)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -106,11 +111,11 @@ msgid ""
msgstr ""
"GNOME Shell leidžia įkelti tik šiuo metu veikiančios versijos plėtinius. Šio "
"parametro įjungimas išjungs šį tikrinimą ir bandys įkelti visus plėtinius "
"nepaisant jų nurodomos palaikomos versijos."
"nepaisant jų nurodomas palaikomos versijos."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
msgid "List of desktop file IDs for favorite applications"
msgstr "Mėgstamų programų darbalaukio failų ID sąrašas"
msgstr "Mėgstamų programų darbastalio failų ID sąrašas"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:8
msgid ""
@ -168,106 +173,88 @@ msgstr ""
"numatytąją žymimojo langelio būseną."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Ar numatytasis Bluetooth adapteris buvo nusistatęs su juo susietus įrenginius"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"Apvalkalas rodys Bluetooth meniu elementą tik tuo atveju, jei Bluetooth "
"adapteris yra pajungtas arba jei buvo nustatyti įrenginiai, susieti su "
"numatytuoju adapteriu. Tai bus atstatyta, jeigu kada nors bus pastebėta, kad "
"numatytasis adapteris neturi su juo susietų įrenginių."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Rodyti savaitės dienas kalendoriuje"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Jeigu reikšmė teigiama, kalendoriuje rodyti ISO savaičių datą."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Klavišų susiejimas, kuriuo atveriamas programų meniu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Klavišų susiejimas, kuriuo atveriamas programų meniu."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Klavišų susiejimas, kuriuo atveriamas programų paleidimo vaizdas"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Klavišų susiejimas, kuriuo atveriamas „Programų paleidimas“ veiklų "
"apžvalgoje."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Klavišų susiejimas, kuriuo atveriama apžvalga"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Klavišų susiejimas, kuriuo atveriama veiklų apžvalga."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Klavišų susiejimas pranešimų juostos matomumui perjungti"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Klavišų susiejimas pranešimų juostos matomumui perjungti."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Klavišų susiejimas, kuriuo fokusuojamas aktyvus pranešimas"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Klavišų susiejimas, kuriuo fokusuojamas aktyvus pranešimas."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Klavišų susiejimas, kuris sustabdo ir pratęsia visus veikiančius elementus, "
"derinimui"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Kurią klaviatūrą naudoti"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Naudotinas klaviatūros tipas."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Apriboti perjungėją dabartine darbo sritimi."
msgstr "Apriboti perjungėją dabartiniu darbalaukiu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
msgstr ""
"Jei teigiama, perjungimo lange bus rodomos tik programos, turinčios langų "
"dabartinėje darbo srityje. Priešingu atveju įtraukiamos visos programos."
"Jei teigiama, perjungimo lange bus rodomas tik programos, turinčios langų "
"dabartiniame darbalaukyje. Priešingu atveju įtraukiamos visos programos."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Programos piktogramos veiksena."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -277,36 +264,36 @@ msgstr ""
"„thumbnail-only“ (rodo lango miniatiūrą), „app-icon-only“ (rodo tik "
"programos piktogramą) arba „both“ (abu)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
msgstr ""
"Jei teigiama, perjungimo lange rodomi tik langai iš dabartinės darbo "
"srities. Priešingu atveju įtraukiami visi langai."
"Jei teigiama, perjungimo lange rodomi tik langai iš dabartinio darbalaukio. "
"Priešingu atveju įtraukiami visi langai."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Prikabinti modalinį dialogą prie tėvinio lango"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr "Šis raktas perrašo org.gnome.mutter raktą, kai vykdoma GNOME Shell."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Įjungti kraštų išplėtimą, kai langai numetami ekrano kraštuose"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Darbo sritys yra tvarkomos dinamiškai"
msgstr "Darbalaukiai yra valdomi dinamiškai"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Darbo sritys tik pagrindiniame monitoriuje"
msgstr "Darbalaukiai tik pagrindiniame monitoriuje"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Atidėti fokuso pakeitimus pelei iki žymiklis nustos judėti"
@ -314,52 +301,51 @@ msgstr "Atidėti fokuso pakeitimus pelei iki žymiklis nustos judėti"
msgid "Network Login"
msgstr "Tinklo prisijungimas"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Kilo klaida įkeliant %s nuostatų dialogą:"
msgstr "Kilo klaida įkeliant %s nustatymų dialogą:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "GNOME Shell plėtiniai"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Atsisakyti"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Kitas"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Atrakinti"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Prisijungti"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Pasirinkite seansą"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Nėra sąraše?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(pvz., naudotojas arba %s)"
@ -367,12 +353,12 @@ msgstr "(pvz., naudotojas arba %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Naudotojo vardas: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Prisijungimo langas"
@ -508,36 +494,16 @@ msgstr "Pridėti prie mėgstamų"
msgid "Show Details"
msgstr "Rodyti detalią informaciją"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s pridėta prie jūsų mėgstamų."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s pašalinta iš jūsų mėgstamų."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Pasirinkite garso įrenginį"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Garso nustatymai"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Ausinės"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Ausinės su mikrofonu"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofonas"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Keisti foną…"
@ -551,7 +517,7 @@ msgid "Settings"
msgstr "Nustatymai"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -561,96 +527,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "S"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "P"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "A"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "T"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "K"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "P"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "Š"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Ankstesnis mėnuo"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Kitas mėnuo"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Savaitė %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Visa diena"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1295
msgid "Clear section"
msgstr "Išvalyti skiltį"
#: ../js/ui/calendar.js:1522
msgid "Events"
msgstr "Įvykiai"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %B %d d."
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1535
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %Y m. %B %d d."
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1620
msgid "Notifications"
msgstr "Pranešimai"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1771
msgid "No Notifications"
msgstr "Nėra pranešimų"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1774
msgid "No Events"
msgstr "Nėra įvykių"
@ -662,7 +626,7 @@ msgstr "Prijungta išorinė laikmena"
msgid "External drive disconnected"
msgstr "Atjungta išorinė laikmena"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "Atverti su %s"
@ -764,7 +728,7 @@ msgstr "Būtinas slaptažodis norint prisijungti prie „%s“."
#: ../js/ui/components/networkAgent.js:647 ../js/ui/status/network.js:1658
msgid "Network Manager"
msgstr "Tinklo tvarkymas"
msgstr "Tinklo valdymas"
#: ../js/ui/components/polkitAgent.js:60
msgid "Authentication Required"
@ -980,11 +944,11 @@ msgid "Keyboard"
msgstr "Klaviatūra"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Slėpti dėklą"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Būsenos piktogramos"
@ -1036,26 +1000,10 @@ msgstr "Žiūrėti šaltinį"
msgid "Web Page"
msgstr "Tinklalapis"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Išvalyti skiltį"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Sistemos informacija"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Nežinomas atlikėjas"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Nežinomas pavadinimas"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Medija"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Atšaukti"
@ -1072,22 +1020,23 @@ msgstr "Apžvalga"
msgid "Type to search…"
msgstr "Rašykite, ko ieškote…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Užverti"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Apžvalga"
#: ../js/ui/panel.js:695
#: ../js/ui/panel.js:650
#| msgid "System"
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Sistema"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Viršutinė juosta"
@ -1100,15 +1049,15 @@ msgstr "Viršutinė juosta"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Įveskite komandą"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Užverti"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Perleidžiama…"
@ -1233,16 +1182,19 @@ msgstr "Didelis kontrastas"
msgid "Large Text"
msgstr "Didelis tekstas"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Išjungti"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Bluetooth nustatymai"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
msgid "%d Connected"
msgid_plural "%d Connected"
@ -1250,25 +1202,10 @@ msgstr[0] "%d prijungtas"
msgstr[1] "%d prijungti"
msgstr[2] "%d prijungta"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Išjungta"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
msgid "Not In Use"
msgstr "Naudojamas"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Įjungti"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Išjungti"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Ryškumas"
@ -1277,48 +1214,30 @@ msgstr "Ryškumas"
msgid "Show Keyboard Layout"
msgstr "Rodyti klaviatūros išdėstymą"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
msgid "Location Enabled"
msgstr "Vietos nustatymas įjungtas"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Išjungti"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Privatumo nustatymai"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
msgid "Location In Use"
msgstr "Vietos nustatymas naudojamas"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
msgid "Location Disabled"
msgstr "Vietos nustatymas išjungtas"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Įjungti"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Atmesti prieigą"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Suteikti prieigą"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Suteikti %s prieigą prie jūsų būvimo vietos?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr "Prieigą prie vietos bet kada galima pakeisti privatumo nustatymuose."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<nežinoma>"
@ -1341,7 +1260,7 @@ msgstr "Prisijungta prie %s"
#: ../js/ui/status/network.js:459
#, javascript-format
msgid "%s Unmanaged"
msgstr "%s netvarkomas"
msgstr "%s nevaldomas"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:462
@ -1454,6 +1373,10 @@ msgstr "Pasirinkite tinklą"
msgid "Wi-Fi Settings"
msgstr "Belaidžio ryšio nustatymai"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Įjungti"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
@ -1503,36 +1426,31 @@ msgstr "Nepavyko prisijungti"
msgid "Activation of network connection failed"
msgstr "Tinklo ryšio nepavyko aktyvuoti"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Energijos valdymo nustatymai"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Pilnai įkrauta"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Įvertinama…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "Liko %d%02d (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "Liko %d%02d (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d iki pilno (%d%%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "%d%02d iki pilno (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
@ -1559,7 +1477,7 @@ msgstr "Padėties užrakinimas"
#: ../js/ui/status/system.js:378
msgid "Suspend"
msgstr "Pristabdyti"
msgstr "Užmigdyti"
#: ../js/ui/status/system.js:381
msgid "Power Off"
@ -1573,6 +1491,10 @@ msgstr "Garsumas pakeistas"
msgid "Volume"
msgstr "Garsumas"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofonas"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Prisijungti kitu naudotoju"
@ -1596,7 +1518,7 @@ msgstr "„%s“ yra pasirengusi"
#: ../js/ui/windowManager.js:63
msgid "Do you want to keep these display settings?"
msgstr "Ar norite įrašyti šiuos vaizduoklio nustatymus?"
msgstr "Ar nori įrašyti šiuos vaizduoklio nustatymus?"
#. Translators: this and the following message should be limited in lenght,
#. to avoid ellipsizing the labels.
@ -1654,23 +1576,23 @@ msgstr "Visada viršuje"
#: ../js/ui/windowMenu.js:89
msgid "Always on Visible Workspace"
msgstr "Visada matomoje darbo srityje"
msgstr "Visada matomame darbalaukyje"
#: ../js/ui/windowMenu.js:105
msgid "Move to Workspace Left"
msgstr "Perkelti į kairiau esančią darbo sritį"
msgstr "Perkelti į kairiau esan darbalaukį"
#: ../js/ui/windowMenu.js:110
msgid "Move to Workspace Right"
msgstr "Perkelti į dešiniau esančią darbo sritį"
msgstr "Perkelti į dešiniau esan darbalaukį"
#: ../js/ui/windowMenu.js:115
msgid "Move to Workspace Up"
msgstr "Perkelti į aukščiau esančią darbo sritį"
msgstr "Perkelti į aukščiau esan darbalaukį"
#: ../js/ui/windowMenu.js:120
msgid "Move to Workspace Down"
msgstr "Perkelti į žemiau esančią darbo sritį"
msgstr "Perkelti į žemiau esan darbalaukį"
#: ../js/ui/windowMenu.js:136
msgid "Move to Monitor Up"
@ -1732,33 +1654,30 @@ msgstr "Naudoti konkrečią veikseną, pvz., „gdm“ prisijungimo ekranui"
msgid "List possible modes"
msgstr "Išvardinti galimas veiksenas"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Nežinoma"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Nepavyko paleisti „%s“"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Slaptažodžiai nesutampa."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Slaptažodis negali būti tuščias"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Naudotojas užvėrė tapatybės patvirtinimo dialogą"
#~ msgid "%s is requesting access to your location."
#~ msgstr "%s prašo prieigos prie jūsų buvimo vietos."
#~ msgid "GNOME Shell (wayland compositor)"
#~ msgstr "GNOME Shell (wayland kompozitorius)"
#~ msgid "Bluetooth"
#~ msgstr "Bluetooth"
#~ msgid "%d Connected Device"
#~ msgid_plural "%d Connected Devices"
@ -1766,6 +1685,9 @@ msgstr "Naudotojas užvėrė tapatybės patvirtinimo dialogą"
#~ msgstr[1] "%d prijungti įrenginiai"
#~ msgstr[2] "%d prijungtų įrenginių"
#~ msgid "Off"
#~ msgstr "Išjungta"
#~ msgid "Authentication required"
#~ msgstr "Reikia patvirtinti tapatybę"
@ -1914,6 +1836,9 @@ msgstr "Naudotojas užvėrė tapatybės patvirtinimo dialogą"
#~ msgid "View account"
#~ msgstr "Rodyti paskyrą"
#~ msgid "Unknown reason"
#~ msgstr "Nežinoma priežastis"
#~| msgid "Show the message tray"
#~ msgid "Show the message list"
#~ msgstr "Rodyti pranešimų sąrašą"

377
po/lv.po
View File

@ -5,14 +5,14 @@
# Rudolfs <rudolfs.mazurs@gmail.com>, 2011.
# Rūdofls Mazurs <rudolfs.mazurs@gmail.com>, 2011, 2012, 2013, 2014.
# Pēteris Krišjānis <pecisk@gmail.com>, 2011.
# Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2014, 2015, 2016.
# Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2014, 2015.
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: 2016-03-20 10:24+0000\n"
"PO-Revision-Date: 2016-03-20 21:26+0200\n"
"POT-Creation-Date: 2015-09-20 08:21+0000\n"
"PO-Revision-Date: 2015-09-20 22:00+0300\n"
"Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
"Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
"Language: lv\n"
@ -21,7 +21,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
"2);\n"
"X-Generator: Lokalize 2.0\n"
"X-Generator: Lokalize 1.5\n"
#: ../data/50-gnome-shell-system.xml.in.h:1
msgid "System"
@ -47,6 +47,15 @@ msgstr "Rādīt visas lietotnes"
msgid "Open the application menu"
msgstr "Atvērt lietotnes izvēlni"
#: ../data/gnome-shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME čaula"
#: ../data/gnome-shell.desktop.in.in.h:2
#: ../data/gnome-shell-wayland.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Logu pārvaldība un lietotņu palaišana"
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
msgid "GNOME Shell Extension Preferences"
msgstr "GNOME Shell paplašinājumu iestatījumi"
@ -55,13 +64,9 @@ msgstr "GNOME Shell paplašinājumu iestatījumi"
msgid "Configure GNOME Shell Extensions"
msgstr "Konfigurēt GNOME Shell paplašinājumus"
#: ../data/org.gnome.Shell.desktop.in.in.h:1
msgid "GNOME Shell"
msgstr "GNOME čaula"
#: ../data/org.gnome.Shell.desktop.in.in.h:2
msgid "Window management and application launching"
msgstr "Logu pārvaldība un lietotņu palaišana"
#: ../data/gnome-shell-wayland.desktop.in.in.h:1
msgid "GNOME Shell (wayland compositor)"
msgstr "GNOME čaula (wayland kompozitors)"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
msgid "Enable internal tools useful for developers and testers from Alt-F2"
@ -166,93 +171,75 @@ msgstr ""
"noklusējuma stāvokli."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
msgid ""
"Whether the default Bluetooth adapter had set up devices associated to it"
msgstr ""
"Vai noklusējuma Bluetooth adapteram ir iestatītas ar to asociētas ierīces"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid ""
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
"powered, or if there were devices set up associated with the default "
"adapter. This will be reset if the default adapter is ever seen not to have "
"devices associated to it."
msgstr ""
"Čaula rādīs Bluetooth izvēlnes vienumu tikai tad, ja Bluetooth adapters ir "
"ieslēgts vai ja ir iestatītas ierīces, kas i saistītas ar noklusējuma "
"adapteri. Tas tiks atstatīts, ja noklusējuma adapters jebkad tiks redzēts "
"bez ar to saistītām ierīcēm."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Show the week date in the calendar"
msgstr "Kalendārā rādīt nedēļas datumu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
msgid "If true, display the ISO week date in the calendar."
msgstr "Ja patiess, kalendārā rādīt ISO nedēļas datumus."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
msgid "Keybinding to open the application menu"
msgstr "Taustiņu sasaiste, kas atver lietotnes izvēlni"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
msgid "Keybinding to open the application menu."
msgstr "Taustiņu sasaiste, kas atver lietotnes izvēlni."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
msgid "Keybinding to open the \"Show Applications\" view"
msgstr "Taustiņu sasaiste, kas atver “Rādīt lietotnes” skatu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
msgid ""
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
msgstr ""
"Taustiņu sasaiste, kas atver “Rādīt lietotnes” aktivitāšu pārskata skatu."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
msgid "Keybinding to open the overview"
msgstr "Taustiņu sasaiste, kas atver pārskatu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
msgid "Keybinding to open the Activities Overview."
msgstr "Taustiņu sasaiste, kas atver aktivitāšu pārskatu."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
msgid "Keybinding to toggle the visibility of the notification list"
msgstr "Taustiņu sasaiste, kas pārslēdz paziņojumu saraksta redzamību"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
msgid "Keybinding to toggle the visibility of the notification list."
msgstr "Taustiņu sasaiste, kas pārslēdz paziņojumu saraksta redzamību."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
msgid "Keybinding to focus the active notification"
msgstr "Taustiņu sasaiste, kas fokusē aktīvo paziņojumu"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
msgid "Keybinding to focus the active notification."
msgstr "Taustiņu sasaiste, kas fokusē aktīvo paziņojumu."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
msgid ""
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
msgstr ""
"Taustiņu sasaiste, kas pauzē un turpina visus tvīnus (tweens) atkļūdošanas "
"nolūkiem"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
msgid "Which keyboard to use"
msgstr "Kuru tastatūru izmantot"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
msgid "The type of keyboard to use."
msgstr "Izmantojamās tastatūras tips."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
msgid "Limit switcher to current workspace."
msgstr "Ierobežot pārslēdzēju uz pašreizējo darbvietu."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
msgid ""
"If true, only applications that have windows on the current workspace are "
"shown in the switcher. Otherwise, all applications are included."
@ -260,11 +247,11 @@ msgstr ""
"Ja patiess, pārslēdzējā tiek rādītas tikai lietotnes, kas ir pašreizējā "
"darbvietā. Citāti tiek iekļautas visas lietotnes."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
msgid "The application icon mode."
msgstr "Lietotnes ikonas režīms."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
msgid ""
"Configures how the windows are shown in the switcher. Valid possibilities "
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
@ -274,7 +261,7 @@ msgstr ""
"only” (rāda loga sīktēlu), “app-icon-only” (rāda tikai lietotnes ikonu) vai "
"“both” (abi)."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
msgid ""
"If true, only windows from the current workspace are shown in the switcher. "
"Otherwise, all windows are included."
@ -282,28 +269,28 @@ msgstr ""
"Ja patiess, pārslēdzējā tiek rādītas tikai lietotnes no pašreizējās "
"darbvietas. Citāti tiek iekļautas visas lietotnes."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
msgid "Attach modal dialog to the parent window"
msgstr "Pievienot modālo dialoglodziņu vecāka logam"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
msgid ""
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
msgstr "Šī atslēga pārraksta org.gnome.mutter atslēgu, darbinot GNOME čaulu."
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
msgid "Enable edge tiling when dropping windows on screen edges"
msgstr "Aktivēt logu sānisko izklāšanu, kad to nomet uz ekrāna malas"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
msgid "Workspaces are managed dynamically"
msgstr "Darbvietas tiek pārvaldītas dinamiski"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
msgid "Workspaces only on primary monitor"
msgstr "Darbvietas tikai uz galvenā monitora"
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
msgid "Delay focus changes in mouse mode until the pointer stops moving"
msgstr "Peles režīmā aizkavēt fokusa izmaiņas, līdz rādītājs pārstāj kustēties"
@ -311,52 +298,51 @@ msgstr "Peles režīmā aizkavēt fokusa izmaiņas, līdz rādītājs pārstāj
msgid "Network Login"
msgstr "Tīkla ierakstīšanās"
#: ../js/extensionPrefs/main.js:117
#: ../js/extensionPrefs/main.js:122
#, javascript-format
msgid "There was an error loading the preferences dialog for %s:"
msgstr "Ielādējot %s iestatījumu dialogu, gadījās kļūda:"
#: ../js/extensionPrefs/main.js:149
#: ../js/extensionPrefs/main.js:154
msgid "GNOME Shell Extensions"
msgstr "GNOME čaulas paplašinājumi"
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
#: ../js/ui/components/networkAgent.js:145
#: ../js/gdm/authPrompt.js:147 ../js/ui/components/networkAgent.js:145
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
#: ../js/ui/status/network.js:916
msgid "Cancel"
msgstr "Atcelt"
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
#: ../js/gdm/authPrompt.js:448
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
#: ../js/gdm/authPrompt.js:447
msgid "Next"
msgstr "Nākamais"
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
#: ../js/ui/unlockDialog.js:59
msgid "Unlock"
msgstr "Atbloķēt"
#: ../js/gdm/authPrompt.js:214
#: ../js/gdm/authPrompt.js:213
msgctxt "button"
msgid "Sign In"
msgstr "Ierakstīties"
#: ../js/gdm/loginDialog.js:285
#: ../js/gdm/loginDialog.js:281
msgid "Choose Session"
msgstr "Izvēlieties sesiju"
#. translators: this message is shown below the user list on the
#. login screen. It can be activated to reveal an entry for
#. manually entering the username.
#: ../js/gdm/loginDialog.js:435
#: ../js/gdm/loginDialog.js:431
msgid "Not listed?"
msgstr "Nav sarakstā?"
#. Translators: this message is shown below the username entry field
#. to clue the user in on how to login to the local network realm
#: ../js/gdm/loginDialog.js:854
#: ../js/gdm/loginDialog.js:850
#, javascript-format
msgid "(e.g., user or %s)"
msgstr "(piemēram, lietotājs vai %s)"
@ -364,12 +350,12 @@ msgstr "(piemēram, lietotājs vai %s)"
#. TTLS and PEAP are actually much more complicated, but this complication
#. is not visible here since we only care about phase2 authentication
#. (and don't even care of which one)
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
#: ../js/ui/components/networkAgent.js:289
msgid "Username: "
msgstr "Lietotājvārds: "
#: ../js/gdm/loginDialog.js:1196
#: ../js/gdm/loginDialog.js:1184
msgid "Login Window"
msgstr "Ierakstīšanās logs"
@ -505,50 +491,32 @@ msgstr "Pievienot izlasei"
msgid "Show Details"
msgstr "Rādīt sīkāku informāciju"
#: ../js/ui/appFavorites.js:134
#: ../js/ui/appFavorites.js:132
#, javascript-format
msgid "%s has been added to your favorites."
msgstr "%s ir pievienots izlasei."
#: ../js/ui/appFavorites.js:168
#: ../js/ui/appFavorites.js:166
#, javascript-format
msgid "%s has been removed from your favorites."
msgstr "%s ir izņemts no izlases."
#: ../js/ui/audioDeviceSelection.js:59
msgid "Select Audio Device"
msgstr "Izvēlieties audio ierīci"
#: ../js/ui/audioDeviceSelection.js:69
msgid "Sound Settings"
msgstr "Skaņas Iestatījumi"
#: ../js/ui/audioDeviceSelection.js:78
msgid "Headphones"
msgstr "Austiņas"
#: ../js/ui/audioDeviceSelection.js:80
msgid "Headset"
msgstr "Austiņas ar mikrofonu"
#: ../js/ui/audioDeviceSelection.js:82 ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofons"
#: ../js/ui/backgroundMenu.js:19
msgid "Change Background…"
msgstr "Mainīt fonu…"
#: ../js/ui/backgroundMenu.js:21
#| msgid "Privacy Settings"
msgid "Display Settings"
msgstr "Displeja iestatījumi"
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:366
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
#: ../js/ui/status/system.js:366
msgid "Settings"
msgstr "Iestatījumi"
#. Translators: Enter 0-6 (Sunday-Saturday) for non-work days. Examples: "0" (Sunday) "6" (Saturday) "06" (Sunday and Saturday).
#: ../js/ui/calendar.js:47
#: ../js/ui/calendar.js:55
msgctxt "calendar-no-work"
msgid "06"
msgstr "06"
@ -558,96 +526,94 @@ msgstr "06"
#. * NOTE: These grid abbreviations are always shown together
#. * and in order, e.g. "S M T W T F S".
#.
#: ../js/ui/calendar.js:76
#: ../js/ui/calendar.js:84
msgctxt "grid sunday"
msgid "S"
msgstr "Sv"
#. Translators: Calendar grid abbreviation for Monday
#: ../js/ui/calendar.js:78
#: ../js/ui/calendar.js:86
msgctxt "grid monday"
msgid "M"
msgstr "Pr"
#. Translators: Calendar grid abbreviation for Tuesday
#: ../js/ui/calendar.js:80
#: ../js/ui/calendar.js:88
msgctxt "grid tuesday"
msgid "T"
msgstr "Ot"
#. Translators: Calendar grid abbreviation for Wednesday
#: ../js/ui/calendar.js:82
#: ../js/ui/calendar.js:90
msgctxt "grid wednesday"
msgid "W"
msgstr "Tr"
#. Translators: Calendar grid abbreviation for Thursday
#: ../js/ui/calendar.js:84
#: ../js/ui/calendar.js:92
msgctxt "grid thursday"
msgid "T"
msgstr "Ce"
#. Translators: Calendar grid abbreviation for Friday
#: ../js/ui/calendar.js:86
#: ../js/ui/calendar.js:94
msgctxt "grid friday"
msgid "F"
msgstr "Pk"
#. Translators: Calendar grid abbreviation for Saturday
#: ../js/ui/calendar.js:88
#: ../js/ui/calendar.js:96
msgctxt "grid saturday"
msgid "S"
msgstr "Se"
#: ../js/ui/calendar.js:416
#: ../js/ui/calendar.js:566
msgid "Previous month"
msgstr "Iepriekšējais mēnesis"
#: ../js/ui/calendar.js:426
#: ../js/ui/calendar.js:576
msgid "Next month"
msgstr "Nākamais mēnesis"
#: ../js/ui/calendar.js:579
#, no-javascript-format
msgctxt "date day number format"
msgid "%d"
msgstr "%d"
#: ../js/ui/calendar.js:634
#: ../js/ui/calendar.js:783
msgid "Week %V"
msgstr "Nedēļa %V"
#. Translators: Shown in calendar event list for all day events
#. * Keep it short, best if you can use less then 10 characters
#.
#: ../js/ui/calendar.js:695
#: ../js/ui/calendar.js:1188
msgctxt "event list time"
msgid "All Day"
msgstr "Visu dienu"
#: ../js/ui/calendar.js:821
#: ../js/ui/calendar.js:1291
msgid "Clear section"
msgstr "Attīrīt sadaļu"
#: ../js/ui/calendar.js:1518
msgid "Events"
msgstr "Notikumi"
#: ../js/ui/calendar.js:830
#: ../js/ui/calendar.js:1527
msgctxt "calendar heading"
msgid "%A, %B %d"
msgstr "%A, %d. %B"
#: ../js/ui/calendar.js:834
#: ../js/ui/calendar.js:1531
msgctxt "calendar heading"
msgid "%A, %B %d, %Y"
msgstr "%A, %d. %B, %Y."
#: ../js/ui/calendar.js:919
#: ../js/ui/calendar.js:1616
msgid "Notifications"
msgstr "Paziņojumi"
#: ../js/ui/calendar.js:1070
#: ../js/ui/calendar.js:1767
msgid "No Notifications"
msgstr "Nav paziņojumu"
#: ../js/ui/calendar.js:1073
#: ../js/ui/calendar.js:1770
msgid "No Events"
msgstr "Nav notikumu"
@ -659,7 +625,7 @@ msgstr "Pievienots ārējs dzinis"
msgid "External drive disconnected"
msgstr "Atvienots ārējs dzinis"
#: ../js/ui/components/autorunManager.js:355
#: ../js/ui/components/autorunManager.js:354
#, javascript-format
msgid "Open with %s"
msgstr "Atvērt ar %s"
@ -785,7 +751,7 @@ msgstr "Diemžēl tas nenostrādāja. Lūdzu, mēģiniet vēlreiz."
#. Translators: this is the other person changing their old IM name to their new
#. IM name.
#: ../js/ui/components/telepathyClient.js:760
#: ../js/ui/components/telepathyClient.js:759
#, javascript-format
msgid "%s is now known as %s"
msgstr "%s tagad saucas %s"
@ -980,11 +946,11 @@ msgid "Keyboard"
msgstr "Tastatūra"
#. translators: 'Hide' is a verb
#: ../js/ui/legacyTray.js:65
#: ../js/ui/legacyTray.js:66
msgid "Hide tray"
msgstr "Slēpt paplāti"
#: ../js/ui/legacyTray.js:106
#: ../js/ui/legacyTray.js:107
msgid "Status Icons"
msgstr "Statusa ikonas"
@ -1012,7 +978,7 @@ msgstr "Aktivēta"
#. translators:
#. * The device has been disabled
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1828
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1830
msgid "Disabled"
msgstr "Deaktivēta"
@ -1036,26 +1002,10 @@ msgstr "Skatīt avotu"
msgid "Web Page"
msgstr "Tīmekļa lapa"
#: ../js/ui/messageList.js:543
msgid "Clear section"
msgstr "Attīrīt sadaļu"
#: ../js/ui/messageTray.js:1486
msgid "System Information"
msgstr "Sistēmas informācija"
#: ../js/ui/mpris.js:194
msgid "Unknown artist"
msgstr "Nezināms izpildītājs"
#: ../js/ui/mpris.js:195
msgid "Unknown title"
msgstr "Nezināms nosaukums"
#: ../js/ui/mpris.js:217
msgid "Media"
msgstr "Datu nesējs"
#: ../js/ui/overview.js:84
msgid "Undo"
msgstr "Atsaukt"
@ -1072,22 +1022,17 @@ msgstr "Pārskats"
msgid "Type to search…"
msgstr "Rakstiet, lai meklētu…"
#: ../js/ui/panel.js:358
#: ../js/ui/panel.js:352
msgid "Quit"
msgstr "Iziet"
#. Translators: If there is no suitable word for "Activities"
#. in your language, you can use the word for "Overview".
#: ../js/ui/panel.js:414
#: ../js/ui/panel.js:404
msgid "Activities"
msgstr "Aktivitātes"
#: ../js/ui/panel.js:695
msgctxt "System menu in the top bar"
msgid "System"
msgstr "Sistēma"
#: ../js/ui/panel.js:807
#: ../js/ui/panel.js:754
msgid "Top Bar"
msgstr "Augšējā josla"
@ -1100,15 +1045,15 @@ msgstr "Augšējā josla"
msgid "toggle-switch-us"
msgstr "toggle-switch-intl"
#: ../js/ui/runDialog.js:71
#: ../js/ui/runDialog.js:70
msgid "Enter a Command"
msgstr "Ievadiet komandu"
#: ../js/ui/runDialog.js:111 ../js/ui/windowMenu.js:162
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
msgid "Close"
msgstr "Aizvērt"
#: ../js/ui/runDialog.js:282
#: ../js/ui/runDialog.js:281
msgid "Restarting…"
msgstr "Pārstartē…"
@ -1233,42 +1178,32 @@ msgstr "Augsts kontrasts"
msgid "Large Text"
msgstr "Liels teksts"
#: ../js/ui/status/bluetooth.js:47
msgid "Bluetooth"
msgstr "Bluetooth"
#: ../js/ui/status/bluetooth.js:51 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Izslēgt"
#: ../js/ui/status/bluetooth.js:56
#: ../js/ui/status/bluetooth.js:54
msgid "Bluetooth Settings"
msgstr "Bluetooth iestatījumi"
#. Translators: this is the number of connected bluetooth devices
#: ../js/ui/status/bluetooth.js:136
#: ../js/ui/status/bluetooth.js:105
#, javascript-format
#| msgid "Connected"
msgid "%d Connected"
msgid_plural "%d Connected"
msgstr[0] "%d savienots"
msgstr[1] "%d savienoti"
msgstr[2] "%d savienotu"
#: ../js/ui/status/bluetooth.js:138
msgid "Off"
msgstr "Izslēgts"
#: ../js/ui/status/bluetooth.js:140
#: ../js/ui/status/bluetooth.js:107
#| msgid "In Use"
msgid "Not In Use"
msgstr "Netiek izmantots"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Ieslēgt"
#: ../js/ui/status/bluetooth.js:142 ../js/ui/status/network.js:178
#: ../js/ui/status/network.js:353 ../js/ui/status/network.js:1279
#: ../js/ui/status/network.js:1394 ../js/ui/status/rfkill.js:90
#: ../js/ui/status/rfkill.js:117
msgid "Turn Off"
msgstr "Izslēgt"
#: ../js/ui/status/brightness.js:44
msgid "Brightness"
msgstr "Gaišums"
@ -1277,49 +1212,33 @@ msgstr "Gaišums"
msgid "Show Keyboard Layout"
msgstr "Rādīt tastatūras izkārtojumu"
#: ../js/ui/status/location.js:107 ../js/ui/status/location.js:215
#: ../js/ui/status/location.js:71 ../js/ui/status/location.js:177
#| msgid "Location"
msgid "Location Enabled"
msgstr "Atrašanās vieta ieslēgta"
#: ../js/ui/status/location.js:108 ../js/ui/status/location.js:216
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
msgid "Disable"
msgstr "Izslēgt"
#: ../js/ui/status/location.js:109
#: ../js/ui/status/location.js:73
msgid "Privacy Settings"
msgstr "Privātuma iestatījumi"
#: ../js/ui/status/location.js:214
#: ../js/ui/status/location.js:176
#| msgid "Location"
msgid "Location In Use"
msgstr "Atrašanās vieta tiek izmantota"
#: ../js/ui/status/location.js:218
#: ../js/ui/status/location.js:180
#| msgid "Connection failed"
msgid "Location Disabled"
msgstr "Atrašanās vieta ir izslēgta"
#: ../js/ui/status/location.js:219
#: ../js/ui/status/location.js:181
msgid "Enable"
msgstr "Ieslēgt"
#: ../js/ui/status/location.js:426
msgid "Deny Access"
msgstr "Liegt pieeju"
#: ../js/ui/status/location.js:429
msgid "Grant Access"
msgstr "Piešķirt pieeju"
#. Translators: %s is an application name
#: ../js/ui/status/location.js:435
#, javascript-format
msgid "Give %s access to your location?"
msgstr "Dot %s pieeju jūsu atrašanās vietai?"
#: ../js/ui/status/location.js:437
msgid "Location access can be changed at any time from the privacy settings."
msgstr ""
"Pieeju atrašanās vietai var mainīt jebkurā brīdī privātuma iestatījumos."
#: ../js/ui/status/network.js:101
msgid "<unknown>"
msgstr "<nezināms>"
@ -1333,6 +1252,7 @@ msgstr "%s ir izslēgta"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:454
#, javascript-format
#| msgid "Connected"
msgid "%s Connected"
msgstr "%s ir savienots"
@ -1341,24 +1261,28 @@ msgstr "%s ir savienots"
#. %s is a network identifier
#: ../js/ui/status/network.js:459
#, javascript-format
#| msgid "Unmanaged"
msgid "%s Unmanaged"
msgstr "%s nav pārvaldīts"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:462
#, javascript-format
#| msgid "Disconnecting"
msgid "%s Disconnecting"
msgstr "%s atvienojas"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
#, javascript-format
#| msgid "Connecting"
msgid "%s Connecting"
msgstr "%s savienojas"
#. Translators: this is for network connections that require some kind of key or password; %s is a network identifier
#: ../js/ui/status/network.js:472
#, javascript-format
#| msgid "Wired 802.1X authentication"
msgid "%s Requires Authentication"
msgstr "%s pieprasa autentificēšanos"
@ -1366,6 +1290,7 @@ msgstr "%s pieprasa autentificēšanos"
#. module, which is missing; %s is a network identifier
#: ../js/ui/status/network.js:480
#, javascript-format
#| msgid "Firmware missing"
msgid "Firmware Missing For %s"
msgstr "%s trūkst aparātprogrammatūras"
@ -1373,12 +1298,14 @@ msgstr "%s trūkst aparātprogrammatūras"
#. is disabled by rfkill, or it has no coverage; %s is a network identifier
#: ../js/ui/status/network.js:484
#, javascript-format
#| msgid "Unavailable"
msgid "%s Unavailable"
msgstr "%s nav pieejams"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:487
#, javascript-format
#| msgid "Connection failed"
msgid "%s Connection Failed"
msgstr "%s neizdevās savienoties"
@ -1393,6 +1320,7 @@ msgstr "Mobilās platjoslas iestatījumi"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1305
#, javascript-format
#| msgid "Hardware Disabled"
msgid "%s Hardware Disabled"
msgstr "%s ir izslēgts aparatūrā"
@ -1400,6 +1328,7 @@ msgstr "%s ir izslēgts aparatūrā"
#. because it's disabled by rfkill (airplane mode); %s is a network identifier
#: ../js/ui/status/network.js:592
#, javascript-format
#| msgid "Disabled"
msgid "%s Disabled"
msgstr "%s ir izslēgts"
@ -1455,15 +1384,21 @@ msgstr "Izvēlieties tīklu"
msgid "Wi-Fi Settings"
msgstr "Wi-Fi iestatījumi"
#: ../js/ui/status/network.js:1279
msgid "Turn On"
msgstr "Ieslēgt"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1296
#, javascript-format
#| msgid "Hotspot Active"
msgid "%s Hotspot Active"
msgstr "%s tīklājs ir aktīvs"
#. Translators: %s is a network identifier
#: ../js/ui/status/network.js:1311
#, javascript-format
#| msgid "Not Connected"
msgid "%s Not Connected"
msgstr "%s nav savienots"
@ -1493,6 +1428,7 @@ msgid "VPN"
msgstr "VPN"
#: ../js/ui/status/network.js:1513
#| msgid "Power Off"
msgid "VPN Off"
msgstr "VPN ir izslēgts"
@ -1504,41 +1440,37 @@ msgstr "Neizdevās savienoties"
msgid "Activation of network connection failed"
msgstr "Neizdevās tīkla savienojuma aktivēšana"
#: ../js/ui/status/power.js:61
#: ../js/ui/status/power.js:49
msgid "Power Settings"
msgstr "Barošanas iestatījumi"
#: ../js/ui/status/power.js:77
#: ../js/ui/status/power.js:65
msgid "Fully Charged"
msgstr "Pilnībā uzlādēta"
#. 0 is reported when UPower does not have enough data
#. to estimate battery life
#: ../js/ui/status/power.js:84 ../js/ui/status/power.js:90
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
msgid "Estimating…"
msgstr "Novērtē…"
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
#: ../js/ui/status/power.js:98
#: ../js/ui/status/power.js:86
#, javascript-format
msgid "%d%02d Remaining (%d%%)"
msgstr "Atlicis %d.%02d (%d%%)"
msgid "%d%02d Remaining (%d%%)"
msgstr "Atlicis %d.%02d (%d%%)"
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
#: ../js/ui/status/power.js:103
#: ../js/ui/status/power.js:91
#, javascript-format
msgid "%d%02d Until Full (%d%%)"
msgstr "Līdz pilnai %d.%02d (%d%%)"
#: ../js/ui/status/power.js:131 ../js/ui/status/power.js:133
#, javascript-format
msgid "%d%%"
msgstr "%d%%"
msgid "%d%02d Until Full (%d%%)"
msgstr "Līdz pilnai %d.%02d (%d%%)"
#. The menu only appears when airplane mode is on, so just
#. statically build it as if it was on, rather than dynamically
#. changing the menu contents.
#: ../js/ui/status/rfkill.js:88
#| msgid "Airplane Mode is On"
msgid "Airplane Mode On"
msgstr "Lidmašīnas režīms ir ieslēgts"
@ -1551,6 +1483,7 @@ msgid "Log Out"
msgstr "Izrakstīties"
#: ../js/ui/status/system.js:353
#| msgid "Power Settings"
msgid "Account Settings"
msgstr "Konta iestatījumi"
@ -1574,6 +1507,10 @@ msgstr "Skaļums ir mainīts"
msgid "Volume"
msgstr "Skaļums"
#: ../js/ui/status/volume.js:213
msgid "Microphone"
msgstr "Mikrofons"
#: ../js/ui/unlockDialog.js:67
msgid "Log in as another user"
msgstr "Ierakstīties kā citam lietotājam"
@ -1658,10 +1595,12 @@ msgid "Always on Visible Workspace"
msgstr "Vienmēr redzamajā darbvietā"
#: ../js/ui/windowMenu.js:105
#| msgid "Move to Workspace Up"
msgid "Move to Workspace Left"
msgstr "Pārvietot uz darbvietu pa kreisi"
#: ../js/ui/windowMenu.js:110
#| msgid "Move to Workspace Up"
msgid "Move to Workspace Right"
msgstr "Pārvietot uz darbvietu pa labi"
@ -1674,10 +1613,12 @@ msgid "Move to Workspace Down"
msgstr "Pārvietot uz zemāku darbvietu"
#: ../js/ui/windowMenu.js:136
#| msgid "Move to Workspace Up"
msgid "Move to Monitor Up"
msgstr "Pārvietot uz augstāku monitoru"
#: ../js/ui/windowMenu.js:142
#| msgid "Move to Workspace Down"
msgid "Move to Monitor Down"
msgstr "Pārvietot uz zemāku monitoru"
@ -1695,7 +1636,7 @@ msgstr "Evolution kalendārs"
#. translators:
#. * The number of sound outputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1835
#: ../src/gvc/gvc-mixer-control.c:1837
#, c-format
msgid "%u Output"
msgid_plural "%u Outputs"
@ -1705,7 +1646,7 @@ msgstr[2] "%u izvadkanāli"
#. translators:
#. * The number of sound inputs on a particular device
#: ../src/gvc/gvc-mixer-control.c:1845
#: ../src/gvc/gvc-mixer-control.c:1847
#, c-format
msgid "%u Input"
msgid_plural "%u Inputs"
@ -1713,44 +1654,44 @@ msgstr[0] "%u ievadkanāls"
msgstr[1] "%u ievadkanāli"
msgstr[2] "%u ievadkanāli"
#: ../src/gvc/gvc-mixer-control.c:2371
#: ../src/gvc/gvc-mixer-control.c:2373
msgid "System Sounds"
msgstr "Sistēmas skaņas"
#: ../src/main.c:381
#: ../src/main.c:373
msgid "Print version"
msgstr "Drukāt versiju"
#: ../src/main.c:387
#: ../src/main.c:379
msgid "Mode used by GDM for login screen"
msgstr "Režīms, ko izmantot GDM pieteikšanās ekrānam"
#: ../src/main.c:393
#: ../src/main.c:385
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
msgstr "Izmantot specifisku metodi, piemēram, “gdm” ierakstīšanās ekrānam"
#: ../src/main.c:399
#: ../src/main.c:391
msgid "List possible modes"
msgstr "Uzskaitīt iespējamās metodes"
#: ../src/shell-app.c:246
#: ../src/shell-app.c:239
msgctxt "program"
msgid "Unknown"
msgstr "Nezināma"
#: ../src/shell-app.c:487
#: ../src/shell-app.c:480
#, c-format
msgid "Failed to launch “%s”"
msgstr "Neizdevās palaist “%s”"
#: ../src/shell-keyring-prompt.c:730
#: ../src/shell-keyring-prompt.c:742
msgid "Passwords do not match."
msgstr "Paroles nesakrīt."
#: ../src/shell-keyring-prompt.c:738
#: ../src/shell-keyring-prompt.c:750
msgid "Password cannot be blank"
msgstr "Parole nevar būt tukša"
#: ../src/shell-polkit-authentication-agent.c:353
#: ../src/shell-polkit-authentication-agent.c:346
msgid "Authentication dialog was dismissed by the user"
msgstr "Lietotājs noraidīja autentifikācijas dialoglodziņu"

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