The problem:
- You have a child window (opened with TopWindow::Open(this)) with TopMost(true, true) set.
- The parent window opens a Prompt (PromptOK etc)
- If the TopMost child window is in the center of the parent (where the Prompt will appear) then the prompt dialog is invisible, hidden behind the child window.
- Because the prompt is run with RunAppModal it is not possible to move the child window to reveal it, effectively locking up the application. You can hit return/escape to clear it but that's not ideal as the user may not even realise a prompt has been opened.
This is only a fatal problem on Windows, as on X11 the WM still allows you to move windows even with an AppModal dialog running.
My fix:
Setting TopMost on the prompt dialog before it's opened seems to fix it.
Test package attached. Tested against the svn version (2008.1 is actaully worse since you can't even use return/escape to clear the prompt)
Well, this is one little nast problem...
The problem is that TopMost in Prompt in all cases does not sound too good from user perspective. IMO, user still wants to see some other app else when Prompt appears.