diff --git a/WINGs/wclient_wl.c b/WINGs/wclient_wl.c index e8bd387..260e0ac 100644 --- a/WINGs/wclient_wl.c +++ b/WINGs/wclient_wl.c @@ -552,19 +552,6 @@ wl_client_toplevel_destroy(struct W_View *view) wl_client_view_destroy_backing((unsigned long)view->window); } -void -wl_client_toplevel_unmap(WNativeWindow id) -{ - WLClientToplevel *top = wlc_top_find(id); - if (!top || !top->surface) return; - /* Attach NULL to unmap the surface from the compositor. */ - wl_surface_attach(top->surface, NULL, 0, 0); - wl_surface_commit(top->surface); - if (top->ctx && top->ctx->display) - wl_display_flush(top->ctx->display); - top->mapped = 0; -} - void W_WLClientSetMinMaxSize(W_View *view) { diff --git a/WINGs/wview_wl.c b/WINGs/wview_wl.c index 843f93b..5bd87ac 100644 --- a/WINGs/wview_wl.c +++ b/WINGs/wview_wl.c @@ -18,7 +18,6 @@ static unsigned int wl_view_next_id = WL_VIEW_ID_BASE; void (*W_ViewCommitBackingFn)(unsigned long id) = NULL; void (*W_ViewDestroyBackingFn)(unsigned long id) = NULL; void (*W_ViewSceneNodeSetEnabledFn)(unsigned long id, int enabled) = NULL; -void (*W_WLClientUnmapFn)(unsigned long id) = NULL; /* Callback for wclient_wl.c to trigger a full redisplay after resize */ static void wl_redisplay(void *vctx, W_View *view); @@ -212,12 +211,6 @@ static void wl_unmap(void *vctx, W_View *view) /* Disable the scene buffer so the view disappears from screen. */ if (W_ViewSceneNodeSetEnabledFn) W_ViewSceneNodeSetEnabledFn((unsigned long)view->window, 0); - /* For WINGs client toplevels (popup menus), send a NULL buffer - * to the wl_surface so the compositor fully unmaps the surface. - * Scene-node disable alone is insufficient because the surface - * still holds its last committed buffer. */ - if (view->flags.topLevel && W_WLClientUnmapFn) - W_WLClientUnmapFn((unsigned long)view->window); if (view->parent && view->parent->flags.mapped) wl_redisplay(vctx, view->parent); } diff --git a/src/backend/wayland/wl_backend.c b/src/backend/wayland/wl_backend.c index f686587..f23a6ea 100644 --- a/src/backend/wayland/wl_backend.c +++ b/src/backend/wayland/wl_backend.c @@ -471,9 +471,6 @@ wl_display_open(const char *name) extern void wl_pointer_ungrab(unsigned long); W_WLPointerGrabFn = wl_pointer_grab; W_WLPointerUngrabFn = wl_pointer_ungrab; - extern void (*W_WLClientUnmapFn)(unsigned long); - extern void wl_client_toplevel_unmap(WNativeWindow); - W_WLClientUnmapFn = wl_client_toplevel_unmap; extern void (*W_ClipboardStoreFn)(const char *text, int len); extern char *(*W_ClipboardFetchFn)(int *len_out);