mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-12-15 08:56:26 -05:00
render/egl: replace init/finish with create/destroy
This ensures wlr_gles2_renderer can properly take ownership of the wlr_egl. Closes: https://github.com/swaywm/wlroots/issues/2612
This commit is contained in:
parent
50b120927d
commit
1d461687d2
12 changed files with 62 additions and 68 deletions
|
|
@ -16,7 +16,7 @@ static struct wl_seat *seat = NULL;
|
|||
static struct xdg_wm_base *wm_base = NULL;
|
||||
static struct zwp_pointer_constraints_v1 *pointer_constraints = NULL;
|
||||
|
||||
struct wlr_egl egl;
|
||||
struct wlr_egl *egl;
|
||||
struct wl_egl_window *egl_window;
|
||||
struct wlr_egl_surface *egl_surface;
|
||||
struct zwp_locked_pointer_v1* locked_pointer;
|
||||
|
|
@ -32,7 +32,7 @@ enum {
|
|||
struct wl_region *regions[3];
|
||||
|
||||
static void draw(void) {
|
||||
eglMakeCurrent(egl.display, egl_surface, egl_surface, egl.context);
|
||||
eglMakeCurrent(egl->display, egl_surface, egl_surface, egl->context);
|
||||
|
||||
float color[] = {1.0, 1.0, 0.0, 1.0};
|
||||
|
||||
|
|
@ -40,7 +40,7 @@ static void draw(void) {
|
|||
glClearColor(color[0], color[1], color[2], 1.0);
|
||||
glClear(GL_COLOR_BUFFER_BIT);
|
||||
|
||||
eglSwapBuffers(egl.display, egl_surface);
|
||||
eglSwapBuffers(egl->display, egl_surface);
|
||||
}
|
||||
|
||||
static void pointer_handle_button(void *data, struct wl_pointer *pointer,
|
||||
|
|
@ -212,7 +212,7 @@ int main(int argc, char **argv) {
|
|||
regions[REGION_TYPE_JOINT] = joint_region;
|
||||
|
||||
EGLint attribs[] = { EGL_NONE };
|
||||
wlr_egl_init(&egl, EGL_PLATFORM_WAYLAND_EXT, display, attribs);
|
||||
egl = wlr_egl_create(EGL_PLATFORM_WAYLAND_EXT, display, attribs);
|
||||
|
||||
struct wl_surface *surface = wl_compositor_create_surface(compositor);
|
||||
struct xdg_surface *xdg_surface =
|
||||
|
|
@ -241,7 +241,7 @@ int main(int argc, char **argv) {
|
|||
wl_surface_commit(surface);
|
||||
|
||||
egl_window = wl_egl_window_create(surface, width, height);
|
||||
egl_surface = wlr_egl_create_surface(&egl, egl_window);
|
||||
egl_surface = wlr_egl_create_surface(egl, egl_window);
|
||||
|
||||
wl_display_roundtrip(display);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue