Bug 225734

Summary: [iOS] REGRESSION(r271216) pointerevents/ios/pointer-events-no-mousedown-when-prevent-default-called-on-pointerdown.html is consistently failing
Product: WebKit Reporter: Devin Rousso <hi>
Component: New BugsAssignee: Devin Rousso <hi>
Status: RESOLVED FIXED    
Severity: Normal CC: graouts, hi, thorton, webkit-bug-importer, wenson_hsieh
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 220072    
Bug Blocks:    
Attachments:
Description Flags
Patch
none
Patch none

Devin Rousso
Reported 2021-05-12 22:11:18 PDT
``` --- ios-simulator-wk2-tests/build/OpenSource/layout-test-results/pointerevents/ios/pointer-events-no-mousedown-when-prevent-default-called-on-pointerdown-expected.txt +++ ios-simulator-wk2-tests/build/OpenSource/layout-test-results/pointerevents/ios/pointer-events-no-mousedown-when-prevent-default-called-on-pointerdown-actual.txt @@ -1,3 +1,7 @@ +CONSOLE MESSAGE: Error: assert_unreached: The mousedown event should not be dispatched after calling preventDefault() during pointerdown. Reached unreachable code +CONSOLE MESSAGE: Error: assert_unreached: The mouseup event should not be dispatched after calling preventDefault() during pointerdown. Reached unreachable code + +Harness Error (FAIL), message = Error: assert_unreached: The mouseup event should not be dispatched after calling preventDefault() during pointerdown. Reached unreachable code PASS Testing that calling preventDefault() during a "pointerdown" event prevents compatibility events from being dispatched. ```
Attachments
Patch (4.90 KB, patch)
2021-05-12 22:12 PDT, Devin Rousso
no flags
Patch (4.90 KB, patch)
2021-05-13 14:58 PDT, Devin Rousso
no flags
Devin Rousso
Comment 1 2021-05-12 22:11:35 PDT
Devin Rousso
Comment 2 2021-05-12 22:12:27 PDT
Wenson Hsieh
Comment 3 2021-05-12 23:08:50 PDT
Comment on attachment 428459 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=428459&action=review > Source/WebCore/ChangeLog:14 > + Instead of fully removing the `CapturingData` entirely, change it's state such that it's Nit - the first "it's" should be "its" > Source/WebCore/page/PointerCaptureController.cpp:329 > - if (capturingData.pointerType == touchPointerEventType() && capturingData.pointerIsPressed && !capturingData.cancelled) > + if (capturingData.pointerType == touchPointerEventType() && capturingData.state == CapturingData::State::Ready) Was removing the check for `capturingData.pointerIsPressed` intentional?
Devin Rousso
Comment 4 2021-05-12 23:47:52 PDT
Comment on attachment 428459 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=428459&action=review >> Source/WebCore/page/PointerCaptureController.cpp:329 >> + if (capturingData.pointerType == touchPointerEventType() && capturingData.state == CapturingData::State::Ready) > > Was removing the check for `capturingData.pointerIsPressed` intentional? Yes. This was my attempt at "only include things that are active" in r271216, but as I mentioned in the ChangeLog because mouse events are dispatched after, it'd no longer be `pointerIsPressed` by that point anyways.
Devin Rousso
Comment 5 2021-05-13 14:58:46 PDT
EWS
Comment 6 2021-05-13 16:20:14 PDT
Committed r277463 (237706@main): <https://commits.webkit.org/237706@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 428565 [details].
Note You need to log in before you can comment on or make changes to this bug.