<html>
<body>
This is a test of our ability to convert a canvas to a data url and use it as a cursor. We pass if the cursor animates smoothly and without flickering.<br>
<canvas id="c" width="40" height="40"></canvas>
<script type="text/javascript">
var angle = 0;
var canvas = document.getElementById('c');
var ctx = canvas.getContext('2d');

function drawArrow() {
    angle = angle + 0.1;
    canvas.width = canvas.width; // reset canvas

    ctx.translate(ctx.canvas.width / 2, ctx.canvas.height / 2);
    ctx.rotate(angle);
    ctx.beginPath();
    ctx.rect(-10,-10, 20, 20);
    ctx.fill();

    document.body.style.cursor = 'url('+canvas.toDataURL()+'), pointer';
    requestAnimationFrame(drawArrow);
}

requestAnimationFrame(drawArrow);

</script>
</body>
</html>
