Closed Bug 1700679 Opened 4 months ago Closed 3 months ago

Enable widget.macos.native-context-menus by default

Categories

(Core :: Widget: Cocoa, task, P1)

All
macOS
task

Tracking

()

RESOLVED FIXED
90 Branch
Tracking Status
firefox89 --- fixed
firefox90 --- fixed

People

(Reporter: mstange, Assigned: mstange)

References

(Regressed 2 open bugs)

Details

(Whiteboard: [proton-context-menus][mac:mr1] [proton-uplift])

Attachments

(1 file)

This bug tracks the work that needs to be done before native context menus on macOS can be enabled by default.

Native context menus can be tested on Nightly by enabling the prefs widget.macos.native-context-menus and browser.proton.contextmenus.enabled.

Depends on: 1680177
Depends on: 1700706
Depends on: 1700710
Depends on: 1700715
Depends on: 1700724
Depends on: 1700727
Depends on: 1701085
Priority: -- → P1
Depends on: 1702041
Assignee: nobody → bigiri

Should browser.proton.contextmenus.enabled be replaced with widget.macos.native-context-menus && browser.proton.enabled?

Flags: needinfo?(mstange.moz)

Yes, but it should be done in a new bug.

This bug isn't ready to be worked on until all the dependencies are fixed.

Assignee: bigiri → nobody
Flags: needinfo?(mstange.moz)
No longer depends on: 1700727

(In reply to Bernard Igiri from comment #1)

Should browser.proton.contextmenus.enabled be replaced with widget.macos.native-context-menus && browser.proton.enabled?

I've filed bug 1702387 about this.

Depends on: 1703482
Depends on: 1704474
Assignee: nobody → mstange.moz
Status: NEW → ASSIGNED
Pushed by mstange@themasta.com:
https://hg.mozilla.org/integration/autoland/rev/1bbaffb1aa84
Enable native context menus by default. r=harry,mac-reviewers

Comment on attachment 9217545 [details]
Bug 1700679 - Enable native context menus by default. r=harry

Beta/Release Uplift Approval Request

  • User impact if declined: Required for MR1 / Proton
  • Is this code covered by automated tests?: Yes, extensively
  • Has the fix been verified in Nightly?: Yes with the pref flipped manually
  • Needs manual test from QE?: Covered by native context menu QA testing
  • List of other uplifts needed: 67 patches across 33 other bugs (most of which are test-only)
  • Risk to taking this patch: Medium, but pref can be disabled if a show-stopper is found.
  • Why is the change risky/not risky? (and alternatives if risky): See below.
  • String changes made/needed: n/a

Risk assessment

The 68 patches (67 in other bugs + the one in this bug) that need to be uplifted fall under the following categories:

  1. Test-only fixes (31 out of 68)
  2. Fixes to platform code that is only exercised by automated tests (8 out of 68)
  3. Code changes that affect all configurations (8 out of 68) (bug 1704948, bug 1707204 and bug 1707652)
  4. Code changes that only affect the native menu path (20 out of 68)
  5. The pref flip: Enabling native menus by default (1 out of 68) (this bug)

Categories 1 and 2 are extremely low risk. Category 3 is medium risk - these are the patches from bug 1704948, which affect code that handles middle mouse clicks on menuitems, on all platforms, and bug 1707204 and bug 1707652, which tweak code specific to the Downloads panel. Category 4 and 5 are medium risk because native menus have not had a lot of testing on Nightly. They've been usable on Nightly since April 2 by flipping prefs, but they weren't on by default. However, QA has been testing native context menus since then, and only found a small number of issues, most of which are fixed now. (The only two remaining open issues are bug 1705157 and bug 1706966.)
Another mitigating factor for the risk is the enormous test coverage we have for context menus. All these tests are now running with native menus. During the test-fixing initiative we came across all kinds of menus in all kinds of configurations, and they all worked.
Furthermore, if any show-stopper issues are found, we can still disable the pref.

The full list of patches that need to be uplifted can be obtained from the try push: https://hg.mozilla.org/try/pushloghtml?changeset=ea3fdd35a009e7881da64168b840c7ad24c956cf

Attachment #9217545 - Flags: approval-mozilla-beta?
Status: ASSIGNED → RESOLVED
Closed: 3 months ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch
See Also: → 1707152

[Edit: obsolete] Mostly-green Beta try push: https://treeherder.mozilla.org/jobs?repo=try&tier=1&revision=737f56adb7ebfea3eda0af2033c1a1bea5cc5c11&searchStr=mac

There are some intermittent shutdown timeouts which are clearly related to native menus. I'm currently investigating those.

No longer depends on: 1707204
Regressions: 1707204
Regressions: 1707652
Whiteboard: [proton-context-menus][mac:mr1] → [proton-context-menus][mac:mr1] [proton-uplift]
Regressions: 1705120
Regressions: 1708069

(In reply to Markus Stange [:mstange] from comment #9)

There are some intermittent shutdown timeouts which are clearly related to native menus. I'm currently investigating those.

These are fixed by bug 1707598, which is included in the latest Beta push.

Regressions: 1707914
Attachment #9217545 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Regressions: 1703518
Regressions: 1710507
Depends on: 1710474
No longer depends on: 1710474
Regressions: 1710474

Apologies if this isn't the correct place for this, but the "Inspect (Q)" option no longer works when widget.macos.native-context-menus is true, as noted in this post on reddit: https://www.reddit.com/r/firefox/comments/mx66o0/inspect_element_shortcut_q_removed/

See screen recording here with Firefox 89.0b15 (64-bit): https://youtu.be/98_myfFqYdE

(In reply to daniel.skogly from comment #13)

Apologies if this isn't the correct place for this, but the "Inspect (Q)" option no longer works when widget.macos.native-context-menus is true, as noted in this post on reddit: https://www.reddit.com/r/firefox/comments/mx66o0/inspect_element_shortcut_q_removed/

See screen recording here with Firefox 89.0b15 (64-bit): https://youtu.be/98_myfFqYdE

See bug 1710663 comment 2 for an explanation and some background on this change of behavior.

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