blob: d43a691221761f2551d0497c297187042d5b3bc2 [file] [log] [blame]
<html>
<head>
<script>
function log(msg)
{
var console = document.getElementById('console');
console.innerHTML = console.innerHTML + msg + "<br>";
}
function buttonClick()
{
log("<br>clicking button");
// click the button
var button = document.getElementById('button');
eventSender.mouseMoveTo(button.offsetLeft + 20, button.offsetTop + 7);
eventSender.mouseDown();
eventSender.mouseUp();
testRunner.notifyDone();
}
function deleteSlider()
{
// delete the slider
log("<br>deleting slider");
var slider = document.getElementById('slider');
slider.parentNode.removeChild(slider);
setTimeout(buttonClick, 10);
}
function drag()
{
if (!window.testRunner)
return;
var slider = document.getElementById('slider');
testRunner.dumpAsText();
testRunner.waitUntilDone();
// drag slider, leave the mouse down
log("dragging slider");
eventSender.mouseMoveTo(slider.offsetLeft + 7, slider.offsetTop + 7);
eventSender.mouseDown();
eventSender.mouseMoveTo(slider.offsetLeft + 50, slider.offsetTop + 7);
setTimeout(deleteSlider, 10);
}
</script>
</head>
<body onload="drag()">
This tests that events don't continue to target a slider thumb if it is deleted while dragging.
<br>
<input type="button" id="button" value="Click Me!" onmouseup="log('button click!')">
<br>
<input type="range" id="slider" onmousedown="log('mousedown')" onmouseup="log('mouseup')" onmousemove="log('mousemove')" oninput="log('input')" value=0>
<div id="console"></div>
</body>
</html>