⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 245507 in webkit


Ignore:
Timestamp:
May 19, 2019, 2:43:58 PM (7 years ago)
Author:
graouts@webkit.org
Message:

[Pointer Events] Listening to a "pointerover", "pointerenter", "pointerout" or "pointerleave" event alone does not fire the event on iOS
https://bugs.webkit.org/show_bug.cgi?id=197882
<rdar://problem/50769116>

Reviewed by Dean Jackson.

Source/WebCore:

Tests: pointerevents/ios/pointerenter-alone.html

pointerevents/ios/pointerleave-alone.html
pointerevents/ios/pointerout-alone.html
pointerevents/ios/pointerover-alone.html

  • dom/EventNames.h:

(WebCore::EventNames::isTouchRelatedEventType const):
(WebCore::EventNames::touchRelatedEventNames const):
(WebCore::EventNames::extendedTouchRelatedEventNames const):

Source/WebKit:

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::updateTouchEventTracking):

LayoutTests:

Add new tests that check that adding a "pointerover", "pointerenter", "pointerout" or "pointerleave" event listener alone dispatches the
event as expected.

  • pointerevents/ios/pointerenter-alone-expected.txt: Added.
  • pointerevents/ios/pointerenter-alone.html: Added.
  • pointerevents/ios/pointerleave-alone-expected.txt: Added.
  • pointerevents/ios/pointerleave-alone.html: Added.
  • pointerevents/ios/pointerout-alone-expected.txt: Added.
  • pointerevents/ios/pointerout-alone.html: Added.
  • pointerevents/ios/pointerover-alone-expected.txt: Added.
  • pointerevents/ios/pointerover-alone.html: Added.
