[compiz] [PATCH] Notification on window restacking

Erkin Bahceci erkinbah at gmail.com
Sun Mar 25 09:35:36 PDT 2007


I'll consider that when I have some free time.

Thanks.

On 3/25/07, Mike Dransfield <mike at blueroot.co.uk> wrote:
> Erkin Bahceci wrote:
> > Ok, but that way don't we need to store a list of windows (current
> > order) in the plugin and compare the list with the new list when
> > _NET_CLIENT_LIST_STACKING changes just to find the window that has
> > been restacked (like updateClientListForScreen() does)? (Is there an
> > easier way to find that window with the method you suggest?) The
> > restacked window is already identified in restackWindow(). Wouldn't it
> > be more efficient to use this already available information and send a
> > notification from there instead of doing an extra list comparison in
> > each plugin that needs that notification?
> >
>
> I assume that you are fading the windows up through the other
> ones when they change stacking order, if you do then this might
> work.
>
> Add a private variable to each window, call it stackNum or something.
>
> Every time the _NET_CLIENT_LIST_STACKING changes, loop up through
> the stack and compare the old position to the new position.
>
> You can start looping up from the old position.  If you do not find the
> window then it must have gone down.  If it went up, then all the windows
> which are between the old position and the new position need to be faded
> through.  It should be easy to work out which ones were actually faded
> through just because they overlap the window moving up.
>
> Hope this make some sense.
>
>
>
>


More information about the compiz mailing list