[compiz] Focus problem for shaded windows

David Reveman davidr at novell.com
Wed Jul 11 16:36:14 PDT 2007


On Mon, 2007-06-25 at 15:35 +0200, Danny Baumann wrote:
> Hi,
> 
> today, I noticed a problem in focus handling for shaded windows which is
> pretty easy to reproduce:
> 
> - Disable "Click to focus"
> - Shade a window
> - Hover another window
> - Hover back to the window frame of the shaded window
> - Press Ctrl+Alt+S
> 
> Expected behaviour would be that the shaded window is unshaded. What
> happens is that the last active window is shaded.
> 
> I investigated this a bit and found the cause for this behaviour, but
> wasn't able to work out a proper fix for that:
> - The function shade() uses d->activeWindow to determine the window to
> (un)shade via the "window" option.
> - d->activeWindow is set from the FocusIn event handler, but only if
> w->managed is set for the window which is hovered or whose frame is
> hovered
> - As w->managed is unset in the UnmapNotify handler (and so after a
> window is shaded), hovering a shaded window frame does not set
> d->activeWindow to that window.
> 
> Any idea regarding that one?

w->managed should not be unset when getting an UnmapNotify event cause
by shading. The window is still managed by compiz while being shaded.
w->pendingUnmaps should be greater than 1 when a window is shaded but I
guess that's broken somehow...

-David



More information about the compiz mailing list