{
E_Client *ec = NULL;
E_Client *ec_top_lock = NULL;
+ E_Zone *zone;
int x, y, w, h;
if (!ec_lock) return NULL;
E_CLIENT_REVERSE_FOREACH(ec)
{
if (e_object_is_del(E_OBJECT(ec))) continue;
+ zone = e_comp_zone_find_by_ec(ec);
+ if (!zone) continue;
if ((ec != ec_except) &&
(e_policy_client_is_lockscreen(ec)))
{
e_client_geometry_get(ec, &x, &y, &w, &h);
if (E_CONTAINS(x, y, w, h,
- ec->zone->x, ec->zone->y, ec->zone->w, ec->zone->h))
+ zone->x, zone->y, zone->w, zone->h))
{
ec_top_lock = ec;
break;
E_Layer lock_layer = e_policy_system_info.lockscreen.ec->layer;
Eina_Bool passed_new_lock = EINA_FALSE;
int x, y, w, h;
+ E_Zone *zone;
E_CLIENT_REVERSE_FOREACH(ec)
{
if (e_object_is_del(E_OBJECT(ec))) continue;
+ zone = e_comp_zone_find_by_ec(ec);
+ if (!zone) continue;
if (ec == new_lock)
{
passed_new_lock = EINA_TRUE;
(ec->visibility.opaque == 1)))
{
e_client_geometry_get(ec, &x, &y, &w, &h);
- if (E_CONTAINS(x, y, w, h, ec->zone->x, ec->zone->y, ec->zone->w, ec->zone->h))
+ if (E_CONTAINS(x, y, w, h, zone->x, zone->y, zone->w, zone->h))
{
break;
}