[Xfce4-commits] [xfce/xfwm4] 01/03: client: Check for enter/leave window on button events

noreply at xfce.org noreply at xfce.org
Thu May 16 22:11:23 CEST 2019


This is an automated email from the git hooks/post-receive script.

o   l   i   v   i   e   r       p   u   s   h   e   d       a       c   o   m   m   i   t       t   o       b   r   a   n   c   h       m   a   s   t   e   r   
   in repository xfce/xfwm4.

commit e87422e55b5e861ae918fa053680abe9065e08e1
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Thu May 16 21:57:41 2019 +0200

    client: Check for enter/leave window on button events
    
    Bug: 14741
    
    Clicking a window title button would keep the button pressed even after
    the pointer leaves the button.
    
    This is just a simple case of receiving multiple enter/leave events
    without actually checking for the window, so any additional enter events
    received after the leave event would let the button in a pressed state.
    
    Fix the issue by checking for the actual event window against the button
    window.
    
    Signed-off-by: Olivier Fourdan <fourdan at xfce.org>
---
 src/client.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/client.c b/src/client.c
index 27e72e9..b808fbf 100644
--- a/src/client.c
+++ b/src/client.c
@@ -3799,6 +3799,12 @@ clientButtonPressEventFilter (XfwmEvent *event, gpointer data)
             }
             break;
         case XFWM_EVENT_CROSSING:
+            if ((event->crossing.mode == NotifyGrab) ||
+                (event->crossing.mode == NotifyUngrab) ||
+                (event->meta.window != MYWINDOW_XWINDOW (c->buttons[b])))
+            {
+                break;
+            }
             if (event->crossing.enter)
             {
                 c->button_status[b] = BUTTON_STATE_PRESSED;

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Xfce4-commits mailing list