<!DOCTYPE HTML>
<html>
<head>
    <title>Repaint test for http://bugs.webkit.org/show_bug.cgi?id=12123</title>
    <style>
        .spacer { width: 0; }
        .test { direction: rtl; border: thin dotted lightgray; margin: 2px; height: 35px; }
        .outer { border: thin solid purple; padding: 5px; width: 50px; margin-right: 50px; }
        .outer > div { height: 10px; background-color: pink; }
        .outer > div > div { width: 40px; height: 10px; background-color: lightblue; }
        span { font-family: Ahem; color: blue; }
        .box { display: -webkit-box; }
    </style>
    <script src="resources/repaint.js"></script>
    <script>
        function repaintTest()
        {
            for (i = 1; i < 15; ++i)
                document.getElementById("spacer" + i).style.height = "6px";
        }
    </script>
</head>
<body onload="runRepaintTest()">
    <div class="test">
        <div class="spacer" id="spacer1"></div>
        <div class="outer">
            <div>
                <div style="float: right; margin-right: -2px;">
                    <span style="margin-right: -2px;">x</span>
                </div>
            </div>
        </div>
    </div>

    <div class="test">
        <div class="spacer" id="spacer2"></div>
        <div class="outer">
            <div>
                <div style="float: right; margin-right: -2px;">
                    <span style="margin-right: -8px;">x</span>
                </div>
            </div>
        </div>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer3"></div>
        <div class="outer">
            <div>
                <div style="float: right; margin-right: -8px;">
                    <span style="margin-right: -2px;">x</span>
                </div>
            </div>
        </div>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer4"></div>
        <div class="outer">
            <div>
                <div style="float: right;">
                    <span style="margin-right: -8px;">x</span>
                </div>
            </div>
        </div>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer5"></div>
        <div class="outer">
            <div>
                <div style="float: right; margin-right: -8px;">
                    <span>x</span>
                </div>
            </div>
        </div>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer6"></div>
        <div class="outer box" style="-webkit-box-orient: vertical;">
            <div>
                <div style="float: right; margin-right: -8px;">
                    <span>x</span>
                </div>
            </div>
        </div>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer12"></div>
        <div class="outer box" style="-webkit-box-orient: horizontal;">
            <div>
                <div style="float: right; margin-right: -8px;">
                    <span>x</span>
                </div>
            </div>
        </div>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer7"></div>
        <table class="outer">
            <tr>
                <td style="height: 10px; background-color: pink; width: 100%;">
                    <div style="width: 40px; height: 10px; background-color: lightblue; float: right;">
                        <span style="margin-right: -4px;">x</span>
                    </div>
                </td>
            </tr>
        </table>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer8"></div>
        <table class="outer">
            <tr>
                <td style="height: 10px; background-color: pink; width: 100%;">
                    <div style="width: 40px; height: 10px; background-color: lightblue; float: right;">
                        <span style="margin-right: -12px;">x</span>
                    </div>
                </td>
            </tr>
        </table>
    </div>
    
    <div class="test" style="height: 50px;">
        <div class="spacer" id="spacer14"></div>
        <table class="outer" style="display: inline-table;">
            <tr>
                <td style="height: 10px; background-color: pink; width: 100%;">
                    <div style="width: 40px; height: 10px; background-color: lightblue; float: right;">
                        <span style="margin-right: -12px;">x</span>
                    </div>
                </td>
            </tr>
        </table>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer9"></div>
        <div class="outer">
            <div>
                <div style="opacity: 0.75; float: right; margin-right: -8px;">
                    <span>x</span>
                </div>
            </div>
        </div>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer10"></div>
        <div class="outer">
            <div style="opacity: 0.75;">
                <div style="float: right; margin-right: -8px;">
                    <span>x</span>
                </div>
            </div>
        </div>
    </div>
    
    <div class="test">
        <div class="spacer" id="spacer11"></div>
        <div class="outer" style="opacity: 0.75">
            <div>
                <div style="float: right; margin-right: -8px;">
                    <span>x</span>
                </div>
            </div>
        </div>
    </div>
    <div class="test" style="height: 48px">
        <div class="spacer" id="spacer13"></div>
        <div class="outer">
            <div style="display: inline-block; height: 20px;">
                <div style="float: right; margin-right: -8px;">
                    <span>x</span>
                </div>
            </div>
        </div>
    </div>
</body>
</html>
