_e_client_cb_evas_restack(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
{
E_Client *ec = data;
+ E_Comp_Wl_Client_Data *child_cdata = NULL;
if (e_object_is_del(data)) return;
if (ec->layer_block) return;
/* Don't stack vkbd if parent is splitted */
if (child->vkbd.vkbd && ec->layout.splited) continue;
- if (child->comp_data && !child->comp_data->mapped)
+ child_cdata = e_client_cdata_get(child);
+ if (child_cdata && !child_cdata->mapped)
{
ELOGF("COMP", "STACK CHANGE CHILD. BUT not mapped. skip. child(ec:%p, win:0x%08zx)", ec, child, e_client_util_win_get(child));
continue;
{
if (!ec) return;
- E_Comp_Wl_Client_Data *cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
+ E_Comp_Wl_Client_Data *cdata = e_client_cdata_get(ec);
Eina_List *l, *ll;
E_Comp_Wl_Aux_Hint *hint;
static void
_e_client_transform_sub_apply(E_Client *ec, E_Client *epc, double zoom)
{
- E_Comp_Wl_Client_Data *cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
+ E_Comp_Wl_Client_Data *cdata = e_client_cdata_get(ec);
E_Comp_Wl_Subsurf_Data *sdata = cdata->sub.data;
E_Client *subc;
Eina_List *l;
if (ec->visibility.skip) continue;
if (ec->is_cursor) continue;
/* if ec is subsurface, skip this */
- cdata = (E_Comp_Wl_Client_Data *)ec->comp_data;
+ cdata = e_client_cdata_get(ec);
if (cdata && cdata->sub.data) continue;
if ((!ec->first_mapped) &&
(e_comp_object_content_type_get(ec->frame) == E_COMP_OBJECT_CONTENT_TYPE_INT_IMAGE)) continue;
int w = 0;
int h = 0;
Eina_Bool check = EINA_FALSE;
+ E_Comp_Wl_Client_Data *cdata;
if (!ec) return EINA_FALSE;
if (ec->frame)
evas_object_geometry_get(ec->frame, 0, 0, &w, &h);
+ cdata = e_client_cdata_get(ec);
if ((ec->transform_core.transform_list) &&
- (ec->comp_data && ec->comp_data->sub.below_obj))
+ (cdata && cdata->sub.below_obj))
{
- const Evas_Map *map_ = evas_object_map_get(ec->comp_data->sub.below_obj);
+ const Evas_Map *map_ = evas_object_map_get(cdata->sub.below_obj);
if (!map_)
check = EINA_TRUE;
}
}
// check parent matrix change
- if (ec->comp_data)
+ if (cdata)
{
- E_Comp_Wl_Client_Data *cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
-
if (cdata->sub.data)
{
E_Client *parent = cdata->sub.data->parent;
E_Comp_Wl_Client_Data *cdata;
if (!ec) return;
- if (!ec->comp_data) return;
- cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
+ cdata = e_client_cdata_get(ec);
+ if (!cdata) return;
if (cdata->sub.below_obj)
_e_client_transform_core_vertices_apply(ec, cdata->sub.below_obj, vertices, NULL);
E_Comp_Wl_Client_Data *cdata;
if (!ec) return;
- if (!ec->comp_data) return;
- cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
+ cdata = e_client_cdata_get(ec);
+ if (!cdata) return;
if (cdata->sub.below_obj)
_e_client_transform_core_vertices_apply_with_zoom(ec, cdata->sub.below_obj, vertices, NULL, zoomx, zoomy, cx, cy);
// ignored client but needing eval (aux hint) such as remote surfaces
if (ec->changed)
{
- if (ec->comp_data && ec->comp_data->first_commit)
+ E_Comp_Wl_Client_Data *cdata = e_client_cdata_get(ec);
+ if (cdata && cdata->first_commit)
_e_client_aux_hint_eval(ec);
}
continue;
E_OBJECT_CHECK(ec);
E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE);
+ E_Comp_Wl_Client_Data *cdata = e_client_cdata_get(ec);
+
ELOGF("TZVIS", "ICONIFY |iconic:%d |argb:%d |not_raise:%d |by_client:%d",
ec, ec->iconic, ec->argb, (unsigned int)ec->exp_iconify.not_raise,
ec->exp_iconify.by_client);
if (ec->shading || ec->iconic) return;
if (ec->exp_iconify.skip_iconify && !ec->exp_iconify.by_client) return;
if (ec->exp_iconify.skip_by_remote) return;
- if (!ec->comp_data || !ec->comp_data->mapped)
+ if (!cdata || !cdata->mapped)
{
if (!ec->exp_iconify.by_client)
{
E_OBJECT_CHECK(ec);
E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE);
+ E_Comp_Wl_Client_Data *cdata = e_client_cdata_get(ec);
+
ELOGF("TZVIS", "UNICONIFY|iconic:%d |argb:%d |not_raise:%d |by_client:%d |mapped:%d",
ec, ec->iconic, ec->argb, (unsigned int)ec->exp_iconify.not_raise,
ec->exp_iconify.by_client,
- ec->comp_data ? ec->comp_data->mapped : 0);
+ cdata ? cdata->mapped : 0);
if (!ec->zone) return;
if (ec->shading || (!ec->iconic)) return;
if (ec->pixmap && e_pixmap_usable_get(ec->pixmap))
{
- if (ec->comp_data && ec->comp_data->mapped)
+ if (cdata && cdata->mapped)
{
ELOGF("TZVIS", "UNICONIFY|object show", ec);
evas_object_show(ec->frame);
e_client_transform_apply(E_Client *ec, double angle, double zoom, int cx, int cy)
{
Evas_Map *map;
- E_Comp_Wl_Client_Data *cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
+ E_Comp_Wl_Client_Data *cdata = e_client_cdata_get(ec);
E_Client *subc;
Eina_List *l;
E_API void
e_client_transform_clear(E_Client *ec)
{
- E_Comp_Wl_Client_Data *cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
+ E_Comp_Wl_Client_Data *cdata = e_client_cdata_get(ec);
E_Client *subc;
Eina_List *l;
e_client_base_output_resolution_update(E_Client *ec)
{
E_Appinfo *eai = NULL;
+ E_Comp_Wl_Client_Data *cdata;
int configured_width, configured_height;
int width, height;
* Transform for subsurface will be applied when toplevel surface does by
* implementation of e_client_transform_core.
*/
- if (ec->comp_data->sub.data) return EINA_FALSE;
+ cdata = e_client_cdata_get(ec);
+ if (cdata && cdata->sub.data) return EINA_FALSE;
configured_width = e_config->configured_output_resolution.w;
configured_height = e_config->configured_output_resolution.h;
E_Client *subc;
Eina_List *l, *ll;
Eina_Bool res = EINA_TRUE;
+ E_Comp_Wl_Client_Data *cdata = e_client_cdata_get(ec);
- if ((e_object_is_del(E_OBJECT(ec))) || (!ec->comp_data))
+ if ((e_object_is_del(E_OBJECT(ec))) || (!cdata))
return res;
- EINA_LIST_FOREACH_SAFE(ec->comp_data->sub.below_list, l, ll, subc)
+ EINA_LIST_FOREACH_SAFE(cdata->sub.below_list, l, ll, subc)
{
res = _e_client_surface_tree_foreach_helper(subc, func, data);
if (!res)
res = func(data, ec);
if (res)
{
- EINA_LIST_FOREACH_SAFE(ec->comp_data->sub.list, l, ll, subc)
+ EINA_LIST_FOREACH_SAFE(cdata->sub.list, l, ll, subc)
{
res = _e_client_surface_tree_foreach_helper(subc,
func,