54 lines
1.5 KiB
HTML
54 lines
1.5 KiB
HTML
|
<!DOCTYPE html>
|
||
|
<html>
|
||
|
<head>
|
||
|
<script src="../../resources/js-test.js"></script>
|
||
|
</head>
|
||
|
<body>
|
||
|
<script>
|
||
|
description("Tests that user gestures are propagated through requestAnimationFrame");
|
||
|
jsTestIsAsync = true;
|
||
|
|
||
|
shouldBeFalse("internals.isProcessingUserGesture()");
|
||
|
|
||
|
debug("");
|
||
|
|
||
|
debug("Calling requestAnimationFrame without a user gesture...");
|
||
|
requestAnimationFrame(() => {
|
||
|
shouldBeFalse("internals.isProcessingUserGesture()");
|
||
|
|
||
|
debug("");
|
||
|
|
||
|
debug("Triggering a user gesture...");
|
||
|
internals.withUserGesture(() => {
|
||
|
debug("Calling requestAnimationFrame with a user gesture...");
|
||
|
requestAnimationFrame(() => {
|
||
|
shouldBeTrue("internals.isProcessingUserGesture()");
|
||
|
|
||
|
debug("");
|
||
|
|
||
|
debug("Calling requestAnimationFrame inside the callback of a prior requestAnimationFrame...");
|
||
|
requestAnimationFrame(() => {
|
||
|
shouldBeTrue("internals.isProcessingUserGesture()");
|
||
|
|
||
|
debug("");
|
||
|
|
||
|
debug("Overriding the user gesture...");
|
||
|
internals.withoutUserGesture(() => {
|
||
|
debug("Calling requestAnimationFrame without a user gesture...");
|
||
|
requestAnimationFrame(() => {
|
||
|
shouldBeFalse("internals.isProcessingUserGesture()");
|
||
|
|
||
|
debug("");
|
||
|
|
||
|
finishJSTest();
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
|
||
|
</script>
|
||
|
</body>
|
||
|
</html>
|