Location:
trunk
Files:
8 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r245506 r245507  
     12019-05-19  Antoine Quint  <graouts@apple.com>
     2
     3        [Pointer Events] Listening to a "pointerover", "pointerenter", "pointerout" or "pointerleave" event alone does not fire the event on iOS
     4        https://bugs.webkit.org/show_bug.cgi?id=197882
     5        <rdar://problem/50769116>
     6
     7        Reviewed by Dean Jackson.
     8
     9        Add new tests that check that adding a "pointerover", "pointerenter", "pointerout" or "pointerleave" event listener alone dispatches the
     10        event as expected.
     11
     12        * pointerevents/ios/pointerenter-alone-expected.txt: Added.
     13        * pointerevents/ios/pointerenter-alone.html: Added.
     14        * pointerevents/ios/pointerleave-alone-expected.txt: Added.
     15        * pointerevents/ios/pointerleave-alone.html: Added.
     16        * pointerevents/ios/pointerout-alone-expected.txt: Added.
     17        * pointerevents/ios/pointerout-alone.html: Added.
     18        * pointerevents/ios/pointerover-alone-expected.txt: Added.
     19        * pointerevents/ios/pointerover-alone.html: Added.
     20
    1212019-05-19  Antoine Quint  <graouts@apple.com>
    222
  • trunk/Source/WebCore/ChangeLog

    r245505 r245507  
     12019-05-19  Antoine Quint  <graouts@apple.com>
     2
     3        [Pointer Events] Listening to a "pointerover", "pointerenter", "pointerout" or "pointerleave" event alone does not fire the event on iOS
     4        https://bugs.webkit.org/show_bug.cgi?id=197882
     5        <rdar://problem/50769116>
     6
     7        Reviewed by Dean Jackson.
     8
     9        Tests: pointerevents/ios/pointerenter-alone.html
     10               pointerevents/ios/pointerleave-alone.html
     11               pointerevents/ios/pointerout-alone.html
     12               pointerevents/ios/pointerover-alone.html
     13
     14        * dom/EventNames.h:
     15        (WebCore::EventNames::isTouchRelatedEventType const):
     16        (WebCore::EventNames::touchRelatedEventNames const):
     17        (WebCore::EventNames::extendedTouchRelatedEventNames const):
     18
    1192019-05-19  Antoine Quint  <graouts@apple.com>
    220
  • trunk/Source/WebCore/dom/EventNames.h

    r244582 r245507  
    364364#endif
    365365
    366     std::array<std::reference_wrapper<const AtomicString>, 9> touchRelatedEventNames() const;
    367     std::array<std::reference_wrapper<const AtomicString>, 12> extendedTouchRelatedEventNames() const;
     366    std::array<std::reference_wrapper<const AtomicString>, 13> touchRelatedEventNames() const;
     367    std::array<std::reference_wrapper<const AtomicString>, 16> extendedTouchRelatedEventNames() const;
    368368    std::array<std::reference_wrapper<const AtomicString>, 3> gestureEventNames() const;
    369369
     
    407407        || eventType == touchcancelEvent
    408408        || eventType == touchforcechangeEvent
     409        || eventType == pointeroverEvent
     410        || eventType == pointerenterEvent
    409411        || eventType == pointerdownEvent
    410412        || eventType == pointermoveEvent
    411413        || eventType == pointerupEvent
     414        || eventType == pointeroutEvent
     415        || eventType == pointerleaveEvent
    412416        || eventType == pointercancelEvent;
    413417}
     
    419423}
    420424
    421 inline std::array<std::reference_wrapper<const AtomicString>, 9> EventNames::touchRelatedEventNames() const
    422 {
    423     return { { touchstartEvent, touchmoveEvent, touchendEvent, touchcancelEvent, touchforcechangeEvent, pointerdownEvent, pointermoveEvent, pointerupEvent, pointercancelEvent } };
    424 }
    425 
    426 inline std::array<std::reference_wrapper<const AtomicString>, 12> EventNames::extendedTouchRelatedEventNames() const
    427 {
    428     return { { touchstartEvent, touchmoveEvent, touchendEvent, touchcancelEvent, touchforcechangeEvent, pointerdownEvent, pointermoveEvent, pointerupEvent, pointercancelEvent, mousedownEvent, mousemoveEvent, mouseupEvent } };
     425inline std::array<std::reference_wrapper<const AtomicString>, 13> EventNames::touchRelatedEventNames() const
     426{
     427    return { { touchstartEvent, touchmoveEvent, touchendEvent, touchcancelEvent, touchforcechangeEvent, pointeroverEvent, pointerenterEvent, pointerdownEvent, pointermoveEvent, pointerupEvent, pointeroutEvent, pointerleaveEvent, pointercancelEvent } };
     428}
     429
     430inline std::array<std::reference_wrapper<const AtomicString>, 16> EventNames::extendedTouchRelatedEventNames() const
     431{
     432    return { { touchstartEvent, touchmoveEvent, touchendEvent, touchcancelEvent, touchforcechangeEvent, pointeroverEvent, pointerenterEvent, pointerdownEvent, pointermoveEvent, pointerupEvent, pointeroutEvent, pointerleaveEvent, pointercancelEvent, mousedownEvent, mousemoveEvent, mouseupEvent } };
    429433}
    430434   
  • trunk/Source/WebKit/ChangeLog

    r245501 r245507  
     12019-05-19  Antoine Quint  <graouts@apple.com>
     2
     3        [Pointer Events] Listening to a "pointerover", "pointerenter", "pointerout" or "pointerleave" event alone does not fire the event on iOS
     4        https://bugs.webkit.org/show_bug.cgi?id=197882
     5        <rdar://problem/50769116>
     6
     7        Reviewed by Dean Jackson.
     8
     9        * UIProcess/WebPageProxy.cpp:
     10        (WebKit::WebPageProxy::updateTouchEventTracking):
     11
    1122019-05-19  Alex Christensen  <achristensen@webkit.org>
    213
  • trunk/Source/WebKit/UIProcess/WebPageProxy.cpp

    r245328 r245507  
    25392539        updateTrackingType(m_touchAndPointerEventTracking.touchMoveTracking, names.touchmoveEvent);
    25402540        updateTrackingType(m_touchAndPointerEventTracking.touchEndTracking, names.touchendEvent);
     2541        updateTrackingType(m_touchAndPointerEventTracking.touchStartTracking, names.pointeroverEvent);
     2542        updateTrackingType(m_touchAndPointerEventTracking.touchStartTracking, names.pointerenterEvent);
    25412543        updateTrackingType(m_touchAndPointerEventTracking.touchStartTracking, names.pointerdownEvent);
    25422544        updateTrackingType(m_touchAndPointerEventTracking.touchMoveTracking, names.pointermoveEvent);
    25432545        updateTrackingType(m_touchAndPointerEventTracking.touchEndTracking, names.pointerupEvent);
     2546        updateTrackingType(m_touchAndPointerEventTracking.touchEndTracking, names.pointeroutEvent);
     2547        updateTrackingType(m_touchAndPointerEventTracking.touchEndTracking, names.pointerleaveEvent);
    25442548        updateTrackingType(m_touchAndPointerEventTracking.touchStartTracking, names.mousedownEvent);
    25452549        updateTrackingType(m_touchAndPointerEventTracking.touchMoveTracking, names.mousemoveEvent);
Note: See TracChangeset for help on using the changeset viewer.