diff --git a/data/theme/gnome-shell.css b/data/theme/gnome-shell.css index da69a3e67..cfcec9e0a 100644 --- a/data/theme/gnome-shell.css +++ b/data/theme/gnome-shell.css @@ -593,7 +593,8 @@ StTooltip StLabel { .remove-favorite > .overview-icon, .search-result-content > .overview-icon { border-radius: 4px; - padding: 4px; + padding: 3px; + border: 1px rgba(0,0,0,0); font-size: 10px; color: white; transition-duration: 100; @@ -618,6 +619,11 @@ StTooltip StLabel { transition-duration: 100; } +.app-well-app:focus > .overview-icon, +.search-result-content:focus > .overview-icon { + border: 1px solid #cccccc; +} + .app-well-menu { font-size: 12px } diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index b9f4b1fb4..0433cec00 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -352,6 +352,7 @@ AppWellIcon.prototype = { this.actor = new St.Button({ style_class: 'app-well-app', reactive: true, button_mask: St.ButtonMask.ONE | St.ButtonMask.TWO, + can_focus: true, x_fill: true, y_fill: true }); this.actor._delegate = this; @@ -361,6 +362,7 @@ AppWellIcon.prototype = { this.actor.connect('button-press-event', Lang.bind(this, this._onButtonPress)); this.actor.connect('clicked', Lang.bind(this, this._onClicked)); + this.actor.connect('popup-menu', Lang.bind(this, this._onKeyboardPopupMenu)); this._menu = null; this._menuManager = new PopupMenu.PopupMenuManager(this); @@ -437,6 +439,11 @@ AppWellIcon.prototype = { return false; }, + _onKeyboardPopupMenu: function() { + this.popupMenu(); + this._menu.actor.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false); + }, + getId: function() { return this.app.get_id(); }, @@ -454,6 +461,7 @@ AppWellIcon.prototype = { if (!isPoppedUp) this._onMenuPoppedDown(); })); + Main.overview.connect('hiding', Lang.bind(this, function () { this._menu.close(); })); this._menuManager.addMenu(this._menu); } diff --git a/js/ui/overview.js b/js/ui/overview.js index 177295c43..ad02d1344 100644 --- a/js/ui/overview.js +++ b/js/ui/overview.js @@ -197,6 +197,10 @@ Overview.prototype = { this.dash.actor.add_constraint(this.viewSelector.constrainY); this.dash.actor.add_constraint(this.viewSelector.constrainHeight); + // Translators: this is the name of the dock/favorites area on + // the left of the overview + Main.ctrlAltTabManager.addGroup(this.dash.actor, _("Dash"), 'user-bookmarks'); + }, _onDragBegin: function() {