[webkit-changes] [WebKit/WebKit] 40e9a7: [Pointer Events] Implement `getCoalescedEvents` AP...

Richard Robinson noreply at github.com
Mon Jul 29 13:35:32 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 40e9a7696bca6ae8f53e5f7828c963a9a1e8749b
      https://github.com/WebKit/WebKit/commit/40e9a7696bca6ae8f53e5f7828c963a9a1e8749b
  Author: Richard Robinson <richard_robinson2 at apple.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
    M Source/WebCore/dom/PointerEvent.cpp
    M Source/WebCore/dom/PointerEvent.h
    M Source/WebCore/dom/ios/PointerEventIOS.cpp
    M Source/WebCore/dom/wpe/PointerEventWPE.cpp
    M Source/WebCore/page/PointerCaptureController.cpp
    M Source/WebCore/platform/PlatformTouchEvent.h
    M Source/WebCore/platform/ios/WebEvent.h
    M Source/WebKit/Shared/NativeWebTouchEvent.h
    M Source/WebKit/Shared/WebEvent.serialization.in
    M Source/WebKit/Shared/WebEventConversion.cpp
    M Source/WebKit/Shared/WebTouchEvent.cpp
    M Source/WebKit/Shared/WebTouchEvent.h
    M Source/WebKit/Shared/gtk/WebEventFactory.cpp
    M Source/WebKit/Shared/ios/NativeWebTouchEventIOS.mm
    M Source/WebKit/Shared/libwpe/WebEventFactory.cpp
    M Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp
    M Source/WebKit/UIProcess/ios/WKTouchEventsGestureRecognizer.h
    M Source/WebKit/UIProcess/ios/WKTouchEventsGestureRecognizer.mm
    M Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp
    M Source/WebKit/WebProcess/WebPage/EventDispatcher.h
    M Source/WebKit/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit/WebProcess/WebPage/WebPage.h
    M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm
    M Tools/TestWebKitAPI/Tests/ios/TouchEventTests.mm

  Log Message:
  -----------
  [Pointer Events] Implement `getCoalescedEvents` API (iOS)
https://bugs.webkit.org/show_bug.cgi?id=277185
rdar://132210576

Reviewed by Abrar Rahman Protyasha.

Implements the necessary logic so that iOS also supports the `getCoalescedEvents` function.
This uses UIKit's `coalescedTouchesForTouch` method to facilitate getting the events that
are coalesced at the system level.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/dom/PointerEvent.cpp:
(WebCore::PointerEvent::getCoalescedEvents const):
* Source/WebCore/dom/PointerEvent.h:
* Source/WebCore/dom/ios/PointerEventIOS.cpp:
(WebCore::PointerEvent::create):
(WebCore::PointerEvent::PointerEvent):
(WebCore::m_coalescedEvents):
(WebCore::m_isPrimary): Deleted.
* Source/WebCore/page/PointerCaptureController.cpp:
(WebCore::PointerCaptureController::dispatchEventForTouchAtIndex):
* Source/WebCore/platform/ios/WebEvent.h:
* Source/WebKit/Shared/NativeWebTouchEvent.h:
* Source/WebKit/Shared/WebEvent.serialization.in:
* Source/WebKit/Shared/WebEventConversion.cpp:
(WebKit::WebKit2PlatformTouchEvent::WebKit2PlatformTouchEvent):
* Source/WebKit/Shared/WebTouchEvent.h:
(WebKit::WebTouchEvent::WebTouchEvent):
(WebKit::WebTouchEvent::coalescedEvents const):
(WebKit::WebTouchEvent::setCoalescedEvents):
* Source/WebKit/Shared/ios/NativeWebTouchEventIOS.mm:
(WebKit::NativeWebTouchEvent::extractWebTouchPoints):
(WebKit::NativeWebTouchEvent::extractCoalescedWebTouchEvents):
(WebKit::NativeWebTouchEvent::extractWebTouchPoint): Deleted.
* Source/WebKit/UIProcess/ios/WKTouchEventsGestureRecognizer.h:
* Source/WebKit/UIProcess/ios/WKTouchEventsGestureRecognizer.mm:
(-[WKTouchEventsGestureRecognizer reset]):
(-[WKTouchEventsGestureRecognizer _coalescedTouchEventForTouch:]):
(-[WKTouchEventsGestureRecognizer _recordTouches:type:coalescedTouches:]):
(-[WKTouchEventsGestureRecognizer _processTouches:withEvent:type:]):
(-[WKTouchEventsGestureRecognizer _recordTouches:type:]): Deleted.
* Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::takeQueuedTouchEventsForPage):
(WebKit::EventDispatcher::touchEvent):
(WebKit::EventDispatcher::dispatchTouchEvents):
* Source/WebKit/WebProcess/WebPage/EventDispatcher.h:
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didCommitLoad):
* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dispatchAsynchronousTouchEvents):
(WebKit::WebPage::cancelAsynchronousTouchEvents):
* Tools/TestWebKitAPI/Tests/ios/TouchEventTests.mm:

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list