{
#if 0 // we can't win - we just flip back and forth, so let it go off and use scrolling
/* menu is larger than screen */
- if (parent_item_bottom > (m->zone->h / 2))
+ if (parent_item_bottom > (m->zone->y + (m->zone->h / 2)))
/* more is shown if menu goes up */
- m->cur.y = (parent_item_bottom - (m->container_h + 1));
+ m->cur.y = (parent_item_bottom - (m->zone->h + 1));
else
/* more is shown if menu goes down */
- m->cur.y = parent_item_bottom - m->container_y;
+ m->cur.y = parent_item_bottom - m->zone->y;
#endif
}
else
{
/* menu is smaller than screen */
- if (((parent_item_bottom + m->cur.h) > m->zone->h) &&
- (parent_item_bottom > (m->zone->h / 2)))
+ if (((parent_item_bottom + m->cur.h) > (m->zone->y + m->zone->h)) &&
+ (parent_item_bottom > (m->zone->y + (m->zone->h / 2))))
/* menu is partially out of screen and more is shown if menu goes up */
m->cur.y = parent_item_bottom - m->cur.h + m->parent_item->h;
else