1 /* 2 * Wayland Support 3 * 4 * Copyright (C) 2016 Red Hat 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2 of the License, or (at your option) any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library. If not, see <http://www.gnu.org/licenses/>. 18 * 19 * Author: Carlos Garnacho <carlosg@gnome.org> 20 */ 21 22 #ifndef META_WAYLAND_TABLET_PAD_RING_H 23 #define META_WAYLAND_TABLET_PAD_RING_H 24 25 #include <glib.h> 26 #include <wayland-server.h> 27 28 #include "backends/meta-cursor-renderer.h" 29 #include "wayland/meta-wayland-types.h" 30 31 struct _MetaWaylandTabletPadRing 32 { 33 MetaWaylandTabletPad *pad; 34 MetaWaylandTabletPadGroup *group; 35 36 struct wl_list resource_list; 37 struct wl_list focus_resource_list; 38 39 gchar *feedback; 40 }; 41 42 MetaWaylandTabletPadRing * meta_wayland_tablet_pad_ring_new (MetaWaylandTabletPad *pad); 43 void meta_wayland_tablet_pad_ring_free (MetaWaylandTabletPadRing *ring); 44 45 void meta_wayland_tablet_pad_ring_set_group (MetaWaylandTabletPadRing *ring, 46 MetaWaylandTabletPadGroup *group); 47 struct wl_resource * 48 meta_wayland_tablet_pad_ring_create_new_resource (MetaWaylandTabletPadRing *ring, 49 struct wl_client *client, 50 struct wl_resource *group_resource, 51 uint32_t id); 52 53 gboolean meta_wayland_tablet_pad_ring_handle_event (MetaWaylandTabletPadRing *ring, 54 const ClutterEvent *event); 55 56 void meta_wayland_tablet_pad_ring_sync_focus (MetaWaylandTabletPadRing *ring); 57 58 #endif /* META_WAYLAND_TABLET_PAD_RING_H */ 59 60