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 _______________________________________________ compiz mailing list compiz@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/compiz