[gnome-shell/wip/msanchez/620106: 3/3] altTab: Close the list of thumbnails in the switcher when closing an app
- From: Mario Sanchez Prada <msanchez src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/wip/msanchez/620106: 3/3] altTab: Close the list of thumbnails in the switcher when closing an app
- Date: Fri, 1 Dec 2017 21:31:28 +0000 (UTC)
commit 043f042cec32eec259f4f3505670a62788331b85
Author: Mario Sanchez Prada <mario endlessm com>
Date: Fri Dec 1 20:40:41 2017 +0000
altTab: Close the list of thumbnails in the switcher when closing an app
This makes sure that no thumbnails list is left open and empty, since both
the app's icon and all its thumbnails will be gone once the app is closed.
https://bugzilla.gnome.org/show_bug.cgi?id=620106
js/ui/altTab.js | 15 +++++++++++++--
1 files changed, 13 insertions(+), 2 deletions(-)
---
diff --git a/js/ui/altTab.js b/js/ui/altTab.js
index 3a70c84..97bfe66 100644
--- a/js/ui/altTab.js
+++ b/js/ui/altTab.js
@@ -156,6 +156,17 @@ var AppSwitcherPopup = new Lang.Class({
this._items[this._selectedIndex].cachedWindows.length);
},
+ _quitApplication: function(appIndex) {
+ let appIcon = this._items[appIndex];
+ if (!appIcon)
+ return;
+
+ // Make sure the list of thumbnails is hidden before quitting the
+ // application, not to keep an empty list of windows showing up.
+ this._select(appIndex, null, false);
+ appIcon.app.request_quit();
+ },
+
_keyPressHandler: function(keysym, action) {
if (action == Meta.KeyBindingAction.SWITCH_GROUP) {
if (!this._thumbnailsFocused)
@@ -176,7 +187,7 @@ var AppSwitcherPopup = new Lang.Class({
else if (keysym == Clutter.Up)
this._select(this._selectedIndex, null, true);
else if (keysym == Clutter.q)
- this._items[this._selectedIndex].app.request_quit();
+ this._quitApplication(this._selectedIndex);
else
return Clutter.EVENT_PROPAGATE;
} else {
@@ -187,7 +198,7 @@ var AppSwitcherPopup = new Lang.Class({
else if (keysym == Clutter.Down)
this._select(this._selectedIndex, 0);
else if (keysym == Clutter.q)
- this._items[this._selectedIndex].app.request_quit();
+ this._quitApplication(this._selectedIndex);
else
return Clutter.EVENT_PROPAGATE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]