> Because your model of what happens is incorrect. The menu is
> processed in its entirety by the Windows menu-handling API, and Emacs
> never sees anything until the menu is popped down.
In Lennart's example there are _two_ menus. The one popped by
`temp-test1' and the other popped by `temp-test2'. In between he does
(insert ";; SOME STRING 2\n")
which should get displayed before popping up the second menu. Lennart's
problem is that `sit-for' doesn't redisplay because `input-pending-p'
returns non-nil.