diff --git a/src/wayland/meta-wayland-tablet-pad-ring.c b/src/wayland/meta-wayland-tablet-pad-ring.c index 94230f0b8..9edb38216 100644 --- a/src/wayland/meta-wayland-tablet-pad-ring.c +++ b/src/wayland/meta-wayland-tablet-pad-ring.c @@ -33,6 +33,7 @@ #include "meta-surface-actor-wayland.h" #include "meta-wayland-private.h" #include "meta-wayland-tablet-pad.h" +#include "meta-wayland-tablet-pad-group.h" #include "meta-wayland-tablet-pad-ring.h" static void @@ -209,3 +210,14 @@ meta_wayland_tablet_pad_ring_sync_focus (MetaWaylandTabletPadRing *ring) wl_resource_get_client (ring->pad->focus_surface->resource)); } } + +void +meta_wayland_tablet_pad_ring_set_group (MetaWaylandTabletPadRing *ring, + MetaWaylandTabletPadGroup *group) +{ + /* Group is static, can only be set once */ + g_assert (ring->group == NULL); + + ring->group = group; + group->rings = g_list_append (group->rings, ring); +} diff --git a/src/wayland/meta-wayland-tablet-pad-ring.h b/src/wayland/meta-wayland-tablet-pad-ring.h index d729d6dcc..34ce33a56 100644 --- a/src/wayland/meta-wayland-tablet-pad-ring.h +++ b/src/wayland/meta-wayland-tablet-pad-ring.h @@ -32,6 +32,7 @@ struct _MetaWaylandTabletPadRing { MetaWaylandTabletPad *pad; + MetaWaylandTabletPadGroup *group; struct wl_list resource_list; struct wl_list focus_resource_list; @@ -42,6 +43,8 @@ struct _MetaWaylandTabletPadRing MetaWaylandTabletPadRing * meta_wayland_tablet_pad_ring_new (MetaWaylandTabletPad *pad); void meta_wayland_tablet_pad_ring_free (MetaWaylandTabletPadRing *ring); +void meta_wayland_tablet_pad_ring_set_group (MetaWaylandTabletPadRing *ring, + MetaWaylandTabletPadGroup *group); struct wl_resource * meta_wayland_tablet_pad_ring_create_new_resource (MetaWaylandTabletPadRing *ring, struct wl_client *client,