Closed Bug 1662587 Opened 4 years ago Closed 4 years ago

pointerlock is broken if page contains an OOP iframe

Categories

(Core :: DOM: Core & HTML, defect, P2)

defect

Tracking

()

RESOLVED FIXED
83 Branch
Fission Milestone M6b
Tracking Status
firefox83 --- fixed

People

(Reporter: edgar, Assigned: edgar)

References

(Blocks 1 open bug)

Details

(Whiteboard: patch in draft mode)

Attachments

(2 files, 1 obsolete file)

Attached file test.html (obsolete) —

STR:
Click on the canvas area in top-level document to request a pointer lock.

Expected results:
Mouse will directly control the red ball inside the canvas.

Actual result:
The mouse cursor is showed and locked inside the iframe.
And you can request a pointer lock again in iframe.

Fission Milestone: --- → ?
Status: NEW → ASSIGNED
Fission Milestone: ? → M6b

(In reply to Edgar Chen [:edgar] from comment #0)

The mouse cursor is showed and locked inside the iframe.

I think it is because we reset mouse/pointer to the window center while pointer lock is enabled, so it looks like we need to have some information stored in chrome process in order to dispatch event to the right content process.

Edgar, please provide an estimate date for the patch in the Whiteboard field as M6b is nearing completion.

Flags: needinfo?(echen)
Whiteboard: ETA: ?

Patch should be ready for review soon, probably later today.

Flags: needinfo?(echen)
Attachment #9175883 - Attachment description: Bug 1662587 - Tests; → Bug 1662587 - Make pointer lock fission compatible;
Attached file test.html
Attachment #9173497 - Attachment is obsolete: true
Whiteboard: ETA: ? → patch in draft mode
Pushed by echen@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/12856303559f Make pointer lock fission compatible; r=smaug

Hmm, it seems asynchronously dispatch synthesized mouse event somehow doesn't work on Android, but I could not reproduce locally, seem to happen only on try? Filed bug 1666201.

Flags: needinfo?(echen)
Pushed by echen@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/45eb5295b99b Make pointer lock fission compatible; r=smaug
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 83 Branch
Regressions: CVE-2021-23955
No longer regressions: CVE-2021-23955
Regressions: CVE-2021-23955
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: