Closed Bug 1726364 Opened 3 years ago Closed 3 years ago

Scroll events stop working after synchronous XHR request while scrolling an iframe

Categories

(Core :: DOM: Events, defect, P2)

Firefox 91
defect

Tracking

()

RESOLVED FIXED
93 Branch
Tracking Status
firefox-esr78 --- wontfix
firefox-esr91 --- wontfix
firefox91 --- wontfix
firefox92 --- wontfix
firefox93 --- fixed

People

(Reporter: martin, Assigned: smaug)

References

(Regression)

Details

(Keywords: regression)

Attachments

(3 files)

Attached file test-case+video.zip

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36

Steps to reproduce:

I created a small test case to show that scroll events stop working if a synchronous XHR request is startet while scrolling an iframe.

In the test case there is a scroll listener that logs the current Y scroll position, each time you scroll. Also there is a simple XHR request, started after 5s timeout.
If you keep on scrolling while the request is started you can see that the listener stops to log the Y position. There is also no error on the console.
If you do not scroll while the the request is started (only before and after), everything works as expected.
See video and test case package. This behavior/bug was introduced with Firefox 66.

Steps:

Actual results:

Scroll events stop working after synchronous XHR request while scrolling an iframe.

Expected results:

Scroll events should work no matter if there is a synchronous XHR request while scrolling an iframe.

Attached image screen-record.gif

Codesandbox Url without GUI to faster reproduce behavior: https://1l11b.csb.app/

The Bugbug bot thinks this bug should belong to the 'Core::Layout: Scrolling and Overflow' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.

Component: Untriaged → Layout: Scrolling and Overflow
Product: Firefox → Core
Component: Layout: Scrolling and Overflow → DOM: Events
Assignee: nobody → bugs
Regressed by: 1044074
Has Regression Range: --- → yes
Severity: -- → S3
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Priority: -- → P2

I tried to keep the changes minimal in this case.
We may need some more changes to Document::UnsuppressEventHandlingAndFireEvents to make it work
well with Fission (but that Fission work is totally unrelated to this fix).

Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 93 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: