diff --git a/gnome-shell-emulate-click-action.patch b/gnome-shell-emulate-click-action.patch new file mode 100644 index 0000000..0624032 --- /dev/null +++ b/gnome-shell-emulate-click-action.patch @@ -0,0 +1,41 @@ +From 31c9d2cf7ace5efb2ab7eff5412f560551fb0212 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Florian=20M=C3=BCllner?= +Date: Fri, 16 Jun 2017 17:08:07 +0200 +Subject: system: Emulate click action button release + +Since commit 2c070d38, we add a ClickAction to the visible AltSwitcher +button to track long-presses. As a result, we now have two components +that will grab and ungrab the pointer for the button, so to make sure +we don't end up with a stuck grab, we need to release the second's +component grab when the first activates. + +Currently we only drop the StButton grab on long-press, we also need +to cancel any initiated long-press on click. + +https://bugzilla.gnome.org/show_bug.cgi?id=781738 +--- + js/ui/status/system.js | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/js/ui/status/system.js b/js/ui/status/system.js +index 92ccf4c..8f99865 100644 +--- a/js/ui/status/system.js ++++ b/js/ui/status/system.js +@@ -42,9 +42,15 @@ const AltSwitcher = new Lang.Class({ + _init: function(standard, alternate) { + this._standard = standard; + this._standard.connect('notify::visible', Lang.bind(this, this._sync)); ++ if (this._standard instanceof St.Button) ++ this._standard.connect('clicked', ++ () => { this._clickAction.release(); }); + + this._alternate = alternate; + this._alternate.connect('notify::visible', Lang.bind(this, this._sync)); ++ if (this._alternate instanceof St.Button) ++ this._alternate.connect('clicked', ++ () => { this._clickAction.release(); }); + + this._capturedEventId = global.stage.connect('captured-event', Lang.bind(this, this._onCapturedEvent)); + +-- +cgit v0.12 diff --git a/gnome-shell.changes b/gnome-shell.changes index a401184..d2b7c5d 100644 --- a/gnome-shell.changes +++ b/gnome-shell.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Wed Jul 12 09:38:13 UTC 2017 - zaitor@opensuse.org + +- Add gnome-shell-emulate-click-action.patch: Fix clicks in + gnome-shell shutdown dialog (bgo#781738, boo#1036681). + ------------------------------------------------------------------- Tue Jul 11 11:24:48 UTC 2017 - alarrosa@suse.com diff --git a/gnome-shell.spec b/gnome-shell.spec index 418127c..4912e9d 100644 --- a/gnome-shell.spec +++ b/gnome-shell.spec @@ -66,6 +66,8 @@ Patch16: gnome-shell-1036494-Consistently-handle-createExtensionObject-er Patch17: gnome-shell-1036494-Catch-import-errors.patch # PATCH-FIX-UPSTREAM gnome-shell-1036494-Consistently-handle-initExtension-errors.patch bsc#1036494 bgo#781728 alarrosa@suse.com -- Handle errors consistently Patch18: gnome-shell-1036494-Consistently-handle-initExtension-errors.patch +# PATCH-FIX-UPSTREAM gnome-shell-emulate-click-action.patch bgo#781738 boo#1036681 zaitor@opensuse.org -- Fix clicks in gnome-shell shutdown dialog +Patch19: gnome-shell-emulate-click-action.patch ## NOTE: Keep SLE Classic pathes at bottom. ## NOTE: Keep SLE Classic pathes at bottom. # PATCH-FEATURE-SLE gs-sle-classic-ext.patch bnc#862615 cxiong@suse.com -- add SLE Classic support @@ -214,6 +216,7 @@ into GNOME Shell calendar. %patch16 -p1 %patch17 -p1 %patch18 -p1 +%patch19 -p1 %if !0%{?is_opensuse} %patch1000 -p1