From 3da0e9e86aaa7c75a6c4c121d442eedc4a2c34f0 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Thu, 9 Aug 2012 02:30:13 +0200 Subject: [PATCH] messageTray: Make it keyboard navigable in the overview https://bugzilla.gnome.org/show_bug.cgi?id=681519 --- js/ui/messageTray.js | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/js/ui/messageTray.js b/js/ui/messageTray.js index d6f98f720..5ba08306a 100644 --- a/js/ui/messageTray.js +++ b/js/ui/messageTray.js @@ -14,6 +14,7 @@ const Signals = imports.signals; const St = imports.gi.St; const BoxPointer = imports.ui.boxpointer; +const CtrlAltTab = imports.ui.ctrlAltTab; const GnomeSession = imports.misc.gnomeSession; const GrabHelper = imports.ui.grabHelper; const Main = imports.ui.main; @@ -1482,6 +1483,7 @@ const MessageTray = new Lang.Class({ summaryItem.actor.connect('clicked', Lang.bind(this, function (actor, button) { + actor.grab_key_focus(); this._onSummaryItemClicked(summaryItem, button); })); @@ -1894,9 +1896,13 @@ const MessageTray = new Lang.Class({ modal: !this._overviewVisible, onUngrab: Lang.bind(this, this._escapeTray) }); - // Don't move the windows up if we are in the overview. - if (this._overviewVisible) + // Don't move the windows up if we are in the overview, + // but show the tray in the ctrl+alt+tab list. + if (this._overviewVisible) { + Main.ctrlAltTabManager.addGroup(this._summary, _("Message Tray"), 'start-here', + { sortGroup: CtrlAltTab.SortGroup.BOTTOM }); return; + } let bottomMonitor = Main.layoutManager.bottomMonitor; let geometry = new Clutter.Geometry({ x: bottomMonitor.x, @@ -1936,8 +1942,12 @@ const MessageTray = new Lang.Class({ transition: 'easeOutQuad' }); - if (!this._desktopClone) + // If we are coming back from the overview, there are no windows + // to be moved. Just remove the tray from the ctrl+alt+tab list. + if (!this._desktopClone) { + Main.ctrlAltTabManager.removeGroup(this._summary); return; + } let geometry = this._desktopClone.clip; Tweener.addTween(this._desktopClone,