MB 80: Enable Mullvad Browser as a default browser
Merge Info
Related Issues
- tor-browser#xxxxx
- #80 (closed)
- tor-browser-build#41089 (closed)
Backporting
Timeline
-
Immediate: patchset needed as soon as possible -
Next Minor Stable Release: patchset that needs to be verified in nightly before backport -
Eventually: patchset that needs to be verified in alpha before backport -
No Backport (preferred): patchset for the next major stable
(Optional) Justification
-
Emergency security update: patchset fixes CVEs, 0-days, etc -
Critical bug-fix: patchset fixes a bug in core-functionality -
Consistency: patchset which would make development easier if it were in both the alpha and release branches; developer tools, build system changes, etc -
Sponsor required: patchset required for sponsor -
Localization: typos and other localization changes that should be also in the release branch -
Other: please explain
Merging
-
Merge to mullvad-browser
-!fixups
tomullvad-browser
-specific commits, new features, security backports -
Merge to base-browser
-!fixups
tobase-browser
-specific commits, new features to be shared withtor-browser
-
NOTE: if your changeset includes patches to both
base-browser
andmullvad-browser
please clearly label in the change description which commits should be cherry-picked tobase-browser
after merging
-
NOTE: if your changeset includes patches to both
Issue Tracking
-
Link resolved issues with appropriate Release Prep issue for changelog generation
Review
Request Reviewer
-
Request review from an applications developer depending on modified system: -
NOTE: if the MR modifies multiple areas, please
/cc
all the relevant reviewers (since gitlab only allows 1 reviewer) - accessibility : henry
- android : clairehurst, dan
- build system : boklm
- extensions : ma1
- firefox internals (XUL/JS/XPCOM) : ma1
- fonts : pierov
- frontend (implementation) : henry
- frontend (review) : donuts, richard
- localization : henry, pierov
- macos : clairehurst, dan
- nightly builds : boklm
- rebases/release-prep : dan, ma1, pierov, richard
- security : ma1
- signing : boklm, richard
- updater : pierov
- misc/other : pierov, richard
-
NOTE: if the MR modifies multiple areas, please
Change Description
The so long awaited MR to set MB as the default browser on Windows.
This MR shows the default browser button when we're not in portable mode, and then it makes a series of changes to the default browser agent.
Basically, Mozilla has this Swiss-knife for the default browser that sets Firefox as the default browser, does some telemetry and check if Edge is the default browser (and in case tells the user that the default browser has recently changed and they might want to undo that change).
We need only the part to set the default browser (and we're not compatible with some of the other parts because of Mingw). So, I disabled them and wrote a shorter replacement for the main function.
This MR needs some changes to the installer to work (to associate file types to the AUMID and other Windows stuff I might have forgotten).
How Tested
Installed, check that we can open links, HTML files and PDF files with Mullvad Browser, uninstalled.
I've checked only Windows 10 and 11 (after all, MB never says anything about previous Windows versions).
Missing parts
- We will need a follow up to decide how to enable the default browser prompt but only for install mode (I say we can re-enable the pref and check if we're on portable mode before showing that dialog)
- Firefox is inconsistent, and adds a taskbar entry only if you click to make the default browser in the dialog, but not if you click that in
about:preferences
. Is it fine for us? - Uninstalling doesn't clear the default browser, but also Firefox doesn't (i.e., reinstalling MB just after uninstalling will make MB default again, but you won't be able to create a pinned taskbar item, because of the inconsistency written above)
Related to #80 (closed)