Compare commits
23 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
29c5131ee1 | ||
|
|
8ba229f0bb | ||
|
|
2e932eb688 | ||
|
|
c08aff38d2 | ||
|
|
721d7b271a | ||
|
|
5049ccdc99 | ||
|
|
0857b041ee | ||
|
|
a5a3523df8 | ||
|
|
06acd9ff25 | ||
|
|
1a1d45d9e4 | ||
|
|
1d3775b3d1 | ||
|
|
15c83db793 | ||
|
|
cc021589b8 | ||
|
|
5e316d37cb | ||
|
|
28dbb47937 | ||
|
|
619de9d5ee | ||
|
|
561b8aeb03 | ||
|
|
4286fd1bcc | ||
|
|
3bb0897bc1 | ||
|
|
12eedcf6f7 | ||
|
|
08d382facc | ||
|
|
96a1de92db | ||
|
|
cc2f46b837 |
48
NEWS
48
NEWS
@@ -1,3 +1,51 @@
|
|||||||
|
40.7
|
||||||
|
====
|
||||||
|
* Bump version
|
||||||
|
|
||||||
|
40.6
|
||||||
|
====
|
||||||
|
* window-list: Update window tracking to avoid missing icons [Florian; #372]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Florian Müllner
|
||||||
|
|
||||||
|
40.5
|
||||||
|
====
|
||||||
|
* native-window-placement: Fix distorted layout in app grid [Sebastian; !189]
|
||||||
|
* window-list: Fix on-screen keyboard [Florian; !199]
|
||||||
|
* Misc. bug fixes [Neal; !195]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Neal Gompa, Sebastian Keller, Florian Müllner
|
||||||
|
|
||||||
|
40.4
|
||||||
|
====
|
||||||
|
* drive-menu: Fix indicator visibility [Florian; !176]
|
||||||
|
* Use distinct gettext domain for e.g.o uploads [Florian; #335]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Florian Müllner
|
||||||
|
|
||||||
|
|
||||||
|
40.3
|
||||||
|
====
|
||||||
|
* drive-menu: Improve detection of network mounts [Florian; !27]
|
||||||
|
* Misc. bug fixes [Florian; #340]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Florian Müllner
|
||||||
|
|
||||||
|
40.2
|
||||||
|
====
|
||||||
|
* window-list: Extend reactive area of minimap to screen edges [Adam; !171]
|
||||||
|
* Misc. bug fixes [Florian; !172]
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Adam Goode, Florian Müllner
|
||||||
|
|
||||||
|
Translators:
|
||||||
|
Hugo Carvalho [pt], Juliano de Souza Camargo [pt]
|
||||||
|
|
||||||
40.1
|
40.1
|
||||||
====
|
====
|
||||||
* Disable welcome dialog in classic session [Florian; !169]
|
* Disable welcome dialog in classic session [Florian; !169]
|
||||||
|
|||||||
@@ -5,3 +5,4 @@ Exec=env GNOME_SHELL_SESSION_MODE=classic gnome-session
|
|||||||
TryExec=gnome-session
|
TryExec=gnome-session
|
||||||
Type=Application
|
Type=Application
|
||||||
DesktopNames=GNOME-Classic;GNOME;
|
DesktopNames=GNOME-Classic;GNOME;
|
||||||
|
X-GDM-SessionRegisters=true
|
||||||
|
|||||||
@@ -14,13 +14,16 @@ mkdir $srcdir/zip-files
|
|||||||
|
|
||||||
extensiondir=$installdir/share/gnome-shell/extensions
|
extensiondir=$installdir/share/gnome-shell/extensions
|
||||||
schemadir=$installdir/share/glib-2.0/schemas
|
schemadir=$installdir/share/glib-2.0/schemas
|
||||||
localedir=$installdir/share/locale
|
|
||||||
|
|
||||||
for f in $extensiondir/*; do
|
for f in $extensiondir/*; do
|
||||||
name=`basename ${f%%@*}`
|
name=`basename ${f%%@*}`
|
||||||
uuid=$name@gnome-shell-extensions.gcampax.github.com
|
uuid=$name@gnome-shell-extensions.gcampax.github.com
|
||||||
schema=$schemadir/org.gnome.shell.extensions.$name.gschema.xml
|
schema=$schemadir/org.gnome.shell.extensions.$name.gschema.xml
|
||||||
|
|
||||||
|
olddomain=gnome-shell-extensions
|
||||||
|
newdomain=gnome-shell-extension-$name
|
||||||
|
sed -i "/gettext-domain/ s:$olddomain:$newdomain:" $f/metadata.json
|
||||||
|
|
||||||
xgettext --from-code=UTF-8 --output-dir=$builddir --output=$name.pot $f/*.js
|
xgettext --from-code=UTF-8 --output-dir=$builddir --output=$name.pot $f/*.js
|
||||||
|
|
||||||
if [ -f $builddir/$name.pot ]; then
|
if [ -f $builddir/$name.pot ]; then
|
||||||
|
|||||||
0
extensions/.lock
Normal file
0
extensions/.lock
Normal file
@@ -12,7 +12,8 @@ const Main = imports.ui.main;
|
|||||||
const PanelMenu = imports.ui.panelMenu;
|
const PanelMenu = imports.ui.panelMenu;
|
||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
const Me = ExtensionUtils.getCurrentExtension();
|
||||||
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
const _ = Gettext.gettext;
|
const _ = Gettext.gettext;
|
||||||
|
|
||||||
const appSys = Shell.AppSystem.get_default();
|
const appSys = Shell.AppSystem.get_default();
|
||||||
|
|||||||
@@ -4,10 +4,11 @@
|
|||||||
|
|
||||||
const { Gio, GLib, GObject, Gtk, Pango } = imports.gi;
|
const { Gio, GLib, GObject, Gtk, Pango } = imports.gi;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
|
||||||
const _ = Gettext.gettext;
|
|
||||||
|
|
||||||
const ExtensionUtils = imports.misc.extensionUtils;
|
const ExtensionUtils = imports.misc.extensionUtils;
|
||||||
|
const Me = ExtensionUtils.getCurrentExtension();
|
||||||
|
|
||||||
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
|
const _ = Gettext.gettext;
|
||||||
|
|
||||||
const SETTINGS_KEY = 'application-list';
|
const SETTINGS_KEY = 'application-list';
|
||||||
|
|
||||||
|
|||||||
@@ -2,15 +2,16 @@
|
|||||||
// Drive menu extension
|
// Drive menu extension
|
||||||
const { Clutter, Gio, GObject, Shell, St } = imports.gi;
|
const { Clutter, Gio, GObject, Shell, St } = imports.gi;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
|
||||||
const _ = Gettext.gettext;
|
|
||||||
|
|
||||||
const ExtensionUtils = imports.misc.extensionUtils;
|
const ExtensionUtils = imports.misc.extensionUtils;
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
const PanelMenu = imports.ui.panelMenu;
|
const PanelMenu = imports.ui.panelMenu;
|
||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
const ShellMountOperation = imports.ui.shellMountOperation;
|
const ShellMountOperation = imports.ui.shellMountOperation;
|
||||||
|
|
||||||
|
const Me = ExtensionUtils.getCurrentExtension();
|
||||||
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
|
const _ = Gettext.gettext;
|
||||||
|
|
||||||
var MountMenuItem = GObject.registerClass(
|
var MountMenuItem = GObject.registerClass(
|
||||||
class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
|
class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
|
||||||
_init(mount) {
|
_init(mount) {
|
||||||
@@ -41,6 +42,8 @@ class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
|
|||||||
ejectButton.connect('clicked', this._eject.bind(this));
|
ejectButton.connect('clicked', this._eject.bind(this));
|
||||||
this.add(ejectButton);
|
this.add(ejectButton);
|
||||||
|
|
||||||
|
this.hide();
|
||||||
|
|
||||||
this._changedId = mount.connect('changed', this._syncVisibility.bind(this));
|
this._changedId = mount.connect('changed', this._syncVisibility.bind(this));
|
||||||
this._syncVisibility();
|
this._syncVisibility();
|
||||||
}
|
}
|
||||||
@@ -54,7 +57,21 @@ class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
|
|||||||
super.destroy();
|
super.destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
_isInteresting() {
|
_fsIsRemote(root) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
const attr = Gio.FILE_ATTRIBUTE_FILESYSTEM_REMOTE;
|
||||||
|
root.query_filesystem_info_async(attr, null, (o, res) => {
|
||||||
|
try {
|
||||||
|
const info = root.query_filesystem_info_finish(res);
|
||||||
|
resolve(!info.get_attribute_boolean(attr));
|
||||||
|
} catch (e) {
|
||||||
|
reject(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async _isInteresting() {
|
||||||
if (!this.mount.can_eject() && !this.mount.can_unmount())
|
if (!this.mount.can_eject() && !this.mount.can_unmount())
|
||||||
return false;
|
return false;
|
||||||
if (this.mount.is_shadowed())
|
if (this.mount.is_shadowed())
|
||||||
@@ -62,17 +79,23 @@ class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
|
|||||||
|
|
||||||
let volume = this.mount.get_volume();
|
let volume = this.mount.get_volume();
|
||||||
|
|
||||||
if (!volume) {
|
if (volume)
|
||||||
// probably a GDaemonMount, could be network or
|
return volume.get_identifier('class') !== 'network';
|
||||||
// local, but we can't tell; assume it's local for now
|
|
||||||
return true;
|
const root = this.mount.get_root();
|
||||||
|
|
||||||
|
try {
|
||||||
|
return await this._fsIsRemote(root);
|
||||||
|
} catch (e) {
|
||||||
|
log(`Failed to query filesystem: ${e.message}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
return volume.get_identifier('class') !== 'network';
|
// Hack, fall back to looking at GType
|
||||||
|
return Gio._LocalFilePrototype.isPrototypeOf(root);
|
||||||
}
|
}
|
||||||
|
|
||||||
_syncVisibility() {
|
async _syncVisibility() {
|
||||||
this.visible = this._isInteresting();
|
this.visible = await this._isInteresting();
|
||||||
}
|
}
|
||||||
|
|
||||||
_eject() {
|
_eject() {
|
||||||
@@ -135,10 +158,8 @@ class DriveMenu extends PanelMenu.Button {
|
|||||||
this.add_child(icon);
|
this.add_child(icon);
|
||||||
|
|
||||||
this._monitor = Gio.VolumeMonitor.get();
|
this._monitor = Gio.VolumeMonitor.get();
|
||||||
this._addedId = this._monitor.connect('mount-added', (monitor, mount) => {
|
this._addedId = this._monitor.connect('mount-added',
|
||||||
this._addMount(mount);
|
(monitor, mount) => this._addMount(mount));
|
||||||
this._updateMenuVisibility();
|
|
||||||
});
|
|
||||||
this._removedId = this._monitor.connect('mount-removed', (monitor, mount) => {
|
this._removedId = this._monitor.connect('mount-removed', (monitor, mount) => {
|
||||||
this._removeMount(mount);
|
this._removeMount(mount);
|
||||||
this._updateMenuVisibility();
|
this._updateMenuVisibility();
|
||||||
@@ -169,6 +190,8 @@ class DriveMenu extends PanelMenu.Button {
|
|||||||
let item = new MountMenuItem(mount);
|
let item = new MountMenuItem(mount);
|
||||||
this._mounts.unshift(item);
|
this._mounts.unshift(item);
|
||||||
this.menu.addMenuItem(item, 0);
|
this.menu.addMenuItem(item, 0);
|
||||||
|
|
||||||
|
item.connect('notify::visible', () => this._updateMenuVisibility());
|
||||||
}
|
}
|
||||||
|
|
||||||
_removeMount(mount) {
|
_removeMount(mount) {
|
||||||
|
|||||||
@@ -1,9 +1 @@
|
|||||||
.window-caption {
|
/* This extensions requires no special styling */
|
||||||
-shell-caption-spacing: 13px; /* current caption height is 26px => set it to half of it. TODO: better solution needed */
|
|
||||||
}
|
|
||||||
|
|
||||||
.window-picker {
|
|
||||||
-horizontal-spacing: 32px;
|
|
||||||
-vertical-spacing: 32px;
|
|
||||||
padding: 64px 32px;
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -8,11 +8,12 @@ const Main = imports.ui.main;
|
|||||||
const PanelMenu = imports.ui.panelMenu;
|
const PanelMenu = imports.ui.panelMenu;
|
||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
const Me = ExtensionUtils.getCurrentExtension();
|
||||||
|
|
||||||
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
const _ = Gettext.gettext;
|
const _ = Gettext.gettext;
|
||||||
const N_ = x => x;
|
const N_ = x => x;
|
||||||
|
|
||||||
const Me = ExtensionUtils.getCurrentExtension();
|
|
||||||
const PlaceDisplay = Me.imports.placeDisplay;
|
const PlaceDisplay = Me.imports.placeDisplay;
|
||||||
|
|
||||||
const PLACE_ICON_SIZE = 16;
|
const PLACE_ICON_SIZE = 16;
|
||||||
|
|||||||
@@ -3,10 +3,13 @@
|
|||||||
const { Gio, GLib, Shell } = imports.gi;
|
const { Gio, GLib, Shell } = imports.gi;
|
||||||
const Signals = imports.signals;
|
const Signals = imports.signals;
|
||||||
|
|
||||||
|
const ExtensionUtils = imports.misc.extensionUtils;
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
const ShellMountOperation = imports.ui.shellMountOperation;
|
const ShellMountOperation = imports.ui.shellMountOperation;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
const Me = ExtensionUtils.getCurrentExtension();
|
||||||
|
|
||||||
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
const _ = Gettext.gettext;
|
const _ = Gettext.gettext;
|
||||||
const N_ = x => x;
|
const N_ = x => x;
|
||||||
|
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ const Me = ExtensionUtils.getCurrentExtension();
|
|||||||
const { WindowPicker, WindowPickerToggle } = Me.imports.windowPicker;
|
const { WindowPicker, WindowPickerToggle } = Me.imports.windowPicker;
|
||||||
const { WorkspaceIndicator } = Me.imports.workspaceIndicator;
|
const { WorkspaceIndicator } = Me.imports.workspaceIndicator;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
const _ = Gettext.gettext;
|
const _ = Gettext.gettext;
|
||||||
|
|
||||||
const ICON_TEXTURE_SIZE = 24;
|
const ICON_TEXTURE_SIZE = 24;
|
||||||
@@ -761,10 +761,9 @@ class WindowList extends St.Widget {
|
|||||||
|
|
||||||
let workspaceManager = global.workspace_manager;
|
let workspaceManager = global.workspace_manager;
|
||||||
|
|
||||||
this._workspaceSignals = new Map();
|
|
||||||
this._nWorkspacesChangedId = workspaceManager.connect(
|
this._nWorkspacesChangedId = workspaceManager.connect(
|
||||||
'notify::n-workspaces', this._onWorkspacesChanged.bind(this));
|
'notify::n-workspaces', this._updateWorkspaceIndicatorVisibility.bind(this));
|
||||||
this._onWorkspacesChanged();
|
this._updateWorkspaceIndicatorVisibility();
|
||||||
|
|
||||||
this._switchWorkspaceId = global.window_manager.connect(
|
this._switchWorkspaceId = global.window_manager.connect(
|
||||||
'switch-workspace', this._checkGrouping.bind(this));
|
'switch-workspace', this._checkGrouping.bind(this));
|
||||||
@@ -784,6 +783,10 @@ class WindowList extends St.Widget {
|
|||||||
this._updateKeyboardAnchor();
|
this._updateKeyboardAnchor();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
this._windowSignals = new Map();
|
||||||
|
this._windowCreatedId = global.display.connect(
|
||||||
|
'window-created', (dsp, win) => this._addWindow(win));
|
||||||
|
|
||||||
this._dragBeginId = Main.xdndHandler.connect('drag-begin',
|
this._dragBeginId = Main.xdndHandler.connect('drag-begin',
|
||||||
this._monitorDrag.bind(this));
|
this._monitorDrag.bind(this));
|
||||||
this._dragEndId = Main.xdndHandler.connect('drag-end',
|
this._dragEndId = Main.xdndHandler.connect('drag-end',
|
||||||
@@ -906,7 +909,7 @@ class WindowList extends St.Widget {
|
|||||||
w2.metaWindow.get_stable_sequence();
|
w2.metaWindow.get_stable_sequence();
|
||||||
});
|
});
|
||||||
for (let i = 0; i < windows.length; i++)
|
for (let i = 0; i < windows.length; i++)
|
||||||
this._onWindowAdded(null, windows[i].metaWindow);
|
this._addWindow(windows[i].metaWindow);
|
||||||
} else {
|
} else {
|
||||||
let apps = this._appSystem.get_running().sort((a1, a2) => {
|
let apps = this._appSystem.get_running().sort((a1, a2) => {
|
||||||
return _getAppStableSequence(a1) -
|
return _getAppStableSequence(a1) -
|
||||||
@@ -918,11 +921,8 @@ class WindowList extends St.Widget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_updateKeyboardAnchor() {
|
_updateKeyboardAnchor() {
|
||||||
if (!Main.keyboard.keyboardActor)
|
const translationY = Main.overview.visible ? 0 : this.height;
|
||||||
return;
|
Main.layoutManager.keyboardBox.translation_y = -translationY;
|
||||||
|
|
||||||
let translationY = Main.overview.visible ? 0 : this.height;
|
|
||||||
Main.keyboard.keyboardActor.translation_y = -translationY;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_onAppStateChanged(appSys, app) {
|
_onAppStateChanged(appSys, app) {
|
||||||
@@ -949,7 +949,7 @@ class WindowList extends St.Widget {
|
|||||||
child.destroy();
|
child.destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
_onWindowAdded(ws, win) {
|
_addWindow(win) {
|
||||||
if (!this._grouped)
|
if (!this._grouped)
|
||||||
this._checkGrouping();
|
this._checkGrouping();
|
||||||
|
|
||||||
@@ -960,21 +960,26 @@ class WindowList extends St.Widget {
|
|||||||
if (children.find(c => c.metaWindow === win))
|
if (children.find(c => c.metaWindow === win))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
this._windowSignals.set(
|
||||||
|
win, win.connect('unmanaged', () => this._removeWindow(win)));
|
||||||
|
|
||||||
let button = new WindowButton(win, this._perMonitor, this._monitor.index);
|
let button = new WindowButton(win, this._perMonitor, this._monitor.index);
|
||||||
this._settings.bind('display-all-workspaces',
|
this._settings.bind('display-all-workspaces',
|
||||||
button, 'ignore-workspace', Gio.SettingsBindFlags.GET);
|
button, 'ignore-workspace', Gio.SettingsBindFlags.GET);
|
||||||
this._windowList.add_child(button);
|
this._windowList.add_child(button);
|
||||||
}
|
}
|
||||||
|
|
||||||
_onWindowRemoved(ws, win) {
|
_removeWindow(win) {
|
||||||
if (this._grouped)
|
if (this._grouped)
|
||||||
this._checkGrouping();
|
this._checkGrouping();
|
||||||
|
|
||||||
if (this._grouped)
|
if (this._grouped)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (win.get_compositor_private())
|
const id = this._windowSignals.get(win);
|
||||||
return; // not actually removed, just moved to another workspace
|
if (id)
|
||||||
|
win.disconnect(id);
|
||||||
|
this._windowSignals.delete(id);
|
||||||
|
|
||||||
let children = this._windowList.get_children();
|
let children = this._windowList.get_children();
|
||||||
let child = children.find(c => c.metaWindow === win);
|
let child = children.find(c => c.metaWindow === win);
|
||||||
@@ -982,39 +987,6 @@ class WindowList extends St.Widget {
|
|||||||
child.destroy();
|
child.destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
_onWorkspacesChanged() {
|
|
||||||
let workspaceManager = global.workspace_manager;
|
|
||||||
let numWorkspaces = workspaceManager.n_workspaces;
|
|
||||||
|
|
||||||
for (let i = 0; i < numWorkspaces; i++) {
|
|
||||||
let workspace = workspaceManager.get_workspace_by_index(i);
|
|
||||||
if (this._workspaceSignals.has(workspace))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
let signals = { windowAddedId: 0, windowRemovedId: 0 };
|
|
||||||
signals._windowAddedId = workspace.connect_after(
|
|
||||||
'window-added', this._onWindowAdded.bind(this));
|
|
||||||
signals._windowRemovedId = workspace.connect(
|
|
||||||
'window-removed', this._onWindowRemoved.bind(this));
|
|
||||||
this._workspaceSignals.set(workspace, signals);
|
|
||||||
}
|
|
||||||
|
|
||||||
this._updateWorkspaceIndicatorVisibility();
|
|
||||||
}
|
|
||||||
|
|
||||||
_disconnectWorkspaceSignals() {
|
|
||||||
let workspaceManager = global.workspace_manager;
|
|
||||||
let numWorkspaces = workspaceManager.n_workspaces;
|
|
||||||
|
|
||||||
for (let i = 0; i < numWorkspaces; i++) {
|
|
||||||
let workspace = workspaceManager.get_workspace_by_index(i);
|
|
||||||
let signals = this._workspaceSignals.get(workspace);
|
|
||||||
this._workspaceSignals.delete(workspace);
|
|
||||||
workspace.disconnect(signals._windowAddedId);
|
|
||||||
workspace.disconnect(signals._windowRemovedId);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
_monitorDrag() {
|
_monitorDrag() {
|
||||||
DND.addDragMonitor(this._dragMonitor);
|
DND.addDragMonitor(this._dragMonitor);
|
||||||
}
|
}
|
||||||
@@ -1078,18 +1050,20 @@ class WindowList extends St.Widget {
|
|||||||
Main.keyboard._bottomDragAction.disconnect(this._keyboardVisiblechangedId);
|
Main.keyboard._bottomDragAction.disconnect(this._keyboardVisiblechangedId);
|
||||||
this._keyboardVisiblechangedId = 0;
|
this._keyboardVisiblechangedId = 0;
|
||||||
|
|
||||||
this._disconnectWorkspaceSignals();
|
|
||||||
global.workspace_manager.disconnect(this._nWorkspacesChangedId);
|
global.workspace_manager.disconnect(this._nWorkspacesChangedId);
|
||||||
this._nWorkspacesChangedId = 0;
|
this._nWorkspacesChangedId = 0;
|
||||||
|
|
||||||
global.window_manager.disconnect(this._switchWorkspaceId);
|
global.window_manager.disconnect(this._switchWorkspaceId);
|
||||||
this._switchWorkspaceId = 0;
|
this._switchWorkspaceId = 0;
|
||||||
|
|
||||||
|
this._windowSignals.forEach((id, win) => win.disconnect(id));
|
||||||
|
this._windowSignals.clear();
|
||||||
|
|
||||||
Main.overview.disconnect(this._overviewShowingId);
|
Main.overview.disconnect(this._overviewShowingId);
|
||||||
Main.overview.disconnect(this._overviewHidingId);
|
Main.overview.disconnect(this._overviewHidingId);
|
||||||
|
|
||||||
global.display.disconnect(this._fullscreenChangedId);
|
global.display.disconnect(this._fullscreenChangedId);
|
||||||
|
global.display.disconnect(this._windowCreatedId);
|
||||||
|
|
||||||
this._stopMonitoringDrag();
|
this._stopMonitoringDrag();
|
||||||
Main.xdndHandler.disconnect(this._dragBeginId);
|
Main.xdndHandler.disconnect(this._dragBeginId);
|
||||||
@@ -1105,6 +1079,8 @@ class WindowList extends St.Widget {
|
|||||||
|
|
||||||
class Extension {
|
class Extension {
|
||||||
constructor() {
|
constructor() {
|
||||||
|
ExtensionUtils.initTranslations();
|
||||||
|
|
||||||
this._windowLists = null;
|
this._windowLists = null;
|
||||||
this._hideOverviewOrig = Main.overview.hide;
|
this._hideOverviewOrig = Main.overview.hide;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,10 +3,11 @@
|
|||||||
|
|
||||||
const { Gio, GObject, Gtk } = imports.gi;
|
const { Gio, GObject, Gtk } = imports.gi;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
|
||||||
const _ = Gettext.gettext;
|
|
||||||
|
|
||||||
const ExtensionUtils = imports.misc.extensionUtils;
|
const ExtensionUtils = imports.misc.extensionUtils;
|
||||||
|
const Me = ExtensionUtils.getCurrentExtension();
|
||||||
|
|
||||||
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
|
const _ = Gettext.gettext;
|
||||||
|
|
||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
|
|||||||
@@ -82,7 +82,7 @@
|
|||||||
background-color: rgba(200, 200, 200, .3);
|
background-color: rgba(200, 200, 200, .3);
|
||||||
border: 1px solid #cccccc;
|
border: 1px solid #cccccc;
|
||||||
padding: 0 3px;
|
padding: 0 3px;
|
||||||
margin: 3px 0;
|
margin: 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.window-list-workspace-indicator .workspaces-box {
|
.window-list-workspace-indicator .workspaces-box {
|
||||||
|
|||||||
@@ -2,11 +2,14 @@
|
|||||||
const { Clutter, Gio, GObject, Meta, St } = imports.gi;
|
const { Clutter, Gio, GObject, Meta, St } = imports.gi;
|
||||||
|
|
||||||
const DND = imports.ui.dnd;
|
const DND = imports.ui.dnd;
|
||||||
|
const ExtensionUtils = imports.misc.extensionUtils;
|
||||||
const Main = imports.ui.main;
|
const Main = imports.ui.main;
|
||||||
const PanelMenu = imports.ui.panelMenu;
|
const PanelMenu = imports.ui.panelMenu;
|
||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
const Me = ExtensionUtils.getCurrentExtension();
|
||||||
|
|
||||||
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
const _ = Gettext.gettext;
|
const _ = Gettext.gettext;
|
||||||
|
|
||||||
const TOOLTIP_OFFSET = 6;
|
const TOOLTIP_OFFSET = 6;
|
||||||
@@ -249,6 +252,7 @@ class WorkspaceIndicator extends PanelMenu.Button {
|
|||||||
super._init(0.0, _('Workspace Indicator'), true);
|
super._init(0.0, _('Workspace Indicator'), true);
|
||||||
this.setMenu(new PopupMenu.PopupMenu(this, 0.0, St.Side.BOTTOM));
|
this.setMenu(new PopupMenu.PopupMenu(this, 0.0, St.Side.BOTTOM));
|
||||||
this.add_style_class_name('window-list-workspace-indicator');
|
this.add_style_class_name('window-list-workspace-indicator');
|
||||||
|
this.remove_style_class_name('panel-button');
|
||||||
this.menu.actor.remove_style_class_name('panel-menu');
|
this.menu.actor.remove_style_class_name('panel-menu');
|
||||||
|
|
||||||
let container = new St.Widget({
|
let container = new St.Widget({
|
||||||
|
|||||||
@@ -9,7 +9,9 @@ const Main = imports.ui.main;
|
|||||||
const PanelMenu = imports.ui.panelMenu;
|
const PanelMenu = imports.ui.panelMenu;
|
||||||
const PopupMenu = imports.ui.popupMenu;
|
const PopupMenu = imports.ui.popupMenu;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
const Me = ExtensionUtils.getCurrentExtension();
|
||||||
|
|
||||||
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
const _ = Gettext.gettext;
|
const _ = Gettext.gettext;
|
||||||
|
|
||||||
const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences';
|
const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences';
|
||||||
|
|||||||
@@ -3,12 +3,13 @@
|
|||||||
|
|
||||||
const { Gio, GLib, GObject, Gtk, Pango } = imports.gi;
|
const { Gio, GLib, GObject, Gtk, Pango } = imports.gi;
|
||||||
|
|
||||||
const Gettext = imports.gettext.domain('gnome-shell-extensions');
|
const ExtensionUtils = imports.misc.extensionUtils;
|
||||||
|
const Me = ExtensionUtils.getCurrentExtension();
|
||||||
|
|
||||||
|
const Gettext = imports.gettext.domain(Me.metadata['gettext-domain']);
|
||||||
const _ = Gettext.gettext;
|
const _ = Gettext.gettext;
|
||||||
const N_ = e => e;
|
const N_ = e => e;
|
||||||
|
|
||||||
const ExtensionUtils = imports.misc.extensionUtils;
|
|
||||||
|
|
||||||
const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences';
|
const WORKSPACE_SCHEMA = 'org.gnome.desktop.wm.preferences';
|
||||||
const WORKSPACE_KEY = 'workspace-names';
|
const WORKSPACE_KEY = 'workspace-names';
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
project('gnome-shell-extensions',
|
project('gnome-shell-extensions',
|
||||||
version: '40.1',
|
version: '40.7',
|
||||||
meson_version: '>= 0.44.0',
|
meson_version: '>= 0.44.0',
|
||||||
license: 'GPL2+'
|
license: 'GPL2+'
|
||||||
)
|
)
|
||||||
@@ -22,7 +22,7 @@ sessiondir = join_paths(datadir, 'gnome-session', 'sessions')
|
|||||||
xsessiondir = join_paths(datadir, 'xsessions')
|
xsessiondir = join_paths(datadir, 'xsessions')
|
||||||
|
|
||||||
ver_arr = meson.project_version().split('.')
|
ver_arr = meson.project_version().split('.')
|
||||||
shell_version = '@0@.0'.format(ver_arr[0])
|
shell_version = ver_arr[0]
|
||||||
|
|
||||||
uuid_suffix = '@gnome-shell-extensions.gcampax.github.com'
|
uuid_suffix = '@gnome-shell-extensions.gcampax.github.com'
|
||||||
|
|
||||||
|
|||||||
72
po/pt.po
72
po/pt.po
@@ -6,38 +6,45 @@
|
|||||||
# António Lima <amrlima@gmail.com>, 2013.
|
# António Lima <amrlima@gmail.com>, 2013.
|
||||||
# Pedro Albuquerque <palbuquerque73@gmail.com>, 2014.
|
# Pedro Albuquerque <palbuquerque73@gmail.com>, 2014.
|
||||||
# Bruno Ramalhete <bram.512@gmail.com>, 2015.
|
# Bruno Ramalhete <bram.512@gmail.com>, 2015.
|
||||||
# José Vieira <jvieira33@sapo.pt>, 2020.
|
# José Vieira <jvieira33@sapo.pt>, 2020-2021.
|
||||||
|
# Hugo Carvalho <hugokarvalho@hotmail.com>, 2021.
|
||||||
|
# Juliano de Souza Camargo <julianosc@protonmail.com>, 2021.
|
||||||
#
|
#
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: 3.14\n"
|
"Project-Id-Version: 3.14\n"
|
||||||
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
|
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/"
|
||||||
"issues\n"
|
"issues\n"
|
||||||
"POT-Creation-Date: 2020-05-28 00:55+0000\n"
|
"POT-Creation-Date: 2021-06-02 16:10+0000\n"
|
||||||
"PO-Revision-Date: 2020-09-05 00:47+0100\n"
|
"PO-Revision-Date: 2021-06-07 07:21-0300\n"
|
||||||
"Last-Translator: José Vieira <jvieira33@sapo.pt>\n"
|
"Last-Translator: Juliano de Souza Camargo <julianosc@protonmail.com>\n"
|
||||||
"Language-Team: Portuguese <>\n"
|
"Language-Team: Portuguese < >\n"
|
||||||
"Language: pt\n"
|
"Language: pt\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||||
"X-Generator: Gtranslator 3.36.0\n"
|
"X-Generator: Gtranslator 40.0\n"
|
||||||
"X-Project-Style: gnome\n"
|
"X-Project-Style: gnome\n"
|
||||||
|
"X-DL-Team: pt\n"
|
||||||
|
"X-DL-Module: gnome-shell-extensions\n"
|
||||||
|
"X-DL-Branch: gnome-40\n"
|
||||||
|
"X-DL-Domain: po\n"
|
||||||
|
"X-DL-State: Translating\n"
|
||||||
|
|
||||||
#: data/gnome-classic.desktop.in:3 data/gnome-classic.session.desktop.in:3
|
#: data/gnome-classic.desktop.in:3
|
||||||
msgid "GNOME Classic"
|
msgid "GNOME Classic"
|
||||||
msgstr "GNOME clássico"
|
msgstr "GNOME clássico"
|
||||||
|
|
||||||
#: data/gnome-classic.desktop.in:4
|
#: data/gnome-classic.desktop.in:4
|
||||||
msgid "This session logs you into GNOME Classic"
|
msgid "This session logs you into GNOME Classic"
|
||||||
msgstr "Esta sessão entra no GNOME clássico"
|
msgstr "Esta sessão vai usar o GNOME clássico"
|
||||||
|
|
||||||
#: extensions/apps-menu/extension.js:113
|
#: extensions/apps-menu/extension.js:113
|
||||||
msgid "Favorites"
|
msgid "Favorites"
|
||||||
msgstr "Favoritos"
|
msgstr "Favoritos"
|
||||||
|
|
||||||
#: extensions/apps-menu/extension.js:369
|
#: extensions/apps-menu/extension.js:367
|
||||||
msgid "Applications"
|
msgid "Applications"
|
||||||
msgstr "Aplicações"
|
msgstr "Aplicações"
|
||||||
|
|
||||||
@@ -54,11 +61,10 @@ msgstr ""
|
|||||||
"ficheiro desktop), seguido de dois pontos e o número da área de trabalho"
|
"ficheiro desktop), seguido de dois pontos e o número da área de trabalho"
|
||||||
|
|
||||||
#: extensions/auto-move-windows/prefs.js:35
|
#: extensions/auto-move-windows/prefs.js:35
|
||||||
#| msgid "Workspace Names"
|
|
||||||
msgid "Workspace Rules"
|
msgid "Workspace Rules"
|
||||||
msgstr "Regras das áreas de trabalho"
|
msgstr "Regras das áreas de trabalho"
|
||||||
|
|
||||||
#: extensions/auto-move-windows/prefs.js:243
|
#: extensions/auto-move-windows/prefs.js:237
|
||||||
msgid "Add Rule"
|
msgid "Add Rule"
|
||||||
msgstr "Adicionar regra"
|
msgstr "Adicionar regra"
|
||||||
|
|
||||||
@@ -66,7 +72,6 @@ msgstr "Adicionar regra"
|
|||||||
#: extensions/drive-menu/extension.js:112
|
#: extensions/drive-menu/extension.js:112
|
||||||
#: extensions/places-menu/placeDisplay.js:233
|
#: extensions/places-menu/placeDisplay.js:233
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
#| msgid "Ejecting drive '%s' failed:"
|
|
||||||
msgid "Ejecting drive “%s” failed:"
|
msgid "Ejecting drive “%s” failed:"
|
||||||
msgstr "Falha ao ejetar a unidade '%s':"
|
msgstr "Falha ao ejetar a unidade '%s':"
|
||||||
|
|
||||||
@@ -74,10 +79,9 @@ msgstr "Falha ao ejetar a unidade '%s':"
|
|||||||
msgid "Removable devices"
|
msgid "Removable devices"
|
||||||
msgstr "Dispositivos removíveis"
|
msgstr "Dispositivos removíveis"
|
||||||
|
|
||||||
#: extensions/drive-menu/extension.js:155
|
#: extensions/drive-menu/extension.js:152
|
||||||
#| msgid "Open File"
|
|
||||||
msgid "Open Files"
|
msgid "Open Files"
|
||||||
msgstr "Ficheiros abertos"
|
msgstr "Abrir ficheiros"
|
||||||
|
|
||||||
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5
|
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:5
|
||||||
msgid "Use more screen for windows"
|
msgid "Use more screen for windows"
|
||||||
@@ -96,7 +100,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11
|
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:11
|
||||||
msgid "Place window captions on top"
|
msgid "Place window captions on top"
|
||||||
msgstr "Colocar título de janelas em cima"
|
msgstr "Colocar título de janela em cima"
|
||||||
|
|
||||||
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:12
|
#: extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml:12
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -104,18 +108,17 @@ msgid ""
|
|||||||
"shell default of placing it at the bottom. Changing this setting requires "
|
"shell default of placing it at the bottom. Changing this setting requires "
|
||||||
"restarting the shell to have any effect."
|
"restarting the shell to have any effect."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Se verdadeiro, coloca títulos de janelas em cima da respectiva miniatura, "
|
"Se verdadeiro, coloca títulos de janelas em cima das respectivas miniaturas, "
|
||||||
"substituindo a predefinição, que as coloca no fundo. Alterar esta "
|
"substituindo a predefinição, que as coloca no fundo. Alterar esta "
|
||||||
"configuração requer reinicializar a interface para ter efeito."
|
"configuração requer reinicializar a interface para ter efeito."
|
||||||
|
|
||||||
#: extensions/places-menu/extension.js:89
|
#: extensions/places-menu/extension.js:89
|
||||||
#: extensions/places-menu/extension.js:93
|
#: extensions/places-menu/extension.js:92
|
||||||
msgid "Places"
|
msgid "Places"
|
||||||
msgstr "Locais"
|
msgstr "Locais"
|
||||||
|
|
||||||
#: extensions/places-menu/placeDisplay.js:46
|
#: extensions/places-menu/placeDisplay.js:46
|
||||||
#, javascript-format
|
#, javascript-format
|
||||||
#| msgid "Failed to launch \"%s\""
|
|
||||||
msgid "Failed to launch “%s”"
|
msgid "Failed to launch “%s”"
|
||||||
msgstr "Falha ao iniciar \"%s\""
|
msgstr "Falha ao iniciar \"%s\""
|
||||||
|
|
||||||
@@ -142,7 +145,6 @@ msgid "Cycle Screenshot Sizes"
|
|||||||
msgstr "Percorrer os tamanhos de captura de ecrã"
|
msgstr "Percorrer os tamanhos de captura de ecrã"
|
||||||
|
|
||||||
#: extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml:11
|
#: extensions/screenshot-window-sizer/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml:11
|
||||||
#| msgid "Cycle Screenshot Sizes"
|
|
||||||
msgid "Cycle Screenshot Sizes Backward"
|
msgid "Cycle Screenshot Sizes Backward"
|
||||||
msgstr "Percorrer para trás os tamanhos de captura de ecrã"
|
msgstr "Percorrer para trás os tamanhos de captura de ecrã"
|
||||||
|
|
||||||
@@ -174,27 +176,27 @@ msgstr "Desmaximizar"
|
|||||||
msgid "Maximize"
|
msgid "Maximize"
|
||||||
msgstr "Maximizar"
|
msgstr "Maximizar"
|
||||||
|
|
||||||
#: extensions/window-list/extension.js:428
|
#: extensions/window-list/extension.js:432
|
||||||
msgid "Minimize all"
|
msgid "Minimize all"
|
||||||
msgstr "Minimizar todas"
|
msgstr "Minimizar todas"
|
||||||
|
|
||||||
#: extensions/window-list/extension.js:434
|
#: extensions/window-list/extension.js:438
|
||||||
msgid "Unminimize all"
|
msgid "Unminimize all"
|
||||||
msgstr "Desminimizar todas"
|
msgstr "Desminimizar todas"
|
||||||
|
|
||||||
#: extensions/window-list/extension.js:440
|
#: extensions/window-list/extension.js:444
|
||||||
msgid "Maximize all"
|
msgid "Maximize all"
|
||||||
msgstr "Maximizar todas"
|
msgstr "Maximizar todas"
|
||||||
|
|
||||||
#: extensions/window-list/extension.js:448
|
#: extensions/window-list/extension.js:452
|
||||||
msgid "Unmaximize all"
|
msgid "Unmaximize all"
|
||||||
msgstr "Desmaximizar todas"
|
msgstr "Desmaximizar todas"
|
||||||
|
|
||||||
#: extensions/window-list/extension.js:456
|
#: extensions/window-list/extension.js:460
|
||||||
msgid "Close all"
|
msgid "Close all"
|
||||||
msgstr "Fechar todas"
|
msgstr "Fechar todas"
|
||||||
|
|
||||||
#: extensions/window-list/extension.js:734
|
#: extensions/window-list/extension.js:737
|
||||||
msgid "Window List"
|
msgid "Window List"
|
||||||
msgstr "Lista de janelas"
|
msgstr "Lista de janelas"
|
||||||
|
|
||||||
@@ -203,26 +205,19 @@ msgid "When to group windows"
|
|||||||
msgstr "Quando agrupar janelas"
|
msgstr "Quando agrupar janelas"
|
||||||
|
|
||||||
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13
|
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:13
|
||||||
#| msgid ""
|
|
||||||
#| "Decides when to group windows from the same application on the window "
|
|
||||||
#| "list. Possible values are \"never\", \"auto\" and \"always\"."
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Decides when to group windows from the same application on the window list. "
|
"Decides when to group windows from the same application on the window list. "
|
||||||
"Possible values are “never”, “auto” and “always”."
|
"Possible values are “never”, “auto” and “always”."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Decide quando agrupar janelas da mesma aplicação na lista de janelas. "
|
"Decide quando agrupar janelas da mesma aplicação na lista de janelas. Os "
|
||||||
"Valores válidos são \"nunca\", \"auto\" e \"sempre\"."
|
"valores válidos são \"nunca\", \"auto\" e \"sempre\"."
|
||||||
|
|
||||||
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
|
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:20
|
||||||
#: extensions/window-list/prefs.js:100
|
#: extensions/window-list/prefs.js:100
|
||||||
#| msgid "Show only windows in the current workspace"
|
|
||||||
msgid "Show windows from all workspaces"
|
msgid "Show windows from all workspaces"
|
||||||
msgstr "Mostrar janelas de todas as área de trabalho"
|
msgstr "Mostrar janelas de todas as área de trabalho"
|
||||||
|
|
||||||
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:21
|
#: extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml:21
|
||||||
#| msgid ""
|
|
||||||
#| "Whether to show the window list on all connected monitors or only on the "
|
|
||||||
#| "primary one."
|
|
||||||
msgid "Whether to show windows from all workspaces or only the current one."
|
msgid "Whether to show windows from all workspaces or only the current one."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Se deve mostrar janelas de todas as áreas de trabalho ou apenas da atual."
|
"Se deve mostrar janelas de todas as áreas de trabalho ou apenas da atual."
|
||||||
@@ -259,8 +254,8 @@ msgstr "Agrupar sempre as janelas"
|
|||||||
msgid "Show on all monitors"
|
msgid "Show on all monitors"
|
||||||
msgstr "Mostrar em todos os monitores"
|
msgstr "Mostrar em todos os monitores"
|
||||||
|
|
||||||
#: extensions/window-list/workspaceIndicator.js:207
|
#: extensions/window-list/workspaceIndicator.js:249
|
||||||
#: extensions/workspace-indicator/extension.js:213
|
#: extensions/workspace-indicator/extension.js:255
|
||||||
msgid "Workspace Indicator"
|
msgid "Workspace Indicator"
|
||||||
msgstr "Indicador de área de trabalho"
|
msgstr "Indicador de área de trabalho"
|
||||||
|
|
||||||
@@ -273,8 +268,7 @@ msgstr "Nomes das áreas de trabalho"
|
|||||||
msgid "Workspace %d"
|
msgid "Workspace %d"
|
||||||
msgstr "Área de trabalho %d"
|
msgstr "Área de trabalho %d"
|
||||||
|
|
||||||
#: extensions/workspace-indicator/prefs.js:218
|
#: extensions/workspace-indicator/prefs.js:208
|
||||||
#| msgid "Workspace"
|
|
||||||
msgid "Add Workspace"
|
msgid "Add Workspace"
|
||||||
msgstr "Adicionar área de trabalho"
|
msgstr "Adicionar área de trabalho"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user