Closed Bug 1684490 Opened 3 years ago Closed 3 years ago

[fission] External protocol opening dialog doesn't work on a cross-origin iframe.

Categories

(Core :: DOM: Content Processes, defect, P3)

defect

Tracking

()

RESOLVED FIXED
86 Branch
Fission Milestone M6c
Tracking Status
firefox-esr78 --- unaffected
firefox84 --- unaffected
firefox85 --- disabled
firefox86 --- fixed

People

(Reporter: emilio, Assigned: emilio)

References

(Regression)

Details

(Keywords: regression)

Attachments

(2 files)

STR:

ER:

  • A dialog that shows "Allow https://crisal.io to open the magnet link?", then a dialog to choose application, etc.

AR:

  • Nothing

I found this on the wild so we should probably fix it.

I guess I've touched the area recently so I'll poke.

Flags: needinfo?(emilio)
Blocks: 1684649

In the case we click a link from inside the frame, we don't want to
check for activation from the parent window but ourselves.

It feels like using the sourceWindowContext for these checks is always
the right thing to do, but it's not always possible if we set the
location.href from an out-of-process parent. In this case, we fall back
to consuming user activation on the iframe itself. This is tested in
browbrowser_protocol_ask_dialog.js when run with fission enabled.

We could consider making the user activation stuff more
multiprocess-friendly, but it's not clear to me it's worth it for this
particular edge case.

Assignee: nobody → emilio
Status: NEW → ASSIGNED

These would've caught the issue a lot sooner.

Depends on D100578

Flags: needinfo?(emilio)
Regressed by: 1679456
Has Regression Range: --- → yes

Set release status flags based on info from the regressing bug 1679456

I'm not seeing anything when clicking the link even when using 84 without Fission.
Bug 1679456 landed 85.
Am I missing something?

Flags: needinfo?(emilio)

You probably need an application that handles magnet: links (or changing the link to some other protocol).

Flags: needinfo?(emilio)

status-firefox85: --- → affected

The Release Management bot marked this bug as affecting Fx85 Beta (because the regressing Bug 1679456 landed in Fx85 Nightly). But if this bug is only reproducible with Fission, we won't need to uplift the fix to Beta.

Severity: -- → S3
Fission Milestone: --- → M6c
Priority: -- → P3
Pushed by ealvarez@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/7ad6088bb2c2
Check an in-process window context for user interaction. r=smaug,edgar DONTBUILD
https://hg.mozilla.org/integration/autoland/rev/1f44b3e9ec62
Make some BrowsingContext/WindowContext asserts DIAGNOSTIC_ASSERTS. r=edgar DONTBUILD
Pushed by nbeleuzu@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/0bf6c172cbec
Backed out 2 changesets as per emilio`s request
https://hg.mozilla.org/integration/autoland/rev/79f33c375935
Check an in-process window context for user interaction. r=smaug,edgar
https://hg.mozilla.org/integration/autoland/rev/7d10fe1f2f2e
Make some BrowsingContext/WindowContext asserts DIAGNOSTIC_ASSERTS. r=edgar
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 86 Branch
Backout by rmaries@mozilla.com:
https://hg.mozilla.org/mozilla-central/rev/b78714751fcd
Backed out changeset 7d10fe1f2f2e for causing bug 1685106. a=backout DONTBUILD
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: