Files
sousa-gecko/testing/web-platform/tests/touch-events/multi-touch-touchmove.html
T
Euclid Ye df32c86191 Bug 2020176 [wpt PR 58152] - paint: Track whether script is handling touchmove per TouchId, a=testonly
Automatic update from web-platform-tests
Test: Multi-touch move should generate touchmoves from multiple sources

Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>

--

wpt-commits: 46c4a6d12a161615417b409b04462ee79741275c
wpt-pr: 58152
2026-03-10 15:42:50 +00:00

42 lines
1.7 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Simultaneous Touch Moves from multiple pointers</title>
<link rel=help href="https://github.com/servo/servo/issues/42921">
<link rel="author" title="Euclid Ye" href="mailto:yezhizhenjiakang@gmail.com">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
</head>
<body>
<script>
promise_test(async () => {
const seenPointers = new Set();
document.addEventListener("touchmove", (e) => {
for (let touch of e.changedTouches) {
seenPointers.add(touch.identifier);
}
});
await new test_driver.Actions()
.addPointer("f1", "touch")
.addPointer("f2", "touch")
.pointerMove(10, 10, { origin: "viewport", sourceName: "f1" })
.pointerMove(15, 15, { origin: "viewport", sourceName: "f2" })
.pointerDown({ sourceName: "f1" })
.pointerDown({ sourceName: "f2" })
.pointerMove(30, 30, { origin: "viewport", duration: 0, sourceName: "f1" })
.pointerMove(40, 40, { origin: "viewport", duration: 0, sourceName: "f2" })
.pointerUp({ sourceName: "f1" })
.pointerUp({ sourceName: "f2" })
.send();
assert_equals(seenPointers.size, 2, "Should have captured 2 distinct touch identifiers");
}, "Touchmove events should track multiple pointers");
</script>
</body>
</html>