<!
DOCTYPE HTML>
<
html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=1102906
-->
<
head>
<
meta charset=
"utf-8">
<
title>Test for Bug 1102906</
title>
<
script src=
"/tests/SimpleTest/EventUtils.js"></
script>
<
script src=
"/tests/SimpleTest/SimpleTest.js"></
script>
<
link rel=
"stylesheet" href=
"/tests/SimpleTest/test.css">
<
script>
"use strict";
/* Test for Bug 1102906 */
/* The caret should be movable by using keyboard after drag-and-drop. */
SimpleTest.waitForExplicitFinish();
SimpleTest.waitForFocus( () => {
let content = document.getElementById(
"content");
let drag = document.getElementById(
"drag");
let selection = window.getSelection();
/* Perform drag-and-drop for an arbitrary content. The caret should be at
the end of the contenteditable. */
selection.selectAllChildren(drag);
synthesizeDrop(drag, content, {},
"copy");
let textContentAfterDrop = content.textContent;
/* Move the caret to the front of the contenteditable by using keyboard. */
for (let i = 0; i < content.textContent.length; ++i) {
sendKey(
"LEFT");
}
sendChar(
"!");
is(content.textContent,
"!" + textContentAfterDrop,
"The exclamation mark should be inserted at the front.");
SimpleTest.finish();
});
</
script>
</
head>
<
body>
<a target=
"_blank" href=
"https://bugzilla.mozilla.org/show_bug.cgi?id=1102906">Mozil
la Bug 1102906</a>
<div id="content" contenteditable="true"><span id="drag">Drag</span></div>
</body>
</html>