RESOLVED FIXED Bug 198560
[Pointer Events] Fire pointerout and pointerleave events after firing pointercancel
https://bugs.webkit.org/show_bug.cgi?id=198560
Summary [Pointer Events] Fire pointerout and pointerleave events after firing pointer...
Antoine Quint
Reported 2019-06-05 04:59:31 PDT
[Pointer Events] Fire pointerout and pointerleave events after firing pointercancel
Attachments
Patch (17.66 KB, patch)
2019-06-05 05:02 PDT, Antoine Quint
no flags
Antoine Quint
Comment 1 2019-06-05 05:02:30 PDT
WebKit Commit Bot
Comment 2 2019-06-05 12:21:44 PDT
Comment on attachment 371388 [details] Patch Clearing flags on attachment: 371388 Committed r246122: <https://trac.webkit.org/changeset/246122>
WebKit Commit Bot
Comment 3 2019-06-05 12:21:45 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 4 2019-06-05 12:22:15 PDT
Darryl Noakes
Comment 5 2023-10-03 12:27:07 PDT
Was this actually released? It is still an issue for me on iOS 15.6.1 and iOS 16.
Chris Dumez
Comment 6 2023-10-03 12:28:06 PDT
(In reply to Darryl Noakes from comment #5) > Was this actually released? It is still an issue for me on iOS 15.6.1 and > iOS 16. That change is already and definitely shipped at some point in the past. If you're still experiencing issues, I recommend filing a new bug.
Darryl Noakes
Comment 7 2023-10-03 12:57:19 PDT
Okay, will do. I have investigated a little, and it is partially correct when listening for events on the element being manipulated. However, manipulating a _child_ element does not fire the expected events.
Darryl Noakes
Comment 8 2023-10-03 14:32:23 PDT
To clarify: When listening for pointer events on an element, Chrome always fires `pointerleave` event on an element when `pointerleave` has been fired on a child element. Safari does this when tapping (as expected, as the pointer has been removed (https://www.w3.org/TR/pointerevents/#the-pointerleave-event)), but not when scrolling. This may be due to different interpretations of the spec for `pointerleave` (https://www.w3.org/TR/pointerevents/#the-pointerleave-event), with Chrome taking the reasons for firing to include events on child elements and Safari not. What is the expected behavior for `pointerleave`? (Sorry for hijacking this thread. I do not currently have access to my test iPhone and so can't submit a proper report yet; if this is even something that needs one.)
Note You need to log in before you can comment on or make changes to this bug.