blob: 18949ed84181dc1d3a72572d755ea822130ab7d6 [file] [log] [blame]
<!DOCTYPE html> <!-- webkit-test-runner [ useFlexibleViewport=true ] -->
<html>
<head>
<meta name="viewport" content="initial-scale=1.0">
<script src="../../resources/ui-helper.js"></script>
<link rel="stylesheet" href="resources/test.css">
</head>
<body>
<p>This tests that a text placeholder is inserted into a <code>contenteditable</code> element. This test can only be run in WebKitTestRunner or DumpRenderTree.</p>
<div id="test" class="test" style="width: 200px; height: 200px; border: 1px solid black" contenteditable="true">Hello from Cupertino!</div>
<script>
if (window.testRunner)
testRunner.waitUntilDone();
async function runTest()
{
let testElement = document.getElementById("test");
if (window.testRunner)
await UIHelper.activateElementAndWaitForInputSession(testElement);
else
await UIHelper.callFunctionAndWaitForEvent(() => testElement.focus(), testElement, "focus");
let positionOfFrom = testElement.textContent.indexOf("from");
window.getSelection().setBaseAndExtent(testElement.firstChild, positionOfFrom, testElement.firstChild, positionOfFrom);
if (window.internals) {
// Because we are using the Ahem font almost all glyphs have the same width.
let glyphWidth = parseInt(window.getComputedStyle(testElement, null).fontSize, 10);
internals.insertTextPlaceholder(2 * glyphWidth, 0 /* height */);
}
// Defocus field to hide the cursor.
await UIHelper.callFunctionAndWaitForEvent(() => testElement.blur(), testElement, "blur");
if (window.testRunner)
testRunner.notifyDone();
}
runTest();
</script>
</body>
</html>