<html>
<head>
    <script src="repaint.js" type="text/javascript"></script>
    <script type="text/javascript">
        function repaintTest()
        {
            document.getElementById("t").lastChild.data='Passed Test';
        }
    </script>
</head>
<body onload="runRepaintTest();">
<p>
    This is a repaint test for <i><a href="http://bugs.webkit.org/show_bug.cgi?id=11277">http://bugs.webkit.org/show_bug.cgi?id=11277</a>
    REGRESSION: Incomplete repaint of overflow areas when deleting</i>.

    This shows that the repaint rect doesn't account for scrolling. You can
    use Quartz Debug to see that changing the text repaints a rect where the text would have been
    if it hadn't been scrolled.
</p>
<div id="t" style="overflow-y: scroll; outline: none; width: 80px; height: 69px;">
    <br><br><br><br><br><br><br><br><br>Failed Test
</div>
<script>
    document.getElementById("t").scrollTop = 128;
</script>
</body>
</html>
