diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index b052f61..9b9d60a 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,20 @@
+2019-05-19  Antoine Quint  <graouts@apple.com>
+
+        [Pointer Events] A pointer should be marked as primary for all of its events
+        https://bugs.webkit.org/show_bug.cgi?id=197909
+        <rdar://problem/50801608>
+
+        Reviewed by Dean Jackson.
+
+        Update tests to match expectations that only the first touch of a sequence is the primary pointer,
+        which applies to all of its events, even after the even is no longer touching the digitizer.
+
+        * pointerevents/ios/over-enter-out-leave.html:
+        * pointerevents/ios/pointer-event-order.html:
+        * pointerevents/ios/pointer-events-implicit-capture.html:
+        * pointerevents/ios/pointer-events-is-primary-expected.txt:
+        * pointerevents/ios/pointer-events-is-primary.html:
+
 2019-05-19  Simon Fraser  <simon.fraser@apple.com>
 
         Layers painting into shared backing need to contribute to overlap
diff --git a/LayoutTests/pointerevents/ios/over-enter-out-leave.html b/LayoutTests/pointerevents/ios/over-enter-out-leave.html
index 3643aae..69bfd51 100644
--- a/LayoutTests/pointerevents/ios/over-enter-out-leave.html
+++ b/LayoutTests/pointerevents/ios/over-enter-out-leave.html
@@ -23,9 +23,9 @@
             { type: "pointerover", x: 100, y: 100, isPrimary: true },
             { type: "pointerenter", x: 100, y: 100, isPrimary: true },
             { type: "pointerdown", x: 100, y: 100, isPrimary: true },
-            { type: "pointerup", x: 100, y: 100, isPrimary: false },
-            { type: "pointerout", x: 100, y: 100, isPrimary: false },
-            { type: "pointerleave", x: 100, y: 100, isPrimary: false },
+            { type: "pointerup", x: 100, y: 100, isPrimary: true },
+            { type: "pointerout", x: 100, y: 100, isPrimary: true },
+            { type: "pointerleave", x: 100, y: 100, isPrimary: true },
         ]);
         test.done();
     });
diff --git a/LayoutTests/pointerevents/ios/pointer-event-order.html b/LayoutTests/pointerevents/ios/pointer-event-order.html
index 6157630..180603d 100644
--- a/LayoutTests/pointerevents/ios/pointer-event-order.html
+++ b/LayoutTests/pointerevents/ios/pointer-event-order.html
@@ -20,9 +20,9 @@
             { type: "pointerover", x: 100, y: 100, isPrimary: true },
             { type: "pointerenter", x: 100, y: 100, isPrimary: true },
             { type: "pointerdown", x: 100, y: 100, isPrimary: true },
-            { type: "pointerup", x: 100, y: 100, isPrimary: false },
-            { type: "pointerout", x: 100, y: 100, isPrimary: false },
-            { type: "pointerleave", x: 100, y: 100, isPrimary: false },
+            { type: "pointerup", x: 100, y: 100, isPrimary: true },
+            { type: "pointerout", x: 100, y: 100, isPrimary: true },
+            { type: "pointerleave", x: 100, y: 100, isPrimary: true },
             { type: "click", x: 100, y: 100 },
         ]);
         test.done();
diff --git a/LayoutTests/pointerevents/ios/pointer-events-implicit-capture.html b/LayoutTests/pointerevents/ios/pointer-events-implicit-capture.html
index 6962f45b..c2d6683 100644
--- a/LayoutTests/pointerevents/ios/pointer-events-implicit-capture.html
+++ b/LayoutTests/pointerevents/ios/pointer-events-implicit-capture.html
@@ -34,7 +34,7 @@
             { id: 1, type: "pointermove" },
             { id: 2, type: "pointermove" },
             { id: 1, type: "pointerup" },
-            { id: 1, type: "lostpointercapture", isPrimary: false },
+            { id: 1, type: "lostpointercapture", isPrimary: true },
             { id: 2, type: "pointerup" },
             { id: 2, type: "lostpointercapture", isPrimary: false }
         ]);
diff --git a/LayoutTests/pointerevents/ios/pointer-events-is-primary-expected.txt b/LayoutTests/pointerevents/ios/pointer-events-is-primary-expected.txt
index d522456..e6cc551 100644
--- a/LayoutTests/pointerevents/ios/pointer-events-is-primary-expected.txt
+++ b/LayoutTests/pointerevents/ios/pointer-events-is-primary-expected.txt
@@ -1,3 +1,3 @@
 
-PASS Oldest active touch has isPrimary = true. 
+PASS The first touch of a touch sequence has isPrimary = true. 
 
