Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 474e17e9c9a8acc6dbb8cc6aed4e9302ae77970e
      
https://github.com/WebKit/WebKit/commit/474e17e9c9a8acc6dbb8cc6aed4e9302ae77970e
  Author: Tim Horton <[email protected]>
  Date:   2024-12-17 (Tue, 17 Dec 2024)

  Changed paths:
    M Source/WebKit/UIProcess/ios/WKTouchEventsGestureRecognizer.mm

  Log Message:
  -----------
  REGRESSION (iOS 18.2): Scrolling does not work on websites built on Flutter
https://bugs.webkit.org/show_bug.cgi?id=284859
rdar://140119315

Reviewed by Wenson Hsieh and Richard Robinson.

"Child" events (coalesced and predicted events) of a given pointer event must
have the same pointer identifier as their parent; the spec says so, and Flutter
strongly depends on this.

We did not implement it this way; the child events get a pointer identifier of 
0.

* Source/WebKit/UIProcess/ios/WKTouchEventsGestureRecognizer.mm:
(-[WKTouchEventsGestureRecognizer _touchEventForChildTouch:withParent:]):
(-[WKTouchEventsGestureRecognizer _recordTouches:ofType:forEvent:]):
(-[WKTouchEventsGestureRecognizer _processTouches:withEvent:type:]):
(-[WKTouchEventsGestureRecognizer _touchEventForTouch:]): Deleted.
(-[WKTouchEventsGestureRecognizer 
_recordTouches:type:coalescedTouches:predictedTouches:]):
Instead of adding coalesced and predicted events from a random touch, take them
from the first touch, and propagate the pointer identifier from the first touch
onto them.

Later, we should get them from *each* touch instead of just one, to properly
support multiple touches.

Canonical link: https://commits.webkit.org/287988@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to