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
