}
if (!ec->placed)
{
- if (ec->parent)
- {
- if (ec->parent->zone != e_zone_current_get())
- {
- e_client_zone_set(ec, ec->parent->zone);
- e_zone_useful_geometry_get(zone, &zx, &zy, &zw, &zh);
- }
-
- if (evas_object_visible_get(ec->parent->frame))
- {
- e_client_geometry_get(ec, &ex, &ey, &ew, &eh);
- e_client_geometry_get(ec->parent, &px, &py, &pw, &ph);
-
- if ((!E_CONTAINS(ex, ey, ew, eh, zx, zy, zw, zh)) ||
- (!E_CONTAINS(ex, ey, ew, eh, px, py, pw, ph)))
- {
- int x, y;
-
- e_comp_object_util_center_pos_get(ec->parent->frame, &x, &y);
- if (E_CONTAINS(x, y, ew, eh, zx, zy, zw, zh))
- {
- e_client_pos_set(ec, x, y);
- }
- else
- {
- x = px;
- y = py;
-
- if (!E_CONTAINS(x, y, ew, eh, zx, zy, zw, zh))
- {
- e_comp_object_util_center_on(ec->frame,
- ec->parent->frame);
- }
- }
- ec->changes.pos = 1;
- }
- }
- else
- {
- e_comp_object_util_center_on(ec->frame,
- ec->parent->frame);
- ec->changes.pos = 1;
- }
- ec->placed = 1;
- ec->pre_cb.x = ec->x; ec->pre_cb.y = ec->y;
- }
- else if (ec->dialog)
+ if (ec->dialog)
{
tx = zx + ((zw - ec->w) / 2);
ty = zy + ((zh - ec->h) / 2);