значит я к сожалению не могу никак описать точно проект. я не хотела лить много воды.
попробую написать простыню. может я что-то упускаю. проект был сделан на дельфи хе7 с фаер манки и лив билдинг. Потом его перетащили на дельфи 10.2. На главной форме есть пара диалогов на открытие и сохранение файла - они лежат как компоненты на форме и с ними проблемы нет. Но одна из функций сохранения файла вызывается из стороннего юнита ( без формы, не датамодуль), и поскольку нужна папка там использовалась функция SelectDirectory. После того как мы перетащили проект на 10-ю версию этот диалог стал уходить за форму если открыть поверх другое приложение. ( если форма не на все окно и диалог торчит из под нее - то он спокойно вытаскивается. а вот если он полностью за формой то все. при аль табе - его в списке окошек нет, а главная форма остается сверху.) К тому же вид диалога многих не устраивал - он не удобный. Решили заменить. Из всего что есть с выбором папки - взяли tFileOpendialog. ( аналога на фаер манки как я понимаю нет. или я не нашла) Поскольку юнит без формы - то диалог создается динамически. Вид диалога всех устроил, но проблема того что диалог уходит за форму и его сложно выцепить остался. Первоначально в tFileOpendialog.create стоял nil. Мы решили что это из за того что owner = nil немного переработали вызов, чтобы он шел с главной формы. Поскольку проект FMX, физически компонент на форму я кинуть не могу - виста компонентов нет на панели компонентов. так что диалог все еще создается динамически, но owner = mainform. к сожалению это ничего не решило. Я пробовала переходить по f7 и в процедуре диалог.execute проверяется параметр, который передается None (я не помню точно - что-то типа modalpopup..) в результате чего окну диалога присваивается не хэндл главной формы с которой он вызывается а хэндл приложения. У меня ощущение что главная закавыка что диалог вызывается динамически, а не лежит компонентом на форме.
возможно стоит попробовать с дата модулем.