From c83f9590b071d2fb01a0cefe35795341ef8d2d4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Hedin=20Br=C3=B8nner?= Date: Thu, 26 Apr 2018 14:46:18 +0200 Subject: [PATCH] Activate click overlays on startup/monitors-changed We separate resetting the tiling overlay and activating/deactivating the monitor click overlay. --- stackoverlay.js | 7 +++++-- tiling.js | 3 +++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/stackoverlay.js b/stackoverlay.js index 5b7ba03..166bb54 100644 --- a/stackoverlay.js +++ b/stackoverlay.js @@ -72,7 +72,7 @@ class ClickOverlay { this.enterSignal = enterMonitor.connect( 'enter-event', () => { - this.reset(); + this.deactivate(); let space = Tiling.spaces.monitors.get(this.monitor); space.workspace.activate(global.get_current_time()); return Clutter.EVENT_STOP; @@ -86,10 +86,13 @@ class ClickOverlay { this.enterMonitor.set_size(monitor.width, monitor.height); } + deactivate() { + this.enterMonitor.set_size(0, 0); + } + reset() { this.left.setTarget(null); this.right.setTarget(null); - this.enterMonitor.set_size(0, 0); } destroy() { diff --git a/tiling.js b/tiling.js index 5af895c..ab6f386 100644 --- a/tiling.js +++ b/tiling.js @@ -340,6 +340,7 @@ class Spaces extends Map { for (let monitor of Main.layoutManager.monitors) { let overlay = new ClickOverlay(monitor); monitor.clickOverlay = overlay; + overlay.activate(); this.clickOverlays.push(overlay); } @@ -568,6 +569,8 @@ function enable() { let toSpace = spaces.spaceOf(to); spaces.monitors.set(toSpace.monitor, toSpace); + toSpace.monitor.clickOverlay.deactivate(); + let display = Gdk.Display.get_default(); let deviceManager = display.get_device_manager(); let pointer = deviceManager.get_client_pointer();