Compare commits
70 Commits
3.21.90
...
wip/ptomat
Author | SHA1 | Date | |
---|---|---|---|
![]() |
a1e41b6519 | ||
![]() |
8c49267658 | ||
![]() |
d0bab1f7ac | ||
![]() |
f00826f3fb | ||
![]() |
717c0ea19f | ||
![]() |
3cd8dd0f32 | ||
![]() |
aedd616346 | ||
![]() |
b3de3ff00b | ||
![]() |
b66dff8aed | ||
![]() |
ff814df03a | ||
![]() |
c9a528025c | ||
![]() |
5f3ec8a6f1 | ||
![]() |
becd29c50a | ||
![]() |
a029a35050 | ||
![]() |
d6a78d61d1 | ||
![]() |
9be46bd212 | ||
![]() |
4df3afced0 | ||
![]() |
90f8e1df80 | ||
![]() |
ea2ac89e61 | ||
![]() |
695bfb9616 | ||
![]() |
5dbdde8c15 | ||
![]() |
854bfc17ed | ||
![]() |
c8b192bcae | ||
![]() |
f07306897f | ||
![]() |
44d731fff5 | ||
![]() |
52f939f64c | ||
![]() |
f1d12c18d8 | ||
![]() |
373ebb50eb | ||
![]() |
b0b5be63b9 | ||
![]() |
68f439425b | ||
![]() |
cae4d92191 | ||
![]() |
f336295475 | ||
![]() |
06d0e7d74a | ||
![]() |
5e0e3edc7b | ||
![]() |
02a51bfa65 | ||
![]() |
dbd04df311 | ||
![]() |
e6adcd99c7 | ||
![]() |
3171819c36 | ||
![]() |
e4976b535d | ||
![]() |
06d1602f17 | ||
![]() |
603d0dfbc3 | ||
![]() |
0b6c5b4620 | ||
![]() |
d7894dbc44 | ||
![]() |
d25d8126ea | ||
![]() |
2402d3e115 | ||
![]() |
ac4284d348 | ||
![]() |
f9ef80749a | ||
![]() |
22f0d3076e | ||
![]() |
127b6dca1c | ||
![]() |
8cfff33291 | ||
![]() |
21f534c7f0 | ||
![]() |
9faa1db942 | ||
![]() |
2fc9bffb23 | ||
![]() |
f16eae45a2 | ||
![]() |
622e73c34c | ||
![]() |
eb1c3d7045 | ||
![]() |
fc26895f70 | ||
![]() |
ca224b379f | ||
![]() |
42b609b852 | ||
![]() |
a24169e2aa | ||
![]() |
144d1dca88 | ||
![]() |
38ab6ba3ec | ||
![]() |
bc6a0626c1 | ||
![]() |
497f4f4a3c | ||
![]() |
8c8c89a5f1 | ||
![]() |
d658a5148a | ||
![]() |
2c3e0dab0f | ||
![]() |
e2400e35bd | ||
![]() |
fc4562491b | ||
![]() |
6e3bedb888 |
45
NEWS
45
NEWS
@@ -1,3 +1,48 @@
|
||||
3.22.0
|
||||
======
|
||||
* Misc. bug fixes [Florian, Rui; #771391, #771536] #771656]
|
||||
|
||||
Contributors:
|
||||
Rui Matos, Florian Müllner
|
||||
|
||||
Translations:
|
||||
Ask Hjorth Larsen [da], GNOME Translation Robot [gd], Alexandre Franke [fr],
|
||||
Daniel Korostil [uk], Jordi Mas [ca], Khaled Hosny [ar], David King [en_GB]
|
||||
|
||||
3.21.92
|
||||
=======
|
||||
* Adjust screen capture to work with multiple stage views [Jonas; #770128]
|
||||
* Improve handling of cycle shortcuts [Florian; #771063]
|
||||
* Fix windows not getting undimmed in some cases [Rui; #770163, #752524]
|
||||
* Disable extension version check by default [Florian; #770887]
|
||||
* Misc. bug fixes [Rui, Florian, Michael; #770382, #770888, #770328]
|
||||
|
||||
Contributors:
|
||||
Jonas Ådahl, Michael Catanzaro, Fran Dieguez, Olivier Fourdan, Rui Matos,
|
||||
Florian Müllner
|
||||
|
||||
Translations:
|
||||
Changwoo Ryu [ko], Baurzhan Muftakhidinov [kk], Aurimas Černius [lt],
|
||||
Muhammet Kara [tr], Trần Ngọc Quân [vi], A S Alam [pa], Yosef Or Boczko [he],
|
||||
Anders Jonsson [sv], Tiago Santos [pt], Hannie Dumoleyn [nl],
|
||||
Rūdolfs Mazurs [lv], Claude Paroz [fr], Arash Mousavi [fa],
|
||||
Fran Dieguez [gl], Stas Solovey [ru], Tom Tryfonidis [el]
|
||||
|
||||
3.21.91
|
||||
=======
|
||||
Translations:
|
||||
Mario Blättermann [de], Jiri Grönroos [fi], Dušan Kazik [sk],
|
||||
Andika Triwidada [id], Daniel Mustieles [es], Fabio Tomat [fur],
|
||||
Enrico Nicoletto [pt_BR], Matej Urbančič [sl], Мирослав Николић [sr, sr@latin]
|
||||
|
||||
3.21.90.1
|
||||
=========
|
||||
Contributors:
|
||||
Piotr Drąg
|
||||
|
||||
Translations:
|
||||
Marek Černocký [cs], Balázs Úr [hu]
|
||||
|
||||
3.21.90
|
||||
=======
|
||||
* Improve on-screen keyboard on wayland [Carlos; #765009]
|
||||
|
@@ -1,5 +1,5 @@
|
||||
AC_PREREQ(2.63)
|
||||
AC_INIT([gnome-shell],[3.21.90],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||
AC_INIT([gnome-shell],[3.22.0],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell],[gnome-shell])
|
||||
AX_IS_RELEASE([git-directory])
|
||||
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
@@ -78,7 +78,7 @@ AC_MSG_RESULT($enable_systemd)
|
||||
CLUTTER_MIN_VERSION=1.21.5
|
||||
GOBJECT_INTROSPECTION_MIN_VERSION=1.49.1
|
||||
GJS_MIN_VERSION=1.39.0
|
||||
MUTTER_MIN_VERSION=3.21.90
|
||||
MUTTER_MIN_VERSION=3.22.0
|
||||
GTK_MIN_VERSION=3.15.0
|
||||
GIO_MIN_VERSION=2.45.3
|
||||
LIBECAL_MIN_VERSION=3.5.3
|
||||
|
@@ -4,6 +4,7 @@ Type=Application
|
||||
Exec=gapplication launch org.gnome.Shell.PortalHelper
|
||||
DBusActivatable=true
|
||||
NoDisplay=true
|
||||
# Translators: Do NOT translate or transliterate this text (this is an icon file name)!
|
||||
Icon=network-workgroup
|
||||
StartupNotify=true
|
||||
OnlyShowIn=GNOME;
|
||||
|
@@ -22,7 +22,7 @@
|
||||
</description>
|
||||
</key>
|
||||
<key name="disable-extension-version-validation" type="b">
|
||||
<default>false</default>
|
||||
<default>true</default>
|
||||
<summary>Disables the validation of extension version compatibility</summary>
|
||||
<description>
|
||||
GNOME Shell will only load extensions that claim to support the current
|
||||
|
@@ -604,6 +604,10 @@ StScrollBar {
|
||||
width: 96px;
|
||||
height: 96px; }
|
||||
|
||||
/* Window Cycler */
|
||||
.cycler-highlight {
|
||||
border: 5px solid #215d9c; }
|
||||
|
||||
/* Workspace Switcher */
|
||||
.workspace-switcher-group {
|
||||
padding: 12px; }
|
||||
|
Submodule data/theme/gnome-shell-sass updated: 7ab2789464...b2190083c2
@@ -604,6 +604,10 @@ StScrollBar {
|
||||
width: 96px;
|
||||
height: 96px; }
|
||||
|
||||
/* Window Cycler */
|
||||
.cycler-highlight {
|
||||
border: 5px solid #215d9c; }
|
||||
|
||||
/* Workspace Switcher */
|
||||
.workspace-switcher-group {
|
||||
padding: 12px; }
|
||||
|
@@ -152,6 +152,7 @@ const Application = new Lang.Class({
|
||||
let scroll = new Gtk.ScrolledWindow({ hscrollbar_policy: Gtk.PolicyType.NEVER,
|
||||
shadow_type: Gtk.ShadowType.IN,
|
||||
halign: Gtk.Align.CENTER,
|
||||
propagate_natural_width: true,
|
||||
margin: 18 });
|
||||
this._window.add(scroll);
|
||||
|
||||
|
@@ -804,6 +804,11 @@ const LoginDialog = new Lang.Class({
|
||||
|
||||
this._user = null;
|
||||
|
||||
if (this._nextSignalId) {
|
||||
this._authPrompt.disconnect(this._nextSignalId);
|
||||
this._nextSignalId = 0;
|
||||
}
|
||||
|
||||
if (beginRequest == AuthPrompt.BeginRequestType.PROVIDE_USERNAME) {
|
||||
if (!this._disableUserList)
|
||||
this._showUserList();
|
||||
|
@@ -6,9 +6,7 @@
|
||||
const Lang = imports.lang;
|
||||
const Signals = imports.signals;
|
||||
|
||||
const GLib = imports.gi.GLib;
|
||||
const Gio = imports.gi.Gio;
|
||||
const ShellJS = imports.gi.ShellJS;
|
||||
|
||||
const Config = imports.misc.config;
|
||||
const FileUtils = imports.misc.fileUtils;
|
||||
@@ -140,12 +138,11 @@ function createExtensionObject(uuid, dir, type) {
|
||||
return extension;
|
||||
}
|
||||
|
||||
var _extension = null;
|
||||
|
||||
function installImporter(extension) {
|
||||
_extension = extension;
|
||||
ShellJS.add_extension_importer('imports.misc.extensionUtils._extension', 'imports', extension.path);
|
||||
_extension = null;
|
||||
let oldSearchPath = imports.searchPath.slice(); // make a copy
|
||||
imports.searchPath = [extension.path];
|
||||
extension.imports = imports['.']; // "subdir" creates a new importer object
|
||||
imports.searchPath = oldSearchPath;
|
||||
}
|
||||
|
||||
const ExtensionFinder = new Lang.Class({
|
||||
|
@@ -354,6 +354,67 @@ const AppSwitcherPopup = new Lang.Class({
|
||||
}
|
||||
});
|
||||
|
||||
const CyclerHighlight = new Lang.Class({
|
||||
Name: 'CyclerHighlight',
|
||||
|
||||
_init: function() {
|
||||
this._window = null;
|
||||
|
||||
this.actor = new St.Widget({ layout_manager: new Clutter.BinLayout() });
|
||||
|
||||
this._clone = new Clutter.Clone();
|
||||
this.actor.add_actor(this._clone);
|
||||
|
||||
this._highlight = new St.Widget({ style_class: 'cycler-highlight' });
|
||||
this.actor.add_actor(this._highlight);
|
||||
|
||||
let coordinate = Clutter.BindCoordinate.ALL;
|
||||
let constraint = new Clutter.BindConstraint({ coordinate: coordinate });
|
||||
this._clone.bind_property('source', constraint, 'source', 0);
|
||||
|
||||
this.actor.add_constraint(constraint);
|
||||
|
||||
this.actor.connect('notify::allocation',
|
||||
Lang.bind(this, this._onAllocationChanged));
|
||||
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
|
||||
},
|
||||
|
||||
set window(w) {
|
||||
if (this._window == w)
|
||||
return;
|
||||
|
||||
this._window = w;
|
||||
|
||||
if (this._clone.source)
|
||||
this._clone.source.sync_visibility();
|
||||
|
||||
let windowActor = this._window ? this._window.get_compositor_private()
|
||||
: null;
|
||||
|
||||
if (windowActor)
|
||||
windowActor.hide();
|
||||
|
||||
this._clone.source = windowActor;
|
||||
},
|
||||
|
||||
_onAllocationChanged: function() {
|
||||
if (!this._window) {
|
||||
this._highlight.set_size(0, 0);
|
||||
this._highlight.hide();
|
||||
} else {
|
||||
let [x, y] = this.actor.allocation.get_origin();
|
||||
let rect = this._window.get_frame_rect();
|
||||
this._highlight.set_size(rect.width, rect.height);
|
||||
this._highlight.set_position(rect.x - x, rect.y - y);
|
||||
this._highlight.show();
|
||||
}
|
||||
},
|
||||
|
||||
_onDestroy: function() {
|
||||
this.window = null;
|
||||
}
|
||||
});
|
||||
|
||||
const CyclerPopup = new Lang.Class({
|
||||
Name: 'CyclerPopup',
|
||||
Extends: SwitcherPopup.SwitcherPopup,
|
||||
@@ -367,6 +428,9 @@ const CyclerPopup = new Lang.Class({
|
||||
if (this._items.length == 0)
|
||||
return;
|
||||
|
||||
this._highlight = new CyclerHighlight();
|
||||
global.window_group.add_actor(this._highlight.actor);
|
||||
|
||||
// We don't show an actual popup, so just provide what SwitcherPopup
|
||||
// expects instead of inheriting from SwitcherList
|
||||
this._switcherList = { actor: new St.Widget(),
|
||||
@@ -375,11 +439,37 @@ const CyclerPopup = new Lang.Class({
|
||||
},
|
||||
|
||||
_highlightItem: function(index, justOutline) {
|
||||
Main.activateWindow(this._items[index]);
|
||||
this._highlight.window = this._items[index];
|
||||
global.window_group.set_child_above_sibling(this._highlight.actor, null);
|
||||
},
|
||||
|
||||
_finish: function() {
|
||||
this._highlightItem(this._selectedIndex);
|
||||
let window = this._items[this._selectedIndex];
|
||||
let ws = window.get_workspace();
|
||||
let activeWs = global.screen.get_active_workspace();
|
||||
|
||||
if (window.minimized) {
|
||||
Main.wm.skipNextEffect(window.get_compositor_private());
|
||||
window.unminimize();
|
||||
}
|
||||
|
||||
if (activeWs == ws) {
|
||||
Main.activateWindow(window);
|
||||
} else {
|
||||
// If the selected window is on a different workspace, we don't
|
||||
// want it to disappear, then slide in with the workspace; instead,
|
||||
// always activate it on the active workspace ...
|
||||
activeWs.activate_with_focus(window, global.get_current_time());
|
||||
|
||||
// ... then slide it over to the original workspace if necessary
|
||||
Main.wm.actionMoveWindow(window, ws);
|
||||
}
|
||||
|
||||
this.parent();
|
||||
},
|
||||
|
||||
_onDestroy: function() {
|
||||
this._highlight.actor.destroy();
|
||||
|
||||
this.parent();
|
||||
}
|
||||
|
@@ -475,6 +475,11 @@ const ChatSource = new Lang.Class({
|
||||
this._channel.close_async(function(channel, result) {
|
||||
channel.close_finish(result);
|
||||
});
|
||||
} else {
|
||||
// Don't indicate any unread messages when the notification
|
||||
// that represents them has been destroyed.
|
||||
this._pendingMessages = [];
|
||||
this.countUpdated();
|
||||
}
|
||||
|
||||
// Keep source alive while the channel is open
|
||||
|
@@ -1632,6 +1632,8 @@ const NMApplet = new Lang.Class({
|
||||
this._readConnections();
|
||||
this._readDevices();
|
||||
this._syncNMState();
|
||||
this._syncMainConnection();
|
||||
this._syncVPNConnections();
|
||||
|
||||
this._client.connect('notify::manager-running', Lang.bind(this, this._syncNMState));
|
||||
this._client.connect('notify::networking-enabled', Lang.bind(this, this._syncNMState));
|
||||
|
@@ -683,6 +683,8 @@ const WindowManager = new Lang.Class({
|
||||
|
||||
this._dimmedWindows = [];
|
||||
|
||||
this._skippedActors = [];
|
||||
|
||||
this._allowedKeybindings = {};
|
||||
|
||||
this._isWorkspacePrepended = false;
|
||||
@@ -1035,6 +1037,10 @@ const WindowManager = new Lang.Class({
|
||||
this._workspaceTracker.keepWorkspaceAlive(workspace, duration);
|
||||
},
|
||||
|
||||
skipNextEffect: function(actor) {
|
||||
this._skippedActors.push(actor);
|
||||
},
|
||||
|
||||
setCustomKeybindingHandler: function(name, modes, handler) {
|
||||
if (Meta.keybindings_set_custom_handler(name, handler))
|
||||
this.allowKeybinding(name, modes);
|
||||
@@ -1061,6 +1067,9 @@ const WindowManager = new Lang.Class({
|
||||
},
|
||||
|
||||
_shouldAnimateActor: function(actor, types) {
|
||||
if (this._removeEffect(this._skippedActors, actor))
|
||||
return false;
|
||||
|
||||
if (!this._shouldAnimate())
|
||||
return false;
|
||||
|
||||
@@ -1349,9 +1358,13 @@ const WindowManager = new Lang.Class({
|
||||
_hasAttachedDialogs: function(window, ignoreWindow) {
|
||||
var count = 0;
|
||||
window.foreach_transient(function(win) {
|
||||
if (win != ignoreWindow && win.is_attached_dialog())
|
||||
if (win != ignoreWindow &&
|
||||
win.is_attached_dialog() &&
|
||||
win.get_transient_for() == window) {
|
||||
count++;
|
||||
return false;
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
});
|
||||
return count != 0;
|
||||
},
|
||||
@@ -1420,6 +1433,11 @@ const WindowManager = new Lang.Class({
|
||||
|
||||
actor._windowType = type;
|
||||
}));
|
||||
actor.meta_window.connect('unmanaged', Lang.bind(this, function(window) {
|
||||
let parent = window.get_transient_for();
|
||||
if (parent)
|
||||
this._checkDimming(parent);
|
||||
}));
|
||||
|
||||
if (actor.meta_window.is_attached_dialog())
|
||||
this._checkDimming(actor.get_meta_window().get_transient_for());
|
||||
|
@@ -19,8 +19,7 @@ const WorkspaceSwitcherPopup = new Lang.Class({
|
||||
Name: 'WorkspaceSwitcherPopup',
|
||||
|
||||
_init : function() {
|
||||
this.actor = new St.Widget({ reactive: true,
|
||||
x: 0,
|
||||
this.actor = new St.Widget({ x: 0,
|
||||
y: 0,
|
||||
width: global.screen_width,
|
||||
height: global.screen_height,
|
||||
|
@@ -10,7 +10,7 @@ top_builddir = ..
|
||||
# These options get passed to xgettext.
|
||||
XGETTEXT_OPTIONS = --from-code=UTF-8 --keyword=_ --keyword=N_ \
|
||||
--keyword=C_:1c,2 --keyword=NC_:1c,2 \
|
||||
--keyword=g_dngettext:2,3 \
|
||||
--keyword=g_dngettext:2,3 --add-comments \
|
||||
--flag=g_dngettext:2:pass-c-format \
|
||||
--flag=g_strdup_printf:1:c-format \
|
||||
--flag=g_string_printf:2:c-format \
|
||||
|
713
po/ca.po
713
po/ca.po
@@ -10,324 +10,16 @@ msgstr ""
|
||||
"Project-Id-Version: HEAD\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=general\n"
|
||||
"POT-Creation-Date: 2016-03-13 10:20+0000\n"
|
||||
"PO-Revision-Date: 2016-03-13 14:47+0100\n"
|
||||
"Last-Translator: Gil Forcada <gilforcada@guifi.net>\n"
|
||||
"POT-Creation-Date: 2016-09-16 21:22+0200\n"
|
||||
"PO-Revision-Date: 2016-09-16 21:22+0200\n"
|
||||
"Last-Translator: Jordi Mas <jmas@softcatala.org>\n"
|
||||
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
|
||||
"Language: ca\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bits\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Gtranslator 2.91.6\n"
|
||||
|
||||
#: ../data/50-gnome-shell-system.xml.in.h:1
|
||||
msgid "System"
|
||||
msgstr "Sistema"
|
||||
|
||||
#: ../data/50-gnome-shell-system.xml.in.h:2
|
||||
msgid "Show the notification list"
|
||||
msgstr "Mostra la llista de notificacions"
|
||||
|
||||
#: ../data/50-gnome-shell-system.xml.in.h:3
|
||||
msgid "Focus the active notification"
|
||||
msgstr "Posa el focus en la notificació activa"
|
||||
|
||||
#: ../data/50-gnome-shell-system.xml.in.h:4
|
||||
msgid "Show the overview"
|
||||
msgstr "Mostra la vista general"
|
||||
|
||||
#: ../data/50-gnome-shell-system.xml.in.h:5
|
||||
msgid "Show all applications"
|
||||
msgstr "Mostra totes les aplicacions"
|
||||
|
||||
#: ../data/50-gnome-shell-system.xml.in.h:6
|
||||
msgid "Open the application menu"
|
||||
msgstr "Obre el menú d'aplicació"
|
||||
|
||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:1
|
||||
msgid "GNOME Shell Extension Preferences"
|
||||
msgstr "Preferències de les extensions del GNOME Shell"
|
||||
|
||||
#: ../data/gnome-shell-extension-prefs.desktop.in.in.h:2
|
||||
msgid "Configure GNOME Shell Extensions"
|
||||
msgstr "Configureu les extensions del GNOME Shell"
|
||||
|
||||
#: ../data/org.gnome.Shell.desktop.in.in.h:1
|
||||
msgid "GNOME Shell"
|
||||
msgstr "GNOME Shell"
|
||||
|
||||
#: ../data/org.gnome.Shell.desktop.in.in.h:2
|
||||
msgid "Window management and application launching"
|
||||
msgstr "Gestor de finestres i llançador d'aplicacions"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:1
|
||||
msgid "Enable internal tools useful for developers and testers from Alt-F2"
|
||||
msgstr ""
|
||||
"Habilita les eines internes en el diàleg de l'Alt+F2 que són útils per als "
|
||||
"desenvolupadors i provadors"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:2
|
||||
msgid ""
|
||||
"Allows access to internal debugging and monitoring tools using the Alt-F2 "
|
||||
"dialog."
|
||||
msgstr ""
|
||||
"Permet l'accés a les eines de depuració i de seguiment internes a través del "
|
||||
"diàleg de l'Alt+F2."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:3
|
||||
msgid "UUIDs of extensions to enable"
|
||||
msgstr ""
|
||||
"Identificadors universals únics de les extensions que s'han d'habilitar"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:4
|
||||
msgid ""
|
||||
"GNOME Shell extensions have a UUID property; this key lists extensions which "
|
||||
"should be loaded. Any extension that wants to be loaded needs to be in this "
|
||||
"list. You can also manipulate this list with the EnableExtension and "
|
||||
"DisableExtension D-Bus methods on org.gnome.Shell."
|
||||
msgstr ""
|
||||
"Les extensions del GNOME Shell tenen un identificador universal. Aquesta "
|
||||
"clau conté una llista de les extensions que s'han de carregar. Qualsevol "
|
||||
"extensió que s'hagi de carregar ha de ser a la llista. Podeu modificar "
|
||||
"aquesta llista amb els mètodes de D-Bus «EnableExtension» (activa una "
|
||||
"extensió) i «DisableExtension» (desactiva una extensió) a org.gnome.Shell."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:5
|
||||
msgid "Disables the validation of extension version compatibility"
|
||||
msgstr "Desactiva la validació de la compatibilitat de versió d'extensions"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:6
|
||||
msgid ""
|
||||
"GNOME Shell will only load extensions that claim to support the current "
|
||||
"running version. Enabling this option will disable this check and try to "
|
||||
"load all extensions regardless of the versions they claim to support."
|
||||
msgstr ""
|
||||
"El GNOME Shell només carregarà extensions que afirmin ser compatibles amb la "
|
||||
"versió en execució. Si s'activa aquesta opció, es desactivarà la comprovació "
|
||||
"i es provarà de carregar totes les extensions sense tenir en compte les "
|
||||
"versions amb què afirmin ser compatibles."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:7
|
||||
msgid "List of desktop file IDs for favorite applications"
|
||||
msgstr ""
|
||||
"Llista d'identificadors de fitxers d'escriptori de les aplicacions preferides"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:8
|
||||
msgid ""
|
||||
"The applications corresponding to these identifiers will be displayed in the "
|
||||
"favorites area."
|
||||
msgstr ""
|
||||
"Es mostraran, a l'àrea de preferits, les aplicacions que corresponguin a "
|
||||
"aquests identificadors."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:9
|
||||
msgid "App Picker View"
|
||||
msgstr "Vista del seleccionador d'aplicacions"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:10
|
||||
msgid "Index of the currently selected view in the application picker."
|
||||
msgstr ""
|
||||
"Índex de la vista seleccionada actualment en el seleccionador d'aplicacions."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:11
|
||||
msgid "History for command (Alt-F2) dialog"
|
||||
msgstr "Historial de les ordres utilitzades en el diàleg de l'Alt+F2"
|
||||
|
||||
#. Translators: looking glass is a debugger and inspector tool, see https://live.gnome.org/GnomeShell/LookingGlass
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:13
|
||||
msgid "History for the looking glass dialog"
|
||||
msgstr "Historial del depurador del GNOME Shell"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:14
|
||||
msgid "Always show the 'Log out' menu item in the user menu."
|
||||
msgstr "Mostra sempre l'element de menú «Surt» al menú d'usuari."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:15
|
||||
msgid ""
|
||||
"This key overrides the automatic hiding of the 'Log out' menu item in single-"
|
||||
"user, single-session situations."
|
||||
msgstr ""
|
||||
"Aquesta clau sobreescriu l'ocultació automàtica de l'element de menú «Surt» "
|
||||
"quan només hi ha un usuari i un sol tipus de sessió."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:16
|
||||
msgid ""
|
||||
"Whether to remember password for mounting encrypted or remote filesystems"
|
||||
msgstr ""
|
||||
"Si s'han de recordar les contrasenyes dels punts de muntatge encriptats o "
|
||||
"els sistemes de fitxers remots"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:17
|
||||
msgid ""
|
||||
"The shell will request a password when an encrypted device or a remote "
|
||||
"filesystem is mounted. If the password can be saved for future use a "
|
||||
"'Remember Password' checkbox will be present. This key sets the default "
|
||||
"state of the checkbox."
|
||||
msgstr ""
|
||||
"El GNOME Shell us demanarà la contrasenya quan es munti un dispositiu "
|
||||
"encriptat o un sistema de fitxers remot. Si es pot desar la contrasenya per "
|
||||
"utilitzar-lo en el futur, es mostrarà la casella de verificació «Recorda la "
|
||||
"contrasenya». Aquesta clau estableix el valor per defecte d'aquesta casella "
|
||||
"de verificació."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:18
|
||||
msgid ""
|
||||
"Whether the default Bluetooth adapter had set up devices associated to it"
|
||||
msgstr ""
|
||||
"Si l'adaptador de Bluetooth predeterminat té dispositius configurats "
|
||||
"associats"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:19
|
||||
msgid ""
|
||||
"The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
|
||||
"powered, or if there were devices set up associated with the default "
|
||||
"adapter. This will be reset if the default adapter is ever seen not to have "
|
||||
"devices associated to it."
|
||||
msgstr ""
|
||||
"El Shell només mostrà una entrada de menú Bluetooth si un adaptador Bluetooh "
|
||||
"està engegat, o si hi ha dispositius configurats associats a l'adaptador "
|
||||
"predeterminat. Això es reiniciarà si l'adaptador predeterminat té "
|
||||
"dispositius associats."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:20
|
||||
msgid "Show the week date in the calendar"
|
||||
msgstr "Mostra el número de la setmana al calendari"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:21
|
||||
msgid "If true, display the ISO week date in the calendar."
|
||||
msgstr "Si és «true» (cert) es mostra el número de la setmana al calendari."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:22
|
||||
msgid "Keybinding to open the application menu"
|
||||
msgstr "Vinculació per obrir el menú d'aplicació"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:23
|
||||
msgid "Keybinding to open the application menu."
|
||||
msgstr "La vinculació per obrir el menú d'aplicació."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:24
|
||||
msgid "Keybinding to open the \"Show Applications\" view"
|
||||
msgstr "Vinculació per obrir la vista «Mostra les aplicacions»"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:25
|
||||
msgid ""
|
||||
"Keybinding to open the \"Show Applications\" view of the Activities Overview."
|
||||
msgstr ""
|
||||
"Vinculació per obrir la vista «Mostra les aplicacions» de les activitats de "
|
||||
"la vista general."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:26
|
||||
msgid "Keybinding to open the overview"
|
||||
msgstr "Vinculació per obrir la vista general"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:27
|
||||
msgid "Keybinding to open the Activities Overview."
|
||||
msgstr "Vinculació per obrir la vista general d'activitats."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:28
|
||||
msgid "Keybinding to toggle the visibility of the notification list"
|
||||
msgstr ""
|
||||
"La vinculació per commutar la visibilitat de la llista de notificacions"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:29
|
||||
msgid "Keybinding to toggle the visibility of the notification list."
|
||||
msgstr ""
|
||||
"La vinculació per commutar la visibilitat de la llista de notificacions."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:30
|
||||
msgid "Keybinding to focus the active notification"
|
||||
msgstr "Vinculació per posar el focus a la notificació activa"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:31
|
||||
msgid "Keybinding to focus the active notification."
|
||||
msgstr "Vinculació per posar el focus a la notificació activa."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:32
|
||||
msgid ""
|
||||
"Keybinding that pauses and resumes all running tweens, for debugging purposes"
|
||||
msgstr ""
|
||||
"Vinculació que fa una pausa i continua tots els «tweens» en execució, per "
|
||||
"motius de depuració"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:33
|
||||
msgid "Which keyboard to use"
|
||||
msgstr "Quin tipus de teclat s'ha d'utilitzar"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:34
|
||||
msgid "The type of keyboard to use."
|
||||
msgstr "El tipus de teclat que s'utilitzarà."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:35
|
||||
msgid "Limit switcher to current workspace."
|
||||
msgstr "Limita el canviador a l'espai de treball actual."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:36
|
||||
msgid ""
|
||||
"If true, only applications that have windows on the current workspace are "
|
||||
"shown in the switcher. Otherwise, all applications are included."
|
||||
msgstr ""
|
||||
"Si és «true» (cert), només les aplicacions que tinguin finestres en l'espai "
|
||||
"de treball actual es mostren en el canviador. En cas contrari es mostren "
|
||||
"totes les aplicacions."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:37
|
||||
msgid "The application icon mode."
|
||||
msgstr "El mode d'icona de les aplicacions."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:38
|
||||
msgid ""
|
||||
"Configures how the windows are shown in the switcher. Valid possibilities "
|
||||
"are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
|
||||
"only' (shows only the application icon) or 'both'."
|
||||
msgstr ""
|
||||
"Configureu com es mostren les finestres en l'intercanviador. Els valors "
|
||||
"possibles són: «thumbnail-only» (mostra una miniatura de la finestra), «app-"
|
||||
"icon-only» (mostra la icona de l'aplicació) o «both» (ambdues coses: mostra "
|
||||
"la miniatura de la finestra i la icona de l'aplicació)."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:39
|
||||
msgid ""
|
||||
"If true, only windows from the current workspace are shown in the switcher. "
|
||||
"Otherwise, all windows are included."
|
||||
msgstr ""
|
||||
"Si és «true» (cert), només les finestres de l'espai de treball actual es "
|
||||
"mostren en el canviador. En cas contrari, es mostren totes les finestres."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:40
|
||||
msgid "Attach modal dialog to the parent window"
|
||||
msgstr "Adjunta el diàleg modal a la finestra pare"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:41
|
||||
msgid ""
|
||||
"This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
||||
msgstr ""
|
||||
"Si s'executa el GNOME Shell, aquesta clau sobreescriu la clau «org.gnome."
|
||||
"mutter»."
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:42
|
||||
msgid "Enable edge tiling when dropping windows on screen edges"
|
||||
msgstr ""
|
||||
"Habilita la tesselització a les vores en deixar anar les finestres a les "
|
||||
"vores de la pantalla"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:43
|
||||
msgid "Workspaces are managed dynamically"
|
||||
msgstr "Els espais de treball es gestionen dinàmicament"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:44
|
||||
msgid "Workspaces only on primary monitor"
|
||||
msgstr "Només en el monitor principal hi ha espais de treball"
|
||||
|
||||
#: ../data/org.gnome.shell.gschema.xml.in.in.h:45
|
||||
msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||
msgstr ""
|
||||
"Retarda el canvi del focus, quan s'està en mode ratolí, fins que el punter "
|
||||
"no estigui quiet"
|
||||
|
||||
#: ../data/org.gnome.Shell.PortalHelper.desktop.in.h:1
|
||||
msgid "Network Login"
|
||||
msgstr "Inici de sessió de la xarxa"
|
||||
"X-Generator: Poedit 1.8.7.1\n"
|
||||
|
||||
#: ../js/extensionPrefs/main.js:117
|
||||
#, javascript-format
|
||||
@@ -340,7 +32,7 @@ msgstr "Extensions del GNOME Shell"
|
||||
|
||||
#: ../js/gdm/authPrompt.js:147 ../js/ui/audioDeviceSelection.js:71
|
||||
#: ../js/ui/components/networkAgent.js:145
|
||||
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:452
|
||||
#: ../js/ui/components/polkitAgent.js:179 ../js/ui/endSessionDialog.js:483
|
||||
#: ../js/ui/extensionDownloader.js:195 ../js/ui/shellMountOperation.js:399
|
||||
#: ../js/ui/status/network.js:916
|
||||
msgid "Cancel"
|
||||
@@ -374,7 +66,7 @@ msgstr "No esteu llistat?"
|
||||
|
||||
#. Translators: this message is shown below the username entry field
|
||||
#. to clue the user in on how to login to the local network realm
|
||||
#: ../js/gdm/loginDialog.js:854
|
||||
#: ../js/gdm/loginDialog.js:859
|
||||
#, javascript-format
|
||||
msgid "(e.g., user or %s)"
|
||||
msgstr "(p. ex. l'usuari o %s)"
|
||||
@@ -382,12 +74,12 @@ msgstr "(p. ex. l'usuari o %s)"
|
||||
#. TTLS and PEAP are actually much more complicated, but this complication
|
||||
#. is not visible here since we only care about phase2 authentication
|
||||
#. (and don't even care of which one)
|
||||
#: ../js/gdm/loginDialog.js:859 ../js/ui/components/networkAgent.js:271
|
||||
#: ../js/gdm/loginDialog.js:864 ../js/ui/components/networkAgent.js:271
|
||||
#: ../js/ui/components/networkAgent.js:289
|
||||
msgid "Username: "
|
||||
msgstr "Nom d'usuari:"
|
||||
|
||||
#: ../js/gdm/loginDialog.js:1196
|
||||
#: ../js/gdm/loginDialog.js:1201
|
||||
msgid "Login Window"
|
||||
msgstr "Finestra d'entrada"
|
||||
|
||||
@@ -495,6 +187,16 @@ msgstr "%d de %B de %Y, a les %l∶%M %p"
|
||||
msgid "Web Authentication Redirect"
|
||||
msgstr "Redirecció per l'autenticació web"
|
||||
|
||||
#. No support for non-modal system dialogs, so ignore the option
|
||||
#. let modal = options['modal'] || true;
|
||||
#: ../js/ui/accessDialog.js:62 ../js/ui/status/location.js:426
|
||||
msgid "Deny Access"
|
||||
msgstr "Denega l'accés"
|
||||
|
||||
#: ../js/ui/accessDialog.js:63 ../js/ui/status/location.js:429
|
||||
msgid "Grant Access"
|
||||
msgstr "Permetre l'accés"
|
||||
|
||||
#: ../js/ui/appDisplay.js:794
|
||||
msgid "Frequently used applications will appear here"
|
||||
msgstr "Les aplicacions utilitzades freqüentment apareixeran aquí"
|
||||
@@ -561,7 +263,7 @@ msgstr "Canvia el fons de l'escriptori…"
|
||||
msgid "Display Settings"
|
||||
msgstr "Paràmetres de la pantalla"
|
||||
|
||||
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:366
|
||||
#: ../js/ui/backgroundMenu.js:22 ../js/ui/status/system.js:374
|
||||
msgid "Settings"
|
||||
msgstr "Paràmetres"
|
||||
|
||||
@@ -617,55 +319,55 @@ msgctxt "grid saturday"
|
||||
msgid "S"
|
||||
msgstr "Ds"
|
||||
|
||||
#: ../js/ui/calendar.js:416
|
||||
#: ../js/ui/calendar.js:442
|
||||
msgid "Previous month"
|
||||
msgstr "Mes anterior"
|
||||
|
||||
#: ../js/ui/calendar.js:426
|
||||
#: ../js/ui/calendar.js:452
|
||||
msgid "Next month"
|
||||
msgstr "Mes següent"
|
||||
|
||||
#: ../js/ui/calendar.js:579
|
||||
#: ../js/ui/calendar.js:605
|
||||
#, no-javascript-format
|
||||
msgctxt "date day number format"
|
||||
msgid "%d"
|
||||
msgstr "%d"
|
||||
|
||||
#: ../js/ui/calendar.js:634
|
||||
#: ../js/ui/calendar.js:660
|
||||
msgid "Week %V"
|
||||
msgstr "Setmana %V"
|
||||
|
||||
#. Translators: Shown in calendar event list for all day events
|
||||
#. * Keep it short, best if you can use less then 10 characters
|
||||
#.
|
||||
#: ../js/ui/calendar.js:695
|
||||
#: ../js/ui/calendar.js:721
|
||||
msgctxt "event list time"
|
||||
msgid "All Day"
|
||||
msgstr "Tot el dia"
|
||||
|
||||
#: ../js/ui/calendar.js:821
|
||||
#: ../js/ui/calendar.js:836
|
||||
msgid "Events"
|
||||
msgstr "Cites"
|
||||
|
||||
#: ../js/ui/calendar.js:830
|
||||
#: ../js/ui/calendar.js:845
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d"
|
||||
msgstr "%A %d de %B"
|
||||
|
||||
#: ../js/ui/calendar.js:834
|
||||
#: ../js/ui/calendar.js:849
|
||||
msgctxt "calendar heading"
|
||||
msgid "%A, %B %d, %Y"
|
||||
msgstr "%A %d de %B de %Y"
|
||||
|
||||
#: ../js/ui/calendar.js:919
|
||||
#: ../js/ui/calendar.js:931
|
||||
msgid "Notifications"
|
||||
msgstr "Notificacions"
|
||||
|
||||
#: ../js/ui/calendar.js:1070
|
||||
#: ../js/ui/calendar.js:1082
|
||||
msgid "No Notifications"
|
||||
msgstr "Cap notificació"
|
||||
|
||||
#: ../js/ui/calendar.js:1073
|
||||
#: ../js/ui/calendar.js:1085
|
||||
msgid "No Events"
|
||||
msgstr "Cap cita"
|
||||
|
||||
@@ -803,7 +505,7 @@ msgstr "No ha funcionat. Torneu-ho a provar."
|
||||
|
||||
#. Translators: this is the other person changing their old IM name to their new
|
||||
#. IM name.
|
||||
#: ../js/ui/components/telepathyClient.js:759
|
||||
#: ../js/ui/components/telepathyClient.js:765
|
||||
#, javascript-format
|
||||
msgid "%s is now known as %s"
|
||||
msgstr "En/na %s ara es diu %s"
|
||||
@@ -936,7 +638,7 @@ msgstr[1] ""
|
||||
"Es reiniciarà l'ordinador automàticament i s'instal·laran les "
|
||||
"actualitzacions d'aquí %d segons."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:127
|
||||
#: ../js/ui/endSessionDialog.js:127 ../js/ui/endSessionDialog.js:147
|
||||
msgctxt "button"
|
||||
msgid "Restart & Install"
|
||||
msgstr "Reinicia i instal·la"
|
||||
@@ -951,30 +653,45 @@ msgctxt "checkbox"
|
||||
msgid "Power off after updates are installed"
|
||||
msgstr "Apaga després d'instal·lar les actualitzacions"
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:338
|
||||
#: ../js/ui/endSessionDialog.js:137
|
||||
msgctxt "title"
|
||||
msgid "Restart & Install Upgrade"
|
||||
msgstr "Reinicia i instal·la l'actualització"
|
||||
|
||||
#. Translators: This is the text displayed for system upgrades in the
|
||||
#. shut down dialog. First %s gets replaced with the distro name and
|
||||
#. second %s with the distro version to upgrade to
|
||||
#: ../js/ui/endSessionDialog.js:142
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"%s %s will be installed after restart. Upgrade installation can take a long "
|
||||
"time: ensure that you have backed up and that the computer is plugged in."
|
||||
msgstr ""
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:361
|
||||
msgid "Running on battery power: please plug in before installing updates."
|
||||
msgstr ""
|
||||
"S'està utilitzant la bateria: connecteu l'ordinador a la xarxa elèctrica "
|
||||
"abans d'instal·lar les actualitzacions."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:355
|
||||
#: ../js/ui/endSessionDialog.js:378
|
||||
msgid "Some applications are busy or have unsaved work."
|
||||
msgstr ""
|
||||
"Hi ha algunes aplicacions que estan ocupades o que tenen documents sense "
|
||||
"desar."
|
||||
|
||||
#: ../js/ui/endSessionDialog.js:362
|
||||
#: ../js/ui/endSessionDialog.js:385
|
||||
msgid "Other users are logged in."
|
||||
msgstr "Altres usuaris tenen la sessió oberta."
|
||||
|
||||
#. Translators: Remote here refers to a remote session, like a ssh login
|
||||
#: ../js/ui/endSessionDialog.js:640
|
||||
#: ../js/ui/endSessionDialog.js:671
|
||||
#, javascript-format
|
||||
msgid "%s (remote)"
|
||||
msgstr "%s (remot)"
|
||||
|
||||
#. Translators: Console here refers to a tty like a VT console
|
||||
#: ../js/ui/endSessionDialog.js:643
|
||||
#: ../js/ui/endSessionDialog.js:674
|
||||
#, javascript-format
|
||||
msgid "%s (console)"
|
||||
msgstr "%s (consola)"
|
||||
@@ -988,7 +705,7 @@ msgstr "Instal·la"
|
||||
msgid "Download and install “%s” from extensions.gnome.org?"
|
||||
msgstr "Voleu baixar i instal·lar «%s» d'extensions.gnome.org?"
|
||||
|
||||
#: ../js/ui/keyboard.js:741 ../js/ui/status/keyboard.js:713
|
||||
#: ../js/ui/keyboard.js:742 ../js/ui/status/keyboard.js:782
|
||||
msgid "Keyboard"
|
||||
msgstr "Teclat"
|
||||
|
||||
@@ -1025,7 +742,7 @@ msgstr "Habilitat"
|
||||
|
||||
#. translators:
|
||||
#. * The device has been disabled
|
||||
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1828
|
||||
#: ../js/ui/lookingGlass.js:719 ../src/gvc/gvc-mixer-control.c:1866
|
||||
msgid "Disabled"
|
||||
msgstr "Inhabilitat"
|
||||
|
||||
@@ -1073,7 +790,7 @@ msgstr "Multimèdia"
|
||||
msgid "Undo"
|
||||
msgstr "Desfés"
|
||||
|
||||
#: ../js/ui/overview.js:117
|
||||
#: ../js/ui/overview.js:113
|
||||
msgid "Overview"
|
||||
msgstr "Vista general"
|
||||
|
||||
@@ -1081,7 +798,7 @@ msgstr "Vista general"
|
||||
#. in the search entry when no search is
|
||||
#. active; it should not exceed ~30
|
||||
#. characters.
|
||||
#: ../js/ui/overview.js:244
|
||||
#: ../js/ui/overview.js:240
|
||||
msgid "Type to search…"
|
||||
msgstr "Teclegeu per cercar…"
|
||||
|
||||
@@ -1145,11 +862,11 @@ msgid_plural "%d new notifications"
|
||||
msgstr[0] "%d notificació nova"
|
||||
msgstr[1] "%d notificacions noves"
|
||||
|
||||
#: ../js/ui/screenShield.js:432 ../js/ui/status/system.js:374
|
||||
#: ../js/ui/screenShield.js:449 ../js/ui/status/system.js:382
|
||||
msgid "Lock"
|
||||
msgstr "Bloqueja"
|
||||
|
||||
#: ../js/ui/screenShield.js:684
|
||||
#: ../js/ui/screenShield.js:704
|
||||
msgid "GNOME needs to lock the screen"
|
||||
msgstr "El GNOME necessita bloquejar la pantalla"
|
||||
|
||||
@@ -1160,11 +877,11 @@ msgstr "El GNOME necessita bloquejar la pantalla"
|
||||
#.
|
||||
#. 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:825 ../js/ui/screenShield.js:1291
|
||||
msgid "Unable to lock"
|
||||
msgstr "No es pot blocar"
|
||||
|
||||
#: ../js/ui/screenShield.js:806 ../js/ui/screenShield.js:1272
|
||||
#: ../js/ui/screenShield.js:826 ../js/ui/screenShield.js:1292
|
||||
msgid "Lock was blocked by an application"
|
||||
msgstr "Una aplicació està bloquejant el bloqueig"
|
||||
|
||||
@@ -1248,7 +965,7 @@ msgstr "Text gran"
|
||||
msgid "Bluetooth"
|
||||
msgstr "Bluetooth"
|
||||
|
||||
#: ../js/ui/status/bluetooth.js:56
|
||||
#: ../js/ui/status/bluetooth.js:56 ../js/ui/status/network.js:624
|
||||
msgid "Bluetooth Settings"
|
||||
msgstr "Paràmetres del Bluetooth"
|
||||
|
||||
@@ -1283,7 +1000,7 @@ msgstr "Desactiva"
|
||||
msgid "Brightness"
|
||||
msgstr "Brillantor"
|
||||
|
||||
#: ../js/ui/status/keyboard.js:736
|
||||
#: ../js/ui/status/keyboard.js:805
|
||||
msgid "Show Keyboard Layout"
|
||||
msgstr "Mostra la disposició del teclat"
|
||||
|
||||
@@ -1311,14 +1028,6 @@ msgstr "Ubicació inhabilitada"
|
||||
msgid "Enable"
|
||||
msgstr "Habilita"
|
||||
|
||||
#: ../js/ui/status/location.js:426
|
||||
msgid "Deny Access"
|
||||
msgstr "Denega l'accés"
|
||||
|
||||
#: ../js/ui/status/location.js:429
|
||||
msgid "Grant Access"
|
||||
msgstr "Permetre l'accés"
|
||||
|
||||
#. Translators: %s is an application name
|
||||
#: ../js/ui/status/location.js:435
|
||||
#, javascript-format
|
||||
@@ -1329,7 +1038,7 @@ msgstr "Voleu donar a %s accés a la vostra ubicació?"
|
||||
msgid "Location access can be changed at any time from the privacy settings."
|
||||
msgstr ""
|
||||
"Podeu canviar la configuració de l'accés a la ubicació sempre que vulgueu "
|
||||
"des del la configuració de la privacitat."
|
||||
"des de la configuració de la privacitat."
|
||||
|
||||
#: ../js/ui/status/network.js:101
|
||||
msgid "<unknown>"
|
||||
@@ -1397,7 +1106,7 @@ msgstr "%s ha fallat la connexió"
|
||||
msgid "Wired Settings"
|
||||
msgstr "Paràmetres de la xarxa amb fils"
|
||||
|
||||
#: ../js/ui/status/network.js:545 ../js/ui/status/network.js:624
|
||||
#: ../js/ui/status/network.js:545
|
||||
msgid "Mobile Broadband Settings"
|
||||
msgstr "Configuració de la xarxa de banda ampla mòbil"
|
||||
|
||||
@@ -1415,8 +1124,8 @@ msgid "%s Disabled"
|
||||
msgstr "%s Inhabilitat"
|
||||
|
||||
#: ../js/ui/status/network.js:632
|
||||
msgid "Use as Internet connection"
|
||||
msgstr "Utilitza com a connexió a Internet"
|
||||
msgid "Connect to Internet"
|
||||
msgstr "Connecta a l'Internet"
|
||||
|
||||
#: ../js/ui/status/network.js:813
|
||||
msgid "Airplane Mode is On"
|
||||
@@ -1553,27 +1262,27 @@ msgstr "%d %%"
|
||||
msgid "Airplane Mode On"
|
||||
msgstr "El mode d'avió és actiu"
|
||||
|
||||
#: ../js/ui/status/system.js:343
|
||||
#: ../js/ui/status/system.js:351
|
||||
msgid "Switch User"
|
||||
msgstr "Canvia d'usuari"
|
||||
|
||||
#: ../js/ui/status/system.js:348
|
||||
#: ../js/ui/status/system.js:356
|
||||
msgid "Log Out"
|
||||
msgstr "Surt"
|
||||
|
||||
#: ../js/ui/status/system.js:353
|
||||
#: ../js/ui/status/system.js:361
|
||||
msgid "Account Settings"
|
||||
msgstr "Paràmetres del compte"
|
||||
|
||||
#: ../js/ui/status/system.js:370
|
||||
#: ../js/ui/status/system.js:378
|
||||
msgid "Orientation Lock"
|
||||
msgstr "Bloqueja l'orientació"
|
||||
|
||||
#: ../js/ui/status/system.js:378
|
||||
#: ../js/ui/status/system.js:386
|
||||
msgid "Suspend"
|
||||
msgstr "Atura temporalment"
|
||||
|
||||
#: ../js/ui/status/system.js:381
|
||||
#: ../js/ui/status/system.js:389
|
||||
msgid "Power Off"
|
||||
msgstr "Apaga"
|
||||
|
||||
@@ -1699,13 +1408,9 @@ msgstr "Mou a la pantalla de l'esquerra"
|
||||
msgid "Move to Monitor Right"
|
||||
msgstr "Mou a la pantalla de la dreta"
|
||||
|
||||
#: ../src/calendar-server/evolution-calendar.desktop.in.in.h:1
|
||||
msgid "Evolution Calendar"
|
||||
msgstr "Calendari de l'Evolution"
|
||||
|
||||
#. translators:
|
||||
#. * The number of sound outputs on a particular device
|
||||
#: ../src/gvc/gvc-mixer-control.c:1835
|
||||
#: ../src/gvc/gvc-mixer-control.c:1873
|
||||
#, c-format
|
||||
msgid "%u Output"
|
||||
msgid_plural "%u Outputs"
|
||||
@@ -1714,14 +1419,14 @@ msgstr[1] "%u sortides"
|
||||
|
||||
#. translators:
|
||||
#. * The number of sound inputs on a particular device
|
||||
#: ../src/gvc/gvc-mixer-control.c:1845
|
||||
#: ../src/gvc/gvc-mixer-control.c:1883
|
||||
#, c-format
|
||||
msgid "%u Input"
|
||||
msgid_plural "%u Inputs"
|
||||
msgstr[0] "%u entrada"
|
||||
msgstr[1] "%u entrades"
|
||||
|
||||
#: ../src/gvc/gvc-mixer-control.c:2371
|
||||
#: ../src/gvc/gvc-mixer-control.c:2738
|
||||
msgid "System Sounds"
|
||||
msgstr "Sons del sistema"
|
||||
|
||||
@@ -1741,12 +1446,12 @@ msgstr "Utilitza un mode específic, p. ex. «gdm» per la pantalla d'entrada"
|
||||
msgid "List possible modes"
|
||||
msgstr "Llista els modes possibles"
|
||||
|
||||
#: ../src/shell-app.c:246
|
||||
#: ../src/shell-app.c:270
|
||||
msgctxt "program"
|
||||
msgid "Unknown"
|
||||
msgstr "Desconegut"
|
||||
|
||||
#: ../src/shell-app.c:487
|
||||
#: ../src/shell-app.c:511
|
||||
#, c-format
|
||||
msgid "Failed to launch “%s”"
|
||||
msgstr "No s'ha pogut iniciar «%s»"
|
||||
@@ -1763,6 +1468,268 @@ msgstr "La contrasenya no pot ser buida"
|
||||
msgid "Authentication dialog was dismissed by the user"
|
||||
msgstr "L'usuari ha descartat el diàleg d'autenticació"
|
||||
|
||||
#~ msgid "System"
|
||||
#~ msgstr "Sistema"
|
||||
|
||||
#~ msgid "Show the notification list"
|
||||
#~ msgstr "Mostra la llista de notificacions"
|
||||
|
||||
#~ msgid "Focus the active notification"
|
||||
#~ msgstr "Posa el focus en la notificació activa"
|
||||
|
||||
#~ msgid "Show the overview"
|
||||
#~ msgstr "Mostra la vista general"
|
||||
|
||||
#~ msgid "Show all applications"
|
||||
#~ msgstr "Mostra totes les aplicacions"
|
||||
|
||||
#~ msgid "Open the application menu"
|
||||
#~ msgstr "Obre el menú d'aplicació"
|
||||
|
||||
#~ msgid "GNOME Shell Extension Preferences"
|
||||
#~ msgstr "Preferències de les extensions del GNOME Shell"
|
||||
|
||||
#~ msgid "Configure GNOME Shell Extensions"
|
||||
#~ msgstr "Configureu les extensions del GNOME Shell"
|
||||
|
||||
#~ msgid "GNOME Shell"
|
||||
#~ msgstr "GNOME Shell"
|
||||
|
||||
#~ msgid "Window management and application launching"
|
||||
#~ msgstr "Gestor de finestres i llançador d'aplicacions"
|
||||
|
||||
#~ msgid "Enable internal tools useful for developers and testers from Alt-F2"
|
||||
#~ msgstr ""
|
||||
#~ "Habilita les eines internes en el diàleg de l'Alt+F2 que són útils per "
|
||||
#~ "als desenvolupadors i provadors"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Allows access to internal debugging and monitoring tools using the Alt-F2 "
|
||||
#~ "dialog."
|
||||
#~ msgstr ""
|
||||
#~ "Permet l'accés a les eines de depuració i de seguiment internes a través "
|
||||
#~ "del diàleg de l'Alt+F2."
|
||||
|
||||
#~ msgid "UUIDs of extensions to enable"
|
||||
#~ msgstr ""
|
||||
#~ "Identificadors universals únics de les extensions que s'han d'habilitar"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "GNOME Shell extensions have a UUID property; this key lists extensions "
|
||||
#~ "which should be loaded. Any extension that wants to be loaded needs to be "
|
||||
#~ "in this list. You can also manipulate this list with the EnableExtension "
|
||||
#~ "and DisableExtension D-Bus methods on org.gnome.Shell."
|
||||
#~ msgstr ""
|
||||
#~ "Les extensions del GNOME Shell tenen un identificador universal. Aquesta "
|
||||
#~ "clau conté una llista de les extensions que s'han de carregar. Qualsevol "
|
||||
#~ "extensió que s'hagi de carregar ha de ser a la llista. Podeu modificar "
|
||||
#~ "aquesta llista amb els mètodes de D-Bus «EnableExtension» (activa una "
|
||||
#~ "extensió) i «DisableExtension» (desactiva una extensió) a org.gnome.Shell."
|
||||
|
||||
#~ msgid "Disables the validation of extension version compatibility"
|
||||
#~ msgstr "Desactiva la validació de la compatibilitat de versió d'extensions"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "GNOME Shell will only load extensions that claim to support the current "
|
||||
#~ "running version. Enabling this option will disable this check and try to "
|
||||
#~ "load all extensions regardless of the versions they claim to support."
|
||||
#~ msgstr ""
|
||||
#~ "El GNOME Shell només carregarà extensions que afirmin ser compatibles amb "
|
||||
#~ "la versió en execució. Si s'activa aquesta opció, es desactivarà la "
|
||||
#~ "comprovació i es provarà de carregar totes les extensions sense tenir en "
|
||||
#~ "compte les versions amb què afirmin ser compatibles."
|
||||
|
||||
#~ msgid "List of desktop file IDs for favorite applications"
|
||||
#~ msgstr ""
|
||||
#~ "Llista d'identificadors de fitxers d'escriptori de les aplicacions "
|
||||
#~ "preferides"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "The applications corresponding to these identifiers will be displayed in "
|
||||
#~ "the favorites area."
|
||||
#~ msgstr ""
|
||||
#~ "Es mostraran, a l'àrea de preferits, les aplicacions que corresponguin a "
|
||||
#~ "aquests identificadors."
|
||||
|
||||
#~ msgid "App Picker View"
|
||||
#~ msgstr "Vista del seleccionador d'aplicacions"
|
||||
|
||||
#~ msgid "Index of the currently selected view in the application picker."
|
||||
#~ msgstr ""
|
||||
#~ "Índex de la vista seleccionada actualment en el seleccionador "
|
||||
#~ "d'aplicacions."
|
||||
|
||||
#~ msgid "History for command (Alt-F2) dialog"
|
||||
#~ msgstr "Historial de les ordres utilitzades en el diàleg de l'Alt+F2"
|
||||
|
||||
#~ msgid "History for the looking glass dialog"
|
||||
#~ msgstr "Historial del depurador del GNOME Shell"
|
||||
|
||||
#~ msgid "Always show the 'Log out' menu item in the user menu."
|
||||
#~ msgstr "Mostra sempre l'element de menú «Surt» al menú d'usuari."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "This key overrides the automatic hiding of the 'Log out' menu item in "
|
||||
#~ "single-user, single-session situations."
|
||||
#~ msgstr ""
|
||||
#~ "Aquesta clau sobreescriu l'ocultació automàtica de l'element de menú "
|
||||
#~ "«Surt» quan només hi ha un usuari i un sol tipus de sessió."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Whether to remember password for mounting encrypted or remote filesystems"
|
||||
#~ msgstr ""
|
||||
#~ "Si s'han de recordar les contrasenyes dels punts de muntatge encriptats o "
|
||||
#~ "els sistemes de fitxers remots"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "The shell will request a password when an encrypted device or a remote "
|
||||
#~ "filesystem is mounted. If the password can be saved for future use a "
|
||||
#~ "'Remember Password' checkbox will be present. This key sets the default "
|
||||
#~ "state of the checkbox."
|
||||
#~ msgstr ""
|
||||
#~ "El GNOME Shell us demanarà la contrasenya quan es munti un dispositiu "
|
||||
#~ "encriptat o un sistema de fitxers remot. Si es pot desar la contrasenya "
|
||||
#~ "per utilitzar-lo en el futur, es mostrarà la casella de verificació "
|
||||
#~ "«Recorda la contrasenya». Aquesta clau estableix el valor per defecte "
|
||||
#~ "d'aquesta casella de verificació."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Whether the default Bluetooth adapter had set up devices associated to it"
|
||||
#~ msgstr ""
|
||||
#~ "Si l'adaptador de Bluetooth predeterminat té dispositius configurats "
|
||||
#~ "associats"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "The shell will only show a Bluetooth menu item if a Bluetooth adapter is "
|
||||
#~ "powered, or if there were devices set up associated with the default "
|
||||
#~ "adapter. This will be reset if the default adapter is ever seen not to "
|
||||
#~ "have devices associated to it."
|
||||
#~ msgstr ""
|
||||
#~ "El Shell només mostrà una entrada de menú Bluetooth si un adaptador "
|
||||
#~ "Bluetooh està engegat, o si hi ha dispositius configurats associats a "
|
||||
#~ "l'adaptador predeterminat. Això es reiniciarà si l'adaptador "
|
||||
#~ "predeterminat té dispositius associats."
|
||||
|
||||
#~ msgid "Show the week date in the calendar"
|
||||
#~ msgstr "Mostra el número de la setmana al calendari"
|
||||
|
||||
#~ msgid "If true, display the ISO week date in the calendar."
|
||||
#~ msgstr "Si és «true» (cert) es mostra el número de la setmana al calendari."
|
||||
|
||||
#~ msgid "Keybinding to open the application menu"
|
||||
#~ msgstr "Vinculació per obrir el menú d'aplicació"
|
||||
|
||||
#~ msgid "Keybinding to open the application menu."
|
||||
#~ msgstr "La vinculació per obrir el menú d'aplicació."
|
||||
|
||||
#~ msgid "Keybinding to open the \"Show Applications\" view"
|
||||
#~ msgstr "Vinculació per obrir la vista «Mostra les aplicacions»"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Keybinding to open the \"Show Applications\" view of the Activities "
|
||||
#~ "Overview."
|
||||
#~ msgstr ""
|
||||
#~ "Vinculació per obrir la vista «Mostra les aplicacions» de les activitats "
|
||||
#~ "de la vista general."
|
||||
|
||||
#~ msgid "Keybinding to open the overview"
|
||||
#~ msgstr "Vinculació per obrir la vista general"
|
||||
|
||||
#~ msgid "Keybinding to open the Activities Overview."
|
||||
#~ msgstr "Vinculació per obrir la vista general d'activitats."
|
||||
|
||||
#~ msgid "Keybinding to toggle the visibility of the notification list"
|
||||
#~ msgstr ""
|
||||
#~ "La vinculació per commutar la visibilitat de la llista de notificacions"
|
||||
|
||||
#~ msgid "Keybinding to toggle the visibility of the notification list."
|
||||
#~ msgstr ""
|
||||
#~ "La vinculació per commutar la visibilitat de la llista de notificacions."
|
||||
|
||||
#~ msgid "Keybinding to focus the active notification"
|
||||
#~ msgstr "Vinculació per posar el focus a la notificació activa"
|
||||
|
||||
#~ msgid "Keybinding to focus the active notification."
|
||||
#~ msgstr "Vinculació per posar el focus a la notificació activa."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Keybinding that pauses and resumes all running tweens, for debugging "
|
||||
#~ "purposes"
|
||||
#~ msgstr ""
|
||||
#~ "Vinculació que fa una pausa i continua tots els «tweens» en execució, per "
|
||||
#~ "motius de depuració"
|
||||
|
||||
#~ msgid "Which keyboard to use"
|
||||
#~ msgstr "Quin tipus de teclat s'ha d'utilitzar"
|
||||
|
||||
#~ msgid "The type of keyboard to use."
|
||||
#~ msgstr "El tipus de teclat que s'utilitzarà."
|
||||
|
||||
#~ msgid "Limit switcher to current workspace."
|
||||
#~ msgstr "Limita el canviador a l'espai de treball actual."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "If true, only applications that have windows on the current workspace are "
|
||||
#~ "shown in the switcher. Otherwise, all applications are included."
|
||||
#~ msgstr ""
|
||||
#~ "Si és «true» (cert), només les aplicacions que tinguin finestres en "
|
||||
#~ "l'espai de treball actual es mostren en el canviador. En cas contrari es "
|
||||
#~ "mostren totes les aplicacions."
|
||||
|
||||
#~ msgid "The application icon mode."
|
||||
#~ msgstr "El mode d'icona de les aplicacions."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Configures how the windows are shown in the switcher. Valid possibilities "
|
||||
#~ "are 'thumbnail-only' (shows a thumbnail of the window), 'app-icon-"
|
||||
#~ "only' (shows only the application icon) or 'both'."
|
||||
#~ msgstr ""
|
||||
#~ "Configureu com es mostren les finestres en l'intercanviador. Els valors "
|
||||
#~ "possibles són: «thumbnail-only» (mostra una miniatura de la finestra), "
|
||||
#~ "«app-icon-only» (mostra la icona de l'aplicació) o «both» (ambdues coses: "
|
||||
#~ "mostra la miniatura de la finestra i la icona de l'aplicació)."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "If true, only windows from the current workspace are shown in the "
|
||||
#~ "switcher. Otherwise, all windows are included."
|
||||
#~ msgstr ""
|
||||
#~ "Si és «true» (cert), només les finestres de l'espai de treball actual es "
|
||||
#~ "mostren en el canviador. En cas contrari, es mostren totes les finestres."
|
||||
|
||||
#~ msgid "Attach modal dialog to the parent window"
|
||||
#~ msgstr "Adjunta el diàleg modal a la finestra pare"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "This key overrides the key in org.gnome.mutter when running GNOME Shell."
|
||||
#~ msgstr ""
|
||||
#~ "Si s'executa el GNOME Shell, aquesta clau sobreescriu la clau «org.gnome."
|
||||
#~ "mutter»."
|
||||
|
||||
#~ msgid "Enable edge tiling when dropping windows on screen edges"
|
||||
#~ msgstr ""
|
||||
#~ "Habilita la tesselització a les vores en deixar anar les finestres a les "
|
||||
#~ "vores de la pantalla"
|
||||
|
||||
#~ msgid "Workspaces are managed dynamically"
|
||||
#~ msgstr "Els espais de treball es gestionen dinàmicament"
|
||||
|
||||
#~ msgid "Workspaces only on primary monitor"
|
||||
#~ msgstr "Només en el monitor principal hi ha espais de treball"
|
||||
|
||||
#~ msgid "Delay focus changes in mouse mode until the pointer stops moving"
|
||||
#~ msgstr ""
|
||||
#~ "Retarda el canvi del focus, quan s'està en mode ratolí, fins que el "
|
||||
#~ "punter no estigui quiet"
|
||||
|
||||
#~ msgid "Network Login"
|
||||
#~ msgstr "Inici de sessió de la xarxa"
|
||||
|
||||
#~ msgid "Use as Internet connection"
|
||||
#~ msgstr "Utilitza com a connexió a Internet"
|
||||
|
||||
#~ msgid "Evolution Calendar"
|
||||
#~ msgstr "Calendari de l'Evolution"
|
||||
|
||||
#~ msgid "%s is requesting access to your location."
|
||||
#~ msgstr "%s està demanant accés a la vostra ubicació."
|
||||
|
||||
|
847
po/en_GB.po
847
po/en_GB.po
File diff suppressed because it is too large
Load Diff
991
po/pt_BR.po
991
po/pt_BR.po
File diff suppressed because it is too large
Load Diff
838
po/sr@latin.po
838
po/sr@latin.po
File diff suppressed because it is too large
Load Diff
1981
po/uz@cyrillic.po
1981
po/uz@cyrillic.po
File diff suppressed because it is too large
Load Diff
@@ -78,7 +78,7 @@ gnome_shell_cflags = \
|
||||
-DGNOME_SHELL_PKGLIBDIR=\"$(pkglibdir)\"
|
||||
|
||||
privlibdir = $(pkglibdir)
|
||||
privlib_LTLIBRARIES = libgnome-shell-js.la libgnome-shell-menu.la libgnome-shell.la
|
||||
privlib_LTLIBRARIES = libgnome-shell-menu.la libgnome-shell.la
|
||||
noinst_LTLIBRARIES += libgnome-shell-base.la
|
||||
|
||||
shell_built_sources = \
|
||||
@@ -200,7 +200,7 @@ gnome_shell_CPPFLAGS = \
|
||||
|
||||
# Here, and after, we repeat mutter and bluetooth libraries just for the rpath
|
||||
# The dependency is already pulled in by libtool
|
||||
gnome_shell_LDADD = libgnome-shell.la libgnome-shell-js.la $(GNOME_SHELL_LIBS) $(MUTTER_LIBS)
|
||||
gnome_shell_LDADD = libgnome-shell.la $(GNOME_SHELL_LIBS) $(MUTTER_LIBS)
|
||||
gnome_shell_LDFLAGS = -rpath $(MUTTER_TYPELIB_DIR)
|
||||
gnome_shell_DEPENDENCIES = libgnome-shell.la
|
||||
|
||||
@@ -212,7 +212,7 @@ nodist_gnome_shell_extension_prefs_SOURCES = \
|
||||
$(top_builddir)/js/js-resources.h \
|
||||
$(NULL)
|
||||
gnome_shell_extension_prefs_CPPFLAGS = $(gnome_shell_cflags)
|
||||
gnome_shell_extension_prefs_LDADD = libgnome-shell-js.la $(GNOME_SHELL_LIBS)
|
||||
gnome_shell_extension_prefs_LDADD = $(GNOME_SHELL_LIBS)
|
||||
gnome_shell_extension_prefs_LDFLAGS = -rpath $(MUTTER_TYPELIB_DIR)
|
||||
|
||||
if HAVE_NETWORKMANAGER
|
||||
@@ -226,30 +226,13 @@ nodist_gnome_shell_portal_helper_SOURCES = \
|
||||
$(top_builddir)/js/js-resources.h \
|
||||
$(NULL)
|
||||
gnome_shell_portal_helper_CPPFLAGS = $(gnome_shell_cflags)
|
||||
gnome_shell_portal_helper_LDADD = libgnome-shell-js.la $(GNOME_SHELL_LIBS)
|
||||
gnome_shell_portal_helper_LDADD = $(GNOME_SHELL_LIBS)
|
||||
gnome_shell_portal_helper_LDFLAGS = -rpath $(MUTTER_TYPELIB_DIR)
|
||||
|
||||
endif
|
||||
|
||||
########################################
|
||||
|
||||
libgnome_shell_js_la_SOURCES = \
|
||||
shell-js.h \
|
||||
shell-js.cpp \
|
||||
$(NULL)
|
||||
|
||||
libgnome_shell_js_la_LIBADD = \
|
||||
$(GNOME_SHELL_JS_LIBS) \
|
||||
$(NULL)
|
||||
|
||||
libgnome_shell_js_la_LDFLAGS = \
|
||||
-avoid-version
|
||||
|
||||
libgnome_shell_js_la_CPPFLAGS = \
|
||||
$(GNOME_SHELL_JS_CFLAGS)
|
||||
|
||||
########################################
|
||||
|
||||
shell_recorder_sources = \
|
||||
shell-recorder.c \
|
||||
shell-recorder.h
|
||||
@@ -366,13 +349,6 @@ Shell_0_1_gir_SCANNERFLAGS = \
|
||||
INTROSPECTION_GIRS += Shell-0.1.gir
|
||||
CLEANFILES += Shell-0.1.gir
|
||||
|
||||
ShellJS-0.1.gir: libgnome-shell-js.la
|
||||
ShellJS_0_1_gir_CFLAGS = $(libgnome_shell_la_CPPFLAGS) -I $(srcdir)
|
||||
ShellJS_0_1_gir_LIBS = libgnome-shell-js.la
|
||||
ShellJS_0_1_gir_FILES = $(libgnome_shell_js_la_SOURCES)
|
||||
INTROSPECTION_GIRS += ShellJS-0.1.gir
|
||||
CLEANFILES += ShellJS-0.1.gir
|
||||
|
||||
St-1.0.gir: libst-1.0.la
|
||||
St_1_0_gir_INCLUDES = Clutter-1.0 Gtk-3.0
|
||||
St_1_0_gir_CFLAGS = $(st_cflags) -DST_COMPILATION
|
||||
|
@@ -1,6 +1,7 @@
|
||||
[Desktop Entry]
|
||||
Name=Evolution Calendar
|
||||
Exec=evolution -c calendar
|
||||
# Translators: Do NOT translate or transliterate this text (this is an icon file name)!
|
||||
Icon=evolution
|
||||
NoDisplay=true
|
||||
Type=Application
|
||||
|
@@ -6,8 +6,6 @@
|
||||
#include <gjs/gjs.h>
|
||||
#include <glib/gi18n.h>
|
||||
|
||||
#include "shell-js.h"
|
||||
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
@@ -51,18 +49,3 @@ main (int argc, char *argv[])
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/* HACK:
|
||||
Add a dummy function that calls into libgnome-shell-js.so to ensure it's
|
||||
linked to /usr/bin/gnome-shell-extension-prefs even when linking with
|
||||
--as-needed. This function is never actually called.
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=670477
|
||||
*/
|
||||
void _shell_link_to_shell_js (void);
|
||||
|
||||
void
|
||||
_shell_link_to_shell_js (void)
|
||||
{
|
||||
shell_js_add_extension_importer (NULL, NULL, NULL, NULL);
|
||||
}
|
||||
|
15
src/main.c
15
src/main.c
@@ -25,7 +25,6 @@
|
||||
|
||||
#include "shell-global.h"
|
||||
#include "shell-global-private.h"
|
||||
#include "shell-js.h"
|
||||
#include "shell-perf-log.h"
|
||||
#include "st.h"
|
||||
|
||||
@@ -480,17 +479,3 @@ main (int argc, char **argv)
|
||||
|
||||
return ecode;
|
||||
}
|
||||
|
||||
/* HACK:
|
||||
Add a dummy function that calls into libgnome-shell-js.so to ensure it's
|
||||
linked to /usr/bin/gnome-shell even when linking with --as-needed.
|
||||
This function is never actually called.
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=670477
|
||||
*/
|
||||
void _shell_link_to_shell_js (void);
|
||||
|
||||
void
|
||||
_shell_link_to_shell_js (void)
|
||||
{
|
||||
shell_js_add_extension_importer (NULL, NULL, NULL, NULL);
|
||||
}
|
||||
|
@@ -277,6 +277,7 @@ shell_global_init (ShellGlobal *global)
|
||||
XDisplayName (NULL));
|
||||
(void) g_mkdir_with_parents (path, 0700);
|
||||
global->runtime_state_path = g_file_new_for_path (path);
|
||||
g_free (path);
|
||||
|
||||
global->settings = g_settings_new ("org.gnome.shell");
|
||||
|
||||
|
@@ -1,77 +0,0 @@
|
||||
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include "shell-js.h"
|
||||
|
||||
#include <gio/gio.h>
|
||||
#include <gjs/gjs.h>
|
||||
#include <gjs/gjs-module.h>
|
||||
|
||||
/**
|
||||
* shell_js_add_extension_importer:
|
||||
* @target_object_script: JavaScript code evaluating to a target object
|
||||
* @target_property: Name of property to use for importer
|
||||
* @directory: Source directory:
|
||||
* @error: A #GError
|
||||
*
|
||||
* This function sets a property named @target_property on the object
|
||||
* resulting from the evaluation of @target_object_script code, which
|
||||
* acts as a GJS importer for directory @directory.
|
||||
*
|
||||
* Returns: %TRUE on success
|
||||
*/
|
||||
gboolean
|
||||
shell_js_add_extension_importer (const char *target_object_script,
|
||||
const char *target_property,
|
||||
const char *directory,
|
||||
GError **error)
|
||||
{
|
||||
jsval target_object;
|
||||
GList *contexts;
|
||||
JSContext *context;
|
||||
char *search_path[2] = { 0, 0 };
|
||||
gboolean ret = FALSE;
|
||||
|
||||
/* Take the first GjsContext from all of them --
|
||||
* we should only ever have one context, so this
|
||||
* should be alright. */
|
||||
contexts = gjs_context_get_all ();
|
||||
context = (JSContext*) gjs_context_get_native_context ((GjsContext*)contexts->data);
|
||||
g_list_free_full (contexts, g_object_unref);
|
||||
|
||||
JS_BeginRequest (context);
|
||||
|
||||
/* This is a bit of a hack; ideally we'd be able to pass our target
|
||||
* object directly into this function, but introspection doesn't
|
||||
* support that at the moment. Instead evaluate a string to get it. */
|
||||
if (!JS_EvaluateScript(context,
|
||||
JS_GetGlobalObject(context),
|
||||
target_object_script,
|
||||
strlen (target_object_script),
|
||||
"<target_object_script>",
|
||||
0,
|
||||
&target_object))
|
||||
{
|
||||
gjs_log_exception(context);
|
||||
g_set_error(error,
|
||||
G_IO_ERROR,
|
||||
G_IO_ERROR_FAILED,
|
||||
"Unable to import %s", target_object_script);
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (!JSVAL_IS_OBJECT (target_object))
|
||||
{
|
||||
g_error ("shell_js_add_extension_importer: invalid target object");
|
||||
goto out;
|
||||
}
|
||||
|
||||
search_path[0] = (char*)directory;
|
||||
gjs_define_importer (context, JSVAL_TO_OBJECT (target_object), target_property, (const char **)search_path, FALSE);
|
||||
ret = TRUE;
|
||||
|
||||
out:
|
||||
JS_EndRequest (context);
|
||||
return ret;
|
||||
}
|
@@ -1,16 +0,0 @@
|
||||
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
|
||||
#ifndef __SHELL_JS_H__
|
||||
#define __SHELL_JS_H__
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
gboolean shell_js_add_extension_importer (const char *target_object_script,
|
||||
const char *target_property,
|
||||
const char *directory,
|
||||
GError **error);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __SHELL_JS_H__ */
|
@@ -22,6 +22,7 @@
|
||||
#include "shell-global.h"
|
||||
#include "shell-recorder-src.h"
|
||||
#include "shell-recorder.h"
|
||||
#include "shell-util.h"
|
||||
|
||||
#define A11Y_APPS_SCHEMA "org.gnome.desktop.a11y.applications"
|
||||
#define MAGNIFIER_ACTIVE_KEY "screen-magnifier-enabled"
|
||||
@@ -437,17 +438,21 @@ recorder_record_frame (ShellRecorder *recorder,
|
||||
if (n_captures == 0)
|
||||
return;
|
||||
|
||||
/*
|
||||
* TODO: Deal with each capture region separately, instead of dropping
|
||||
* anything except the first one.
|
||||
*/
|
||||
if (n_captures == 1)
|
||||
image = cairo_surface_reference (captures[0].image);
|
||||
else
|
||||
image = shell_util_composite_capture_images (captures,
|
||||
n_captures,
|
||||
recorder->area.x,
|
||||
recorder->area.y,
|
||||
recorder->area.width,
|
||||
recorder->area.height);
|
||||
|
||||
image = captures[0].image;
|
||||
data = cairo_image_surface_get_data (image);
|
||||
size = captures[0].rect.width * captures[0].rect.height * 4;
|
||||
size = (cairo_image_surface_get_height (image) *
|
||||
cairo_image_surface_get_stride (image));
|
||||
|
||||
/* TODO: Capture more than the first framebuffer. */
|
||||
for (i = 1; i < n_captures; i++)
|
||||
for (i = 0; i < n_captures; i++)
|
||||
cairo_surface_destroy (captures[i].image);
|
||||
g_free (captures);
|
||||
|
||||
@@ -1075,7 +1080,7 @@ recorder_open_outfile (ShellRecorder *recorder,
|
||||
|
||||
if (outfile == -1 && errno != EEXIST)
|
||||
{
|
||||
g_warning ("Cannot open output file '%s': %s", filename->str, g_strerror (errno));
|
||||
g_warning ("Cannot open output file '%s': %s", path, g_strerror (errno));
|
||||
g_string_free (filename, TRUE);
|
||||
g_free (path);
|
||||
goto out;
|
||||
|
@@ -10,6 +10,7 @@
|
||||
|
||||
#include "shell-global.h"
|
||||
#include "shell-screenshot.h"
|
||||
#include "shell-util.h"
|
||||
|
||||
#define A11Y_APPS_SCHEMA "org.gnome.desktop.a11y.applications"
|
||||
#define MAGNIFIER_ACTIVE_KEY "screen-magnifier-enabled"
|
||||
@@ -233,14 +234,15 @@ do_grab_screenshot (ShellScreenshot *screenshot,
|
||||
|
||||
if (n_captures == 0)
|
||||
return;
|
||||
else if (n_captures == 1)
|
||||
priv->image = cairo_surface_reference (captures[0].image);
|
||||
else
|
||||
priv->image = shell_util_composite_capture_images (captures,
|
||||
n_captures,
|
||||
x, y,
|
||||
width, height);
|
||||
|
||||
/*
|
||||
* TODO: Deal with each capture region separately, instead of dropping
|
||||
* anything except the first one.
|
||||
*/
|
||||
priv->image = captures[0].image;
|
||||
|
||||
for (i = 1; i < n_captures; i++)
|
||||
for (i = 0; i < n_captures; i++)
|
||||
cairo_surface_destroy (captures[i].image);
|
||||
|
||||
g_free (captures);
|
||||
@@ -261,6 +263,10 @@ _draw_cursor_image (MetaCursorTracker *tracker,
|
||||
int x, y;
|
||||
int xhot, yhot;
|
||||
|
||||
texture = meta_cursor_tracker_get_sprite (tracker);
|
||||
if (!texture)
|
||||
return;
|
||||
|
||||
screenshot_region = cairo_region_create_rectangle (&area);
|
||||
meta_cursor_tracker_get_pointer (tracker, &x, &y, NULL);
|
||||
|
||||
@@ -270,7 +276,6 @@ _draw_cursor_image (MetaCursorTracker *tracker,
|
||||
return;
|
||||
}
|
||||
|
||||
texture = meta_cursor_tracker_get_sprite (tracker);
|
||||
meta_cursor_tracker_get_hot (tracker, &xhot, &yhot);
|
||||
width = cogl_texture_get_width (texture);
|
||||
height = cogl_texture_get_height (texture);
|
||||
|
@@ -204,6 +204,12 @@ shell_tray_icon_click (ShellTrayIcon *icon,
|
||||
gdk_error_trap_push ();
|
||||
|
||||
remote_window = gtk_socket_get_plug_window (GTK_SOCKET (icon->priv->socket));
|
||||
if (remote_window == NULL)
|
||||
{
|
||||
g_warning ("shell tray: plug window is gone");
|
||||
gdk_error_trap_pop_ignored ();
|
||||
return;
|
||||
}
|
||||
xwindow = GDK_WINDOW_XID (remote_window);
|
||||
xdisplay = GDK_WINDOW_XDISPLAY (remote_window);
|
||||
screen = gdk_window_get_screen (remote_window);
|
||||
|
@@ -446,3 +446,49 @@ shell_util_get_content_for_window_actor (MetaWindowActor *window_actor,
|
||||
|
||||
return content;
|
||||
}
|
||||
|
||||
cairo_surface_t *
|
||||
shell_util_composite_capture_images (ClutterCapture *captures,
|
||||
int n_captures,
|
||||
int x,
|
||||
int y,
|
||||
int width,
|
||||
int height)
|
||||
{
|
||||
int i;
|
||||
cairo_format_t format;
|
||||
cairo_surface_t *image;
|
||||
cairo_t *cr;
|
||||
|
||||
format = cairo_image_surface_get_format (captures[0].image);
|
||||
image = cairo_image_surface_create (format, width, height);
|
||||
|
||||
cr = cairo_create (image);
|
||||
|
||||
for (i = 0; i < n_captures; i++)
|
||||
{
|
||||
ClutterCapture *capture = &captures[i];
|
||||
double capture_scale = 1.0;
|
||||
|
||||
/*
|
||||
* Ignore capture regions with scale other than 1 for now; mutter can't
|
||||
* produce them yet, so there is no way to test them.
|
||||
*/
|
||||
cairo_surface_get_device_scale (capture->image, &capture_scale, NULL);
|
||||
if ((int) capture_scale != 1)
|
||||
continue;
|
||||
|
||||
cairo_save (cr);
|
||||
|
||||
cairo_translate (cr,
|
||||
capture->rect.x - x,
|
||||
capture->rect.y - y);
|
||||
cairo_set_source_surface (cr, capture->image, 0, 0);
|
||||
cairo_paint (cr);
|
||||
|
||||
cairo_restore (cr);
|
||||
}
|
||||
cairo_destroy (cr);
|
||||
|
||||
return image;
|
||||
}
|
||||
|
@@ -51,6 +51,13 @@ gboolean shell_util_need_background_refresh (void);
|
||||
ClutterContent * shell_util_get_content_for_window_actor (MetaWindowActor *window_actor,
|
||||
MetaRectangle *window_rect);
|
||||
|
||||
cairo_surface_t * shell_util_composite_capture_images (ClutterCapture *captures,
|
||||
int n_captures,
|
||||
int x,
|
||||
int y,
|
||||
int width,
|
||||
int height);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __SHELL_UTIL_H__ */
|
||||
|
Reference in New Issue
Block a user