Drawing CSD on EGL apps

Giulio Camuffo giuliocamuffo at gmail.com
Sat Nov 3 04:46:08 PDT 2012


Hi all,

I'm trying to get decorations in QtWayland for EGL apps. The problem that
I'm facing is that I cannot find a good way to do so.
One solution could be to use an FBO, let the client draw in that and then
draw the content of the FBO into the surface whith its nifty decoration.
This would work but what happens if the client in its rendering code calls
glBindFramebuffer(0)? It will start drawing directly to the surface and it
will screw up badly.
Using an EGL pixel buffer would solve the issue, as I can call
eglMakeCurrent with that, but copying its content to the surface is slow.
A faster thing would probably be wl_egl_pixmap but it's gone.

The ideal solution would be to have an EGL extension that lets call
eglMakeCurrent with a rect that defines the boundaries of the drawable
surface.
There's NV_post_sub_buffer (
http://www.khronos.org/registry/egl/extensions/NV/EGL_NV_post_sub_buffer.txt)
but wl_egl_windows don't seem to support it.

So I'm stuck. Does anyone have an idea?

Giulio
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20121103/bba7e79b/attachment.html>


More information about the wayland-devel mailing list