Closed Bug 1490186 Opened Last year Closed Last year

Firefox does not use xdg-desktop-portal for file selection dialogs

Categories

(Core :: Widget: Gtk, defect)

62 Branch
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla64
Tracking Status
firefox64 --- fixed

People

(Reporter: moosingin3space, Assigned: moosingin3space)

References

(Depends on 1 open bug)

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0
Build ID: 20180904093908

Steps to reproduce:

Open a file selection dialog in Firefox.


Actual results:

Firefox opens a file selection box based on GtkFileChooserDialog


Expected results:

Firefox should open a file selection box based on GtkFileChooserNative. This makes use of xdg-desktop-portal, which will better prepare Firefox for eventual flatpak sandboxing, as well as enable Firefox to use native file chooser dialogs on KDE platforms.
This patch makes Firefox's GTK3 platform support use GtkFileChooserNative when
available. GtkFileChooserNative transparently uses the desktop portals
interface, which enables Firefox to use native Qt file dialogs on KDE, or
sandboxed file dialogs in Flatpak.
The patch was submitted here: https://phabricator.services.mozilla.com/D7033
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: checkin-needed
Pushed by apavel@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/8ed536957a4b
Add GtkFileChooserNative support to Firefox. r=stransky
Keywords: checkin-needed
Oops, did not try compiling with GTK < 3.20. Any way I can submit it to taskcluster?
Flags: needinfo?(moosingin3space)
(In reply to Nathan Moos from comment #5)
> Oops, did not try compiling with GTK < 3.20. Any way I can submit it to
> taskcluster?

I use "./mach try -b do -p linux,linux64,linux64-pgo,linux64-asan,linux64-valgrind -u all -t none" which makes try run from the latest commits.
I don't think I have permissions to use the Try server. Is there any way to re-open my diff in Phabricator?
(In reply to Nathan Moos from comment #7)
> I don't think I have permissions to use the Try server. Is there any way to
> re-open my diff in Phabricator?

I think you can submit another patch, can't you? Also I can send your patch to try if you don't have such permission - just let me know when it's ready.
I reopened the phabricator request, you should be able to send another revision.
Assignee: nobody → moosingin3space
Try looks good.
Keywords: checkin-needed
This needs a review before it can be landed.

Nathan Moos: Could you please ask for a review?
Flags: needinfo?(moosingin3space)
Keywords: checkin-needed
Accepted, Thanks.
Flags: needinfo?(moosingin3space)
Keywords: checkin-needed
Pushed by nerli@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/2fd7d3ae070e
Add GtkFileChooserNative support to Firefox. r=stransky
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/2fd7d3ae070e
Status: NEW → RESOLVED
Closed: Last year
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Is it possible to apply this patch to Thunderbird? I'm unfamiliar with how much code is shared between the two codebases.
AFAIK recent thunderbird is based on Firefox 60 ESR - you'd need to request to backport this to ESR line which is something I don't recommend.
I'd rather not backport it, but does Thunderbird use the platform layer from mozilla-central? As in, would the next Thunderbird release be able to use this patch?
(In reply to Nathan Moos from comment #18)
> I'd rather not backport it, but does Thunderbird use the platform layer from
> mozilla-central? As in, would the next Thunderbird release be able to use
> this patch?

Yes, Thunderbird 68 and later should contain this patch as it's usually based on equal ESR Firefox version (68 in this case).
Duplicate of this bug: 1466360
Depends on: 1517074

A side effect of this GtkFileChooserXXX change has been detected with Plasma 5.12.7 / KDE frameworks 5.44.0 / Qt 5.9.5 (Kubuntu 18.04.1).
Issue raised here: https://bugzilla.mozilla.org/show_bug.cgi?id=1516491

Depends on: 1516491
You need to log in before you can comment on or make changes to this bug.