diff --git a/src/bin/e_menu.c b/src/bin/e_menu.c index 1e3731229..b291bb76d 100644 --- a/src/bin/e_menu.c +++ b/src/bin/e_menu.c @@ -1134,13 +1134,16 @@ e_menu_idler_before(void) if (((m->cur.x) != (m->prev.x)) || ((m->cur.y) != (m->prev.y))) { - int x, y, w, h; + if (!m->parent_item) + { + int x, y, w, h; - e_zone_useful_geometry_get(m->zone, &x, &y, &w, &h); - if ((m->cur.x + m->cur.w) > (x + w)) - m->cur.x = x + w - m->cur.w; - if ((m->cur.y + m->cur.h) > (y + h)) - m->cur.y = y + h - m->cur.h; + e_zone_useful_geometry_get(m->zone, &x, &y, &w, &h); + if ((m->cur.x + m->cur.w) > (x + w)) + m->cur.x = x + w - m->cur.w; + if ((m->cur.y + m->cur.h) > (y + h)) + m->cur.y = y + h - m->cur.h; + } m->prev.x = m->cur.x; m->prev.y = m->cur.y; ecore_evas_move(m->ecore_evas, m->cur.x, m->cur.y);