[Xfce4-commits] [xfce/xfwm4] 01/03: stacking: Raise ancestor on activate if different from window

noreply at xfce.org noreply at xfce.org
Sun Jan 21 17:05:17 CET 2018


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 a33fc7afbcfdddf20f29e60207c3b59ade9396d2
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Sun Jan 21 16:32:16 2018 +0100

    stacking: Raise ancestor on activate if different from window
    
    Bug 14164
    
    This is a regression introduced by 3877bf45, where we would differ
    raising the window until it's focused.
    
    When using click to focus, activating a transient window would raise
    only that transient and not its ancestor, if any.
    
    Change the logic to raise the ancestor if it's different from the
    requested window itself.
---
 src/client.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/client.c b/src/client.c
index 5282f26..8ea3bd4 100644
--- a/src/client.c
+++ b/src/client.c
@@ -2574,13 +2574,13 @@ clientActivate (Client *c, guint32 timestamp, gboolean source_is_application)
 {
     ScreenInfo *screen_info;
     Client *focused;
-    Client *sibling;
+    Client *ancestor;
 
     g_return_if_fail (c != NULL);
     TRACE ("entering clientActivate \"%s\" (0x%lx)", c->name, c->window);
 
     screen_info = c->screen_info;
-    sibling = clientGetTransientFor(c);
+    ancestor = clientGetTransientFor(c);
     focused = clientGetFocus ();
 
     if ((screen_info->current_ws == c->win_workspace) || (screen_info->params->activate_action != ACTIVATE_ACTION_NONE))
@@ -2606,10 +2606,10 @@ clientActivate (Client *c, guint32 timestamp, gboolean source_is_application)
                 workspaceSwitch (screen_info, c->win_workspace, NULL, FALSE, timestamp);
             }
         }
-        clientShow (sibling, TRUE);
-        if (!screen_info->params->click_to_focus)
+        clientShow (ancestor, TRUE);
+        if (c != ancestor)
         {
-            clientRaise (sibling, None);
+            clientRaise (ancestor, None);
             clientSetLastRaise (c);
         }
         if (!source_is_application || screen_info->params->click_to_focus || (c->type & WINDOW_TYPE_DONT_FOCUS))

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


More information about the Xfce4-commits mailing list