diff --git a/README.md b/README.md
index 24948ce..f15a143 100644
--- a/README.md
+++ b/README.md
@@ -176,7 +176,7 @@ Ideas for recursing child actors and assigning inline styles are based on code f
@imrvelj, @Teslator, @bil-elmoussaoui, @brandon-schumann, @sw9, @rockon999 , @lexruee, @3v1n0, @freeroot, @moqmar, @ArtyomZorin, @lkc0987, @saibotk, @vanillajonathan, @Zkdc
#### Translations:
-@frnogueira (pt_BR), @zeten30 (cs), @franglais125 (es), @LaurentTreguier / @SolarLiner (fr), @elsieholmes (uk), @hosiet (zh\_CN), @jonnius (de), @urbalazs / @pappfer (hu), @crayxt (kk), @pkomur / MartinPL (pl), @AlexGluck / @GoodNike (ru), @sicklylife-jp (jp), @oltulu / @TeknoMobil / @daenney (tr), @sbadux (it), @OriginCode (zh\_TW)
+@frnogueira (pt_BR), @zeten30 (cs), @franglais125 (es), @LaurentTreguier / @SolarLiner (fr), @elsieholmes (uk), @hosiet (zh\_CN), @jonnius (de), @urbalazs / @pappfer (hu), @crayxt (kk), @pkomur / @MartinPL / @alex4401 (pl), @AlexGluck / @GoodNike (ru), @sicklylife-jp (jp), @oltulu / @TeknoMobil / @daenney (tr), @sbadux (it), @OriginCode / @pan93412 (zh\_TW)
##
diff --git a/Settings.ui b/Settings.ui
index b7253e3..01a1d32 100644
--- a/Settings.ui
+++ b/Settings.ui
@@ -2264,35 +2264,6 @@
0
-
-
-
- 0
- 1
-
-
-
-
-
- 1
- 1
-
-
+
+
+
+ 0
+ 1
+
+
+
+
+ True
+ True
+ end
+ center
+ 4
+ 25
+ leave_timeout_adjustment
+ True
+ 25
+
+
+ 1
+ 1
+
+
@@ -3134,6 +3173,182 @@
+
+ 2000
+ 10
+ 50
+
+
+ True
+ False
+ vertical
+
+
+ True
+ False
+ none
+
+
+ True
+ True
+
+
+ True
+ False
+ 12
+ 12
+ 12
+ 12
+ 32
+
+
+ True
+ True
+ end
+ center
+ 4
+ 50
+ scroll_icon_options_delay_adjustment
+ True
+ 50
+
+
+ 1
+ 0
+ 2
+
+
+
+
+ True
+ False
+ True
+ Delay between mouse scroll events (ms)
+ True
+ 0
+
+
+ 0
+ 0
+
+
+
+
+ True
+ False
+ True
+ Use this value to limit the number of captured mouse scroll events.
+ True
+ 0
+
+
+
+ 0
+ 1
+
+
+
+
+
+
+
+
+ False
+ True
+ 0
+
+
+
+
+ 2000
+ 10
+ 50
+
+
+ True
+ False
+ vertical
+
+
+ True
+ False
+ none
+
+
+ True
+ True
+
+
+ True
+ False
+ 12
+ 12
+ 12
+ 12
+ 32
+
+
+ True
+ True
+ end
+ center
+ 4
+ 50
+ scroll_panel_options_delay_adjustment
+ True
+ 50
+
+
+ 1
+ 0
+ 2
+
+
+
+
+ True
+ False
+ True
+ Delay between mouse scroll events (ms)
+ True
+ 0
+
+
+ 0
+ 0
+
+
+
+
+ True
+ False
+ True
+ Use this value to limit the number of captured mouse scroll events.
+ True
+ 0
+
+
+
+ 0
+ 1
+
+
+
+
+
+
+
+
+ False
+ True
+ 0
+
+
+
10000
250
@@ -6133,6 +6348,32 @@
0
+
+
+ 2
+
+
+
+
+ True
+ False
+ Behavior
+
+
+ 2
+ False
+
+
+
+
+ True
+ False
+ 24
+ 24
+ 24
+ 24
+ vertical
+ 24
False
@@ -6251,6 +6492,198 @@
+
+ False
+ True
+ 0
+
+
+
+
+ False
+ 0
+ in
+
+
+ True
+ False
+ 12
+ 12
+ 12
+ 12
+ 16
+ 6
+
+
+ True
+ False
+ vertical
+
+
+ True
+ False
+ True
+ Scroll panel action
+ 0
+
+
+ False
+ True
+ 0
+
+
+
+
+ True
+ False
+ True
+ Behavior when mouse scrolling over the panel.
+ True
+ 0
+
+
+
+ False
+ True
+ 1
+
+
+
+
+ 0
+ 0
+
+
+
+
+ True
+ False
+ vertical
+
+
+ True
+ False
+ True
+ Scroll icon action
+ 0
+
+
+ False
+ True
+ 0
+
+
+
+
+ True
+ False
+ True
+ Behavior when mouse scrolling over an application icon.
+ True
+ 0
+
+
+
+ False
+ True
+ 1
+
+
+
+
+ 0
+ 1
+
+
+
+
+ True
+ True
+ True
+ end
+ center
+
+
+ True
+ False
+ emblem-system-symbolic
+
+
+
+
+
+ 1
+ 0
+
+
+
+
+ True
+ False
+ center
+ True
+
+ - Do nothing
+ - Switch workspace
+ - Cycle windows
+
+
+
+ 2
+ 0
+
+
+
+
+ True
+ False
+ center
+ True
+
+ - Do nothing
+ - Cycle windows
+
+
+
+ 2
+ 1
+
+
+
+
+ True
+ True
+ True
+ end
+ center
+
+
+ True
+ False
+ emblem-system-symbolic
+
+
+
+
+
+ 1
+ 1
+
+
+
+
+
+
+
+
False
True
@@ -6375,22 +6808,22 @@
False
True
- 2
+ 3
- 2
+ 3
-
+
True
False
- Behavior
+ Action
- 2
+ 3
False
@@ -6913,7 +7346,7 @@
- 3
+ 4
@@ -6924,7 +7357,7 @@
Fine-Tune
- 3
+ 4
False
@@ -7135,7 +7568,7 @@ See the <a href="https://www.gnu.org/licenses/old-licenses/gpl-2.0.html">G
- 4
+ 5
@@ -7145,7 +7578,7 @@ See the <a href="https://www.gnu.org/licenses/old-licenses/gpl-2.0.html">G
About
- 4
+ 5
False
diff --git a/appIcons.js b/appIcons.js
index 0865099..594198a 100644
--- a/appIcons.js
+++ b/appIcons.js
@@ -50,10 +50,6 @@ const Utils = Me.imports.utils;
const Taskbar = Me.imports.taskbar;
const _ = imports.gettext.domain(Utils.TRANSLATION_DOMAIN).gettext;
-let DASH_ANIMATION_TIME = Dash.DASH_ANIMATION_TIME;
-let DASH_ITEM_LABEL_SHOW_TIME = Dash.DASH_ITEM_LABEL_SHOW_TIME;
-let DASH_ITEM_LABEL_HIDE_TIME = Dash.DASH_ITEM_LABEL_HIDE_TIME;
-let DASH_ITEM_HOVER_TIMEOUT = Dash.DASH_ITEM_HOVER_TIMEOUT;
let LABEL_GAP = 5;
let MAX_INDICATORS = 4;
@@ -95,7 +91,7 @@ let tracker = Shell.WindowTracker.get_default();
var taskbarAppIcon = Utils.defineClass({
Name: 'DashToPanel.TaskbarAppIcon',
- Extends: AppDisplay.AppIcon,
+ Extends: (Dash.DashIcon || AppDisplay.AppIcon),
ParentConstrParams: [[1, 'app'], [3]],
_init: function(settings, appInfo, panelWrapper, iconParams, previewMenu) {
@@ -197,6 +193,8 @@ var taskbarAppIcon = Utils.defineClass({
Lang.bind(this, this._updateWindowTitle));
}
+ this._scrollEventId = this.actor.connect('scroll-event', this._onMouseScroll.bind(this));
+
this._overviewWindowDragEndId = Main.overview.connect('window-drag-end',
Lang.bind(this, this._onOverviewWindowDragEnd));
@@ -296,6 +294,15 @@ var taskbarAppIcon = Utils.defineClass({
this.actor.disconnect(this._hoverChangeId);
}
+ if (this._scrollEventId) {
+ this.actor.disconnect(this._scrollEventId);
+ }
+
+ if (this._scrollIconDelayTimeoutId) {
+ Mainloop.source_remove(this._scrollIconDelayTimeoutId);
+ this._scrollIconDelayTimeoutId = 0;
+ }
+
for (let i = 0; i < this._dtpSettingsSignalIds.length; ++i) {
this._dtpSettings.disconnect(this._dtpSettingsSignalIds[i]);
}
@@ -334,6 +341,26 @@ var taskbarAppIcon = Utils.defineClass({
});
},
+ _onMouseScroll: function(actor, event) {
+ if (this._dtpSettings.get_string('scroll-icon-action') === 'NOTHING' ||
+ (!this.window && !this._nWindows)) {
+ return;
+ }
+
+ let direction = Utils.getMouseScrollDirection(event);
+
+ if (direction && !this._scrollIconDelayTimeoutId) {
+ this._scrollIconDelayTimeoutId = Mainloop.timeout_add(this._dtpSettings.get_int('scroll-icon-delay'), () => {
+ this._scrollIconDelayTimeoutId = 0;
+ });
+
+ let windows = this.getAppIconInterestingWindows();
+
+ windows.sort(Taskbar.sortWindowsCompareFunction);
+ Utils.activateSiblingWindow(windows, direction, this.window);
+ }
+ },
+
_showDots: function() {
// Just update style if dots already exist
if (this._focusedDots && this._unfocusedDots) {
@@ -543,7 +570,14 @@ var taskbarAppIcon = Utils.defineClass({
},
_onSwitchWorkspace: function(windowTracker) {
- this._displayProperIndicator();
+ if (this._isGroupApps) {
+ Mainloop.timeout_add(0, Lang.bind(this, function () {
+ this._displayProperIndicator();
+ return GLib.SOURCE_REMOVE;
+ }));
+ } else {
+ this._displayProperIndicator();
+ }
},
_displayProperIndicator: function (force) {
@@ -623,7 +657,7 @@ var taskbarAppIcon = Utils.defineClass({
dots._tweeningToWidth = newWidth;
Tweener.addTween(dots,
{ width: newWidth,
- time: DASH_ANIMATION_TIME,
+ time: Taskbar.DASH_ANIMATION_TIME,
transition: 'easeInOutCubic',
onStart: Lang.bind(this, function() {
if(newOtherOpacity == 0)
@@ -702,8 +736,8 @@ var taskbarAppIcon = Utils.defineClass({
}
let appCount = this.getAppIconInterestingWindows().length;
- if (!(buttonAction == "TOGGLE-SHOWPREVIEW") || (appCount <= 1))
- this._previewMenu.close(true);
+ let previewedAppIcon = this._previewMenu.getCurrentAppIcon();
+ this._previewMenu.close(this._dtpSettings.get_boolean('window-preview-hide-immediate-click'));
// We check if the app is running, and that the # of windows is > 0 in
// case we use workspace isolation,
@@ -756,10 +790,7 @@ var taskbarAppIcon = Utils.defineClass({
if (appHasFocus || button == 2 || modifiers & Clutter.ModifierType.SHIFT_MASK) {
// minimize all windows on double click and always in the case of primary click without
// additional modifiers
- let click_count = 0;
- if (Clutter.EventType.CLUTTER_BUTTON_PRESS)
- click_count = event.get_click_count();
- let all_windows = (button == 1 && ! modifiers) || click_count > 1;
+ let all_windows = (button == 1 && ! modifiers) || event.get_click_count() > 1;
minimizeWindow(this.app, all_windows, this._dtpSettings, monitor);
}
else
@@ -799,14 +830,15 @@ var taskbarAppIcon = Utils.defineClass({
else
activateFirstWindow(this.app, this._dtpSettings, monitor);
} else {
- // minimize all windows if double clicked
- if (Clutter.EventType.CLUTTER_BUTTON_PRESS) {
- let click_count = event.get_click_count();
- if(click_count > 1) {
- minimizeWindow(this.app, true, this._dtpSettings, monitor);
- }
+ if (event.get_click_count() > 1) {
+ // minimize all windows if double clicked
+ minimizeWindow(this.app, true, this._dtpSettings, monitor);
+ } else if (previewedAppIcon != this) {
+ this._previewMenu.open(this);
}
- }
+
+ this.emit('sync-tooltip');
+ }
}
else
this.app.activate();
@@ -1096,6 +1128,7 @@ var taskbarAppIcon = Utils.defineClass({
}
});
+taskbarAppIcon.prototype.scaleAndFade = taskbarAppIcon.prototype.undoScaleAndFade = () => {};
function minimizeWindow(app, param, settings, monitor){
// Param true make all app windows minimize
@@ -1429,11 +1462,20 @@ function ItemShowLabel() {
x -= x + labelWidth -( monitor.x + monitor.width) + gap;
this.label.set_position(x, y);
- Tweener.addTween(this.label,
- { opacity: 255,
- time: DASH_ITEM_LABEL_SHOW_TIME,
- transition: 'easeOutQuad',
- });
+
+ if (Dash.DASH_ITEM_LABEL_SHOW_TIME < 1) {
+ Tweener.addTween(this.label, {
+ opacity: 255,
+ time: Dash.DASH_ITEM_LABEL_SHOW_TIME,
+ transition: 'easeOutQuad',
+ });
+ } else {
+ this.label.ease({
+ opacity: 255,
+ duration: Dash.DASH_ITEM_LABEL_SHOW_TIME,
+ mode: Clutter.AnimationMode.EASE_OUT_QUAD
+ });
+ }
};
/**
@@ -1462,6 +1504,7 @@ var ShowAppsIconWrapper = Utils.defineClass({
(actor): duplicate reference to easily reuse appIcon methods */
this.actor = this.realShowAppsIcon.toggleButton;
this.realShowAppsIcon.actor.y_align = Clutter.ActorAlign.START;
+ this.realShowAppsIcon.show(false);
// Re-use appIcon methods
this._removeMenuTimeout = AppDisplay.AppIcon.prototype._removeMenuTimeout;
@@ -1487,7 +1530,7 @@ var ShowAppsIconWrapper = Utils.defineClass({
this._menuManager = new PopupMenu.PopupMenuManager(this.actor);
this._menuTimeoutId = 0;
- this.realShowAppsIcon.showLabel = ItemShowLabel;
+ Taskbar.extendDashItemContainer(this.realShowAppsIcon);
let customIconPath = this._dtpSettings.get_string('show-apps-icon-file');
diff --git a/extension.js b/extension.js
index d2e5e5d..ddabe0a 100644
--- a/extension.js
+++ b/extension.js
@@ -18,11 +18,6 @@
*/
-const Me = imports.misc.extensionUtils.getCurrentExtension();
-const Convenience = Me.imports.convenience;
-const PanelManager = Me.imports.panelManager;
-const Utils = Me.imports.utils;
-
const Main = imports.ui.main;
const Meta = imports.gi.Meta;
const Gio = imports.gi.Gio;
@@ -32,10 +27,14 @@ const Shell = imports.gi.Shell;
const St = imports.gi.St;
const WindowManager = imports.ui.windowManager;
const ExtensionUtils = imports.misc.extensionUtils;
-const ExtensionSystem = imports.ui.extensionSystem;
const Mainloop = imports.mainloop;
const Signals = imports.signals;
+const Me = ExtensionUtils.getCurrentExtension();
+const Convenience = Me.imports.convenience;
+const PanelManager = Me.imports.panelManager;
+const Utils = Me.imports.utils;
+
const UBUNTU_DOCK_UUID = 'ubuntu-dock@ubuntu.com';
let panelManager;
@@ -43,6 +42,7 @@ let settings;
let oldDash;
let extensionChangedHandler;
let disabledUbuntuDock;
+let extensionSystem = (Main.extensionManager || imports.ui.extensionSystem);
function init() {
Convenience.initTranslations(Utils.TRANSLATION_DOMAIN);
@@ -50,7 +50,7 @@ function init() {
function enable() {
// The Ubuntu Dock extension might get enabled after this extension
- extensionChangedHandler = (Main.extensionManager || ExtensionSystem).connect('extension-state-changed', (data, extension) => {
+ extensionChangedHandler = extensionSystem.connect('extension-state-changed', (data, extension) => {
if (extension.uuid === UBUNTU_DOCK_UUID && extension.state === 1) {
_enable();
}
@@ -70,11 +70,13 @@ function _enable() {
if (ubuntuDock && ubuntuDock.stateObj && ubuntuDock.stateObj.dockManager) {
// Disable Ubuntu Dock
+ let extensionOrder = (extensionSystem.extensionOrder || extensionSystem._extensionOrder);
+
St.ThemeContext.get_for_stage(global.stage).get_theme().unload_stylesheet(ubuntuDock.stylesheet);
ubuntuDock.stateObj.disable();
disabledUbuntuDock = true;
- ubuntuDock.state = ExtensionSystem.ExtensionState.DISABLED;
- ExtensionSystem.extensionOrder.splice(ExtensionSystem.extensionOrder.indexOf(UBUNTU_DOCK_UUID), 1);
+ ubuntuDock.state = 2; //ExtensionState.DISABLED
+ extensionOrder.splice(extensionOrder.indexOf(UBUNTU_DOCK_UUID), 1);
//reset to prevent conflicts with the ubuntu-dock
if (panelManager) {
@@ -125,12 +127,12 @@ function disable(reset) {
);
if (!reset) {
- ExtensionSystem.disconnect(extensionChangedHandler);
+ extensionSystem.disconnect(extensionChangedHandler);
delete global.dashToPanel;
- // Re-enable Ubuntu Dock if it exists and if it was disabled by dash to panel
- if (disabledUbuntuDock && ExtensionUtils.extensions[UBUNTU_DOCK_UUID] && Main.sessionMode.allowExtensions) {
- ExtensionSystem.enableExtension(UBUNTU_DOCK_UUID);
+ // Re-enable Ubuntu Dock if it was disabled by dash to panel
+ if (disabledUbuntuDock && Main.sessionMode.allowExtensions) {
+ extensionSystem.enableExtension(UBUNTU_DOCK_UUID);
}
}
}
\ No newline at end of file
diff --git a/intellihide.js b/intellihide.js
index 1af32d7..5d2b933 100644
--- a/intellihide.js
+++ b/intellihide.js
@@ -41,6 +41,7 @@ const MIN_UPDATE_MS = 250;
const T1 = 'checkGrabTimeout';
const T2 = 'limitUpdateTimeout';
const T3 = 'postAnimateTimeout';
+const T4 = 'panelBoxClipTimeout';
var Hold = {
NONE: 0,
@@ -65,12 +66,12 @@ var Intellihide = Utils.defineClass({
this._intellihideChangedId = this._dtpSettings.connect('changed::intellihide', () => this._changeEnabledStatus());
this._intellihideOnlySecondaryChangedId = this._dtpSettings.connect('changed::intellihide-only-secondary', () => this._changeEnabledStatus());
- this._enabled = false;
+ this.enabled = false;
this._changeEnabledStatus();
},
enable: function(reset) {
- this._enabled = true;
+ this.enabled = true;
this._monitor = this._dtpPanel.monitor;
this._animationDestination = -1;
this._pendingUpdate = false;
@@ -117,14 +118,14 @@ var Intellihide = Utils.defineClass({
this._revealPanel(!reset);
- this._enabled = false;
+ this.enabled = false;
},
destroy: function() {
this._dtpSettings.disconnect(this._intellihideChangedId);
this._dtpSettings.disconnect(this._intellihideOnlySecondaryChangedId);
- if (this._enabled) {
+ if (this.enabled) {
this.disable();
}
},
@@ -134,7 +135,7 @@ var Intellihide = Utils.defineClass({
},
revealAndHold: function(holdStatus) {
- if (this._enabled && !this._holdStatus) {
+ if (this.enabled && !this._holdStatus) {
this._revealPanel();
}
@@ -144,7 +145,7 @@ var Intellihide = Utils.defineClass({
release: function(holdStatus) {
this._holdStatus -= holdStatus;
- if (this._enabled && !this._holdStatus) {
+ if (this.enabled && !this._holdStatus) {
this._queueUpdatePanelPosition();
}
},
@@ -159,7 +160,7 @@ var Intellihide = Utils.defineClass({
let onlySecondary = this._dtpSettings.get_boolean('intellihide-only-secondary');
let enabled = intellihide && (this._dtpPanel.isSecondary || !onlySecondary);
- if (this._enabled !== enabled) {
+ if (this.enabled !== enabled) {
this[enabled ? 'enable' : 'disable']();
}
},
@@ -221,13 +222,13 @@ var Intellihide = Utils.defineClass({
this._clipContainer = new Clutter.Actor();
Utils.setClip(this._clipContainer, this._panelBox.x, this._panelBox.y, this._panelBox.width, this._panelBox.height);
- Main.layoutManager.uiGroup.remove_actor(this._panelBox);
- this._panelBox.show();
- this._clipContainer.add_child(this._panelBox);
- this._panelBox.set_position(0, 0);
-
+ Main.layoutManager.removeChrome(this._panelBox);
Main.layoutManager.addChrome(this._clipContainer, { affectsInputRegion: false });
+
+ this._clipContainer.add_child(this._panelBox);
Main.layoutManager.trackChrome(this._panelBox, { affectsInputRegion: true });
+
+ this._timeoutsHandler.add([T4, 0, () => this._panelBox.set_position(0, 0)]);
} else {
this._panelBox.set_position(this._clipContainer.x, this._clipContainer.y);
Main.layoutManager.removeChrome(this._clipContainer);
diff --git a/metadata.json b/metadata.json
index e3db8da..ecea93d 100644
--- a/metadata.json
+++ b/metadata.json
@@ -3,7 +3,7 @@
"uuid": "dash-to-panel@jderose9.github.com",
"name": "Dash to Panel",
"description": "An icon taskbar for the Gnome Shell. This extension moves the dash into the gnome main panel so that the application launchers and system tray are combined into a single panel, similar to that found in KDE Plasma and Windows 7+. A separate dock is no longer needed for easy access to running and favorited applications.\n\nFor a more traditional experience, you may also want to use Tweak Tool to enable Windows > Titlebar Buttons > Minimize & Maximize.\n\nFor the best support, please report any issues on Github. Dash-to-panel is developed and maintained by @jderose9 and @charlesg99.",
-"shell-version": [ "3.18", "3.20", "3.22", "3.24", "3.26", "3.28", "3.30", "3.32" ],
+"shell-version": [ "3.18", "3.20", "3.22", "3.24", "3.26", "3.28", "3.30", "3.32", "3.34" ],
"url": "https://github.com/jderose9/dash-to-panel",
"gettext-domain": "dash-to-panel",
"version": 9999
diff --git a/overview.js b/overview.js
index 384fc25..03862f7 100644
--- a/overview.js
+++ b/overview.js
@@ -53,15 +53,21 @@ var dtpOverview = Utils.defineClass({
this._injectionsHandler = new Utils.InjectionsHandler();
this._signalsHandler = new Utils.GlobalSignalsHandler();
- this._isolation = this._optionalWorkspaceIsolation();
+ this._optionalWorkspaceIsolation();
this._optionalHotKeys();
this._optionalNumberOverlay();
this._toggleDash();
- this._stockgsKeepDashId = this._dtpSettings.connect('changed::stockgs-keep-dash', () => this._toggleDash());
+
+ this._signalsHandler.add([
+ this._dtpSettings,
+ 'changed::stockgs-keep-dash',
+ () => this._toggleDash()
+ ]);
},
disable: function () {
- this._dtpSettings.disconnect(this._stockgsKeepDashId);
+ this._signalsHandler.destroy();
+ this._injectionsHandler.destroy();
this._toggleDash(true);
@@ -71,8 +77,6 @@ var dtpOverview = Utils.defineClass({
// Remove key bindings
this._disableHotKeys();
this._disableExtraShortcut();
-
- this._isolation.disable.apply(this);
},
_toggleDash: function(visible) {
@@ -101,10 +105,9 @@ var dtpOverview = Utils.defineClass({
* Isolate overview to open new windows for inactive apps
*/
_optionalWorkspaceIsolation: function() {
-
let label = 'optionalWorkspaceIsolation';
-
- this._signalsHandler.addWithLabel(label, [
+
+ this._signalsHandler.add([
this._dtpSettings,
'changed::isolate-workspaces',
Lang.bind(this, function() {
@@ -141,9 +144,6 @@ var dtpOverview = Utils.defineClass({
function disable() {
this._signalsHandler.removeWithLabel(label);
this._injectionsHandler.removeWithLabel(label);
-
- this._signalsHandler.destroy();
- this._injectionsHandler.destroy();
}
function IsolatedOverview() {
@@ -159,8 +159,6 @@ var dtpOverview = Utils.defineClass({
return Main.activateWindow(windows[0]);
return this.open_new_window(-1);
}
-
- return { disable: disable };
},
// Hotkeys
diff --git a/panel.js b/panel.js
index 786ba2a..2a403be 100644
--- a/panel.js
+++ b/panel.js
@@ -83,6 +83,10 @@ var dtpPanelWrapper = Utils.defineClass({
this.container = this.panel._leftBox;
}
this.appMenu = this.panel.statusArea.appMenu;
+
+ if (this.panel.statusArea.aggregateMenu) {
+ this.panel.statusArea.aggregateMenu._volume.indicators._dtpIgnoreScroll = 1;
+ }
this._oldPanelActorDelegate = this.panel.actor._delegate;
this.panel.actor._delegate = this;
@@ -237,6 +241,11 @@ var dtpPanelWrapper = Utils.defineClass({
this.panel._centerBox,
'actor-added',
() => this._setClockLocation(this._dtpSettings.get_string('location-clock'))
+ ],
+ [
+ this.panel.actor,
+ 'scroll-event',
+ this._onPanelMouseScroll.bind(this)
]
);
@@ -283,6 +292,11 @@ var dtpPanelWrapper = Utils.defineClass({
this._showDesktopTimeoutId = 0;
}
+ if (this._scrollPanelDelayTimeoutId) {
+ Mainloop.source_remove(this._scrollPanelDelayTimeoutId);
+ this._scrollPanelDelayTimeoutId = 0;
+ }
+
if (this.startDynamicTransparencyId) {
Mainloop.source_remove(this.startDynamicTransparencyId);
this.startDynamicTransparencyId = 0;
@@ -336,6 +350,10 @@ var dtpPanelWrapper = Utils.defineClass({
Utils.hookVfunc(this.panel.__proto__, 'allocate', this.panel.__proto__.vfunc_allocate);
}
+ if (this.panel.statusArea.aggregateMenu) {
+ delete this.panel.statusArea.aggregateMenu._volume.indicators._dtpIgnoreScroll;
+ }
+
this.panel._leftBox.allocate = this.panel._leftBox.oldLeftBoxAllocate;
delete this.panel._leftBox.oldLeftBoxAllocate;
@@ -517,6 +535,7 @@ var dtpPanelWrapper = Utils.defineClass({
_setPanelPosition: function() {
let scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
let size = this._dtpSettings.get_int('panel-size');
+ let container = this.intellihide && this.intellihide.enabled ? this.panelBox.get_parent() : this.panelBox;
if(scaleFactor)
size = size*scaleFactor;
@@ -530,7 +549,7 @@ var dtpPanelWrapper = Utils.defineClass({
this._myPanelGhost.set_height(isTop ? 0 : size);
if(isTop) {
- this.panelBox.set_position(this.monitor.x, this.monitor.y);
+ container.set_position(this.monitor.x, this.monitor.y);
this._removeTopLimit();
@@ -541,7 +560,7 @@ var dtpPanelWrapper = Utils.defineClass({
if(!this.panel.actor.has_style_class_name('dashtopanelTop'))
this.panel.actor.add_style_class_name('dashtopanelTop');
} else {
- this.panelBox.set_position(this.monitor.x, this.monitor.y + this.monitor.height - this.panelBox.height);
+ container.set_position(this.monitor.x, this.monitor.y + this.monitor.height - this.panelBox.height);
if (!this._topLimit) {
this._topLimit = new St.BoxLayout({ name: 'topLimit', vertical: true });
@@ -735,6 +754,30 @@ var dtpPanelWrapper = Utils.defineClass({
Main.overview.hide();
},
+
+ _onPanelMouseScroll: function(actor, event) {
+ let scrollAction = this._dtpSettings.get_string('scroll-panel-action');
+ let direction = Utils.getMouseScrollDirection(event);
+
+ if (!event.get_source()._dtpIgnoreScroll && direction && !this._scrollPanelDelayTimeoutId) {
+ this._scrollPanelDelayTimeoutId = Mainloop.timeout_add(this._dtpSettings.get_int('scroll-panel-delay'), () => {
+ this._scrollPanelDelayTimeoutId = 0;
+ });
+
+ if (scrollAction === 'SWITCH_WORKSPACE') {
+ let args = [global.display];
+
+ //gnome-shell < 3.30 needs an additional "screen" param
+ global.screen ? args.push(global.screen) : 0;
+
+ Main.wm._showWorkspaceSwitcher.apply(Main.wm, args.concat([0, { get_name: () => 'switch---' + direction }]));
+ } else if (scrollAction === 'CYCLE_WINDOWS') {
+ let windows = this.taskbar.getAppInfos().reduce((ws, appInfo) => ws.concat(appInfo.windows), []);
+
+ Utils.activateSiblingWindow(windows, direction);
+ }
+ }
+ },
});
var dtpSecondaryPanel = Utils.defineClass({
@@ -841,15 +884,15 @@ var dtpSecondaryPanel = Utils.defineClass({
},
//next 3 functions are needed by other extensions to add elements to the secondary panel
- addToStatusArea(role, indicator, position, box) {
+ addToStatusArea: function(role, indicator, position, box) {
return Main.panel.addToStatusArea.call(this, role, indicator, position, box);
},
- _addToPanelBox(role, indicator, position, box) {
+ _addToPanelBox: function(role, indicator, position, box) {
Main.panel._addToPanelBox.call(this, role, indicator, position, box);
},
- _onMenuSet(indicator) {
+ _onMenuSet: function(indicator) {
Main.panel._onMenuSet.call(this, indicator);
},
});
diff --git a/panelManager.js b/panelManager.js
index 0622455..0e9c8a4 100755
--- a/panelManager.js
+++ b/panelManager.js
@@ -55,6 +55,8 @@ var dtpPanelManager = Utils.defineClass({
_init: function(settings) {
this._dtpSettings = settings;
this.overview = new Overview.dtpOverview(settings);
+
+ Main.overview.viewSelector.appDisplay._views.forEach(v => Utils.wrapActor(v.view._grid));
},
enable: function(reset) {
diff --git a/po/pl.po b/po/pl.po
index 5d262d9..d4445f0 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,125 +6,165 @@ msgid ""
msgstr ""
"Project-Id-Version: Dash to Panel\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-12-18 14:30+0100\n"
-"PO-Revision-Date: 2018-05-04 21:33+0200\n"
-"Last-Translator: Martin \n"
+"POT-Creation-Date: 2019-08-19 14:20+0200\n"
+"PO-Revision-Date: 2019-08-19 14:36+0200\n"
+"Last-Translator: Alex \n"
"Language-Team: \n"
"Language: pl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.0.6\n"
+"X-Generator: Poedit 2.2.1\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2);\n"
-#: prefs.js:312
+#: prefs.js:310
msgid "Running Indicator Options"
msgstr "Opcje wskaźnika aktywnych programów"
-#: prefs.js:319 prefs.js:486 prefs.js:629 prefs.js:734 prefs.js:792
-#: prefs.js:868 prefs.js:920 prefs.js:1059 prefs.js:1143 prefs.js:1254
-#: prefs.js:1288 prefs.js:1330
+#: prefs.js:317 prefs.js:515 prefs.js:658 prefs.js:778 prefs.js:842
+#: prefs.js:930 prefs.js:1023 prefs.js:1260 prefs.js:1344 prefs.js:1455
+#: prefs.js:1489 prefs.js:1531
msgid "Reset to defaults"
msgstr "Przywróć domyślne"
-#: prefs.js:431
+#: prefs.js:460
msgid "Default (Primary monitor)"
-msgstr "Default (Główny monitor)"
+msgstr "Domyślny (Główny monitor)"
-#: prefs.js:434
+#: prefs.js:463
msgid "Monitor "
-msgstr ""
+msgstr "Monitor"
-#: prefs.js:479
+#: prefs.js:508
msgid "Multi-monitors options"
msgstr "Opcje wielu monitorów"
-#: prefs.js:622
+#: prefs.js:651
msgid "Dynamic opacity options"
msgstr "Opcje dynamicznej przeźroczystości"
-#: prefs.js:727
+#: prefs.js:771
msgid "Intellihide options"
msgstr "Opcje inteligentnego ukrywania"
-#: prefs.js:785
+#: prefs.js:835
msgid "Show Applications options"
msgstr "Opcje wyświetlania programów"
-#: prefs.js:861
+#: prefs.js:923
msgid "Show Desktop options"
-msgstr "Pokaż pulpit - opcje"
+msgstr "Pokaż opcje pulpitu"
-#: prefs.js:913
+#: prefs.js:1016
msgid "Window preview options"
msgstr "Opcje podglądu okna"
-#: prefs.js:1052
+#: prefs.js:1253
msgid "Ungrouped application options"
msgstr "Opcje trybu listy"
-#: prefs.js:1136
+#: prefs.js:1337
msgid "Customize middle-click behavior"
msgstr "Dostosowanie działania przycisków myszy"
-#: prefs.js:1247
+#: prefs.js:1448
msgid "Advanced hotkeys options"
msgstr "Zaawansowane opcje skrótów klawiszowych"
-#: prefs.js:1281
+#: prefs.js:1482
msgid "Secondary Menu Options"
msgstr "Opcje menu kontekstowego"
-#: prefs.js:1323 Settings.ui.h:174
+#: prefs.js:1524 Settings.ui.h:216
msgid "Advanced Options"
msgstr "Opcje zaawansowane"
-#: prefs.js:1412
+#: prefs.js:1611
msgid "Export settings"
-msgstr "Ustawienia eksportu"
+msgstr "Eksportuj ustawienia"
-#: prefs.js:1429
+#: prefs.js:1628
msgid "Import settings"
msgstr "Importuj ustawienia"
-#: appIcons.js:1259
+#: appIcons.js:1320
msgid "Show Details"
msgstr "Pokaż szczegóły"
-#: appIcons.js:1278
+#: appIcons.js:1339
msgid "New Window"
msgstr "Nowe okno"
-#: appIcons.js:1278 appIcons.js:1340 appIcons.js:1342 Settings.ui.h:8
+#: appIcons.js:1339 appIcons.js:1401 appIcons.js:1403 Settings.ui.h:10
msgid "Quit"
msgstr "Zamknięcie okna"
-#: appIcons.js:1342
+#: appIcons.js:1403
msgid "Windows"
msgstr "Okna"
-#: appIcons.js:1539
+#: appIcons.js:1611
+msgid "Power options"
+msgstr "Opcje zasilania"
+
+#: appIcons.js:1616
+msgid "Event logs"
+msgstr "Zapis zdarzeń"
+
+#: appIcons.js:1621
+msgid "System"
+msgstr "System"
+
+#: appIcons.js:1626
+msgid "Device Management"
+msgstr "Zarządzanie urządzeniami"
+
+#: appIcons.js:1631
+msgid "Disk Management"
+msgstr "Zarządzanie dyskami"
+
+#: appIcons.js:1638
+msgid "Terminal"
+msgstr "Terminal"
+
+#: appIcons.js:1643
+msgid "System monitor"
+msgstr "Monitor procesów"
+
+#: appIcons.js:1648
+msgid "Files"
+msgstr "Pliki"
+
+#: appIcons.js:1653
+msgid "Settings"
+msgstr "Ustawienia"
+
+#: appIcons.js:1660
msgid "Unlock taskbar"
msgstr "Odblokuj pasek zadań"
-#: appIcons.js:1539
+#: appIcons.js:1660
msgid "Lock taskbar"
msgstr "Zablokuj pasek zadań"
-#: appIcons.js:1544
+#: appIcons.js:1665
msgid "Dash to Panel Settings"
msgstr "Ustawienia Dash to Panel"
-#: appIcons.js:1551
+#: appIcons.js:1672
msgid "Restore Windows"
msgstr "Przywróć okna"
-#: appIcons.js:1551
+#: appIcons.js:1672
msgid "Show Desktop"
msgstr "Pokaż pulpit"
#: Settings.ui.h:1
+msgid "Nothing yet!"
+msgstr "Jeszcze nic!"
+
+#: Settings.ui.h:2
msgid ""
"When set to minimize, double clicking minimizes all the windows of the "
"application."
@@ -132,157 +172,169 @@ msgstr ""
"Wybranie zminimalizowania okna umożliwia minimalizowanie wszystkich okien "
"programu dwukrotnym kliknięciem."
-#: Settings.ui.h:2
+#: Settings.ui.h:3
msgid "Shift+Click action"
msgstr "Kliknięcie lewym przyciskiem + Shift"
-#: Settings.ui.h:3
-msgid "Raise window"
-msgstr "Przywrócenie okna"
-
#: Settings.ui.h:4
+msgid "Raise windows"
+msgstr "Przywróć okna"
+
+#: Settings.ui.h:5
msgid "Minimize window"
msgstr "Zminimalizowanie okna"
-#: Settings.ui.h:5
+#: Settings.ui.h:6
msgid "Launch new instance"
msgstr "Uruchomienie nowego okna"
-#: Settings.ui.h:6
+#: Settings.ui.h:7
msgid "Cycle through windows"
msgstr "Przełączanie między oknami"
-#: Settings.ui.h:7
+#: Settings.ui.h:8
msgid "Cycle windows + minimize"
msgstr "Przełączanie + zminimalizowanie okien"
#: Settings.ui.h:9
+msgid "Toggle single / Preview multiple"
+msgstr "Przełącz pojedyncze / Podejrzyj wiele"
+
+#: Settings.ui.h:11
msgid "Behavior for Middle-Click."
msgstr "Konfiguruje działanie kliknięcia środkowym przyciskiem."
-#: Settings.ui.h:10
+#: Settings.ui.h:12
msgid "Middle-Click action"
-msgstr "Kliknięcie środkowego przycisku"
+msgstr "Akcja środkowego przycisku"
-#: Settings.ui.h:11
+#: Settings.ui.h:13
msgid "Behavior for Shift+Middle-Click."
msgstr ""
"Konfiguruje działanie kliknięcia środkowym przyciskiem z przytrzymanym "
"klawiszem Shift."
-#: Settings.ui.h:12
+#: Settings.ui.h:14
msgid "Shift+Middle-Click action"
msgstr "Kliknięcie środkowym przyciskiem + Shift"
-#: Settings.ui.h:13
+#: Settings.ui.h:15
msgid "Isolate monitors"
msgstr "Niezależne obszary robocze"
-#: Settings.ui.h:14
+#: Settings.ui.h:16
msgid "Display favorite applications on all monitors"
msgstr "Ulubione programy na wszystkich monitorach"
-#: Settings.ui.h:15
+#: Settings.ui.h:17
msgid "Display the clock on all monitors"
msgstr "Zegar na wszystkich monitorach"
-#: Settings.ui.h:16
+#: Settings.ui.h:18
msgid "Display the status menu on all monitors"
msgstr "Menu systemowe na wszystkich monitorach"
-#: Settings.ui.h:17
+#: Settings.ui.h:19
msgid "Integrate AppMenu items"
-msgstr "Zintegrowane Menu programów"
+msgstr "Zintegrowane menu programów"
-#: Settings.ui.h:18
+#: Settings.ui.h:20
msgid "Show Details menu item"
msgstr "Wyświetl szczegóły"
-#: Settings.ui.h:19
+#: Settings.ui.h:21
msgid "Highlight focused application"
msgstr "Podświetlaj ikonę aktywnego programu"
-#: Settings.ui.h:20
-msgid "Highlight color"
-msgstr "Kolor podświetlenia"
+#: Settings.ui.h:22
+msgid "Icon dominant color"
+msgstr "Dominujący kolor ikon"
-#: Settings.ui.h:21
+#: Settings.ui.h:23
+msgid "Custom color"
+msgstr "Własny kolor"
+
+#: Settings.ui.h:24
msgid "Highlight opacity"
msgstr "Przeźroczystość podświetlenia"
-#: Settings.ui.h:22
+#: Settings.ui.h:25
msgid "Indicator height (px)"
msgstr "Wysokość wskaźnika (px)"
-#: Settings.ui.h:23
-msgid "Indicator color - Override Theme"
-msgstr "Kolor wskaźnika (zastępuje kolory motywu)"
+#: Settings.ui.h:26
+msgid "Indicator color - Icon Dominant"
+msgstr "Kolor wskaźnika - dominujący"
-#: Settings.ui.h:24
+#: Settings.ui.h:27
+msgid "Indicator color - Override Theme"
+msgstr "Kolor wskaźnika - nadpisanie motywu"
+
+#: Settings.ui.h:28
msgid "1 window open (or ungrouped)"
msgstr "1 otwarte okno (lub tryb listy)"
-#: Settings.ui.h:25
+#: Settings.ui.h:29
msgid "Apply to all"
msgstr "Zastosuj do wszystkich"
-#: Settings.ui.h:26
+#: Settings.ui.h:30
msgid "2 windows open"
msgstr "2 otwarte okna"
-#: Settings.ui.h:27
+#: Settings.ui.h:31
msgid "3 windows open"
msgstr "3 otwarte okna"
-#: Settings.ui.h:28
+#: Settings.ui.h:32
msgid "4+ windows open"
-msgstr "4 i więcej otwartych oknien"
+msgstr "4 i więcej otwartych okien"
-#: Settings.ui.h:29
+#: Settings.ui.h:33
msgid "Use different for unfocused"
msgstr "Użyj innego dla pozostałych"
-#: Settings.ui.h:30
+#: Settings.ui.h:34
msgid "Font size (px) of the application titles (default is 14)"
msgstr "Wielkość czcionki etykiet (px) (domyślnie 14) "
-#: Settings.ui.h:31
+#: Settings.ui.h:35
msgid "Font weight of application titles"
msgstr "Grubość czcionki tytułów programów"
-#: Settings.ui.h:32
+#: Settings.ui.h:36
msgid "inherit from theme"
msgstr "dziedzicz po motywie"
-#: Settings.ui.h:33
+#: Settings.ui.h:37
msgid "normal"
msgstr "zwykła"
-#: Settings.ui.h:34
+#: Settings.ui.h:38
msgid "lighter"
msgstr "cieńsza"
-#: Settings.ui.h:35
+#: Settings.ui.h:39
msgid "bold"
msgstr "pogrubiona"
-#: Settings.ui.h:36
+#: Settings.ui.h:40
msgid "bolder"
msgstr "grubsza"
-#: Settings.ui.h:37
+#: Settings.ui.h:41
msgid "Font color of the application titles"
msgstr "Kolor czcionki"
-#: Settings.ui.h:38
+#: Settings.ui.h:42
msgid "Maximum width (px) of the application titles (default is 160)"
msgstr "Maksymalna szerokość etykiet (px) (domyślnie 160)"
-#: Settings.ui.h:39
+#: Settings.ui.h:43
msgid "Use a fixed width for the application titles"
msgstr "Stała szerokości"
-#: Settings.ui.h:40
+#: Settings.ui.h:44
msgid ""
"The application titles all have the same width, even if their texts are "
"shorter than the maximum width. The maximum width value is used as the fixed "
@@ -292,93 +344,237 @@ msgstr ""
"są krótsze niż maksymalna szerokość. Wartość stałej szerokości jest taka, "
"jaka została podana w polu Maksymalna szerokość."
-#: Settings.ui.h:41
+#: Settings.ui.h:45
msgid "Display running indicators on unfocused applications"
msgstr "Pokazuj wskaźnik dla otwartych okien drugoplanowych"
-#: Settings.ui.h:42
+#: Settings.ui.h:46
msgid "Use the favorite icons as application launchers"
msgstr "Oddziel ulubione od uruchomionych programów"
-#: Settings.ui.h:43
+#: Settings.ui.h:47
msgid "Only hide the panel when it is obstructed by windows "
msgstr "Ukryj panel tylko wtedy, gdy jest zasłonięty przez okna"
-#: Settings.ui.h:44
+#: Settings.ui.h:48
msgid "The panel hides from"
msgstr "Ukrywanie przed oknami"
-#: Settings.ui.h:45
+#: Settings.ui.h:49
msgid "All windows"
msgstr "Wszystkie okna"
-#: Settings.ui.h:46
+#: Settings.ui.h:50
msgid "Focused windows"
msgstr "Aktywne okna programu"
-#: Settings.ui.h:47
+#: Settings.ui.h:51
msgid "Maximized windows"
msgstr "Zmaksymalizowane okna"
-#: Settings.ui.h:48
+#: Settings.ui.h:52
msgid "Require pressure at the edge of the screen to reveal the panel"
msgstr "Wymagaj nacisku na krawędzi ekranu, aby odsłonić panel"
-#: Settings.ui.h:49
+#: Settings.ui.h:53
msgid "Required pressure threshold (px)"
msgstr "Próg nacisku (px)"
-#: Settings.ui.h:50
+#: Settings.ui.h:54
msgid "Required pressure timeout (ms)"
msgstr "Czas nacisku (ms)"
-#: Settings.ui.h:51
+#: Settings.ui.h:55
msgid "Allow the panel to be revealed while in fullscreen mode"
msgstr "Pozwól, aby panel został odsłonięty w trybie pełnoekranowym"
-#: Settings.ui.h:52
-msgid "e.g. i"
-msgstr ""
+#: Settings.ui.h:56
+msgid "Only hide secondary panels (requires multi-monitors option)"
+msgstr "Ukryj wyłącznie drugorzędne panele (dla wielu monitorów)"
-#: Settings.ui.h:53
+#: Settings.ui.h:57
+msgid "e.g. i"
+msgstr "np. i"
+
+#: Settings.ui.h:58
msgid "Keyboard shortcut to reveal and hold the panel"
msgstr "Skrót klawiszowy do ukrywania i odsłaniania panelu"
-#: Settings.ui.h:54
+#: Settings.ui.h:59
msgid "Syntax: , , , "
msgstr "Składnia: , , , "
-#: Settings.ui.h:55
+#: Settings.ui.h:60
msgid "Hide and reveal animation duration (ms)"
msgstr "Czas trwania animacji ukrywania i odsłaniania (ms)"
-#: Settings.ui.h:56
+#: Settings.ui.h:61
msgid "Delay before hiding the panel (ms)"
msgstr "Opóźnienie ukrycia panelu (ms)"
-#: Settings.ui.h:57
-msgid "Preview timeout on icon leave (ms)"
-msgstr "Opóźnienie wygaszenia podglądu po opuszczeniu ikony (ms)"
-
-#: Settings.ui.h:58
-msgid ""
-"If set too low, the window preview of running applications may seem to close "
-"too quickly when trying to enter the popup. If set too high, the preview may "
-"linger too long when moving to an adjacent icon."
-msgstr ""
-"Ustawienie zbyt małej wartości może spowodować, że pogląd okien może zamykać "
-"się zbyt szybko, natomiast za duża wartość spowoduje długi czas wyświetlania "
-"podglądu po przejściu do sąsiedniej ikony."
-
-#: Settings.ui.h:59
+#: Settings.ui.h:62
msgid "Time (ms) before showing (100 is default)"
msgstr "Opóźnienie wyświetlania miniatur (domyślnie 100 ms)"
-#: Settings.ui.h:60
+#: Settings.ui.h:63
+msgid "Time (ms) before hiding (100 is default)"
+msgstr "Opóźnienie ukrywania miniatur (domyślnie 100 ms)"
+
+#: Settings.ui.h:64
+msgid "Animation time (ms)"
+msgstr "Długość animacji (ms)"
+
+#: Settings.ui.h:65
+msgid "Middle click on the preview to close the window"
+msgstr ""
+"Kliknięcie środkowego przycisku myszy na podglądzie zamyka okno programu."
+
+#: Settings.ui.h:66
+msgid "Window previews preferred size (px)"
+msgstr "Preferowany rozmiar podglądu okna (px)"
+
+#: Settings.ui.h:67
+msgid "Window previews aspect ratio Y (height)"
+msgstr "Proporcja wysokości podglądu okna"
+
+#: Settings.ui.h:68
+msgid "Window previews padding (px)"
+msgstr "Wewnętrzny odstęp w podglądzie okien (px)"
+
+#: Settings.ui.h:69
+msgid "1"
+msgstr "1"
+
+#: Settings.ui.h:70
+msgid "2"
+msgstr "2"
+
+#: Settings.ui.h:71
+msgid "3"
+msgstr "3"
+
+#: Settings.ui.h:72
+msgid "4"
+msgstr "4"
+
+#: Settings.ui.h:73
+msgid "5"
+msgstr "5"
+
+#: Settings.ui.h:74
+msgid "6"
+msgstr "6"
+
+#: Settings.ui.h:75
+msgid "7"
+msgstr "7"
+
+#: Settings.ui.h:76
+msgid "8"
+msgstr "8"
+
+#: Settings.ui.h:77
+msgid "9"
+msgstr "9"
+
+#: Settings.ui.h:78
+msgid "10"
+msgstr "10"
+
+#: Settings.ui.h:79
+msgid "11"
+msgstr "11"
+
+#: Settings.ui.h:80
+msgid "12"
+msgstr "12"
+
+#: Settings.ui.h:81
+msgid "13"
+msgstr "13"
+
+#: Settings.ui.h:82
+msgid "14"
+msgstr "14"
+
+#: Settings.ui.h:83
+msgid "15"
+msgstr "15"
+
+#: Settings.ui.h:84
+msgid "16"
+msgstr "16"
+
+#: Settings.ui.h:85
+msgid "17"
+msgstr "17"
+
+#: Settings.ui.h:86
+msgid "18"
+msgstr "18"
+
+#: Settings.ui.h:87
+msgid "19"
+msgstr "19"
+
+#: Settings.ui.h:88
+msgid "20"
+msgstr "20"
+
+#: Settings.ui.h:89
+msgid "21"
+msgstr "21"
+
+#: Settings.ui.h:90
+msgid "Fixed"
+msgstr "Stałe"
+
+#: Settings.ui.h:91
+msgid "Window previews aspect ratio X (width)"
+msgstr "Proporcja szerokości podglądu okna"
+
+#: Settings.ui.h:92
+msgid "Use custom opacity for the previews background"
+msgstr "Własna przeźroczystość dla tła podglądu okna"
+
+#: Settings.ui.h:93
+msgid "If disabled, the previews background have the same opacity as the panel"
+msgstr ""
+"Jeśli wyłączone, podgląd okna będzie mieć taką samą przeźroczystość jak panel"
+
+#: Settings.ui.h:94
+msgid "Close button and header position"
+msgstr "Położenie przycisku zamykania i nagłówka"
+
+#: Settings.ui.h:95
+msgid "Bottom"
+msgstr "Dół"
+
+#: Settings.ui.h:96
+msgid "Top"
+msgstr "Góra"
+
+#: Settings.ui.h:97
+msgid "Display window preview headers"
+msgstr "Wyświetlaj nagłówek w podglądzie okna"
+
+#: Settings.ui.h:98
+msgid "Font size (px) of the preview titles"
+msgstr "Wielkość czcionki etykiet (px) etykiet podglądu"
+
+#: Settings.ui.h:99
+msgid "Font weight of the preview titles"
+msgstr "Grubość czcionki etykiet podglądu"
+
+#: Settings.ui.h:100
+msgid "Font color of the preview titles"
+msgstr "Kolor czcionki etykiet podglądu"
+
+#: Settings.ui.h:101
msgid "Enable window peeking"
msgstr "Podgląd okien otwartych programów"
-#: Settings.ui.h:61
+#: Settings.ui.h:102
msgid ""
"When hovering over a window preview for some time, the window gets "
"distinguished."
@@ -386,11 +582,15 @@ msgstr ""
"Po najechaniu kursorem na podgląd okna zostanie ono pokazane na tle "
"wszystkich otwartych okien programów."
-#: Settings.ui.h:62
+#: Settings.ui.h:103
msgid "Enter window peeking mode timeout (ms)"
msgstr "Opóźnienie wyświetlania (ms)"
-#: Settings.ui.h:63
+#: Settings.ui.h:104
+msgid "50"
+msgstr "50"
+
+#: Settings.ui.h:105
msgid ""
"Time of inactivity while hovering over a window preview needed to enter the "
"window peeking mode."
@@ -398,223 +598,205 @@ msgstr ""
"Czas opóźnienia, po którym wyświetlony zostanie podgląd okien otwartych "
"programów."
-#: Settings.ui.h:64
+#: Settings.ui.h:106
msgid "Window peeking mode opacity"
-msgstr "Przeźroczystość okien"
+msgstr "Przeźroczystość podglądanych okien"
-#: Settings.ui.h:65
+#: Settings.ui.h:107
+msgid "0"
+msgstr "0"
+
+#: Settings.ui.h:108
msgid ""
"All windows except for the peeked one have their opacity set to the same "
"value."
msgstr ""
"Wszystkie okna, za wyjątkiem okna głównego, mają tą samą przeźroczystość."
-#: Settings.ui.h:66
-msgid "Middle click to close window"
-msgstr "Zamknięcie okna poprzez kliknięcie środkowego przycisku"
-
-#: Settings.ui.h:67
-msgid "Middle click on the preview to close the window."
-msgstr ""
-"Kliknięcie środkowego przycisku myszy na podglądzie zamyka otwarte okno "
-"programu."
-
-#: Settings.ui.h:68
-msgid "Display window title in previews"
-msgstr "Pokaż tytuł okna w miniaturze podglądu"
-
-#: Settings.ui.h:69
-msgid "Width of the window previews (px)"
-msgstr "Szerokość miniatury (px)"
-
-#: Settings.ui.h:70
-msgid "Height of the window previews (px)"
-msgstr "Wysokość miniatury (px)"
-
-#: Settings.ui.h:71
-msgid "Padding of the window previews (px)"
-msgstr "Odstęp między miniaturami (px)"
-
-#: Settings.ui.h:72
+#: Settings.ui.h:109
msgid "Super"
-msgstr ""
+msgstr "Super"
-#: Settings.ui.h:73
+#: Settings.ui.h:110
msgid "Super + Alt"
-msgstr ""
+msgstr "Super + Alt"
-#: Settings.ui.h:74
+#: Settings.ui.h:111
msgid "Hotkeys prefix"
msgstr "Prefiks dla skrótów klawiszowych"
-#: Settings.ui.h:75
+#: Settings.ui.h:112
msgid "Hotkeys will either be Super+Number or Super+Alt+Num"
msgstr "Skrót może być aktywowany jako Super+Cyfra lub Super+Alt+Cyfra"
-#: Settings.ui.h:76
+#: Settings.ui.h:113
msgid "Never"
msgstr "Nigdy"
-#: Settings.ui.h:77
+#: Settings.ui.h:114
msgid "Show temporarily"
msgstr "Przez chwilę"
-#: Settings.ui.h:78
+#: Settings.ui.h:115
msgid "Always visible"
msgstr "Zawsze"
-#: Settings.ui.h:79
+#: Settings.ui.h:116
msgid "Number overlay"
msgstr "Pokazywanie cyfr"
-#: Settings.ui.h:80
+#: Settings.ui.h:117
msgid ""
"Temporarily show the application numbers over the icons when using the "
"hotkeys."
msgstr "Podczas używania skrótów klawiszowych wyświetlaj cyfry nad ikonami ."
-#: Settings.ui.h:81
+#: Settings.ui.h:118
msgid "Hide timeout (ms)"
msgstr "Opóźnienie ukrywania (ms)"
-#: Settings.ui.h:82
+#: Settings.ui.h:119
msgid "e.g. q"
-msgstr ""
+msgstr "np. q"
-#: Settings.ui.h:83
+#: Settings.ui.h:120
msgid "Shortcut to show the overlay for 2 seconds"
msgstr "Skrót wyświetlający cyfry przez 2 sekundy"
-#: Settings.ui.h:84
+#: Settings.ui.h:121
msgid "Show window previews on hotkey"
msgstr "Pokaż podgląd okna po wciśnięciu klawisza skrótu"
-#: Settings.ui.h:85
+#: Settings.ui.h:122
msgid "Show previews when the application have multiple instances"
msgstr "Pokaż podgląd, gdy aplikacja ma wiele instancji"
-#: Settings.ui.h:86
+#: Settings.ui.h:123
msgid "Current Show Applications icon"
msgstr "Aktualna ikona"
-#: Settings.ui.h:87
+#: Settings.ui.h:124
msgid "Select a Show Applications image icon"
msgstr "Wybierz ikonę"
-#: Settings.ui.h:88
+#: Settings.ui.h:125
msgid "Custom Show Applications image icon"
msgstr "Wybierz własną ikonę"
-#: Settings.ui.h:89
-msgid "Show Desktop button width (px)"
-msgstr "Szerokość przycisku Pokaż pulpit (px)"
+#: Settings.ui.h:126
+msgid "Show Applications icon side padding (px)"
+msgstr "Wewnętrzny margines przycisku Pokaż aplikacje (px)"
-#: Settings.ui.h:90
+#: Settings.ui.h:127
+msgid "Show Desktop button width (px)"
+msgstr "Szerokość przycisku Pokaż pulpit (px)"
+
+#: Settings.ui.h:128
+msgid "Reveal the desktop when hovering the Show Desktop button"
+msgstr "Pokaż pulpit po najechaniu na przycisk Pokaż pulpit"
+
+#: Settings.ui.h:129
+msgid "Delay before revealing the desktop (ms)"
+msgstr "Opóźnienie przed ujawnieniem pulpitu (ms)"
+
+#: Settings.ui.h:130
+msgid "Fade duration (ms)"
+msgstr "Opóźnienie ukrywania (ms)"
+
+#: Settings.ui.h:131
msgid "The panel background opacity is affected by"
msgstr "Przezroczystość panelu zależy od"
-#: Settings.ui.h:91
+#: Settings.ui.h:132
msgid "Change opacity when a window gets closer than (px)"
msgstr "Zmień przezroczystość, gdy okno jest bliżej niż (px) "
-#: Settings.ui.h:93
+#: Settings.ui.h:134
#, no-c-format
msgid "Change opacity to (%)"
msgstr "Zmień przeźroczystość na (%)"
-#: Settings.ui.h:94
-msgid "0"
-msgstr ""
-
-#: Settings.ui.h:95
+#: Settings.ui.h:135
msgid "Opacity change animation duration (ms)"
msgstr "Czas trwania animacji przeźroczystości (ms)"
-#: Settings.ui.h:96
+#: Settings.ui.h:136
msgid "Panel screen position"
msgstr "Położenie panelu na ekranie"
-#: Settings.ui.h:97
-msgid "Bottom"
-msgstr "Dół"
-
-#: Settings.ui.h:98
-msgid "Top"
-msgstr "Góra"
-
-#: Settings.ui.h:99
+#: Settings.ui.h:137
msgid "Taskbar position"
msgstr "Położenie paska zadań"
-#: Settings.ui.h:100
+#: Settings.ui.h:138
msgid "Left, with plugin icons collapsed to right"
msgstr "Lewa, ikony wyrównane do prawej"
-#: Settings.ui.h:101
+#: Settings.ui.h:139
msgid "Left, with fixed center plugin icons"
msgstr "Lewa, ze stałym wyśrodkowaniem ikon"
-#: Settings.ui.h:102
+#: Settings.ui.h:140
msgid "Left, with floating center plugin icons"
msgstr "Lewa, ze swobodnym wyśrodkowaniem ikon"
-#: Settings.ui.h:103
+#: Settings.ui.h:141
msgid "Center, fixed in middle of monitor"
msgstr "Środek, ze stałym wyśrodkowaniem monitora"
-#: Settings.ui.h:104
+#: Settings.ui.h:142
msgid "Center, floating between left and right elements"
msgstr "Środek, ze swobodnym wyśrodkowaniem elementów"
-#: Settings.ui.h:105
+#: Settings.ui.h:143
msgid "Clock location"
msgstr "Położenie zegara"
-#: Settings.ui.h:106
+#: Settings.ui.h:144
msgid "Left of plugin icons"
msgstr "Lewa strona ikon wtyczek"
-#: Settings.ui.h:107
+#: Settings.ui.h:145
msgid "Right of plugin icons"
msgstr "Prawa strona ikon wtyczek"
-#: Settings.ui.h:108
+#: Settings.ui.h:146
msgid "Left of system indicators"
msgstr "Lewa strona menu systemowego"
-#: Settings.ui.h:109
+#: Settings.ui.h:147
msgid "Right of system indicators"
msgstr "Prawa strona menu systemowego"
-#: Settings.ui.h:110
+#: Settings.ui.h:148
msgid "Left of taskbar"
msgstr "Lewa strona paska zadań"
-#: Settings.ui.h:111
+#: Settings.ui.h:149
msgid "Right of taskbar"
msgstr "Prawa strona paska zadań"
-#: Settings.ui.h:112
+#: Settings.ui.h:150
msgid "Display the main panel on"
msgstr "Wyświetl panel na"
-#: Settings.ui.h:113
+#: Settings.ui.h:151
msgid "Display panels on all monitors"
msgstr "Wyświetl panel na wszystkich monitorach"
-#: Settings.ui.h:114
+#: Settings.ui.h:152
msgid "Panel Intellihide"
msgstr "Inteligentne ukrywanie panelu"
-#: Settings.ui.h:115
+#: Settings.ui.h:153
msgid "Hide and reveal the panel according to preferences"
msgstr "Ukryj i odsłoń panel według preferencji"
-#: Settings.ui.h:116
+#: Settings.ui.h:154
msgid "Position"
msgstr "Położenie"
-#: Settings.ui.h:117
+#: Settings.ui.h:155
msgid ""
"Panel Size\n"
"(default is 48)"
@@ -622,7 +804,7 @@ msgstr ""
"Rozmiar panelu\n"
"(domyślnie 48)"
-#: Settings.ui.h:119
+#: Settings.ui.h:157
msgid ""
"App Icon Margin\n"
"(default is 8)"
@@ -630,7 +812,7 @@ msgstr ""
"Odstęp między\n"
"ikonami (domyślnie 8)"
-#: Settings.ui.h:121
+#: Settings.ui.h:159
msgid ""
"App Icon Padding\n"
"(default is 4)"
@@ -638,136 +820,146 @@ msgstr ""
"Wypełnienie wnętrza\n"
"ikony (domyślnie 4)"
-#: Settings.ui.h:123
+#: Settings.ui.h:161
msgid "Running indicator position"
msgstr "Pozycja wskaźnika aktywnych okien"
-#: Settings.ui.h:124
+#: Settings.ui.h:162
msgid "Running indicator style (Focused app)"
msgstr "Wygląd wskaźnika (okno na pierwszym planie)"
-#: Settings.ui.h:125
+#: Settings.ui.h:163
msgid "Dots"
msgstr "Kropki"
-#: Settings.ui.h:126
+#: Settings.ui.h:164
msgid "Squares"
msgstr "Kwadraty"
-#: Settings.ui.h:127
+#: Settings.ui.h:165
msgid "Dashes"
msgstr "Kreski"
-#: Settings.ui.h:128
+#: Settings.ui.h:166
msgid "Segmented"
msgstr "Segmenty"
-#: Settings.ui.h:129
+#: Settings.ui.h:167
msgid "Solid"
msgstr "Ciągły"
-#: Settings.ui.h:130
+#: Settings.ui.h:168
msgid "Ciliora"
-msgstr ""
+msgstr "Ciliora"
-#: Settings.ui.h:131
+#: Settings.ui.h:169
msgid "Metro"
-msgstr ""
+msgstr "Metro"
-#: Settings.ui.h:132
+#: Settings.ui.h:170
msgid "Running indicator style (Unfocused apps)"
msgstr "Wygląd wskaźnika (okno na drugim planie)"
-#: Settings.ui.h:133
+#: Settings.ui.h:171
msgid "Override panel theme background color "
msgstr "Zastąp kolor panelu"
-#: Settings.ui.h:134
+#: Settings.ui.h:172
msgid "Override panel theme background opacity"
msgstr "Zastąp przeźroczystość panelu"
-#: Settings.ui.h:136
+#: Settings.ui.h:174
#, no-c-format
msgid "Panel background opacity (%)"
msgstr "Przeźroczystość panelu (%)"
-#: Settings.ui.h:137
+#: Settings.ui.h:175
msgid "Dynamic background opacity"
msgstr "Dynamiczna przeźroczystość"
-#: Settings.ui.h:138
+#: Settings.ui.h:176
msgid "Change opacity when a window gets close to the panel"
msgstr "Zmiana przeźroczystości w kontakcie z oknem"
-#: Settings.ui.h:139
+#: Settings.ui.h:177
msgid "Override panel theme gradient "
msgstr "Zastąp kolor panelu gradientem "
-#: Settings.ui.h:141
+#: Settings.ui.h:179
#, no-c-format
msgid "Gradient top color and opacity (%)"
msgstr "Góra, kolor i przeźroczystość (%)"
-#: Settings.ui.h:143
+#: Settings.ui.h:181
#, no-c-format
msgid "Gradient bottom color and opacity (%)"
msgstr "Dół, kolor i przeźroczystość (%)"
-#: Settings.ui.h:144
+#: Settings.ui.h:182
msgid "Style"
msgstr "Wygląd"
-#: Settings.ui.h:145
+#: Settings.ui.h:183
msgid "Show favorite applications"
msgstr "Pokaż ulubione programy"
-#: Settings.ui.h:146
+#: Settings.ui.h:184
+msgid "Show running applications"
+msgstr "Pokaż uruchomione programy"
+
+#: Settings.ui.h:185
msgid "Show Applications icon"
msgstr "Pokaż ikonę Programy"
-#: Settings.ui.h:147
+#: Settings.ui.h:186
msgid "Animate Show Applications."
msgstr "Animuj wyświetlanie programów"
-#: Settings.ui.h:148
+#: Settings.ui.h:187
msgid "Show Activities button"
msgstr "Pokaż przycisk Podgląd"
-#: Settings.ui.h:149
+#: Settings.ui.h:188
msgid "Show Desktop button"
msgstr "Pokaż przycisk Pulpit"
-#: Settings.ui.h:150
+#: Settings.ui.h:189
msgid "Show AppMenu button"
msgstr "Pokaż przycisk Menu programu"
-#: Settings.ui.h:151
+#: Settings.ui.h:190
msgid "Top Bar > Show App Menu must be enabled in Tweak Tool"
-msgstr ""
-"Górny pasek > Menu programu - musi być włączone w Dostrajanie"
-""
+msgstr "Górny pasek > Menu programu - musi być włączone w Dostrajanie"
-#: Settings.ui.h:152
+#: Settings.ui.h:191
msgid "Show window previews on hover"
msgstr "Pokaż podgląd okna po najechaniu myszą"
-#: Settings.ui.h:153
+#: Settings.ui.h:192
+msgid "Show tooltip on hover"
+msgstr "Pokaż szczegóły po najechaniu myszą"
+
+#: Settings.ui.h:193
msgid "Isolate Workspaces"
msgstr "Niezależne obszary robocze"
-#: Settings.ui.h:154
+#: Settings.ui.h:194
msgid "Ungroup applications"
msgstr "Tryb listy (nie scalaj ikon)"
-#: Settings.ui.h:155
+#: Settings.ui.h:195
msgid "Behaviour when clicking on the icon of a running application."
msgstr "Reakcja na kliknięcie ikony aktywnego programu."
-#: Settings.ui.h:156
+#: Settings.ui.h:196
msgid "Click action"
msgstr "Działanie kliknięcia"
-#: Settings.ui.h:157
+#: Settings.ui.h:197
+msgid "Toggle windows"
+msgstr "Przełącz okna"
+
+#: Settings.ui.h:198
msgid ""
"Enable Super+(0-9) as shortcuts to activate apps. It can also be used "
"together with Shift and Ctrl."
@@ -775,15 +967,15 @@ msgstr ""
"Konfigurowanie skrótów uruchamiania programów\n"
"Super+(0-9) - możliwe użycie razem z Shift i Ctrl."
-#: Settings.ui.h:158
+#: Settings.ui.h:199
msgid "Use hotkeys to activate apps"
msgstr "Skróty klawiszowe uruchamiania programów"
-#: Settings.ui.h:159
+#: Settings.ui.h:200
msgid "Behavior"
msgstr "Zachowanie"
-#: Settings.ui.h:160
+#: Settings.ui.h:201
msgid ""
"Tray Font Size\n"
"(0 = theme default)"
@@ -791,7 +983,7 @@ msgstr ""
"Rozmiar czcionki zasobnika\n"
"(0 - domyślnie z motywu)"
-#: Settings.ui.h:162
+#: Settings.ui.h:203
msgid ""
"LeftBox Font Size\n"
"(0 = theme default)"
@@ -799,7 +991,7 @@ msgstr ""
"Rozmiar czcionki lewej strony panelu\n"
"(0 - domyślnie z motywu)"
-#: Settings.ui.h:164
+#: Settings.ui.h:205
msgid ""
"Tray Item Padding\n"
"(-1 = theme default)"
@@ -807,7 +999,7 @@ msgstr ""
"Odstęp elementów zasobnika\n"
"(-1 - domyślnie z motywu)"
-#: Settings.ui.h:166
+#: Settings.ui.h:207
msgid ""
"Status Icon Padding\n"
"(-1 = theme default)"
@@ -815,7 +1007,7 @@ msgstr ""
"Odstęp elementów menu systemowego\n"
"(-1 - domyślnie z motywu)"
-#: Settings.ui.h:168
+#: Settings.ui.h:209
msgid ""
"LeftBox Padding\n"
"(-1 = theme default)"
@@ -823,55 +1015,60 @@ msgstr ""
"Odstęp elementów lewej strony panelu\n"
"(-1 - domyślnie z motywu)"
-#: Settings.ui.h:170
+#: Settings.ui.h:211
msgid "Animate switching applications"
msgstr "Animuj przełączenie programów"
-#: Settings.ui.h:171
+#: Settings.ui.h:212
msgid "Animate launching new windows"
msgstr "Animuj uruchamianie nowych programów"
-#: Settings.ui.h:172
+#: Settings.ui.h:213
msgid "Keep original gnome-shell dash (overview)"
msgstr "Zachowaj oryginalny panel (podgląd)"
-#: Settings.ui.h:173
+#: Settings.ui.h:214
+msgid "Activate panel menu buttons (e.g. date menu) on click only"
+msgstr ""
+"Aktywuj przyciski menu panelu (np. menu kalendarza) tylko po kliknięciu"
+
+#: Settings.ui.h:215
msgid "App icon secondary (right-click) menu"
msgstr "Menu kontekstowe programu (prawy przycisk myszy)"
-#: Settings.ui.h:175
+#: Settings.ui.h:217
msgid "Fine-Tune"
msgstr "Dostrajanie"
-#: Settings.ui.h:176
+#: Settings.ui.h:218
msgid "version: "
msgstr "wersja: "
-#: Settings.ui.h:177
+#: Settings.ui.h:219
msgid "GitHub"
-msgstr ""
+msgstr "GitHub"
-#: Settings.ui.h:178
+#: Settings.ui.h:220
msgid ""
"Use the buttons below to create a settings file from your current "
"preferences that can be imported on a different machine."
msgstr ""
-"Użyj poniższych przycisków, aby utworzyć plik ustawień bieżących"
-"preferencji, które można zaimportować na innym komputerze."
+"Użyj poniższych przycisków, aby utworzyć plik ustawień bieżącychpreferencji, "
+"które można zaimportować na innym komputerze."
-#: Settings.ui.h:179
+#: Settings.ui.h:221
msgid "Export and import settings"
msgstr "Ustawienia eksportu i importu"
-#: Settings.ui.h:180
+#: Settings.ui.h:222
msgid "Export to file"
msgstr "Eksportuj do pliku"
-#: Settings.ui.h:181
+#: Settings.ui.h:223
msgid "Import from file"
msgstr "Importuj z pliku"
-#: Settings.ui.h:182
+#: Settings.ui.h:224
msgid ""
"This program comes with ABSOLUTELY NO WARRANTY.\n"
"See the GNU General Public License, wersja 2 "
"lub nowsza."
-#: Settings.ui.h:184
+#: Settings.ui.h:226
msgid "About"
msgstr "Informacje"
+
+#~ msgid "Highlight color"
+#~ msgstr "Kolor podświetlenia"
+
+#~ msgid "Preview timeout on icon leave (ms)"
+#~ msgstr "Opóźnienie wygaszenia podglądu po opuszczeniu ikony (ms)"
+
+#~ msgid ""
+#~ "If set too low, the window preview of running applications may seem to "
+#~ "close too quickly when trying to enter the popup. If set too high, the "
+#~ "preview may linger too long when moving to an adjacent icon."
+#~ msgstr ""
+#~ "Ustawienie zbyt małej wartości może spowodować, że pogląd okien może "
+#~ "zamykać się zbyt szybko, natomiast za duża wartość spowoduje długi czas "
+#~ "wyświetlania podglądu po przejściu do sąsiedniej ikony."
+
+#~ msgid "Middle click to close window"
+#~ msgstr "Zamknięcie okna poprzez kliknięcie środkowego przycisku"
+
+#~ msgid "Width of the window previews (px)"
+#~ msgstr "Szerokość miniatury (px)"
+
+#~ msgid "Height of the window previews (px)"
+#~ msgstr "Wysokość miniatury (px)"
+
+#~ msgid "Padding of the window previews (px)"
+#~ msgstr "Odstęp między miniaturami (px)"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index b5ceec6..ade01a3 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -1,605 +1,791 @@
-# Dash to Panel Simplified Chinese Translation.
-# This file is distributed under the same license as the Dash to Panel package.
-# Boyuan Yang <073plan@gmail.com>, 2017, 2018.
+# Dash to Panel Traditional Chinese Translation
+# This file is distributed under the same license as the Dash To Panel package.
+#
+# Jack Wu , 2019.
+# pan93412 , 2019.
#
msgid ""
msgstr ""
-"Project-Id-Version: dash-to-panel 17\n"
-"Report-Msgid-Bugs-To: https://github.com/jderose9/dash-to-panel/issues\n"
-"POT-Creation-Date: 2018-12-10 16:23-0500\n"
-"PO-Revision-Date: 2019-2-24 17:45+0800\n"
-"Last-Translator: OriginCode \n"
+"Project-Id-Version: Dash To Panel\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2019-07-19 20:51+0800\n"
+"PO-Revision-Date: 2019-07-28 14:38+0800\n"
+"Last-Translator: pan93412 \n"
"Language-Team: Chinese (Traditional)\n"
"Language: zh_TW\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.2.1\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: prefs.js:312
+#: prefs.js:310
msgid "Running Indicator Options"
msgstr "執行指示器選項"
-#: prefs.js:319 prefs.js:486 prefs.js:629 prefs.js:734 prefs.js:792
-#: prefs.js:868 prefs.js:920 prefs.js:1059 prefs.js:1143 prefs.js:1254
-#: prefs.js:1288 prefs.js:1330
+#: prefs.js:317 prefs.js:515 prefs.js:658 prefs.js:778 prefs.js:842
+#: prefs.js:930 prefs.js:1023 prefs.js:1260 prefs.js:1344 prefs.js:1455
+#: prefs.js:1489 prefs.js:1531
msgid "Reset to defaults"
-msgstr "恢復預設值"
+msgstr "重設至預設值"
-#: prefs.js:431
+#: prefs.js:460
msgid "Default (Primary monitor)"
-msgstr "主顯示器"
+msgstr "預設(主顯示器)"
-#: prefs.js:434
+#: prefs.js:463
msgid "Monitor "
msgstr "顯示器 "
-#: prefs.js:479
+#: prefs.js:508
msgid "Multi-monitors options"
msgstr "多顯示器選項"
-#: prefs.js:622
+#: prefs.js:651
msgid "Dynamic opacity options"
msgstr "動態半透明選項"
-#: prefs.js:727
+#: prefs.js:771
msgid "Intellihide options"
msgstr "智慧隱藏選項"
-#: prefs.js:785
+#: prefs.js:835
msgid "Show Applications options"
msgstr "“顯示應用程式”選項"
-#: prefs.js:861
+#: prefs.js:923
msgid "Show Desktop options"
msgstr "“顯示桌面”選項"
-#: prefs.js:913
+#: prefs.js:1016
msgid "Window preview options"
msgstr "視窗預覽選項"
-#: prefs.js:1052
+#: prefs.js:1253
msgid "Ungrouped application options"
msgstr "未分組的應用程式選項"
-#: prefs.js:1136
+#: prefs.js:1337
msgid "Customize middle-click behavior"
-msgstr "自定義中鍵點選行為"
+msgstr "自訂滑鼠中鍵點選行為"
-#: prefs.js:1247
+#: prefs.js:1448
msgid "Advanced hotkeys options"
-msgstr "高階熱鍵選項"
+msgstr "進階快速鍵選項"
-#: prefs.js:1281
+#: prefs.js:1482
msgid "Secondary Menu Options"
msgstr "次級選單選項"
-#: prefs.js:1323 Settings.ui.h:174
+#: prefs.js:1524
msgid "Advanced Options"
-msgstr "高階選項"
+msgstr "進階選項"
-#: prefs.js:1412
+#: prefs.js:1611
msgid "Export settings"
msgstr "匯出設定"
-#: prefs.js:1429
+#: prefs.js:1628
msgid "Import settings"
msgstr "匯入設定"
-#: appIcons.js:1259
+#: appIcons.js:1287
msgid "Show Details"
-msgstr "顯示細節"
+msgstr "顯示詳細資訊"
-#: appIcons.js:1278
+#: appIcons.js:1306
msgid "New Window"
-msgstr "新建視窗"
+msgstr "建立視窗"
-#: appIcons.js:1278 appIcons.js:1340 appIcons.js:1342 Settings.ui.h:8
+#: appIcons.js:1306 appIcons.js:1368 appIcons.js:1370
msgid "Quit"
-msgstr "退出"
+msgstr "離開"
-#: appIcons.js:1342
+#: appIcons.js:1370
msgid "Windows"
msgstr "視窗"
-#: appIcons.js:1539
+#: appIcons.js:1578
+msgid "Power options"
+msgstr "電源選項"
+
+#: appIcons.js:1583
+msgid "Event logs"
+msgstr "事件日誌"
+
+#: appIcons.js:1588
+msgid "System"
+msgstr "系統"
+
+#: appIcons.js:1593
+msgid "Device Management"
+msgstr "裝置管理"
+
+#: appIcons.js:1598
+msgid "Disk Management"
+msgstr "磁碟管理"
+
+#: appIcons.js:1605
+msgid "Terminal"
+msgstr "終端"
+
+#: appIcons.js:1610
+msgid "System monitor"
+msgstr "系統監視器"
+
+#: appIcons.js:1615
+msgid "Files"
+msgstr "檔案"
+
+#: appIcons.js:1620
+msgid "Settings"
+msgstr "設定"
+
+#: appIcons.js:1627
msgid "Unlock taskbar"
msgstr "解鎖工作列"
-#: appIcons.js:1539
+#: appIcons.js:1627
msgid "Lock taskbar"
msgstr "鎖定工作列"
-#: appIcons.js:1544
+#: appIcons.js:1632
msgid "Dash to Panel Settings"
msgstr "Dash to Panel 設定"
-#: appIcons.js:1551
+#: appIcons.js:1639
msgid "Restore Windows"
-msgstr "恢復視窗"
+msgstr "復原視窗"
-#: appIcons.js:1551
+#: appIcons.js:1639
msgid "Show Desktop"
msgstr "顯示桌面"
#: Settings.ui.h:1
+msgid "Nothing yet!"
+msgstr "這裏什麼也沒有!"
+
+#: Settings.ui.h:2
msgid ""
"When set to minimize, double clicking minimizes all the windows of the "
"application."
-msgstr "設定為最小化時,雙擊將最小化該應用程式的所有視窗。"
-
-#: Settings.ui.h:2
-msgid "Shift+Click action"
-msgstr "Shift+點選動作"
+msgstr "當設定為最小化時,點兩下可將應用程式的所有視窗最小化。"
#: Settings.ui.h:3
-msgid "Raise window"
-msgstr "提升視窗"
+msgid "Shift+Click action"
+msgstr "Shift + 點選動作"
#: Settings.ui.h:4
+msgid "Raise windows"
+msgstr "抬升視窗"
+
+#: Settings.ui.h:5
msgid "Minimize window"
msgstr "最小化視窗"
-#: Settings.ui.h:5
-msgid "Launch new instance"
-msgstr "啟動新例項"
-
#: Settings.ui.h:6
-msgid "Cycle through windows"
-msgstr "在視窗間迴圈切換"
+msgid "Launch new instance"
+msgstr "啟動新實例"
#: Settings.ui.h:7
+msgid "Cycle through windows"
+msgstr "在視窗間循環"
+
+#: Settings.ui.h:8
msgid "Cycle windows + minimize"
-msgstr "迴圈視窗 + 最小化"
+msgstr "循環視窗並最小化"
#: Settings.ui.h:9
-msgid "Behavior for Middle-Click."
-msgstr "中鍵點選行為。"
-
-#: Settings.ui.h:10
-msgid "Middle-Click action"
-msgstr "中鍵點選動作"
+msgid "Toggle single / Preview multiple"
+msgstr "切換單視窗 / 預覽多視窗"
#: Settings.ui.h:11
-msgid "Behavior for Shift+Middle-Click."
-msgstr "Shift+中鍵點選的行為。"
+msgid "Behavior for Middle-Click."
+msgstr "滑鼠中鍵行為。"
#: Settings.ui.h:12
-msgid "Shift+Middle-Click action"
-msgstr "Shift+中鍵點選動作"
+msgid "Middle-Click action"
+msgstr "滑鼠中鍵動作"
#: Settings.ui.h:13
+msgid "Behavior for Shift+Middle-Click."
+msgstr "Shift + 滑鼠中鍵行為。"
+
+#: Settings.ui.h:14
+msgid "Shift+Middle-Click action"
+msgstr "Shift + 滑鼠中鍵動作"
+
+#: Settings.ui.h:15
msgid "Isolate monitors"
msgstr "隔離顯示器"
-#: Settings.ui.h:14
+#: Settings.ui.h:16
msgid "Display favorite applications on all monitors"
msgstr "在所有顯示器上顯示收藏的應用程式"
-#: Settings.ui.h:15
+#: Settings.ui.h:17
msgid "Display the clock on all monitors"
msgstr "在所有顯示器上顯示時鐘"
-#: Settings.ui.h:16
+#: Settings.ui.h:18
msgid "Display the status menu on all monitors"
msgstr "在所有顯示器上顯示狀態選單"
-#: Settings.ui.h:17
-msgid "Integrate AppMenu items"
-msgstr "整合應用選單項"
-
-#: Settings.ui.h:18
-msgid "Show Details menu item"
-msgstr "顯示細節選單項"
-
#: Settings.ui.h:19
-msgid "Highlight focused application"
-msgstr "高亮顯示取得焦點的應用程式"
+msgid "Integrate AppMenu items"
+msgstr "整合 AppMenu 項目"
#: Settings.ui.h:20
-msgid "Highlight color"
-msgstr "高亮顏色"
+msgid "Show Details menu item"
+msgstr "顯示詳細資料 選單項目"
#: Settings.ui.h:21
-msgid "Highlight opacity"
-msgstr "高亮不透明度"
+msgid "Highlight focused application"
+msgstr "突顯焦點應用"
#: Settings.ui.h:22
-msgid "Indicator height (px)"
-msgstr "指示器高度(畫素)"
+msgid "Icon dominant color"
+msgstr "圖示主色"
#: Settings.ui.h:23
-msgid "Indicator color - Override Theme"
-msgstr "指示器顏色 - 覆蓋主題"
+msgid "Custom color"
+msgstr "自訂顏色"
#: Settings.ui.h:24
-msgid "1 window open (or ungrouped)"
-msgstr "1 視窗開啟(或未分組)"
+msgid "Highlight opacity"
+msgstr "突顯不透明度"
#: Settings.ui.h:25
-msgid "Apply to all"
-msgstr "應用至全部"
+msgid "Indicator height (px)"
+msgstr "指示器高度(像素 px)"
#: Settings.ui.h:26
-msgid "2 windows open"
-msgstr "2 視窗開啟"
+msgid "Indicator color - Icon Dominant"
+msgstr "指示器顏色 - 主圖示"
#: Settings.ui.h:27
-msgid "3 windows open"
-msgstr "3 視窗開啟"
+msgid "Indicator color - Override Theme"
+msgstr "指示器顏色 - 覆寫主題"
#: Settings.ui.h:28
-msgid "4+ windows open"
-msgstr "4+ 視窗開啟"
+msgid "1 window open (or ungrouped)"
+msgstr "打開了(或未分組)1 個視窗"
#: Settings.ui.h:29
-msgid "Use different for unfocused"
-msgstr "為未取得焦點的程式使用不同方案"
+msgid "Apply to all"
+msgstr "全部套用"
#: Settings.ui.h:30
-msgid "Font size (px) of the application titles (default is 14)"
-msgstr "應用程式標題字型大小(畫素)(預設值為 14)"
+msgid "2 windows open"
+msgstr "打開了 2 個視窗"
#: Settings.ui.h:31
+msgid "3 windows open"
+msgstr "打開了 3 個視窗"
+
+#: Settings.ui.h:32
+msgid "4+ windows open"
+msgstr "打開了 4 個以上的視窗"
+
+#: Settings.ui.h:33
+msgid "Use different for unfocused"
+msgstr "為未聚焦視窗使用不同樣式"
+
+#: Settings.ui.h:34
+msgid "Font size (px) of the application titles (default is 14)"
+msgstr "應用程式標題字型大小(像素)(預設為 14)"
+
+#: Settings.ui.h:35
msgid "Font weight of application titles"
msgstr "應用程式標題字型粗細"
-#: Settings.ui.h:32
+#: Settings.ui.h:36
msgid "inherit from theme"
msgstr "繼承自主題"
-#: Settings.ui.h:33
-msgid "normal"
-msgstr "正常"
-
-#: Settings.ui.h:34
-msgid "lighter"
-msgstr "較細"
-
-#: Settings.ui.h:35
-msgid "bold"
-msgstr "粗體"
-
-#: Settings.ui.h:36
-msgid "bolder"
-msgstr "更粗"
-
#: Settings.ui.h:37
+msgid "normal"
+msgstr "normal"
+
+#: Settings.ui.h:38
+msgid "lighter"
+msgstr "lighter"
+
+#: Settings.ui.h:39
+msgid "bold"
+msgstr "bold"
+
+#: Settings.ui.h:40
+msgid "bolder"
+msgstr "bolder"
+
+#: Settings.ui.h:41
msgid "Font color of the application titles"
msgstr "應用程式標題字型顏色"
-#: Settings.ui.h:38
+#: Settings.ui.h:42
msgid "Maximum width (px) of the application titles (default is 160)"
-msgstr "應用程式最大寬度(畫素)(預設值為 160)"
+msgstr "應用程式標題寬度上限(像素)(預設為 160)"
-#: Settings.ui.h:39
+#: Settings.ui.h:43
msgid "Use a fixed width for the application titles"
-msgstr "為應用程式標題使用固定寬度"
+msgstr "為所有應用程式標題使用固定寬度"
-#: Settings.ui.h:40
+#: Settings.ui.h:44
msgid ""
"The application titles all have the same width, even if their texts are "
"shorter than the maximum width. The maximum width value is used as the fixed "
"width."
msgstr ""
-"應用程式標題都將使用相同寬度,即使其文字寬度無法達到最大寬度。最大寬度值將被"
-"用於固定寬度值。"
-
-#: Settings.ui.h:41
-msgid "Display running indicators on unfocused applications"
-msgstr "在未取得焦點的應用上顯示執行指示器"
-
-#: Settings.ui.h:42
-msgid "Use the favorite icons as application launchers"
-msgstr "使用收藏的圖示作為應用程式啟動器"
-
-#: Settings.ui.h:43
-msgid "Only hide the panel when it is obstructed by windows "
-msgstr "僅在面板被視窗阻擋時隱藏"
-
-#: Settings.ui.h:44
-msgid "The panel hides from"
-msgstr "觸發面板隱藏的物件"
+"所有的應用程式標題共用相同的寬度,即使它們的文字比寬度上限短。寬度上限值被用"
+"作固定寬度。"
#: Settings.ui.h:45
+msgid "Display running indicators on unfocused applications"
+msgstr "在未聚焦的應用程式上顯示正在執行的指示器"
+
+#: Settings.ui.h:46
+msgid "Use the favorite icons as application launchers"
+msgstr "為應用程式啟動器使用收藏的圖示"
+
+#: Settings.ui.h:47
+msgid "Only hide the panel when it is obstructed by windows "
+msgstr "僅在面板被視窗阻擋時才將其隱藏 "
+
+#: Settings.ui.h:48
+msgid "The panel hides from"
+msgstr "面板隱藏自"
+
+#: Settings.ui.h:49
msgid "All windows"
msgstr "所有視窗"
-#: Settings.ui.h:46
+#: Settings.ui.h:50
msgid "Focused windows"
-msgstr "獲得焦點的視窗"
+msgstr "焦點視窗"
-#: Settings.ui.h:47
+#: Settings.ui.h:51
msgid "Maximized windows"
msgstr "最大化視窗"
-#: Settings.ui.h:48
+#: Settings.ui.h:52
msgid "Require pressure at the edge of the screen to reveal the panel"
msgstr "在螢幕邊緣受到一定游標壓力時顯示面板"
-#: Settings.ui.h:49
+#: Settings.ui.h:53
msgid "Required pressure threshold (px)"
-msgstr "所需壓力閾值(畫素)"
+msgstr "所需壓力閾值(像素)"
-#: Settings.ui.h:50
+#: Settings.ui.h:54
msgid "Required pressure timeout (ms)"
-msgstr "所需壓力超時(毫秒)"
+msgstr "所需壓力等候時間(毫秒)"
-#: Settings.ui.h:51
+#: Settings.ui.h:55
msgid "Allow the panel to be revealed while in fullscreen mode"
-msgstr "允許面板在全螢幕模式下顯示"
+msgstr "允許在全螢幕模式下顯示面板"
-#: Settings.ui.h:52
+#: Settings.ui.h:56
+msgid "Only hide secondary panels (requires multi-monitors option)"
+msgstr "僅隱藏次級面板(需要多顯示器選項)"
+
+#: Settings.ui.h:57
msgid "e.g. i"
msgstr "例如 i"
-#: Settings.ui.h:53
-msgid "Keyboard shortcut to reveal and hold the panel"
-msgstr "顯示並保持面板的鍵盤快捷鍵"
-
-#: Settings.ui.h:54
-msgid "Syntax: , , , "
-msgstr "語法:, , , "
-
-#: Settings.ui.h:55
-msgid "Hide and reveal animation duration (ms)"
-msgstr "隱藏與顯示動畫持續時間(毫秒)"
-
-#: Settings.ui.h:56
-msgid "Delay before hiding the panel (ms)"
-msgstr "隱藏面板之前的延時(毫秒)"
-
-#: Settings.ui.h:57
-msgid "Preview timeout on icon leave (ms)"
-msgstr "離開圖示時的預覽延時(毫秒)"
-
#: Settings.ui.h:58
-msgid ""
-"If set too low, the window preview of running applications may seem to close "
-"too quickly when trying to enter the popup. If set too high, the preview may "
-"linger too long when moving to an adjacent icon."
-msgstr ""
-"如果設定過低,在嘗試進入彈出選單時正在執行程式的視窗預覽可能會關閉得過快。如"
-"果設定過高,在移動至臨接圖示時預覽可能滯留過長時間。"
+msgid "Keyboard shortcut to reveal and hold the panel"
+msgstr "顯示並保持面板的鍵盤快速鍵"
#: Settings.ui.h:59
-msgid "Time (ms) before showing (100 is default)"
-msgstr "顯示前的延時(毫秒,預設為 100)"
+msgid "Syntax: , , , "
+msgstr "語法: , , , "
#: Settings.ui.h:60
-msgid "Enable window peeking"
-msgstr "啟用視窗概覽功能"
+msgid "Hide and reveal animation duration (ms)"
+msgstr "隱藏及顯示動畫持續時間(毫秒)"
#: Settings.ui.h:61
-msgid ""
-"When hovering over a window preview for some time, the window gets "
-"distinguished."
-msgstr "在視窗預覽上懸浮一定時間後,該視窗將被區別顯示。"
+msgid "Delay before hiding the panel (ms)"
+msgstr "隱藏面板前的延遲(毫秒)"
#: Settings.ui.h:62
-msgid "Enter window peeking mode timeout (ms)"
-msgstr "進入視窗概覽模式延時(毫秒)"
+msgid "Time (ms) before showing (100 is default)"
+msgstr "顯示前的延遲(毫秒)(預設為 100)"
#: Settings.ui.h:63
-msgid ""
-"Time of inactivity while hovering over a window preview needed to enter the "
-"window peeking mode."
-msgstr "為進入視窗概覽模式,需要游標懸浮在預覽視窗上不活動的時間。"
+msgid "Time (ms) before hiding (100 is default)"
+msgstr "隱藏前的延遲(毫秒)(預設為 100)"
#: Settings.ui.h:64
-msgid "Window peeking mode opacity"
-msgstr "視窗概覽模式不透明度"
+msgid "Animation time (ms)"
+msgstr "動畫時間(毫秒)"
#: Settings.ui.h:65
-msgid ""
-"All windows except for the peeked one have their opacity set to the same "
-"value."
-msgstr "除正在處於概覽狀態的視窗外,其它所有視窗的不透明度將被設定為同一個值。"
+msgid "Middle click on the preview to close the window"
+msgstr "在預覽介面點選中鍵以關閉視窗"
#: Settings.ui.h:66
-msgid "Middle click to close window"
-msgstr "中鍵點選以關閉視窗"
+msgid "Window previews preferred size (px)"
+msgstr "視窗預覽慣用大小(像素)"
#: Settings.ui.h:67
-msgid "Middle click on the preview to close the window."
-msgstr "在預覽內容上中鍵點選以關閉視窗。"
+msgid "Window previews aspect ratio Y (height)"
+msgstr "視窗預覽外觀比例 Y(高度)"
#: Settings.ui.h:68
-msgid "Display window title in previews"
-msgstr "在預覽中顯示視窗標題"
+msgid "Window previews padding (px)"
+msgstr "視窗預覽間距(像素)"
#: Settings.ui.h:69
-msgid "Width of the window previews (px)"
-msgstr "視窗預覽寬度(畫素)"
+msgid "1"
+msgstr "1"
#: Settings.ui.h:70
-msgid "Height of the window previews (px)"
-msgstr "視窗預覽高度(畫素)"
+msgid "2"
+msgstr "2"
#: Settings.ui.h:71
-msgid "Padding of the window previews (px)"
-msgstr "視窗預覽邊緣寬度(畫素)"
+msgid "3"
+msgstr "3"
#: Settings.ui.h:72
-msgid "Super"
-msgstr "Super"
+msgid "4"
+msgstr "4"
#: Settings.ui.h:73
-msgid "Super + Alt"
-msgstr "Super + Alt"
+msgid "5"
+msgstr "5"
#: Settings.ui.h:74
-msgid "Hotkeys prefix"
-msgstr "熱鍵字首"
+msgid "6"
+msgstr "6"
#: Settings.ui.h:75
-msgid "Hotkeys will either be Super+Number or Super+Alt+Num"
-msgstr "熱鍵可以是 Super+數字 或者 Super+Alt+數字"
+msgid "7"
+msgstr "7"
#: Settings.ui.h:76
-msgid "Never"
-msgstr "從不"
+msgid "8"
+msgstr "8"
#: Settings.ui.h:77
-msgid "Show temporarily"
-msgstr "暫時顯示"
+msgid "9"
+msgstr "9"
#: Settings.ui.h:78
-msgid "Always visible"
-msgstr "總是可見"
+msgid "10"
+msgstr "10"
#: Settings.ui.h:79
-msgid "Number overlay"
-msgstr "數字附加顯示"
+msgid "11"
+msgstr "11"
#: Settings.ui.h:80
-msgid ""
-"Temporarily show the application numbers over the icons when using the "
-"hotkeys."
-msgstr "使用熱鍵時在應用圖示上臨時顯示其對應數字。"
+msgid "12"
+msgstr "12"
#: Settings.ui.h:81
-msgid "Hide timeout (ms)"
-msgstr "隱藏延時(毫秒)"
+msgid "13"
+msgstr "13"
#: Settings.ui.h:82
-msgid "e.g. q"
-msgstr "例如 q"
+msgid "14"
+msgstr "14"
#: Settings.ui.h:83
-msgid "Shortcut to show the overlay for 2 seconds"
-msgstr "顯示兩秒鐘附加數字的快捷鍵"
+msgid "15"
+msgstr "15"
#: Settings.ui.h:84
-msgid "Show window previews on hotkey"
-msgstr "按下熱鍵時顯示視窗預覽"
+msgid "16"
+msgstr "16"
#: Settings.ui.h:85
-msgid "Show previews when the application have multiple instances"
-msgstr "應用程式有多個例項時顯示預覽"
+msgid "17"
+msgstr "17"
#: Settings.ui.h:86
-msgid "Current Show Applications icon"
-msgstr "當前“顯示應用程式”圖示"
+msgid "18"
+msgstr "18"
#: Settings.ui.h:87
-msgid "Select a Show Applications image icon"
-msgstr "選擇一個“顯示應用程式”圖示影象"
+msgid "19"
+msgstr "19"
#: Settings.ui.h:88
-msgid "Custom Show Applications image icon"
-msgstr "自定義“顯示應用程式”圖示影象"
+msgid "20"
+msgstr "20"
#: Settings.ui.h:89
-msgid "Show Desktop button width (px)"
-msgstr "“顯示桌面”按鈕圖示寬度(畫素)"
+msgid "21"
+msgstr "21"
#: Settings.ui.h:90
-msgid "The panel background opacity is affected by"
-msgstr "面板背景不透明度的影響因素"
+msgid "Fixed"
+msgstr "固定"
#: Settings.ui.h:91
-msgid "Change opacity when a window gets closer than (px)"
-msgstr "在視窗多靠近時修改不透明度(畫素 px)"
+msgid "Window previews aspect ratio X (width)"
+msgstr "視窗預覽外觀比例 X(寬度)"
+
+#: Settings.ui.h:92
+msgid "Use custom opacity for the previews background"
+msgstr "為預覽介面背景使用自定義不透明度"
#: Settings.ui.h:93
-#, no-c-format
-msgid "Change opacity to (%)"
-msgstr "將不透明度修改為(%)"
+msgid "If disabled, the previews background have the same opacity as the panel"
+msgstr "若停用,則預覽介面背景將與面板使用相同的不透明度"
#: Settings.ui.h:94
-msgid "0"
-msgstr "0"
+msgid "Close button and header position"
+msgstr "關閉按鈕及頁首位置"
#: Settings.ui.h:95
-msgid "Opacity change animation duration (ms)"
-msgstr "不透明度變更動畫持續時間(毫秒)"
-
-#: Settings.ui.h:96
-msgid "Panel screen position"
-msgstr "面板螢幕位置"
-
-#: Settings.ui.h:97
msgid "Bottom"
msgstr "底部"
-#: Settings.ui.h:98
+#: Settings.ui.h:96
msgid "Top"
msgstr "頂部"
+#: Settings.ui.h:97
+msgid "Display window preview headers"
+msgstr "顯示視窗預覽開頭"
+
+#: Settings.ui.h:98
+msgid "Font size (px) of the preview titles"
+msgstr "預覽標題字型大小(像素)"
+
#: Settings.ui.h:99
+msgid "Font weight of the preview titles"
+msgstr "預覽標題字型粗細"
+
+#: Settings.ui.h:100
+msgid "Font color of the preview titles"
+msgstr "預覽標題字型顏色"
+
+#: Settings.ui.h:101
+msgid "Enable window peeking"
+msgstr "啟用視窗查看"
+
+#: Settings.ui.h:102
+msgid ""
+"When hovering over a window preview for some time, the window gets "
+"distinguished."
+msgstr "當滑鼠指標在某一視窗預覽介面上懸停一段時間,區分該視窗。"
+
+#: Settings.ui.h:103
+msgid "Enter window peeking mode timeout (ms)"
+msgstr "進入視窗查看模式等候時間(毫秒)"
+
+#: Settings.ui.h:104
+msgid "50"
+msgstr "50"
+
+#: Settings.ui.h:105
+msgid ""
+"Time of inactivity while hovering over a window preview needed to enter the "
+"window peeking mode."
+msgstr "當在某一視窗預覽介面上暫留並進入視窗查看模式所需的時間。"
+
+#: Settings.ui.h:106
+msgid "Window peeking mode opacity"
+msgstr "視窗查看模式不透明度"
+
+#: Settings.ui.h:107
+msgid "0"
+msgstr "0"
+
+#: Settings.ui.h:108
+msgid ""
+"All windows except for the peeked one have their opacity set to the same "
+"value."
+msgstr "除被查看的視窗外,所有視窗的不透明度將被設定為同一值。"
+
+#: Settings.ui.h:109
+msgid "Super"
+msgstr "Super"
+
+#: Settings.ui.h:110
+msgid "Super + Alt"
+msgstr "Super + Alt"
+
+#: Settings.ui.h:111
+msgid "Hotkeys prefix"
+msgstr "快速鍵"
+
+#: Settings.ui.h:112
+msgid "Hotkeys will either be Super+Number or Super+Alt+Num"
+msgstr "快速鍵將被設定為 Super+Number 或者 Super+Alt+Num"
+
+#: Settings.ui.h:113
+msgid "Never"
+msgstr "永不"
+
+#: Settings.ui.h:114
+msgid "Show temporarily"
+msgstr "暫時顯示"
+
+#: Settings.ui.h:115
+msgid "Always visible"
+msgstr "永遠顯示"
+
+#: Settings.ui.h:116
+msgid "Number overlay"
+msgstr "編號重疊"
+
+#: Settings.ui.h:117
+msgid ""
+"Temporarily show the application numbers over the icons when using the "
+"hotkeys."
+msgstr "當使用快速鍵時暫時在應用程式圖示上顯示其編號。"
+
+#: Settings.ui.h:118
+msgid "Hide timeout (ms)"
+msgstr "隱藏等候時間(毫秒)"
+
+#: Settings.ui.h:119
+msgid "e.g. q"
+msgstr "例如 q"
+
+#: Settings.ui.h:120
+msgid "Shortcut to show the overlay for 2 seconds"
+msgstr "顯示 2 秒重疊的快速鍵"
+
+#: Settings.ui.h:121
+msgid "Show window previews on hotkey"
+msgstr "使用快速鍵時顯示視窗預覽介面"
+
+#: Settings.ui.h:122
+msgid "Show previews when the application have multiple instances"
+msgstr "當應用程式有多個實例時顯示預覽"
+
+#: Settings.ui.h:123
+msgid "Current Show Applications icon"
+msgstr "目前的“顯示應用程式”圖示"
+
+#: Settings.ui.h:124
+msgid "Select a Show Applications image icon"
+msgstr "選取一個“顯示應用程式”圖示"
+
+#: Settings.ui.h:125
+msgid "Custom Show Applications image icon"
+msgstr "自訂“顯示應用程式”圖示圖片"
+
+#: Settings.ui.h:126
+msgid "Show Applications icon side padding (px)"
+msgstr "“顯示應用程式”圖示邊框間距"
+
+#: Settings.ui.h:127
+msgid "Show Desktop button width (px)"
+msgstr "“顯示桌面”按鈕大小(像素)"
+
+#: Settings.ui.h:128
+msgid "Reveal the desktop when hovering the Show Desktop button"
+msgstr "當滑鼠指標在“顯示桌面”按鈕上懸停一段時間則預覽桌面"
+
+#: Settings.ui.h:129
+msgid "Delay before revealing the desktop (ms)"
+msgstr "預覽桌面前的延遲(毫秒)"
+
+#: Settings.ui.h:130
+msgid "Fade duration (ms)"
+msgstr "淡出效果持續時間(毫秒)"
+
+#: Settings.ui.h:131
+msgid "The panel background opacity is affected by"
+msgstr "面板背景不透明度受影響於"
+
+#: Settings.ui.h:132
+msgid "Change opacity when a window gets closer than (px)"
+msgstr "當視窗靠近時改變不透明度(像素)"
+
+#: Settings.ui.h:134
+#, no-c-format
+msgid "Change opacity to (%)"
+msgstr "改變不透明度為(%)"
+
+#: Settings.ui.h:135
+msgid "Opacity change animation duration (ms)"
+msgstr "不透明度變化動畫持續時間(毫秒)"
+
+#: Settings.ui.h:136
+msgid "Panel screen position"
+msgstr "面板在螢幕中所處的位置"
+
+#: Settings.ui.h:137
msgid "Taskbar position"
msgstr "工作列位置"
-#: Settings.ui.h:100
+#: Settings.ui.h:138
msgid "Left, with plugin icons collapsed to right"
-msgstr "左側,並且外掛圖示收縮到右側"
+msgstr "左側,並將外掛圖示摺疊到右側"
-#: Settings.ui.h:101
+#: Settings.ui.h:139
msgid "Left, with fixed center plugin icons"
-msgstr "左側,並且固定居中外掛圖示"
+msgstr "左側,並固定居中外掛圖示"
-#: Settings.ui.h:102
+#: Settings.ui.h:140
msgid "Left, with floating center plugin icons"
-msgstr "左側,並且浮動居中外掛圖示"
+msgstr "左側,並浮動居中外掛圖示"
-#: Settings.ui.h:103
+#: Settings.ui.h:141
msgid "Center, fixed in middle of monitor"
-msgstr "中間,固定在顯示屏中間"
+msgstr "中間,固定於顯示器中間"
-#: Settings.ui.h:104
+#: Settings.ui.h:142
msgid "Center, floating between left and right elements"
-msgstr "中間,在左側元素和右側元素之間浮動"
+msgstr "中間,在左側及右側元素中浮動"
-#: Settings.ui.h:105
+#: Settings.ui.h:143
msgid "Clock location"
msgstr "時鐘位置"
-#: Settings.ui.h:106
+#: Settings.ui.h:144
msgid "Left of plugin icons"
msgstr "外掛圖示左側"
-#: Settings.ui.h:107
+#: Settings.ui.h:145
msgid "Right of plugin icons"
msgstr "外掛圖示右側"
-#: Settings.ui.h:108
+#: Settings.ui.h:146
msgid "Left of system indicators"
msgstr "系統指示器左側"
-#: Settings.ui.h:109
+#: Settings.ui.h:147
msgid "Right of system indicators"
msgstr "系統指示器右側"
-#: Settings.ui.h:110
+#: Settings.ui.h:148
msgid "Left of taskbar"
msgstr "工作列左側"
-#: Settings.ui.h:111
+#: Settings.ui.h:149
msgid "Right of taskbar"
msgstr "工作列右側"
-#: Settings.ui.h:112
+#: Settings.ui.h:150
msgid "Display the main panel on"
msgstr "將主面板顯示於"
-#: Settings.ui.h:113
+#: Settings.ui.h:151
msgid "Display panels on all monitors"
msgstr "在所有顯示器上顯示面板"
-#: Settings.ui.h:114
+#: Settings.ui.h:152
msgid "Panel Intellihide"
msgstr "面板智慧隱藏"
-#: Settings.ui.h:115
+#: Settings.ui.h:153
msgid "Hide and reveal the panel according to preferences"
-msgstr "按照配置隱藏和顯示面板"
+msgstr "依偏好設定隱藏和顯示面板"
-#: Settings.ui.h:116
+#: Settings.ui.h:154
msgid "Position"
msgstr "位置"
-#: Settings.ui.h:117
+#: Settings.ui.h:155
msgid ""
"Panel Size\n"
"(default is 48)"
@@ -607,173 +793,185 @@ msgstr ""
"面板大小\n"
"(預設為 48)"
-#: Settings.ui.h:119
+#: Settings.ui.h:157
msgid ""
"App Icon Margin\n"
"(default is 8)"
msgstr ""
-"應用圖示邊緣空白\n"
+"應用圖示邊界\n"
"(預設為 8)"
-#: Settings.ui.h:121
+#: Settings.ui.h:159
msgid ""
"App Icon Padding\n"
"(default is 4)"
msgstr ""
-"應用圖示邊緣空白\n"
+"應用圖示邊框間距\n"
"(預設為 4)"
-#: Settings.ui.h:123
+#: Settings.ui.h:161
msgid "Running indicator position"
msgstr "執行指示器位置"
-#: Settings.ui.h:124
+#: Settings.ui.h:162
msgid "Running indicator style (Focused app)"
-msgstr "執行指示器風格(取得焦點的應用)"
+msgstr "執行指示器樣式(焦點應用)"
-#: Settings.ui.h:125
+#: Settings.ui.h:163
msgid "Dots"
msgstr "點"
-#: Settings.ui.h:126
+#: Settings.ui.h:164
msgid "Squares"
msgstr "方塊"
-#: Settings.ui.h:127
+#: Settings.ui.h:165
msgid "Dashes"
-msgstr "橫線"
+msgstr "虛線"
-#: Settings.ui.h:128
+#: Settings.ui.h:166
msgid "Segmented"
-msgstr "間斷線"
+msgstr "分割線"
-#: Settings.ui.h:129
+#: Settings.ui.h:167
msgid "Solid"
msgstr "實心"
-#: Settings.ui.h:130
+#: Settings.ui.h:168
msgid "Ciliora"
msgstr "Ciliora"
-#: Settings.ui.h:131
+#: Settings.ui.h:169
msgid "Metro"
msgstr "Metro"
-#: Settings.ui.h:132
+#: Settings.ui.h:170
msgid "Running indicator style (Unfocused apps)"
-msgstr "執行指示器風格(未取得焦點的應用)"
+msgstr "執行指示器樣式(未聚焦應用)"
-#: Settings.ui.h:133
+#: Settings.ui.h:171
msgid "Override panel theme background color "
-msgstr "覆蓋面板主題背景顏色 "
+msgstr "覆寫面板主題背景色 "
-#: Settings.ui.h:134
+#: Settings.ui.h:172
msgid "Override panel theme background opacity"
-msgstr "覆蓋面板主題背景不透明度"
+msgstr "覆寫面板主題背景不透明度"
-#: Settings.ui.h:136
+#: Settings.ui.h:174
#, no-c-format
msgid "Panel background opacity (%)"
msgstr "面板背景不透明度(%)"
-#: Settings.ui.h:137
+#: Settings.ui.h:175
msgid "Dynamic background opacity"
msgstr "動態背景不透明度"
-#: Settings.ui.h:138
+#: Settings.ui.h:176
msgid "Change opacity when a window gets close to the panel"
-msgstr "在有視窗接近面板時修改不透明度"
+msgstr "在有視窗接近面板時改變不透明度"
-#: Settings.ui.h:139
+#: Settings.ui.h:177
msgid "Override panel theme gradient "
-msgstr "覆蓋面板主題漸變 "
+msgstr "覆寫面板主題漸變 "
-#: Settings.ui.h:141
+#: Settings.ui.h:179
#, no-c-format
msgid "Gradient top color and opacity (%)"
msgstr "漸變頂部顏色和不透明度(%)"
-#: Settings.ui.h:143
+#: Settings.ui.h:181
#, no-c-format
msgid "Gradient bottom color and opacity (%)"
msgstr "漸變底部顏色和不透明度(%)"
-#: Settings.ui.h:144
+#: Settings.ui.h:182
msgid "Style"
-msgstr "風格"
+msgstr "樣式"
-#: Settings.ui.h:145
+#: Settings.ui.h:183
msgid "Show favorite applications"
-msgstr "顯示收藏的應用程式"
+msgstr "顯示收藏應用程式"
-#: Settings.ui.h:146
+#: Settings.ui.h:184
+msgid "Show running applications"
+msgstr "顯示正在執行的應用程式"
+
+#: Settings.ui.h:185
msgid "Show Applications icon"
-msgstr "顯示應用圖示"
+msgstr "顯示應用程式圖示"
-#: Settings.ui.h:147
+#: Settings.ui.h:186
msgid "Animate Show Applications."
-msgstr "動畫化顯示應用程式。"
+msgstr "動畫化顯示應用程式"
-#: Settings.ui.h:148
+#: Settings.ui.h:187
msgid "Show Activities button"
-msgstr "顯示活動按鈕"
+msgstr "顯示活動按鈕"
-#: Settings.ui.h:149
+#: Settings.ui.h:188
msgid "Show Desktop button"
-msgstr "顯示桌面按鈕"
+msgstr "顯示桌面按鈕"
-#: Settings.ui.h:150
+#: Settings.ui.h:189
msgid "Show AppMenu button"
-msgstr "顯示應用選單按鈕"
+msgstr "顯示應用選單按鈕"
-#: Settings.ui.h:151
+#: Settings.ui.h:190
msgid "Top Bar > Show App Menu must be enabled in Tweak Tool"
-msgstr "必須在優化工具中啟用頂欄 > 顯示應用選單"
+msgstr "必須在調校工具中啟用頂端列 > 應用程式選單"
-#: Settings.ui.h:152
+#: Settings.ui.h:191
msgid "Show window previews on hover"
msgstr "懸停時顯示視窗預覽"
-#: Settings.ui.h:153
+#: Settings.ui.h:192
+msgid "Show tooltip on hover"
+msgstr "懸停時顯示工具提示"
+
+#: Settings.ui.h:193
msgid "Isolate Workspaces"
msgstr "隔離工作區"
-#: Settings.ui.h:154
+#: Settings.ui.h:194
msgid "Ungroup applications"
msgstr "取消應用程式分組"
-#: Settings.ui.h:155
+#: Settings.ui.h:195
msgid "Behaviour when clicking on the icon of a running application."
-msgstr "點選正在執行應用程式圖示時的行為。"
+msgstr "點選正在執行的應用程式圖示時的行為。"
-#: Settings.ui.h:156
+#: Settings.ui.h:196
msgid "Click action"
msgstr "點選行為"
-#: Settings.ui.h:157
+#: Settings.ui.h:197
+msgid "Toggle windows"
+msgstr "切換視窗"
+
+#: Settings.ui.h:198
msgid ""
"Enable Super+(0-9) as shortcuts to activate apps. It can also be used "
"together with Shift and Ctrl."
msgstr ""
-"將 Super+(0-9) 作為啟用應用程式的快捷鍵。它也可以和 Shift 或 Ctrl 共同使用。"
+"將 Super+(0-9) 作為啟用應用程式的快速鍵。它也可以和 Shift 及 Ctrl 共同使用。"
-#: Settings.ui.h:158
+#: Settings.ui.h:199
msgid "Use hotkeys to activate apps"
msgstr "使用熱鍵啟用應用"
-#: Settings.ui.h:159
+#: Settings.ui.h:200
msgid "Behavior"
msgstr "行為"
-#: Settings.ui.h:160
+#: Settings.ui.h:201
msgid ""
"Tray Font Size\n"
"(0 = theme default)"
msgstr ""
-"托盤字型大小\n"
+"工具列字型大小\n"
"(0 = 主題預設)"
-#: Settings.ui.h:162
+#: Settings.ui.h:203
msgid ""
"LeftBox Font Size\n"
"(0 = theme default)"
@@ -781,79 +979,83 @@ msgstr ""
"LeftBox 字型大小\n"
"(0 = 主題預設)"
-#: Settings.ui.h:164
+#: Settings.ui.h:205
msgid ""
"Tray Item Padding\n"
"(-1 = theme default)"
msgstr ""
-"托盤項邊緣空白\n"
+"工具列項目間距\n"
"(-1 = 主題預設)"
-#: Settings.ui.h:166
+#: Settings.ui.h:207
msgid ""
"Status Icon Padding\n"
"(-1 = theme default)"
msgstr ""
-"狀態圖示邊緣空白\n"
+"狀態圖示間距\n"
"(-1 = 主題預設)"
-#: Settings.ui.h:168
+#: Settings.ui.h:209
msgid ""
"LeftBox Padding\n"
"(-1 = theme default)"
msgstr ""
-"LeftBox 邊緣空白\n"
+"LeftBox 間距\n"
"(-1 = 主題預設)"
-#: Settings.ui.h:170
+#: Settings.ui.h:211
msgid "Animate switching applications"
-msgstr "動畫切換應用程式"
+msgstr "使切換應用程式時出現動畫"
-#: Settings.ui.h:171
+#: Settings.ui.h:212
msgid "Animate launching new windows"
-msgstr "動畫啟動新視窗"
+msgstr "使啟動新視窗時出現動畫"
-#: Settings.ui.h:172
+#: Settings.ui.h:213
msgid "Keep original gnome-shell dash (overview)"
-msgstr "保持原始 gnome-shell dash(預覽)"
+msgstr "保留原始 gnome-shell dash(預覽)"
-#: Settings.ui.h:173
+#: Settings.ui.h:214
+msgid "Activate panel menu buttons (e.g. date menu) on click only"
+msgstr "僅在點選時啟用面板選單按鈕(例如日期選單)"
+
+#: Settings.ui.h:215
msgid "App icon secondary (right-click) menu"
msgstr "應用圖示次級(右鍵點選)選單"
-#: Settings.ui.h:175
+#: Settings.ui.h:217
msgid "Fine-Tune"
msgstr "微調"
-#: Settings.ui.h:176
+#: Settings.ui.h:218
msgid "version: "
-msgstr "版本:"
+msgstr "版本: "
-#: Settings.ui.h:177
+#: Settings.ui.h:219
msgid "GitHub"
msgstr "GitHub"
-#: Settings.ui.h:178
+#: Settings.ui.h:220
msgid ""
"Use the buttons below to create a settings file from your current "
"preferences that can be imported on a different machine."
msgstr ""
-"使用下面的按鈕以基於您當前的首選項建立一個設定檔案;您稍後可使用該檔案在其他"
-"機器上匯入設定。"
+"使用下面的按鈕以基於您目前的配置建立一份設定檔;您稍後可使用該檔案在其他機器"
+"上匯入設定。"
-#: Settings.ui.h:179
+#: Settings.ui.h:221
msgid "Export and import settings"
-msgstr "匯入匯出設定"
+msgstr "匯入及匯出設定"
-#: Settings.ui.h:180
+#: Settings.ui.h:222
msgid "Export to file"
msgstr "匯出至檔案"
-#: Settings.ui.h:181
+#: Settings.ui.h:223
msgid "Import from file"
msgstr "從檔案匯入"
-#: Settings.ui.h:182
+#: Settings.ui.h:224
msgid ""
"This program comes with ABSOLUTELY NO WARRANTY.\n"
"See the 本程式不提供任何擔保。\n"
"請檢視 GNU 通用公共許可證,第二版或更新版本 以瞭解詳情。"
+"\">GNU 通用公共許可證 (GPL),第二版或更新版 以瞭解詳情。"
-#: Settings.ui.h:184
+#: Settings.ui.h:226
msgid "About"
msgstr "關於"
-
-#~ msgid "Natural"
-#~ msgstr "自然"
-
-#~ msgid "Left side of panel"
-#~ msgstr "面板左側"
-
-#~ msgid "Centered in content"
-#~ msgstr "內容居中"
-
-#~ msgid "Github"
-#~ msgstr "Github"
-
-#~ msgid "5"
-#~ msgstr "5"
diff --git a/prefs.js b/prefs.js
index f5a01c2..8c905e6 100644
--- a/prefs.js
+++ b/prefs.js
@@ -1001,14 +1001,7 @@ const Settings = new Lang.Class({
'active',
Gio.SettingsBindFlags.DEFAULT);
- switch (this._settings.get_string('window-preview-title-position')) {
- case 'BOTTOM':
- this._builder.get_object('preview_title_position_bottom_button').set_active(true);
- break;
- case 'TOP':
- this._builder.get_object('preview_title_position_top_button').set_active(true);
- break;
- }
+ this._setPreviewTitlePosition();
this._builder.get_object('grid_preview_title_font_color_colorbutton').connect('notify::color', Lang.bind(this, function (button) {
let rgba = button.get_rgba();
@@ -1108,6 +1101,11 @@ const Settings = new Lang.Class({
this._settings.set_int('leave-timeout', widget.get_value());
}));
+ this._settings.bind('window-preview-hide-immediate-click',
+ this._builder.get_object('preview_immediate_click_button'),
+ 'active',
+ Gio.SettingsBindFlags.DEFAULT);
+
this._builder.get_object('animation_time_spinbutton').set_value(this._settings.get_int('window-preview-animation-time'));
this._builder.get_object('animation_time_spinbutton').connect('value-changed', Lang.bind (this, function(widget) {
this._settings.set_int('window-preview-animation-time', widget.get_value());
@@ -1163,6 +1161,8 @@ const Settings = new Lang.Class({
this._settings.set_value('leave-timeout', this._settings.get_default_value('leave-timeout'));
this._builder.get_object('leave_timeout_spinbutton').set_value(this._settings.get_int('leave-timeout'));
+ this._settings.set_value('window-preview-hide-immediate-click', this._settings.get_default_value('window-preview-hide-immediate-click'));
+
this._settings.set_value('window-preview-animation-time', this._settings.get_default_value('window-preview-animation-time'));
this._builder.get_object('animation_time_spinbutton').set_value(this._settings.get_int('window-preview-animation-time'));
@@ -1171,6 +1171,9 @@ const Settings = new Lang.Class({
this._settings.set_value('preview-custom-opacity', this._settings.get_default_value('preview-custom-opacity'));
this._builder.get_object('preview_custom_opacity_spinbutton').set_value(this._settings.get_int('preview-custom-opacity'));
+ this._settings.set_value('window-preview-title-position', this._settings.get_default_value('window-preview-title-position'));
+ this._setPreviewTitlePosition();
+
this._settings.set_value('peek-mode', this._settings.get_default_value('peek-mode'));
this._settings.set_value('window-preview-show-title', this._settings.get_default_value('window-preview-show-title'));
this._settings.set_value('enter-peek-mode-timeout', this._settings.get_default_value('enter-peek-mode-timeout'));
@@ -1393,6 +1396,88 @@ const Settings = new Lang.Class({
}));
+ this._builder.get_object('scroll_panel_combo').set_active_id(this._settings.get_string('scroll-panel-action'));
+ this._builder.get_object('scroll_panel_combo').connect('changed', Lang.bind (this, function(widget) {
+ this._settings.set_string('scroll-panel-action', widget.get_active_id());
+ }));
+
+ this._builder.get_object('scroll_icon_combo').set_active_id(this._settings.get_string('scroll-icon-action'));
+ this._builder.get_object('scroll_icon_combo').connect('changed', Lang.bind (this, function(widget) {
+ this._settings.set_string('scroll-icon-action', widget.get_active_id());
+ }));
+
+ // Create dialog for panel scroll options
+ this._builder.get_object('scroll_panel_options_button').connect('clicked', Lang.bind(this, function() {
+ let dialog = new Gtk.Dialog({ title: _('Customize panel scroll behavior'),
+ transient_for: this.widget.get_toplevel(),
+ use_header_bar: true,
+ modal: true });
+
+ // GTK+ leaves positive values for application-defined response ids.
+ // Use +1 for the reset action
+ dialog.add_button(_('Reset to defaults'), 1);
+
+ let box = this._builder.get_object('scroll_panel_options_box');
+ dialog.get_content_area().add(box);
+
+ this._builder.get_object('scroll_panel_options_delay_spinbutton').set_value(this._settings.get_int('scroll-panel-delay'));
+ this._builder.get_object('scroll_panel_options_delay_spinbutton').connect('value-changed', Lang.bind (this, function(widget) {
+ this._settings.set_int('scroll-panel-delay', widget.get_value());
+ }));
+
+ dialog.connect('response', Lang.bind(this, function(dialog, id) {
+ if (id == 1) {
+ // restore default settings
+ this._settings.set_value('scroll-panel-delay', this._settings.get_default_value('scroll-panel-delay'));
+ this._builder.get_object('scroll_panel_options_delay_spinbutton').set_value(this._settings.get_int('scroll-panel-delay'));
+ } else {
+ // remove the settings box so it doesn't get destroyed;
+ dialog.get_content_area().remove(box);
+ dialog.destroy();
+ }
+ return;
+ }));
+
+ dialog.show_all();
+
+ }));
+
+ // Create dialog for icon scroll options
+ this._builder.get_object('scroll_icon_options_button').connect('clicked', Lang.bind(this, function() {
+ let dialog = new Gtk.Dialog({ title: _('Customize icon scroll behavior'),
+ transient_for: this.widget.get_toplevel(),
+ use_header_bar: true,
+ modal: true });
+
+ // GTK+ leaves positive values for application-defined response ids.
+ // Use +1 for the reset action
+ dialog.add_button(_('Reset to defaults'), 1);
+
+ let box = this._builder.get_object('scroll_icon_options_box');
+ dialog.get_content_area().add(box);
+
+ this._builder.get_object('scroll_icon_options_delay_spinbutton').set_value(this._settings.get_int('scroll-icon-delay'));
+ this._builder.get_object('scroll_icon_options_delay_spinbutton').connect('value-changed', Lang.bind (this, function(widget) {
+ this._settings.set_int('scroll-icon-delay', widget.get_value());
+ }));
+
+ dialog.connect('response', Lang.bind(this, function(dialog, id) {
+ if (id == 1) {
+ // restore default settings
+ this._settings.set_value('scroll-icon-delay', this._settings.get_default_value('scroll-icon-delay'));
+ this._builder.get_object('scroll_icon_options_delay_spinbutton').set_value(this._settings.get_int('scroll-icon-delay'));
+ } else {
+ // remove the settings box so it doesn't get destroyed;
+ dialog.get_content_area().remove(box);
+ dialog.destroy();
+ }
+ return;
+ }));
+
+ dialog.show_all();
+
+ }));
+
this._settings.bind('hot-keys',
this._builder.get_object('hot_keys_switch'),
'active',
@@ -1661,6 +1746,17 @@ const Settings = new Lang.Class({
});
},
+ _setPreviewTitlePosition: function() {
+ switch (this._settings.get_string('window-preview-title-position')) {
+ case 'BOTTOM':
+ this._builder.get_object('preview_title_position_bottom_button').set_active(true);
+ break;
+ case 'TOP':
+ this._builder.get_object('preview_title_position_top_button').set_active(true);
+ break;
+ }
+ },
+
_showFileChooser: function(title, params, acceptBtn, acceptHandler) {
let dialog = new Gtk.FileChooserDialog(mergeObjects({ title: title, transient_for: this.widget.get_toplevel() }, params));
diff --git a/schemas/org.gnome.shell.extensions.dash-to-panel.gschema.xml b/schemas/org.gnome.shell.extensions.dash-to-panel.gschema.xml
index 38760de..76e5928 100644
--- a/schemas/org.gnome.shell.extensions.dash-to-panel.gschema.xml
+++ b/schemas/org.gnome.shell.extensions.dash-to-panel.gschema.xml
@@ -18,6 +18,11 @@
+
+
+
+
+
@@ -466,6 +471,11 @@
Aspect ratio Y
The window previews respected aspect ratio Y.
+
+ false
+ Immediate hide on icon click
+ The window previews immediately hide when an application icon is clicked.
+
false
Provide workspace isolation
@@ -574,6 +584,26 @@
Action when clicking on a running app
Set the action that is executed when shift+middle-clicking on the icon of a running application
+
+ 'SWITCH_WORKSPACE'
+ Action when scrolling over the panel
+ Set the action that is executed when scrolling over the panel
+
+
+ 0
+ Delay between panel mouse scroll events
+ Set the minimum delay between panel mouse scroll events
+
+
+ 'CYCLE_WINDOWS'
+ Action when scrolling over a running app
+ Set the action that is executed when scrolling over a running application
+
+
+ 0
+ Delay between icon mouse scroll events
+ Set the minimum delay between icon mouse scroll events
+
100
Icon leave preview timeout
diff --git a/taskbar.js b/taskbar.js
index 4765956..ced9d8c 100644
--- a/taskbar.js
+++ b/taskbar.js
@@ -48,9 +48,7 @@ const Utils = Me.imports.utils;
const WindowPreview = Me.imports.windowPreview;
const AppIcons = Me.imports.appIcons;
-var DASH_ANIMATION_TIME = Dash.DASH_ANIMATION_TIME;
-let DASH_ITEM_LABEL_SHOW_TIME = Dash.DASH_ITEM_LABEL_SHOW_TIME;
-let DASH_ITEM_LABEL_HIDE_TIME = Dash.DASH_ITEM_LABEL_HIDE_TIME;
+var DASH_ANIMATION_TIME = Dash.DASH_ANIMATION_TIME / (Dash.DASH_ANIMATION_TIME > 1 ? 1000 : 1);
var DASH_ITEM_HOVER_TIMEOUT = Dash.DASH_ITEM_HOVER_TIMEOUT;
var MIN_ICON_SIZE = 4;
@@ -363,7 +361,10 @@ var taskbar = Utils.defineClass({
this._showAppsIconWrapper.destroy();
this._container.destroy();
+
this.previewMenu.disable();
+ this.previewMenu.destroy();
+
this._disconnectWorkspaceSignals();
},
@@ -739,13 +740,7 @@ var taskbar = Utils.defineClass({
getAppStableSequence(appB, this._dtpSettings, this.panelWrapper.monitor);
},
- _redisplay: function () {
- if (!this._signalsHandler) {
- return;
- }
-
- //get the currently displayed appIcons
- let currentAppIcons = this._getTaskbarIcons();
+ getAppInfos: function() {
//get the user's favorite apps
let favoriteApps = this._checkIfShowingFavorites() ? AppFavorites.getAppFavorites().getFavorites() : [];
@@ -753,16 +748,25 @@ var taskbar = Utils.defineClass({
// When using isolation, we filter out apps that have no windows in
// the current workspace (this check is done in AppIcons.getInterestingWindows)
let runningApps = this._checkIfShowingRunningApps() ? this._getRunningApps().sort(this.sortAppsCompareFunction.bind(this)) : [];
- let expectedAppInfos;
-
+
if (!this.isGroupApps && this._dtpSettings.get_boolean('group-apps-use-launchers')) {
- expectedAppInfos = this._createAppInfos(favoriteApps, [], true)
- .concat(this._createAppInfos(runningApps)
- .filter(appInfo => appInfo.windows.length));
+ return this._createAppInfos(favoriteApps, [], true)
+ .concat(this._createAppInfos(runningApps)
+ .filter(appInfo => appInfo.windows.length));
} else {
- expectedAppInfos = this._createAppInfos(favoriteApps.concat(runningApps.filter(app => favoriteApps.indexOf(app) < 0)))
- .filter(appInfo => appInfo.windows.length || favoriteApps.indexOf(appInfo.app) >= 0);
+ return this._createAppInfos(favoriteApps.concat(runningApps.filter(app => favoriteApps.indexOf(app) < 0)))
+ .filter(appInfo => appInfo.windows.length || favoriteApps.indexOf(appInfo.app) >= 0);
}
+ },
+
+ _redisplay: function () {
+ if (!this._signalsHandler) {
+ return;
+ }
+
+ //get the currently displayed appIcons
+ let currentAppIcons = this._getTaskbarIcons();
+ let expectedAppInfos = this.getAppInfos();
//remove the appIcons which are not in the expected apps list
for (let i = currentAppIcons.length - 1; i > -1; --i) {
@@ -961,9 +965,9 @@ var taskbar = Utils.defineClass({
// Ensure the next and previous icon are visible when moving the icon
// (I assume there's room for both of them)
if (hoveredIndex > 1)
- ensureActorVisibleInScrollView(this._scrollView, this._box.get_children()[hoveredIndex-1], this._scrollView._dtpFadeSize);
+ Utils.ensureActorVisibleInScrollView(this._scrollView, this._box.get_children()[hoveredIndex-1], this._scrollView._dtpFadeSize);
if (hoveredIndex < this._box.get_children().length-1)
- ensureActorVisibleInScrollView(this._scrollView, this._box.get_children()[hoveredIndex+1], this._scrollView._dtpFadeSize);
+ Utils.ensureActorVisibleInScrollView(this._scrollView, this._box.get_children()[hoveredIndex+1], this._scrollView._dtpFadeSize);
}
}
diff --git a/utils.js b/utils.js
index 963312a..205ea18 100644
--- a/utils.js
+++ b/utils.js
@@ -380,6 +380,40 @@ var getrgbaColor = function(color, alpha, offset) {
return 'rgba(' + rgb.red + ',' + rgb.green + ',' + rgb.blue + ',' + (Math.floor(alpha * 100) * 0.01) + '); ' ;
};
+var getMouseScrollDirection = function(event) {
+ let direction;
+
+ switch (event.get_scroll_direction()) {
+ case Clutter.ScrollDirection.UP:
+ case Clutter.ScrollDirection.LEFT:
+ direction = 'up';
+ break;
+ case Clutter.ScrollDirection.DOWN:
+ case Clutter.ScrollDirection.RIGHT:
+ direction = 'down';
+ break;
+ }
+
+ return direction;
+};
+
+var activateSiblingWindow = function(windows, direction, startWindow) {
+ let windowIndex = windows.indexOf(global.display.focus_window);
+ let nextWindowIndex = windowIndex < 0 ?
+ startWindow ? windows.indexOf(startWindow) : 0 :
+ windowIndex + (direction == 'up' ? 1 : -1);
+
+ if (nextWindowIndex == windows.length) {
+ nextWindowIndex = 0;
+ } else if (nextWindowIndex < 0) {
+ nextWindowIndex = windows.length - 1;
+ }
+
+ if (windowIndex != nextWindowIndex) {
+ Main.activateWindow(windows[nextWindowIndex]);
+ }
+}
+
/*
* This is a copy of the same function in utils.js, but also adjust horizontal scrolling
* and perform few further cheks on the current value to avoid changing the values when
diff --git a/windowPreview.js b/windowPreview.js
index d756a16..5d4c204 100644
--- a/windowPreview.js
+++ b/windowPreview.js
@@ -153,10 +153,8 @@ var PreviewMenu = Utils.defineClass({
this.close(true);
- Main.layoutManager._untrackActor(this);
- Main.uiGroup.remove_child(this);
-
- this.destroy();
+ Main.layoutManager.untrackChrome(this.menu);
+ Main.layoutManager.removeChrome(this);
},
requestOpen: function(appIcon) {