From c39ffa111f62280619788fe2ae7f774dcfc4d915 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Thu, 26 May 2016 18:20:25 +0200 Subject: [PATCH] overview: Move overview actions and scrolling to background group Both the Overview::scroll-event and actions added via addAction() are meant to work anywhere in the overview, but for now only work on the primary monitor. Move the handling to the background group that is known to span all outputs to fix. https://bugzilla.gnome.org/show_bug.cgi?id=766883 --- js/ui/overview.js | 9 +++++---- js/ui/overviewControls.js | 1 - 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/js/ui/overview.js b/js/ui/overview.js index f839f08d7..ea6b3ec98 100644 --- a/js/ui/overview.js +++ b/js/ui/overview.js @@ -111,7 +111,6 @@ const Overview = new Lang.Class({ activities. See also note for "Activities" string. */ this._overview = new St.BoxLayout({ name: 'overview', accessible_name: _("Overview"), - reactive: true, vertical: true }); this._overview.add_constraint(new LayoutManager.MonitorConstraint({ primary: true })); this._overview._delegate = this; @@ -121,10 +120,13 @@ const Overview = new Lang.Class({ // one. Instances of this class share a single CoglTexture behind the // scenes which allows us to show the background with different // rendering options without duplicating the texture data. - this._backgroundGroup = new Meta.BackgroundGroup(); + this._backgroundGroup = new Meta.BackgroundGroup({ reactive: true }); Main.layoutManager.overviewGroup.add_child(this._backgroundGroup); this._bgManagers = []; + this._backgroundGroup.connect('scroll-event', + Lang.bind(this, this._onScrollEvent)); + this._desktopFade = new St.Widget(); Main.layoutManager.overviewGroup.add_child(this._desktopFade); @@ -249,7 +251,6 @@ const Overview = new Lang.Class({ // Add our same-line elements after the search entry this._overview.add(this._controls.actor, { y_fill: true, expand: true }); - this._controls.actor.connect('scroll-event', Lang.bind(this, this._onScrollEvent)); // TODO - recalculate everything when desktop size changes this.dashIconSize = this._dash.iconSize; @@ -366,7 +367,7 @@ const Overview = new Lang.Class({ if (this.isDummy) return; - this._overview.add_action(action); + this._backgroundGroup.add_action(action); }, _getDesktopClone: function() { diff --git a/js/ui/overviewControls.js b/js/ui/overviewControls.js index 617fc6d82..71114643b 100644 --- a/js/ui/overviewControls.js +++ b/js/ui/overviewControls.js @@ -421,7 +421,6 @@ const ControlsManager = new Lang.Class({ let layout = new ControlsLayout(); this.actor = new St.Widget({ layout_manager: layout, - reactive: true, x_expand: true, y_expand: true, clip_to_allocation: true }); this._group = new St.BoxLayout({ name: 'overview-group',