discomfitor pushed a commit to branch master.

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

commit eec5cf6a67e0977c71445236b2e6c40870e448dc
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Thu Jun 25 19:16:27 2015 -0400

    remove E_Comp_Data typedef, use backend-specific typedefs unconditionally
    
    this turned into a bit of a charlie-foxtrot due to constant pointer aliasing
    in the wl compositor codebase
    
    no functional changes
---
 src/bin/e_comp.h                          |   9 +-
 src/bin/e_comp_wl.c                       |  18 +--
 src/bin/e_comp_wl_data.c                  | 137 +++++++----------
 src/bin/e_comp_wl_input.c                 | 235 ++++++++++++------------------
 src/bin/e_comp_x.c                        |   2 +-
 src/modules/wl_desktop_shell/e_mod_main.c |  69 ++++-----
 6 files changed, 193 insertions(+), 277 deletions(-)

diff --git a/src/bin/e_comp.h b/src/bin/e_comp.h
index 6e4d6b7..6b8cbcb 100644
--- a/src/bin/e_comp.h
+++ b/src/bin/e_comp.h
@@ -3,16 +3,15 @@ typedef struct _E_Comp E_Comp;
 
 #ifdef E_COMP_WL
 typedef struct _E_Comp_Wl_Client_Data E_Comp_Client_Data;
-typedef struct _E_Comp_Wl_Data E_Comp_Data;
 #endif
+typedef struct _E_Comp_Wl_Data E_Comp_Wl_Data;
 
 #ifdef E_COMP_X
 typedef struct _E_Comp_X_Client_Data E_Comp_Client_Data;
-typedef struct _E_Comp_X_Data E_Comp_Data;
 #endif
+typedef struct _E_Comp_X_Data E_Comp_X_Data;
 
 #if !defined(E_COMP_WL) && !defined(E_COMP_X)
-typedef struct _E_Comp_Data E_Comp_Data;
 typedef struct _E_Comp_Client_Data E_Comp_Client_Data;
 #endif
 
@@ -88,8 +87,8 @@ struct _E_Comp
    Eina_List *clients;
    unsigned int new_clients;
 
-   E_Comp_Data *x_comp_data;
-   E_Comp_Data *wl_comp_data;
+   E_Comp_X_Data *x_comp_data;
+   E_Comp_Wl_Data *wl_comp_data;
 
    E_Pixmap_Type comp_type; //for determining X/Wayland/
 
diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 6c0a4db..42888f3 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -510,7 +510,7 @@ static void
 _e_comp_wl_evas_cb_focus_out(void *data, Evas *evas EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, void *event EINA_UNUSED)
 {
    E_Client *ec;
-   E_Comp_Data *cdata;
+   E_Comp_Wl_Data *cdata;
    struct wl_resource *res;
    struct wl_client *wc;
    uint32_t serial, *k;
@@ -846,7 +846,7 @@ _e_comp_wl_cb_comp_object_add(void *data EINA_UNUSED, int 
type EINA_UNUSED, E_Ev
 static void
 _e_comp_wl_cb_key_down(void *event)
 {
-   E_Comp_Data *cdata;
+   E_Comp_Wl_Data *cdata;
    E_Client *ec;
    Ecore_Event_Key *ev;
    uint32_t serial, *end, *k, keycode;
@@ -917,7 +917,7 @@ static void
 _e_comp_wl_cb_key_up(void *event)
 {
    E_Client *ec;
-   E_Comp_Data *cdata;
+   E_Comp_Wl_Data *cdata;
    Ecore_Event_Key *ev;
    uint32_t serial, *end, *k, keycode;
 
@@ -966,7 +966,7 @@ _e_comp_wl_cb_key_up(void *event)
 static void
 _e_comp_wl_cb_mouse_move(void *event)
 {
-   E_Comp_Data *cdata;
+   E_Comp_Wl_Data *cdata;
    Ecore_Event_Mouse_Move *ev;
 
    if (!(cdata = e_comp->wl_comp_data)) return;
@@ -1621,7 +1621,7 @@ _e_comp_wl_compositor_cb_bind(struct wl_client *client, 
void *data EINA_UNUSED,
 static void
 _e_comp_wl_compositor_cb_del(void *data EINA_UNUSED)
 {
-   E_Comp_Data *cdata;
+   E_Comp_Wl_Data *cdata;
    E_Comp_Wl_Output *output;
 
    cdata = e_comp->wl_comp_data;
@@ -2402,7 +2402,7 @@ _e_comp_wl_cb_output_bind(struct wl_client *client, void 
*data, uint32_t version
 static Eina_Bool
 _e_comp_wl_compositor_create(void)
 {
-   E_Comp_Data *cdata;
+   E_Comp_Wl_Data *cdata;
    const char *name;
    int fd = 0;
 
@@ -2411,7 +2411,7 @@ _e_comp_wl_compositor_create(void)
      E_OBJECT_DEL_SET(e_comp, _e_comp_wl_compositor_cb_del);
 
    /* create new compositor data */
-   if (!(cdata = E_NEW(E_Comp_Data, 1)))
+   if (!(cdata = E_NEW(E_Comp_Wl_Data, 1)))
      {
        ERR("Could not create compositor data: %m");
        return EINA_FALSE;
@@ -2879,7 +2879,7 @@ e_comp_wl_output_init(const char *id, const char *make, 
const char *model,
                       unsigned int refresh, unsigned int subpixel,
                       unsigned int transform)
 {
-   E_Comp_Data *cdata;
+   E_Comp_Wl_Data *cdata;
    E_Comp_Wl_Output *output;
    Eina_List *l2;
    struct wl_resource *resource;
@@ -2947,7 +2947,7 @@ e_comp_wl_output_init(const char *id, const char *make, 
const char *model,
 E_API void
 e_comp_wl_output_remove(const char *id)
 {
-   E_Comp_Data *cdata;
+   E_Comp_Wl_Data *cdata;
    E_Comp_Wl_Output *output;
 
    if (!(cdata = e_comp->wl_comp_data)) return;
diff --git a/src/bin/e_comp_wl_data.c b/src/bin/e_comp_wl_data.c
index dfb951a..0b9ef0e 100644
--- a/src/bin/e_comp_wl_data.c
+++ b/src/bin/e_comp_wl_data.c
@@ -159,30 +159,28 @@ static const struct wl_data_source_interface 
_e_data_source_interface =
 static void
 _e_comp_wl_data_device_destroy_selection_data_source(struct wl_listener 
*listener EINA_UNUSED, void *data)
 {
-   E_Comp_Data *cdata;
    E_Comp_Wl_Data_Source *source;
    struct wl_resource *data_device_res, *focus = NULL;
 
    if (!(source = (E_Comp_Wl_Data_Source*)data))
      return;
 
-   cdata = e_comp->wl_comp_data;
-   cdata->selection.data_source = NULL;
+   e_comp->wl_comp_data->selection.data_source = NULL;
 
-   if (cdata->kbd.enabled)
-     focus = cdata->kbd.focus;
+   if (e_comp->wl_comp_data->kbd.enabled)
+     focus = e_comp->wl_comp_data->kbd.focus;
 
    if (focus)
      {
         data_device_res = 
-           _e_comp_wl_data_find_for_client(cdata->mgr.data_resources, 
+           
_e_comp_wl_data_find_for_client(e_comp->wl_comp_data->mgr.data_resources,
                                            
wl_resource_get_client(source->resource));
 
         if (data_device_res)
           wl_data_device_send_selection(data_device_res, NULL);
      }
 
-   wl_signal_emit(&cdata->selection.signal, cdata);
+   wl_signal_emit(&e_comp->wl_comp_data->selection.signal, 
e_comp->wl_comp_data);
 }
 
 static struct wl_resource*
@@ -226,21 +224,19 @@ static void
 _e_comp_wl_data_device_selection_set(void *data EINA_UNUSED, 
E_Comp_Wl_Data_Source *source, uint32_t serial)
 {
    E_Comp_Wl_Data_Source *sel_source;
-   E_Comp_Data *cdata;
    struct wl_resource *offer_res, *data_device_res, *focus = NULL;
 
-   cdata = e_comp->wl_comp_data;
-   sel_source = (E_Comp_Wl_Data_Source*)cdata->selection.data_source;
+   sel_source = 
(E_Comp_Wl_Data_Source*)e_comp->wl_comp_data->selection.data_source;
 
    if ((sel_source) &&
-       (cdata->selection.serial - serial < UINT32_MAX / 2))
+       (e_comp->wl_comp_data->selection.serial - serial < UINT32_MAX / 2))
      {
         /* TODO: elm_entry is sending too many request on now,
          * for those requests, selection.signal is being emitted also a lot.
          * when it completes to optimize the entry, it should be checked more.
          */
-        if (cdata->clipboard.source)
-          wl_signal_emit(&cdata->selection.signal, cdata);
+        if (e_comp->wl_comp_data->clipboard.source)
+          wl_signal_emit(&e_comp->wl_comp_data->selection.signal, 
e_comp->wl_comp_data);
 
         return;
      }
@@ -249,20 +245,20 @@ _e_comp_wl_data_device_selection_set(void *data 
EINA_UNUSED, E_Comp_Wl_Data_Sour
      {
         if (sel_source->cancelled)
           sel_source->cancelled(sel_source);
-        wl_list_remove(&cdata->selection.data_source_listener.link);
-        cdata->selection.data_source = NULL;
+        
wl_list_remove(&e_comp->wl_comp_data->selection.data_source_listener.link);
+        e_comp->wl_comp_data->selection.data_source = NULL;
      }
 
-   cdata->selection.data_source = sel_source = source;
-   cdata->selection.serial = serial;
+   e_comp->wl_comp_data->selection.data_source = sel_source = source;
+   e_comp->wl_comp_data->selection.serial = serial;
 
-   if (cdata->kbd.enabled)
-     focus = cdata->kbd.focus;
+   if (e_comp->wl_comp_data->kbd.enabled)
+     focus = e_comp->wl_comp_data->kbd.focus;
 
    if (focus)
      {
         data_device_res =
-           _e_comp_wl_data_find_for_client(cdata->mgr.data_resources,
+           
_e_comp_wl_data_find_for_client(e_comp->wl_comp_data->mgr.data_resources,
                                            wl_resource_get_client(focus));
         if ((data_device_res) && (source))
           {
@@ -276,29 +272,27 @@ _e_comp_wl_data_device_selection_set(void *data 
EINA_UNUSED, E_Comp_Wl_Data_Sour
           wl_data_device_send_selection(data_device_res, NULL);
      }
 
-   wl_signal_emit(&cdata->selection.signal, cdata);
+   wl_signal_emit(&e_comp->wl_comp_data->selection.signal, 
e_comp->wl_comp_data);
 
    if (source)
      {
-        cdata->selection.data_source_listener.notify = 
+        e_comp->wl_comp_data->selection.data_source_listener.notify = 
           _e_comp_wl_data_device_destroy_selection_data_source;
         wl_signal_add(&source->destroy_signal, 
-                      &cdata->selection.data_source_listener);
+                      &e_comp->wl_comp_data->selection.data_source_listener);
      }
 }
 
 static void
 _e_comp_wl_data_device_cb_drag_start(struct wl_client *client, struct 
wl_resource *resource EINA_UNUSED, struct wl_resource *source_resource, struct 
wl_resource *origin_resource, struct wl_resource *icon_resource, uint32_t 
serial)
 {
-   E_Comp_Data *cdata;
    E_Comp_Wl_Data_Source *source;
    Eina_List *l;
    struct wl_resource *res;
 
    DBG("Data Device Drag Start");
 
-   cdata = e_comp->wl_comp_data;
-   if ((cdata->kbd.focus) && (cdata->kbd.focus != origin_resource)) return;
+   if ((e_comp->wl_comp_data->kbd.focus) && (e_comp->wl_comp_data->kbd.focus 
!= origin_resource)) return;
 
    if (!(source = wl_resource_get_user_data(source_resource))) return;
 
@@ -311,11 +305,11 @@ _e_comp_wl_data_device_cb_drag_start(struct wl_client 
*client, struct wl_resourc
         cp = wl_resource_get_user_data(icon_resource);
      }
 
-   EINA_LIST_FOREACH(cdata->ptr.resources, l, res)
+   EINA_LIST_FOREACH(e_comp->wl_comp_data->ptr.resources, l, res)
      {
         if (!e_comp_wl_input_pointer_check(res)) continue;
         if (wl_resource_get_client(res) != client) continue;
-        wl_pointer_send_leave(res, serial, cdata->kbd.focus);
+        wl_pointer_send_leave(res, serial, e_comp->wl_comp_data->kbd.focus);
      }
 
    /* TODO: pointer start drag */
@@ -389,12 +383,10 @@ _e_comp_wl_data_manager_cb_source_create(struct wl_client 
*client EINA_UNUSED, s
 static void 
 _e_comp_wl_data_manager_cb_device_get(struct wl_client *client, struct 
wl_resource *manager_resource, uint32_t id, struct wl_resource *seat_resource 
EINA_UNUSED)
 {
-   E_Comp_Data *cdata;
    struct wl_resource *res;
 
    /* DBG("Data Manager Device Get"); */
 
-   cdata = e_comp->wl_comp_data;
 
    /* try to create the data device resource */
    res = wl_resource_create(client, &wl_data_device_interface, 1, id);
@@ -405,9 +397,9 @@ _e_comp_wl_data_manager_cb_device_get(struct wl_client 
*client, struct wl_resour
         return;
      }
 
-   cdata->mgr.data_resources = 
-     eina_list_append(cdata->mgr.data_resources, res);
-   wl_resource_set_implementation(res, &_e_data_device_interface, cdata, 
+   e_comp->wl_comp_data->mgr.data_resources = 
+     eina_list_append(e_comp->wl_comp_data->mgr.data_resources, res);
+   wl_resource_set_implementation(res, &_e_data_device_interface, 
e_comp->wl_comp_data, 
                                   _e_comp_wl_data_device_cb_unbind);
 }
 
@@ -420,13 +412,13 @@ static const struct wl_data_device_manager_interface 
_e_manager_interface =
 /* static void  */
 /* _e_comp_wl_data_cb_unbind_manager(struct wl_resource *resource) */
 /* { */
-/*    E_Comp_Data *cdata; */
+/*    E_Comp_Data *e_comp->wl_comp_data; */
 
 /*    DBG("Comp_Wl_Data: Unbind Manager"); */
 
-/*    if (!(cdata = wl_resource_get_user_data(resource))) return; */
+/*    if (!(e_comp->wl_comp_data = wl_resource_get_user_data(resource))) 
return; */
 
-/*    cdata->mgr.resource = NULL; */
+/*    e_comp->wl_comp_data->mgr.resource = NULL; */
 /* } */
 
 static void 
@@ -518,14 +510,12 @@ 
_e_comp_wl_clipboard_offer_create(E_Comp_Wl_Clipboard_Source* source, int fd)
 static Eina_Bool
 _e_comp_wl_clipboard_source_save(void *data EINA_UNUSED, Ecore_Fd_Handler 
*handler)
 {
-   E_Comp_Data *cdata;
    E_Comp_Wl_Clipboard_Source *source;
    char *p;
    int len, size;
 
-   cdata = e_comp->wl_comp_data;
 
-   if (!(source = (E_Comp_Wl_Clipboard_Source*)cdata->clipboard.source))
+   if (!(source = 
(E_Comp_Wl_Clipboard_Source*)e_comp->wl_comp_data->clipboard.source))
      return ECORE_CALLBACK_CANCEL;
 
    /* extend contents buffer */
@@ -548,7 +538,7 @@ _e_comp_wl_clipboard_source_save(void *data EINA_UNUSED, 
Ecore_Fd_Handler *handl
    else if (len < 0)
      {
         _e_comp_wl_clipboard_source_unref(source);
-        cdata->clipboard.source = NULL;
+        e_comp->wl_comp_data->clipboard.source = NULL;
      }
    else
      {
@@ -585,7 +575,7 @@ 
_e_comp_wl_clipboard_source_cancelled_send(E_Comp_Wl_Data_Source *source EINA_UN
 }
 
 static E_Comp_Wl_Clipboard_Source*
-_e_comp_wl_clipboard_source_create(E_Comp_Data *cdata, const char *mime_type, 
uint32_t serial, int fd)
+_e_comp_wl_clipboard_source_create(const char *mime_type, uint32_t serial, int 
fd)
 {
    E_Comp_Wl_Clipboard_Source *source;
 
@@ -610,7 +600,7 @@ _e_comp_wl_clipboard_source_create(E_Comp_Data *cdata, 
const char *mime_type, ui
    source->fd_handler =
       ecore_main_fd_handler_add(fd, ECORE_FD_READ,
                                 _e_comp_wl_clipboard_source_save,
-                                cdata, NULL, NULL);
+                                e_comp->wl_comp_data, NULL, NULL);
    if (!source->fd_handler) return NULL;
 
    source->fd = fd;
@@ -621,20 +611,18 @@ _e_comp_wl_clipboard_source_create(E_Comp_Data *cdata, 
const char *mime_type, ui
 static void
 _e_comp_wl_clipboard_selection_set(struct wl_listener *listener EINA_UNUSED, 
void *data EINA_UNUSED)
 {
-   E_Comp_Data *cdata;
    E_Comp_Wl_Data_Source *sel_source;
    E_Comp_Wl_Clipboard_Source *clip_source;
    int p[2];
    char *mime_type;
 
-   cdata = e_comp->wl_comp_data;
-   sel_source = (E_Comp_Wl_Data_Source*) cdata->selection.data_source;
-   clip_source = (E_Comp_Wl_Clipboard_Source*) cdata->clipboard.source;
+   sel_source = (E_Comp_Wl_Data_Source*) 
e_comp->wl_comp_data->selection.data_source;
+   clip_source = (E_Comp_Wl_Clipboard_Source*) 
e_comp->wl_comp_data->clipboard.source;
 
    if (!sel_source)
      {
         if (clip_source)
-          _e_comp_wl_data_device_selection_set(cdata,
+          _e_comp_wl_data_device_selection_set(e_comp->wl_comp_data,
                                                &clip_source->data_source,
                                                clip_source->serial);
         return;
@@ -645,7 +633,7 @@ _e_comp_wl_clipboard_selection_set(struct wl_listener 
*listener EINA_UNUSED, voi
    if (clip_source)
      _e_comp_wl_clipboard_source_unref(clip_source);
 
-   cdata->clipboard.source = NULL;
+   e_comp->wl_comp_data->clipboard.source = NULL;
    mime_type = eina_list_nth(sel_source->mime_types, 0);
 
    if (pipe2(p, O_CLOEXEC) == -1)
@@ -653,67 +641,56 @@ _e_comp_wl_clipboard_selection_set(struct wl_listener 
*listener EINA_UNUSED, voi
 
    sel_source->send(sel_source, mime_type, p[1]);
 
-   cdata->clipboard.source =
-      _e_comp_wl_clipboard_source_create(cdata, mime_type,
-                                         cdata->selection.serial, p[0]);
+   e_comp->wl_comp_data->clipboard.source =
+      _e_comp_wl_clipboard_source_create(mime_type,
+                                         
e_comp->wl_comp_data->selection.serial, p[0]);
 
-   if (!cdata->clipboard.source)
+   if (!e_comp->wl_comp_data->clipboard.source)
      close(p[0]);
 }
 
 static void
-_e_comp_wl_clipboard_destroy(E_Comp_Data *cdata)
-{
-   wl_list_remove(&cdata->clipboard.listener.link);
-}
-
-static void
 _e_comp_wl_clipboard_create(void)
 {
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
-   cdata->clipboard.listener.notify = _e_comp_wl_clipboard_selection_set;
-   wl_signal_add(&cdata->selection.signal, &cdata->clipboard.listener);
+   e_comp->wl_comp_data->clipboard.listener.notify = 
_e_comp_wl_clipboard_selection_set;
+   wl_signal_add(&e_comp->wl_comp_data->selection.signal, 
&e_comp->wl_comp_data->clipboard.listener);
 }
 
 EINTERN void
 e_comp_wl_data_device_keyboard_focus_set(void)
 {
-   E_Comp_Data *cdata;
    struct wl_resource *data_device_res, *offer_res, *focus;
    E_Comp_Wl_Data_Source *source;
 
-   cdata = e_comp->wl_comp_data;
 
-   if (!cdata->kbd.enabled) 
+   if (!e_comp->wl_comp_data->kbd.enabled)
      {
         ERR("Keyboard not enabled");
         return;
      }
 
-   if (!(focus = cdata->kbd.focus))
+   if (!(focus = e_comp->wl_comp_data->kbd.focus))
      {
         ERR("No focused resource");
         return;
      }
 
    data_device_res =
-      _e_comp_wl_data_find_for_client(cdata->mgr.data_resources,
+      _e_comp_wl_data_find_for_client(e_comp->wl_comp_data->mgr.data_resources,
                                       wl_resource_get_client(focus));
    if (!data_device_res) return;
 
-   source = (E_Comp_Wl_Data_Source*)cdata->selection.data_source;
+   source = 
(E_Comp_Wl_Data_Source*)e_comp->wl_comp_data->selection.data_source;
    if (source)
      {
         uint32_t serial;
 
-        serial = wl_display_next_serial(cdata->wl.disp);
+        serial = wl_display_next_serial(e_comp->wl_comp_data->wl.disp);
 
         offer_res = _e_comp_wl_data_device_data_offer_create(source,
                                                              data_device_res);
         wl_data_device_send_enter(data_device_res, serial, focus, 
-                                  cdata->ptr.x, cdata->ptr.y, offer_res);
+                                  e_comp->wl_comp_data->ptr.x, 
e_comp->wl_comp_data->ptr.y, offer_res);
         wl_data_device_send_selection(data_device_res, offer_res);
      }
 }
@@ -721,21 +698,17 @@ e_comp_wl_data_device_keyboard_focus_set(void)
 EINTERN Eina_Bool
 e_comp_wl_data_manager_init(void)
 {
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
-
    /* try to create global data manager */
-   cdata->mgr.global =
-     wl_global_create(cdata->wl.disp, &wl_data_device_manager_interface, 1,
-                      cdata, _e_comp_wl_data_cb_bind_manager);
-   if (!cdata->mgr.global)
+   e_comp->wl_comp_data->mgr.global =
+     wl_global_create(e_comp->wl_comp_data->wl.disp, 
&wl_data_device_manager_interface, 1,
+                      e_comp->wl_comp_data, _e_comp_wl_data_cb_bind_manager);
+   if (!e_comp->wl_comp_data->mgr.global)
      {
         ERR("Could not create global for data device manager: %m");
         return EINA_FALSE;
      }
 
-   wl_signal_init(&cdata->selection.signal);
+   wl_signal_init(&e_comp->wl_comp_data->selection.signal);
 
    /* create clipboard */
    _e_comp_wl_clipboard_create();
@@ -747,7 +720,7 @@ EINTERN void
 e_comp_wl_data_manager_shutdown(void)
 {
    /* destroy the global manager resource */
-   /* if (cdata->mgr.global) wl_global_destroy(cdata->mgr.global); */
+   /* if (e_comp->wl_comp_data->mgr.global) 
wl_global_destroy(e_comp->wl_comp_data->mgr.global); */
 
-   _e_comp_wl_clipboard_destroy(e_comp->wl_comp_data);
+   wl_list_remove(&e_comp->wl_comp_data->clipboard.listener.link);
 }
diff --git a/src/bin/e_comp_wl_input.c b/src/bin/e_comp_wl_input.c
index 316457f..2e5fdce 100644
--- a/src/bin/e_comp_wl_input.c
+++ b/src/bin/e_comp_wl_input.c
@@ -6,21 +6,18 @@
 static void
 _e_comp_wl_input_update_seat_caps(void)
 {
-   E_Comp_Data *cdata;
    Eina_List *l;
    struct wl_resource *res;
    enum wl_seat_capability caps = 0;
 
-   cdata = e_comp->wl_comp_data;
-
-   if (cdata->ptr.enabled)
+   if (e_comp->wl_comp_data->ptr.enabled)
      caps |= WL_SEAT_CAPABILITY_POINTER;
-   if (cdata->kbd.enabled)
+   if (e_comp->wl_comp_data->kbd.enabled)
      caps |= WL_SEAT_CAPABILITY_KEYBOARD;
-   if (cdata->touch.enabled)
+   if (e_comp->wl_comp_data->touch.enabled)
      caps |= WL_SEAT_CAPABILITY_TOUCH;
 
-   EINA_LIST_FOREACH(cdata->seat.resources, l, res)
+   EINA_LIST_FOREACH(e_comp->wl_comp_data->seat.resources, l, res)
         wl_seat_send_capabilities(res, caps);
 }
 
@@ -38,6 +35,7 @@ _e_comp_wl_input_pointer_cb_cursor_set(struct wl_client 
*client, struct wl_resou
 
    E_CLIENT_FOREACH(ec)
      {
+       if (e_pixmap_type_get(ec->pixmap) != E_PIXMAP_TYPE_WL) continue;
        if (!ec->comp_data->surface) continue;
        if (client != wl_resource_get_client(ec->comp_data->surface)) continue;
        if (ec->mouse.in)
@@ -90,42 +88,33 @@ static const struct wl_touch_interface _e_touch_interface =
 static void
 _e_comp_wl_input_cb_pointer_unbind(struct wl_resource *resource)
 {
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
-   cdata->ptr.resources = eina_list_remove(cdata->ptr.resources, resource);
+   e_comp->wl_comp_data->ptr.resources = 
eina_list_remove(e_comp->wl_comp_data->ptr.resources, resource);
 }
 
 static void
 _e_comp_wl_input_cb_pointer_get(struct wl_client *client, struct wl_resource 
*resource, uint32_t id)
 {
-   E_Comp_Data *cdata;
    struct wl_resource *res;
 
-   cdata = e_comp->wl_comp_data;
-
    /* try to create pointer resource */
    res = wl_resource_create(client, &wl_pointer_interface,
                             wl_resource_get_version(resource), id);
    if (!res)
      {
-        ERR("Could not create pointer on seat %s: %m", cdata->seat.name);
+        ERR("Could not create pointer on seat %s: %m", 
e_comp->wl_comp_data->seat.name);
         wl_client_post_no_memory(client);
         return;
      }
 
-   cdata->ptr.resources = eina_list_append(cdata->ptr.resources, res);
-   wl_resource_set_implementation(res, &_e_pointer_interface, cdata,
+   e_comp->wl_comp_data->ptr.resources = 
eina_list_append(e_comp->wl_comp_data->ptr.resources, res);
+   wl_resource_set_implementation(res, &_e_pointer_interface, 
e_comp->wl_comp_data,
                                  _e_comp_wl_input_cb_pointer_unbind);
 }
 
 static void
 _e_comp_wl_input_cb_keyboard_unbind(struct wl_resource *resource)
 {
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
-   cdata->kbd.resources = eina_list_remove(cdata->kbd.resources, resource);
+   e_comp->wl_comp_data->kbd.resources = 
eina_list_remove(e_comp->wl_comp_data->kbd.resources, resource);
 }
 
 void
@@ -162,28 +151,25 @@ static void
 _e_comp_wl_input_cb_keyboard_get(struct wl_client *client, struct wl_resource 
*resource, uint32_t id)
 {
    E_Client *focused;
-   E_Comp_Data *cdata;
    struct wl_resource *res;
 
-   cdata = e_comp->wl_comp_data;
-
    /* try to create keyboard resource */
    res = wl_resource_create(client, &wl_keyboard_interface,
                             wl_resource_get_version(resource), id);
    if (!res)
      {
-        ERR("Could not create keyboard on seat %s: %m", cdata->seat.name);
+        ERR("Could not create keyboard on seat %s: %m", 
e_comp->wl_comp_data->seat.name);
         wl_client_post_no_memory(client);
         return;
      }
 
-   cdata->kbd.resources = eina_list_append(cdata->kbd.resources, res);
-   wl_resource_set_implementation(res, &_e_keyboard_interface, cdata,
+   e_comp->wl_comp_data->kbd.resources = 
eina_list_append(e_comp->wl_comp_data->kbd.resources, res);
+   wl_resource_set_implementation(res, &_e_keyboard_interface, 
e_comp->wl_comp_data,
                                   _e_comp_wl_input_cb_keyboard_unbind);
 
    /* send current keymap */
    wl_keyboard_send_keymap(res, WL_KEYBOARD_KEYMAP_FORMAT_XKB_V1,
-                           cdata->xkb.fd, cdata->xkb.size);
+                           e_comp->wl_comp_data->xkb.fd, 
e_comp->wl_comp_data->xkb.size);
 
    /* if the client owns the focused surface, we need to send an enter */
    focused = e_client_focused_get();
@@ -196,32 +182,26 @@ _e_comp_wl_input_cb_keyboard_get(struct wl_client 
*client, struct wl_resource *r
 static void
 _e_comp_wl_input_cb_touch_unbind(struct wl_resource *resource)
 {
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
-   cdata->touch.resources = eina_list_remove(cdata->touch.resources, resource);
+   e_comp->wl_comp_data->touch.resources = 
eina_list_remove(e_comp->wl_comp_data->touch.resources, resource);
 }
 
 static void
 _e_comp_wl_input_cb_touch_get(struct wl_client *client EINA_UNUSED, struct 
wl_resource *resource, uint32_t id EINA_UNUSED)
 {
-    E_Comp_Data *cdata;
     struct wl_resource *res;
 
-    cdata = e_comp->wl_comp_data;
-
     /* try to create pointer resource */
     res = wl_resource_create(client, &wl_touch_interface,
                              wl_resource_get_version(resource), id);
     if (!res)
       {
-         ERR("Could not create touch on seat %s: %m", cdata->seat.name);
+         ERR("Could not create touch on seat %s: %m", 
e_comp->wl_comp_data->seat.name);
          wl_client_post_no_memory(client);
          return;
       }
 
-    cdata->touch.resources = eina_list_append(cdata->touch.resources, res);
-    wl_resource_set_implementation(res, &_e_touch_interface, cdata,
+    e_comp->wl_comp_data->touch.resources = 
eina_list_append(e_comp->wl_comp_data->touch.resources, res);
+    wl_resource_set_implementation(res, &_e_touch_interface, 
e_comp->wl_comp_data,
                                   _e_comp_wl_input_cb_touch_unbind);
 }
 
@@ -235,19 +215,14 @@ static const struct wl_seat_interface _e_seat_interface =
 static void
 _e_comp_wl_input_cb_unbind_seat(struct wl_resource *resource)
 {
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
-   cdata->seat.resources = eina_list_remove(cdata->seat.resources, resource);
+   e_comp->wl_comp_data->seat.resources = 
eina_list_remove(e_comp->wl_comp_data->seat.resources, resource);
 }
 
 static void
 _e_comp_wl_input_cb_bind_seat(struct wl_client *client, void *data 
EINA_UNUSED, uint32_t version, uint32_t id)
 {
-   E_Comp_Data *cdata;
    struct wl_resource *res;
 
-   cdata = e_comp->wl_comp_data;
    res = wl_resource_create(client, &wl_seat_interface, MIN(version, 4), id);
    if (!res)
      {
@@ -256,15 +231,15 @@ _e_comp_wl_input_cb_bind_seat(struct wl_client *client, 
void *data EINA_UNUSED,
      }
 
    /* store version of seat interface for reuse in updating capabilities */
-   cdata->seat.version = version;
-   cdata->seat.resources = eina_list_append(cdata->seat.resources, res);
+   e_comp->wl_comp_data->seat.version = version;
+   e_comp->wl_comp_data->seat.resources = 
eina_list_append(e_comp->wl_comp_data->seat.resources, res);
 
-   wl_resource_set_implementation(res, &_e_seat_interface, cdata,
+   wl_resource_set_implementation(res, &_e_seat_interface, 
e_comp->wl_comp_data,
                                   _e_comp_wl_input_cb_unbind_seat);
 
    _e_comp_wl_input_update_seat_caps();
-   if (cdata->seat.version >= WL_SEAT_NAME_SINCE_VERSION)
-     wl_seat_send_name(res, cdata->seat.name);
+   if (e_comp->wl_comp_data->seat.version >= WL_SEAT_NAME_SINCE_VERSION)
+     wl_seat_send_name(res, e_comp->wl_comp_data->seat.name);
 }
 
 static int
@@ -322,44 +297,42 @@ _e_comp_wl_input_keymap_update(struct xkb_keymap *keymap)
    struct wl_resource *res;
    Eina_List *l;
    uint32_t serial;
-   E_Comp_Data *cdata;
 
-   cdata = e_comp->wl_comp_data;
    /* unreference any existing keymap */
-   if (cdata->xkb.keymap) xkb_map_unref(cdata->xkb.keymap);
+   if (e_comp->wl_comp_data->xkb.keymap) 
xkb_map_unref(e_comp->wl_comp_data->xkb.keymap);
 
    /* unmap any existing keyboard area */
-   if (cdata->xkb.area) munmap(cdata->xkb.area, cdata->xkb.size);
-   if (cdata->xkb.fd >= 0) close(cdata->xkb.fd);
+   if (e_comp->wl_comp_data->xkb.area) munmap(e_comp->wl_comp_data->xkb.area, 
e_comp->wl_comp_data->xkb.size);
+   if (e_comp->wl_comp_data->xkb.fd >= 0) close(e_comp->wl_comp_data->xkb.fd);
 
    /* unreference any existing keyboard state */
-   if (cdata->xkb.state)
+   if (e_comp->wl_comp_data->xkb.state)
      {
         latched =
-          xkb_state_serialize_mods(cdata->xkb.state, XKB_STATE_MODS_LATCHED);
+          xkb_state_serialize_mods(e_comp->wl_comp_data->xkb.state, 
XKB_STATE_MODS_LATCHED);
         locked =
-          xkb_state_serialize_mods(cdata->xkb.state, XKB_STATE_MODS_LOCKED);
+          xkb_state_serialize_mods(e_comp->wl_comp_data->xkb.state, 
XKB_STATE_MODS_LOCKED);
         group =
-          xkb_state_serialize_layout(cdata->xkb.state,
+          xkb_state_serialize_layout(e_comp->wl_comp_data->xkb.state,
                                      XKB_STATE_LAYOUT_EFFECTIVE);
-        xkb_state_unref(cdata->xkb.state);
+        xkb_state_unref(e_comp->wl_comp_data->xkb.state);
      }
 
    /* create a new xkb state */
-   cdata->xkb.state = xkb_state_new(keymap);
+   e_comp->wl_comp_data->xkb.state = xkb_state_new(keymap);
 
    if ((latched) || (locked) || (group))
-     xkb_state_update_mask(cdata->xkb.state, 0, latched, locked, 0, 0, group);
+     xkb_state_update_mask(e_comp->wl_comp_data->xkb.state, 0, latched, 
locked, 0, 0, group);
 
    /* increment keymap reference */
-   cdata->xkb.keymap = xkb_map_ref(keymap);
+   e_comp->wl_comp_data->xkb.keymap = xkb_map_ref(keymap);
 
    /* fetch updated modifiers */
-   cdata->kbd.mod_shift = xkb_map_mod_get_index(keymap, XKB_MOD_NAME_SHIFT);
-   cdata->kbd.mod_caps = xkb_map_mod_get_index(keymap, XKB_MOD_NAME_CAPS);
-   cdata->kbd.mod_ctrl = xkb_map_mod_get_index(keymap, XKB_MOD_NAME_CTRL);
-   cdata->kbd.mod_alt = xkb_map_mod_get_index(keymap, XKB_MOD_NAME_ALT);
-   cdata->kbd.mod_super = xkb_map_mod_get_index(keymap, XKB_MOD_NAME_LOGO);
+   e_comp->wl_comp_data->kbd.mod_shift = xkb_map_mod_get_index(keymap, 
XKB_MOD_NAME_SHIFT);
+   e_comp->wl_comp_data->kbd.mod_caps = xkb_map_mod_get_index(keymap, 
XKB_MOD_NAME_CAPS);
+   e_comp->wl_comp_data->kbd.mod_ctrl = xkb_map_mod_get_index(keymap, 
XKB_MOD_NAME_CTRL);
+   e_comp->wl_comp_data->kbd.mod_alt = xkb_map_mod_get_index(keymap, 
XKB_MOD_NAME_ALT);
+   e_comp->wl_comp_data->kbd.mod_super = xkb_map_mod_get_index(keymap, 
XKB_MOD_NAME_LOGO);
 
    if (!(tmp = xkb_map_get_as_string(keymap)))
      {
@@ -367,32 +340,32 @@ _e_comp_wl_input_keymap_update(struct xkb_keymap *keymap)
         return;
      }
 
-   cdata->xkb.size = strlen(tmp) + 1;
-   cdata->xkb.fd = _e_comp_wl_input_keymap_fd_get(cdata->xkb.size);
-   if (cdata->xkb.fd < 0)
+   e_comp->wl_comp_data->xkb.size = strlen(tmp) + 1;
+   e_comp->wl_comp_data->xkb.fd = 
_e_comp_wl_input_keymap_fd_get(e_comp->wl_comp_data->xkb.size);
+   if (e_comp->wl_comp_data->xkb.fd < 0)
      {
         ERR("Could not create keymap file");
         free(tmp);
         return;
      }
 
-   cdata->xkb.area =
-     mmap(NULL, cdata->xkb.size, (PROT_READ | PROT_WRITE),
-          MAP_SHARED, cdata->xkb.fd, 0);
-   if (cdata->xkb.area == MAP_FAILED)
+   e_comp->wl_comp_data->xkb.area =
+     mmap(NULL, e_comp->wl_comp_data->xkb.size, (PROT_READ | PROT_WRITE),
+          MAP_SHARED, e_comp->wl_comp_data->xkb.fd, 0);
+   if (e_comp->wl_comp_data->xkb.area == MAP_FAILED)
      {
         ERR("Failed to mmap keymap area: %m");
         free(tmp);
         return;
      }
 
-   strcpy(cdata->xkb.area, tmp);
+   strcpy(e_comp->wl_comp_data->xkb.area, tmp);
    free(tmp);
 
    /* send updated keymap */
-   EINA_LIST_FOREACH(cdata->kbd.resources, l, res)
+   EINA_LIST_FOREACH(e_comp->wl_comp_data->kbd.resources, l, res)
      wl_keyboard_send_keymap(res, WL_KEYBOARD_KEYMAP_FORMAT_XKB_V1,
-                             cdata->xkb.fd, cdata->xkb.size);
+                             e_comp->wl_comp_data->xkb.fd, 
e_comp->wl_comp_data->xkb.size);
 
    /* update modifiers */
    e_comp_wl_input_keyboard_modifiers_update();
@@ -400,36 +373,32 @@ _e_comp_wl_input_keymap_update(struct xkb_keymap *keymap)
    if ((!latched) && (!locked)) return;
 
    /* send modifiers */
-   serial = wl_display_get_serial(cdata->wl.disp);
-   EINA_LIST_FOREACH(cdata->kbd.resources, l, res)
-     wl_keyboard_send_modifiers(res, serial, cdata->kbd.mod_depressed,
-                                cdata->kbd.mod_latched, cdata->kbd.mod_locked,
-                                cdata->kbd.mod_group);
+   serial = wl_display_get_serial(e_comp->wl_comp_data->wl.disp);
+   EINA_LIST_FOREACH(e_comp->wl_comp_data->kbd.resources, l, res)
+     wl_keyboard_send_modifiers(res, serial, 
e_comp->wl_comp_data->kbd.mod_depressed,
+                                e_comp->wl_comp_data->kbd.mod_latched, 
e_comp->wl_comp_data->kbd.mod_locked,
+                                e_comp->wl_comp_data->kbd.mod_group);
 }
 
 EINTERN Eina_Bool
 e_comp_wl_input_init(void)
 {
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
-
    /* set default seat name */
-   if (!cdata->seat.name) cdata->seat.name = "default";
+   if (!e_comp->wl_comp_data->seat.name) e_comp->wl_comp_data->seat.name = 
"default";
 
-   cdata->xkb.fd = -1;
+   e_comp->wl_comp_data->xkb.fd = -1;
 
    /* create the global resource for input seat */
-   cdata->seat.global =
-     wl_global_create(cdata->wl.disp, &wl_seat_interface, 4,
-                      cdata, _e_comp_wl_input_cb_bind_seat);
-   if (!cdata->seat.global)
+   e_comp->wl_comp_data->seat.global =
+     wl_global_create(e_comp->wl_comp_data->wl.disp, &wl_seat_interface, 4,
+                      e_comp->wl_comp_data, _e_comp_wl_input_cb_bind_seat);
+   if (!e_comp->wl_comp_data->seat.global)
      {
         ERR("Could not create global for seat: %m");
         return EINA_FALSE;
      }
 
-   wl_array_init(&cdata->kbd.keys);
+   wl_array_init(&e_comp->wl_comp_data->kbd.keys);
 
    return EINA_TRUE;
 }
@@ -438,41 +407,38 @@ EINTERN void
 e_comp_wl_input_shutdown(void)
 {
    struct wl_resource *res;
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
 
    /* destroy pointer resources */
-   EINA_LIST_FREE(cdata->ptr.resources, res)
+   EINA_LIST_FREE(e_comp->wl_comp_data->ptr.resources, res)
      wl_resource_destroy(res);
 
    /* destroy keyboard resources */
-   EINA_LIST_FREE(cdata->kbd.resources, res)
+   EINA_LIST_FREE(e_comp->wl_comp_data->kbd.resources, res)
      wl_resource_destroy(res);
 
    /* destroy touch resources */
-   EINA_LIST_FREE(cdata->touch.resources, res)
+   EINA_LIST_FREE(e_comp->wl_comp_data->touch.resources, res)
      wl_resource_destroy(res);
 
-   /* destroy cdata->kbd.keys array */
-   wl_array_release(&cdata->kbd.keys);
+   /* destroy e_comp->wl_comp_data->kbd.keys array */
+   wl_array_release(&e_comp->wl_comp_data->kbd.keys);
 
    /* unreference any existing keymap */
-   if (cdata->xkb.keymap) xkb_map_unref(cdata->xkb.keymap);
+   if (e_comp->wl_comp_data->xkb.keymap) 
xkb_map_unref(e_comp->wl_comp_data->xkb.keymap);
 
    /* unmap any existing keyboard area */
-   if (cdata->xkb.area) munmap(cdata->xkb.area, cdata->xkb.size);
-   if (cdata->xkb.fd >= 0) close(cdata->xkb.fd);
+   if (e_comp->wl_comp_data->xkb.area) munmap(e_comp->wl_comp_data->xkb.area, 
e_comp->wl_comp_data->xkb.size);
+   if (e_comp->wl_comp_data->xkb.fd >= 0) close(e_comp->wl_comp_data->xkb.fd);
 
    /* unreference any existing keyboard state */
-   if (cdata->xkb.state) xkb_state_unref(cdata->xkb.state);
+   if (e_comp->wl_comp_data->xkb.state) 
xkb_state_unref(e_comp->wl_comp_data->xkb.state);
 
    /* unreference any existing context */
-   if (cdata->xkb.context) xkb_context_unref(cdata->xkb.context);
+   if (e_comp->wl_comp_data->xkb.context) 
xkb_context_unref(e_comp->wl_comp_data->xkb.context);
 
    /* destroy the global seat resource */
-   if (cdata->seat.global) wl_global_destroy(cdata->seat.global);
-   cdata->seat.global = NULL;
+   if (e_comp->wl_comp_data->seat.global) 
wl_global_destroy(e_comp->wl_comp_data->seat.global);
+   e_comp->wl_comp_data->seat.global = NULL;
 }
 
 EINTERN Eina_Bool
@@ -492,18 +458,14 @@ e_comp_wl_input_keyboard_check(struct wl_resource *res)
 EINTERN void
 e_comp_wl_input_keyboard_modifiers_serialize(void)
 {
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
-
-   cdata->kbd.mod_depressed =
-     xkb_state_serialize_mods(cdata->xkb.state, XKB_STATE_DEPRESSED);
-   cdata->kbd.mod_latched =
-     xkb_state_serialize_mods(cdata->xkb.state, XKB_STATE_MODS_LATCHED);
-   cdata->kbd.mod_locked =
-     xkb_state_serialize_mods(cdata->xkb.state, XKB_STATE_MODS_LOCKED);
-   cdata->kbd.mod_group =
-     xkb_state_serialize_layout(cdata->xkb.state, XKB_STATE_LAYOUT_EFFECTIVE);
+   e_comp->wl_comp_data->kbd.mod_depressed =
+     xkb_state_serialize_mods(e_comp->wl_comp_data->xkb.state, 
XKB_STATE_DEPRESSED);
+   e_comp->wl_comp_data->kbd.mod_latched =
+     xkb_state_serialize_mods(e_comp->wl_comp_data->xkb.state, 
XKB_STATE_MODS_LATCHED);
+   e_comp->wl_comp_data->kbd.mod_locked =
+     xkb_state_serialize_mods(e_comp->wl_comp_data->xkb.state, 
XKB_STATE_MODS_LOCKED);
+   e_comp->wl_comp_data->kbd.mod_group =
+     xkb_state_serialize_layout(e_comp->wl_comp_data->xkb.state, 
XKB_STATE_LAYOUT_EFFECTIVE);
 }
 
 EINTERN void
@@ -512,36 +474,32 @@ e_comp_wl_input_keyboard_modifiers_update(void)
    uint32_t serial;
    struct wl_resource *res;
    Eina_List *l;
-   E_Comp_Data *cdata;
 
-   cdata = e_comp->wl_comp_data;
    e_comp_wl_input_keyboard_modifiers_serialize();
 
-   if (!eina_list_count(cdata->kbd.resources)) return;
+   if (!eina_list_count(e_comp->wl_comp_data->kbd.resources)) return;
 
-   serial = wl_display_next_serial(cdata->wl.disp);
-   EINA_LIST_FOREACH(cdata->kbd.resources, l, res)
+   serial = wl_display_next_serial(e_comp->wl_comp_data->wl.disp);
+   EINA_LIST_FOREACH(e_comp->wl_comp_data->kbd.resources, l, res)
      wl_keyboard_send_modifiers(res, serial,
-                                cdata->kbd.mod_depressed,
-                                cdata->kbd.mod_latched,
-                                cdata->kbd.mod_locked,
-                                cdata->kbd.mod_group);
+                                e_comp->wl_comp_data->kbd.mod_depressed,
+                                e_comp->wl_comp_data->kbd.mod_latched,
+                                e_comp->wl_comp_data->kbd.mod_locked,
+                                e_comp->wl_comp_data->kbd.mod_group);
 }
 
 EINTERN void
 e_comp_wl_input_keyboard_state_update(uint32_t keycode, Eina_Bool pressed)
 {
    enum xkb_key_direction dir;
-   E_Comp_Data *cdata;
 
-   cdata = e_comp->wl_comp_data;
-   if (!cdata->xkb.state) return;
+   if (!e_comp->wl_comp_data->xkb.state) return;
 
    if (pressed) dir = XKB_KEY_DOWN;
    else dir = XKB_KEY_UP;
 
-   cdata->kbd.mod_changed =
-     xkb_state_update_key(cdata->xkb.state, keycode + 8, dir);
+   e_comp->wl_comp_data->kbd.mod_changed =
+     xkb_state_update_key(e_comp->wl_comp_data->xkb.state, keycode + 8, dir);
 }
 
 E_API void
@@ -577,9 +535,6 @@ e_comp_wl_input_keymap_set(const char *rules, const char 
*model, const char *lay
 {
    struct xkb_keymap *keymap;
    struct xkb_rule_names names;
-   E_Comp_Data *cdata;
-
-   cdata = e_comp->wl_comp_data;
 
    /* DBG("COMP_WL: Keymap Set: %s %s %s", rules, model, layout); */
 
@@ -590,13 +545,13 @@ e_comp_wl_input_keymap_set(const char *rules, const char 
*model, const char *lay
    if (layout) names.layout = strdup(layout);
 
    /* unreference any existing context */
-   if (cdata->xkb.context) xkb_context_unref(cdata->xkb.context);
+   if (e_comp->wl_comp_data->xkb.context) 
xkb_context_unref(e_comp->wl_comp_data->xkb.context);
 
    /* create a new xkb context */
-   cdata->xkb.context = xkb_context_new(0);
+   e_comp->wl_comp_data->xkb.context = xkb_context_new(0);
 
    /* fetch new keymap based on names */
-   keymap = xkb_map_new_from_names(cdata->xkb.context, &names, 0);
+   keymap = xkb_map_new_from_names(e_comp->wl_comp_data->xkb.context, &names, 
0);
 
    /* update compositor keymap */
    _e_comp_wl_input_keymap_update(keymap);
diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index fa3a4a1..caa264e 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -4871,7 +4871,7 @@ _e_comp_x_setup(Ecore_X_Window root, int w, int h)
    if (!ecore_x_window_manage(root)) return EINA_FALSE;
 
    E_OBJECT_DEL_SET(e_comp, _e_comp_x_del);
-   e_comp->x_comp_data = E_NEW(E_Comp_Data, 1);
+   e_comp->x_comp_data = E_NEW(E_Comp_X_Data, 1);
    ecore_x_e_window_profile_supported_set(root, 
e_config->use_desktop_window_profile);
    e_comp->cm_selection = ecore_x_window_input_new(root, 0, 0, 1, 1);
    if (!e_comp->cm_selection) return EINA_FALSE;
diff --git a/src/modules/wl_desktop_shell/e_mod_main.c 
b/src/modules/wl_desktop_shell/e_mod_main.c
index d69aa60..43f03dd 100644
--- a/src/modules/wl_desktop_shell/e_mod_main.c
+++ b/src/modules/wl_desktop_shell/e_mod_main.c
@@ -143,7 +143,6 @@ static void
 _e_shell_surface_cb_move(struct wl_client *client EINA_UNUSED, struct 
wl_resource *resource, struct wl_resource *seat_resource EINA_UNUSED, uint32_t 
serial EINA_UNUSED)
 {
    E_Client *ec;
-   E_Comp_Data *cdata;
    E_Binding_Event_Mouse_Button ev;
 
    /* get the client for this resource */
@@ -157,8 +156,7 @@ _e_shell_surface_cb_move(struct wl_client *client 
EINA_UNUSED, struct wl_resourc
 
    if ((ec->maximized) || (ec->fullscreen)) return;
 
-   cdata = e_comp->wl_comp_data;
-   switch (cdata->ptr.button)
+   switch (e_comp->wl_comp_data->ptr.button)
      {
       case BTN_LEFT:
         ev.button = 1;
@@ -170,13 +168,13 @@ _e_shell_surface_cb_move(struct wl_client *client 
EINA_UNUSED, struct wl_resourc
         ev.button = 3;
         break;
       default:
-        ev.button = cdata->ptr.button;
+        ev.button = e_comp->wl_comp_data->ptr.button;
         break;
      }
 
    e_comp_object_frame_xy_unadjust(ec->frame,
-                                   wl_fixed_to_int(cdata->ptr.x),
-                                   wl_fixed_to_int(cdata->ptr.y),
+                                   
wl_fixed_to_int(e_comp->wl_comp_data->ptr.x),
+                                   
wl_fixed_to_int(e_comp->wl_comp_data->ptr.y),
                                    &ev.canvas.x, &ev.canvas.y);
 
    _e_shell_surface_mouse_down_helper(ec, &ev, EINA_TRUE);
@@ -186,7 +184,6 @@ static void
 _e_shell_surface_cb_resize(struct wl_client *client EINA_UNUSED, struct 
wl_resource *resource, struct wl_resource *seat_resource EINA_UNUSED, uint32_t 
serial EINA_UNUSED, uint32_t edges)
 {
    E_Client *ec;
-   E_Comp_Data *cdata;
    E_Binding_Event_Mouse_Button ev;
 
    /* get the client for this resource */
@@ -203,16 +200,14 @@ _e_shell_surface_cb_resize(struct wl_client *client 
EINA_UNUSED, struct wl_resou
 
    if ((ec->maximized) || (ec->fullscreen)) return;
 
-   cdata = e_comp->wl_comp_data;
-
    DBG("Comp Resize Edges Set: %d", edges);
 
-   cdata->resize.resource = resource;
-   cdata->resize.edges = edges;
-   cdata->ptr.grab_x = cdata->ptr.x - wl_fixed_from_int(ec->client.x);
-   cdata->ptr.grab_y = cdata->ptr.y - wl_fixed_from_int(ec->client.y);
+   e_comp->wl_comp_data->resize.resource = resource;
+   e_comp->wl_comp_data->resize.edges = edges;
+   e_comp->wl_comp_data->ptr.grab_x = e_comp->wl_comp_data->ptr.x - 
wl_fixed_from_int(ec->client.x);
+   e_comp->wl_comp_data->ptr.grab_y = e_comp->wl_comp_data->ptr.y - 
wl_fixed_from_int(ec->client.y);
 
-   switch (cdata->ptr.button)
+   switch (e_comp->wl_comp_data->ptr.button)
      {
       case BTN_LEFT:
         ev.button = 1;
@@ -224,13 +219,13 @@ _e_shell_surface_cb_resize(struct wl_client *client 
EINA_UNUSED, struct wl_resou
         ev.button = 3;
         break;
       default:
-        ev.button = cdata->ptr.button;
+        ev.button = e_comp->wl_comp_data->ptr.button;
         break;
      }
 
    e_comp_object_frame_xy_unadjust(ec->frame,
-                                   wl_fixed_to_int(cdata->ptr.x),
-                                   wl_fixed_to_int(cdata->ptr.y),
+                                   
wl_fixed_to_int(e_comp->wl_comp_data->ptr.x),
+                                   
wl_fixed_to_int(e_comp->wl_comp_data->ptr.y),
                                    &ev.canvas.x, &ev.canvas.y);
 
    _e_shell_surface_mouse_down_helper(ec, &ev, EINA_FALSE);
@@ -724,7 +719,6 @@ static void
 _e_xdg_shell_surface_cb_move(struct wl_client *client EINA_UNUSED, struct 
wl_resource *resource, struct wl_resource *seat_resource EINA_UNUSED, uint32_t 
serial EINA_UNUSED)
 {
    E_Client *ec;
-   E_Comp_Data *cdata;
    E_Binding_Event_Mouse_Button ev;
 
    /* get the client for this resource */
@@ -738,8 +732,7 @@ _e_xdg_shell_surface_cb_move(struct wl_client *client 
EINA_UNUSED, struct wl_res
 
    if ((ec->maximized) || (ec->fullscreen)) return;
 
-   cdata = e_comp->wl_comp_data;
-   switch (cdata->ptr.button)
+   switch (e_comp->wl_comp_data->ptr.button)
      {
       case BTN_LEFT:
         ev.button = 1;
@@ -751,13 +744,13 @@ _e_xdg_shell_surface_cb_move(struct wl_client *client 
EINA_UNUSED, struct wl_res
         ev.button = 3;
         break;
       default:
-        ev.button = cdata->ptr.button;
+        ev.button = e_comp->wl_comp_data->ptr.button;
         break;
      }
 
    e_comp_object_frame_xy_unadjust(ec->frame,
-                                   wl_fixed_to_int(cdata->ptr.x),
-                                   wl_fixed_to_int(cdata->ptr.y),
+                                   
wl_fixed_to_int(e_comp->wl_comp_data->ptr.x),
+                                   
wl_fixed_to_int(e_comp->wl_comp_data->ptr.y),
                                    &ev.canvas.x, &ev.canvas.y);
 
    _e_shell_surface_mouse_down_helper(ec, &ev, EINA_TRUE);
@@ -767,7 +760,6 @@ static void
 _e_xdg_shell_surface_cb_resize(struct wl_client *client EINA_UNUSED, struct 
wl_resource *resource, struct wl_resource *seat_resource EINA_UNUSED, uint32_t 
serial EINA_UNUSED, uint32_t edges)
 {
    E_Client *ec;
-   E_Comp_Data *cdata;
    E_Binding_Event_Mouse_Button ev;
 
    /* DBG("XDG_SHELL: Surface Resize: %d\tEdges: %d",  */
@@ -787,13 +779,12 @@ _e_xdg_shell_surface_cb_resize(struct wl_client *client 
EINA_UNUSED, struct wl_r
 
    if ((ec->maximized) || (ec->fullscreen)) return;
 
-   cdata = e_comp->wl_comp_data;
-   cdata->resize.resource = resource;
-   cdata->resize.edges = edges;
-   cdata->ptr.grab_x = cdata->ptr.x - wl_fixed_from_int(ec->client.x);
-   cdata->ptr.grab_y = cdata->ptr.y - wl_fixed_from_int(ec->client.y);
+   e_comp->wl_comp_data->resize.resource = resource;
+   e_comp->wl_comp_data->resize.edges = edges;
+   e_comp->wl_comp_data->ptr.grab_x = e_comp->wl_comp_data->ptr.x - 
wl_fixed_from_int(ec->client.x);
+   e_comp->wl_comp_data->ptr.grab_y = e_comp->wl_comp_data->ptr.y - 
wl_fixed_from_int(ec->client.y);
 
-   switch (cdata->ptr.button)
+   switch (e_comp->wl_comp_data->ptr.button)
      {
       case BTN_LEFT:
         ev.button = 1;
@@ -805,13 +796,13 @@ _e_xdg_shell_surface_cb_resize(struct wl_client *client 
EINA_UNUSED, struct wl_r
         ev.button = 3;
         break;
       default:
-        ev.button = cdata->ptr.button;
+        ev.button = e_comp->wl_comp_data->ptr.button;
         break;
      }
 
    e_comp_object_frame_xy_unadjust(ec->frame,
-                                   wl_fixed_to_int(cdata->ptr.x),
-                                   wl_fixed_to_int(cdata->ptr.y),
+                                   
wl_fixed_to_int(e_comp->wl_comp_data->ptr.x),
+                                   
wl_fixed_to_int(e_comp->wl_comp_data->ptr.y),
                                    &ev.canvas.x, &ev.canvas.y);
 
    _e_shell_surface_mouse_down_helper(ec, &ev, EINA_FALSE);
@@ -1364,8 +1355,6 @@ E_API E_Module_Api e_modapi = { E_MODULE_API_VERSION, 
"Wl_Desktop_Shell" };
 E_API void *
 e_modapi_init(E_Module *m)
 {
-   E_Comp_Data *cdata;
-
    /* try to get the current compositor */
    if (!e_comp) return NULL;
 
@@ -1373,19 +1362,19 @@ e_modapi_init(E_Module *m)
    /* if (e_comp->comp_type != E_PIXMAP_TYPE_WL) return NULL; */
 
    /* try to get the compositor data */
-   if (!(cdata = e_comp->wl_comp_data)) return NULL;
+   if (!e_comp->wl_comp_data) return NULL;
 
    /* try to create global shell interface */
-   if (!wl_global_create(cdata->wl.disp, &wl_shell_interface, 1,
-                         cdata, _e_shell_cb_bind))
+   if (!wl_global_create(e_comp->wl_comp_data->wl.disp, &wl_shell_interface, 1,
+                         e_comp->wl_comp_data, _e_shell_cb_bind))
      {
         ERR("Could not create shell global: %m");
         return NULL;
      }
 
    /* try to create global xdg_shell interface */
-   if (!wl_global_create(cdata->wl.disp, &xdg_shell_interface, 1,
-                         cdata, _e_xdg_shell_cb_bind))
+   if (!wl_global_create(e_comp->wl_comp_data->wl.disp, &xdg_shell_interface, 
1,
+                         e_comp->wl_comp_data, _e_xdg_shell_cb_bind))
      {
         ERR("Could not create xdg_shell global: %m");
         return NULL;

-- 


Reply via email to