On Tue, 6 Jan 2026 16:02:49 GMT, Frederic Thevenet <[email protected]> wrote:
> Flatpak is a framework for distributing desktop applications across various > Linux distributions, that runs each application into its own sandbox to limit > its access to the host environment to the strict minimum, including access to > the network, HW devices or the host file system. > To do so, it provides a specific set of APIs, known as "XDG Desktop Portal " > that the guest application must be aware of to take full advantage of ; which > is not the case for Java/JavaFX based applications. > > Fortunately, some level of support for XDG Desktop Portal is baked into GTK3, > which JavaFX could easily take advantage of. > One such opportunity is replace explicit uses of GtkFileChooserDialog with > GtkFileChooserNative. > > GtkFileChooserNative is an abstraction of a dialog box suitable for use with > "File/Open" or "File/Save as" commands. By default, this just uses a > GtkFileChooserDialog to implement the actual dialog. However, on certain > platforms, such as Windows and macOS, the native platform file chooser is > used instead. > When the application is running in a sandboxed environment without direct > filesystem access (such as Flatpak), GtkFileChooserNative may call the proper > APIs (portals) to let the user choose a file and make it available to the > application. This works as expected. I will have a deeper look though, as there might be edge cases that I'm missing. Also, the comment above related to label/icon needs more investigation. ------------- PR Comment: https://git.openjdk.org/jfx/pull/2025#issuecomment-3723679903
