From dceb0cf55be97a41bc4bbede4ae3c9c5bc28dcb9 Mon Sep 17 00:00:00 2001 From: Window Maker Date: Tue, 2 Jun 2026 12:12:22 +0200 Subject: [PATCH] decompose wl_backend.c: extract wl_xdisplay.c --- src/Makefile.am | 3 ++- src/backend/wayland/wl_backend.c | 9 +-------- src/backend/wayland/wl_types.h | 1 + src/backend/wayland/wl_xdisplay.c | 14 ++++++++++++++ 4 files changed, 18 insertions(+), 9 deletions(-) create mode 100644 src/backend/wayland/wl_xdisplay.c diff --git a/src/Makefile.am b/src/Makefile.am index 1e079b1..e39908e 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -177,7 +177,8 @@ wmaker_SOURCES += \ backend/wayland/wl_focus.c \ backend/wayland/wl_screen.c \ backend/wayland/wl_shm.c \ - backend/wayland/wl_wings.c + backend/wayland/wl_wings.c \ + backend/wayland/wl_xdisplay.c endif if USE_NESTED_FUNC diff --git a/src/backend/wayland/wl_backend.c b/src/backend/wayland/wl_backend.c index 2da8768..10a6e26 100644 --- a/src/backend/wayland/wl_backend.c +++ b/src/backend/wayland/wl_backend.c @@ -2145,14 +2145,7 @@ wl_handle_x11_events(int fd, uint32_t mask, void *data) return 0; } -/* Public accessor for the XWayland Display* — used by screen.c to create - * an RContext for texture rendering without exposing wl_state globally. */ -Display *wl_get_x_display(void) -{ - return wl_state.x_display; -} - -static void * +void * wl_display_open(const char *name) { const char *sock; diff --git a/src/backend/wayland/wl_types.h b/src/backend/wayland/wl_types.h index 8b98983..baa3390 100644 --- a/src/backend/wayland/wl_types.h +++ b/src/backend/wayland/wl_types.h @@ -554,3 +554,4 @@ void wm_shm_surface_commit(struct wm_shm_surface *s, struct wlr_scene_tree *pare void wm_shm_surface_destroy(struct wm_shm_surface *s); WMScreen *wl_get_wmscreen(void); void wl_wings_dispatch(int timeout_ms, void *ud); +Display *wl_get_x_display(void); diff --git a/src/backend/wayland/wl_xdisplay.c b/src/backend/wayland/wl_xdisplay.c new file mode 100644 index 0000000..487a550 --- /dev/null +++ b/src/backend/wayland/wl_xdisplay.c @@ -0,0 +1,14 @@ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include "wl_types.h" + + +/* Public accessor for the XWayland Display* — used by screen.c to create + * an RContext for texture rendering without exposing wl_state globally. */ +Display *wl_get_x_display(void) +{ + return wl_state.x_display; +} +