Hi,

Hallvar Helleseth <[EMAIL PROTECTED]> writes:

> > hmm, usually decorating windows is implemented using window reparenting.
> > This is currently not possible with DirectFB, but it could certainly be
> > added.
> 
> Would be very nice to have, however I don't know how this should be
> implemented, nor do I really have the time to do this ATM...  If
> someone explains roughly how it should be done I might give it a
> short try though sometime :)

this is how it could work:

The window manager is notified that a window is to be created and may
decide to have the window created with a larger size. The application
that created the window doesn't notice this at all since it is
returned a IDirectFBWindow interface that points to the inner window.
If you call GetSurface on this window, you'll get a subsurface of the
actual larger window surface that is exactly the size the application
requested. Also all calls to GetSize(), GetPosition() etc. return
values for the inner (sub)window. Basically this can be implemented
just like subsurfaces are implemented now.

What I described above is not really reparenting as we know it from
X11 since that's dependant on a window hierarchy which we don't have
in DirectFB. Once we introduce subwindows, we could also introduce
nested subwindows as in X11, but I doubt we want to do that.

What remains to be determined is how the window manager should be
integrated into the process of window creation. There should also some
sort of window manager hints. We should have a look at
http://www.freedesktop.org/standards/wm-spec/1.2/html/ and see how
well this would fit into the DirectFB world.


Salut, Sven


-- 
Info:  To unsubscribe send a mail to [EMAIL PROTECTED] with 
"unsubscribe directfb-dev" as subject.

Reply via email to