blob: 62811075d82fd7688e9d4eca5daa07c2f6aa7e7e [file] [log] [blame]
<!DOCTYPE html>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script><html>
<div class="scenario">
Tests:
<br>
Select a word via double-click. Delete. Then undo the delete. The space that got
smart deleted should now be selected.
</div>
</div>
<div contenteditable id="root">
foo <span id="word">bar</span> baz
</div>
<div id="log"></div>
<script>
test(function() {
if (!window.eventSender || !window.internals) {
assert_unreached('This test requires eventSender and internals.');
return;
}
// Make double-click to select trailing whitespace too.
internals.settings.setEditingBehavior('win');
internals.settings.setSelectTrailingWhitespaceEnabled(true);
// Select "bar "
var word = document.getElementById('word');
var x = word.offsetLeft + word.offsetWidth / 2;
var y = word.offsetTop + word.offsetHeight / 2;
eventSender.mouseMoveTo(x, y);
eventSender.mouseDown();
eventSender.mouseUp();
eventSender.mouseDown();
eventSender.mouseUp();
document.execCommand('Delete');
document.execCommand('Undo');
var selection = window.getSelection();
assert_equals(selection.anchorNode, word.firstChild, 'anchorNode');
assert_equals(selection.anchorOffset, 0, 'anchorOffset');
assert_equals(selection.focusNode, word.nextSibling, 'focusNode');
assert_equals(selection.focusOffset, 1, 'focusOffset');
});
</script>