derekf pushed a commit to branch master.

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

commit b87606775f596312408a19f3e3fba29a00663566
Author: Derek Foreman <[email protected]>
Date:   Thu Jan 25 14:57:03 2018 -0600

    ecore_wl2: Move surface manager interface into public API
    
    So people can write plug-ins for this stuff.
---
 src/lib/ecore_wl2/Ecore_Wl2.h         | 11 +++++++++++
 src/lib/ecore_wl2/ecore_wl2_private.h | 11 +----------
 2 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/src/lib/ecore_wl2/Ecore_Wl2.h b/src/lib/ecore_wl2/Ecore_Wl2.h
index 97f53d5ab8..97ea966af3 100644
--- a/src/lib/ecore_wl2/Ecore_Wl2.h
+++ b/src/lib/ecore_wl2/Ecore_Wl2.h
@@ -417,6 +417,17 @@ EAPI extern int ECORE_WL2_EVENT_WINDOW_ACTIVATE; /** 
@since 1.20 */
 EAPI extern int ECORE_WL2_EVENT_WINDOW_DEACTIVATE; /** @since 1.20 */
 EAPI extern int ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE; /** @since 1.21 */
 
+typedef struct _Ecore_Wl2_Surface_Interface
+{
+   Eina_Bool (*check)(Ecore_Wl2_Window *win);
+   void (*destroy)(Ecore_Wl2_Surface *surface);
+   void (*reconfigure)(Ecore_Wl2_Surface *surface, int w, int h, uint32_t 
flags, Eina_Bool force);
+   void *(*data_get)(Ecore_Wl2_Surface *surface, int *w, int *h);
+   int  (*assign)(Ecore_Wl2_Surface *surface);
+   void (*post)(Ecore_Wl2_Surface *surface, Eina_Rectangle *rects, unsigned 
int count);
+   void (*flush)(Ecore_Wl2_Surface *surface);
+} Ecore_Wl2_Surface_Interface;
+
 /**
  * @file
  * @brief Ecore functions for dealing with the Wayland display protocol
diff --git a/src/lib/ecore_wl2/ecore_wl2_private.h 
b/src/lib/ecore_wl2/ecore_wl2_private.h
index 4640d6f41f..5b7d1b6b4a 100644
--- a/src/lib/ecore_wl2/ecore_wl2_private.h
+++ b/src/lib/ecore_wl2/ecore_wl2_private.h
@@ -562,16 +562,7 @@ typedef struct _Ecore_Wl2_Surface
 
    int w, h;
    Eina_Bool alpha : 1;
-   struct
-     {
-        Eina_Bool (*check)(Ecore_Wl2_Window *win);
-        void (*destroy)(Ecore_Wl2_Surface *surface);
-        void (*reconfigure)(Ecore_Wl2_Surface *surface, int w, int h, uint32_t 
flags, Eina_Bool force);
-        void *(*data_get)(Ecore_Wl2_Surface *surface, int *w, int *h);
-        int  (*assign)(Ecore_Wl2_Surface *surface);
-        void (*post)(Ecore_Wl2_Surface *surface, Eina_Rectangle *rects, 
unsigned int count);
-        void (*flush)(Ecore_Wl2_Surface *surface);
-     } funcs;
+   Ecore_Wl2_Surface_Interface funcs;
 } Ecore_Wl2_Surface;
 
 Ecore_Wl2_Window *_ecore_wl2_display_window_surface_find(Ecore_Wl2_Display 
*display, struct wl_surface *wl_surface);

-- 


Reply via email to