<!DOCTYPE html>
<!-- 
    This tests verifies that shadow is repainted using the full source image of the element instead of just the dirty area. 
    There should be 3 green boxes of same size with blue shadow on the lower right corner. Check that the shadow is not interrupted.
-->
<html>
<head>
    <style>
        .box {
            margin: 10px;
            height: 50px;
            width: 50px;
            background-color: green;
        }

        .before {
            background-color: red;
        }

        .shadow {
            margin: 50px;
            -webkit-filter: drop-shadow(10px 10px 10px blue);
        }
    </style>

    <script src="../../fast/repaint/resources/repaint.js"></script>
    <script>
        if (window.testRunner)
            testRunner.dumpAsText(true);

        function repaintTest()
        {
            document.querySelector(".before").classList.remove("before");
        }
    </script>
</head>

<body onload="runRepaintTest()">

    <div class="shadow">
        <div class="box"></div>
        <div class="box before"></div>
        <div class="box"></div>
    </div>

</body>
</html>
