From 7273f30234ed03bc6c8f7c48b360d6efb8c0fa87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Wed, 8 Jan 2025 12:07:03 +0100 Subject: [PATCH] tests/wayland/client-utils: Allow creating role-less surfaces This makes it easier to create e.g. subsurfaces or cursor surfaces that inherit generic logic from the WaylandSurface test utility helper type. Part-of: --- .../wayland-test-client-utils.c | 16 ++++++++++++++++ .../wayland-test-client-utils.h | 2 ++ 2 files changed, 18 insertions(+) diff --git a/src/tests/wayland-test-clients/wayland-test-client-utils.c b/src/tests/wayland-test-clients/wayland-test-client-utils.c index c9ebe7be8..a23a08382 100644 --- a/src/tests/wayland-test-clients/wayland-test-client-utils.c +++ b/src/tests/wayland-test-clients/wayland-test-client-utils.c @@ -847,6 +847,22 @@ wayland_surface_new (WaylandDisplay *display, return surface; } +WaylandSurface * +wayland_surface_new_unassigned (WaylandDisplay *display) +{ + WaylandSurface *surface; + + surface = g_object_new (WAYLAND_TYPE_SURFACE, NULL); + + surface->display = display; + surface->wl_surface = wl_compositor_create_surface (display->compositor); + wl_surface_add_listener (surface->wl_surface, + &surface_listener, + surface); + + return surface; +} + gboolean wayland_surface_has_state (WaylandSurface *surface, enum xdg_toplevel_state state) diff --git a/src/tests/wayland-test-clients/wayland-test-client-utils.h b/src/tests/wayland-test-clients/wayland-test-client-utils.h index 2c262bc1b..cedadfb30 100644 --- a/src/tests/wayland-test-clients/wayland-test-client-utils.h +++ b/src/tests/wayland-test-clients/wayland-test-client-utils.h @@ -119,6 +119,8 @@ WaylandSurface * wayland_surface_new (WaylandDisplay *display, int default_height, uint32_t color); +WaylandSurface * wayland_surface_new_unassigned (WaylandDisplay *display); + gboolean wayland_surface_has_state (WaylandSurface *surface, enum xdg_toplevel_state state);