<html>
<head>
<script type="text/javascript">
function print(message)
{
var paragraph = document.createElement("li");
paragraph.appendChild(document.createTextNode(message));
document.getElementById("console").appendChild(paragraph);
}
function test()
{
if (window.testRunner) {
testRunner.dumpAsText();
}
var elt = document.getElementById("text");
txt = "this is\ra test\rof cursor";
txt2 = "this is\na test\nof cursor!";
// test getCursorPosition...
elt.value = txt;
elt.setSelectionRange(10, 14);
elt.focus();
elt.value = txt2;
elt.focus();
print(elt.selectionStart.toString() + ", " + elt.selectionEnd.toString());
// test setCursorPosition...
elt.value = txt2;
elt.setSelectionRange(10, 14);
elt.focus();
elt.value = txt;
elt.focus();
print(elt.selectionStart.toString() + ", " + elt.selectionEnd.toString());
}
</script>
</head>
<body onload="test();">
<p>This test used to check that the selection start was the same before and after a change to the contents of a textarea.</p>
<p>However now, in order to match the behavior of the other major browsers, selection is moved to the end of the text value when a change occurs to the contents of a text area.</p>
<p>Because this would invalidate the previous test, and that the previous test now perfectly shows the new behavior, we repurposed it.</p>
<br />
<p>rdar://problem/5423067 gmail is super annoying when trying to add a new name to the TO, CC or BCC fields</p>
<hr />
<form>
<textarea id="text"></textarea>
</form>
<hr />
<p><ol id="console"></ol></p>
</body>
</html>