-
Notifications
You must be signed in to change notification settings - Fork 3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add a WPT for pointerevent user activation trigger.
Related to HTML issue: whatwg/html#3849 Also fix double-activation in Chrome's gesture tap. Bug: 826293, 1265587 Change-Id: I3bc3bcbcfeda242512fb777a1c8881c475fed5fc Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3254213 Reviewed-by: Robert Flack <flackr@chromium.org> Reviewed-by: Avi Drissman <avi@chromium.org> Commit-Queue: Mustaq Ahmed <mustaq@chromium.org> Cr-Commit-Position: refs/heads/main@{#940118}
- Loading branch information
1 parent
755553e
commit aa2fc4c
Showing
2 changed files
with
62 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<meta name="variant" content="?mouse"> | ||
<meta name="variant" content="?pen"> | ||
<meta name="variant" content="?touch"> | ||
<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> | ||
<script src="resources/utils.js"></script> | ||
</head> | ||
<body> | ||
<h1>Test for pointerevent click activation trigger</h1> | ||
<p>Tests user activation from a pointer click.</p> | ||
<ol id="instructions"> | ||
<li>Click anywhere in the document. | ||
</ol> | ||
<script> | ||
let pointer_type = location.search.substring(1); | ||
|
||
promise_test(async () => { | ||
const test_pointer = pointer_type + "TestPointer"; | ||
|
||
new test_driver.Actions().addPointer(test_pointer, pointer_type) | ||
.pointerMove(0, 0, {origin:document.body, sourceName:test_pointer}) | ||
.pointerDown({sourceName:test_pointer}) | ||
.pointerUp({sourceName:test_pointer}) | ||
.send(); | ||
|
||
let pointerdown_event = getEvent('pointerdown'); | ||
let pointerup_event = getEvent('pointerup'); | ||
let click_event = getEvent('click'); | ||
|
||
await pointerdown_event; | ||
let consumed_pointerdown = await consumeTransientActivation(); | ||
await pointerup_event; | ||
let consumed_pointerup = await consumeTransientActivation(); | ||
await click_event; | ||
let consumed_click = await consumeTransientActivation(); | ||
|
||
if (pointer_type === "mouse") { | ||
assert_true(consumed_pointerdown, | ||
pointer_type + " pointerdown event should result in activation"); | ||
assert_false(consumed_pointerup, | ||
pointer_type + " pointerup should have no activation after pointerdown consumption"); | ||
assert_false(consumed_click, | ||
pointer_type + " click should have no activation after pointerdown consumption"); | ||
} else { | ||
assert_false(consumed_pointerdown, | ||
pointer_type + " pointerdown event should not result in activation"); | ||
assert_true(consumed_pointerup, | ||
pointer_type + " pointerup event should result in activation"); | ||
assert_false(consumed_click, | ||
pointer_type + " click should have no activation after pointerup consumption"); | ||
} | ||
}, "Activation through " + pointer_type + " pointerevent click"); | ||
</script> | ||
</body> | ||
</html> |