diff --git a/LayoutTests/pointerevents/ios/pointer-events-is-primary.html b/LayoutTests/pointerevents/ios/pointer-events-is-primary.html
index 3738e3a..fd992bf 100644
--- a/LayoutTests/pointerevents/ios/pointer-events-is-primary.html
+++ b/LayoutTests/pointerevents/ios/pointer-events-is-primary.html
@@ -14,10 +14,11 @@
 
 target_test((target, test) => {
     target.style.touchAction = "none";
-    const eventTracker = new EventTracker(target, ["pointerdown", "pointermove"]);
+    const eventTracker = new EventTracker(target, ["pointerover", "pointerenter", "pointerdown", "pointermove", "pointerup", "pointerout", "pointerleave"]);
 
     const one = ui.finger();
     const two = ui.finger();
+    const three = ui.finger();
     ui.sequence([
         one.begin({ x: 10, y: 10 }),
         two.begin({ x: 50, y: 50 }),
@@ -25,18 +26,45 @@
         one.move({ x: 30, y: 30 }),
         one.end(),
         two.move({ x: 50, y: 50 }),
-        two.end()
+        two.end(),
+        three.begin({ x: 10, y: 10 }),
+        three.end(),
     ]).then(() => {
         eventTracker.assertMatchesEvents([
+            // Yielded by one.begin({ x: 10, y: 10 }).
+            { id: 1, type: "pointerover", x: 10, y: 10, isPrimary: true },
+            { id: 1, type: "pointerenter", x: 10, y: 10, isPrimary: true },
             { id: 1, type: "pointerdown", x: 10, y: 10, isPrimary: true },
+            // Yielded by two.begin({ x: 50, y: 50 }).
+            { id: 2, type: "pointerover", x: 50, y: 50, isPrimary: false },
+            { id: 2, type: "pointerenter", x: 50, y: 50, isPrimary: false },
             { id: 2, type: "pointerdown", x: 50, y: 50, isPrimary: false },
+            // Yielded by two.move({ x: 70, y: 70 }).
             { id: 2, type: "pointermove", x: 70, y: 70, isPrimary: false },
+            // Yielded by one.move({ x: 30, y: 30 }).
             { id: 1, type: "pointermove", x: 30, y: 30, isPrimary: true },
-            { id: 2, type: "pointermove", x: 50, y: 50, isPrimary: true }
+            // Yielded by one.end().
+            { id: 1, type: "pointerup", x: 30, y: 30, isPrimary: true },
+            { id: 1, type: "pointerout", x: 30, y: 30, isPrimary: true },
+            { id: 1, type: "pointerleave", x: 30, y: 30, isPrimary: true },
+            // Yielded by two.move({ x: 50, y: 50 }).
+            { id: 2, type: "pointermove", x: 50, y: 50, isPrimary: false },
+            // Yielded by two.end().
+            { id: 2, type: "pointerup", x: 50, y: 50, isPrimary: false },
+            { id: 2, type: "pointerout", x: 50, y: 50, isPrimary: false },
+            { id: 2, type: "pointerleave", x: 50, y: 50, isPrimary: false },
+            // Yielded by three.begin({ x: 10, y: 10 }).
+            { id: 3, type: "pointerover", x: 10, y: 10, isPrimary: true },
+            { id: 3, type: "pointerenter", x: 10, y: 10, isPrimary: true },
+            { id: 3, type: "pointerdown", x: 10, y: 10, isPrimary: true },
+            // Yielded by three.end().
+            { id: 3, type: "pointerup", x: 10, y: 10, isPrimary: true },
+            { id: 3, type: "pointerout", x: 10, y: 10, isPrimary: true },
+            { id: 3, type: "pointerleave", x: 10, y: 10, isPrimary: true },
         ]);
         test.done();
     });
-}, "Oldest active touch has isPrimary = true.");
+}, "The first touch of a touch sequence has isPrimary = true.");
 
 </script>
 </body>
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index 1accda3..465c11a 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,16 @@
+2019-05-19  Antoine Quint  <graouts@apple.com>
+
+        [Pointer Events] A pointer should be marked as primary for all of its events
+        https://bugs.webkit.org/show_bug.cgi?id=197909
+        <rdar://problem/50801608>
+
+        Reviewed by Dean Jackson.
+
+        Add an ivar for EventHandler which we'll use in WebKitAdditions code to track the touch identifier
+        of the very first touch to start in a given sequence.
+
+        * page/EventHandler.h:
+
 2019-05-19  Darin Adler  <darin@apple.com>
 
         Change String::number to use "shortest" instead of "fixed precision 6 digits"
diff --git a/Source/WebCore/page/EventHandler.h b/Source/WebCore/page/EventHandler.h
index f6c3fc8..2bd3deb 100644
--- a/Source/WebCore/page/EventHandler.h
+++ b/Source/WebCore/page/EventHandler.h
@@ -614,6 +614,10 @@
     unsigned touchIdentifierForMouseEvents { 0 };
 #endif
 
+#if ENABLE(POINTER_EVENTS) && ENABLE(IOS_TOUCH_EVENTS)
+    unsigned m_touchIdentifierForPrimaryTouch { 0 };
+#endif
+
     double m_maxMouseMovedDuration { 0 };
     bool m_didStartDrag { false };
     bool m_isHandlingWheelEvent { false };
