summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLionel Landwerlin <llandwerlin@gmail.com>2014-08-16 20:35:54 +0100
committerLionel Landwerlin <llandwerlin@gmail.com>2014-08-17 16:55:10 +0100
commitad18f2a996a685962016055734121d45be581b5c (patch)
treebf7abdbe6532b4b5c586e80b05bd36ecd2f8fcd5
parentccd2054fdaba013a9b99b5e0471f5c94203c606d (diff)
downloadclutter-ad18f2a996a685962016055734121d45be581b5c.tar.gz
backend: gdk: add support for foreign windows on wayland
https://bugzilla.gnome.org/show_bug.cgi?id=734935
-rw-r--r--clutter/gdk/clutter-stage-gdk.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/clutter/gdk/clutter-stage-gdk.c b/clutter/gdk/clutter-stage-gdk.c
index 06e240388..af12f49a2 100644
--- a/clutter/gdk/clutter-stage-gdk.c
+++ b/clutter/gdk/clutter-stage-gdk.c
@@ -32,6 +32,9 @@
#ifdef GDK_WINDOWING_X11
#include <gdk/gdkx.h>
#endif
+#ifdef GDK_WINDOWING_WAYLAND
+#include <gdk/gdkwayland.h>
+#endif
#ifdef GDK_WINDOWING_WIN32
#include <gdk/gdkwin32.h>
#endif
@@ -270,6 +273,14 @@ clutter_stage_gdk_realize (ClutterStageWindow *stage_window)
}
else
#endif
+#if defined(GDK_WINDOWING_WAYLAND) && defined(COGL_HAS_EGL_PLATFORM_WAYLAND_SUPPORT)
+ if (GDK_IS_WAYLAND_WINDOW (stage_gdk->window))
+ {
+ cogl_wayland_onscreen_set_foreign_surface (stage_cogl->onscreen,
+ gdk_wayland_window_get_wl_surface (stage_gdk->window));
+ }
+ else
+#endif
#if defined(GDK_WINDOWING_WIN32) && defined(COGL_HAS_WIN32_SUPPORT)
if (GDK_IS_WIN32_WINDOW (stage_gdk->window))
{