xdg-desktop-portal-gnome 44 causes delays in non-GNOME desktops
Test Case
- Install xdg-desktop-portal-gnome 44.beta (I believe 44.rc isn't any different)
- Log out, then log into a non-GNOME desktop like MATE
- Open an app that uses portal. In my case, I used the Firefox Snap.
- From the app, open the Open dialog
What Happens
Nothing for 2 minutes or however long the service timeout takes. After that initial timeout, the filechooser dialogs open like normal.
Other Info
This is a regression compared to xdg-desktop-portal-gnome 43.
My understanding is that xdg-desktop-portal currently attempts to load the portal backends in alphabetical order. By coincidence, this happens to do what we would expect (gnome, then gtk, kde, lxqt, wlr).
It is expected that systems with multiple desktop environments installed will have multiple portal backends installed. These backends should work in any of the desktops. (For instance, maybe MATE users want to have the GTK 4.10 icon view filechooser for their Flatpak/Snap web browser.)
I tried reporting this issue as #71 (closed) but I think this issue is now more clear about the issue.
Ideas
xdg-desktop-portal-gnome should not block while waiting for a response from a mutter service that isn't running (or might not even be installed).
If that dependency is essential, maybe there is some way we can have xdg-desktop-portal-gnome only run in GNOME sessions and fallback to another backend (xdg-desktop-portal-gtk, etc.) in non-GNOME sessions?