antognolli pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=1cef77bfd784772539a395363b3aecbd3c2655d5

commit 1cef77bfd784772539a395363b3aecbd3c2655d5
Author: Rafael Antognolli <rafael.antogno...@intel.com>
Date:   Sat Aug 31 15:20:22 2013 -0300

    ecore/wayland: Add and initialize subcompositor inside Ecore_Wayland.
---
 src/lib/ecore_wayland/Ecore_Wayland.h | 2 ++
 src/lib/ecore_wayland/ecore_wl.c      | 7 +++++++
 2 files changed, 9 insertions(+)

diff --git a/src/lib/ecore_wayland/Ecore_Wayland.h 
b/src/lib/ecore_wayland/Ecore_Wayland.h
index 05ceb00..c9b3e1f 100644
--- a/src/lib/ecore_wayland/Ecore_Wayland.h
+++ b/src/lib/ecore_wayland/Ecore_Wayland.h
@@ -12,6 +12,7 @@
 # include <wayland-client.h>
 # include <wayland-cursor.h>
 # include <xkbcommon/xkbcommon.h>
+# include <subsurface-client-protocol.h>
 
 # ifdef EAPI
 #  undef EAPI
@@ -101,6 +102,7 @@ struct _Ecore_Wl_Display
         struct wl_display *display;
         struct wl_registry *registry;
         struct wl_compositor *compositor;
+        struct wl_subcompositor *subcompositor;
         struct wl_shell *shell;
         struct wl_shell *desktop_shell;
         struct wl_shm *shm;
diff --git a/src/lib/ecore_wayland/ecore_wl.c b/src/lib/ecore_wayland/ecore_wl.c
index acce728..acc5988 100644
--- a/src/lib/ecore_wayland/ecore_wl.c
+++ b/src/lib/ecore_wayland/ecore_wl.c
@@ -397,6 +397,8 @@ _ecore_wl_shutdown(Eina_Bool close)
           
wl_data_device_manager_destroy(_ecore_wl_disp->wl.data_device_manager);
         if (_ecore_wl_disp->wl.compositor)
           wl_compositor_destroy(_ecore_wl_disp->wl.compositor);
+        if (_ecore_wl_disp->wl.subcompositor)
+          wl_compositor_destroy(_ecore_wl_disp->wl.subcompositor);
         if (_ecore_wl_disp->wl.display)
           {
              wl_registry_destroy(_ecore_wl_disp->wl.registry);
@@ -515,6 +517,11 @@ _ecore_wl_cb_handle_global(void *data, struct wl_registry 
*registry, unsigned in
         ewd->wl.compositor =
           wl_registry_bind(registry, id, &wl_compositor_interface, 3);
      }
+   else if (!strcmp(interface, "wl_subcompositor"))
+     {
+        ewd->wl.subcompositor =
+           wl_registry_bind(registry, id, &wl_subcompositor_interface, 1);
+     }
    else if (!strcmp(interface, "wl_output"))
      _ecore_wl_output_add(ewd, id);
    else if (!strcmp(interface, "wl_seat"))

-- 


Reply via email to