вот, наваял что-то через winapi...
возникают такие проблемы:
1. как отслеживать открытие/закрытие новых окон?
не придумал ничего лучше чем зарядить сканирование в infolog.setTimeOut() с переодичностью раз в секунду... (не реализовал еще
)
2. свернутым окнам фокус передается, но они не разворачиваются
в винапи есть метод maximize... он разворачивает на весь экран... ничего похожего на restore не нашел
3. как ни старался, не получилось сделать красиво, как в винде
4. отображаются скрытые окна.
попутно выяснилось что окна infologа, хелпа, итп, никогда не закрываются, а только хайдятся
про FormRun:
идеальное решение мне видится как гибрид этих двух подходов.
имея FormRun, можно корректно закрывать формы.