Bug 210034

Summary: Scrolling thread doesn't send balanced wheelEvents to the main thread
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: ScrollingAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: simon.fraser
Priority: P2    
Version: Safari Technology Preview   
Hardware: Unspecified   
OS: Unspecified   

Description Simon Fraser (smfr) 2020-04-05 10:36:59 PDT
If a gesture starts in the non-fast-scrollable region, but outside of any scroller, then the 'began' event bounces from the EventHandler thread to the main thread, and is seen by main thread wheel event handling code.

However, that code bounces the event back to the scrolling thread, where it can trigger latching on a scrolling node.

Subsequent events the same gesture are all then consumed by the scrolling thread, so the main thread never sees an 'ended' event, and doesn't know to clear main thread latched state.
Comment 1 Simon Fraser (smfr) 2020-07-14 20:41:40 PDT
Also, with slow-scrolling overflow inside the page, we don't send balanced wheel events from the main thread to the scrolling thread.