Transient "Database Migration" dialog can get behind the main window and block interaction
Upon upgrading my Gajim flatpak package to 2.4.0, I was presented with a database migration dialog.
At some point, either because I clicked somewhere else in the gajim window, or focused out to another app, or something else, that dialog was put in the background behind the main window… and I'm guessing it is transient but not modal, because the window manager (GNOME Shell 48.x on Wayland) did not maintain it always on top of the main window.
As a result, I was not able to interact with any of the app's main window widgets:
Gajim_database_migration_dialog_is_not_modal
…until I used GNOME Shell's "activities" overview window manager mode to see the sub dialog that had been mistakenly put behind the scenes.
This is just a hunch, but I'm guessing that either that dialog is not modal, or not correctly set as transient for the main window, or something like that. It would need to be both so that the window manager can ensure it never falls behind in a blocking way like that. The strict always-on-top modal behavior is something I would expect in this particular situation because that migration is apparently mandatory for the rest of the app to be ready to function.