43 lines
1.1 KiB
HTML
43 lines
1.1 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
<script>
|
|
var i = 0;
|
|
var context;
|
|
var timeoutId;
|
|
|
|
function loop()
|
|
{
|
|
i = (i + 1) % 255;
|
|
context.fillStyle = "rgb(" + i + ", 0, 0)";
|
|
context.fillRect(0, 0, 150, 150);
|
|
|
|
// 5 iterations should suffice to throttle the timer.
|
|
if (i == 5) {
|
|
debug("Timer should still not be throttled because it is drawing on a canvas inside viewport.");
|
|
shouldBeFalse("internals.isTimerThrottled(timeoutId)");
|
|
clearInterval(timeoutId);
|
|
finishJSTest();
|
|
}
|
|
}
|
|
|
|
function runTest() {
|
|
context = document.getElementById("canvas").getContext('2d');
|
|
|
|
timeoutId = setInterval(loop, 5);
|
|
debug("Timer should initially not be throttled.");
|
|
shouldBeFalse("internals.isTimerThrottled(timeoutId)");
|
|
}
|
|
</script>
|
|
</head>
|
|
<body onload="runTest();">
|
|
<script>
|
|
description("Test that a DOM timer drawing on a canvas inside viewport does not get throttled.");
|
|
jsTestIsAsync = true;
|
|
</script>
|
|
<canvas id="canvas" width=150 height=150></canvas>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|