#pragma once #include "../gui_component/gui_component.h" #include "../application_context.h" #include #include "../../os/WAYLAND/wl_context.h" #include "../../2d_structs.h" #include "../../os/WAYLAND/xdg-shell.h" typedef struct { struct xdg_toplevel *xdg_toplevel; struct wl_egl_window *egl_window; EGLSurface *egl_surface; application_context *ctx; } window_gui_enrichment; window_gui_enrichment *window_gui_enrichment_new( struct xdg_surface *xdg_surface, const char *title, application_context *ctx ); /* the toplevel listener registration callback offers a void* arg for passing data inside the callback (our app state in this case, waiting for narrowing) */ gui_component* window_new( const char *title, ui_dimensions *dim, application_context *ctx );