1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-21 05:18:06 +01:00

canReceiveFocus() should check no_focusable first

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

If the window is not focusable but is miniaturized, the window is shown 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 doesn't appear
- Minimize the window
- Test the switchpanel (Alt+Tab), the window appears
- If the window is selected (restored), and test again the switchpanel, the window doesn't appear!
This commit is contained in:
Rodolfo García Peñas (kix)
2012-03-30 16:24:39 +02:00
committed by Carlos R. Mafra
parent 42a78ee73f
commit 528d97b597

View File

@@ -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;
}