Updating branch refs/heads/xfce-4.8
         to 1d23a0d781e8c23cdc3b1c3a136b148f9a448c2c (commit)
       from 0f80fca9277fccd5351fafa64ba884d632fe0c43 (commit)

commit 1d23a0d781e8c23cdc3b1c3a136b148f9a448c2c
Author: Olivier Fourdan <four...@xfce.org>
Date:   Mon Sep 12 10:38:41 2011 +0200

    Refix panel plugins such as verve not receiving focus in focus follow mouse 
mode (bug #6617, bug #6649).

 src/client.c |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/src/client.c b/src/client.c
index a7cd5f7..64bd2e7 100644
--- a/src/client.c
+++ b/src/client.c
@@ -2607,8 +2607,16 @@ clientActivate (Client * c, guint32 timestamp, gboolean 
source_is_application)
         }
         clientRaise (sibling, None);
         clientShow (sibling, TRUE);
-        if (source_is_application || screen_info->params->click_to_focus)
+        if (source_is_application || screen_info->params->click_to_focus || 
(c->type & WINDOW_TYPE_DONT_FOCUS))
         {
+            /*
+               It's a bit tricky here, we want to honor the activate request 
only if:
+
+               - The window use the _NET_ACTIVE_WINDOW protocol and identify 
itself as an application,
+               - Or we use the click to focus model, in that case we focus the 
raised window anyway,
+               - Or the request comes from an application that we would not 
focus by default,
+                 such as panels for example
+             */
             clientSetFocus (screen_info, c, timestamp, NO_FOCUS_FLAG);
         }
         clientSetLastRaise (c);
_______________________________________________
Xfce4-commits mailing list
Xfce4-commits@xfce.org
https://mail.xfce.org/mailman/listinfo/xfce4-commits

Reply via email to