1 /*
2  * Clutter.
3  *
4  * An OpenGL based 'interactive canvas' library.
5  *
6  * Copyright (C) 2010, 2011  Intel Corporation.
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library. If not, see <http://www.gnu.org/licenses/>.
20 
21  * Authors:
22  *  Matthew Allum
23  *  Robert Bragg
24  *  Kristian Høgsberg
25  */
26 
27 #ifndef __CLUTTER_BACKEND_WAYLAND_PRIV_H__
28 #define __CLUTTER_BACKEND_WAYLAND_PRIV_H__
29 
30 #include <glib-object.h>
31 #include <clutter/clutter-event.h>
32 #include <clutter/clutter-backend.h>
33 #include <clutter/clutter-device-manager.h>
34 
35 #include "clutter-backend-private.h"
36 #include "clutter-backend-wayland.h"
37 
38 G_BEGIN_DECLS
39 
40 struct _ClutterBackendWayland
41 {
42   ClutterBackend parent_instance;
43 
44   ClutterDeviceManager *device_manager;
45 
46   struct wl_display *wayland_display;
47   struct wl_registry *wayland_registry;
48   struct wl_compositor *wayland_compositor;
49   struct wl_shell *wayland_shell;
50   struct wl_shm *wayland_shm;
51   struct wl_surface *cursor_surface;
52   struct wl_buffer *cursor_buffer;
53   struct wl_output *wayland_output;
54   struct wl_cursor_theme *cursor_theme;
55 
56   gint cursor_x, cursor_y;
57   gint output_width, output_height;
58 
59   GSource *wayland_source;
60 
61   /* event timer */
62   GTimer *event_timer;
63 };
64 
65 void _clutter_backend_wayland_ensure_cursor (ClutterBackendWayland *backend_wayland);
66 
67 G_END_DECLS
68 
69 #endif /* __CLUTTER_BACKEND_WAYLAND_PRIV_H__ */
70