summaryrefslogtreecommitdiffstats
path: root/third_party/WebKit/LayoutTests/editing/deleting/delete-node-after-DOMNodeRemoved.html
blob: 810a41ca82e1b09ba14194fc63b1c424bac55957 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<p>This tests for a bug where delete would crash if a node just after the selection to delete is removed in a DOMNodeRemoved event handler for the last node in the selection to delete. <a href="rdar://problem/5156801">&lt;rdar://problem/5156801&gt;</a></p>
<div id="div" contenteditable="true">foo<span id="foo">x</span><span id="removeme">y</span></div>
<p id="console"></p>

<script>

if (window.testRunner)
    window.testRunner.dumpAsText();

function log(message) {
    var console = document.getElementById("console");
    var text = document.createTextNode(message);
    console.appendChild(text);
}

function removeHandler() {
    var removeme = document.getElementById("removeme");
    removeme.parentNode.removeChild(removeme);
}

document.getElementById("foo").addEventListener("DOMNodeRemoved", removeHandler);
var sel = window.getSelection();
sel.setBaseAndExtent( document.getElementById('foo'), 0, document.getElementById('foo'), 1 );
document.execCommand("Delete");

log(document.getElementById('div').innerHTML);

</script>

PASS