>From 0048fb6ad2050421fef032f84e524a4092992500 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?"Rodolfo=20Garc=C3=ADa=20Pe=C3=B1as=20(kix)"?= <[email protected]>
Date: Fri, 30 Mar 2012 16:24:39 +0200
Subject: [PATCH 1/3] WindowMaker: canReceiveFocus should check no_focusable
 first

The function canReceiveFocus should check if the window is no_focusable first.

Now, if the window is no focusable, but the window is miniaturized, the window 
is showed in the switchpanel.

How to reproduce the problem:

- Open an application
- Open the window properties, advanced options
- Set that the application can not get the focus and save
- Test the switchpanel (Alt+Tab) the window don't appears
- Minimize the window
- Test the switchpanel (Alt+Tab) the window Appears
- If the window is selected (restored), and test again the switchpanel, the 
window don't appears!
---
 src/switchpanel.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/switchpanel.c b/src/switchpanel.c
index 8f9eec1..23972a1 100644
--- a/src/switchpanel.c
+++ b/src/switchpanel.c
@@ -83,14 +83,16 @@ static int canReceiveFocus(WWindow * wwin)
            wGetHeadForWindow(wwin) != 
wGetHeadForPointerLocation(wwin->screen_ptr))
                return 0;
 
+       if (WFLAGP(wwin, no_focusable))
+               return 0;
+
        if (!wwin->flags.mapped) {
                if (!wwin->flags.shaded && !wwin->flags.miniaturized && 
!wwin->flags.hidden)
                        return 0;
                else
                        return -1;
        }
-       if (WFLAGP(wwin, no_focusable))
-               return 0;
+
        return 1;
 }
 
-- 
1.7.9.1

-- 
||// //\\// Rodolfo "kix" Garcia
||\\// //\\ http://www.kix.es/
>From 0048fb6ad2050421fef032f84e524a4092992500 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?"Rodolfo=20Garc=C3=ADa=20Pe=C3=B1as=20(kix)"?= <[email protected]>
Date: Fri, 30 Mar 2012 16:24:39 +0200
Subject: [PATCH 1/3] WindowMaker: canReceiveFocus should check no_focusable
 first

The function canReceiveFocus should check if the window is no_focusable first.

Now, if the window is no focusable, but the window is miniaturized, the window is showed in the switchpanel.

How to reproduce the problem:

- Open an application
- Open the window properties, advanced options
- Set that the application can not get the focus and save
- Test the switchpanel (Alt+Tab) the window don't appears
- Minimize the window
- Test the switchpanel (Alt+Tab) the window Appears
- If the window is selected (restored), and test again the switchpanel, the window don't appears!
---
 src/switchpanel.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/switchpanel.c b/src/switchpanel.c
index 8f9eec1..23972a1 100644
--- a/src/switchpanel.c
+++ b/src/switchpanel.c
@@ -83,14 +83,16 @@ static int canReceiveFocus(WWindow * wwin)
 	    wGetHeadForWindow(wwin) != wGetHeadForPointerLocation(wwin->screen_ptr))
 		return 0;
 
+	if (WFLAGP(wwin, no_focusable))
+		return 0;
+
 	if (!wwin->flags.mapped) {
 		if (!wwin->flags.shaded && !wwin->flags.miniaturized && !wwin->flags.hidden)
 			return 0;
 		else
 			return -1;
 	}
-	if (WFLAGP(wwin, no_focusable))
-		return 0;
+
 	return 1;
 }
 
-- 
1.7.9.1

Reply via email to