<!DOCTYPE html>
<html>
<head>
<style>
#textarea {
    font-size: 18px;
    width: 400px;
    margin: 0;
    padding: 0;
}
</style>
</head>
<body>
<br><br><br>
<textarea id="textarea" rows="6">
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p</textarea>

<p>This tests autoscroll in text area correctly shows selection highlight.
To manually test, scroll the text area down to the end.
Slowly drag up your mouse starting from the line closest to the upper edge of the text area.
Once the contents of the text area get scrolled a little,
the selection should not jump down to the end.</p>
<div id="log"></div>

<script>
if (window.testRunner)
    testRunner.dumpAsText();

// The text area displays 6 lines of text. We scroll down to the end
// and start dragging the cursor up from the first line that appears (the k line).
// Therefore, the selection should contain the letter k.
var textarea = document.getElementById("textarea");
textarea.scrollTop = textarea.scrollHeight;
if (window.eventSender) {
    var x = textarea.offsetLeft + textarea.offsetWidth / 2;
    var y = textarea.offsetTop + 1;
    eventSender.dragMode = false;
    eventSender.mouseMoveTo(x, y);
    eventSender.mouseDown();
    eventSender.mouseMoveTo(x, 0);
    eventSender.mouseUp();

    var log = document.getElementById("log");
    var selectedText = textarea.value.substring(textarea.selectionStart, textarea.selectionEnd);
    if (selectedText.indexOf("k") != -1)
        log.innerText = "PASSED the selection did not jump down.";
    else
        log.innerText = "FAILED the selection jumped down.";
}
</script>
</body>
</html>
