| Summary: | iOS: Scrolling and touch events sporadically stop working after navigating | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Tim Horton <thorton> | ||||||||
| Component: | New Bugs | Assignee: | Tim Horton <thorton> | ||||||||
| Status: | RESOLVED FIXED | ||||||||||
| Severity: | Normal | CC: | aestes, bdakin, hi, megan_gardner, simon.fraser, webkit-bug-importer, wenson_hsieh | ||||||||
| Priority: | P2 | Keywords: | InRadar | ||||||||
| Version: | WebKit Nightly Build | ||||||||||
| Hardware: | Unspecified | ||||||||||
| OS: | Unspecified | ||||||||||
| Attachments: |
|
||||||||||
|
Description
Tim Horton
2020-08-11 03:53:09 PDT
Created attachment 406372 [details]
Patch
Created attachment 406373 [details]
Patch
Comment on attachment 406373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=406373&action=review > LayoutTests/fast/events/touch/ios/touch-event-stall-after-navigating-with-pending-asynchronous-touch-start.html:19 > + await new Promise((resolve) => { testRunner.runUIScriptImmediately(` > + uiController.doubleTapAtPoint(${x}, ${y}, .01, function() { > + uiController.uiScriptComplete(); > + });`, resolve) }); Nit - the indentation looks a bit off here. Comment on attachment 406373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=406373&action=review > Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp:179 > +void EventDispatcher::takeQueuedTouchEventsForPage(const WebPage& webPage, TouchEventQueue& destinationQueue) Why doesn't this just return a TouchEventQueue? Comment on attachment 406373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=406373&action=review > LayoutTests/fast/events/touch/ios/touch-event-stall-after-navigating-with-pending-asynchronous-touch-start.html:16 > + await new Promise((resolve) => { testRunner.runUIScriptImmediately(` NIT: why is this `Promise` needed? Comment on attachment 406373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=406373&action=review >> Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp:179 >> +void EventDispatcher::takeQueuedTouchEventsForPage(const WebPage& webPage, TouchEventQueue& destinationQueue) > > Why doesn't this just return a TouchEventQueue? 🤷♂️ probably predates `move` Not going to fix it now, but it's a good point. >> LayoutTests/fast/events/touch/ios/touch-event-stall-after-navigating-with-pending-asynchronous-touch-start.html:16 >> + await new Promise((resolve) => { testRunner.runUIScriptImmediately(` > > NIT: why is this `Promise` needed? You are right! It's not (and I don't totally understand why the test works anymore, but it does). >> LayoutTests/fast/events/touch/ios/touch-event-stall-after-navigating-with-pending-asynchronous-touch-start.html:19 >> + });`, resolve) }); > > Nit - the indentation looks a bit off here. Devin said the same thing, but it looks right to me‽ I am confused :) Maybe getting rid of the promise will help. Created attachment 406410 [details]
Patch
Committed r265515: <https://trac.webkit.org/changeset/265515> All reviewed patches have been landed. Closing bug and clearing flags on attachment 406410 [details]. |