sdata->position.set = EINA_TRUE;
}
-static Eina_Bool
-_subsurface_sibling_check(E_Client *ec1, E_Client *ec2)
-{
- E_Client *parent, *sibling;
- Eina_List *l;
-
- parent = ec1->comp_data->sub.data->parent;
-
- EINA_LIST_FOREACH(parent->comp_data->sub.list_pending, l, sibling)
- {
- if ((sibling != ec1) && (sibling == ec2))
- return EINA_TRUE;
- }
-
- EINA_LIST_FOREACH(parent->comp_data->sub.below_list_pending, l, sibling)
- {
- if ((sibling != ec1) && (sibling == ec2))
- return EINA_TRUE;
- }
-
- return EINA_FALSE;
-}
-
static void
_e_comp_wl_subsurface_cb_place_above(struct wl_client *client EINA_UNUSED, struct wl_resource *resource, struct wl_resource *sibling_resource)
{
if (!(parent = ec->comp_data->sub.data->parent)) return;
if (e_object_is_del(E_OBJECT(parent)) || !parent->comp_data) return;
- if (!_subsurface_sibling_check(ec, ecs))
- {
- wl_resource_post_error(ec->comp_data->sub.data->resource,
- WL_SUBSURFACE_ERROR_BAD_SURFACE,
- "%s: wl_surface@%d is not a parent or sibling",
- "place_above", wl_resource_get_id(ecs->comp_data->surface));
- return;
- }
-
parent->comp_data->sub.list_pending =
eina_list_remove(parent->comp_data->sub.list_pending, ec);
if (!(parent = ec->comp_data->sub.data->parent)) return;
if (e_object_is_del(E_OBJECT(parent)) || !parent->comp_data) return;
- if (!_subsurface_sibling_check(ec, ecs))
- {
- wl_resource_post_error(ec->comp_data->sub.data->resource,
- WL_SUBSURFACE_ERROR_BAD_SURFACE,
- "%s: wl_surface@%d is not a parent or sibling",
- "place_below", wl_resource_get_id(ecs->comp_data->surface));
- return;
- }
-
parent->comp_data->sub.list_pending =
eina_list_remove(parent->comp_data->sub.list_pending, ec);