Revert "ecore_evas_extn : Add GL backend in ecore_evas_extn" 94/94794/2 accepted/tizen/common/20161102.121557 accepted/tizen/ivi/20161102.072518 accepted/tizen/mobile/20161102.072411 accepted/tizen/tv/20161102.072427 accepted/tizen/wearable/20161102.072448 submit/tizen/20161101.093908
authorsunghyun kim <scholb.kim@samsung.com>
Tue, 1 Nov 2016 08:10:51 +0000 (01:10 -0700)
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>
Tue, 1 Nov 2016 08:37:48 +0000 (01:37 -0700)
This reverts commit 2120e6d0742e53800994a7e4c606c5b2f17fd4f7.

Change-Id: I06408cb09f131bf8439daff09e27beb123d5837c

configure.ac
packaging/efl.spec
src/Makefile_Ecore_Evas.am
src/lib/ecore_evas/ecore_evas_private.h
src/modules/ecore_evas/engines/extn/ecore_evas_extn.c
src/modules/ecore_evas/engines/extn/ecore_evas_extn_engine.h

index 9a918f1..eb25e4d 100755 (executable)
@@ -3023,7 +3023,7 @@ EFL_INTERNAL_DEPEND_PKG([ECORE_WAYLAND], [eo])
 EFL_INTERNAL_DEPEND_PKG([ECORE_WAYLAND], [eina])
 
 EFL_DEPEND_PKG([ECORE_WAYLAND], [WAYLAND],
-   [wayland-client >= 1.3.0 wayland-cursor >= 1.3.0 xkbcommon >= 0.3.0 xdg-shell-client text-client tizen-extension-client tizen-remote-surface-client])
+   [wayland-client >= 1.3.0 wayland-cursor >= 1.3.0 xkbcommon >= 0.3.0 xdg-shell-client text-client tizen-extension-client])
 
 EFL_EVAL_PKGS([ECORE_WAYLAND])
 
@@ -4011,7 +4011,6 @@ EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [efl])
 EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [eo])
 EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [eina])
 EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [emile])
-EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [ecore-wayland])
 
 ## modules
 ECORE_EVAS_MODULE([extn], [${want_ecore_evas_extn}])
@@ -4027,7 +4026,6 @@ ECORE_EVAS_MODULE([opengl-cocoa], [${want_ecore_evas_gl_cocoa}])
 
 ECORE_EVAS_MODULE([software-sdl], [${want_sdl}])
 ECORE_EVAS_MODULE([opengl-sdl], [${want_gl_sdl}])
-ECORE_EVAS_MODULE([tizen-remote-surface-client],[yes])
 
 build_ecore_evas_sdl="no"
 if test "x${have_ecore_evas_software_sdl}" = "xyes" || \
index 0760f42..90bb542 100755 (executable)
@@ -29,8 +29,6 @@ BuildRequires:  pkgconfig(xdg-shell-client)
 BuildRequires:  pkgconfig(wayland-tbm-client)
 BuildRequires:  pkgconfig(wayland-tbm-server)
 BuildRequires:  pkgconfig(tizen-extension-client)
-BuildRequires:  pkgconfig(tizen-remote-surface-client)
-BuildRequires:  pkgconfig(ecore-wayland)
 Requires:       libwayland-extension-client
 %endif
 
index 8a84592..f43b667 100755 (executable)
@@ -73,7 +73,6 @@ modules_ecore_evas_engines_extn_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/e
 modules_ecore_evas_engines_extn_module_la_LIBADD = \
 @USE_ECORE_EVAS_LIBS@ \
 @USE_ECORE_IPC_LIBS@ \
-@USE_ECORE_WAYLAND_LIBS@ \
 @SHM_LIBS@
 modules_ecore_evas_engines_extn_module_la_DEPENDENCIES = \
 @USE_ECORE_EVAS_INTERNAL_LIBS@ \
index a259f9b..a01a18e 100644 (file)
@@ -183,9 +183,6 @@ struct _Ecore_Evas_Engine
       Evas_Object *image;
    } ews;
 #endif
-   struct {
-      void *data;
-   } extn;
 };
 
 struct _Ecore_Evas
index 1e601d7..e280bbc 100644 (file)
@@ -31,28 +31,6 @@ static const int   interface_extn_version = 1;
 static Ecore_Evas_Interface_Extn *_ecore_evas_extn_interface_new(void);
 static void *_ecore_evas_socket_switch(void *data, void *dest_buf);
 
-/* Tizen Only : Callback function  & listener for tizen remote surface */
-// For Provider
-static void _ecore_evas_extn_rsp_cb_resource_id(void *data, struct tizen_remote_surface_provider *provider, uint32_t res_id);
-static void _ecore_evas_extn_rsp_cb_visibility(void *data, struct tizen_remote_surface_provider *provider, uint32_t visibility);
-
-static const struct tizen_remote_surface_provider_listener _ecore_evas_extn_gl_socket_listener =
-{
-    _ecore_evas_extn_rsp_cb_resource_id,
-    _ecore_evas_extn_rsp_cb_visibility,
-};
-
-//For Cousumer
-static void _ecore_evas_extn_rs_cb_buffer_update(void *data, struct tizen_remote_surface *trs, struct wl_buffer *buffer, uint32_t time);
-static void _ecore_evas_extn_rs_cb_missing(void *data, struct tizen_remote_surface *trs);
-
-static const struct tizen_remote_surface_listener _ecore_evas_extn_gl_plug_listener =
-{
-   _ecore_evas_extn_rs_cb_buffer_update,
-   _ecore_evas_extn_rs_cb_missing,
-};
-
-/* Tizen Only : --- End */
 typedef struct _Extn Extn;
 
 struct _Extn
@@ -81,154 +59,10 @@ struct _Extn
    struct {
       Eina_Bool   done : 1; /* need to send change done event to the client(plug) */
    } profile;
-   // for tizen remote surface
-   struct wl_tbm *wl_tbm;
-   uint32_t resource_id;
 };
 
 static Eina_List *extn_ee_list = NULL;
 
