[compiz] Window specific actions and edge buttons

David Reveman davidr at novell.com
Thu May 17 11:17:49 PDT 2007


On Wed, 2007-05-16 at 11:51 +0100, Mike Dransfield wrote:
> David Reveman wrote:
> > On Tue, 2007-05-15 at 00:29 +0100, Mike Dransfield wrote:
> >   
> >> There is a problem with some window specific actions like
> >> scale_group and rotate_with_window when they are activated
> >> by an edgebutton.
> >>
> >> The basic problem is that each of those actions use the window
> >> option provided to the action.  When an edgebutton is used the
> >> window id sent is actually the id of the edge window, this means
> >> that actions which rely on this stop working.
> >>
> >> The obvious solution would be to change the affected functions
> >> to work on the active window rather that the one passed to the
> >> action.
> >>     
> >
> > Yes, I think that's what should be done.
> >   
> 
> OK - I did that for those two.
> 
> I am just about to push out similar changes for close_window,
> minimize_window and maximize_window.  If they reduce some
> functionality then please let me know and I will write it so that
> it checks for an edge and only uses activeWindow then.

This is likely not what you want when a button press triggered an action
and it removes the possibility to remotely trigger those actions for
specific windows.

For scale_group and such I think you want to only use the active window
if the provided window is an edge window or a maybe a window that isn't
managed. I don't see any reason why close_window, etc should be changed.

> 
> If close_window is used with edge+edgebutton then it crashes
> which is obviously a problem elsewhere.  Is it fairly obvious to
> you where this bug would be?  Otherwise I'll track that down too,
> I assume it must be just a case of setting the correct allowed
> actions hint on edges?

It probably crashes because close_window will try to terminate the
client that created the window and that happens to be compiz itself.
close_window action should be updated to only close managed windows.

- David



More information about the compiz mailing list