While working on
VWR-6199 I discovered a few bugs in the code for the spillover menus. It is not a problem in the current viewer unless the window is made very short. To see the problem, reduce the window height until it is only about an inch tall, then click on the Advanced menu. The viewer will appear to hang, but it's really just thrashing about trying to compose the spillover menus.
The crux of the problem is that even after it determines that it needs a spillover, it continues to add menu items to the original menu. That menu is full, of course, so it cleans up the spillover menu, adds the item, then recreates the spillover, now with two items. If it requires more than one spillover menu to fit (as it does when the viewer window is shortened), then it really goes crazy cleaning up and recreating the spillover menus.
If you resize the window while the menu is open, you can shuffle the items in the menu as its constraints keep changing.
The patch fixes this problem as well as one in updateParent which doesn't seem to be causing any trouble at the moment, but which was problematic for VWR-6199. The spillover menu always has its parent set on creation, so branch menu items there were treated differently that those not in the spillover.