-/* Tizen Only : for tizen remote surface */
-/* for tizen remote manager */
-struct tizen_remote_surface_manager *tizen_rsm = NULL;
-
-/* Tizen Only : Callback function  & listener for tizen remote surface */
-static void _ecore_evas_extn_rsp_cb_resource_id(void *data, struct tizen_remote_surface_provider *provider, uint32_t res_id)
-{
-   /* to get resource id of this remote surface */
-   Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata;
-   Extn *extn;
-   if(!ee)
-     {
-        ERR("Ecore evas is NULL");
-        return;
-     }
-   bdata = ee->engine.extn.data;
-   if(!bdata)
-     {
-        ERR("Buffer Data is NULL");
-        return;
-     }
-   extn = bdata->data;
-   if(!extn)
-     {
-        ERR("Extn is NULL");
-        return;
-     }
-   extn->resource_id = res_id;
-   INF("[EXTN_GL] remote surcace's resource_id: %u ",extn->resource_id);
-}
-static void _ecore_evas_extn_rsp_cb_visibility(void *data, struct tizen_remote_surface_provider *provider, uint32_t visibility)
-{
-   /* To do : add visibility change  */
-}
-
-static void
-_ecore_evas_extn_rs_cb_buffer_update(void *data, struct tizen_remote_surface *trs, struct wl_buffer *buffer, uint32_t time)
-{
-  Evas_Object* img = data;
-
-  //see next page
-   tbm_surface_h tbm_surface;
-   int width, height;
-
-   //added image object for native surface
-   evas_object_show(img);
-   tizen_remote_surface_transfer_visibility(trs,
-                              TIZEN_REMOTE_SURFACE_VISIBILITY_TYPE_VISIBLE);
-
-   //get tbm surface from buffer
-   tbm_surface = wl_buffer_get_user_data(buffer);
-   width = tbm_surface_get_width(tbm_surface);
-   height = tbm_surface_get_height(tbm_surface);
-   INF("[EXTN_GL] BUFFER UPDATE %p %p (%dx%d)",buffer,tbm_surface,width,height);
-
-   Evas_Native_Surface ns;
-   memset(&ns, 0, sizeof(Evas_Native_Surface));
-   ns.version = EVAS_NATIVE_SURFACE_VERSION;
-   ns.type = EVAS_NATIVE_SURFACE_TBM;
-   ns.data.tbm.buffer = tbm_surface;
-
-   evas_object_resize(img, width, height);
-   evas_object_image_size_set(img, width, height);
-
-   //set native surface
-   evas_object_image_native_surface_set(img, &ns);
-   //set dirty for image updating
-   evas_object_image_pixels_dirty_set(img, EINA_TRUE);
-}
-
-static void
-_ecore_evas_extn_rs_cb_missing(void *data, struct tizen_remote_surface *trs)
-{
-    ERR("Plug is missing...! ");
-}
-
-Eina_Bool
-_tizen_remote_surface_init(void)
-{
-   Eina_Inlist *globals;
-   Ecore_Wl_Global *global;
-   struct wl_registry *registry;
-   if (!tizen_rsm)
-     {
-        registry = ecore_wl_registry_get();
-        globals = ecore_wl_globals_get();
-
-        if (!registry || !globals)
-          {
-             ERR( "Could not get registry(%p) or global list(%p)\n",
-                     registry, globals);
-             return EINA_FALSE;
-          }
-
-        EINA_INLIST_FOREACH(globals, global)
-          {
-             if (!strcmp(global->interface, "tizen_remote_surface_manager"))
-               {
-                  tizen_rsm =
-                     wl_registry_bind(registry, global->id,
-                                      &tizen_remote_surface_manager_interface, 1);
-                   INF("[EXTN_GL] Create tizen_rsm : %p",tizen_rsm);
-               }
-          }
-     }
-   if (!tizen_rsm)
-     {
-        ERR("Could not bind tizen_remote_surface_manager");
-        return EINA_FALSE;
-     }
-
-   return EINA_TRUE;
-}
-
-
-
-static int
-_ecore_evas_extn_type_get()
-{
-   static int type = EXTN_TYPE_SHM;
-   static int checked = 0;
-   char *engine = NULL;
-
-   if (checked) return type;
-
-   engine = getenv("ECORE_EVAS_EXTN_SOCKET_ENGINE");
-
-   if (engine)
-     {
-        if ((!strcasecmp(engine, "buffer")))
-           type = EXTN_TYPE_SHM;
-        else if ((!strcasecmp(engine, "wayland_egl")))
-           type = EXTN_TYPE_WAYLAND_EGL;
-        else
-           type = EXTN_TYPE_SHM;
-     }
-   checked = 1;
-   return type;
-}
-
 static Eina_Bool
 _ecore_evas_extn_module_init(void)
 {
@@ -262,12 +96,10 @@ _ecore_evas_extn_plug_render_pre(void *data, Evas *e EINA_UNUSED, void *event_in
    Extn *extn;
 
    if (!ee) return;
-   bdata = ee->engine.extn.data;
+   bdata = ee->engine.data;
    if (!bdata) return;
    extn = bdata->data;
    if (!extn) return;
-   if(_ecore_evas_extn_type_get() ==  EXTN_TYPE_WAYLAND_EGL)
-     return;
    bdata->pixels = _extnbuf_lock(extn->b[extn->cur_b].buf, NULL, NULL, NULL);
 }
 
@@ -279,12 +111,10 @@ _ecore_evas_extn_plug_render_post(void *data, Evas *e EINA_UNUSED, void *event_i
    Extn *extn;
 
    if (!ee) return;
-   bdata = ee->engine.extn.data;
+   bdata = ee->engine.data;
    if (!bdata) return;
    extn = bdata->data;
    if (!extn) return;
-   if(_ecore_evas_extn_type_get() ==  EXTN_TYPE_WAYLAND_EGL)
-     return;
    _extnbuf_unlock(extn->b[extn->cur_b].buf);
    if (extn->b[extn->cur_b].obuf)
      {
@@ -305,7 +135,7 @@ static void
 _ecore_evas_extn_coord_translate(Ecore_Evas *ee, Evas_Coord *x, Evas_Coord *y)
 {
    Evas_Coord xx, yy, ww, hh, fx, fy, fw, fh;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
 
    evas_object_geometry_get(bdata->image, &xx, &yy, &ww, &hh);
    evas_object_image_fill_get(bdata->image, &fx, &fy, &fw, &fh);
@@ -345,7 +175,7 @@ _ecore_evas_extn_free(Ecore_Evas *ee)
 {
    Extn *extn;
    Ecore_Ipc_Client *client;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    if (!bdata) return;
 
    extn = bdata->data;
@@ -360,26 +190,17 @@ _ecore_evas_extn_free(Ecore_Evas *ee)
              evas_object_image_pixels_dirty_set(bdata->image, EINA_TRUE);
           }
         bdata->pixels = NULL;
-        if(_ecore_evas_extn_type_get == EXTN_TYPE_WAYLAND_EGL)
-          {
-             extn->wl_tbm = NULL;
-             extn->resource_id = NULL;
-          }
-        else
+        for (i = 0; i < NBUF; i++)
           {
-             for (i = 0; i < NBUF; i++)
-               {
-                  if (extn->b[i].buf) _extnbuf_free(extn->b[i].buf);
-                  if (extn->b[i].obuf) _extnbuf_free(extn->b[i].obuf);
-                  if (extn->b[i].base) eina_stringshare_del(extn->b[i].base);
-                  if (extn->b[i].lock) eina_stringshare_del(extn->b[i].lock);
-                  extn->b[i].buf = NULL;
-                  extn->b[i].obuf = NULL;
-                  extn->b[i].base = NULL;
-                  extn->b[i].lock = NULL;
-               }
+             if (extn->b[i].buf) _extnbuf_free(extn->b[i].buf);
+             if (extn->b[i].obuf) _extnbuf_free(extn->b[i].obuf);
+             if (extn->b[i].base) eina_stringshare_del(extn->b[i].base);
+             if (extn->b[i].lock) eina_stringshare_del(extn->b[i].lock);
+             extn->b[i].buf = NULL;
+             extn->b[i].obuf = NULL;
+             extn->b[i].base = NULL;
+             extn->b[i].lock = NULL;
           }
-
         if (extn->svc.name) eina_stringshare_del(extn->svc.name);
         if (extn->ipc.clients)
           {
@@ -422,14 +243,14 @@ _ecore_evas_extn_free(Ecore_Evas *ee)
         bdata->image = NULL;
      }
    free(bdata);
-   ee->engine.extn.data = NULL;
+   ee->engine.data = NULL;
    extn_ee_list = eina_list_remove(extn_ee_list, ee);
 }
 
 static void
 _ecore_evas_resize(Ecore_Evas *ee, int w, int h)
 {
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
 
    if (w < 1) w = 1;
    if (h < 1) h = 1;
@@ -518,7 +339,7 @@ static void
 _ecore_evas_extn_cb_mouse_in(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Mouse_In *ev = event_info;
    Extn *extn;
 
@@ -540,7 +361,7 @@ static void
 _ecore_evas_extn_cb_mouse_out(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Mouse_Out *ev = event_info;
    Extn *extn;
 
@@ -563,7 +384,7 @@ _ecore_evas_extn_cb_mouse_down(void *data, Evas *e EINA_UNUSED, Evas_Object *obj
 {
    Ecore_Evas *ee = data;
    Evas_Event_Mouse_Down *ev = event_info;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
 
    extn = bdata->data;
@@ -603,7 +424,7 @@ static void
 _ecore_evas_extn_cb_mouse_up(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Mouse_Up *ev = event_info;
    Extn *extn;
 
@@ -627,7 +448,7 @@ static void
 _ecore_evas_extn_cb_mouse_move(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Mouse_Move *ev = event_info;
    Extn *extn;
 
@@ -655,7 +476,7 @@ static void
 _ecore_evas_extn_cb_mouse_wheel(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Mouse_Wheel *ev = event_info;
    Extn *extn;
 
@@ -679,7 +500,7 @@ static void
 _ecore_evas_extn_cb_multi_down(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Multi_Down *ev = event_info;
    Extn *extn;
 
@@ -717,7 +538,7 @@ static void
 _ecore_evas_extn_cb_multi_up(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Multi_Up *ev = event_info;
    Extn *extn;
 
@@ -754,7 +575,7 @@ static void
 _ecore_evas_extn_cb_multi_move(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Multi_Move *ev = event_info;
    Extn *extn;
 
@@ -790,7 +611,7 @@ static void
 _ecore_evas_extn_cb_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Key_Down *ev = event_info;
    Extn *extn;
 
@@ -847,7 +668,7 @@ static void
 _ecore_evas_extn_cb_key_up(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Key_Up *ev = event_info;
    Extn *extn;
 
@@ -904,7 +725,7 @@ static void
 _ecore_evas_extn_cb_hold(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Evas_Event_Hold *ev = event_info;
    Extn *extn;
 
@@ -926,7 +747,7 @@ static void
 _ecore_evas_extn_cb_focus_in(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
 
    ee->prop.focused = EINA_TRUE;
@@ -940,7 +761,7 @@ static void
 _ecore_evas_extn_cb_focus_out(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
 
    ee->prop.focused = EINA_FALSE;
@@ -954,7 +775,7 @@ static void
 _ecore_evas_extn_cb_show(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
 
    ee->visible = 1;
@@ -968,7 +789,7 @@ static void
 _ecore_evas_extn_cb_hide(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
 
    ee->visible = 0;
@@ -982,7 +803,7 @@ static void
 _ecore_evas_extn_plug_profile_set(Ecore_Evas *ee, const char *profile)
 {
    Extn *extn;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
 
    _ecore_evas_window_profile_free(ee);
    ee->prop.profile.name = NULL;
@@ -1003,7 +824,7 @@ _ecore_evas_extn_plug_profile_set(Ecore_Evas *ee, const char *profile)
 static void
 _ecore_evas_extn_plug_msg_parent_send(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size)
 {
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
 
    extn = bdata->data;
@@ -1096,7 +917,7 @@ _ipc_server_add(void *data, int type EINA_UNUSED, void *event)
 {
    Ecore_Ipc_Event_Server_Add *e = event;
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
 
    if (ee != ecore_ipc_server_data_get(e->server))
@@ -1118,7 +939,7 @@ _ipc_server_del(void *data, int type EINA_UNUSED, void *event)
 {
    Ecore_Ipc_Event_Server_Del *e = event;
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
    int i;
 
@@ -1150,7 +971,7 @@ _ipc_server_data(void *data, int type EINA_UNUSED, void *event)
 {
    Ecore_Ipc_Event_Server_Data *e = event;
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
 
    if (ee != ecore_ipc_server_data_get(e->server))
@@ -1293,26 +1114,6 @@ _ipc_server_data(void *data, int type EINA_UNUSED, void *event)
                 }
            }
          break;
-      case OP_GL_REF:
-           {
-              // save resouce id
-              uint32_t rid = e->ref;
-              INF("[EXTN_GL] receive socket to client >>  (resource_id:%u)",rid);
-
-              struct tizen_remote_surface *tizen_rs = NULL;
-              if(!tizen_rs){
-                //create tizen_remote_surface
-                tizen_rs = tizen_remote_surface_manager_create_surface(tizen_rsm, rid, extn->wl_tbm);
-                if(!tizen_rs)
-                   {
-                      ERR("tizen_rs is NULL");
-                      break;
-                   }
-                tizen_remote_surface_add_listener(tizen_rs, &_ecore_evas_extn_gl_plug_listener, bdata->image);
-                tizen_remote_surface_redirect(tizen_rs);
-              }
-           }
-         break;
       case OP_RESIZE:
          if ((e->data) && (e->size >= (int)sizeof(Ipc_Data_Resize)))
            {
@@ -1352,6 +1153,7 @@ ecore_evas_extn_plug_new_internal(Ecore_Evas *ee_target)
    int w = 1, h = 1;
 
    if (!ee_target) return NULL;
+
    ee = calloc(1, sizeof(Ecore_Evas));
    if (!ee) return NULL;
    bdata = calloc(1, sizeof(Ecore_Evas_Engine_Buffer_Data));
@@ -1360,7 +1162,7 @@ ecore_evas_extn_plug_new_internal(Ecore_Evas *ee_target)
        free(ee);
        return NULL;
      }
-   ee->engine.extn.data = bdata;
+   ee->engine.data = bdata;
    o = evas_object_image_filled_add(ee_target->evas);
    /* this make problem in gl engine, so I'll block this until solve problem
    evas_object_image_content_hint_set(o, EVAS_IMAGE_CONTENT_HINT_DYNAMIC);*/
@@ -1462,15 +1264,6 @@ ecore_evas_extn_plug_new_internal(Ecore_Evas *ee_target)
    evas_event_callback_add(ee_target->evas, EVAS_CALLBACK_RENDER_POST,
                            _ecore_evas_extn_plug_render_post, ee);
 
-   if (_ecore_evas_extn_type_get() == EXTN_TYPE_WAYLAND_EGL)
-     {
-        if (!_tizen_remote_surface_init())
-          {
-             ERR("_tizen_remote_surface_init() is failed");
-              return EINA_FALSE;
-          }
-     }
-
    return o;
 }
 
@@ -1482,7 +1275,7 @@ _ecore_evas_extn_plug_connect(Ecore_Evas *ee, const char *svcname, int svcnum, E
 
    if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS)) return EINA_FALSE;
 
-   bdata = ee->engine.extn.data;
+   bdata = ee->engine.data;
    if (!svcname)
      {
         bdata->data = NULL;
@@ -1492,18 +1285,7 @@ _ecore_evas_extn_plug_connect(Ecore_Evas *ee, const char *svcname, int svcnum, E
    extn = calloc(1, sizeof(Extn));
    if (!extn) return EINA_FALSE;
 
-   if (_ecore_evas_extn_type_get() == EXTN_TYPE_WAYLAND_EGL)
-     {
-        struct wayland_tbm_client *tbm_client;
-        tbm_client = (struct wayland_tbm_client *)wayland_tbm_client_init(ecore_wl_display_get());
-        if (!(extn->wl_tbm))
-          extn->wl_tbm = (struct wl_tbm *)wayland_tbm_client_get_wl_tbm(tbm_client);
-        INF("[EXTN_GL] Get wl_tbm:%p",extn->wl_tbm);
-        if (!extn->wl_tbm)
-          {
-             ERR("wl_tbm is NULL");
-          }
-     }
+
 
    Ecore_Ipc_Type ipctype = ECORE_IPC_LOCAL_USER;
 
@@ -1544,7 +1326,7 @@ _ecore_evas_socket_resize(Ecore_Evas *ee, int w, int h)
 {
    Extn *extn;
    Evas_Engine_Info_Buffer *einfo;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    int stride = 0;
 
    if (w < 1) w = 1;
@@ -1558,11 +1340,7 @@ _ecore_evas_socket_resize(Ecore_Evas *ee, int w, int h)
    evas_output_viewport_set(ee->evas, 0, 0, ee->w, ee->h);
    evas_damage_rectangle_add(ee->evas, 0, 0, ee->w, ee->h);
    extn = bdata->data;
-   if(_ecore_evas_extn_type_get() == EXTN_TYPE_WAYLAND_EGL)
-     {
-        INF("[EXTN_GL]Socket Resize is Called ");
-     }
-   else if (extn)
+   if (extn)
      {
         int i, last_try = 0;
 
@@ -1578,7 +1356,6 @@ _ecore_evas_socket_resize(Ecore_Evas *ee, int w, int h)
              extn->b[i].lock = NULL;
           }
         bdata->pixels = NULL;
-
         for (i = 0; i < NBUF; i++)
           {
              do
@@ -1591,11 +1368,12 @@ _ecore_evas_socket_resize(Ecore_Evas *ee, int w, int h)
                   if (last_try > 1024) break;
                }
              while (!extn->b[i].buf);
+
           }
 
         if (extn->b[extn->cur_b].buf)
           bdata->pixels = _extnbuf_data_get(extn->b[extn->cur_b].buf,
-                                                 NULL, NULL, &stride);
+                                            NULL, NULL, &stride);
         einfo = (Evas_Engine_Info_Buffer *)evas_engine_info_get(ee->evas);
         if (einfo)
           {
@@ -1661,7 +1439,7 @@ static void
 _ecore_evas_extn_socket_window_profile_change_done_send(Ecore_Evas *ee)
 {
    Extn *extn;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Ecore_Ipc_Client *client;
    Eina_List *l = NULL;
    char *s;
@@ -1683,7 +1461,7 @@ static void *
 _ecore_evas_socket_switch(void *data, void *dest_buf EINA_UNUSED)
 {
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn = bdata->data;
 
    extn->cur_b++;
@@ -1702,7 +1480,7 @@ _ecore_evas_extn_socket_render(Ecore_Evas *ee)
    Eina_Rectangle *r;
    Extn *extn;
    Ecore_Ipc_Client *client;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    int cur_b;
 
    extn = bdata->data;
@@ -1717,46 +1495,39 @@ _ecore_evas_extn_socket_render(Ecore_Evas *ee)
    if (ee->func.fn_pre_render) ee->func.fn_pre_render(ee);
 
    cur_b = extn->cur_b;
-   if( _ecore_evas_extn_type_get() == EXTN_TYPE_WAYLAND_EGL )
+   if (bdata->pixels)
      {
+        bdata->pixels = _extnbuf_lock(extn->b[cur_b].buf, NULL, NULL, NULL);
         updates = evas_render_updates(ee->evas);
-        evas_render_updates_free(updates);
-        _ecore_evas_idle_timeout_update(ee);
+        _extnbuf_unlock(extn->b[cur_b].buf);
      }
-   else
+   if (updates)
      {
-        if (bdata->pixels)
+        EINA_LIST_FOREACH(updates, l, r)
           {
-             bdata->pixels = _extnbuf_lock(extn->b[cur_b].buf, NULL, NULL, NULL);
-             updates = evas_render_updates(ee->evas);
-             _extnbuf_unlock(extn->b[cur_b].buf);
+             Ipc_Data_Update ipc;
+
+
+             ipc.x = r->x;
+             ipc.y = r->y;
+             ipc.w = r->w;
+             ipc.h = r->h;
+             EINA_LIST_FOREACH(extn->ipc.clients, ll, client)
+               ecore_ipc_client_send(client, MAJOR, OP_UPDATE, 0, 0, 0, &ipc,
+                                     sizeof(ipc));
           }
-        if (updates)
+        evas_render_updates_free(updates);
+        _ecore_evas_idle_timeout_update(ee);
+        EINA_LIST_FOREACH(extn->ipc.clients, ll, client)
+           ecore_ipc_client_send(client, MAJOR, OP_UPDATE_DONE, 0, 0,
+                                 cur_b, NULL, 0);
+        if (extn->profile.done)
           {
-             EINA_LIST_FOREACH(updates, l, r)
-               {
-                  Ipc_Data_Update ipc;
-
-                  ipc.x = r->x;
-                  ipc.y = r->y;
-                  ipc.w = r->w;
-                  ipc.h = r->h;
-                  EINA_LIST_FOREACH(extn->ipc.clients, ll, client)
-                  ecore_ipc_client_send(client, MAJOR, OP_UPDATE, 0, 0, 0, &ipc,
-                                          sizeof(ipc));
-               }
-             evas_render_updates_free(updates);
-             _ecore_evas_idle_timeout_update(ee);
-             EINA_LIST_FOREACH(extn->ipc.clients, ll, client)
-                ecore_ipc_client_send(client, MAJOR, OP_UPDATE_DONE, 0, 0,
-                                      cur_b, NULL, 0);
-             if (extn->profile.done)
-               {
-                  _ecore_evas_extn_socket_window_profile_change_done_send(ee);
-                  extn->profile.done = EINA_FALSE;
-               }
+             _ecore_evas_extn_socket_window_profile_change_done_send(ee);
+             extn->profile.done = EINA_FALSE;
           }
      }
+
    if (ee->func.fn_post_render) ee->func.fn_post_render(ee);
    return updates ? 1 : rend;
 }
@@ -1766,7 +1537,7 @@ _ipc_client_add(void *data, int type EINA_UNUSED, void *event)
 {
    Ecore_Ipc_Event_Client_Add *e = event;
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
    Ipc_Data_Resize ipc;
    Ipc_Data_Update ipc2;
@@ -1781,41 +1552,32 @@ _ipc_client_add(void *data, int type EINA_UNUSED, void *event)
 
    extn->ipc.clients = eina_list_append(extn->ipc.clients, e->client);
 
-   if (_ecore_evas_extn_type_get() == EXTN_TYPE_WAYLAND_EGL)
-     {
-        INF("[EXTN_GL] send resouce id to client ( %dx%d,  resource_id:%u)",ee->w,ee->h,extn->resource_id);
-        ecore_ipc_client_send(e->client, MAJOR, OP_GL_REF,
-                                extn->resource_id, NULL, 0,
-                                NULL,0);
-     }
-   else
+   for (i = 0; i < NBUF; i++)
      {
-        for (i = 0; i < NBUF; i++)
-          {
-             const char *lock;
-             ecore_ipc_client_send(e->client, MAJOR, OP_SHM_REF0,
-                                   extn->svc.num, extn->b[i].num, i,
-                                   extn->svc.name,
-                                   strlen(extn->svc.name) + 1);
-             lock = _extnbuf_lock_file_get(extn->b[i].buf);
-             ecore_ipc_client_send(e->client, MAJOR, OP_SHM_REF1,
-                                   ee->w, ee->h, i,
-                                   lock, strlen(lock) + 1);
-             ecore_ipc_client_send(e->client, MAJOR, OP_SHM_REF2,
-                                   ee->alpha, extn->svc.sys, i,
-                                   NULL, 0);
-          }
-        ipc.w = ee->w; ipc.h = ee->h;
-        ecore_ipc_client_send(e->client, MAJOR, OP_RESIZE,
-                              0, 0, 0, &ipc, sizeof(ipc));
-        ipc2.x = 0; ipc2.y = 0; ipc2.w = ee->w; ipc2.h = ee->h;
-        ecore_ipc_client_send(e->client, MAJOR, OP_UPDATE, 0, 0, 0, &ipc2,
-                              sizeof(ipc2));
-        prev_b = extn->cur_b - 1;
-        if (prev_b < 0) prev_b = NBUF - 1;
-        ecore_ipc_client_send(e->client, MAJOR, OP_UPDATE_DONE, 0, 0,
-                              prev_b, NULL, 0);
+        const char *lock;
+
+        ecore_ipc_client_send(e->client, MAJOR, OP_SHM_REF0,
+                              extn->svc.num, extn->b[i].num, i,
+                              extn->svc.name,
+                              strlen(extn->svc.name) + 1);
+        lock = _extnbuf_lock_file_get(extn->b[i].buf);
+        ecore_ipc_client_send(e->client, MAJOR, OP_SHM_REF1,
+                              ee->w, ee->h, i,
+                              lock, strlen(lock) + 1);
+        ecore_ipc_client_send(e->client, MAJOR, OP_SHM_REF2,
+                              ee->alpha, extn->svc.sys, i,
+                              NULL, 0);
      }
+   ipc.w = ee->w; ipc.h = ee->h;
+   ecore_ipc_client_send(e->client, MAJOR, OP_RESIZE,
+                         0, 0, 0, &ipc, sizeof(ipc));
+   ipc2.x = 0; ipc2.y = 0; ipc2.w = ee->w; ipc2.h = ee->h;
+   ecore_ipc_client_send(e->client, MAJOR, OP_UPDATE, 0, 0, 0, &ipc2,
+                         sizeof(ipc2));
+   prev_b = extn->cur_b - 1;
+   if (prev_b < 0) prev_b = NBUF - 1;
+   ecore_ipc_client_send(e->client, MAJOR, OP_UPDATE_DONE, 0, 0,
+                         prev_b, NULL, 0);
    _ecore_evas_extn_event(ee, ECORE_EVAS_EXTN_CLIENT_ADD);
    return ECORE_CALLBACK_PASS_ON;
 }
@@ -1825,7 +1587,7 @@ _ipc_client_del(void *data, int type EINA_UNUSED, void *event)
 {
    Ecore_Ipc_Event_Client_Del *e = event;
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
    extn = bdata->data;
    if (!extn) return ECORE_CALLBACK_PASS_ON;
@@ -1842,7 +1604,7 @@ _ipc_client_data(void *data, int type EINA_UNUSED, void *event)
 {
    Ecore_Ipc_Event_Client_Data *e = event;
    Ecore_Evas *ee = data;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
 
    if (ee != ecore_ipc_server_data_get(ecore_ipc_client_server_get(e->client)))
@@ -2121,7 +1883,7 @@ _ipc_client_data(void *data, int type EINA_UNUSED, void *event)
 static void
 _ecore_evas_extn_socket_alpha_set(Ecore_Evas *ee, int alpha)
 {
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
    Eina_List *l;
    Ecore_Ipc_Client *client;
@@ -2132,47 +1894,40 @@ _ecore_evas_extn_socket_alpha_set(Ecore_Evas *ee, int alpha)
    extn = bdata->data;
    if (extn)
      {
-        if (_ecore_evas_extn_type_get() == EXTN_TYPE_WAYLAND_EGL)
+        Evas_Engine_Info_Buffer *einfo;
+
+        einfo = (Evas_Engine_Info_Buffer *)evas_engine_info_get(ee->evas);
+        if (einfo)
           {
-             INF("[EXTN_GL] pass socket alpha set");
+             if (ee->alpha)
+               einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_ARGB32;
+             else
+               einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_RGB32;
+             if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo))
+               ERR("Cannot set ecore_evas_ext alpha");
+             evas_damage_rectangle_add(ee->evas, 0, 0, ee->w, ee->h);
           }
-        else
+        EINA_LIST_FOREACH(extn->ipc.clients, l, client)
           {
-             Evas_Engine_Info_Buffer *einfo;
+             int i;
 
-             einfo = (Evas_Engine_Info_Buffer *)evas_engine_info_get(ee->evas);
-             if (einfo)
-               {
-                  if (ee->alpha)
-                    einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_ARGB32;
-                  else
-                    einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_RGB32;
-                  if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo))
-                    ERR("Cannot set ecore_evas_ext alpha");
-                  evas_damage_rectangle_add(ee->evas, 0, 0, ee->w, ee->h);
-               }
-            EINA_LIST_FOREACH(extn->ipc.clients, l, client)
+             for (i = 0; i < NBUF; i++)
                {
-                  int i;
-
-                  for (i = 0; i < NBUF; i++)
-                    {
-                       const char *lock;
-
-                       ecore_ipc_client_send(client, MAJOR, OP_SHM_REF0,
-                                             extn->svc.num, extn->b[i].num, i,
-                                             extn->svc.name,
-                                             strlen(extn->svc.name) + 1);
-                       lock = _extnbuf_lock_file_get(extn->b[i].buf);
-                       ecore_ipc_client_send(client, MAJOR, OP_SHM_REF1,
-                                             ee->w, ee->h, i,
-                                             lock, strlen(lock) + 1);
-                       ecore_ipc_client_send(client, MAJOR, OP_SHM_REF2,
-                                             ee->alpha, extn->svc.sys, i,
-                                             NULL, 0);
-                    }
+                  const char *lock;
+
+                  ecore_ipc_client_send(client, MAJOR, OP_SHM_REF0,
+                                        extn->svc.num, extn->b[i].num, i,
+                                        extn->svc.name,
+                                        strlen(extn->svc.name) + 1);
+                  lock = _extnbuf_lock_file_get(extn->b[i].buf);
+                  ecore_ipc_client_send(client, MAJOR, OP_SHM_REF1,
+                                        ee->w, ee->h, i,
+                                        lock, strlen(lock) + 1);
+                  ecore_ipc_client_send(client, MAJOR, OP_SHM_REF2,
+                                        ee->alpha, extn->svc.sys, i,
+                                        NULL, 0);
                }
-           }
+          }
      }
 }
 
@@ -2216,7 +1971,7 @@ _ecore_evas_extn_socket_available_profiles_set(Ecore_Evas *ee, const char **plis
 static void
 _ecore_evas_extn_socket_msg_send(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size)
 {
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
    Extn *extn;
    Eina_List *l;
    Ecore_Ipc_Client *client;
@@ -2312,114 +2067,86 @@ static const Ecore_Evas_Engine_Func _ecore_extn_socket_engine_func =
 EAPI Ecore_Evas *
 ecore_evas_extn_socket_new_internal(int w, int h)
 {
+   Evas_Engine_Info_Buffer *einfo;
    Ecore_Evas_Interface_Extn *iface;
+   Ecore_Evas_Engine_Buffer_Data *bdata;
    Ecore_Evas *ee;
    int rmethod;
 
-   if (_ecore_evas_extn_type_get() == EXTN_TYPE_WAYLAND_EGL)
+   rmethod = evas_render_method_lookup("buffer");
+   if (!rmethod) return NULL;
+   ee = calloc(1, sizeof(Ecore_Evas));
+   if (!ee) return NULL;
+   bdata = calloc(1, sizeof(Ecore_Evas_Engine_Buffer_Data));
+   if (!bdata)
      {
-        Ecore_Evas_Engine_Buffer_Data *bdata;
-        bdata = calloc(1, sizeof(Ecore_Evas_Engine_Buffer_Data));
-        if (!bdata) return NULL;
-        ee = ecore_evas_wayland_egl_new(NULL, 0, 0, 0, w, h, 0);
-        if (!ee)
-          {
-             free(bdata);
-             return NULL;
-          }
-        ee->engine.func = (Ecore_Evas_Engine_Func *)&_ecore_extn_socket_engine_func;
-        ee->engine.extn.data = bdata;
-
-        iface = _ecore_evas_extn_interface_new();
-        ee->engine.ifaces = eina_list_append(ee->engine.ifaces, iface);
-        ee->visible = 0;
-        if (!_tizen_remote_surface_init())
-          {
-             ERR("_tizen_remote_surface_init() is failed");
-              return EINA_FALSE;
-          }
+       free(ee);
+       return NULL;
      }
-   else
-     {
-        Evas_Engine_Info_Buffer *einfo;
-        Ecore_Evas_Engine_Buffer_Data *bdata;
-
-        rmethod = evas_render_method_lookup("buffer");
-        if (!rmethod) return NULL;
-        ee = calloc(1, sizeof(Ecore_Evas));
-        if (!ee) return NULL;
-        bdata = calloc(1, sizeof(Ecore_Evas_Engine_Buffer_Data));
-        if (!bdata)
-          {
-             free(ee);
-             return NULL;
-          }
 
-        ECORE_MAGIC_SET(ee, ECORE_MAGIC_EVAS);
-
-        ee->engine.func = (Ecore_Evas_Engine_Func *)&_ecore_extn_socket_engine_func;
-        ee->engine.extn.data = bdata;
-
-        ee->driver = "extn_socket";
-
-        iface = _ecore_evas_extn_interface_new();
-        ee->engine.ifaces = eina_list_append(ee->engine.ifaces, iface);
-
-        ee->rotation = 0;
-        ee->visible = 0;
-        ee->w = w;
-        ee->h = h;
-        ee->req.w = ee->w;
-        ee->req.h = ee->h;
-        ee->profile_supported = 1; /* to accept the profile change request from the client(plug) */
-
-        ee->prop.max.w = 0;
-        ee->prop.max.h = 0;
-        ee->prop.layer = 0;
-        ee->prop.focused = EINA_FALSE;
-        ee->prop.borderless = EINA_TRUE;
-        ee->prop.override = EINA_TRUE;
-        ee->prop.maximized = EINA_FALSE;
-        ee->prop.fullscreen = EINA_FALSE;
-        ee->prop.withdrawn = EINA_FALSE;
-        ee->prop.sticky = EINA_FALSE;
-
-        /* init evas here */
-        ee->evas = evas_new();
-        evas_data_attach_set(ee->evas, ee);
-        evas_output_method_set(ee->evas, rmethod);
-        evas_output_size_set(ee->evas, w, h);
-        evas_output_viewport_set(ee->evas, 0, 0, w, h);
+   ECORE_MAGIC_SET(ee, ECORE_MAGIC_EVAS);
 
-        einfo = (Evas_Engine_Info_Buffer *)evas_engine_info_get(ee->evas);
-        if (einfo)
-          {
-             if (ee->alpha)
-               einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_ARGB32;
-             else
-               einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_RGB32;
-             einfo->info.dest_buffer = NULL;
-             einfo->info.dest_buffer_row_bytes = 0;
-             einfo->info.use_color_key = 0;
-             einfo->info.alpha_threshold = 0;
-             einfo->info.func.new_update_region = NULL;
-             einfo->info.func.free_update_region = NULL;
-             einfo->info.func.switch_buffer = _ecore_evas_socket_switch;
-             einfo->info.switch_data = ee;
-             if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo))
-               {
-                  ERR("evas_engine_info_set() for engine '%s' failed.", ee->driver);
-                  ecore_evas_free(ee);
-                  return NULL;
-               }
-          }
+   ee->engine.func = (Ecore_Evas_Engine_Func *)&_ecore_extn_socket_engine_func;
+   ee->engine.data = bdata;
+
+   ee->driver = "extn_socket";
+
+   iface = _ecore_evas_extn_interface_new();
+   ee->engine.ifaces = eina_list_append(ee->engine.ifaces, iface);
+
+   ee->rotation = 0;
+   ee->visible = 0;
+   ee->w = w;
+   ee->h = h;
+   ee->req.w = ee->w;
+   ee->req.h = ee->h;
+   ee->profile_supported = 1; /* to accept the profile change request from the client(plug) */
+
+   ee->prop.max.w = 0;
+   ee->prop.max.h = 0;
+   ee->prop.layer = 0;
+   ee->prop.focused = EINA_FALSE;
+   ee->prop.borderless = EINA_TRUE;
+   ee->prop.override = EINA_TRUE;
+   ee->prop.maximized = EINA_FALSE;
+   ee->prop.fullscreen = EINA_FALSE;
+   ee->prop.withdrawn = EINA_FALSE;
+   ee->prop.sticky = EINA_FALSE;
+
+   /* init evas here */
+   ee->evas = evas_new();
+   evas_data_attach_set(ee->evas, ee);
+   evas_output_method_set(ee->evas, rmethod);
+   evas_output_size_set(ee->evas, w, h);
+   evas_output_viewport_set(ee->evas, 0, 0, w, h);
+
+   einfo = (Evas_Engine_Info_Buffer *)evas_engine_info_get(ee->evas);
+   if (einfo)
+     {
+        if (ee->alpha)
+          einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_ARGB32;
         else
+          einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_RGB32;
+        einfo->info.dest_buffer = NULL;
+        einfo->info.dest_buffer_row_bytes = 0;
+        einfo->info.use_color_key = 0;
+        einfo->info.alpha_threshold = 0;
+        einfo->info.func.new_update_region = NULL;
+        einfo->info.func.free_update_region = NULL;
+        einfo->info.func.switch_buffer = _ecore_evas_socket_switch;
+        einfo->info.switch_data = ee;
+        if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo))
           {
              ERR("evas_engine_info_set() for engine '%s' failed.", ee->driver);
              ecore_evas_free(ee);
              return NULL;
           }
-          _ecore_evas_register(ee);
+     }
+   else
+     {
+        ERR("evas_engine_info_set() init engine '%s' failed.", ee->driver);
+        ecore_evas_free(ee);
+        return NULL;
      }
    evas_key_modifier_add(ee->evas, "Shift");
    evas_key_modifier_add(ee->evas, "Control");
@@ -2432,6 +2159,9 @@ ecore_evas_extn_socket_new_internal(int w, int h)
    evas_key_lock_add(ee->evas, "Scroll_Lock");
 
    extn_ee_list = eina_list_append(extn_ee_list, ee);
+
+   _ecore_evas_register(ee);
+
    return ee;
 }
 
@@ -2439,7 +2169,8 @@ Eina_Bool
 _ecore_evas_extn_socket_listen(Ecore_Evas *ee, const char *svcname, int svcnum, Eina_Bool svcsys)
 {
    Extn *extn;
-   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.extn.data;
+   Ecore_Evas_Engine_Buffer_Data *bdata = ee->engine.data;
+
    extn = calloc(1, sizeof(Extn));
    if (!extn)
      {
@@ -2456,106 +2187,55 @@ _ecore_evas_extn_socket_listen(Ecore_Evas *ee, const char *svcname, int svcnum,
         extn->svc.num = svcnum;
         extn->svc.sys = svcsys;
 
-        if (_ecore_evas_extn_type_get() == EXTN_TYPE_WAYLAND_EGL)
+        for (i = 0; i < NBUF; i++)
           {
-             if (extn->svc.sys) ipctype = ECORE_IPC_LOCAL_SYSTEM;
-             extn->ipc.server = ecore_ipc_server_add(ipctype,
-                                                     (char *)extn->svc.name,
-                                                     extn->svc.num, ee);
-             if (!extn->ipc.server)
-               {
-                  eina_stringshare_del(extn->svc.name);
-                  free(extn);
-                  ecore_ipc_shutdown();
-                  return EINA_FALSE;
-               }
-
-             bdata->data = extn;
-
-             Ecore_Wl_Window *wlwin;
-             struct wl_surface *surface;
-             wlwin = ecore_evas_wayland_window_get(ee);
-             if(!wlwin)
-               {
-                  ERR("wlwin is NULL");
-               }
-             surface = ecore_wl_window_surface_get(wlwin);
-             if(!surface)
+             do
                {
-                  ERR("surface is NULL");
+                  extn->b[i].buf = _extnbuf_new(extn->svc.name, extn->svc.num,
+                                                extn->svc.sys, last_try,
+                                                ee->w, ee->h, EINA_TRUE);
+                  if (extn->b[i].buf) extn->b[i].num = last_try;
+                  last_try++;
+                  if (last_try > 1024) break;
                }
+             while (!extn->b[i].buf);
 
-             if (!tizen_rsm)
-               {
-                  ERR("tizen_rsm is NULL");
-                  return NULL;
-               }
-             struct tizen_remote_surface_provider *tizen_rsp = NULL;
-             if (!tizen_rsp)
-               {
-                  tizen_rsp = tizen_remote_surface_manager_create_provider(tizen_rsm, surface);
-                  INF("[EXTN_GL] tizen remote surface provider : %p",tizen_rsp);
-                  if (!tizen_rsp)
-                    {
-                       ERR("Could not create tizen_remote_surface_provider\n");
-                       return NULL;
-                    }
-                 tizen_remote_surface_provider_add_listener(tizen_rsp, &_ecore_evas_extn_gl_socket_listener, ee);
-               }
           }
+
+        if (extn->b[extn->cur_b].buf)
+          bdata->pixels = _extnbuf_data_get(extn->b[extn->cur_b].buf,
+                                            NULL, NULL, NULL);
         else
           {
-             for (i = 0; i < NBUF; i++)
-               {
-                  do
-                    {
-                       extn->b[i].buf = _extnbuf_new(extn->svc.name, extn->svc.num,
-                                                     extn->svc.sys, last_try,
-                                                     ee->w, ee->h, EINA_TRUE);
-                       if (extn->b[i].buf) extn->b[i].num = last_try;
-                       last_try++;
-                       if (last_try > 1024) break;
-                    }
-                  while (!extn->b[i].buf);
-
-               }
-
-             if (extn->b[extn->cur_b].buf)
-               bdata->pixels = _extnbuf_data_get(extn->b[extn->cur_b].buf,
-                                                 NULL, NULL, NULL);
-             else
-               {
-                  eina_stringshare_del(extn->svc.name);
-                  free(extn);
-                  ecore_ipc_shutdown();
-                  return EINA_FALSE;
-               }
+             eina_stringshare_del(extn->svc.name);
+             free(extn);
+             ecore_ipc_shutdown();
+             return EINA_FALSE;
+          }
 
-             if (extn->svc.sys) ipctype = ECORE_IPC_LOCAL_SYSTEM;
-             extn->ipc.server = ecore_ipc_server_add(ipctype,
-                                                     (char *)extn->svc.name,
-                                                     extn->svc.num, ee);
-             if (!extn->ipc.server)
+        if (extn->svc.sys) ipctype = ECORE_IPC_LOCAL_SYSTEM;
+        extn->ipc.server = ecore_ipc_server_add(ipctype,
+                                                (char *)extn->svc.name,
+                                                extn->svc.num, ee);
+        if (!extn->ipc.server)
+          {
+             for (i = 0; i < NBUF; i++)
                {
-                  for (i = 0; i < NBUF; i++)
-                    {
-                       if (extn->b[i].buf) _extnbuf_free(extn->b[i].buf);
-                       if (extn->b[i].obuf) _extnbuf_free(extn->b[i].obuf);
-                       if (extn->b[i].base) eina_stringshare_del(extn->b[i].base);
-                       if (extn->b[i].lock) eina_stringshare_del(extn->b[i].lock);
-                       extn->b[i].buf = NULL;
-                       extn->b[i].obuf = NULL;
-                       extn->b[i].base = NULL;
-                       extn->b[i].lock = NULL;
-                    }
-                  eina_stringshare_del(extn->svc.name);
-                  free(extn);
-                  ecore_ipc_shutdown();
-                  return EINA_FALSE;
+                  if (extn->b[i].buf) _extnbuf_free(extn->b[i].buf);
+                  if (extn->b[i].obuf) _extnbuf_free(extn->b[i].obuf);
+                  if (extn->b[i].base) eina_stringshare_del(extn->b[i].base);
+                  if (extn->b[i].lock) eina_stringshare_del(extn->b[i].lock);
+                  extn->b[i].buf = NULL;
+                  extn->b[i].obuf = NULL;
+                  extn->b[i].base = NULL;
+                  extn->b[i].lock = NULL;
                }
-             bdata->data = extn;
+             eina_stringshare_del(extn->svc.name);
+             free(extn);
+             ecore_ipc_shutdown();
+             return EINA_FALSE;
           }
-
+        bdata->data = extn;
         extn->ipc.handlers = eina_list_append
            (extn->ipc.handlers,
             ecore_event_handler_add(ECORE_IPC_EVENT_CLIENT_ADD,
index ff51960..511397d 100644 (file)
 #include <Ecore_Evas.h>
 #include <Ecore_Input.h>
 #include <Ecore_Ipc.h>
-#include <wayland-extension/tizen-remote-surface-client-protocol.h>
-#include <wayland-tbm-client.h>
-#include <Ecore_Wayland.h>
-#include <tbm_surface.h>
 
 #include "ecore_private.h" // FIXME: Because of ECORE_MAGIC
 #include "ecore_evas_private.h"
@@ -80,8 +76,7 @@ enum // opcodes
    OP_EV_KEY_DOWN,
    OP_EV_HOLD,
    OP_MSG_PARENT,
-   OP_MSG,
-   OP_GL_REF,
+   OP_MSG
 };
 
 enum
@@ -97,12 +92,6 @@ enum
    MOD_SCROLL = (1 << 8),
 };
 
-enum {
-   EXTN_TYPE_SHM = 0, /* shared memory-based buffer backend */
-   EXTN_TYPE_WAYLAND_EGL,      /* wayland_egl backend  */
-};
-
-
 typedef struct _Ipc_Data_Resize Ipc_Data_Resize;
 typedef struct _Ipc_Data_Update Ipc_Data_Update;
 typedef struct _Ipc_Data_Ev_Mouse_In Ipc_Data_Ev_Mouse_In;