Compare commits
46 Commits
citadel
...
gnome-3-18
Author | SHA1 | Date | |
---|---|---|---|
|
a8c769e0ff | ||
|
efd8b2d3a6 | ||
|
2b8d16e685 | ||
|
598cf48973 | ||
|
ce811ec063 | ||
|
535fb0e2a0 | ||
|
281101d942 | ||
|
045e1f01af | ||
|
db252a65f8 | ||
|
358ee88e1c | ||
|
cdc9652f5b | ||
|
fcfa752fbd | ||
|
4651b7adcc | ||
|
4562a431ad | ||
|
f5d9d188a7 | ||
|
cca01e3f02 | ||
|
1874f3605d | ||
|
3001f3376c | ||
|
491e511a96 | ||
|
293bc98394 | ||
|
2ed3482d54 | ||
|
4e4414a84d | ||
|
934a08f28f | ||
|
732ea2a91e | ||
|
aae6a3cbbd | ||
|
f67a6589bd | ||
|
88c1fa8a3e | ||
|
012443bffa | ||
|
61b14c7f04 | ||
|
13dff7d5eb | ||
|
55087d03e4 | ||
|
e7528bf2fa | ||
|
9e64a1e3d6 | ||
|
007ac93cd6 | ||
|
d8336efddc | ||
|
a83f822512 | ||
|
f64d64035a | ||
|
5583f881df | ||
|
10e4382a7d | ||
|
9f0ee0dc9f | ||
|
2f82f783f2 | ||
|
4d066e3916 | ||
|
342fbd16d3 | ||
|
8ae0c69ccf | ||
|
bed660bdf4 | ||
|
ab2ca17b76 |
52
NEWS
52
NEWS
@ -1,3 +1,55 @@
|
|||||||
|
3.18.5
|
||||||
|
======
|
||||||
|
* Fix deleting chat notifications in calendar [Florian; #747991]
|
||||||
|
* Fix recount issue in network agent component [Christophe; #759708]
|
||||||
|
* Plug a memory leak [Aaron; #735705]
|
||||||
|
* Do not assert on non-fatal runtime errors [Florian; #765061]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Christophe Fergeau, Florian Müllner, Aaron Plattner
|
||||||
|
|
||||||
|
Translations:
|
||||||
|
Matej Urbančič [sl], Marek Černocký [cs]
|
||||||
|
|
||||||
|
3.18.4
|
||||||
|
======
|
||||||
|
* Fix thumbnail scaling in window switcher on HiDPI [Florian; #758676]
|
||||||
|
* loginDialog: Update user list on user changes [Michael; #758568]
|
||||||
|
* gdm: Do not allow bypassing disabled Sign In button [Michael; #746180]
|
||||||
|
* Correctly identify VPN secret requests [Lubomir; #760999]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Michael Catanzaro, Florian Müllner, Lubomir Rintel
|
||||||
|
|
||||||
|
Translations:
|
||||||
|
Kristjan SCHMIDT [eo], Daniel Korostil [uk], Andika Triwidada [id]
|
||||||
|
|
||||||
|
3.18.3
|
||||||
|
======
|
||||||
|
* Fix browser plugin crash in Firefox [Carlos; #737932, #757940]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Carlos Garcia Campos
|
||||||
|
|
||||||
|
3.18.2
|
||||||
|
======
|
||||||
|
* Fix fullscreen animation glitches [Florian, Cosimo; #756697, #756714]
|
||||||
|
* Fix window menu being closed immediately in top orientation [Rui; #756605]
|
||||||
|
* Respect text-scaling factor under wayland [Owen; #756447]
|
||||||
|
* Fix login screen getting stuck after authentification [Ray; #754814]
|
||||||
|
* Fix overview being toggled while still animating [Rui; #756925]
|
||||||
|
* Improve robustness of browser plugin [Carlos; #737932, #757940]
|
||||||
|
* Misc. bug fixes [Owen, Florian; #756983, #757150, #757779]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Cosimo Cecchi, Carlos Garcia Campos, Rui Matos, Florian Müllner, Ray Strode,
|
||||||
|
Owen W. Taylor
|
||||||
|
|
||||||
|
Translations:
|
||||||
|
Kjartan Maraas [nb], Khaled Hosny [ar], Sveinn í Felli [is],
|
||||||
|
Balázs Meskó [hu], Daniel Șerbănescu [ro], Aron Xu [zh_CN],
|
||||||
|
Anthony Fok [zh_TW]
|
||||||
|
|
||||||
3.18.1
|
3.18.1
|
||||||
======
|
======
|
||||||
* Fix screen freezes when a notification is pushed [Carlos; #755425]
|
* Fix screen freezes when a notification is pushed [Carlos; #755425]
|
||||||
|
@ -3,7 +3,10 @@ mozillalibdir = $(BROWSER_PLUGIN_DIR)
|
|||||||
|
|
||||||
mozillalib_LTLIBRARIES = libgnome-shell-browser-plugin.la
|
mozillalib_LTLIBRARIES = libgnome-shell-browser-plugin.la
|
||||||
|
|
||||||
libgnome_shell_browser_plugin_la_LDFLAGS = -module -avoid-version -no-undefined
|
# 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_LIBADD = \
|
libgnome_shell_browser_plugin_la_LIBADD = \
|
||||||
$(BROWSER_PLUGIN_LIBS)
|
$(BROWSER_PLUGIN_LIBS)
|
||||||
|
@ -43,10 +43,6 @@
|
|||||||
|
|
||||||
#define EXTENSION_DISABLE_VERSION_CHECK_KEY "disable-extension-version-validation"
|
#define EXTENSION_DISABLE_VERSION_CHECK_KEY "disable-extension-version-validation"
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
GDBusProxy *proxy;
|
|
||||||
} PluginData;
|
|
||||||
|
|
||||||
static NPNetscapeFuncs funcs;
|
static NPNetscapeFuncs funcs;
|
||||||
|
|
||||||
static inline gchar *
|
static inline gchar *
|
||||||
@ -145,121 +141,6 @@ check_origin_and_protocol (NPP instance)
|
|||||||
return ret;
|
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 =================== */
|
/* =================== scripting interface =================== */
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -344,45 +225,18 @@ static NPObject *
|
|||||||
plugin_object_allocate (NPP instance,
|
plugin_object_allocate (NPP instance,
|
||||||
NPClass *klass)
|
NPClass *klass)
|
||||||
{
|
{
|
||||||
PluginData *data = instance->pdata;
|
PluginObject *obj = (PluginObject *) funcs.memalloc (sizeof (PluginObject));
|
||||||
PluginObject *obj = g_slice_new0 (PluginObject);
|
|
||||||
|
|
||||||
|
memset (obj, 0, sizeof (PluginObject));
|
||||||
obj->instance = instance;
|
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);
|
|
||||||
|
|
||||||
obj->watch_name_id = g_bus_watch_name (G_BUS_TYPE_SESSION,
|
return (NPObject*) obj;
|
||||||
"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
|
static void
|
||||||
plugin_object_deallocate (NPObject *npobj)
|
plugin_object_deallocate (NPObject *npobj)
|
||||||
{
|
{
|
||||||
PluginObject *obj = (PluginObject*)npobj;
|
funcs.memfree (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
|
static inline gboolean
|
||||||
@ -1033,6 +887,149 @@ init_methods_and_properties (void)
|
|||||||
onextension_changed_id = funcs.getstringidentifier ("onchange");
|
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
|
NPError
|
||||||
NPP_GetValue(NPP instance,
|
NPP_GetValue(NPP instance,
|
||||||
NPPVariable variable,
|
NPPVariable variable,
|
||||||
@ -1043,13 +1040,11 @@ NPP_GetValue(NPP instance,
|
|||||||
switch (variable) {
|
switch (variable) {
|
||||||
case NPPVpluginScriptableNPObject:
|
case NPPVpluginScriptableNPObject:
|
||||||
g_debug ("creating scriptable object");
|
g_debug ("creating scriptable object");
|
||||||
init_methods_and_properties ();
|
if (!instance->pdata)
|
||||||
|
return NPERR_INVALID_INSTANCE_ERROR;
|
||||||
|
|
||||||
*(NPObject**)value = funcs.createobject (instance, &plugin_class);
|
funcs.retainobject (instance->pdata);
|
||||||
break;
|
*(NPObject**)value = instance->pdata;
|
||||||
|
|
||||||
case NPPVpluginNeedsXEmbed:
|
|
||||||
*(bool *)value = TRUE;
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@ -1067,3 +1062,11 @@ NPP_SetWindow(NPP instance,
|
|||||||
{
|
{
|
||||||
return NPERR_NO_ERROR;
|
return NPERR_NO_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int16_t
|
||||||
|
NPP_HandleEvent(NPP instance,
|
||||||
|
void *event)
|
||||||
|
{
|
||||||
|
/* Ignore the event */
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
AC_PREREQ(2.63)
|
AC_PREREQ(2.63)
|
||||||
AC_INIT([gnome-shell],[3.18.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
AC_INIT([gnome-shell],[3.18.5],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||||
AX_IS_RELEASE([git-directory])
|
AX_IS_RELEASE([git-directory])
|
||||||
|
|
||||||
AC_CONFIG_HEADERS([config.h])
|
AC_CONFIG_HEADERS([config.h])
|
||||||
|
@ -189,7 +189,8 @@ const AuthPrompt = new Lang.Class({
|
|||||||
this._updateNextButtonSensitivity(this._entry.text.length > 0);
|
this._updateNextButtonSensitivity(this._entry.text.length > 0);
|
||||||
}));
|
}));
|
||||||
this._entry.clutter_text.connect('activate', Lang.bind(this, function() {
|
this._entry.clutter_text.connect('activate', Lang.bind(this, function() {
|
||||||
this.emit('next');
|
if (this.nextButton.reactive)
|
||||||
|
this.emit('next');
|
||||||
}));
|
}));
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -96,7 +96,7 @@ const UserListItem = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_onDestroy: function() {
|
_onDestroy: function() {
|
||||||
this._user.disconnect(this._userChangedId);
|
this.user.disconnect(this._userChangedId);
|
||||||
},
|
},
|
||||||
|
|
||||||
_onClicked: function() {
|
_onClicked: function() {
|
||||||
@ -212,6 +212,10 @@ const UserList = new Lang.Class({
|
|||||||
return item;
|
return item;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
containsUser: function(user) {
|
||||||
|
return this._items[user.get_user_name()] != null;
|
||||||
|
},
|
||||||
|
|
||||||
addUser: function(user) {
|
addUser: function(user) {
|
||||||
if (!user.is_loaded)
|
if (!user.is_loaded)
|
||||||
return;
|
return;
|
||||||
@ -924,11 +928,7 @@ const LoginDialog = new Lang.Class({
|
|||||||
},
|
},
|
||||||
onUpdateScope: this,
|
onUpdateScope: this,
|
||||||
onComplete: function() {
|
onComplete: function() {
|
||||||
let id = Mainloop.idle_add(Lang.bind(this, function() {
|
this._greeter.call_start_session_when_ready_sync(serviceName, true, null);
|
||||||
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 });
|
onCompleteScope: this });
|
||||||
},
|
},
|
||||||
@ -1130,6 +1130,10 @@ const LoginDialog = new Lang.Class({
|
|||||||
this._userManager.disconnect(this._userRemovedId);
|
this._userManager.disconnect(this._userRemovedId);
|
||||||
this._userRemovedId = 0;
|
this._userRemovedId = 0;
|
||||||
}
|
}
|
||||||
|
if (this._userChangedId) {
|
||||||
|
this._userManager.disconnect(this._userChangedId);
|
||||||
|
this._userChangedId = 0;
|
||||||
|
}
|
||||||
this._textureCache.disconnect(this._updateLogoTextureId);
|
this._textureCache.disconnect(this._updateLogoTextureId);
|
||||||
Main.layoutManager.disconnect(this._startupCompleteId);
|
Main.layoutManager.disconnect(this._startupCompleteId);
|
||||||
if (this._settings) {
|
if (this._settings) {
|
||||||
@ -1176,6 +1180,14 @@ const LoginDialog = new Lang.Class({
|
|||||||
this._userList.removeUser(user);
|
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;
|
return GLib.SOURCE_REMOVE;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -685,15 +685,17 @@ const WindowIcon = new Lang.Class({
|
|||||||
|
|
||||||
this._icon.destroy_all_children();
|
this._icon.destroy_all_children();
|
||||||
|
|
||||||
|
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
|
||||||
|
|
||||||
switch (mode) {
|
switch (mode) {
|
||||||
case AppIconMode.THUMBNAIL_ONLY:
|
case AppIconMode.THUMBNAIL_ONLY:
|
||||||
size = WINDOW_PREVIEW_SIZE;
|
size = WINDOW_PREVIEW_SIZE;
|
||||||
this._icon.add_actor(_createWindowClone(mutterWindow, WINDOW_PREVIEW_SIZE));
|
this._icon.add_actor(_createWindowClone(mutterWindow, size * scaleFactor));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case AppIconMode.BOTH:
|
case AppIconMode.BOTH:
|
||||||
size = WINDOW_PREVIEW_SIZE;
|
size = WINDOW_PREVIEW_SIZE;
|
||||||
this._icon.add_actor(_createWindowClone(mutterWindow, WINDOW_PREVIEW_SIZE));
|
this._icon.add_actor(_createWindowClone(mutterWindow, size * scaleFactor));
|
||||||
|
|
||||||
if (this.app)
|
if (this.app)
|
||||||
this._icon.add_actor(this._createAppIcon(this.app,
|
this._icon.add_actor(this._createAppIcon(this.app,
|
||||||
@ -705,7 +707,7 @@ const WindowIcon = new Lang.Class({
|
|||||||
this._icon.add_actor(this._createAppIcon(this.app, size));
|
this._icon.add_actor(this._createAppIcon(this.app, size));
|
||||||
}
|
}
|
||||||
|
|
||||||
this._icon.set_size(size, size);
|
this._icon.set_size(size * scaleFactor, size * scaleFactor);
|
||||||
},
|
},
|
||||||
|
|
||||||
_createAppIcon: function(app, size) {
|
_createAppIcon: function(app, size) {
|
||||||
|
@ -7,7 +7,7 @@ const St = imports.gi.St;
|
|||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
const Atk = imports.gi.Atk;
|
const Atk = imports.gi.Atk;
|
||||||
|
|
||||||
const ANIMATED_ICON_UPDATE_TIMEOUT = 14;
|
const ANIMATED_ICON_UPDATE_TIMEOUT = 16;
|
||||||
|
|
||||||
const Animation = new Lang.Class({
|
const Animation = new Lang.Class({
|
||||||
Name: 'Animation',
|
Name: 'Animation',
|
||||||
@ -33,7 +33,7 @@ const Animation = new Lang.Class({
|
|||||||
if (this._frame == 0)
|
if (this._frame == 0)
|
||||||
this._showFrame(0);
|
this._showFrame(0);
|
||||||
|
|
||||||
this._timeoutId = Mainloop.timeout_add(this._speed, Lang.bind(this, this._update));
|
this._timeoutId = GLib.timeout_add(GLib.PRIORITY_LOW, this._speed, Lang.bind(this, this._update));
|
||||||
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._update');
|
GLib.Source.set_name_by_id(this._timeoutId, '[gnome-shell] this._update');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -469,6 +469,7 @@ const ChatSource = new Lang.Class({
|
|||||||
|
|
||||||
destroy: function(reason) {
|
destroy: function(reason) {
|
||||||
if (this._client.is_handling_channel(this._channel)) {
|
if (this._client.is_handling_channel(this._channel)) {
|
||||||
|
this._ackMessages();
|
||||||
// The chat box has been destroyed so it can't
|
// The chat box has been destroyed so it can't
|
||||||
// handle the channel any more.
|
// handle the channel any more.
|
||||||
this._channel.close_async(function(channel, result) {
|
this._channel.close_async(function(channel, result) {
|
||||||
|
@ -459,7 +459,8 @@ const ActivitiesButton = new Lang.Class({
|
|||||||
|
|
||||||
if (event.type() == Clutter.EventType.TOUCH_END ||
|
if (event.type() == Clutter.EventType.TOUCH_END ||
|
||||||
event.type() == Clutter.EventType.BUTTON_RELEASE)
|
event.type() == Clutter.EventType.BUTTON_RELEASE)
|
||||||
Main.overview.toggle();
|
if (Main.overview.shouldToggleByCornerOrButton())
|
||||||
|
Main.overview.toggle();
|
||||||
|
|
||||||
return Clutter.EVENT_PROPAGATE;
|
return Clutter.EVENT_PROPAGATE;
|
||||||
},
|
},
|
||||||
@ -467,7 +468,8 @@ const ActivitiesButton = new Lang.Class({
|
|||||||
_onKeyRelease: function(actor, event) {
|
_onKeyRelease: function(actor, event) {
|
||||||
let symbol = event.get_key_symbol();
|
let symbol = event.get_key_symbol();
|
||||||
if (symbol == Clutter.KEY_Return || symbol == Clutter.KEY_space) {
|
if (symbol == Clutter.KEY_Return || symbol == Clutter.KEY_space) {
|
||||||
Main.overview.toggle();
|
if (Main.overview.shouldToggleByCornerOrButton())
|
||||||
|
Main.overview.toggle();
|
||||||
}
|
}
|
||||||
return Clutter.EVENT_PROPAGATE;
|
return Clutter.EVENT_PROPAGATE;
|
||||||
},
|
},
|
||||||
|
@ -1235,15 +1235,17 @@ const WindowManager = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_fullscreenWindow: function(shellwm, actor, oldFrameRect, oldBufferRect) {
|
_fullscreenWindow: function(shellwm, actor, oldFrameRect, oldBufferRect) {
|
||||||
actor.translation_x = oldFrameRect.x;
|
let monitor = Main.layoutManager.monitors[actor.meta_window.get_monitor()];
|
||||||
actor.translation_y = oldFrameRect.y;
|
actor.translation_x = oldFrameRect.x - monitor.x;
|
||||||
|
actor.translation_y = oldFrameRect.y - monitor.y;
|
||||||
this._fullscreenAnimation(shellwm, actor, oldFrameRect);
|
this._fullscreenAnimation(shellwm, actor, oldFrameRect);
|
||||||
},
|
},
|
||||||
|
|
||||||
_unfullscreenWindow: function(shellwm, actor, oldFrameRect, oldBufferRect) {
|
_unfullscreenWindow: function(shellwm, actor, oldFrameRect, oldBufferRect) {
|
||||||
let targetRect = actor.meta_window.get_frame_rect();
|
let targetRect = actor.meta_window.get_frame_rect();
|
||||||
actor.translation_x = -targetRect.x;
|
let monitor = Main.layoutManager.monitors[actor.meta_window.get_monitor()];
|
||||||
actor.translation_y = -targetRect.y;
|
actor.translation_x = -(targetRect.x - monitor.x);
|
||||||
|
actor.translation_y = -(targetRect.y - monitor.y);
|
||||||
this._fullscreenAnimation(shellwm, actor, oldFrameRect);
|
this._fullscreenAnimation(shellwm, actor, oldFrameRect);
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -1294,7 +1296,10 @@ const WindowManager = new Lang.Class({
|
|||||||
transition: 'easeOutQuad',
|
transition: 'easeOutQuad',
|
||||||
onComplete: this._sizeChangeWindowDone,
|
onComplete: this._sizeChangeWindowDone,
|
||||||
onCompleteScope: this,
|
onCompleteScope: this,
|
||||||
onCompleteParams: [shellwm, actor]
|
onCompleteParams: [shellwm, actor],
|
||||||
|
onOverwrite: this._sizeChangeWindowOverwritten,
|
||||||
|
onOverwriteScope: this,
|
||||||
|
onOverwriteParams: [shellwm, actor]
|
||||||
});
|
});
|
||||||
|
|
||||||
// Now unfreeze actor updates, to get it to the new size.
|
// Now unfreeze actor updates, to get it to the new size.
|
||||||
@ -1319,6 +1324,16 @@ const WindowManager = new Lang.Class({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_sizeChangeWindowOverwritten: function(shellwm, actor) {
|
||||||
|
if (this._removeEffect(this._resizing, actor)) {
|
||||||
|
let actorClone = actor.__fullscreenClone;
|
||||||
|
if (actorClone) {
|
||||||
|
actorClone.destroy();
|
||||||
|
delete actor.__fullscreenClone;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
_hasAttachedDialogs: function(window, ignoreWindow) {
|
_hasAttachedDialogs: function(window, ignoreWindow) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
window.foreach_transient(function(win) {
|
window.foreach_transient(function(win) {
|
||||||
|
@ -214,7 +214,7 @@ const WindowMenuManager = new Lang.Class({
|
|||||||
menu.close();
|
menu.close();
|
||||||
});
|
});
|
||||||
|
|
||||||
this._sourceActor.set_size(rect.width, rect.height);
|
this._sourceActor.set_size(Math.max(1, rect.width), Math.max(1, rect.height));
|
||||||
this._sourceActor.set_position(rect.x, rect.y);
|
this._sourceActor.set_position(rect.x, rect.y);
|
||||||
this._sourceActor.show();
|
this._sourceActor.show();
|
||||||
|
|
||||||
|
@ -28,6 +28,7 @@ gl
|
|||||||
gu
|
gu
|
||||||
he
|
he
|
||||||
hi
|
hi
|
||||||
|
hr
|
||||||
hu
|
hu
|
||||||
ia
|
ia
|
||||||
id
|
id
|
||||||
|
16
po/ar.po
16
po/ar.po
@ -1223,13 +1223,13 @@ msgstr "<غير معروفة>"
|
|||||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1308
|
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1308
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s مغلق"
|
msgstr "%s مغلق"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:454
|
#: ../js/ui/status/network.js:454
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connected"
|
msgid "%s Connected"
|
||||||
msgstr "%s مُتصل"
|
msgstr "%s مُتصل"
|
||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu);
|
#. under NetworkManager's control (and thus cannot be used in the menu);
|
||||||
@ -1237,19 +1237,19 @@ msgstr "%s مُتصل"
|
|||||||
#: ../js/ui/status/network.js:459
|
#: ../js/ui/status/network.js:459
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Unmanaged"
|
msgid "%s Unmanaged"
|
||||||
msgstr "%s غير مُدار"
|
msgstr "%s غير مُدار"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:462
|
#: ../js/ui/status/network.js:462
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Disconnecting"
|
msgid "%s Disconnecting"
|
||||||
msgstr "%s يقطع الاتّصال"
|
msgstr "%s يقطع الاتّصال"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
|
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
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
|
#. 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
|
#: ../js/ui/status/network.js:472
|
||||||
@ -1269,7 +1269,7 @@ msgstr "برمجيات %s المغروسة (Firmware) غير متاحة"
|
|||||||
#: ../js/ui/status/network.js:484
|
#: ../js/ui/status/network.js:484
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Unavailable"
|
msgid "%s Unavailable"
|
||||||
msgstr "%s غير متاح"
|
msgstr "%s غير متاح"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:487
|
#: ../js/ui/status/network.js:487
|
||||||
@ -1296,7 +1296,7 @@ msgstr "عتاد %s مُعَطَّل"
|
|||||||
#: ../js/ui/status/network.js:592
|
#: ../js/ui/status/network.js:592
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Disabled"
|
msgid "%s Disabled"
|
||||||
msgstr "%s معطّل"
|
msgstr "%s معطّل"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:632
|
#: ../js/ui/status/network.js:632
|
||||||
msgid "Use as Internet connection"
|
msgid "Use as Internet connection"
|
||||||
@ -1364,7 +1364,7 @@ msgstr "نقطة اتصال %s نشطة"
|
|||||||
#: ../js/ui/status/network.js:1311
|
#: ../js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
msgstr "%s غير متّصل"
|
msgstr "%s غير متّصل"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:1411
|
#: ../js/ui/status/network.js:1411
|
||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
|
4
po/cs.po
4
po/cs.po
@ -1222,7 +1222,7 @@ msgstr "Zjišťování polohy je povoleno"
|
|||||||
|
|
||||||
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
|
#: ../js/ui/status/location.js:72 ../js/ui/status/location.js:178
|
||||||
msgid "Disable"
|
msgid "Disable"
|
||||||
msgstr "Zakázáno"
|
msgstr "Zakázat"
|
||||||
|
|
||||||
#: ../js/ui/status/location.js:73
|
#: ../js/ui/status/location.js:73
|
||||||
msgid "Privacy Settings"
|
msgid "Privacy Settings"
|
||||||
@ -1238,7 +1238,7 @@ msgstr "Zjišťování polohy je zakázáno"
|
|||||||
|
|
||||||
#: ../js/ui/status/location.js:181
|
#: ../js/ui/status/location.js:181
|
||||||
msgid "Enable"
|
msgid "Enable"
|
||||||
msgstr "Povoleno"
|
msgstr "Povolit"
|
||||||
|
|
||||||
#: ../js/ui/status/network.js:101
|
#: ../js/ui/status/network.js:101
|
||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
|
210
po/id.po
210
po/id.po
@ -7,11 +7,11 @@
|
|||||||
# Wibiharto <wibinem@yahoo.com>, 2011.
|
# Wibiharto <wibinem@yahoo.com>, 2011.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell master\n"
|
"Project-Id-Version: gnome-shell gnome-3-18\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2015-09-19 08:21+0000\n"
|
"POT-Creation-Date: 2016-01-02 10:15+0000\n"
|
||||||
"PO-Revision-Date: 2015-09-19 19:34+0700\n"
|
"PO-Revision-Date: 2016-01-02 19:12+0700\n"
|
||||||
"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
|
"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
|
||||||
"Language-Team: Indonesian <gnome-l10n-id@googlegroups.com>\n"
|
"Language-Team: Indonesian <gnome-l10n-id@googlegroups.com>\n"
|
||||||
"Language: id\n"
|
"Language: id\n"
|
||||||
@ -20,7 +20,7 @@ msgstr ""
|
|||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Poedit-SourceCharset: UTF-8\n"
|
"X-Poedit-SourceCharset: UTF-8\n"
|
||||||
"X-Generator: Poedit 1.6.10\n"
|
"X-Generator: Poedit 1.8.4\n"
|
||||||
|
|
||||||
#: ../data/50-gnome-shell-system.xml.in.h:1
|
#: ../data/50-gnome-shell-system.xml.in.h:1
|
||||||
msgid "System"
|
msgid "System"
|
||||||
@ -336,25 +336,33 @@ msgctxt "button"
|
|||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Masuk"
|
msgstr "Masuk"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:281
|
#: ../js/gdm/loginDialog.js:285
|
||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Pilih Sesi"
|
msgstr "Pilih Sesi"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:431
|
#. 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
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Tak masuk daftar?"
|
msgstr "Tak masuk daftar?"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:850
|
#. 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
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(cth., pengguna dari %s)"
|
msgstr "(cth., pengguna dari %s)"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
|
#. 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/ui/components/networkAgent.js:289
|
#: ../js/ui/components/networkAgent.js:289
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Nama pengguna: "
|
msgstr "Nama pengguna: "
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:1184
|
#: ../js/gdm/loginDialog.js:1196
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Jendela Log Masuk"
|
msgstr "Jendela Log Masuk"
|
||||||
|
|
||||||
@ -362,6 +370,11 @@ msgstr "Jendela Log Masuk"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "Galat otentikasi"
|
msgstr "Galat otentikasi"
|
||||||
|
|
||||||
|
#. We don't show fingerprint messages directly since it's
|
||||||
|
#. not the main auth service. Instead we use the messages
|
||||||
|
#. as a cue to display our own message.
|
||||||
|
#. Translators: this message is shown below the password entry field
|
||||||
|
#. to indicate the user can swipe their finger instead
|
||||||
#: ../js/gdm/util.js:473
|
#: ../js/gdm/util.js:473
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(atau gesekkan jari)"
|
msgstr "(atau gesekkan jari)"
|
||||||
@ -370,6 +383,8 @@ msgstr "(atau gesekkan jari)"
|
|||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "Perintah tidak ditemukan"
|
msgstr "Perintah tidak ditemukan"
|
||||||
|
|
||||||
|
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
||||||
|
#. something nicer
|
||||||
#: ../js/misc/util.js:152
|
#: ../js/misc/util.js:152
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "Tak dapat mengurai perintah:"
|
msgstr "Tak dapat mengurai perintah:"
|
||||||
@ -379,70 +394,78 @@ msgstr "Tak dapat mengurai perintah:"
|
|||||||
msgid "Execution of “%s” failed:"
|
msgid "Execution of “%s” failed:"
|
||||||
msgstr "Eksekusi \"%s\" gagal:"
|
msgstr "Eksekusi \"%s\" gagal:"
|
||||||
|
|
||||||
#. Translators: Time in 24h format */
|
#. Translators: Time in 24h format
|
||||||
#: ../js/misc/util.js:191
|
#: ../js/misc/util.js:191
|
||||||
msgid "%H∶%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H∶%M"
|
msgstr "%H∶%M"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a
|
#. Translators: this is the word "Yesterday" followed by a
|
||||||
#. time string in 24h format. i.e. "Yesterday, 14:30" */
|
#. time string in 24h format. i.e. "Yesterday, 14:30"
|
||||||
#: ../js/misc/util.js:197
|
#: ../js/misc/util.js:197
|
||||||
|
#, no-c-format
|
||||||
msgid "Yesterday, %H∶%M"
|
msgid "Yesterday, %H∶%M"
|
||||||
msgstr "Kemarin, %H:%M"
|
msgstr "Kemarin, %H:%M"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time
|
#. Translators: this is the week day name followed by a time
|
||||||
#. string in 24h format. i.e. "Monday, 14:30" */
|
#. string in 24h format. i.e. "Monday, 14:30"
|
||||||
#: ../js/misc/util.js:203
|
#: ../js/misc/util.js:203
|
||||||
|
#, no-c-format
|
||||||
msgid "%A, %H∶%M"
|
msgid "%A, %H∶%M"
|
||||||
msgstr "%A, %H∶%M"
|
msgstr "%A, %H∶%M"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number
|
#. Translators: this is the month name and day number
|
||||||
#. followed by a time string in 24h format.
|
#. followed by a time string in 24h format.
|
||||||
#. i.e. "May 25, 14:30" */
|
#. i.e. "May 25, 14:30"
|
||||||
#: ../js/misc/util.js:209
|
#: ../js/misc/util.js:209
|
||||||
|
#, no-c-format
|
||||||
msgid "%B %d, %H∶%M"
|
msgid "%B %d, %H∶%M"
|
||||||
msgstr "%d %B, %H∶%M"
|
msgstr "%d %B, %H∶%M"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year
|
#. Translators: this is the month name, day number, year
|
||||||
#. number followed by a time string in 24h format.
|
#. number followed by a time string in 24h format.
|
||||||
#. i.e. "May 25 2012, 14:30" */
|
#. i.e. "May 25 2012, 14:30"
|
||||||
#: ../js/misc/util.js:215
|
#: ../js/misc/util.js:215
|
||||||
|
#, no-c-format
|
||||||
msgid "%B %d %Y, %H∶%M"
|
msgid "%B %d %Y, %H∶%M"
|
||||||
msgstr "%d %B %Y, %H∶%M"
|
msgstr "%d %B %Y, %H∶%M"
|
||||||
|
|
||||||
#. Translators: Time in 12h format */
|
#. Translators: Time in 12h format
|
||||||
#: ../js/misc/util.js:220
|
#: ../js/misc/util.js:220
|
||||||
msgid "%l∶%M %p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%H∶%M"
|
msgstr "%H∶%M"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a
|
#. Translators: this is the word "Yesterday" followed by a
|
||||||
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
|
#. time string in 12h format. i.e. "Yesterday, 2:30 pm"
|
||||||
#: ../js/misc/util.js:226
|
#: ../js/misc/util.js:226
|
||||||
|
#, no-c-format
|
||||||
msgid "Yesterday, %l∶%M %p"
|
msgid "Yesterday, %l∶%M %p"
|
||||||
msgstr "Kemarin, %l∶%M %p"
|
msgstr "Kemarin, %l∶%M %p"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time
|
#. Translators: this is the week day name followed by a time
|
||||||
#. string in 12h format. i.e. "Monday, 2:30 pm" */
|
#. string in 12h format. i.e. "Monday, 2:30 pm"
|
||||||
#: ../js/misc/util.js:232
|
#: ../js/misc/util.js:232
|
||||||
|
#, no-c-format
|
||||||
msgid "%A, %l∶%M %p"
|
msgid "%A, %l∶%M %p"
|
||||||
msgstr "%A, %l∶%M %p"
|
msgstr "%A, %l∶%M %p"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number
|
#. Translators: this is the month name and day number
|
||||||
#. followed by a time string in 12h format.
|
#. followed by a time string in 12h format.
|
||||||
#. i.e. "May 25, 2:30 pm" */
|
#. i.e. "May 25, 2:30 pm"
|
||||||
#: ../js/misc/util.js:238
|
#: ../js/misc/util.js:238
|
||||||
|
#, no-c-format
|
||||||
msgid "%B %d, %l∶%M %p"
|
msgid "%B %d, %l∶%M %p"
|
||||||
msgstr "%d %B, %l∶%M %p"
|
msgstr "%d %B, %l∶%M %p"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year
|
#. Translators: this is the month name, day number, year
|
||||||
#. number followed by a time string in 12h format.
|
#. number followed by a time string in 12h format.
|
||||||
#. i.e. "May 25 2012, 2:30 pm"*/
|
#. i.e. "May 25 2012, 2:30 pm"
|
||||||
#: ../js/misc/util.js:244
|
#: ../js/misc/util.js:244
|
||||||
|
#, no-c-format
|
||||||
msgid "%B %d %Y, %l∶%M %p"
|
msgid "%B %d %Y, %l∶%M %p"
|
||||||
msgstr "%d %B %Y, %l∶%M %p"
|
msgstr "%d %B %Y, %l∶%M %p"
|
||||||
|
|
||||||
#. TRANSLATORS: this is the title of the wifi captive portal login
|
#. TRANSLATORS: this is the title of the wifi captive portal login
|
||||||
#. * window, until we know the title of the actual login page */
|
#. * window, until we know the title of the actual login page
|
||||||
#: ../js/portalHelper/main.js:85
|
#: ../js/portalHelper/main.js:85
|
||||||
msgid "Web Authentication Redirect"
|
msgid "Web Authentication Redirect"
|
||||||
msgstr "Pengalihan Otentikasi Web"
|
msgstr "Pengalihan Otentikasi Web"
|
||||||
@ -493,12 +516,11 @@ msgstr "Ubah Latar…"
|
|||||||
msgid "Display Settings"
|
msgid "Display Settings"
|
||||||
msgstr "Pengaturan Tampilan"
|
msgstr "Pengaturan Tampilan"
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
|
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:366
|
||||||
#: ../js/ui/status/system.js:366
|
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Pengaturan"
|
msgstr "Pengaturan"
|
||||||
|
|
||||||
#. 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
|
#: ../js/ui/calendar.js:55
|
||||||
msgctxt "calendar-no-work"
|
msgctxt "calendar-no-work"
|
||||||
msgid "06"
|
msgid "06"
|
||||||
@ -508,43 +530,43 @@ msgstr "06"
|
|||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/calendar.js:84
|
#: ../js/ui/calendar.js:84
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "M"
|
msgstr "M"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday */
|
#. Translators: Calendar grid abbreviation for Monday
|
||||||
#: ../js/ui/calendar.js:86
|
#: ../js/ui/calendar.js:86
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "S"
|
msgstr "S"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday */
|
#. Translators: Calendar grid abbreviation for Tuesday
|
||||||
#: ../js/ui/calendar.js:88
|
#: ../js/ui/calendar.js:88
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "S"
|
msgstr "S"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday */
|
#. Translators: Calendar grid abbreviation for Wednesday
|
||||||
#: ../js/ui/calendar.js:90
|
#: ../js/ui/calendar.js:90
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "R"
|
msgstr "R"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday */
|
#. Translators: Calendar grid abbreviation for Thursday
|
||||||
#: ../js/ui/calendar.js:92
|
#: ../js/ui/calendar.js:92
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "K"
|
msgstr "K"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday */
|
#. Translators: Calendar grid abbreviation for Friday
|
||||||
#: ../js/ui/calendar.js:94
|
#: ../js/ui/calendar.js:94
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "J"
|
msgstr "J"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday */
|
#. Translators: Calendar grid abbreviation for Saturday
|
||||||
#: ../js/ui/calendar.js:96
|
#: ../js/ui/calendar.js:96
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -564,39 +586,39 @@ msgstr "Minggu %V"
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/calendar.js:1188
|
#: ../js/ui/calendar.js:1188
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Sepanjang Hari"
|
msgstr "Sepanjang Hari"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1291
|
#: ../js/ui/calendar.js:1295
|
||||||
msgid "Clear section"
|
msgid "Clear section"
|
||||||
msgstr "Bersihkan seksi"
|
msgstr "Bersihkan seksi"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1518
|
#: ../js/ui/calendar.js:1522
|
||||||
msgid "Events"
|
msgid "Events"
|
||||||
msgstr "Kejadian"
|
msgstr "Kejadian"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1527
|
#: ../js/ui/calendar.js:1531
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1531
|
#: ../js/ui/calendar.js:1535
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A, %d %B %Y"
|
msgstr "%A, %d %B %Y"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1616
|
#: ../js/ui/calendar.js:1620
|
||||||
msgid "Notifications"
|
msgid "Notifications"
|
||||||
msgstr "Pemberitahuan"
|
msgstr "Pemberitahuan"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1767
|
#: ../js/ui/calendar.js:1771
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "Tak Ada Pemberitahuan"
|
msgstr "Tak Ada Pemberitahuan"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1770
|
#: ../js/ui/calendar.js:1774
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "Tak Ada Kejadian"
|
msgstr "Tak Ada Kejadian"
|
||||||
|
|
||||||
@ -608,7 +630,7 @@ msgstr "Drive eksternal tersambung"
|
|||||||
msgid "External drive disconnected"
|
msgid "External drive disconnected"
|
||||||
msgstr "Drive eksternal terputus"
|
msgstr "Drive eksternal terputus"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:354
|
#: ../js/ui/components/autorunManager.js:351
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Buka dengan %s"
|
msgstr "Buka dengan %s"
|
||||||
@ -626,6 +648,7 @@ msgstr "Ketik lagi:"
|
|||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "Sambung"
|
msgstr "Sambung"
|
||||||
|
|
||||||
|
#. Cisco LEAP
|
||||||
#: ../js/ui/components/networkAgent.js:233
|
#: ../js/ui/components/networkAgent.js:233
|
||||||
#: ../js/ui/components/networkAgent.js:245
|
#: ../js/ui/components/networkAgent.js:245
|
||||||
#: ../js/ui/components/networkAgent.js:273
|
#: ../js/ui/components/networkAgent.js:273
|
||||||
@ -634,6 +657,7 @@ msgstr "Sambung"
|
|||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "Sandi: "
|
msgstr "Sandi: "
|
||||||
|
|
||||||
|
#. static WEP
|
||||||
#: ../js/ui/components/networkAgent.js:238
|
#: ../js/ui/components/networkAgent.js:238
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "Tombol: "
|
msgstr "Tombol: "
|
||||||
@ -725,13 +749,13 @@ msgstr "Otentikasi"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance. */
|
#. * for instance.
|
||||||
#: ../js/ui/components/polkitAgent.js:301 ../js/ui/shellMountOperation.js:383
|
#: ../js/ui/components/polkitAgent.js:301 ../js/ui/shellMountOperation.js:383
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "Maaf, tidak berhasil. Silakan coba lagi."
|
msgstr "Maaf, tidak berhasil. Silakan coba lagi."
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name. */
|
#. IM name.
|
||||||
#: ../js/ui/components/telepathyClient.js:759
|
#: ../js/ui/components/telepathyClient.js:759
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
@ -745,13 +769,15 @@ msgstr "Jendela"
|
|||||||
msgid "Show Applications"
|
msgid "Show Applications"
|
||||||
msgstr "Tampilkan Aplikasi"
|
msgstr "Tampilkan Aplikasi"
|
||||||
|
|
||||||
|
#. Translators: this is the name of the dock/favorites area on
|
||||||
|
#. the left of the overview
|
||||||
#: ../js/ui/dash.js:449
|
#: ../js/ui/dash.js:449
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "Dash"
|
msgstr "Dash"
|
||||||
|
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. Translators: This is the date format to use when the calendar popup is
|
||||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/dateMenu.js:73
|
#: ../js/ui/dateMenu.js:73
|
||||||
msgid "%B %e %Y"
|
msgid "%B %e %Y"
|
||||||
msgstr "%e %B %Y"
|
msgstr "%e %B %Y"
|
||||||
@ -759,7 +785,7 @@ msgstr "%e %B %Y"
|
|||||||
#. Translators: This is the accessible name of the date button shown
|
#. Translators: This is the accessible name of the date button shown
|
||||||
#. * below the time in the shell; it should combine the weekday and the
|
#. * below the time in the shell; it should combine the weekday and the
|
||||||
#. * date, e.g. "Tuesday February 17 2015".
|
#. * date, e.g. "Tuesday February 17 2015".
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/dateMenu.js:80
|
#: ../js/ui/dateMenu.js:80
|
||||||
msgid "%A %B %e %Y"
|
msgid "%A %B %e %Y"
|
||||||
msgstr "%A %e %B %Y"
|
msgstr "%A %e %B %Y"
|
||||||
@ -884,13 +910,13 @@ msgstr "Beberapa aplikasi sedang sibuk atau belum disimpan perubahannya."
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "Pengguna lain sedang log masuk."
|
msgstr "Pengguna lain sedang log masuk."
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login */
|
#. Translators: Remote here refers to a remote session, like a ssh login
|
||||||
#: ../js/ui/endSessionDialog.js:640
|
#: ../js/ui/endSessionDialog.js:640
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (jarak jauh)"
|
msgstr "%s (jarak jauh)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console */
|
#. Translators: Console here refers to a tty like a VT console
|
||||||
#: ../js/ui/endSessionDialog.js:643
|
#: ../js/ui/endSessionDialog.js:643
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
@ -909,7 +935,7 @@ msgstr "Unduh dan pasang \"%s\" dari extensions.gnome.org?"
|
|||||||
msgid "Keyboard"
|
msgid "Keyboard"
|
||||||
msgstr "Papan Ketik"
|
msgstr "Papan Ketik"
|
||||||
|
|
||||||
#. translators: 'Hide' is a verb */
|
#. translators: 'Hide' is a verb
|
||||||
#: ../js/ui/legacyTray.js:66
|
#: ../js/ui/legacyTray.js:66
|
||||||
msgid "Hide tray"
|
msgid "Hide tray"
|
||||||
msgstr "Sembunyikan baki"
|
msgstr "Sembunyikan baki"
|
||||||
@ -922,7 +948,7 @@ msgstr "Ikon Status"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "Tak ada ekstensi terpasang"
|
msgstr "Tak ada ekstensi terpasang"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID. */
|
#. Translators: argument is an extension UUID.
|
||||||
#: ../js/ui/lookingGlass.js:697
|
#: ../js/ui/lookingGlass.js:697
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
@ -942,7 +968,7 @@ msgstr "Diaktifkan"
|
|||||||
|
|
||||||
#. translators:
|
#. translators:
|
||||||
#. * The device has been disabled
|
#. * The device has been disabled
|
||||||
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1830
|
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1828
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Dinonaktifkan"
|
msgstr "Dinonaktifkan"
|
||||||
|
|
||||||
@ -981,26 +1007,36 @@ msgstr "Gambaran"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters. */
|
#. characters.
|
||||||
#: ../js/ui/overview.js:244
|
#: ../js/ui/overview.js:244
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Ketik untuk mencari…"
|
msgstr "Ketik untuk mencari…"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:352
|
#: ../js/ui/panel.js:358
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Keluar"
|
msgstr "Keluar"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview". */
|
#. in your language, you can use the word for "Overview".
|
||||||
#: ../js/ui/panel.js:404
|
#: ../js/ui/panel.js:414
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Aktivitas"
|
msgstr "Aktivitas"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:754
|
#: ../js/ui/panel.js:695
|
||||||
|
msgctxt "System menu in the top bar"
|
||||||
|
msgid "System"
|
||||||
|
msgstr "Sistem"
|
||||||
|
|
||||||
|
#: ../js/ui/panel.js:807
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Bar Atas"
|
msgstr "Bar Atas"
|
||||||
|
|
||||||
# Dirgita: Hayo, enaknya pake I/O atau ON/OFF?^^
|
# Dirgita: Hayo, enaknya pake I/O atau ON/OFF?^^
|
||||||
|
#. Translators: this MUST be either "toggle-switch-us"
|
||||||
|
#. (for toggle switches containing the English words
|
||||||
|
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
||||||
|
#. switches containing "◯" and "|"). Other values will
|
||||||
|
#. simply result in invisible toggle switches.
|
||||||
#: ../js/ui/popupMenu.js:289
|
#: ../js/ui/popupMenu.js:289
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-intl"
|
msgstr "toggle-switch-intl"
|
||||||
@ -1018,7 +1054,7 @@ msgid "Restarting…"
|
|||||||
msgstr "Memulai ulang..."
|
msgstr "Memulai ulang..."
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format */
|
#. long format
|
||||||
#: ../js/ui/screenShield.js:85
|
#: ../js/ui/screenShield.js:85
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A, %d %B"
|
msgstr "%A, %d %B"
|
||||||
@ -1043,6 +1079,13 @@ msgstr "Kunci"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME perlu mengunci layar"
|
msgstr "GNOME perlu mengunci layar"
|
||||||
|
|
||||||
|
#. We could not become modal, so we can't activate the
|
||||||
|
#. screenshield. The user is probably very upset at this
|
||||||
|
#. point, but any application using global grabs is broken
|
||||||
|
#. Just tell him to stop using this app
|
||||||
|
#.
|
||||||
|
#. XXX: another option is to kick the user into the gdm login
|
||||||
|
#. screen, where we're not affected by grabs
|
||||||
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
|
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "Tak bisa mengunci"
|
msgstr "Tak bisa mengunci"
|
||||||
@ -1138,7 +1181,7 @@ msgstr "Matikan"
|
|||||||
msgid "Bluetooth Settings"
|
msgid "Bluetooth Settings"
|
||||||
msgstr "Pengaturan Bluetooth"
|
msgstr "Pengaturan 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
|
#: ../js/ui/status/bluetooth.js:105
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d Connected"
|
msgid "%d Connected"
|
||||||
@ -1185,13 +1228,13 @@ msgstr "Fungsikan"
|
|||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<tak dikenal>"
|
msgstr "<tak dikenal>"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1308
|
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1308
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s Mati"
|
msgstr "%s Mati"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:454
|
#: ../js/ui/status/network.js:454
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connected"
|
msgid "%s Connected"
|
||||||
@ -1199,45 +1242,45 @@ msgstr "%s Tersambung"
|
|||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu);
|
#. under NetworkManager's control (and thus cannot be used in the menu);
|
||||||
#. %s is a network identifier */
|
#. %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:459
|
#: ../js/ui/status/network.js:459
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Unmanaged"
|
msgid "%s Unmanaged"
|
||||||
msgstr "%s Tak Dikelola"
|
msgstr "%s Tak Dikelola"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:462
|
#: ../js/ui/status/network.js:462
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Disconnecting"
|
msgid "%s Disconnecting"
|
||||||
msgstr "%s Memutus"
|
msgstr "%s Memutus"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
|
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
msgid "%s Connecting"
|
||||||
msgstr "%s Menyambung"
|
msgstr "%s Menyambung"
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password; %s is a network identifier */
|
#. 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
|
#: ../js/ui/status/network.js:472
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Requires Authentication"
|
msgid "%s Requires Authentication"
|
||||||
msgstr "%s Memerlukan Otentikasi"
|
msgstr "%s Memerlukan Otentikasi"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing; %s is a network identifier */
|
#. module, which is missing; %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:480
|
#: ../js/ui/status/network.js:480
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Firmware Missing For %s"
|
msgid "Firmware Missing For %s"
|
||||||
msgstr "Firmware Hilang Untuk %s"
|
msgstr "Firmware Hilang Untuk %s"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage; %s is a network identifier */
|
#. is disabled by rfkill, or it has no coverage; %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:484
|
#: ../js/ui/status/network.js:484
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Unavailable"
|
msgid "%s Unavailable"
|
||||||
msgstr "%s Tak tersedia"
|
msgstr "%s Tak tersedia"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:487
|
#: ../js/ui/status/network.js:487
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connection Failed"
|
msgid "%s Connection Failed"
|
||||||
@ -1251,14 +1294,14 @@ msgstr "Pengaturan Kabel"
|
|||||||
msgid "Mobile Broadband Settings"
|
msgid "Mobile Broadband Settings"
|
||||||
msgstr "Pengaturan Data Seluler"
|
msgstr "Pengaturan Data Seluler"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1305
|
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1305
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hardware Disabled"
|
msgid "%s Hardware Disabled"
|
||||||
msgstr "%s Perangkat Keras Dinonaktifkan"
|
msgstr "%s Perangkat Keras Dinonaktifkan"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated
|
#. Translators: this is for a network device that cannot be activated
|
||||||
#. because it's disabled by rfkill (airplane mode); %s is a network identifier */
|
#. because it's disabled by rfkill (airplane mode); %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:592
|
#: ../js/ui/status/network.js:592
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Disabled"
|
msgid "%s Disabled"
|
||||||
@ -1320,13 +1363,13 @@ msgstr "Pengaturan Wi-Fi"
|
|||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "Nyalakan"
|
msgstr "Nyalakan"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:1296
|
#: ../js/ui/status/network.js:1296
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hotspot Active"
|
msgid "%s Hotspot Active"
|
||||||
msgstr "%s Hotspot Aktif"
|
msgstr "%s Hotspot Aktif"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:1311
|
#: ../js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
@ -1336,7 +1379,7 @@ msgstr "%s Tak Tersambung"
|
|||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "menghubungi..."
|
msgstr "menghubungi..."
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password */
|
#. Translators: this is for network connections that require some kind of key or password
|
||||||
#: ../js/ui/status/network.js:1414
|
#: ../js/ui/status/network.js:1414
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "diperlukan otentikasi"
|
msgstr "diperlukan otentikasi"
|
||||||
@ -1377,20 +1420,27 @@ msgstr "Pengaturan Daya"
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "Terisi Penuh"
|
msgstr "Terisi Penuh"
|
||||||
|
|
||||||
|
#. 0 is reported when UPower does not have enough data
|
||||||
|
#. to estimate battery life
|
||||||
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
|
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "Memperkirakan…"
|
msgstr "Memperkirakan…"
|
||||||
|
|
||||||
|
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
||||||
#: ../js/ui/status/power.js:86
|
#: ../js/ui/status/power.js:86
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d∶%02d Remaining (%d%%)"
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
msgstr "%d:%02d Tersisa (%d%%)"
|
msgstr "%d:%02d Tersisa (%d%%)"
|
||||||
|
|
||||||
|
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
||||||
#: ../js/ui/status/power.js:91
|
#: ../js/ui/status/power.js:91
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d∶%02d Until Full (%d%%)"
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
msgstr "%d:%02d Sampai Penuh (%d%%)"
|
msgstr "%d:%02d Sampai Penuh (%d%%)"
|
||||||
|
|
||||||
|
#. The menu only appears when airplane mode is on, so just
|
||||||
|
#. statically build it as if it was on, rather than dynamically
|
||||||
|
#. changing the menu contents.
|
||||||
#: ../js/ui/status/rfkill.js:88
|
#: ../js/ui/status/rfkill.js:88
|
||||||
msgid "Airplane Mode On"
|
msgid "Airplane Mode On"
|
||||||
msgstr "Mode Pesawat Terbang Aktif"
|
msgstr "Mode Pesawat Terbang Aktif"
|
||||||
@ -1458,7 +1508,7 @@ msgstr "Apakah Anda ingin mempertahankan pengaturan tampilan ini?"
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/windowManager.js:82
|
#: ../js/ui/windowManager.js:82
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "Balikkan Tatanan"
|
msgstr "Balikkan Tatanan"
|
||||||
@ -1474,7 +1524,7 @@ msgid_plural "Settings changes will revert in %d seconds"
|
|||||||
msgstr[0] "Perubahan tatanan akan dikembalikan dalam %d detik"
|
msgstr[0] "Perubahan tatanan akan dikembalikan dalam %d detik"
|
||||||
|
|
||||||
#. Translators: This represents the size of a window. The first number is
|
#. Translators: This represents the size of a window. The first number is
|
||||||
#. * the width of the window and the second is the height. */
|
#. * the width of the window and the second is the height.
|
||||||
#: ../js/ui/windowManager.js:658
|
#: ../js/ui/windowManager.js:658
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d x %d"
|
msgid "%d x %d"
|
||||||
@ -1550,7 +1600,7 @@ msgstr "Evolution Kalender"
|
|||||||
|
|
||||||
#. translators:
|
#. 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
|
#: ../src/gvc/gvc-mixer-control.c:1835
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%u Output"
|
msgid "%u Output"
|
||||||
msgid_plural "%u Outputs"
|
msgid_plural "%u Outputs"
|
||||||
@ -1558,38 +1608,38 @@ msgstr[0] "%u Keluaran"
|
|||||||
|
|
||||||
#. translators:
|
#. 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
|
#: ../src/gvc/gvc-mixer-control.c:1845
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%u Input"
|
msgid "%u Input"
|
||||||
msgid_plural "%u Inputs"
|
msgid_plural "%u Inputs"
|
||||||
msgstr[0] "%u Masukan"
|
msgstr[0] "%u Masukan"
|
||||||
|
|
||||||
#: ../src/gvc/gvc-mixer-control.c:2373
|
#: ../src/gvc/gvc-mixer-control.c:2371
|
||||||
msgid "System Sounds"
|
msgid "System Sounds"
|
||||||
msgstr "Suara Sistem"
|
msgstr "Suara Sistem"
|
||||||
|
|
||||||
#: ../src/main.c:373
|
#: ../src/main.c:381
|
||||||
msgid "Print version"
|
msgid "Print version"
|
||||||
msgstr "Versi Cetak"
|
msgstr "Versi Cetak"
|
||||||
|
|
||||||
#: ../src/main.c:379
|
#: ../src/main.c:387
|
||||||
msgid "Mode used by GDM for login screen"
|
msgid "Mode used by GDM for login screen"
|
||||||
msgstr "Mode yang dipakai oleh layar log masuk GDM"
|
msgstr "Mode yang dipakai oleh layar log masuk GDM"
|
||||||
|
|
||||||
#: ../src/main.c:385
|
#: ../src/main.c:393
|
||||||
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
|
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
|
||||||
msgstr "Menggunakan mode tertentu, mis. \"gdm\" untuk layar masuk"
|
msgstr "Menggunakan mode tertentu, mis. \"gdm\" untuk layar masuk"
|
||||||
|
|
||||||
#: ../src/main.c:391
|
#: ../src/main.c:399
|
||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "Menampilkan mode yang mungkin"
|
msgstr "Menampilkan mode yang mungkin"
|
||||||
|
|
||||||
#: ../src/shell-app.c:239
|
#: ../src/shell-app.c:246
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Tak dikenal"
|
msgstr "Tak dikenal"
|
||||||
|
|
||||||
#: ../src/shell-app.c:480
|
#: ../src/shell-app.c:487
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "Gagal meluncurkan \"%s\""
|
msgstr "Gagal meluncurkan \"%s\""
|
||||||
|
54
po/nb.po
54
po/nb.po
@ -9,8 +9,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell 3.17.x\n"
|
"Project-Id-Version: gnome-shell 3.17.x\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2015-09-07 19:22+0200\n"
|
"POT-Creation-Date: 2015-10-16 18:11+0200\n"
|
||||||
"PO-Revision-Date: 2015-09-07 19:31+0200\n"
|
"PO-Revision-Date: 2015-10-16 18:11+0200\n"
|
||||||
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
|
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
|
||||||
"Language-Team: Norwegian bokmål <i18n-nb@lister.ping.uio.no>\n"
|
"Language-Team: Norwegian bokmål <i18n-nb@lister.ping.uio.no>\n"
|
||||||
"Language: Norwegian bokmål\n"
|
"Language: Norwegian bokmål\n"
|
||||||
@ -508,8 +508,7 @@ msgstr "Bytt bakgrunn …"
|
|||||||
msgid "Display Settings"
|
msgid "Display Settings"
|
||||||
msgstr "Innstillinger for skjerm"
|
msgstr "Innstillinger for skjerm"
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
|
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:366
|
||||||
#: ../js/ui/status/system.js:366
|
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "Innstillinger"
|
msgstr "Innstillinger"
|
||||||
|
|
||||||
@ -585,33 +584,33 @@ msgctxt "event list time"
|
|||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "Hele dagen"
|
msgstr "Hele dagen"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1291
|
#: ../js/ui/calendar.js:1295
|
||||||
msgid "Clear section"
|
msgid "Clear section"
|
||||||
msgstr "Tøm seksjon"
|
msgstr "Tøm seksjon"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1518
|
#: ../js/ui/calendar.js:1522
|
||||||
msgid "Events"
|
msgid "Events"
|
||||||
msgstr "Hendelser"
|
msgstr "Hendelser"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1527
|
#: ../js/ui/calendar.js:1531
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%A %B %d"
|
msgstr "%A %B %d"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1531
|
#: ../js/ui/calendar.js:1535
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%A %B %d, %Y"
|
msgstr "%A %B %d, %Y"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1616
|
#: ../js/ui/calendar.js:1620
|
||||||
msgid "Notifications"
|
msgid "Notifications"
|
||||||
msgstr "Varslinger"
|
msgstr "Varslinger"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1767
|
#: ../js/ui/calendar.js:1771
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "Ingen varslinger"
|
msgstr "Ingen varslinger"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1770
|
#: ../js/ui/calendar.js:1774
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "Ingen hendelser"
|
msgstr "Ingen hendelser"
|
||||||
|
|
||||||
@ -623,7 +622,7 @@ msgstr "Ekstern stasjon koblet til"
|
|||||||
msgid "External drive disconnected"
|
msgid "External drive disconnected"
|
||||||
msgstr "Ekstern stasjon koblet fra"
|
msgstr "Ekstern stasjon koblet fra"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:354
|
#: ../js/ui/components/autorunManager.js:351
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Åpne med %s"
|
msgstr "Åpne med %s"
|
||||||
@ -1012,17 +1011,22 @@ msgstr "Oversikt"
|
|||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Skriv for å søke …"
|
msgstr "Skriv for å søke …"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:352
|
#: ../js/ui/panel.js:358
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Avslutt"
|
msgstr "Avslutt"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview".
|
||||||
#: ../js/ui/panel.js:404
|
#: ../js/ui/panel.js:414
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Aktiviteter"
|
msgstr "Aktiviteter"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:754
|
#: ../js/ui/panel.js:693
|
||||||
|
msgctxt "System menu in the top bar"
|
||||||
|
msgid "System"
|
||||||
|
msgstr "System"
|
||||||
|
|
||||||
|
#: ../js/ui/panel.js:805
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Topp-panel"
|
msgstr "Topp-panel"
|
||||||
|
|
||||||
@ -1562,19 +1566,19 @@ msgstr "Alltid på synlig arbeidsområde"
|
|||||||
|
|
||||||
#: ../js/ui/windowMenu.js:105
|
#: ../js/ui/windowMenu.js:105
|
||||||
msgid "Move to Workspace Left"
|
msgid "Move to Workspace Left"
|
||||||
msgstr "Gå til arbeidsområdet til venstre"
|
msgstr "Flytt til arbeidsområdet til venstre"
|
||||||
|
|
||||||
#: ../js/ui/windowMenu.js:110
|
#: ../js/ui/windowMenu.js:110
|
||||||
msgid "Move to Workspace Right"
|
msgid "Move to Workspace Right"
|
||||||
msgstr "Gå til arbeidsområdet til høyre"
|
msgstr "Flytt til arbeidsområdet til høyre"
|
||||||
|
|
||||||
#: ../js/ui/windowMenu.js:115
|
#: ../js/ui/windowMenu.js:115
|
||||||
msgid "Move to Workspace Up"
|
msgid "Move to Workspace Up"
|
||||||
msgstr "Gå til arbeidsområdet over"
|
msgstr "Flytt til arbeidsområdet over"
|
||||||
|
|
||||||
#: ../js/ui/windowMenu.js:120
|
#: ../js/ui/windowMenu.js:120
|
||||||
msgid "Move to Workspace Down"
|
msgid "Move to Workspace Down"
|
||||||
msgstr "Gå til arbeidsområdet under"
|
msgstr "Flytt til arbeidsområdet under"
|
||||||
|
|
||||||
#: ../js/ui/windowMenu.js:136
|
#: ../js/ui/windowMenu.js:136
|
||||||
msgid "Move to Monitor Up"
|
msgid "Move to Monitor Up"
|
||||||
@ -1618,28 +1622,28 @@ msgstr[1] "%u innganger"
|
|||||||
msgid "System Sounds"
|
msgid "System Sounds"
|
||||||
msgstr "Systemlyder"
|
msgstr "Systemlyder"
|
||||||
|
|
||||||
#: ../src/main.c:373
|
#: ../src/main.c:381
|
||||||
msgid "Print version"
|
msgid "Print version"
|
||||||
msgstr "Vis versjon"
|
msgstr "Vis versjon"
|
||||||
|
|
||||||
#: ../src/main.c:379
|
#: ../src/main.c:387
|
||||||
msgid "Mode used by GDM for login screen"
|
msgid "Mode used by GDM for login screen"
|
||||||
msgstr "Modus som brukes av GDM for innloggingsskjermen"
|
msgstr "Modus som brukes av GDM for innloggingsskjermen"
|
||||||
|
|
||||||
#: ../src/main.c:385
|
#: ../src/main.c:393
|
||||||
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
|
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
|
||||||
msgstr "Bruk spesifikt modus, f.eks «gdm» for innloggingsskjerm"
|
msgstr "Bruk spesifikt modus, f.eks «gdm» for innloggingsskjerm"
|
||||||
|
|
||||||
#: ../src/main.c:391
|
#: ../src/main.c:399
|
||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "Vis mulige modi"
|
msgstr "Vis mulige modi"
|
||||||
|
|
||||||
#: ../src/shell-app.c:239
|
#: ../src/shell-app.c:246
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Ukjent"
|
msgstr "Ukjent"
|
||||||
|
|
||||||
#: ../src/shell-app.c:480
|
#: ../src/shell-app.c:487
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "Klarte ikke å starte «%s»"
|
msgstr "Klarte ikke å starte «%s»"
|
||||||
|
65
po/pl.po
65
po/pl.po
@ -4,16 +4,16 @@
|
|||||||
# pomóc w jego rozwijaniu i pielęgnowaniu, napisz do nas:
|
# pomóc w jego rozwijaniu i pielęgnowaniu, napisz do nas:
|
||||||
# gnomepl@aviary.pl
|
# gnomepl@aviary.pl
|
||||||
# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
|
# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
|
||||||
# Piotr Drąg <piotrdrag@gmail.com>, 2009-2015.
|
# Piotr Drąg <piotrdrag@gmail.com>, 2009-2016.
|
||||||
# Tomasz Dominikowski <dominikowski@gmail.com>, 2009.
|
# Tomasz Dominikowski <dominikowski@gmail.com>, 2009.
|
||||||
# Wojciech Szczęsny <wszczesny@aviary.pl>, 2013.
|
# Wojciech Szczęsny <wszczesny@aviary.pl>, 2013.
|
||||||
# Aviary.pl <gnomepl@aviary.pl>, 2009-2015.
|
# Aviary.pl <gnomepl@aviary.pl>, 2009-2016.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell\n"
|
"Project-Id-Version: gnome-shell\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2015-09-29 00:50+0200\n"
|
"POT-Creation-Date: 2016-07-12 21:23+0200\n"
|
||||||
"PO-Revision-Date: 2015-09-29 00:52+0200\n"
|
"PO-Revision-Date: 2016-07-12 21:24+0200\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Polish <gnomepl@aviary.pl>\n"
|
"Language-Team: Polish <gnomepl@aviary.pl>\n"
|
||||||
"Language: pl\n"
|
"Language: pl\n"
|
||||||
@ -330,35 +330,35 @@ msgstr "Rozszerzenia powłoki GNOME"
|
|||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Anuluj"
|
msgstr "Anuluj"
|
||||||
|
|
||||||
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
|
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:216
|
||||||
#: ../js/gdm/authPrompt.js:447
|
#: ../js/gdm/authPrompt.js:448
|
||||||
msgid "Next"
|
msgid "Next"
|
||||||
msgstr "Dalej"
|
msgstr "Dalej"
|
||||||
|
|
||||||
#: ../js/gdm/authPrompt.js:211 ../js/ui/shellMountOperation.js:403
|
#: ../js/gdm/authPrompt.js:212 ../js/ui/shellMountOperation.js:403
|
||||||
#: ../js/ui/unlockDialog.js:59
|
#: ../js/ui/unlockDialog.js:59
|
||||||
msgid "Unlock"
|
msgid "Unlock"
|
||||||
msgstr "Odblokuj"
|
msgstr "Odblokuj"
|
||||||
|
|
||||||
#: ../js/gdm/authPrompt.js:213
|
#: ../js/gdm/authPrompt.js:214
|
||||||
msgctxt "button"
|
msgctxt "button"
|
||||||
msgid "Sign In"
|
msgid "Sign In"
|
||||||
msgstr "Zaloguj"
|
msgstr "Zaloguj"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:281
|
#: ../js/gdm/loginDialog.js:285
|
||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "Wybór sesji"
|
msgstr "Wybór sesji"
|
||||||
|
|
||||||
#. translators: this message is shown below the user list on the
|
#. translators: this message is shown below the user list on the
|
||||||
#. login screen. It can be activated to reveal an entry for
|
#. login screen. It can be activated to reveal an entry for
|
||||||
#. manually entering the username.
|
#. manually entering the username.
|
||||||
#: ../js/gdm/loginDialog.js:431
|
#: ../js/gdm/loginDialog.js:435
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "Inny użytkownik?"
|
msgstr "Inny użytkownik?"
|
||||||
|
|
||||||
#. Translators: this message is shown below the username entry field
|
#. Translators: this message is shown below the username entry field
|
||||||
#. to clue the user in on how to login to the local network realm
|
#. to clue the user in on how to login to the local network realm
|
||||||
#: ../js/gdm/loginDialog.js:850
|
#: ../js/gdm/loginDialog.js:854
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(np. użytkownik lub %s)"
|
msgstr "(np. użytkownik lub %s)"
|
||||||
@ -366,12 +366,12 @@ msgstr "(np. użytkownik lub %s)"
|
|||||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
#. TTLS and PEAP are actually much more complicated, but this complication
|
||||||
#. is not visible here since we only care about phase2 authentication
|
#. is not visible here since we only care about phase2 authentication
|
||||||
#. (and don't even care of which one)
|
#. (and don't even care of which one)
|
||||||
#: ../js/gdm/loginDialog.js:855 ../js/ui/components/networkAgent.js:271
|
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
|
||||||
#: ../js/ui/components/networkAgent.js:289
|
#: ../js/ui/components/networkAgent.js:289
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "Nazwa użytkownika: "
|
msgstr "Nazwa użytkownika: "
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:1184
|
#: ../js/gdm/loginDialog.js:1196
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "Okno logowania"
|
msgstr "Okno logowania"
|
||||||
|
|
||||||
@ -639,7 +639,7 @@ msgstr "Podłączono dysk zewnętrzny"
|
|||||||
msgid "External drive disconnected"
|
msgid "External drive disconnected"
|
||||||
msgstr "Odłączono dysk zewnętrzny"
|
msgstr "Odłączono dysk zewnętrzny"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:354
|
#: ../js/ui/components/autorunManager.js:351
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "Otwórz za pomocą „%s”"
|
msgstr "Otwórz za pomocą „%s”"
|
||||||
@ -765,7 +765,7 @@ msgstr "To nie zadziałało. Proszę spróbować ponownie."
|
|||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name.
|
#. IM name.
|
||||||
#: ../js/ui/components/telepathyClient.js:759
|
#: ../js/ui/components/telepathyClient.js:760
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
msgstr "Użytkownik %s jest teraz znany jako %s"
|
msgstr "Użytkownik %s jest teraz znany jako %s"
|
||||||
@ -990,7 +990,7 @@ msgstr "Włączone"
|
|||||||
|
|
||||||
#. translators:
|
#. translators:
|
||||||
#. * The device has been disabled
|
#. * 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:1866
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Wyłączone"
|
msgstr "Wyłączone"
|
||||||
|
|
||||||
@ -1034,22 +1034,22 @@ msgstr "Podgląd"
|
|||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "Wyszukiwanie…"
|
msgstr "Wyszukiwanie…"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:352
|
#: ../js/ui/panel.js:358
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Zakończ"
|
msgstr "Zakończ"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview".
|
#. in your language, you can use the word for "Overview".
|
||||||
#: ../js/ui/panel.js:404
|
#: ../js/ui/panel.js:414
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Podgląd"
|
msgstr "Podgląd"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:650
|
#: ../js/ui/panel.js:695
|
||||||
msgctxt "System menu in the top bar"
|
msgctxt "System menu in the top bar"
|
||||||
msgid "System"
|
msgid "System"
|
||||||
msgstr "Menu systemowe"
|
msgstr "Menu systemowe"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:754
|
#: ../js/ui/panel.js:807
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "Górny pasek"
|
msgstr "Górny pasek"
|
||||||
|
|
||||||
@ -1064,7 +1064,7 @@ msgstr "toggle-switch-intl"
|
|||||||
|
|
||||||
#: ../js/ui/runDialog.js:70
|
#: ../js/ui/runDialog.js:70
|
||||||
msgid "Enter a Command"
|
msgid "Enter a Command"
|
||||||
msgstr "Proszę wprowadzić polecenie"
|
msgstr "Proszę wprowadzić polecenie:"
|
||||||
|
|
||||||
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
|
#: ../js/ui/runDialog.js:110 ../js/ui/windowMenu.js:162
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
@ -1629,7 +1629,7 @@ msgstr "Kalendarz programu Evolution"
|
|||||||
|
|
||||||
#. translators:
|
#. 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
|
#: ../src/gvc/gvc-mixer-control.c:1873
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%u Output"
|
msgid "%u Output"
|
||||||
msgid_plural "%u Outputs"
|
msgid_plural "%u Outputs"
|
||||||
@ -1639,7 +1639,7 @@ msgstr[2] "%u wyjść"
|
|||||||
|
|
||||||
#. translators:
|
#. 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
|
#: ../src/gvc/gvc-mixer-control.c:1883
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%u Input"
|
msgid "%u Input"
|
||||||
msgid_plural "%u Inputs"
|
msgid_plural "%u Inputs"
|
||||||
@ -1647,7 +1647,7 @@ msgstr[0] "%u wejście"
|
|||||||
msgstr[1] "%u wejścia"
|
msgstr[1] "%u wejścia"
|
||||||
msgstr[2] "%u wejść"
|
msgstr[2] "%u wejść"
|
||||||
|
|
||||||
#: ../src/gvc/gvc-mixer-control.c:2371
|
#: ../src/gvc/gvc-mixer-control.c:2738
|
||||||
msgid "System Sounds"
|
msgid "System Sounds"
|
||||||
msgstr "Dźwięki systemowe"
|
msgstr "Dźwięki systemowe"
|
||||||
|
|
||||||
@ -1667,12 +1667,12 @@ msgstr "Używa podanego trybu, np. „gdm” dla ekranu logowania"
|
|||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "Wyświetla listę możliwych trybów"
|
msgstr "Wyświetla listę możliwych trybów"
|
||||||
|
|
||||||
#: ../src/shell-app.c:239
|
#: ../src/shell-app.c:246
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "Nieznany"
|
msgstr "Nieznany"
|
||||||
|
|
||||||
#: ../src/shell-app.c:480
|
#: ../src/shell-app.c:487
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "Uruchomienie „%s” się nie powiodło"
|
msgstr "Uruchomienie „%s” się nie powiodło"
|
||||||
@ -1688,3 +1688,16 @@ msgstr "Hasło nie może być puste"
|
|||||||
#: ../src/shell-polkit-authentication-agent.c:346
|
#: ../src/shell-polkit-authentication-agent.c:346
|
||||||
msgid "Authentication dialog was dismissed by the user"
|
msgid "Authentication dialog was dismissed by the user"
|
||||||
msgstr "Okno dialogowe uwierzytelnienia zostało odrzucone przez użytkownika"
|
msgstr "Okno dialogowe uwierzytelnienia zostało odrzucone przez użytkownika"
|
||||||
|
|
||||||
|
msgctxt "title"
|
||||||
|
msgid "Restart & Install Upgrade"
|
||||||
|
msgstr "Ponowne uruchomienie i instalacja aktualizacji"
|
||||||
|
|
||||||
|
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 ""
|
||||||
|
"System %s %s zostanie zainstalowany po ponownym uruchomieniu. Instalacja "
|
||||||
|
"aktualizacji może zająć dużo czasu. Proszę się upewnić, że wykonano kopię "
|
||||||
|
"zapasową danych i podłączono komputer do prądu."
|
||||||
|
631
po/zh_CN.po
631
po/zh_CN.po
File diff suppressed because it is too large
Load Diff
217
po/zh_TW.po
217
po/zh_TW.po
@ -1,17 +1,18 @@
|
|||||||
# Chinese (Taiwan) translation for gnome-shell.
|
# Chinese (Taiwan) translation for gnome-shell.
|
||||||
# Copyright (C) 2010 gnome-shell's COPYRIGHT HOLDER
|
# Copyright (C) 2010 gnome-shell's COPYRIGHT HOLDER
|
||||||
# This file is distributed under the same license as the gnome-shell package.
|
# This file is distributed under the same license as the gnome-shell package.
|
||||||
# Chao-Hsiung Liao <j_h_liau@yahoo.com.tw>, 2010.
|
# Chao-Hsiung Liao <j_h_liau@yahoo.com.tw>, 2010, 2014.
|
||||||
# Wei-Lun Chao <chaoweilun@gmail.com>, 2010.
|
# Wei-Lun Chao <chaoweilun@gmail.com>, 2010.
|
||||||
|
# Anthony Fok <foka@debian.org>, 2015.
|
||||||
#
|
#
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: gnome-shell 3.3.90\n"
|
"Project-Id-Version: gnome-shell 3.18\n"
|
||||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||||
"shell&keywords=I18N+L10N&component=general\n"
|
"shell&keywords=I18N+L10N&component=general\n"
|
||||||
"POT-Creation-Date: 2015-08-25 13:32+0800\n"
|
"POT-Creation-Date: 2015-10-16 21:11+0000\n"
|
||||||
"PO-Revision-Date: 2015-08-25 13:37+0800\n"
|
"PO-Revision-Date: 2015-10-17 09:30+0800\n"
|
||||||
"Last-Translator: Chao-Hsiung Liao <j_h_liau@yahoo.com.tw>\n"
|
"Last-Translator: Anthony Fok <foka@debian.org>\n"
|
||||||
"Language-Team: Chinese (Taiwan) <zh-l10n@lists.linux.org.tw>\n"
|
"Language-Team: Chinese (Taiwan) <zh-l10n@lists.linux.org.tw>\n"
|
||||||
"Language: zh_TW\n"
|
"Language: zh_TW\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@ -297,7 +298,7 @@ msgid "Cancel"
|
|||||||
msgstr "取消"
|
msgstr "取消"
|
||||||
|
|
||||||
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
|
#: ../js/gdm/authPrompt.js:169 ../js/gdm/authPrompt.js:215
|
||||||
#: ../js/gdm/authPrompt.js:435
|
#: ../js/gdm/authPrompt.js:447
|
||||||
msgid "Next"
|
msgid "Next"
|
||||||
msgstr "下一個"
|
msgstr "下一個"
|
||||||
|
|
||||||
@ -315,21 +316,29 @@ msgstr "登入"
|
|||||||
msgid "Choose Session"
|
msgid "Choose Session"
|
||||||
msgstr "選擇作業階段"
|
msgstr "選擇作業階段"
|
||||||
|
|
||||||
|
#. translators: this message is shown below the user list on the
|
||||||
|
#. login screen. It can be activated to reveal an entry for
|
||||||
|
#. manually entering the username.
|
||||||
#: ../js/gdm/loginDialog.js:431
|
#: ../js/gdm/loginDialog.js:431
|
||||||
msgid "Not listed?"
|
msgid "Not listed?"
|
||||||
msgstr "沒有列出來?"
|
msgstr "沒有列出來?"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:847
|
#. 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:850
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "(e.g., user or %s)"
|
msgid "(e.g., user or %s)"
|
||||||
msgstr "(例如: user 或 %s)"
|
msgstr "(例如: user 或 %s)"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:852 ../js/ui/components/networkAgent.js:271
|
#. 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:855 ../js/ui/components/networkAgent.js:271
|
||||||
#: ../js/ui/components/networkAgent.js:289
|
#: ../js/ui/components/networkAgent.js:289
|
||||||
msgid "Username: "
|
msgid "Username: "
|
||||||
msgstr "使用者名稱:"
|
msgstr "使用者名稱:"
|
||||||
|
|
||||||
#: ../js/gdm/loginDialog.js:1181
|
#: ../js/gdm/loginDialog.js:1184
|
||||||
msgid "Login Window"
|
msgid "Login Window"
|
||||||
msgstr "登入視窗"
|
msgstr "登入視窗"
|
||||||
|
|
||||||
@ -337,6 +346,11 @@ msgstr "登入視窗"
|
|||||||
msgid "Authentication error"
|
msgid "Authentication error"
|
||||||
msgstr "核對錯誤"
|
msgstr "核對錯誤"
|
||||||
|
|
||||||
|
#. We don't show fingerprint messages directly since it's
|
||||||
|
#. not the main auth service. Instead we use the messages
|
||||||
|
#. as a cue to display our own message.
|
||||||
|
#. Translators: this message is shown below the password entry field
|
||||||
|
#. to indicate the user can swipe their finger instead
|
||||||
#: ../js/gdm/util.js:473
|
#: ../js/gdm/util.js:473
|
||||||
msgid "(or swipe finger)"
|
msgid "(or swipe finger)"
|
||||||
msgstr "(或是滑過手指)"
|
msgstr "(或是滑過手指)"
|
||||||
@ -345,6 +359,8 @@ msgstr "(或是滑過手指)"
|
|||||||
msgid "Command not found"
|
msgid "Command not found"
|
||||||
msgstr "找不到指令"
|
msgstr "找不到指令"
|
||||||
|
|
||||||
|
#. Replace "Error invoking GLib.shell_parse_argv: " with
|
||||||
|
#. something nicer
|
||||||
#: ../js/misc/util.js:152
|
#: ../js/misc/util.js:152
|
||||||
msgid "Could not parse command:"
|
msgid "Could not parse command:"
|
||||||
msgstr "無法分析指令:"
|
msgstr "無法分析指令:"
|
||||||
@ -354,70 +370,78 @@ msgstr "無法分析指令:"
|
|||||||
msgid "Execution of “%s” failed:"
|
msgid "Execution of “%s” failed:"
|
||||||
msgstr "執行「%s」失敗:"
|
msgstr "執行「%s」失敗:"
|
||||||
|
|
||||||
#. Translators: Time in 24h format */
|
#. Translators: Time in 24h format
|
||||||
#: ../js/misc/util.js:191
|
#: ../js/misc/util.js:191
|
||||||
msgid "%H∶%M"
|
msgid "%H∶%M"
|
||||||
msgstr "%H∶%M"
|
msgstr "%H∶%M"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a
|
#. Translators: this is the word "Yesterday" followed by a
|
||||||
#. time string in 24h format. i.e. "Yesterday, 14:30" */
|
#. time string in 24h format. i.e. "Yesterday, 14:30"
|
||||||
#: ../js/misc/util.js:197
|
#: ../js/misc/util.js:197
|
||||||
|
#, no-c-format
|
||||||
msgid "Yesterday, %H∶%M"
|
msgid "Yesterday, %H∶%M"
|
||||||
msgstr "昨天 %H:%M"
|
msgstr "昨天 %H:%M"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time
|
#. Translators: this is the week day name followed by a time
|
||||||
#. string in 24h format. i.e. "Monday, 14:30" */
|
#. string in 24h format. i.e. "Monday, 14:30"
|
||||||
#: ../js/misc/util.js:203
|
#: ../js/misc/util.js:203
|
||||||
|
#, no-c-format
|
||||||
msgid "%A, %H∶%M"
|
msgid "%A, %H∶%M"
|
||||||
msgstr "%A %H∶%M"
|
msgstr "%A %H∶%M"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number
|
#. Translators: this is the month name and day number
|
||||||
#. followed by a time string in 24h format.
|
#. followed by a time string in 24h format.
|
||||||
#. i.e. "May 25, 14:30" */
|
#. i.e. "May 25, 14:30"
|
||||||
#: ../js/misc/util.js:209
|
#: ../js/misc/util.js:209
|
||||||
|
#, no-c-format
|
||||||
msgid "%B %d, %H∶%M"
|
msgid "%B %d, %H∶%M"
|
||||||
msgstr "%m月%d日 %H∶%M"
|
msgstr "%m月%d日 %H∶%M"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year
|
#. Translators: this is the month name, day number, year
|
||||||
#. number followed by a time string in 24h format.
|
#. number followed by a time string in 24h format.
|
||||||
#. i.e. "May 25 2012, 14:30" */
|
#. i.e. "May 25 2012, 14:30"
|
||||||
#: ../js/misc/util.js:215
|
#: ../js/misc/util.js:215
|
||||||
|
#, no-c-format
|
||||||
msgid "%B %d %Y, %H∶%M"
|
msgid "%B %d %Y, %H∶%M"
|
||||||
msgstr "%Y年%m月%d日 %H:%M"
|
msgstr "%Y年%m月%d日 %H:%M"
|
||||||
|
|
||||||
#. Translators: Time in 12h format */
|
#. Translators: Time in 12h format
|
||||||
#: ../js/misc/util.js:220
|
#: ../js/misc/util.js:220
|
||||||
msgid "%l∶%M %p"
|
msgid "%l∶%M %p"
|
||||||
msgstr "%p %l∶%M"
|
msgstr "%p %l∶%M"
|
||||||
|
|
||||||
#. Translators: this is the word "Yesterday" followed by a
|
#. Translators: this is the word "Yesterday" followed by a
|
||||||
#. time string in 12h format. i.e. "Yesterday, 2:30 pm" */
|
#. time string in 12h format. i.e. "Yesterday, 2:30 pm"
|
||||||
#: ../js/misc/util.js:226
|
#: ../js/misc/util.js:226
|
||||||
|
#, no-c-format
|
||||||
msgid "Yesterday, %l∶%M %p"
|
msgid "Yesterday, %l∶%M %p"
|
||||||
msgstr "昨天 %p %l∶%M"
|
msgstr "昨天 %p %l∶%M"
|
||||||
|
|
||||||
#. Translators: this is the week day name followed by a time
|
#. Translators: this is the week day name followed by a time
|
||||||
#. string in 12h format. i.e. "Monday, 2:30 pm" */
|
#. string in 12h format. i.e. "Monday, 2:30 pm"
|
||||||
#: ../js/misc/util.js:232
|
#: ../js/misc/util.js:232
|
||||||
|
#, no-c-format
|
||||||
msgid "%A, %l∶%M %p"
|
msgid "%A, %l∶%M %p"
|
||||||
msgstr "%A%p %l∶%M"
|
msgstr "%A%p %l∶%M"
|
||||||
|
|
||||||
#. Translators: this is the month name and day number
|
#. Translators: this is the month name and day number
|
||||||
#. followed by a time string in 12h format.
|
#. followed by a time string in 12h format.
|
||||||
#. i.e. "May 25, 2:30 pm" */
|
#. i.e. "May 25, 2:30 pm"
|
||||||
#: ../js/misc/util.js:238
|
#: ../js/misc/util.js:238
|
||||||
|
#, no-c-format
|
||||||
msgid "%B %d, %l∶%M %p"
|
msgid "%B %d, %l∶%M %p"
|
||||||
msgstr "%m月%d日%p %l∶%M"
|
msgstr "%m月%d日%p %l∶%M"
|
||||||
|
|
||||||
#. Translators: this is the month name, day number, year
|
#. Translators: this is the month name, day number, year
|
||||||
#. number followed by a time string in 12h format.
|
#. number followed by a time string in 12h format.
|
||||||
#. i.e. "May 25 2012, 2:30 pm"*/
|
#. i.e. "May 25 2012, 2:30 pm"
|
||||||
#: ../js/misc/util.js:244
|
#: ../js/misc/util.js:244
|
||||||
|
#, no-c-format
|
||||||
msgid "%B %d %Y, %l∶%M %p"
|
msgid "%B %d %Y, %l∶%M %p"
|
||||||
msgstr "%Y年%m月%d日%p %l∶%M"
|
msgstr "%Y年%m月%d日%p %l∶%M"
|
||||||
|
|
||||||
#. TRANSLATORS: this is the title of the wifi captive portal login
|
#. TRANSLATORS: this is the title of the wifi captive portal login
|
||||||
#. * window, until we know the title of the actual login page */
|
#. * window, until we know the title of the actual login page
|
||||||
#: ../js/portalHelper/main.js:85
|
#: ../js/portalHelper/main.js:85
|
||||||
msgid "Web Authentication Redirect"
|
msgid "Web Authentication Redirect"
|
||||||
msgstr "網頁核對重新導向"
|
msgstr "網頁核對重新導向"
|
||||||
@ -468,12 +492,11 @@ msgstr "改變背景…"
|
|||||||
msgid "Display Settings"
|
msgid "Display Settings"
|
||||||
msgstr "顯示設定值"
|
msgstr "顯示設定值"
|
||||||
|
|
||||||
#: ../js/ui/backgroundMenu.js:22 ../js/ui/panel.js:650
|
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:366
|
||||||
#: ../js/ui/status/system.js:366
|
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr "設定值"
|
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
|
#: ../js/ui/calendar.js:55
|
||||||
msgctxt "calendar-no-work"
|
msgctxt "calendar-no-work"
|
||||||
msgid "06"
|
msgid "06"
|
||||||
@ -483,43 +506,43 @@ msgstr "06"
|
|||||||
#. *
|
#. *
|
||||||
#. * NOTE: These grid abbreviations are always shown together
|
#. * NOTE: These grid abbreviations are always shown together
|
||||||
#. * and in order, e.g. "S M T W T F S".
|
#. * and in order, e.g. "S M T W T F S".
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/calendar.js:84
|
#: ../js/ui/calendar.js:84
|
||||||
msgctxt "grid sunday"
|
msgctxt "grid sunday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
msgstr "日"
|
msgstr "日"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Monday */
|
#. Translators: Calendar grid abbreviation for Monday
|
||||||
#: ../js/ui/calendar.js:86
|
#: ../js/ui/calendar.js:86
|
||||||
msgctxt "grid monday"
|
msgctxt "grid monday"
|
||||||
msgid "M"
|
msgid "M"
|
||||||
msgstr "一"
|
msgstr "一"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Tuesday */
|
#. Translators: Calendar grid abbreviation for Tuesday
|
||||||
#: ../js/ui/calendar.js:88
|
#: ../js/ui/calendar.js:88
|
||||||
msgctxt "grid tuesday"
|
msgctxt "grid tuesday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "二"
|
msgstr "二"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Wednesday */
|
#. Translators: Calendar grid abbreviation for Wednesday
|
||||||
#: ../js/ui/calendar.js:90
|
#: ../js/ui/calendar.js:90
|
||||||
msgctxt "grid wednesday"
|
msgctxt "grid wednesday"
|
||||||
msgid "W"
|
msgid "W"
|
||||||
msgstr "三"
|
msgstr "三"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Thursday */
|
#. Translators: Calendar grid abbreviation for Thursday
|
||||||
#: ../js/ui/calendar.js:92
|
#: ../js/ui/calendar.js:92
|
||||||
msgctxt "grid thursday"
|
msgctxt "grid thursday"
|
||||||
msgid "T"
|
msgid "T"
|
||||||
msgstr "四"
|
msgstr "四"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Friday */
|
#. Translators: Calendar grid abbreviation for Friday
|
||||||
#: ../js/ui/calendar.js:94
|
#: ../js/ui/calendar.js:94
|
||||||
msgctxt "grid friday"
|
msgctxt "grid friday"
|
||||||
msgid "F"
|
msgid "F"
|
||||||
msgstr "五"
|
msgstr "五"
|
||||||
|
|
||||||
#. Translators: Calendar grid abbreviation for Saturday */
|
#. Translators: Calendar grid abbreviation for Saturday
|
||||||
#: ../js/ui/calendar.js:96
|
#: ../js/ui/calendar.js:96
|
||||||
msgctxt "grid saturday"
|
msgctxt "grid saturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -539,39 +562,39 @@ msgstr "%V 週"
|
|||||||
|
|
||||||
#. Translators: Shown in calendar event list for all day events
|
#. Translators: Shown in calendar event list for all day events
|
||||||
#. * Keep it short, best if you can use less then 10 characters
|
#. * Keep it short, best if you can use less then 10 characters
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/calendar.js:1188
|
#: ../js/ui/calendar.js:1188
|
||||||
msgctxt "event list time"
|
msgctxt "event list time"
|
||||||
msgid "All Day"
|
msgid "All Day"
|
||||||
msgstr "整天"
|
msgstr "整天"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1291
|
#: ../js/ui/calendar.js:1295
|
||||||
msgid "Clear section"
|
msgid "Clear section"
|
||||||
msgstr "清除區段"
|
msgstr "清除區段"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1518
|
#: ../js/ui/calendar.js:1522
|
||||||
msgid "Events"
|
msgid "Events"
|
||||||
msgstr "行程"
|
msgstr "行程"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1527
|
#: ../js/ui/calendar.js:1531
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%m月%d日%A"
|
msgstr "%m月%d日%A"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1531
|
#: ../js/ui/calendar.js:1535
|
||||||
msgctxt "calendar heading"
|
msgctxt "calendar heading"
|
||||||
msgid "%A, %B %d, %Y"
|
msgid "%A, %B %d, %Y"
|
||||||
msgstr "%Y年%m月%d日%A"
|
msgstr "%Y年%m月%d日%A"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1616
|
#: ../js/ui/calendar.js:1620
|
||||||
msgid "Notifications"
|
msgid "Notifications"
|
||||||
msgstr "通知"
|
msgstr "通知"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1767
|
#: ../js/ui/calendar.js:1771
|
||||||
msgid "No Notifications"
|
msgid "No Notifications"
|
||||||
msgstr "沒有通知"
|
msgstr "沒有通知"
|
||||||
|
|
||||||
#: ../js/ui/calendar.js:1770
|
#: ../js/ui/calendar.js:1774
|
||||||
msgid "No Events"
|
msgid "No Events"
|
||||||
msgstr "沒有行程"
|
msgstr "沒有行程"
|
||||||
|
|
||||||
@ -583,7 +606,7 @@ msgstr "外部裝置已連接"
|
|||||||
msgid "External drive disconnected"
|
msgid "External drive disconnected"
|
||||||
msgstr "外部裝置已拔除"
|
msgstr "外部裝置已拔除"
|
||||||
|
|
||||||
#: ../js/ui/components/autorunManager.js:354
|
#: ../js/ui/components/autorunManager.js:351
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Open with %s"
|
msgid "Open with %s"
|
||||||
msgstr "用 %s 開啟"
|
msgstr "用 %s 開啟"
|
||||||
@ -601,6 +624,7 @@ msgstr "再輸入一次:"
|
|||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "連線"
|
msgstr "連線"
|
||||||
|
|
||||||
|
#. Cisco LEAP
|
||||||
#: ../js/ui/components/networkAgent.js:233
|
#: ../js/ui/components/networkAgent.js:233
|
||||||
#: ../js/ui/components/networkAgent.js:245
|
#: ../js/ui/components/networkAgent.js:245
|
||||||
#: ../js/ui/components/networkAgent.js:273
|
#: ../js/ui/components/networkAgent.js:273
|
||||||
@ -609,6 +633,7 @@ msgstr "連線"
|
|||||||
msgid "Password: "
|
msgid "Password: "
|
||||||
msgstr "密碼: "
|
msgstr "密碼: "
|
||||||
|
|
||||||
|
#. static WEP
|
||||||
#: ../js/ui/components/networkAgent.js:238
|
#: ../js/ui/components/networkAgent.js:238
|
||||||
msgid "Key: "
|
msgid "Key: "
|
||||||
msgstr "金鑰:"
|
msgstr "金鑰:"
|
||||||
@ -698,13 +723,13 @@ msgstr "核對"
|
|||||||
#. Translators: "that didn't work" refers to the fact that the
|
#. Translators: "that didn't work" refers to the fact that the
|
||||||
#. * requested authentication was not gained; this can happen
|
#. * requested authentication was not gained; this can happen
|
||||||
#. * because of an authentication error (like invalid password),
|
#. * because of an authentication error (like invalid password),
|
||||||
#. * for instance. */
|
#. * for instance.
|
||||||
#: ../js/ui/components/polkitAgent.js:301 ../js/ui/shellMountOperation.js:383
|
#: ../js/ui/components/polkitAgent.js:301 ../js/ui/shellMountOperation.js:383
|
||||||
msgid "Sorry, that didn't work. Please try again."
|
msgid "Sorry, that didn't work. Please try again."
|
||||||
msgstr "抱歉,那樣沒有作用。請再試一次。"
|
msgstr "抱歉,那樣沒有作用。請再試一次。"
|
||||||
|
|
||||||
#. Translators: this is the other person changing their old IM name to their new
|
#. Translators: this is the other person changing their old IM name to their new
|
||||||
#. IM name. */
|
#. IM name.
|
||||||
#: ../js/ui/components/telepathyClient.js:759
|
#: ../js/ui/components/telepathyClient.js:759
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s is now known as %s"
|
msgid "%s is now known as %s"
|
||||||
@ -718,13 +743,15 @@ msgstr "視窗"
|
|||||||
msgid "Show Applications"
|
msgid "Show Applications"
|
||||||
msgstr "顯示應用程式"
|
msgstr "顯示應用程式"
|
||||||
|
|
||||||
|
#. Translators: this is the name of the dock/favorites area on
|
||||||
|
#. the left of the overview
|
||||||
#: ../js/ui/dash.js:449
|
#: ../js/ui/dash.js:449
|
||||||
msgid "Dash"
|
msgid "Dash"
|
||||||
msgstr "Dash"
|
msgstr "Dash"
|
||||||
|
|
||||||
#. Translators: This is the date format to use when the calendar popup is
|
#. Translators: This is the date format to use when the calendar popup is
|
||||||
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
#. * shown - it is shown just below the time in the shell (e.g. "Tue 9:29 AM").
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/dateMenu.js:73
|
#: ../js/ui/dateMenu.js:73
|
||||||
msgid "%B %e %Y"
|
msgid "%B %e %Y"
|
||||||
msgstr "%Y年%m月%e日"
|
msgstr "%Y年%m月%e日"
|
||||||
@ -732,7 +759,7 @@ msgstr "%Y年%m月%e日"
|
|||||||
#. Translators: This is the accessible name of the date button shown
|
#. Translators: This is the accessible name of the date button shown
|
||||||
#. * below the time in the shell; it should combine the weekday and the
|
#. * below the time in the shell; it should combine the weekday and the
|
||||||
#. * date, e.g. "Tuesday February 17 2015".
|
#. * date, e.g. "Tuesday February 17 2015".
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/dateMenu.js:80
|
#: ../js/ui/dateMenu.js:80
|
||||||
msgid "%A %B %e %Y"
|
msgid "%A %B %e %Y"
|
||||||
msgstr "%Y年%m月%e日%A"
|
msgstr "%Y年%m月%e日%A"
|
||||||
@ -854,13 +881,13 @@ msgstr "部分應用程式忙碌中或有未儲存的工作。"
|
|||||||
msgid "Other users are logged in."
|
msgid "Other users are logged in."
|
||||||
msgstr "其他使用者已登入。"
|
msgstr "其他使用者已登入。"
|
||||||
|
|
||||||
#. Translators: Remote here refers to a remote session, like a ssh login */
|
#. Translators: Remote here refers to a remote session, like a ssh login
|
||||||
#: ../js/ui/endSessionDialog.js:640
|
#: ../js/ui/endSessionDialog.js:640
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s (remote)"
|
msgid "%s (remote)"
|
||||||
msgstr "%s (遠端)"
|
msgstr "%s (遠端)"
|
||||||
|
|
||||||
#. Translators: Console here refers to a tty like a VT console */
|
#. Translators: Console here refers to a tty like a VT console
|
||||||
#: ../js/ui/endSessionDialog.js:643
|
#: ../js/ui/endSessionDialog.js:643
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s (console)"
|
msgid "%s (console)"
|
||||||
@ -879,7 +906,7 @@ msgstr "是否從 extensions.gnome.org 下載並安裝「%s」?"
|
|||||||
msgid "Keyboard"
|
msgid "Keyboard"
|
||||||
msgstr "鍵盤"
|
msgstr "鍵盤"
|
||||||
|
|
||||||
#. translators: 'Hide' is a verb */
|
#. translators: 'Hide' is a verb
|
||||||
#: ../js/ui/legacyTray.js:66
|
#: ../js/ui/legacyTray.js:66
|
||||||
msgid "Hide tray"
|
msgid "Hide tray"
|
||||||
msgstr "隱藏系統匣"
|
msgstr "隱藏系統匣"
|
||||||
@ -892,7 +919,7 @@ msgstr "狀態圖示"
|
|||||||
msgid "No extensions installed"
|
msgid "No extensions installed"
|
||||||
msgstr "沒有安裝擴充功能"
|
msgstr "沒有安裝擴充功能"
|
||||||
|
|
||||||
#. Translators: argument is an extension UUID. */
|
#. Translators: argument is an extension UUID.
|
||||||
#: ../js/ui/lookingGlass.js:697
|
#: ../js/ui/lookingGlass.js:697
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s has not emitted any errors."
|
msgid "%s has not emitted any errors."
|
||||||
@ -912,7 +939,7 @@ msgstr "已啟用"
|
|||||||
|
|
||||||
#. translators:
|
#. translators:
|
||||||
#. * The device has been disabled
|
#. * The device has been disabled
|
||||||
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1830
|
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1828
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "已停用"
|
msgstr "已停用"
|
||||||
|
|
||||||
@ -951,25 +978,37 @@ msgstr "概覽"
|
|||||||
#. Translators: this is the text displayed
|
#. Translators: this is the text displayed
|
||||||
#. in the search entry when no search is
|
#. in the search entry when no search is
|
||||||
#. active; it should not exceed ~30
|
#. active; it should not exceed ~30
|
||||||
#. characters. */
|
#. characters.
|
||||||
#: ../js/ui/overview.js:244
|
#: ../js/ui/overview.js:244
|
||||||
msgid "Type to search…"
|
msgid "Type to search…"
|
||||||
msgstr "輸入以搜尋…"
|
msgstr "輸入以搜尋…"
|
||||||
|
|
||||||
#: ../js/ui/panel.js:352
|
#: ../js/ui/panel.js:358
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "結束"
|
msgstr "結束"
|
||||||
|
|
||||||
#. Translators: If there is no suitable word for "Activities"
|
#. Translators: If there is no suitable word for "Activities"
|
||||||
#. in your language, you can use the word for "Overview". */
|
#. in your language, you can use the word for "Overview".
|
||||||
#: ../js/ui/panel.js:404
|
#: ../js/ui/panel.js:414
|
||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "概覽 "
|
msgstr "概覽 "
|
||||||
|
|
||||||
#: ../js/ui/panel.js:754
|
#: ../js/ui/panel.js:693
|
||||||
|
#, fuzzy
|
||||||
|
#| msgid "System"
|
||||||
|
msgctxt "System menu in the top bar"
|
||||||
|
msgid "System"
|
||||||
|
msgstr "系統"
|
||||||
|
|
||||||
|
#: ../js/ui/panel.js:805
|
||||||
msgid "Top Bar"
|
msgid "Top Bar"
|
||||||
msgstr "頂端列"
|
msgstr "頂端列"
|
||||||
|
|
||||||
|
#. Translators: this MUST be either "toggle-switch-us"
|
||||||
|
#. (for toggle switches containing the English words
|
||||||
|
#. "ON" and "OFF") or "toggle-switch-intl" (for toggle
|
||||||
|
#. switches containing "◯" and "|"). Other values will
|
||||||
|
#. simply result in invisible toggle switches.
|
||||||
#: ../js/ui/popupMenu.js:289
|
#: ../js/ui/popupMenu.js:289
|
||||||
msgid "toggle-switch-us"
|
msgid "toggle-switch-us"
|
||||||
msgstr "toggle-switch-us"
|
msgstr "toggle-switch-us"
|
||||||
@ -987,7 +1026,7 @@ msgid "Restarting…"
|
|||||||
msgstr "重新啟動…"
|
msgstr "重新啟動…"
|
||||||
|
|
||||||
#. Translators: This is a time format for a date in
|
#. Translators: This is a time format for a date in
|
||||||
#. long format */
|
#. long format
|
||||||
#: ../js/ui/screenShield.js:85
|
#: ../js/ui/screenShield.js:85
|
||||||
msgid "%A, %B %d"
|
msgid "%A, %B %d"
|
||||||
msgstr "%m月%d日%A"
|
msgstr "%m月%d日%A"
|
||||||
@ -1012,6 +1051,13 @@ msgstr "鎖定"
|
|||||||
msgid "GNOME needs to lock the screen"
|
msgid "GNOME needs to lock the screen"
|
||||||
msgstr "GNOME 需要鎖定螢幕"
|
msgstr "GNOME 需要鎖定螢幕"
|
||||||
|
|
||||||
|
#. We could not become modal, so we can't activate the
|
||||||
|
#. screenshield. The user is probably very upset at this
|
||||||
|
#. point, but any application using global grabs is broken
|
||||||
|
#. Just tell him to stop using this app
|
||||||
|
#.
|
||||||
|
#. XXX: another option is to kick the user into the gdm login
|
||||||
|
#. screen, where we're not affected by grabs
|
||||||
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
|
#: ../js/ui/screenShield.js:805 ../js/ui/screenShield.js:1271
|
||||||
msgid "Unable to lock"
|
msgid "Unable to lock"
|
||||||
msgstr "無法鎖定"
|
msgstr "無法鎖定"
|
||||||
@ -1107,7 +1153,7 @@ msgstr "關閉"
|
|||||||
msgid "Bluetooth Settings"
|
msgid "Bluetooth Settings"
|
||||||
msgstr "藍牙設定值"
|
msgstr "藍牙設定值"
|
||||||
|
|
||||||
#. Translators: this is the number of connected bluetooth devices */
|
#. Translators: this is the number of connected bluetooth devices
|
||||||
#: ../js/ui/status/bluetooth.js:105
|
#: ../js/ui/status/bluetooth.js:105
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d Connected"
|
msgid "%d Connected"
|
||||||
@ -1154,13 +1200,13 @@ msgstr "啟用"
|
|||||||
msgid "<unknown>"
|
msgid "<unknown>"
|
||||||
msgstr "<不明>"
|
msgstr "<不明>"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1308
|
#: ../js/ui/status/network.js:451 ../js/ui/status/network.js:1308
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Off"
|
msgid "%s Off"
|
||||||
msgstr "%s 關閉"
|
msgstr "%s 關閉"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:454
|
#: ../js/ui/status/network.js:454
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connected"
|
msgid "%s Connected"
|
||||||
@ -1168,45 +1214,45 @@ msgstr "%s 已連線"
|
|||||||
|
|
||||||
#. Translators: this is for network devices that are physically present but are not
|
#. Translators: this is for network devices that are physically present but are not
|
||||||
#. under NetworkManager's control (and thus cannot be used in the menu);
|
#. under NetworkManager's control (and thus cannot be used in the menu);
|
||||||
#. %s is a network identifier */
|
#. %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:459
|
#: ../js/ui/status/network.js:459
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Unmanaged"
|
msgid "%s Unmanaged"
|
||||||
msgstr "%s 未受管理"
|
msgstr "%s 未受管理"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:462
|
#: ../js/ui/status/network.js:462
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Disconnecting"
|
msgid "%s Disconnecting"
|
||||||
msgstr "%s 正在斷線"
|
msgstr "%s 正在斷線"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
|
#: ../js/ui/status/network.js:469 ../js/ui/status/network.js:1300
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connecting"
|
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 */
|
#. 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
|
#: ../js/ui/status/network.js:472
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Requires Authentication"
|
msgid "%s Requires Authentication"
|
||||||
msgstr "%s 需要核對"
|
msgstr "%s 需要核對"
|
||||||
|
|
||||||
#. Translators: this is for devices that require some kind of firmware or kernel
|
#. Translators: this is for devices that require some kind of firmware or kernel
|
||||||
#. module, which is missing; %s is a network identifier */
|
#. module, which is missing; %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:480
|
#: ../js/ui/status/network.js:480
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "Firmware Missing For %s"
|
msgid "Firmware Missing For %s"
|
||||||
msgstr "缺少 %s 韌體"
|
msgstr "缺少 %s 韌體"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated (for example it
|
#. Translators: this is for a network device that cannot be activated (for example it
|
||||||
#. is disabled by rfkill, or it has no coverage; %s is a network identifier */
|
#. is disabled by rfkill, or it has no coverage; %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:484
|
#: ../js/ui/status/network.js:484
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Unavailable"
|
msgid "%s Unavailable"
|
||||||
msgstr "%s 無法使用"
|
msgstr "%s 無法使用"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:487
|
#: ../js/ui/status/network.js:487
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Connection Failed"
|
msgid "%s Connection Failed"
|
||||||
@ -1220,14 +1266,14 @@ msgstr "有線設定值"
|
|||||||
msgid "Mobile Broadband Settings"
|
msgid "Mobile Broadband Settings"
|
||||||
msgstr "行動寬頻設定值"
|
msgstr "行動寬頻設定值"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1305
|
#: ../js/ui/status/network.js:588 ../js/ui/status/network.js:1305
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hardware Disabled"
|
msgid "%s Hardware Disabled"
|
||||||
msgstr "%s 硬體已停用"
|
msgstr "%s 硬體已停用"
|
||||||
|
|
||||||
#. Translators: this is for a network device that cannot be activated
|
#. Translators: this is for a network device that cannot be activated
|
||||||
#. because it's disabled by rfkill (airplane mode); %s is a network identifier */
|
#. because it's disabled by rfkill (airplane mode); %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:592
|
#: ../js/ui/status/network.js:592
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Disabled"
|
msgid "%s Disabled"
|
||||||
@ -1289,13 +1335,13 @@ msgstr "Wi-Fi 設定值"
|
|||||||
msgid "Turn On"
|
msgid "Turn On"
|
||||||
msgstr "開啟"
|
msgstr "開啟"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:1296
|
#: ../js/ui/status/network.js:1296
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Hotspot Active"
|
msgid "%s Hotspot Active"
|
||||||
msgstr "%s 熱點有效"
|
msgstr "%s 熱點有效"
|
||||||
|
|
||||||
#. Translators: %s is a network identifier */
|
#. Translators: %s is a network identifier
|
||||||
#: ../js/ui/status/network.js:1311
|
#: ../js/ui/status/network.js:1311
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%s Not Connected"
|
msgid "%s Not Connected"
|
||||||
@ -1305,7 +1351,7 @@ msgstr "%s 未連線"
|
|||||||
msgid "connecting..."
|
msgid "connecting..."
|
||||||
msgstr "連線中…"
|
msgstr "連線中…"
|
||||||
|
|
||||||
#. Translators: this is for network connections that require some kind of key or password */
|
#. Translators: this is for network connections that require some kind of key or password
|
||||||
#: ../js/ui/status/network.js:1414
|
#: ../js/ui/status/network.js:1414
|
||||||
msgid "authentication required"
|
msgid "authentication required"
|
||||||
msgstr "要求核對"
|
msgstr "要求核對"
|
||||||
@ -1346,20 +1392,27 @@ msgstr "電源設定值"
|
|||||||
msgid "Fully Charged"
|
msgid "Fully Charged"
|
||||||
msgstr "已完全充飽"
|
msgstr "已完全充飽"
|
||||||
|
|
||||||
|
#. 0 is reported when UPower does not have enough data
|
||||||
|
#. to estimate battery life
|
||||||
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
|
#: ../js/ui/status/power.js:72 ../js/ui/status/power.js:78
|
||||||
msgid "Estimating…"
|
msgid "Estimating…"
|
||||||
msgstr "評估中…"
|
msgstr "評估中…"
|
||||||
|
|
||||||
|
#. Translators: this is <hours>:<minutes> Remaining (<percentage>)
|
||||||
#: ../js/ui/status/power.js:86
|
#: ../js/ui/status/power.js:86
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d∶%02d Remaining (%d%%)"
|
msgid "%d∶%02d Remaining (%d%%)"
|
||||||
msgstr "剩餘時間 %d∶%02d (%d%%)"
|
msgstr "剩餘時間 %d∶%02d (%d%%)"
|
||||||
|
|
||||||
|
#. Translators: this is <hours>:<minutes> Until Full (<percentage>)
|
||||||
#: ../js/ui/status/power.js:91
|
#: ../js/ui/status/power.js:91
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d∶%02d Until Full (%d%%)"
|
msgid "%d∶%02d Until Full (%d%%)"
|
||||||
msgstr "直到充滿還需 %d∶%02d (%d%%)"
|
msgstr "直到充滿還需 %d∶%02d (%d%%)"
|
||||||
|
|
||||||
|
#. The menu only appears when airplane mode is on, so just
|
||||||
|
#. statically build it as if it was on, rather than dynamically
|
||||||
|
#. changing the menu contents.
|
||||||
#: ../js/ui/status/rfkill.js:88
|
#: ../js/ui/status/rfkill.js:88
|
||||||
msgid "Airplane Mode On"
|
msgid "Airplane Mode On"
|
||||||
msgstr "飛安模式已開啟"
|
msgstr "飛安模式已開啟"
|
||||||
@ -1427,7 +1480,7 @@ msgstr "您想要保留這些顯示器設定值嗎?"
|
|||||||
|
|
||||||
#. Translators: this and the following message should be limited in lenght,
|
#. Translators: this and the following message should be limited in lenght,
|
||||||
#. to avoid ellipsizing the labels.
|
#. to avoid ellipsizing the labels.
|
||||||
#. */
|
#.
|
||||||
#: ../js/ui/windowManager.js:82
|
#: ../js/ui/windowManager.js:82
|
||||||
msgid "Revert Settings"
|
msgid "Revert Settings"
|
||||||
msgstr "還原設定值"
|
msgstr "還原設定值"
|
||||||
@ -1443,7 +1496,7 @@ msgid_plural "Settings changes will revert in %d seconds"
|
|||||||
msgstr[0] "設定值的變更會在 %d 秒內還原"
|
msgstr[0] "設定值的變更會在 %d 秒內還原"
|
||||||
|
|
||||||
#. Translators: This represents the size of a window. The first number is
|
#. Translators: This represents the size of a window. The first number is
|
||||||
#. * the width of the window and the second is the height. */
|
#. * the width of the window and the second is the height.
|
||||||
#: ../js/ui/windowManager.js:658
|
#: ../js/ui/windowManager.js:658
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
msgid "%d x %d"
|
msgid "%d x %d"
|
||||||
@ -1499,11 +1552,11 @@ msgstr "將工作區下移"
|
|||||||
|
|
||||||
#: ../js/ui/windowMenu.js:136
|
#: ../js/ui/windowMenu.js:136
|
||||||
msgid "Move to Monitor Up"
|
msgid "Move to Monitor Up"
|
||||||
msgstr "將工作區上移"
|
msgstr "移至螢幕上端"
|
||||||
|
|
||||||
#: ../js/ui/windowMenu.js:142
|
#: ../js/ui/windowMenu.js:142
|
||||||
msgid "Move to Monitor Down"
|
msgid "Move to Monitor Down"
|
||||||
msgstr "將工作區下移"
|
msgstr "移至螢幕下端"
|
||||||
|
|
||||||
#: ../js/ui/windowMenu.js:148
|
#: ../js/ui/windowMenu.js:148
|
||||||
msgid "Move to Monitor Left"
|
msgid "Move to Monitor Left"
|
||||||
@ -1519,7 +1572,7 @@ msgstr "Evolution 行事曆"
|
|||||||
|
|
||||||
#. translators:
|
#. 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
|
#: ../src/gvc/gvc-mixer-control.c:1835
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%u Output"
|
msgid "%u Output"
|
||||||
msgid_plural "%u Outputs"
|
msgid_plural "%u Outputs"
|
||||||
@ -1527,38 +1580,38 @@ msgstr[0] "%u 輸出"
|
|||||||
|
|
||||||
#. translators:
|
#. 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
|
#: ../src/gvc/gvc-mixer-control.c:1845
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%u Input"
|
msgid "%u Input"
|
||||||
msgid_plural "%u Inputs"
|
msgid_plural "%u Inputs"
|
||||||
msgstr[0] "%u 輸入"
|
msgstr[0] "%u 輸入"
|
||||||
|
|
||||||
#: ../src/gvc/gvc-mixer-control.c:2373
|
#: ../src/gvc/gvc-mixer-control.c:2371
|
||||||
msgid "System Sounds"
|
msgid "System Sounds"
|
||||||
msgstr "系統音效"
|
msgstr "系統音效"
|
||||||
|
|
||||||
#: ../src/main.c:373
|
#: ../src/main.c:381
|
||||||
msgid "Print version"
|
msgid "Print version"
|
||||||
msgstr "顯示版本"
|
msgstr "顯示版本"
|
||||||
|
|
||||||
#: ../src/main.c:379
|
#: ../src/main.c:387
|
||||||
msgid "Mode used by GDM for login screen"
|
msgid "Mode used by GDM for login screen"
|
||||||
msgstr "GDM 在登入畫面使用的模式"
|
msgstr "GDM 在登入畫面使用的模式"
|
||||||
|
|
||||||
#: ../src/main.c:385
|
#: ../src/main.c:393
|
||||||
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
|
msgid "Use a specific mode, e.g. \"gdm\" for login screen"
|
||||||
msgstr "使用指定的模式,例如「gdm」為登入畫面"
|
msgstr "使用指定的模式,例如「gdm」為登入畫面"
|
||||||
|
|
||||||
#: ../src/main.c:391
|
#: ../src/main.c:399
|
||||||
msgid "List possible modes"
|
msgid "List possible modes"
|
||||||
msgstr "列出可能的模式"
|
msgstr "列出可能的模式"
|
||||||
|
|
||||||
#: ../src/shell-app.c:239
|
#: ../src/shell-app.c:246
|
||||||
msgctxt "program"
|
msgctxt "program"
|
||||||
msgid "Unknown"
|
msgid "Unknown"
|
||||||
msgstr "不明"
|
msgstr "不明"
|
||||||
|
|
||||||
#: ../src/shell-app.c:480
|
#: ../src/shell-app.c:487
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "無法啟動「%s」"
|
msgstr "無法啟動「%s」"
|
||||||
|
@ -867,7 +867,12 @@ update_scale_factor (GtkSettings *settings,
|
|||||||
{
|
{
|
||||||
g_object_set (context, "scale-factor", g_value_get_int (&value), NULL);
|
g_object_set (context, "scale-factor", g_value_get_int (&value), NULL);
|
||||||
if (meta_is_wayland_compositor ())
|
if (meta_is_wayland_compositor ())
|
||||||
g_object_set (clutter_settings_get_default (), "font-dpi", 96 * 1024 * g_value_get_int (&value), NULL);
|
{
|
||||||
|
int xft_dpi;
|
||||||
|
g_object_get (settings, "gtk-xft-dpi", &xft_dpi, NULL);
|
||||||
|
|
||||||
|
g_object_set (clutter_settings_get_default (), "font-dpi", xft_dpi, NULL);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Make sure clutter and gdk scaling stays disabled */
|
/* Make sure clutter and gdk scaling stays disabled */
|
||||||
|
@ -315,8 +315,6 @@ get_secrets_keyring_cb (GObject *source,
|
|||||||
|
|
||||||
secrets_found = TRUE;
|
secrets_found = TRUE;
|
||||||
|
|
||||||
g_hash_table_unref (attributes);
|
|
||||||
secret_value_unref (secret);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -366,8 +364,6 @@ shell_network_agent_get_secrets (NMSecretAgent *agent,
|
|||||||
{
|
{
|
||||||
ShellNetworkAgent *self = SHELL_NETWORK_AGENT (agent);
|
ShellNetworkAgent *self = SHELL_NETWORK_AGENT (agent);
|
||||||
ShellAgentRequest *request;
|
ShellAgentRequest *request;
|
||||||
NMSettingConnection *setting_connection;
|
|
||||||
const char *connection_type;
|
|
||||||
GHashTable *attributes;
|
GHashTable *attributes;
|
||||||
char *request_id;
|
char *request_id;
|
||||||
|
|
||||||
@ -381,9 +377,6 @@ shell_network_agent_get_secrets (NMSecretAgent *agent,
|
|||||||
shell_agent_request_cancel (request);
|
shell_agent_request_cancel (request);
|
||||||
}
|
}
|
||||||
|
|
||||||
setting_connection = nm_connection_get_setting_connection (connection);
|
|
||||||
connection_type = nm_setting_connection_get_connection_type (setting_connection);
|
|
||||||
|
|
||||||
request = g_slice_new (ShellAgentRequest);
|
request = g_slice_new (ShellAgentRequest);
|
||||||
request->self = g_object_ref (self);
|
request->self = g_object_ref (self);
|
||||||
request->cancellable = g_cancellable_new ();
|
request->cancellable = g_cancellable_new ();
|
||||||
@ -393,7 +386,7 @@ shell_network_agent_get_secrets (NMSecretAgent *agent,
|
|||||||
request->flags = flags;
|
request->flags = flags;
|
||||||
request->callback = callback;
|
request->callback = callback;
|
||||||
request->callback_data = callback_data;
|
request->callback_data = callback_data;
|
||||||
request->is_vpn = !strcmp(connection_type, NM_SETTING_VPN_SETTING_NAME);
|
request->is_vpn = !strcmp(setting_name, NM_SETTING_VPN_SETTING_NAME);
|
||||||
request->entries = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, gvalue_destroy_notify);
|
request->entries = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, gvalue_destroy_notify);
|
||||||
|
|
||||||
if (request->is_vpn)
|
if (request->is_vpn)
|
||||||
|
@ -211,7 +211,7 @@ calculate_gaussian_kernel (gdouble sigma,
|
|||||||
{
|
{
|
||||||
gdouble *ret, sum;
|
gdouble *ret, sum;
|
||||||
gdouble exp_divisor;
|
gdouble exp_divisor;
|
||||||
guint half, i;
|
int half, i;
|
||||||
|
|
||||||
g_return_val_if_fail (sigma > 0, NULL);
|
g_return_val_if_fail (sigma > 0, NULL);
|
||||||
|
|
||||||
@ -223,14 +223,14 @@ calculate_gaussian_kernel (gdouble sigma,
|
|||||||
exp_divisor = 2 * sigma * sigma;
|
exp_divisor = 2 * sigma * sigma;
|
||||||
|
|
||||||
/* n_values of 1D Gauss function */
|
/* n_values of 1D Gauss function */
|
||||||
for (i = 0; i < n_values; i++)
|
for (i = 0; i < (int)n_values; i++)
|
||||||
{
|
{
|
||||||
ret[i] = exp (-(i - half) * (i - half) / exp_divisor);
|
ret[i] = exp (-(i - half) * (i - half) / exp_divisor);
|
||||||
sum += ret[i];
|
sum += ret[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
/* normalize */
|
/* normalize */
|
||||||
for (i = 0; i < n_values; i++)
|
for (i = 0; i < (int)n_values; i++)
|
||||||
ret[i] /= sum;
|
ret[i] /= sum;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
@ -347,6 +347,7 @@ _st_create_shadow_pipeline (StShadow *shadow_spec,
|
|||||||
{
|
{
|
||||||
ClutterBackend *backend = clutter_get_default_backend ();
|
ClutterBackend *backend = clutter_get_default_backend ();
|
||||||
CoglContext *ctx = clutter_backend_get_cogl_context (backend);
|
CoglContext *ctx = clutter_backend_get_cogl_context (backend);
|
||||||
|
CoglError *error = NULL;
|
||||||
|
|
||||||
static CoglPipeline *shadow_pipeline_template = NULL;
|
static CoglPipeline *shadow_pipeline_template = NULL;
|
||||||
|
|
||||||
@ -377,7 +378,13 @@ _st_create_shadow_pipeline (StShadow *shadow_spec,
|
|||||||
COGL_PIXEL_FORMAT_A_8,
|
COGL_PIXEL_FORMAT_A_8,
|
||||||
rowstride_out,
|
rowstride_out,
|
||||||
pixels_out,
|
pixels_out,
|
||||||
NULL));
|
&error));
|
||||||
|
|
||||||
|
if (error)
|
||||||
|
{
|
||||||
|
g_warning ("Failed to allocate texture: %s", error->message);
|
||||||
|
cogl_error_free (error);
|
||||||
|
}
|
||||||
|
|
||||||
g_free (pixels_out);
|
g_free (pixels_out);
|
||||||
|
|
||||||
@ -395,7 +402,10 @@ _st_create_shadow_pipeline (StShadow *shadow_spec,
|
|||||||
|
|
||||||
pipeline = cogl_pipeline_copy (shadow_pipeline_template);
|
pipeline = cogl_pipeline_copy (shadow_pipeline_template);
|
||||||
cogl_pipeline_set_layer_texture (pipeline, 0, texture);
|
cogl_pipeline_set_layer_texture (pipeline, 0, texture);
|
||||||
cogl_object_unref (texture);
|
|
||||||
|
if (texture)
|
||||||
|
cogl_object_unref (texture);
|
||||||
|
|
||||||
return pipeline;
|
return pipeline;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -442,6 +452,7 @@ _st_create_shadow_pipeline_from_actor (StShadow *shadow_spec,
|
|||||||
if (!cogl_framebuffer_allocate (fb, &catch_error))
|
if (!cogl_framebuffer_allocate (fb, &catch_error))
|
||||||
{
|
{
|
||||||
cogl_error_free (catch_error);
|
cogl_error_free (catch_error);
|
||||||
|
cogl_object_unref (offscreen);
|
||||||
cogl_object_unref (buffer);
|
cogl_object_unref (buffer);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@ -512,7 +523,12 @@ _st_create_shadow_cairo_pattern (StShadow *shadow_spec,
|
|||||||
g_return_val_if_fail (shadow_spec != NULL, NULL);
|
g_return_val_if_fail (shadow_spec != NULL, NULL);
|
||||||
g_return_val_if_fail (src_pattern != NULL, NULL);
|
g_return_val_if_fail (src_pattern != NULL, NULL);
|
||||||
|
|
||||||
cairo_pattern_get_surface (src_pattern, &src_surface);
|
if (cairo_pattern_get_surface (src_pattern, &src_surface) != CAIRO_STATUS_SUCCESS)
|
||||||
|
/* The most likely reason we can't get the pattern is that sizing went hairwire
|
||||||
|
* and the caller tried to create a surface too big for memory, leaving us with
|
||||||
|
* a pattern in an error state; we return a transparent pattern for the shadow.
|
||||||
|
*/
|
||||||
|
return cairo_pattern_create_rgba(1.0, 1.0, 1.0, 0.0);
|
||||||
|
|
||||||
width_in = cairo_image_surface_get_width (src_surface);
|
width_in = cairo_image_surface_get_width (src_surface);
|
||||||
height_in = cairo_image_surface_get_height (src_surface);
|
height_in = cairo_image_surface_get_height (src_surface);
|
||||||
|
@ -469,14 +469,24 @@ pixbuf_to_cogl_texture (GdkPixbuf *pixbuf)
|
|||||||
{
|
{
|
||||||
ClutterBackend *backend = clutter_get_default_backend ();
|
ClutterBackend *backend = clutter_get_default_backend ();
|
||||||
CoglContext *ctx = clutter_backend_get_cogl_context (backend);
|
CoglContext *ctx = clutter_backend_get_cogl_context (backend);
|
||||||
|
CoglError *error = NULL;
|
||||||
|
CoglTexture2D *texture;
|
||||||
|
|
||||||
return COGL_TEXTURE (cogl_texture_2d_new_from_data (ctx,
|
texture = cogl_texture_2d_new_from_data (ctx,
|
||||||
gdk_pixbuf_get_width (pixbuf),
|
gdk_pixbuf_get_width (pixbuf),
|
||||||
gdk_pixbuf_get_height (pixbuf),
|
gdk_pixbuf_get_height (pixbuf),
|
||||||
gdk_pixbuf_get_has_alpha (pixbuf) ? COGL_PIXEL_FORMAT_RGBA_8888 : COGL_PIXEL_FORMAT_RGB_888,
|
gdk_pixbuf_get_has_alpha (pixbuf) ? COGL_PIXEL_FORMAT_RGBA_8888 : COGL_PIXEL_FORMAT_RGB_888,
|
||||||
gdk_pixbuf_get_rowstride (pixbuf),
|
gdk_pixbuf_get_rowstride (pixbuf),
|
||||||
gdk_pixbuf_get_pixels (pixbuf),
|
gdk_pixbuf_get_pixels (pixbuf),
|
||||||
NULL));
|
&error);
|
||||||
|
|
||||||
|
if (error)
|
||||||
|
{
|
||||||
|
g_warning ("Failed to allocate texture: %s", error->message);
|
||||||
|
cogl_error_free (error);
|
||||||
|
}
|
||||||
|
|
||||||
|
return texture ? COGL_TEXTURE (texture) : NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static cairo_surface_t *
|
static cairo_surface_t *
|
||||||
@ -640,6 +650,8 @@ st_texture_cache_reset_texture (StTextureCachePropertyBind *bind,
|
|||||||
(cairo_image_surface_get_format (surface) == CAIRO_FORMAT_ARGB32 ||
|
(cairo_image_surface_get_format (surface) == CAIRO_FORMAT_ARGB32 ||
|
||||||
cairo_image_surface_get_format (surface) == CAIRO_FORMAT_RGB24))
|
cairo_image_surface_get_format (surface) == CAIRO_FORMAT_RGB24))
|
||||||
{
|
{
|
||||||
|
CoglError *error = NULL;
|
||||||
|
|
||||||
texdata = COGL_TEXTURE (cogl_texture_2d_new_from_data (ctx,
|
texdata = COGL_TEXTURE (cogl_texture_2d_new_from_data (ctx,
|
||||||
cairo_image_surface_get_width (surface),
|
cairo_image_surface_get_width (surface),
|
||||||
cairo_image_surface_get_height (surface),
|
cairo_image_surface_get_height (surface),
|
||||||
@ -647,9 +659,18 @@ st_texture_cache_reset_texture (StTextureCachePropertyBind *bind,
|
|||||||
COGL_PIXEL_FORMAT_BGRA_8888 : COGL_PIXEL_FORMAT_BGR_888,
|
COGL_PIXEL_FORMAT_BGRA_8888 : COGL_PIXEL_FORMAT_BGR_888,
|
||||||
cairo_image_surface_get_stride (surface),
|
cairo_image_surface_get_stride (surface),
|
||||||
cairo_image_surface_get_data (surface),
|
cairo_image_surface_get_data (surface),
|
||||||
NULL));
|
&error));
|
||||||
clutter_texture_set_cogl_texture (bind->texture, texdata);
|
|
||||||
cogl_object_unref (texdata);
|
if (texdata)
|
||||||
|
{
|
||||||
|
clutter_texture_set_cogl_texture (bind->texture, texdata);
|
||||||
|
cogl_object_unref (texdata);
|
||||||
|
}
|
||||||
|
else if (error)
|
||||||
|
{
|
||||||
|
g_warning ("Failed to allocate texture: %s", error->message);
|
||||||
|
cogl_error_free (error);
|
||||||
|
}
|
||||||
|
|
||||||
clutter_actor_set_opacity (CLUTTER_ACTOR (bind->texture), 255);
|
clutter_actor_set_opacity (CLUTTER_ACTOR (bind->texture), 255);
|
||||||
}
|
}
|
||||||
|
@ -71,6 +71,7 @@ create_corner_material (StCornerSpec *corner)
|
|||||||
{
|
{
|
||||||
ClutterBackend *backend = clutter_get_default_backend ();
|
ClutterBackend *backend = clutter_get_default_backend ();
|
||||||
CoglContext *ctx = clutter_backend_get_cogl_context (backend);
|
CoglContext *ctx = clutter_backend_get_cogl_context (backend);
|
||||||
|
CoglError *error = NULL;
|
||||||
CoglHandle texture;
|
CoglHandle texture;
|
||||||
cairo_t *cr;
|
cairo_t *cr;
|
||||||
cairo_surface_t *surface;
|
cairo_surface_t *surface;
|
||||||
@ -172,9 +173,15 @@ create_corner_material (StCornerSpec *corner)
|
|||||||
CLUTTER_CAIRO_FORMAT_ARGB32,
|
CLUTTER_CAIRO_FORMAT_ARGB32,
|
||||||
rowstride,
|
rowstride,
|
||||||
data,
|
data,
|
||||||
NULL));
|
&error));
|
||||||
|
|
||||||
|
if (error)
|
||||||
|
{
|
||||||
|
g_warning ("Failed to allocate texture: %s", error->message);
|
||||||
|
cogl_error_free (error);
|
||||||
|
}
|
||||||
|
|
||||||
g_free (data);
|
g_free (data);
|
||||||
g_assert (texture != COGL_INVALID_HANDLE);
|
|
||||||
|
|
||||||
return texture;
|
return texture;
|
||||||
}
|
}
|
||||||
@ -347,7 +354,7 @@ st_theme_node_lookup_corner (StThemeNode *node,
|
|||||||
float height,
|
float height,
|
||||||
StCorner corner_id)
|
StCorner corner_id)
|
||||||
{
|
{
|
||||||
CoglHandle texture, material;
|
CoglHandle texture, material = COGL_INVALID_HANDLE;
|
||||||
char *key;
|
char *key;
|
||||||
StTextureCache *cache;
|
StTextureCache *cache;
|
||||||
StCornerSpec corner;
|
StCornerSpec corner;
|
||||||
@ -396,8 +403,12 @@ st_theme_node_lookup_corner (StThemeNode *node,
|
|||||||
|
|
||||||
key = corner_to_string (&corner);
|
key = corner_to_string (&corner);
|
||||||
texture = st_texture_cache_load (cache, key, ST_TEXTURE_CACHE_POLICY_NONE, load_corner, &corner, NULL);
|
texture = st_texture_cache_load (cache, key, ST_TEXTURE_CACHE_POLICY_NONE, load_corner, &corner, NULL);
|
||||||
material = _st_create_texture_pipeline (texture);
|
|
||||||
cogl_handle_unref (texture);
|
if (texture)
|
||||||
|
{
|
||||||
|
material = _st_create_texture_pipeline (texture);
|
||||||
|
cogl_handle_unref (texture);
|
||||||
|
}
|
||||||
|
|
||||||
g_free (key);
|
g_free (key);
|
||||||
|
|
||||||
@ -741,7 +752,11 @@ paint_shadow_pattern_to_cairo_context (StShadow *shadow_spec,
|
|||||||
/* Then subtract out the bounds of the surface in the surface
|
/* Then subtract out the bounds of the surface in the surface
|
||||||
* pattern; we transform the context by the inverse of the
|
* pattern; we transform the context by the inverse of the
|
||||||
* pattern matrix to get to surface coordinates */
|
* pattern matrix to get to surface coordinates */
|
||||||
cairo_pattern_get_surface (pattern, &surface);
|
|
||||||
|
if (cairo_pattern_get_surface (pattern, &surface) != CAIRO_STATUS_SUCCESS)
|
||||||
|
/* Something went wrong previously */
|
||||||
|
goto no_surface;
|
||||||
|
|
||||||
width = cairo_image_surface_get_width (surface);
|
width = cairo_image_surface_get_width (surface);
|
||||||
height = cairo_image_surface_get_height (surface);
|
height = cairo_image_surface_get_height (surface);
|
||||||
|
|
||||||
@ -752,6 +767,7 @@ paint_shadow_pattern_to_cairo_context (StShadow *shadow_spec,
|
|||||||
cairo_rectangle (cr, 0, height, width, - height);
|
cairo_rectangle (cr, 0, height, width, - height);
|
||||||
cairo_fill (cr);
|
cairo_fill (cr);
|
||||||
|
|
||||||
|
no_surface:
|
||||||
cairo_restore (cr);
|
cairo_restore (cr);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -953,6 +969,7 @@ st_theme_node_prerender_background (StThemeNode *node,
|
|||||||
{
|
{
|
||||||
ClutterBackend *backend = clutter_get_default_backend ();
|
ClutterBackend *backend = clutter_get_default_backend ();
|
||||||
CoglContext *ctx = clutter_backend_get_cogl_context (backend);
|
CoglContext *ctx = clutter_backend_get_cogl_context (backend);
|
||||||
|
CoglError *error = NULL;
|
||||||
StBorderImage *border_image;
|
StBorderImage *border_image;
|
||||||
CoglHandle texture;
|
CoglHandle texture;
|
||||||
guint radius[4];
|
guint radius[4];
|
||||||
@ -1272,7 +1289,13 @@ st_theme_node_prerender_background (StThemeNode *node,
|
|||||||
CLUTTER_CAIRO_FORMAT_ARGB32,
|
CLUTTER_CAIRO_FORMAT_ARGB32,
|
||||||
rowstride,
|
rowstride,
|
||||||
data,
|
data,
|
||||||
NULL));
|
&error));
|
||||||
|
|
||||||
|
if (error)
|
||||||
|
{
|
||||||
|
g_warning ("Failed to allocate texture: %s", error->message);
|
||||||
|
cogl_error_free (error);
|
||||||
|
}
|
||||||
|
|
||||||
cairo_destroy (cr);
|
cairo_destroy (cr);
|
||||||
cairo_surface_destroy (surface);
|
cairo_surface_destroy (surface);
|
||||||
@ -2145,7 +2168,7 @@ st_theme_node_prerender_shadow (StThemeNodePaintState *state)
|
|||||||
guint border_radius[4];
|
guint border_radius[4];
|
||||||
int max_borders[4];
|
int max_borders[4];
|
||||||
int center_radius, corner_id;
|
int center_radius, corner_id;
|
||||||
CoglHandle buffer, offscreen;
|
CoglHandle buffer, offscreen = COGL_INVALID_HANDLE;
|
||||||
|
|
||||||
/* Get infos from the node */
|
/* Get infos from the node */
|
||||||
if (state->alloc_width < node->box_shadow_min_width ||
|
if (state->alloc_width < node->box_shadow_min_width ||
|
||||||
@ -2186,7 +2209,8 @@ st_theme_node_prerender_shadow (StThemeNodePaintState *state)
|
|||||||
state->box_shadow_height,
|
state->box_shadow_height,
|
||||||
COGL_TEXTURE_NO_SLICING,
|
COGL_TEXTURE_NO_SLICING,
|
||||||
COGL_PIXEL_FORMAT_ANY);
|
COGL_PIXEL_FORMAT_ANY);
|
||||||
offscreen = cogl_offscreen_new_to_texture (buffer);
|
if (buffer != COGL_INVALID_HANDLE)
|
||||||
|
offscreen = cogl_offscreen_new_to_texture (buffer);
|
||||||
|
|
||||||
if (offscreen != COGL_INVALID_HANDLE)
|
if (offscreen != COGL_INVALID_HANDLE)
|
||||||
{
|
{
|
||||||
@ -2206,7 +2230,9 @@ st_theme_node_prerender_shadow (StThemeNodePaintState *state)
|
|||||||
state->box_shadow_material = _st_create_shadow_pipeline (st_theme_node_get_box_shadow (node),
|
state->box_shadow_material = _st_create_shadow_pipeline (st_theme_node_get_box_shadow (node),
|
||||||
buffer);
|
buffer);
|
||||||
}
|
}
|
||||||
cogl_handle_unref (buffer);
|
|
||||||
|
if (buffer != COGL_INVALID_HANDLE)
|
||||||
|
cogl_handle_unref (buffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
Loading…
Reference in New Issue
Block a user