← Back to team overview

unity-design team mailing list archive

Re: Criticism of Client Side Window Decorations

 

On Sun, May 16, 2010 at 05:11, Sam Spilsbury <smspillaz@xxxxxxxxx> wrote:

> If you want to make the fading smooth, then you will most likely need
> some form of graphical accelleration, whether that be EXA, Glitz or
> G3D. There is no way to guaruntee that everyone has this.
>

a few frames would suffice, no accelleration needed here, unless it is
already active, but ok let's follow your breadcrumbs to where you want to
go:


> > You have a point with your cat and mouse game though..
> >
> >>
> >> You cannot do this with client side decorations.
> >
> > why not? because of the imprecision of the absolute position information?
> > that's a WM bug, has nothing to do with CSD.
> >
>
> Some window managers have to fake out position information to make
> this kind of thing work. Usually this is because they are reparenting
> the window (metacity, kwin) or they are a compositing window manager
> with input redirection and have to place the window offscreen to
> redirect input to it on-screen (Metisse, future versions of compiz).
>
> In any case, there are methods of a client determining it's position
> on the root window, however this is inaccurate at best and something
> the client shouldn't need to be concerned with.
>
> If you wanted to do separated titlebar handles, there is a lot of work
> that needs to go into that, namely the client drawing titlebars in a
> separate window and either reparenting that window into itself or
> drawing it separately. Which kind of begs the question - why not just
> let the window manager do that because it already does. If you let the
> window manager do this, then you can guaruntee that the titlebar will
> be consistent with the rules the window manager has defined and client
> won't all just do their own thing when their titlebar is off-screen.
>

Altogether no real problems, only a lot more work than what one would
initially assume after such a confident suggestion by Mark ;)
Easy to imagine alternative routes, after you put it all down like this..


> >> The window manager absolutely depends on the client to not be stupid
> >> and to obey rules
> >
> > Doesn't this mean that we can entrust the client with more then?
> > You are arguing against your own position here.
>
> When you have client side decorations, you give more chances for the
> client to be stupid and introduce it's own window management
> paradigms, drawing the buttons the window manager does not expect to
> be drawn, or in extreme cases resizing or moving windows in special
> ways when they are grabbed by the titlebar.
>

yeah, i think you cleaned up most of the question marks lying around
comprehensively, thanks a lot for that!

References