Scroll events stop working after synchronous XHR request while scrolling an iframe
Categories
(Core :: DOM: Events, defect, P2)
Tracking
()
People
(Reporter: martin, Assigned: smaug)
References
(Regression)
Details
(Keywords: regression)
Attachments
(3 files)
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:
- open https://codesandbox.io/s/hardcore-lamport-1l11b or attached zip file (local webserver)
- open native Firefox dev tools / console
- keep scrolling
-- you will see logs of your scroll position until the request after 5s is started
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.
Reporter | ||
Comment 1•3 years ago
|
||
Reporter | ||
Comment 2•3 years ago
|
||
Codesandbox Url without GUI to faster reproduce behavior: https://1l11b.csb.app/
Comment 3•3 years ago
|
||
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.
Updated•3 years ago
|
Updated•3 years ago
|
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 4•3 years ago
|
||
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).
Comment 5•3 years ago
|
||
bugherder |
Updated•3 years ago
|
Updated•3 years ago
|
Description
•