To keep from talking about X11 sorry I used it as and example.

I plan to use the painters algorithm.

I need the following.

1.) Ability to buffer the subsurfaces.
2.) Maintain the list or order of subsurfaces.
3.) Control of the compositing of surfaces when drawn.

The decision to buffer or not buffer is really up to the type of
drawing your doing.
If its simple/acclerated then using the root buffer is fine.
If its complex then you may want your own buffer.

One particular example is for drawing bordered window.
I want the subsurface application area to be flippable since the
control the drawing there.
For the borders I don't need buffering these can be drawn on the fly
similar to unique.

Now unique rolled its own solution which is fine but if you want the
windows xy location and size to be the real size including borders
your out of luck.

I added insets support to fix this but each change requires me to add
more and more to Windows bloating them for simple uses.

By taking advantage of exisiting capabilites of surfaces and simple
providing and api.
Enough api is provided for someone to implement Windows outside of the
core of directfb and still leverage the internal api's instead of the
approach unique took of basically recreating the concept of surfaces
in the window manager.

My point is if you want to do advanced stuff today you end up
replicating most of the surface api but with some work the surface api
becomes usable in a wide range of use cases and you can then implement
the wm as you want without basically ditching most of directfb.

And I am by no means suggesting that I want to implement primitive
unbuffered drawing
like old X11 implementations. I do think it should be possible and
still allow you to make extensive use of the directfb subsurface api.
I'm more intrested in  fullscreen buffer with some additional
buffering of some of the subsurfaces. I still have a compositing
problem even in this case since agian when unbuffered subsurfaces
overlap you either need to do two things ensure they are clipped (X11
only opaque) or run the painters algorithm ala unique.

Right now we have now way in the core to implement the painters
algorithm or buffer surfaces.

_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev

Reply via email to