xserver: Branch 'master'

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Nov 28 09:00:57 UTC 2023


 hw/xwayland/xwayland-glamor-eglstream.c |    6 +++---
 hw/xwayland/xwayland-glamor-gbm.c       |    4 ++--
 hw/xwayland/xwayland-input.c            |   14 +++++++-------
 hw/xwayland/xwayland-screen.c           |   18 +++++++++---------
 4 files changed, 21 insertions(+), 21 deletions(-)

New commits:
commit 372f67796f4cf4a71f39b9fdfd67e07729f9b677
Author: Olivier Fourdan <ofourdan at redhat.com>
Date:   Wed Nov 22 09:14:15 2023 +0100

    xwayland: Avoid hardcoding the interface name
    
    The Wayland interfaces have a "name" field that we can use instead of
    hardcoding their name.
    
    Change the code to use that name instead of the static strings.
    
    This was inspired by a similar change in mutter by Robert Mader
    <robert.mader at collabora.com>.
    
    Signed-off-by: Olivier Fourdan <ofourdan at redhat.com>
    Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>

diff --git a/hw/xwayland/xwayland-glamor-eglstream.c b/hw/xwayland/xwayland-glamor-eglstream.c
index e5131b09c..2b23dec25 100644
--- a/hw/xwayland/xwayland-glamor-eglstream.c
+++ b/hw/xwayland/xwayland-glamor-eglstream.c
@@ -663,7 +663,7 @@ xwl_glamor_eglstream_init_wl_registry(struct xwl_screen *xwl_screen,
     struct xwl_eglstream_private *xwl_eglstream =
         xwl_eglstream_get(xwl_screen);
 
-    if (strcmp(name, "wl_eglstream_display") == 0) {
+    if (strcmp(name, wl_eglstream_display_interface.name) == 0) {
         xwl_eglstream->display = wl_registry_bind(
             wl_registry, id, &wl_eglstream_display_interface, version);
 
@@ -671,11 +671,11 @@ xwl_glamor_eglstream_init_wl_registry(struct xwl_screen *xwl_screen,
                                           &eglstream_display_listener,
                                           xwl_screen);
         return TRUE;
-    } else if (strcmp(name, "wl_eglstream_controller") == 0) {
+    } else if (strcmp(name, wl_eglstream_controller_interface.name) == 0) {
         xwl_eglstream->controller = wl_registry_bind(
             wl_registry, id, &wl_eglstream_controller_interface, version);
         return TRUE;
-    } else if (strcmp(name, "zwp_linux_dmabuf_v1") == 0) {
+    } else if (strcmp(name, zwp_linux_dmabuf_v1_interface.name) == 0) {
         xwl_screen_set_dmabuf_interface(xwl_screen, id, version);
         return TRUE;
     }
diff --git a/hw/xwayland/xwayland-glamor-gbm.c b/hw/xwayland/xwayland-glamor-gbm.c
index 40a02f2db..9442aee02 100644
--- a/hw/xwayland/xwayland-glamor-gbm.c
+++ b/hw/xwayland/xwayland-glamor-gbm.c
@@ -1004,10 +1004,10 @@ xwl_glamor_gbm_init_wl_registry(struct xwl_screen *xwl_screen,
                                 uint32_t id, const char *name,
                                 uint32_t version)
 {
-    if (strcmp(name, "wl_drm") == 0) {
+    if (strcmp(name, wl_drm_interface.name) == 0) {
         xwl_screen_set_drm_interface(xwl_screen, id, version);
         return TRUE;
-    } else if (strcmp(name, "zwp_linux_dmabuf_v1") == 0) {
+    } else if (strcmp(name, zwp_linux_dmabuf_v1_interface.name) == 0) {
         xwl_screen_set_dmabuf_interface(xwl_screen, id, version);
         return TRUE;
     }
diff --git a/hw/xwayland/xwayland-input.c b/hw/xwayland/xwayland-input.c
index 67c7c151d..ce6232ed4 100644
--- a/hw/xwayland/xwayland-input.c
+++ b/hw/xwayland/xwayland-input.c
@@ -3025,22 +3025,22 @@ input_handler(void *data, struct wl_registry *registry, uint32_t id,
 {
     struct xwl_screen *xwl_screen = data;
 
-    if (strcmp(interface, "wl_seat") == 0 && version >= 3) {
+    if (strcmp(interface, wl_seat_interface.name) == 0 && version >= 3) {
         create_input_device(xwl_screen, id, version);
         xwl_screen->expecting_event++;
-    } else if (strcmp(interface, "zwp_relative_pointer_manager_v1") == 0) {
+    } else if (strcmp(interface, zwp_relative_pointer_manager_v1_interface.name) == 0) {
         init_relative_pointer_manager(xwl_screen, id, version);
         maybe_init_relative_pointer_listeners_after_capabilities(xwl_screen);
-    } else if (strcmp(interface, "zwp_pointer_constraints_v1") == 0) {
+    } else if (strcmp(interface, zwp_pointer_constraints_v1_interface.name) == 0) {
         init_pointer_constraints(xwl_screen, id, version);
-    } else if (strcmp(interface, "zwp_pointer_gestures_v1") == 0) {
+    } else if (strcmp(interface, zwp_pointer_gestures_v1_interface.name) == 0) {
         init_pointer_gestures(xwl_screen, id, version);
         maybe_init_pointer_gesture_listeners_after_capabilities(xwl_screen);
-    } else if (strcmp(interface, "zwp_tablet_manager_v2") == 0) {
+    } else if (strcmp(interface, zwp_tablet_manager_v2_interface.name) == 0) {
         init_tablet_manager(xwl_screen, id, version);
-    } else if (strcmp(interface, "zwp_xwayland_keyboard_grab_manager_v1") == 0) {
+    } else if (strcmp(interface, zwp_xwayland_keyboard_grab_manager_v1_interface.name) == 0) {
         init_keyboard_grab(xwl_screen, id, version);
-    } else if (strcmp(interface, "zwp_keyboard_shortcuts_inhibit_manager_v1") == 0) {
+    } else if (strcmp(interface, zwp_keyboard_shortcuts_inhibit_manager_v1_interface.name) == 0) {
         init_keyboard_shortcuts_inhibit(xwl_screen, id, version);
     }
 }
diff --git a/hw/xwayland/xwayland-screen.c b/hw/xwayland/xwayland-screen.c
index 212bf26a0..41bf89d9f 100644
--- a/hw/xwayland/xwayland-screen.c
+++ b/hw/xwayland/xwayland-screen.c
@@ -448,7 +448,7 @@ registry_global(void *data, struct wl_registry *registry, uint32_t id,
 {
     struct xwl_screen *xwl_screen = data;
 
-    if (strcmp(interface, "wl_compositor") == 0) {
+    if (strcmp(interface, wl_compositor_interface.name) == 0) {
         uint32_t request_version = 1;
 
         if (version >= WL_SURFACE_DAMAGE_BUFFER_SINCE_VERSION)
@@ -457,28 +457,28 @@ registry_global(void *data, struct wl_registry *registry, uint32_t id,
         xwl_screen->compositor =
             wl_registry_bind(registry, id, &wl_compositor_interface, request_version);
     }
-    else if (strcmp(interface, "wl_shm") == 0) {
+    else if (strcmp(interface, wl_shm_interface.name) == 0) {
         xwl_screen->shm = wl_registry_bind(registry, id, &wl_shm_interface, 1);
     }
-    else if (strcmp(interface, "xdg_wm_base") == 0) {
+    else if (strcmp(interface, xdg_wm_base_interface.name) == 0) {
         xwl_screen->xdg_wm_base =
             wl_registry_bind(registry, id, &xdg_wm_base_interface, 1);
         xdg_wm_base_add_listener(xwl_screen->xdg_wm_base,
                                  &xdg_wm_base_listener,
                                  NULL);
     }
-    else if (strcmp(interface, "wl_output") == 0 && version >= 2) {
+    else if (strcmp(interface, wl_output_interface.name) == 0 && version >= 2) {
         if (xwl_output_create(xwl_screen, id, (xwl_screen->fixed_output == NULL), version))
             xwl_screen->expecting_event++;
     }
-    else if (strcmp(interface, "zxdg_output_manager_v1") == 0) {
+    else if (strcmp(interface, zxdg_output_manager_v1_interface.name) == 0) {
         /* We support xdg-output from version 1 to version 3 */
         version = min(version, 3);
         xwl_screen->xdg_output_manager =
             wl_registry_bind(registry, id, &zxdg_output_manager_v1_interface, version);
         xwl_screen_init_xdg_output(xwl_screen);
     }
-    else if (strcmp(interface, "wp_drm_lease_device_v1") == 0) {
+    else if (strcmp(interface, wp_drm_lease_device_v1_interface.name) == 0) {
         if (xwl_screen->screen->root == NULL) {
             struct xwl_queued_drm_lease_device *queued = malloc(sizeof(struct xwl_queued_drm_lease_device));
             queued->id = id;
@@ -487,14 +487,14 @@ registry_global(void *data, struct wl_registry *registry, uint32_t id,
             xwl_screen_add_drm_lease_device(xwl_screen, id);
         }
     }
-    else if (strcmp(interface, "wp_viewporter") == 0) {
+    else if (strcmp(interface, wp_viewporter_interface.name) == 0) {
         xwl_screen->viewporter = wl_registry_bind(registry, id, &wp_viewporter_interface, 1);
     }
-    else if (strcmp(interface, "xwayland_shell_v1") == 0 && xwl_screen->rootless) {
+    else if (strcmp(interface, xwayland_shell_v1_interface.name) == 0 && xwl_screen->rootless) {
         xwl_screen->xwayland_shell =
             wl_registry_bind(registry, id, &xwayland_shell_v1_interface, 1);
     }
-    else if (strcmp(interface, "wp_tearing_control_manager_v1") == 0) {
+    else if (strcmp(interface, wp_tearing_control_manager_v1_interface.name) == 0) {
         xwl_screen->tearing_control_manager =
             wl_registry_bind(registry, id, &wp_tearing_control_manager_v1_interface, 1);
     }


More information about the xorg-commit mailing list