Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
986afdc0c5 | |||
e6dc843786 | |||
9eb671bb08 |
63
NEWS
63
NEWS
@ -1,66 +1,3 @@
|
||||
3.3.2
|
||||
=====
|
||||
* Port D-Bus usage in the shell to GDBus [Giovanni, Marc-Antoine, Florian,
|
||||
Jasper, Matthias; #648651, #658078, #663902, #663941]
|
||||
* Message tray
|
||||
- Add right-click option to chats to mute the conversation [Ana; #659962]
|
||||
- Don't steal the focus when popping up under the pointer [Rui; #661358]
|
||||
* Looking Glass
|
||||
- Add alt-Tab completion [Jason; #661054]
|
||||
- Show errors from extensions in the extensions tab [Jasper; #660546]
|
||||
- Allow switching tabs with <Control>PageUp/PageDown
|
||||
- Theme consistently with the rest of the shell [Jason; 650900]
|
||||
* Extension system
|
||||
- Don't try to load disabled extensions at all [Jasper; #661815, #662704]
|
||||
- Enable and disable plugins in a consistent order [Jasper; #661815, #662704]
|
||||
- Add options to enable/disable extensions to gnome-shell-extension-tool
|
||||
[Jasper; #661815]
|
||||
* Adapt to Mutter change to GSettings [Florian, Matthias; #663429]
|
||||
* Allow creating a new workspace by dragging a window or launcher in the
|
||||
middle of two existing ones [Jasper; #646409]
|
||||
* Allow using Alt-Tab while during drag-and-drop and other operations
|
||||
that grab the pointer [Adel; #660457]
|
||||
* Do a better job of finding the right user to authenticate
|
||||
as when showing a PolKit dialog [Matthias; #651547]
|
||||
* Control the D-Bus Eval() method by the developer-tools GSetting which
|
||||
is used for looking glass and screen recorder. [Jasper; #662891]
|
||||
* Fix browser plugin to work under WebKit-based browser [Jasper; #663823]
|
||||
* Fix certain stacking issues with alt-Tab [Jasper; #660650]
|
||||
* Fixes for GLib deprecations [Jasper; #662011]p
|
||||
* Fixes for GTK+ deprecations [Florian, Rico; #662245]p
|
||||
* Fixes for Clutter deprecations [Jasper; #662627]
|
||||
* Visual improvements and UI tweaks [Florian, Jakub, Jasper;
|
||||
#662800, #658096, #662226]
|
||||
* Hard-code "Home" as the name for the home dir, rather than looking
|
||||
it up via GSettings; avoids schema dependency [Cosimo; #559895]
|
||||
* Don't show "Switch User" on single user machines [Florian; #657011]
|
||||
* Generate documentation for St toolkit [Florian]
|
||||
* Improve marking of strings for translation [Matthias, Piotr; #658664]
|
||||
* Networking menu bug fixes [Giovanni; #650007, #651378, #659277, #663278]
|
||||
* Code cleanups and leak fixes to StTextureCache
|
||||
[Jasper, Florian; #660968, #662998]
|
||||
* Code cleanups [Adel, Florian, Jasper; #662238, #663584]
|
||||
* Build fixes [Adel, Colin, Florian, Ming Han]
|
||||
* Misc bug fixes [Adel, Florian, "Fry", Jasper, Giovanni, Ray, Rui, Stefan;
|
||||
#660520, #661029, #661231, #661623, #661921, #662235, #662236, #662502,
|
||||
#662394, #662799, #662969, #663175, #663277, #663815, #663891, #662967]
|
||||
|
||||
Contributors:
|
||||
Giovanni Campagna, Cosimo Cecchi, Matthias Clasen, Piotr Drąg, Adel Gadllah,
|
||||
Rui Matos, Florian Müllner, Marc-Antoine Perennou, Ana Risteska,
|
||||
Jason Siefken, Jakub Steiner, Ray Strode, Jasper St. Pierre, Ming Han Teh,
|
||||
Rico Tzschichholz, Colin Walters, Stefan Zwanenburg
|
||||
|
||||
Translation:
|
||||
Alexander Shopov [bg], Marek Černocký [cs], Mario Blättermann [de],
|
||||
Kostas Papadimas [el], Bruce Cowan [en_GB], Kristjan Schmidt [eo],
|
||||
Jorge González, Daniel Mustieles, Benjamín Valero Espinosa [es],
|
||||
Mattias Põldaru [et], Arash Mousavi [fa], Ville-Pekka Vainio [fi],
|
||||
Fran Diéguez [gl], Yaron Shahrabani [he], Hideki Yamane [ja],
|
||||
Algimantas Margevičius [lt], Kjartan Maraas [nb], Daniel Nylander [se],
|
||||
Matej Urbančič [sl], Praveen Illa [te], Muhammet Kara [tr],
|
||||
Nguyễn Thái Ngọc Duy [vi], Cheng-Chia Tseng [zh_HK, zh_TW]
|
||||
|
||||
3.2.1
|
||||
=====
|
||||
* Restore the IM state on startup - if you were available in when you logged
|
||||
|
@ -1,5 +1,5 @@
|
||||
AC_PREREQ(2.63)
|
||||
AC_INIT([gnome-shell],[3.3.2],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||
AC_INIT([gnome-shell],[3.2.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_SRCDIR([src/shell-global.c])
|
||||
@ -63,7 +63,7 @@ AM_CONDITIONAL(BUILD_RECORDER, $build_recorder)
|
||||
CLUTTER_MIN_VERSION=1.7.5
|
||||
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
|
||||
GJS_MIN_VERSION=1.29.18
|
||||
MUTTER_MIN_VERSION=3.3.2
|
||||
MUTTER_MIN_VERSION=3.2.1
|
||||
FOLKS_MIN_VERSION=0.5.2
|
||||
GTK_MIN_VERSION=3.0.0
|
||||
GIO_MIN_VERSION=2.31.0
|
||||
@ -82,7 +82,7 @@ PKG_CHECK_MODULES(GNOME_SHELL, gio-unix-2.0 >= $GIO_MIN_VERSION
|
||||
folks >= $FOLKS_MIN_VERSION
|
||||
libmutter >= $MUTTER_MIN_VERSION
|
||||
gjs-internals-1.0 >= $GJS_MIN_VERSION
|
||||
libgnome-menu-3.0 $recorder_modules
|
||||
libgnome-menu-3.0 $recorder_modules gconf-2.0
|
||||
gdk-x11-3.0 libsoup-2.4
|
||||
clutter-x11-1.0 >= $CLUTTER_MIN_VERSION
|
||||
clutter-glx-1.0 >= $CLUTTER_MIN_VERSION
|
||||
@ -117,6 +117,7 @@ CFLAGS=$saved_CFLAGS
|
||||
LIBS=$saved_LIBS
|
||||
|
||||
PKG_CHECK_MODULES(ST, clutter-1.0 gtk+-3.0 libcroco-0.6 >= 0.6.2 gnome-desktop-3.0 >= 2.90.0 x11)
|
||||
PKG_CHECK_MODULES(GDMUSER, dbus-glib-1 gtk+-3.0)
|
||||
PKG_CHECK_MODULES(TRAY, gtk+-3.0)
|
||||
PKG_CHECK_MODULES(GVC, libpulse libpulse-mainloop-glib gobject-2.0)
|
||||
PKG_CHECK_MODULES(DESKTOP_SCHEMAS, gsettings-desktop-schemas >= 0.1.7)
|
||||
|
@ -1267,8 +1267,7 @@ StTooltip StLabel {
|
||||
}
|
||||
|
||||
.notification-icon-button > StIcon {
|
||||
icon-size: 16px;
|
||||
padding: 8px;
|
||||
icon-size: 36px;
|
||||
}
|
||||
|
||||
.hotplug-transient-box {
|
||||
|
@ -1,6 +1,7 @@
|
||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||
|
||||
const Gio = imports.gi.Gio;
|
||||
const GLib = imports.gi.GLib;
|
||||
const Main = imports.ui.main;
|
||||
|
||||
const MAG_SERVICE_NAME = 'org.gnome.Magnifier';
|
||||
|
@ -132,11 +132,15 @@ function _initUserSession() {
|
||||
ExtensionSystem.init();
|
||||
ExtensionSystem.loadExtensions();
|
||||
|
||||
Meta.keybindings_set_custom_handler('panel-run-dialog', function() {
|
||||
let shellwm = global.window_manager;
|
||||
|
||||
shellwm.takeover_keybinding('panel-run-dialog');
|
||||
shellwm.connect('keybinding::panel-run-dialog', function () {
|
||||
getRunDialog().open();
|
||||
});
|
||||
|
||||
Meta.keybindings_set_custom_handler('panel-main-menu', function () {
|
||||
shellwm.takeover_keybinding('panel-main-menu');
|
||||
shellwm.connect('keybinding::panel-main-menu', function () {
|
||||
overview.toggle();
|
||||
});
|
||||
|
||||
|
@ -27,7 +27,6 @@ const AccountsService = imports.gi.AccountsService;
|
||||
const Clutter = imports.gi.Clutter;
|
||||
const St = imports.gi.St;
|
||||
const Pango = imports.gi.Pango;
|
||||
const GLib = imports.gi.GLib;
|
||||
const Gio = imports.gi.Gio;
|
||||
const Mainloop = imports.mainloop;
|
||||
const Polkit = imports.gi.Polkit;
|
||||
@ -89,14 +88,10 @@ AuthenticationDialog.prototype = {
|
||||
if (userNames.length > 1) {
|
||||
log('polkitAuthenticationAgent: Received ' + userNames.length +
|
||||
' identities that can be used for authentication. Only ' +
|
||||
'considering one.');
|
||||
'considering the first one.');
|
||||
}
|
||||
|
||||
let userName = GLib.get_user_name();
|
||||
if (userNames.indexOf(userName) < 0)
|
||||
userName = 'root';
|
||||
if (userNames.indexOf(userName) < 0)
|
||||
userName = userNames[0];
|
||||
let userName = userNames[0];
|
||||
|
||||
this._user = AccountsService.UserManager.get_default().get_user(userName);
|
||||
let userRealName = this._user.get_real_name()
|
||||
|
@ -156,7 +156,7 @@ GnomeShell.prototype = {
|
||||
},
|
||||
|
||||
ListExtensions: function() {
|
||||
let out = {};
|
||||
let out;
|
||||
for (let uuid in ExtensionSystem.extensionMeta) {
|
||||
let dbusObj = this.GetExtensionInfo(uuid);
|
||||
out[uuid] = dbusObj;
|
||||
@ -166,19 +166,19 @@ GnomeShell.prototype = {
|
||||
|
||||
GetExtensionInfo: function(uuid) {
|
||||
let meta = ExtensionSystem.extensionMeta[uuid] || {};
|
||||
let out = {};
|
||||
let out;
|
||||
for (let key in meta) {
|
||||
let val = meta[key];
|
||||
let type;
|
||||
switch (typeof val) {
|
||||
case 'object':
|
||||
throw Error('Extension had a nested object in the metadata. This is not supported');
|
||||
case 'string':
|
||||
type = 's';
|
||||
break;
|
||||
case 'number':
|
||||
type = 'd';
|
||||
break;
|
||||
default:
|
||||
continue;
|
||||
}
|
||||
out[key] = GLib.Variant.new(type, val);
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||
const ByteArray = imports.byteArray;
|
||||
const GLib = imports.gi.GLib;
|
||||
const Gio = imports.gi.Gio;
|
||||
const GObject = imports.gi.GObject;
|
||||
const Lang = imports.lang;
|
||||
const Mainloop = imports.mainloop;
|
||||
|
@ -1,6 +1,7 @@
|
||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||
|
||||
const Gio = imports.gi.Gio;
|
||||
const GLib = imports.gi.GLib;
|
||||
const Lang = imports.lang;
|
||||
const Mainloop = imports.mainloop;
|
||||
const Shell = imports.gi.Shell;
|
||||
|
@ -309,7 +309,9 @@ IMStatusChooserItem.prototype = {
|
||||
this._setComboboxPresence(presence);
|
||||
|
||||
if (!this._sessionPresenceRestored) {
|
||||
this._sessionStatusChanged(this._presence.status);
|
||||
this._presence.connectSignal('StatusChanged', Lang.bind(this, function (proxy, senderName, [status]) {
|
||||
this._sessionStatusChanged(status);
|
||||
}));
|
||||
return;
|
||||
}
|
||||
|
||||
@ -469,6 +471,10 @@ UserMenuButton.prototype = {
|
||||
this._idleIcon = new St.Icon({ icon_name: 'user-idle',
|
||||
style_class: 'popup-menu-icon' });
|
||||
|
||||
this._presence.connectSignal('StatusChanged', Lang.bind(this, function (proxy, senderName, [status]) {
|
||||
this._updateSwitch(status);
|
||||
}));
|
||||
|
||||
this._accountMgr.connect('most-available-presence-changed',
|
||||
Lang.bind(this, this._updatePresenceIcon));
|
||||
this._accountMgr.prepare_async(null, Lang.bind(this,
|
||||
|
@ -92,6 +92,7 @@ WindowManager.prototype = {
|
||||
_init : function() {
|
||||
this._shellwm = global.window_manager;
|
||||
|
||||
this._keyBindingHandlers = [];
|
||||
this._minimizing = [];
|
||||
this._maximizing = [];
|
||||
this._unmaximizing = [];
|
||||
@ -120,24 +121,15 @@ WindowManager.prototype = {
|
||||
this._shellwm.connect('destroy', Lang.bind(this, this._destroyWindow));
|
||||
|
||||
this._workspaceSwitcherPopup = null;
|
||||
Meta.keybindings_set_custom_handler('switch-to-workspace-left',
|
||||
Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-to-workspace-right',
|
||||
Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-to-workspace-up',
|
||||
Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-to-workspace-down',
|
||||
Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-windows',
|
||||
Lang.bind(this, this._startAppSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-group',
|
||||
Lang.bind(this, this._startAppSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-windows-backward',
|
||||
Lang.bind(this, this._startAppSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-group-backward',
|
||||
Lang.bind(this, this._startAppSwitcher));
|
||||
Meta.keybindings_set_custom_handler('switch-panels',
|
||||
Lang.bind(this, this._startA11ySwitcher));
|
||||
this.setKeybindingHandler('switch-to-workspace-left', Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
this.setKeybindingHandler('switch-to-workspace-right', Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
this.setKeybindingHandler('switch-to-workspace-up', Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
this.setKeybindingHandler('switch-to-workspace-down', Lang.bind(this, this._showWorkspaceSwitcher));
|
||||
this.setKeybindingHandler('switch-windows', Lang.bind(this, this._startAppSwitcher));
|
||||
this.setKeybindingHandler('switch-group', Lang.bind(this, this._startAppSwitcher));
|
||||
this.setKeybindingHandler('switch-windows-backward', Lang.bind(this, this._startAppSwitcher));
|
||||
this.setKeybindingHandler('switch-group-backward', Lang.bind(this, this._startAppSwitcher));
|
||||
this.setKeybindingHandler('switch-panels', Lang.bind(this, this._startA11ySwitcher));
|
||||
|
||||
Main.overview.connect('showing', Lang.bind(this, function() {
|
||||
for (let i = 0; i < this._dimmedWindows.length; i++)
|
||||
@ -149,6 +141,16 @@ WindowManager.prototype = {
|
||||
}));
|
||||
},
|
||||
|
||||
setKeybindingHandler: function(keybinding, handler){
|
||||
if (this._keyBindingHandlers[keybinding])
|
||||
this._shellwm.disconnect(this._keyBindingHandlers[keybinding]);
|
||||
else
|
||||
this._shellwm.takeover_keybinding(keybinding);
|
||||
|
||||
this._keyBindingHandlers[keybinding] =
|
||||
this._shellwm.connect('keybinding::' + keybinding, handler);
|
||||
},
|
||||
|
||||
blockAnimations: function() {
|
||||
this._animationBlockCount++;
|
||||
},
|
||||
@ -532,41 +534,37 @@ WindowManager.prototype = {
|
||||
shellwm.completed_switch_workspace();
|
||||
},
|
||||
|
||||
_startAppSwitcher : function(display, screen, window, binding) {
|
||||
_startAppSwitcher : function(shellwm, binding, mask, window, backwards) {
|
||||
/* prevent a corner case where both popups show up at once */
|
||||
if (this._workspaceSwitcherPopup != null)
|
||||
this._workspaceSwitcherPopup.actor.hide();
|
||||
|
||||
let tabPopup = new AltTab.AltTabPopup();
|
||||
|
||||
let modifiers = binding.get_modifiers();
|
||||
let backwards = modifiers & Meta.VirtualModifier.SHIFT_MASK;
|
||||
if (!tabPopup.show(backwards, binding.get_name(), binding.get_mask()))
|
||||
if (!tabPopup.show(backwards, binding, mask))
|
||||
tabPopup.destroy();
|
||||
},
|
||||
|
||||
_startA11ySwitcher : function(display, screen, window, binding) {
|
||||
let modifiers = binding.get_modifiers();
|
||||
let backwards = modifiers & Meta.VirtualModifier.SHIFT_MASK;
|
||||
Main.ctrlAltTabManager.popup(backwards, binding.get_mask());
|
||||
_startA11ySwitcher : function(shellwm, binding, mask, window, backwards) {
|
||||
Main.ctrlAltTabManager.popup(backwards, mask);
|
||||
},
|
||||
|
||||
_showWorkspaceSwitcher : function(display, screen, window, binding) {
|
||||
if (screen.n_workspaces == 1)
|
||||
_showWorkspaceSwitcher : function(shellwm, binding, mask, window, backwards) {
|
||||
if (global.screen.n_workspaces == 1)
|
||||
return;
|
||||
|
||||
if (this._workspaceSwitcherPopup == null)
|
||||
this._workspaceSwitcherPopup = new WorkspaceSwitcherPopup.WorkspaceSwitcherPopup();
|
||||
|
||||
if (binding.get_name() == 'switch-to-workspace-up')
|
||||
if (binding == 'switch-to-workspace-up')
|
||||
this.actionMoveWorkspaceUp();
|
||||
else if (binding.get_name() == 'switch-to-workspace-down')
|
||||
else if (binding == 'switch-to-workspace-down')
|
||||
this.actionMoveWorkspaceDown();
|
||||
// left/right would effectively act as synonyms for up/down if we enabled them;
|
||||
// but that could be considered confusing.
|
||||
// else if (binding.get_name() == 'switch-to-workspace-left')
|
||||
// else if (binding == 'switch-to-workspace-left')
|
||||
// this.actionMoveWorkspaceLeft();
|
||||
// else if (binding.get_name() == 'switch-to-workspace-right')
|
||||
// else if (binding == 'switch-to-workspace-right')
|
||||
// this.actionMoveWorkspaceRight();
|
||||
},
|
||||
|
||||
|
@ -597,7 +597,7 @@ ThumbnailsBox.prototype = {
|
||||
// ... and bam, a workspace, good as new.
|
||||
source.metaWindow.change_workspace_by_index(newWorkspaceIndex,
|
||||
true, time);
|
||||
else if (source.shellWorkspaceLaunch)
|
||||
else (source.shellWorkspaceLaunch)
|
||||
source.shellWorkspaceLaunch({ workspace: newWorkspaceIndex,
|
||||
timestamp: time });
|
||||
|
||||
|
298
po/fi.po
298
po/fi.po
@ -19,20 +19,18 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2011-10-18 19:39+0000\n"
|
||||
"PO-Revision-Date: 2011-11-15 22:19+0200\n"
|
||||
"Last-Translator: Ville-Pekka Vainio <vpvainio@iki.fi>\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-09-26 15:40+0300\n"
|
||||
"PO-Revision-Date: 2011-09-26 15:39+0300\n"
|
||||
"Last-Translator: Tommi Vainikainen <thv@iki.fi>\n"
|
||||
"Language-Team: Finnish <gnome-fi-laatu@lists.sourceforge.net>\n"
|
||||
"Language: fi\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Virtaal 0.7.1-rc1\n"
|
||||
"X-Generator: Virtaal 0.6.1\n"
|
||||
"X-DamnedLies-Scope: partial\n"
|
||||
"X-Project-Style: gnome\n"
|
||||
|
||||
#: ../data/gnome-shell.desktop.in.in.h:1
|
||||
msgid "GNOME Shell"
|
||||
@ -42,7 +40,6 @@ msgstr "Gnomen ikkunanhallinta"
|
||||
msgid "Window management and application launching"
|
||||
msgstr "Ikkunanhallinta ja sovelluksien käynnistäminen"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:1
|
||||
msgid ""
|
||||
"Allows access to internal debugging and monitoring tools using the Alt-F2 "
|
||||
"dialog."
|
||||
@ -50,20 +47,16 @@ msgstr ""
|
||||
"Salli pääsy sisäiseen vianselvitys- ja monitorointityökaluun Alt-F2-ikkunan "
|
||||
"kautta."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:2
|
||||
msgid "Enable internal tools useful for developers and testers from Alt-F2"
|
||||
msgstr ""
|
||||
"Ota käyttöön sisäiset kehittäjiä ja testaajia hyödyttävät työkalut Alt-F2:sta"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:3
|
||||
msgid "File extension used for storing the screencast"
|
||||
msgstr "Tiedostopääte ruutunauhoitusten tallentamiseen"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:4
|
||||
msgid "Framerate used for recording screencasts."
|
||||
msgstr "Ruutunauhoitusten kuvataajuus."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:5
|
||||
msgid ""
|
||||
"GNOME Shell extensions have a uuid property; this key lists extensions which "
|
||||
"should be loaded. disabled-extensions overrides this setting for extensions "
|
||||
@ -74,31 +67,24 @@ msgstr ""
|
||||
"kytketyt laajennukset) ylittää tämän asetuksen mikäli laajennus esiintyy "
|
||||
"molemmissa luetteloissa."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:6
|
||||
msgid "History for command (Alt-F2) dialog"
|
||||
msgstr "Historia komentoikkunalle (Alt-F2)"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:7
|
||||
msgid "History for the looking glass dialog"
|
||||
msgstr "Historia näyttölasi-ikkunalle"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:8
|
||||
msgid "If true, display date in the clock, in addition to time."
|
||||
msgstr "Jos tosi, näytä päivämäärä kellossa ajan lisäksi."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:9
|
||||
msgid "If true, display seconds in time."
|
||||
msgstr "Jos tosi, näytä sekunnit ajassa."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:10
|
||||
msgid "If true, display the ISO week date in the calendar."
|
||||
msgstr "Jos tosi, näytä ISO-viikonpäivät kalenterissa."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:11
|
||||
msgid "List of desktop file IDs for favorite applications"
|
||||
msgstr "Luettelo työpöytätiedostojen tunnisteista lempisovelluksille"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:13
|
||||
#, no-c-format
|
||||
msgid ""
|
||||
"Sets the GStreamer pipeline used to encode recordings. It follows the syntax "
|
||||
@ -124,25 +110,20 @@ msgstr ""
|
||||
"muotoon VP8-koodekilla. %T korvautuu arvauksella parhaan suorituskyvy "
|
||||
"antavasta säiemäärästä järjestelmässä."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:14
|
||||
msgid "Show date in clock"
|
||||
msgstr "Näytä päivämäärä kellossa"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:15
|
||||
msgid "Show the week date in the calendar"
|
||||
msgstr "Näytä viikonpäivä kalenterissa"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:16
|
||||
msgid "Show time with seconds"
|
||||
msgstr "Näytä aika sekuntien kera"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:17
|
||||
msgid ""
|
||||
"The applications corresponding to these identifiers will be displayed in the "
|
||||
"favorites area."
|
||||
msgstr "Näitä tunnisteita vastaavat sovellukset näytetään suosikkien alueella."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:18
|
||||
msgid ""
|
||||
"The filename for recorded screencasts will be a unique filename based on the "
|
||||
"current date, and use this extension. It should be changed when recording to "
|
||||
@ -152,7 +133,6 @@ msgstr ""
|
||||
"nykyisen päivämäärän ja tämän tiedostopäätteen mukaisesti. Tiedostopääte "
|
||||
"tulisi vaihtaa mikäli nauhoitetaan eri tallennusmuotoon."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:19
|
||||
msgid ""
|
||||
"The framerate of the resulting screencast recordered by GNOME Shell's "
|
||||
"screencast recorder in frames-per-second."
|
||||
@ -160,11 +140,9 @@ msgstr ""
|
||||
"Nauhoituksesta tuloksena saatavan ruutunauhoituksen kuvataajuus kun käytössä "
|
||||
"on GNOMEn ikkunanhallinnan nauhoitin, kuvaa per sekunti."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:20
|
||||
msgid "The gstreamer pipeline used to encode the screencast"
|
||||
msgstr "Gstreamer-liukuhihna jolla ruutunauhoitukset pakataan"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:21
|
||||
msgid ""
|
||||
"The shell normally monitors active applications in order to present the most "
|
||||
"used ones (e.g. in launchers). While this data will be kept private, you may "
|
||||
@ -177,72 +155,52 @@ msgstr ""
|
||||
"yksityisyyden vuoksi. Huomaa että pois kytkeminen ei poista aiemmin "
|
||||
"tallennettuja tietoja."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:22
|
||||
msgid "The type of keyboard to use."
|
||||
msgstr "Käytettävän näppäimistön tyyppi."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:23
|
||||
msgid "Uuids of extensions to enable"
|
||||
msgstr "Käyttöön otettavien laajennosten UUID:t"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:24
|
||||
msgid "Whether to collect stats about applications usage"
|
||||
msgstr "Kerätäänkö sovellusten käytöstä tilastoja"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:25
|
||||
msgid "Which keyboard to use"
|
||||
msgstr "Mitä näppäimistöä käytetään"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.h:26
|
||||
msgid "disabled OpenSearch providers"
|
||||
msgstr "käytöstä poistetut OpenSearch-tarjoajat"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:633
|
||||
msgid "Session..."
|
||||
msgstr "Istunto…"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:804
|
||||
msgctxt "title"
|
||||
msgid "Sign In"
|
||||
msgstr "Kirjaudu sisään"
|
||||
|
||||
#. translators: this message is shown below the password entry field
|
||||
#. to indicate the user can swipe their finger instead
|
||||
#: ../js/gdm/loginDialog.js:849
|
||||
msgid "(or swipe finger)"
|
||||
msgstr "(tai pyyhkäise sormella)"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:867
|
||||
msgid "Not listed?"
|
||||
msgstr "Ei luettelossa?"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:1035 ../js/ui/endSessionDialog.js:426
|
||||
#: ../js/ui/extensionSystem.js:477 ../js/ui/networkAgent.js:148
|
||||
#: ../js/ui/polkitAuthenticationAgent.js:173 ../js/ui/status/bluetooth.js:480
|
||||
msgid "Cancel"
|
||||
msgstr "Peru"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:1040
|
||||
msgctxt "button"
|
||||
msgid "Sign In"
|
||||
msgstr "Kirjaudu sisään"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:1392
|
||||
msgid "Login Window"
|
||||
msgstr "Kirjautumisikkuna"
|
||||
|
||||
#: ../js/gdm/powerMenu.js:116 ../js/ui/userMenu.js:554
|
||||
#: ../js/ui/userMenu.js:556 ../js/ui/userMenu.js:625
|
||||
msgid "Suspend"
|
||||
msgstr "Valmiustila"
|
||||
|
||||
#: ../js/gdm/powerMenu.js:121 ../js/ui/endSessionDialog.js:89
|
||||
#: ../js/ui/endSessionDialog.js:97 ../js/ui/endSessionDialog.js:106
|
||||
msgid "Restart"
|
||||
msgstr "Käynnistä uudelleen"
|
||||
|
||||
#: ../js/gdm/powerMenu.js:126 ../js/ui/endSessionDialog.js:80
|
||||
#: ../js/ui/endSessionDialog.js:91
|
||||
msgid "Power Off"
|
||||
msgstr "Sammuta"
|
||||
|
||||
@ -296,16 +254,13 @@ msgstr "%s on lisätty suosikkeihin."
|
||||
msgid "%s has been removed from your favorites."
|
||||
msgstr "%s on poistettu suosikeista."
|
||||
|
||||
#: ../js/ui/autorunManager.js:280
|
||||
msgid "Removable Devices"
|
||||
msgstr "Irroitettavat laitteet"
|
||||
|
||||
#: ../js/ui/autorunManager.js:590
|
||||
#, c-format
|
||||
msgid "Open with %s"
|
||||
msgstr "Avaa käyttäen sovellusta %s"
|
||||
msgstr "Avaa käyttäen %s"
|
||||
|
||||
#: ../js/ui/autorunManager.js:616
|
||||
msgid "Eject"
|
||||
msgstr "Poista asemasta"
|
||||
|
||||
@ -457,32 +412,28 @@ msgstr "Tällä viikolla"
|
||||
msgid "Next week"
|
||||
msgstr "Ensi viikolla"
|
||||
|
||||
#: ../js/ui/contactDisplay.js:65 ../js/ui/notificationDaemon.js:459
|
||||
#: ../js/ui/status/power.js:223 ../src/shell-app.c:353
|
||||
#: ../js/ui/contactDisplay.js:59 ../js/ui/notificationDaemon.js:444
|
||||
#: ../js/ui/status/power.js:223 ../src/shell-app.c:355
|
||||
msgid "Unknown"
|
||||
msgstr "Tuntematon"
|
||||
|
||||
#: ../js/ui/contactDisplay.js:86 ../js/ui/userMenu.js:139
|
||||
msgid "Available"
|
||||
msgstr "Tavoitettavissa"
|
||||
|
||||
#: ../js/ui/contactDisplay.js:91 ../js/ui/userMenu.js:148
|
||||
msgid "Away"
|
||||
msgstr "Poissa"
|
||||
|
||||
#: ../js/ui/contactDisplay.js:95 ../js/ui/userMenu.js:142
|
||||
msgid "Busy"
|
||||
msgstr "Kiireinen"
|
||||
|
||||
#: ../js/ui/contactDisplay.js:99
|
||||
#: ../js/ui/contactDisplay.js:93
|
||||
msgid "Offline"
|
||||
msgstr "Ei linjoilla"
|
||||
|
||||
#: ../js/ui/contactDisplay.js:146
|
||||
#: ../js/ui/contactDisplay.js:140
|
||||
msgid "CONTACTS"
|
||||
msgstr "YHTEYSTIEDOT"
|
||||
|
||||
#: ../js/ui/dash.js:174 ../js/ui/messageTray.js:1206
|
||||
msgid "Remove"
|
||||
msgstr "Poista"
|
||||
|
||||
@ -632,131 +583,108 @@ msgstr "Asenna"
|
||||
msgid "Download and install '%s' from extensions.gnome.org?"
|
||||
msgstr "Lataa ja asenna ”%s” sivustolta extensions.gnome.org?"
|
||||
|
||||
#: ../js/ui/keyboard.js:325
|
||||
msgid "tray"
|
||||
msgstr "ilmoitusalue"
|
||||
|
||||
#: ../js/ui/keyboard.js:547 ../js/ui/status/power.js:211
|
||||
msgid "Keyboard"
|
||||
msgstr "Näppäimistö"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:646
|
||||
#: ../js/ui/lookingGlass.js:645
|
||||
msgid "No extensions installed"
|
||||
msgstr "Laajennuksia ei asennettu"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:692
|
||||
#: ../js/ui/lookingGlass.js:691
|
||||
msgid "Enabled"
|
||||
msgstr "Käytössä"
|
||||
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:694 ../src/gvc/gvc-mixer-control.c:1093
|
||||
#: ../js/ui/lookingGlass.js:693 ../src/gvc/gvc-mixer-control.c:1093
|
||||
msgid "Disabled"
|
||||
msgstr "Ei käytössä"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:696
|
||||
#: ../js/ui/lookingGlass.js:695
|
||||
msgid "Error"
|
||||
msgstr "Virhe"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:698
|
||||
#: ../js/ui/lookingGlass.js:697
|
||||
msgid "Out of date"
|
||||
msgstr "Ei ajan tasalla"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:700
|
||||
#: ../js/ui/lookingGlass.js:699
|
||||
msgid "Downloading"
|
||||
msgstr "Noudetaan"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:721
|
||||
#: ../js/ui/lookingGlass.js:724
|
||||
msgid "View Source"
|
||||
msgstr "Näytä lähde"
|
||||
|
||||
#: ../js/ui/lookingGlass.js:727
|
||||
#: ../js/ui/lookingGlass.js:730
|
||||
msgid "Web Page"
|
||||
msgstr "WWW-sivu"
|
||||
|
||||
#: ../js/ui/messageTray.js:1199
|
||||
msgid "Open"
|
||||
msgstr "Avaa"
|
||||
|
||||
#: ../js/ui/messageTray.js:2408
|
||||
msgid "System Information"
|
||||
msgstr "Järjestelmän tiedot"
|
||||
|
||||
#: ../js/ui/networkAgent.js:143
|
||||
msgid "Show password"
|
||||
msgstr "Näytä salasana"
|
||||
|
||||
msgid "Connect"
|
||||
msgstr "Yhdistä"
|
||||
|
||||
#. Cisco LEAP
|
||||
#: ../js/ui/networkAgent.js:238 ../js/ui/networkAgent.js:250
|
||||
#: ../js/ui/networkAgent.js:277 ../js/ui/networkAgent.js:297
|
||||
#: ../js/ui/networkAgent.js:307
|
||||
msgid "Password: "
|
||||
msgstr "Salasana: "
|
||||
|
||||
#. static WEP
|
||||
#: ../js/ui/networkAgent.js:243
|
||||
msgid "Key: "
|
||||
msgstr "Avain: "
|
||||
|
||||
#. 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/ui/networkAgent.js:275 ../js/ui/networkAgent.js:293
|
||||
msgid "Username: "
|
||||
msgstr "Käyttäjänimi: "
|
||||
|
||||
#: ../js/ui/networkAgent.js:281
|
||||
msgid "Identity: "
|
||||
msgstr "Henkilöllisyys: "
|
||||
|
||||
#: ../js/ui/networkAgent.js:283
|
||||
msgid "Private key password: "
|
||||
msgstr "Salaisen avaimen salasana: "
|
||||
|
||||
#: ../js/ui/networkAgent.js:295
|
||||
msgid "Service: "
|
||||
msgstr "Palvelu: "
|
||||
|
||||
#: ../js/ui/networkAgent.js:324
|
||||
msgid "Authentication required by wireless network"
|
||||
msgstr "Langaton verkko vaatii tunnistautumisen"
|
||||
|
||||
#: ../js/ui/networkAgent.js:325
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Passwords or encryption keys are required to access the wireless network '%"
|
||||
"s'."
|
||||
"Passwords or encryption keys are required to access the wireless network "
|
||||
"'%s'."
|
||||
msgstr "Langaton verkko %s vaatii salasanan tai salausavaimia."
|
||||
|
||||
#: ../js/ui/networkAgent.js:329
|
||||
msgid "Wired 802.1X authentication"
|
||||
msgstr "Kiinteän 802.1X-yhteyden tunnistautuminen"
|
||||
|
||||
#: ../js/ui/networkAgent.js:331
|
||||
msgid "Network name: "
|
||||
msgstr "Verkon nimi: "
|
||||
|
||||
#: ../js/ui/networkAgent.js:336
|
||||
msgid "DSL authentication"
|
||||
msgstr "DSL-tunnistautuminen"
|
||||
|
||||
#: ../js/ui/networkAgent.js:343
|
||||
msgid "PIN code required"
|
||||
msgstr "PIN-koodi vaaditaan"
|
||||
|
||||
#: ../js/ui/networkAgent.js:344
|
||||
msgid "PIN code is needed for the mobile broadband device"
|
||||
msgstr "Mobiililaajakaista vaatii PIN-koodin"
|
||||
|
||||
#: ../js/ui/networkAgent.js:345
|
||||
msgid "PIN: "
|
||||
msgstr "PIN: "
|
||||
|
||||
#: ../js/ui/networkAgent.js:351
|
||||
msgid "Mobile broadband network password"
|
||||
msgstr "Mobiililaajakaistan verkkosalasana"
|
||||
|
||||
#: ../js/ui/networkAgent.js:352
|
||||
#, c-format
|
||||
msgid "A password is required to connect to '%s'."
|
||||
msgstr "Salasana vaaditaan kohteeseen %s yhdistämiseksi."
|
||||
@ -780,18 +708,15 @@ msgid "Dash"
|
||||
msgstr "Pikavalikko"
|
||||
|
||||
#. TODO - _quit() doesn't really work on apps in state STARTING yet
|
||||
#: ../js/ui/panel.js:539
|
||||
#, c-format
|
||||
msgid "Quit %s"
|
||||
msgstr "Lopeta %s"
|
||||
|
||||
#. Translators: If there is no suitable word for "Activities"
|
||||
#. in your language, you can use the word for "Overview".
|
||||
#: ../js/ui/panel.js:575
|
||||
msgid "Activities"
|
||||
msgstr "Toiminnot"
|
||||
|
||||
#: ../js/ui/panel.js:967
|
||||
msgid "Top Bar"
|
||||
msgstr "Yläpalkki"
|
||||
|
||||
@ -812,15 +737,14 @@ msgstr "Yhdistä…"
|
||||
msgid "PLACES & DEVICES"
|
||||
msgstr "SIJAINNIT JA LAITTEET"
|
||||
|
||||
#: ../js/ui/polkitAuthenticationAgent.js:73
|
||||
#: ../js/ui/polkitAuthenticationAgent.js:72
|
||||
msgid "Authentication Required"
|
||||
msgstr "Tunnistautuminen vaaditaan"
|
||||
|
||||
#: ../js/ui/polkitAuthenticationAgent.js:107
|
||||
#: ../js/ui/polkitAuthenticationAgent.js:106
|
||||
msgid "Administrator"
|
||||
msgstr "Ylläpitäjä"
|
||||
|
||||
#: ../js/ui/polkitAuthenticationAgent.js:177
|
||||
msgid "Authenticate"
|
||||
msgstr "Tunnistaudu"
|
||||
|
||||
@ -828,11 +752,9 @@ msgstr "Tunnistaudu"
|
||||
#. * requested authentication was not gained; this can happen
|
||||
#. * because of an authentication error (like invalid password),
|
||||
#. * for instance.
|
||||
#: ../js/ui/polkitAuthenticationAgent.js:258
|
||||
msgid "Sorry, that didn't work. Please try again."
|
||||
msgstr "Tunnistautuminen epäonnistui. Yritä uudelleen."
|
||||
|
||||
#: ../js/ui/polkitAuthenticationAgent.js:270
|
||||
msgid "Password:"
|
||||
msgstr "Salasana:"
|
||||
|
||||
@ -841,11 +763,10 @@ msgstr "Salasana:"
|
||||
#. "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:731
|
||||
msgid "toggle-switch-us"
|
||||
msgstr "toggle-switch-intl"
|
||||
|
||||
#: ../js/ui/runDialog.js:209
|
||||
#: ../js/ui/runDialog.js:208
|
||||
msgid "Please enter a command:"
|
||||
msgstr "Syötä komento:"
|
||||
|
||||
@ -857,22 +778,6 @@ msgstr "Haetaan…"
|
||||
msgid "No matching results."
|
||||
msgstr "Ei tuloksia."
|
||||
|
||||
#: ../js/ui/shellEntry.js:30
|
||||
msgid "Copy"
|
||||
msgstr "Kopioi"
|
||||
|
||||
#: ../js/ui/shellEntry.js:35
|
||||
msgid "Paste"
|
||||
msgstr "Liitä"
|
||||
|
||||
#: ../js/ui/shellEntry.js:81
|
||||
msgid "Show Text"
|
||||
msgstr "Näytä teksti"
|
||||
|
||||
#: ../js/ui/shellEntry.js:83
|
||||
msgid "Hide Text"
|
||||
msgstr "Piilota teksti"
|
||||
|
||||
#: ../js/ui/shellMountOperation.js:285
|
||||
msgid "Wrong password, please try again"
|
||||
msgstr "Väärä salasana, yritä uudelleen"
|
||||
@ -884,7 +789,6 @@ msgstr "Lähennys"
|
||||
#. let screenReader = this._buildItem(_("Screen Reader"), APPLICATIONS_SCHEMA,
|
||||
#. 'screen-reader-enabled');
|
||||
#. this.menu.addMenuItem(screenReader);
|
||||
#: ../js/ui/status/accessibility.js:71
|
||||
msgid "Screen Keyboard"
|
||||
msgstr "Näyttönäppäimistö"
|
||||
|
||||
@ -1006,7 +910,7 @@ msgstr "Salli pääsy aina"
|
||||
msgid "Grant this time only"
|
||||
msgstr "Salli vain tällä kerralla"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:392 ../js/ui/telepathyClient.js:1204
|
||||
#: ../js/ui/status/bluetooth.js:392 ../js/ui/telepathyClient.js:1196
|
||||
msgid "Reject"
|
||||
msgstr "Hylkää"
|
||||
|
||||
@ -1046,11 +950,9 @@ msgstr "Kirjoita laitteella mainittu PIN-koodi."
|
||||
msgid "OK"
|
||||
msgstr "OK"
|
||||
|
||||
#: ../js/ui/status/keyboard.js:73
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Näytä näppäimistön asettelu"
|
||||
|
||||
#: ../js/ui/status/keyboard.js:78
|
||||
msgid "Region and Language Settings"
|
||||
msgstr "Kielen ja alueen asetukset"
|
||||
|
||||
@ -1095,13 +997,11 @@ msgstr "ei käytettävissä"
|
||||
msgid "connection failed"
|
||||
msgstr "yhteys katkesi"
|
||||
|
||||
#: ../js/ui/status/network.js:575 ../js/ui/status/network.js:1523
|
||||
msgid "More..."
|
||||
msgstr "Lisää…"
|
||||
|
||||
#. TRANSLATORS: this is the indication that a connection for another logged in user is active,
|
||||
#. and we cannot access its settings (including the name)
|
||||
#: ../js/ui/status/network.js:611 ../js/ui/status/network.js:1458
|
||||
msgid "Connected (private)"
|
||||
msgstr "Yhdistetty (yksityinen)"
|
||||
|
||||
@ -1118,7 +1018,6 @@ msgid "Auto dial-up"
|
||||
msgstr "Automaattinen, puhelinverkko"
|
||||
|
||||
#. TRANSLATORS: this the automatic wireless connection name (including the network name)
|
||||
#: ../js/ui/status/network.js:878 ../js/ui/status/network.js:1470
|
||||
#, c-format
|
||||
msgid "Auto %s"
|
||||
msgstr "Automaattinen: %s"
|
||||
@ -1127,47 +1026,36 @@ msgstr "Automaattinen: %s"
|
||||
msgid "Auto bluetooth"
|
||||
msgstr "Automaattinen: Bluetooth"
|
||||
|
||||
#: ../js/ui/status/network.js:1472
|
||||
msgid "Auto wireless"
|
||||
msgstr "Automaattinen: langaton"
|
||||
|
||||
#: ../js/ui/status/network.js:1566
|
||||
msgid "Enable networking"
|
||||
msgstr "Ota verkko käyttöön"
|
||||
|
||||
#: ../js/ui/status/network.js:1578
|
||||
msgid "Wired"
|
||||
msgstr "Kiinteä"
|
||||
|
||||
#: ../js/ui/status/network.js:1589
|
||||
msgid "Wireless"
|
||||
msgstr "Langaton"
|
||||
|
||||
#: ../js/ui/status/network.js:1599
|
||||
msgid "Mobile broadband"
|
||||
msgstr "Mobiililaajakaista"
|
||||
|
||||
#: ../js/ui/status/network.js:1609
|
||||
msgid "VPN Connections"
|
||||
msgstr "VPN-yhteydet"
|
||||
|
||||
#: ../js/ui/status/network.js:1620
|
||||
msgid "Network Settings"
|
||||
msgstr "Verkkoasetukset"
|
||||
|
||||
#: ../js/ui/status/network.js:1757
|
||||
msgid "Connection failed"
|
||||
msgstr "Yhteys epäonnistui"
|
||||
|
||||
#: ../js/ui/status/network.js:1758
|
||||
msgid "Activation of network connection failed"
|
||||
msgstr "Verkkoyhteyden aktivointi epäonnistui"
|
||||
|
||||
#: ../js/ui/status/network.js:2008
|
||||
msgid "Networking is disabled"
|
||||
msgstr "Verkko ei ole käytössä"
|
||||
|
||||
#: ../js/ui/status/network.js:2133
|
||||
msgid "Network Manager"
|
||||
msgstr "Verkon hallinta"
|
||||
|
||||
@ -1275,39 +1163,39 @@ msgid "Invitation"
|
||||
msgstr "Kutsu"
|
||||
|
||||
#. We got the TpContact
|
||||
#: ../js/ui/telepathyClient.js:327
|
||||
#: ../js/ui/telepathyClient.js:325
|
||||
msgid "Call"
|
||||
msgstr "Soita"
|
||||
|
||||
#. We got the TpContact
|
||||
#: ../js/ui/telepathyClient.js:357
|
||||
#: ../js/ui/telepathyClient.js:353
|
||||
msgid "File Transfer"
|
||||
msgstr "Tiedostonsiirto"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:438
|
||||
#: ../js/ui/telepathyClient.js:434
|
||||
msgid "Subscription request"
|
||||
msgstr "Tilauspyyntö"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:474
|
||||
#: ../js/ui/telepathyClient.js:470
|
||||
msgid "Connection error"
|
||||
msgstr "Yhteysvirhe"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:741
|
||||
#: ../js/ui/telepathyClient.js:733
|
||||
#, c-format
|
||||
msgid "%s is online."
|
||||
msgstr "%s on linjoilla."
|
||||
|
||||
#: ../js/ui/telepathyClient.js:746
|
||||
#: ../js/ui/telepathyClient.js:738
|
||||
#, c-format
|
||||
msgid "%s is offline."
|
||||
msgstr "%s on poissa linjoilta."
|
||||
|
||||
#: ../js/ui/telepathyClient.js:749
|
||||
#: ../js/ui/telepathyClient.js:741
|
||||
#, c-format
|
||||
msgid "%s is away."
|
||||
msgstr "%s on poissa."
|
||||
|
||||
#: ../js/ui/telepathyClient.js:752
|
||||
#: ../js/ui/telepathyClient.js:744
|
||||
#, c-format
|
||||
msgid "%s is busy."
|
||||
msgstr "%s on kiireinen."
|
||||
@ -1315,35 +1203,35 @@ msgstr "%s on kiireinen."
|
||||
#. Translators: this is a time format string followed by a date.
|
||||
#. If applicable, replace %X with a strftime format valid for your
|
||||
#. locale, without seconds.
|
||||
#: ../js/ui/telepathyClient.js:986
|
||||
#: ../js/ui/telepathyClient.js:978
|
||||
#, no-c-format
|
||||
msgid "Sent at <b>%X</b> on <b>%A</b>"
|
||||
msgstr "Lähetetty <b>%Ana</b> kello <b>%H.%M</b>"
|
||||
|
||||
#. Translators: this is a time format in the style of "Wednesday, May 25",
|
||||
#. shown when you get a chat message in the same year.
|
||||
#: ../js/ui/telepathyClient.js:992
|
||||
#: ../js/ui/telepathyClient.js:984
|
||||
#, no-c-format
|
||||
msgid "Sent on <b>%A</b>, <b>%B %d</b>"
|
||||
msgstr "Lähetetty <b>%Ana</b> <b>%d. %Bta</b>"
|
||||
|
||||
#. Translators: this is a time format in the style of "Wednesday, May 25, 2012",
|
||||
#. shown when you get a chat message in a different year.
|
||||
#: ../js/ui/telepathyClient.js:997
|
||||
#: ../js/ui/telepathyClient.js:989
|
||||
#, no-c-format
|
||||
msgid "Sent on <b>%A</b>, <b>%B %d</b>, %Y"
|
||||
msgstr "Lähetetty <b>%Ana</b> <b>%d. %Bta</b> %Y"
|
||||
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name.
|
||||
#: ../js/ui/telepathyClient.js:1039
|
||||
#: ../js/ui/telepathyClient.js:1031
|
||||
#, c-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "%s on nyt nimeltään %s"
|
||||
|
||||
#. translators: argument is a room name like
|
||||
#. * room@jabber.org for example.
|
||||
#: ../js/ui/telepathyClient.js:1148
|
||||
#: ../js/ui/telepathyClient.js:1140
|
||||
#, c-format
|
||||
msgid "Invitation to %s"
|
||||
msgstr "Kutsu huoneeseen %s"
|
||||
@ -1351,35 +1239,34 @@ msgstr "Kutsu huoneeseen %s"
|
||||
#. translators: first argument is the name of a contact and the second
|
||||
#. * one the name of a room. "Alice is inviting you to join room@jabber.org
|
||||
#. * for example.
|
||||
#: ../js/ui/telepathyClient.js:1156
|
||||
#: ../js/ui/telepathyClient.js:1148
|
||||
#, c-format
|
||||
msgid "%s is inviting you to join %s"
|
||||
msgstr "%s kutsuu sinut huoneeseen %s"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1158 ../js/ui/telepathyClient.js:1248
|
||||
#: ../js/ui/telepathyClient.js:1352
|
||||
#: ../js/ui/telepathyClient.js:1150 ../js/ui/telepathyClient.js:1239
|
||||
#: ../js/ui/telepathyClient.js:1343
|
||||
msgid "Decline"
|
||||
msgstr "Kieltäydy"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1159 ../js/ui/telepathyClient.js:1249
|
||||
#: ../js/ui/telepathyClient.js:1353
|
||||
#: ../js/ui/telepathyClient.js:1151 ../js/ui/telepathyClient.js:1240
|
||||
#: ../js/ui/telepathyClient.js:1344
|
||||
msgid "Accept"
|
||||
msgstr "Hyväksy"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example.
|
||||
#: ../js/ui/telepathyClient.js:1192
|
||||
#: ../js/ui/telepathyClient.js:1184
|
||||
#, c-format
|
||||
msgid "Video call from %s"
|
||||
msgstr "Videopuhelu käyttäjältä %s"
|
||||
|
||||
#. translators: argument is a contact name like Alice for example.
|
||||
#: ../js/ui/telepathyClient.js:1195
|
||||
#: ../js/ui/telepathyClient.js:1187
|
||||
#, c-format
|
||||
msgid "Call from %s"
|
||||
msgstr "Puhelu käyttäjältä %s"
|
||||
|
||||
#. translators: this is a button label (verb), not a noun
|
||||
#: ../js/ui/telepathyClient.js:1206
|
||||
#: ../js/ui/telepathyClient.js:1197
|
||||
msgid "Answer"
|
||||
msgstr "Vastaa"
|
||||
|
||||
@ -1388,108 +1275,108 @@ msgstr "Vastaa"
|
||||
#. * file name. The string will be something
|
||||
#. * like: "Alice is sending you test.ogg"
|
||||
#.
|
||||
#: ../js/ui/telepathyClient.js:1242
|
||||
#: ../js/ui/telepathyClient.js:1233
|
||||
#, c-format
|
||||
msgid "%s is sending you %s"
|
||||
msgstr "%s on lähettämässä sinulle tiedostoa %s"
|
||||
|
||||
#. To translators: The parameter is the contact's alias
|
||||
#: ../js/ui/telepathyClient.js:1317
|
||||
#: ../js/ui/telepathyClient.js:1308
|
||||
#, c-format
|
||||
msgid "%s would like permission to see when you are online"
|
||||
msgstr "%s haluaisi saada luvan nähdä, milloin olet linjoilla"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1415
|
||||
#: ../js/ui/telepathyClient.js:1406
|
||||
msgid "Network error"
|
||||
msgstr "Verkkovirhe"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1417
|
||||
#: ../js/ui/telepathyClient.js:1408
|
||||
msgid "Authentication failed"
|
||||
msgstr "Tunnistautuminen epäonnistui"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1419
|
||||
#: ../js/ui/telepathyClient.js:1410
|
||||
msgid "Encryption error"
|
||||
msgstr "Salausvirhe"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1421
|
||||
#: ../js/ui/telepathyClient.js:1412
|
||||
msgid "Certificate not provided"
|
||||
msgstr "Varmennetta ei annettu"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1423
|
||||
#: ../js/ui/telepathyClient.js:1414
|
||||
msgid "Certificate untrusted"
|
||||
msgstr "Varmenteeseen ei luoteta"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1425
|
||||
#: ../js/ui/telepathyClient.js:1416
|
||||
msgid "Certificate expired"
|
||||
msgstr "Varmenne on vanhentunut"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1427
|
||||
#: ../js/ui/telepathyClient.js:1418
|
||||
msgid "Certificate not activated"
|
||||
msgstr "Varmennetta ei ole aktivoitu"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1429
|
||||
#: ../js/ui/telepathyClient.js:1420
|
||||
msgid "Certificate hostname mismatch"
|
||||
msgstr "Varmenteen konenimiristiriita"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1431
|
||||
#: ../js/ui/telepathyClient.js:1422
|
||||
msgid "Certificate fingerprint mismatch"
|
||||
msgstr "Varmenteen sormenjälkiristiriita"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1433
|
||||
#: ../js/ui/telepathyClient.js:1424
|
||||
msgid "Certificate self-signed"
|
||||
msgstr "Varmenne on itseallekirjoitettu"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1435
|
||||
#: ../js/ui/telepathyClient.js:1426
|
||||
msgid "Status is set to offline"
|
||||
msgstr "Tilaksi on asetettu ”poissa linjoilta”"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1437
|
||||
#: ../js/ui/telepathyClient.js:1428
|
||||
msgid "Encryption is not available"
|
||||
msgstr "Salaus ei ole käytettävissä"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1439
|
||||
#: ../js/ui/telepathyClient.js:1430
|
||||
msgid "Certificate is invalid"
|
||||
msgstr "Varmenne ei kelpaa"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1441
|
||||
#: ../js/ui/telepathyClient.js:1432
|
||||
msgid "Connection has been refused"
|
||||
msgstr "Yhteys on evätty"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1443
|
||||
#: ../js/ui/telepathyClient.js:1434
|
||||
msgid "Connection can't be established"
|
||||
msgstr "Yhteyttä ei voida muodostaa"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1445
|
||||
#: ../js/ui/telepathyClient.js:1436
|
||||
msgid "Connection has been lost"
|
||||
msgstr "Yhteys on katkennut"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1447
|
||||
#: ../js/ui/telepathyClient.js:1438
|
||||
msgid "This resource is already connected to the server"
|
||||
msgstr "Tämä resurssi on jo yhteydessä palvelimeen"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1449
|
||||
#: ../js/ui/telepathyClient.js:1440
|
||||
msgid ""
|
||||
"Connection has been replaced by a new connection using the same resource"
|
||||
msgstr "Yhteys on korvattu uudella samaa resurssia käyttävällä yhteydellä"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1451
|
||||
#: ../js/ui/telepathyClient.js:1442
|
||||
msgid "The account already exists on the server"
|
||||
msgstr "Tili on jo olemassa palvelimella"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1453
|
||||
#: ../js/ui/telepathyClient.js:1444
|
||||
msgid "Server is currently too busy to handle the connection"
|
||||
msgstr "Palvelin on tällä hetkellä liian kiireinen käsittelemään yhteyttä"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1455
|
||||
#: ../js/ui/telepathyClient.js:1446
|
||||
msgid "Certificate has been revoked"
|
||||
msgstr "Varmenne on kumottu"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1457
|
||||
#: ../js/ui/telepathyClient.js:1448
|
||||
msgid ""
|
||||
"Certificate uses an insecure cipher algorithm or is cryptographically weak"
|
||||
msgstr "Varmenne käyttää turvatonta salausmenetelmää"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1459
|
||||
#: ../js/ui/telepathyClient.js:1450
|
||||
msgid ""
|
||||
"The length of the server certificate, or the depth of the server certificate "
|
||||
"chain, exceed the limits imposed by the cryptography library"
|
||||
@ -1498,68 +1385,56 @@ msgstr ""
|
||||
|
||||
#. translators: argument is the account name, like
|
||||
#. * name@jabber.org for example.
|
||||
#: ../js/ui/telepathyClient.js:1468
|
||||
#: ../js/ui/telepathyClient.js:1459
|
||||
#, c-format
|
||||
msgid "Connection to %s failed"
|
||||
msgstr "Yhteys kohteeseen %s katkesi"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1477
|
||||
#: ../js/ui/telepathyClient.js:1468
|
||||
msgid "Reconnect"
|
||||
msgstr "Yhdistä uudelleen"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1478
|
||||
#: ../js/ui/telepathyClient.js:1469
|
||||
msgid "Edit account"
|
||||
msgstr "Muokkaa tiliä"
|
||||
|
||||
#: ../js/ui/telepathyClient.js:1524
|
||||
#: ../js/ui/telepathyClient.js:1515
|
||||
msgid "Unknown reason"
|
||||
msgstr "Tuntematon syy"
|
||||
|
||||
#: ../js/ui/userMenu.js:145
|
||||
msgid "Hidden"
|
||||
msgstr "Piilotettu"
|
||||
|
||||
#: ../js/ui/userMenu.js:151
|
||||
msgid "Idle"
|
||||
msgstr "Jouten"
|
||||
|
||||
#: ../js/ui/userMenu.js:154
|
||||
msgid "Unavailable"
|
||||
msgstr "Ei tavoitettavissa"
|
||||
|
||||
#: ../js/ui/userMenu.js:552 ../js/ui/userMenu.js:556 ../js/ui/userMenu.js:626
|
||||
msgid "Power Off..."
|
||||
msgstr "Sammuta…"
|
||||
|
||||
#: ../js/ui/userMenu.js:588
|
||||
msgid "Notifications"
|
||||
msgstr "Ilmoitukset"
|
||||
|
||||
#: ../js/ui/userMenu.js:596
|
||||
msgid "Online Accounts"
|
||||
msgstr "Verkkotilit"
|
||||
|
||||
#: ../js/ui/userMenu.js:600
|
||||
msgid "System Settings"
|
||||
msgstr "Järjestelmän asetukset"
|
||||
|
||||
#: ../js/ui/userMenu.js:607
|
||||
msgid "Lock Screen"
|
||||
msgstr "Lukitse näyttö"
|
||||
|
||||
#: ../js/ui/userMenu.js:612
|
||||
msgid "Switch User"
|
||||
msgstr "Vaihda käyttäjää"
|
||||
|
||||
#: ../js/ui/userMenu.js:617
|
||||
msgid "Log Out..."
|
||||
msgstr "Kirjaudu ulos…"
|
||||
|
||||
#: ../js/ui/userMenu.js:645
|
||||
msgid "Your chat status will be set to busy"
|
||||
msgstr "Pikaviestitilaksi asetetaan ”kiireinen”"
|
||||
|
||||
#: ../js/ui/userMenu.js:646
|
||||
msgid ""
|
||||
"Notifications are now disabled, including chat messages. Your online status "
|
||||
"has been adjusted to let others know that you might not see their messages."
|
||||
@ -1572,15 +1447,20 @@ msgstr ""
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters.
|
||||
#: ../js/ui/viewSelector.js:121
|
||||
#: ../js/ui/viewSelector.js:120
|
||||
msgid "Type to search..."
|
||||
msgstr "Kirjoita hakeaksesi…"
|
||||
|
||||
#: ../js/ui/viewSelector.js:142 ../src/shell-util.c:261
|
||||
#: ../js/ui/viewSelector.js:140 ../src/shell-util.c:261
|
||||
msgid "Search"
|
||||
msgstr "Haku"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:35
|
||||
#: ../js/ui/windowAttentionHandler.js:39
|
||||
#, c-format
|
||||
msgid "%s has finished starting"
|
||||
msgstr "%s on käynnistynyt"
|
||||
|
||||
#: ../js/ui/windowAttentionHandler.js:41
|
||||
#, c-format
|
||||
msgid "'%s' is ready"
|
||||
msgstr "%s on valmis"
|
||||
@ -1615,7 +1495,7 @@ msgstr "Tulosta versio"
|
||||
msgid "Mode used by GDM for login screen"
|
||||
msgstr "GDM:n kirjautumisruudussa käyttämä tila"
|
||||
|
||||
#: ../src/shell-app.c:579
|
||||
#: ../src/shell-app.c:581
|
||||
#, c-format
|
||||
msgid "Failed to launch '%s'"
|
||||
msgstr "Sovelluksen ”%s” käynnistäminen epäonnistui"
|
||||
@ -1652,12 +1532,6 @@ msgstr "Tiedostojärjestelmä"
|
||||
msgid "%1$s: %2$s"
|
||||
msgstr "%1$s: %2$s"
|
||||
|
||||
#~ msgid "Show password"
|
||||
#~ msgstr "Näytä salasana"
|
||||
|
||||
#~ msgid "%s has finished starting"
|
||||
#~ msgstr "%s on käynnistynyt"
|
||||
|
||||
#~ msgid "Connectivity lost"
|
||||
#~ msgstr "Yhteys katkesi"
|
||||
|
||||
|
@ -58,9 +58,7 @@ shell_dbus_acquire_name (GDBusProxy *bus,
|
||||
NULL, /* cancellable */
|
||||
&error)))
|
||||
{
|
||||
g_printerr ("failed to acquire %s: %s\n", name, error->message);
|
||||
if (!fatal)
|
||||
return;
|
||||
g_printerr ("failed to acquire org.gnome.Shell: %s\n", error->message);
|
||||
exit (1);
|
||||
}
|
||||
g_variant_get (request_name_variant, "(u)", request_name_result);
|
||||
|
@ -28,6 +28,8 @@ enum
|
||||
KILL_SWITCH_WORKSPACE,
|
||||
KILL_WINDOW_EFFECTS,
|
||||
|
||||
KEYBINDING,
|
||||
|
||||
LAST_SIGNAL
|
||||
};
|
||||
|
||||
@ -124,6 +126,34 @@ shell_wm_class_init (ShellWMClass *klass)
|
||||
g_cclosure_marshal_VOID__OBJECT,
|
||||
G_TYPE_NONE, 1,
|
||||
META_TYPE_WINDOW_ACTOR);
|
||||
|
||||
/**
|
||||
* ShellWM::keybinding:
|
||||
* @shellwm: the #ShellWM
|
||||
* @binding: the keybinding name
|
||||
* @mask: the modifier mask used
|
||||
* @window: for window keybindings, the #MetaWindow
|
||||
* @backwards: for "reversible" keybindings, whether or not
|
||||
* the backwards (Shifted) variant was invoked
|
||||
*
|
||||
* Emitted when a keybinding captured via
|
||||
* shell_wm_takeover_keybinding() is invoked. The keybinding name
|
||||
* (which has underscores, not hyphens) is also included as the
|
||||
* detail of the signal name, so you can connect just specific
|
||||
* keybindings.
|
||||
*/
|
||||
shell_wm_signals[KEYBINDING] =
|
||||
g_signal_new ("keybinding",
|
||||
G_TYPE_FROM_CLASS (klass),
|
||||
G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
|
||||
0,
|
||||
NULL, NULL,
|
||||
_shell_marshal_VOID__STRING_UINT_OBJECT_BOOLEAN,
|
||||
G_TYPE_NONE, 4,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_UINT,
|
||||
META_TYPE_WINDOW,
|
||||
G_TYPE_BOOLEAN);
|
||||
}
|
||||
|
||||
void
|
||||
@ -294,3 +324,37 @@ shell_wm_new (MetaPlugin *plugin)
|
||||
|
||||
return wm;
|
||||
}
|
||||
|
||||
static void
|
||||
shell_wm_key_handler (MetaDisplay *display,
|
||||
MetaScreen *screen,
|
||||
MetaWindow *window,
|
||||
XEvent *event,
|
||||
MetaKeyBinding *binding,
|
||||
gpointer data)
|
||||
{
|
||||
ShellWM *wm = data;
|
||||
gboolean backwards = (event->xkey.state & ShiftMask);
|
||||
|
||||
g_signal_emit (wm, shell_wm_signals[KEYBINDING],
|
||||
g_quark_from_string (binding->name),
|
||||
binding->name, binding->mask, window, backwards);
|
||||
}
|
||||
|
||||
/**
|
||||
* shell_wm_takeover_keybinding:
|
||||
* @wm: the #ShellWM
|
||||
* @binding_name: a meta keybinding name
|
||||
*
|
||||
* Tells mutter to forward keypresses for @binding_name to the shell
|
||||
* rather than processing them internally. This will cause a
|
||||
* #ShellWM::keybinding signal to be emitted when that key is pressed.
|
||||
*/
|
||||
void
|
||||
shell_wm_takeover_keybinding (ShellWM *wm,
|
||||
const char *binding_name)
|
||||
{
|
||||
meta_keybindings_set_custom_handler (binding_name,
|
||||
shell_wm_key_handler,
|
||||
wm, NULL);
|
||||
}
|
||||
|
@ -39,6 +39,10 @@ void shell_wm_completed_destroy (ShellWM *wm,
|
||||
MetaWindowActor *actor);
|
||||
void shell_wm_completed_switch_workspace (ShellWM *wm);
|
||||
|
||||
/* Keybinding stuff */
|
||||
void shell_wm_takeover_keybinding (ShellWM *wm,
|
||||
const char *binding_name);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __SHELL_WM_H__ */
|
||||
|
@ -21,7 +21,6 @@ TEST_JS = \
|
||||
testcommon/ui.js \
|
||||
unit/format.js \
|
||||
unit/markup.js \
|
||||
unit/jsParse.js \
|
||||
unit/url.js
|
||||
EXTRA_DIST += $(TEST_JS)
|
||||
|
||||
|
Reference in New Issue
Block a user