48 lines
1.5 KiB
HTML
48 lines
1.5 KiB
HTML
<body style="margin: 0px">
|
|
<div>Make sure WebKit doesn't crash when web authors blast away everything in DOMNodeInserted handler! https://bugs.webkit.org/show_bug.cgi?id=22634</div>
|
|
<div id="dragstart" contentEditable>Drag something from here to the document below</div>
|
|
<iframe src="about:blank" id="iframe"></iframe>
|
|
<script>
|
|
var iframe = document.getElementById("iframe");
|
|
iframe.style.height = "20px";
|
|
var doc = iframe.contentDocument;
|
|
doc.body.style.margin = "0px";
|
|
var divForDrop = document.createElement("div");
|
|
divForDrop.contentEditable = true;
|
|
doc.body.appendChild(divForDrop);
|
|
divForDrop.appendChild(document.createTextNode("Drop on this line!"));
|
|
|
|
function clearDivDuringInsertion()
|
|
{
|
|
doc.execCommand("selectall");
|
|
doc.execCommand("delete");
|
|
doc.execCommand("selectall");
|
|
}
|
|
|
|
divForDrop.addEventListener("DOMNodeInserted", clearDivDuringInsertion, true);
|
|
|
|
if (window.eventSender) {
|
|
testRunner.dumpAsText();
|
|
|
|
var startDiv = document.getElementById("dragstart");
|
|
startDiv.focus();
|
|
document.execCommand("selectall");
|
|
|
|
var startX = startDiv.offsetLeft + 10;
|
|
var startY = startDiv.offsetTop + 10;
|
|
|
|
var endX = iframe.offsetLeft + divForDrop.offsetLeft + 10;
|
|
var endY = iframe.offsetTop + divForDrop.offsetTop + 10;
|
|
|
|
eventSender.mouseMoveTo(startX, startY);
|
|
eventSender.mouseDown();
|
|
eventSender.leapForward(1000);
|
|
|
|
eventSender.mouseMoveTo(endX, endY);
|
|
eventSender.mouseUp();
|
|
|
|
document.body.innerHTML = "PASSED, no crash";
|
|
}
|
|
|
|
</script>
|