diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c index 4a9f69c1c..3f850c9b3 100644 --- a/src/bin/e_comp_object.c +++ b/src/bin/e_comp_object.c @@ -2927,12 +2927,18 @@ e_comp_object_util_zone_get(Evas_Object *obj) zone = cw->ec->zone; if (!zone) { - int x, y; + int x, y, w, h; if (e_win_client_get(obj)) return e_win_client_get(obj)->zone; - evas_object_geometry_get(obj, &x, &y, NULL, NULL); + evas_object_geometry_get(obj, &x, &y, &w, &h); zone = e_comp_zone_xy_get(x, y); + if (zone) return zone; + zone = e_comp_zone_xy_get(x + w, y + h); + if (zone) return zone; + zone = e_comp_zone_xy_get(x + w, y); + if (zone) return zone; + zone = e_comp_zone_xy_get(x, y + h); } return zone; }