On 03/20/2015 06:33 AM, Daniel Stone wrote:
On Thursday, March 19, 2015, Bill Spitzak <[email protected]
<mailto:[email protected]>> wrote:
On 03/19/2015 07:07 AM, Jonny Lamb wrote:
- if (gl_renderer->output_create(&__output->base,
output->surface,
+ if (gl_renderer->output_create(&__output->base,
+ output->surface,
output->surface,
gl_renderer->opaque_attribs,
&format) < 0) {
I don't see the need for the duplicate arguments here. Both are
obviously the same value (the xid), it's just that one of the API's
declares this as EGLNativeWindowType and the other as void*. I think
it would be best to hide all this ugliness and make output_create
take an xid.
Keep reading through the diff until you see compositor-x11.c, which has
a comment explaining why it's necessary. Passing an XID directly doesn't
help at all.
Yes I saw that, that is what I was basing my suggestion on. What I was
thinking is that output_create only takes an xid and is implemented
something like this:
static int
gl_renderer_output_create(struct weston_output *output,
Window xid,
const EGLint *attribs,
const EGLint *visual_id)
{
...
if (gr->create_platform_window) {
go->egl_surface =
gr->create_platform_window(gr->egl_display,
egl_config,
(void*)&xid,
NULL);
} else
go->egl_surface =
eglCreateWindowSurface(gr->egl_display,
egl_config,
(EGLNativeWindowType)xid,
NULL);
}
_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel