If you get an Ellipse out of the parts bin, put it on the desktop, and try to get a halo, you don't see the halo till you move the morph.
Ah, yes, I understand what's happening now. I didn't read the comment about #addedOrRemovedSubmorph: carefully - it's not a notification at all; it's an invalidation message. Ho hum... So the notifications (#addedMorph: and #removedMorph:) really shouldn't do any invalidations at all because those have to be handled separately. Guess I'll have to revive #addedOrRemovedSubmorph: again.
BTW, this _still_ doesn't explain why the menus were screwed up. I'm pretty certain there is some deeper bug in this area but I think I'll work around that by simply re-introducing the same invalidation semantics.
Cheers, - Andreas