summaryrefslogtreecommitdiff
path: root/clutter/clutter-backend.c
diff options
context:
space:
mode:
Diffstat (limited to 'clutter/clutter-backend.c')
-rw-r--r--clutter/clutter-backend.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/clutter/clutter-backend.c b/clutter/clutter-backend.c
index d255eee8b..f36579419 100644
--- a/clutter/clutter-backend.c
+++ b/clutter/clutter-backend.c
@@ -89,6 +89,12 @@
#ifdef CLUTTER_INPUT_WAYLAND
#include "wayland/clutter-device-manager-wayland.h"
#endif
+#ifdef CLUTTER_WINDOWING_MIR
+#include "mir/clutter-backend-mir.h"
+#endif
+#ifdef CLUTTER_INPUT_MIR
+#include "mir/clutter-device-manager-mir.h"
+#endif
#ifdef HAVE_CLUTTER_WAYLAND_COMPOSITOR
#include <cogl/cogl-wayland-server.h>
@@ -511,6 +517,11 @@ _clutter_create_backend (void)
retval = g_object_new (CLUTTER_TYPE_BACKEND_GDK, NULL);
else
#endif
+#ifdef CLUTTER_WINDOWING_MIR
+ if (backend == NULL || backend == I_(CLUTTER_WINDOWING_MIR))
+ retval = g_object_new (CLUTTER_TYPE_BACKEND_MIR, NULL);
+ else
+#endif
if (backend == NULL)
g_error ("No default Clutter backend found.");
else
@@ -590,6 +601,14 @@ clutter_backend_real_init_events (ClutterBackend *backend)
}
else
#endif
+#ifdef CLUTTER_INPUT_MIR
+ if (clutter_check_windowing_backend (CLUTTER_WINDOWING_MIR) &&
+ (input_backend == NULL || input_backend == I_(CLUTTER_INPUT_MIR)))
+ {
+ _clutter_events_mir_init (backend);
+ }
+ else
+#endif
if (input_backend != NULL)
{
if (input_backend != I_(CLUTTER_INPUT_NULL))