Changeset 245505 in webkit
- Timestamp:
- May 19, 2019, 2:34:24 PM (7 years ago)
- Location:
- trunk
- Files:
-
- 8 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/pointerevents/ios/over-enter-out-leave.html (modified) (1 diff)
-
LayoutTests/pointerevents/ios/pointer-event-order.html (modified) (1 diff)
-
LayoutTests/pointerevents/ios/pointer-events-implicit-capture.html (modified) (1 diff)
-
LayoutTests/pointerevents/ios/pointer-events-is-primary-expected.txt (modified) (1 diff)
-
LayoutTests/pointerevents/ios/pointer-events-is-primary.html (modified) (2 diffs)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/page/EventHandler.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r245502 r245505 1 2019-05-19 Antoine Quint <graouts@apple.com> 2 3 [Pointer Events] A pointer should be marked as primary for all of its events 4 https://bugs.webkit.org/show_bug.cgi?id=197909 5 <rdar://problem/50801608> 6 7 Reviewed by Dean Jackson. 8 9 Update tests to match expectations that only the first touch of a sequence is the primary pointer, 10 which applies to all of its events, even after the even is no longer touching the digitizer. 11 12 * pointerevents/ios/over-enter-out-leave.html: 13 * pointerevents/ios/pointer-event-order.html: 14 * pointerevents/ios/pointer-events-implicit-capture.html: 15 * pointerevents/ios/pointer-events-is-primary-expected.txt: 16 * pointerevents/ios/pointer-events-is-primary.html: 17 1 18 2019-05-19 Simon Fraser <simon.fraser@apple.com> 2 19 -
trunk/LayoutTests/pointerevents/ios/over-enter-out-leave.html
r241760 r245505 24 24 { type: "pointerenter", x: 100, y: 100, isPrimary: true }, 25 25 { type: "pointerdown", x: 100, y: 100, isPrimary: true }, 26 { type: "pointerup", x: 100, y: 100, isPrimary: false },27 { type: "pointerout", x: 100, y: 100, isPrimary: false },28 { type: "pointerleave", x: 100, y: 100, isPrimary: false },26 { type: "pointerup", x: 100, y: 100, isPrimary: true }, 27 { type: "pointerout", x: 100, y: 100, isPrimary: true }, 28 { type: "pointerleave", x: 100, y: 100, isPrimary: true }, 29 29 ]); 30 30 test.done(); -
trunk/LayoutTests/pointerevents/ios/pointer-event-order.html
r244328 r245505 21 21 { type: "pointerenter", x: 100, y: 100, isPrimary: true }, 22 22 { type: "pointerdown", x: 100, y: 100, isPrimary: true }, 23 { type: "pointerup", x: 100, y: 100, isPrimary: false },24 { type: "pointerout", x: 100, y: 100, isPrimary: false },25 { type: "pointerleave", x: 100, y: 100, isPrimary: false },23 { type: "pointerup", x: 100, y: 100, isPrimary: true }, 24 { type: "pointerout", x: 100, y: 100, isPrimary: true }, 25 { type: "pointerleave", x: 100, y: 100, isPrimary: true }, 26 26 { type: "click", x: 100, y: 100 }, 27 27 ]); -
trunk/LayoutTests/pointerevents/ios/pointer-events-implicit-capture.html
r240875 r245505 35 35 { id: 2, type: "pointermove" }, 36 36 { id: 1, type: "pointerup" }, 37 { id: 1, type: "lostpointercapture", isPrimary: false },37 { id: 1, type: "lostpointercapture", isPrimary: true }, 38 38 { id: 2, type: "pointerup" }, 39 39 { id: 2, type: "lostpointercapture", isPrimary: false } -
trunk/LayoutTests/pointerevents/ios/pointer-events-is-primary-expected.txt
r238344 r245505 1 1 2 PASS Oldest active touchhas isPrimary = true.2 PASS The first touch of a touch sequence has isPrimary = true. 3 3 -
trunk/LayoutTests/pointerevents/ios/pointer-events-is-primary.html
r243645 r245505 15 15 target_test((target, test) => { 16 16 target.style.touchAction = "none"; 17 const eventTracker = new EventTracker(target, ["pointer down", "pointermove"]);17 const eventTracker = new EventTracker(target, ["pointerover", "pointerenter", "pointerdown", "pointermove", "pointerup", "pointerout", "pointerleave"]); 18 18 19 19 const one = ui.finger(); 20 20 const two = ui.finger(); 21 const three = ui.finger(); 21 22 ui.sequence([ 22 23 one.begin({ x: 10, y: 10 }), … … 26 27 one.end(), 27 28 two.move({ x: 50, y: 50 }), 28 two.end() 29 two.end(), 30 three.begin({ x: 10, y: 10 }), 31 three.end(), 29 32 ]).then(() => { 30 33 eventTracker.assertMatchesEvents([ 34 // Yielded by one.begin({ x: 10, y: 10 }). 35 { id: 1, type: "pointerover", x: 10, y: 10, isPrimary: true }, 36 { id: 1, type: "pointerenter", x: 10, y: 10, isPrimary: true }, 31 37 { id: 1, type: "pointerdown", x: 10, y: 10, isPrimary: true }, 38 // Yielded by two.begin({ x: 50, y: 50 }). 39 { id: 2, type: "pointerover", x: 50, y: 50, isPrimary: false }, 40 { id: 2, type: "pointerenter", x: 50, y: 50, isPrimary: false }, 32 41 { id: 2, type: "pointerdown", x: 50, y: 50, isPrimary: false }, 42 // Yielded by two.move({ x: 70, y: 70 }). 33 43 { id: 2, type: "pointermove", x: 70, y: 70, isPrimary: false }, 44 // Yielded by one.move({ x: 30, y: 30 }). 34 45 { id: 1, type: "pointermove", x: 30, y: 30, isPrimary: true }, 35 { id: 2, type: "pointermove", x: 50, y: 50, isPrimary: true } 46 // Yielded by one.end(). 47 { id: 1, type: "pointerup", x: 30, y: 30, isPrimary: true }, 48 { id: 1, type: "pointerout", x: 30, y: 30, isPrimary: true }, 49 { id: 1, type: "pointerleave", x: 30, y: 30, isPrimary: true }, 50 // Yielded by two.move({ x: 50, y: 50 }). 51 { id: 2, type: "pointermove", x: 50, y: 50, isPrimary: false }, 52 // Yielded by two.end(). 53 { id: 2, type: "pointerup", x: 50, y: 50, isPrimary: false }, 54 { id: 2, type: "pointerout", x: 50, y: 50, isPrimary: false }, 55 { id: 2, type: "pointerleave", x: 50, y: 50, isPrimary: false }, 56 // Yielded by three.begin({ x: 10, y: 10 }). 57 { id: 3, type: "pointerover", x: 10, y: 10, isPrimary: true }, 58 { id: 3, type: "pointerenter", x: 10, y: 10, isPrimary: true }, 59 { id: 3, type: "pointerdown", x: 10, y: 10, isPrimary: true }, 60 // Yielded by three.end(). 61 { id: 3, type: "pointerup", x: 10, y: 10, isPrimary: true }, 62 { id: 3, type: "pointerout", x: 10, y: 10, isPrimary: true }, 63 { id: 3, type: "pointerleave", x: 10, y: 10, isPrimary: true }, 36 64 ]); 37 65 test.done(); 38 66 }); 39 }, " Oldest active touchhas isPrimary = true.");67 }, "The first touch of a touch sequence has isPrimary = true."); 40 68 41 69 </script> -
trunk/Source/WebCore/ChangeLog
r245504 r245505 1 2019-05-19 Antoine Quint <graouts@apple.com> 2 3 [Pointer Events] A pointer should be marked as primary for all of its events 4 https://bugs.webkit.org/show_bug.cgi?id=197909 5 <rdar://problem/50801608> 6 7 Reviewed by Dean Jackson. 8 9 Add an ivar for EventHandler which we'll use in WebKitAdditions code to track the touch identifier 10 of the very first touch to start in a given sequence. 11 12 * page/EventHandler.h: 13 1 14 2019-05-19 Darin Adler <darin@apple.com> 2 15 -
trunk/Source/WebCore/page/EventHandler.h
r245062 r245505 615 615 #endif 616 616 617 #if ENABLE(POINTER_EVENTS) && ENABLE(IOS_TOUCH_EVENTS) 618 unsigned m_touchIdentifierForPrimaryTouch { 0 }; 619 #endif 620 617 621 double m_maxMouseMovedDuration { 0 }; 618 622 bool m_didStartDrag { false };
Note:
See TracChangeset
for help on using the changeset viewer.