<html>
    <head>
        <script>
            function test()
            {
                var sel = window.getSelection();
                sel.setPosition(document.getElementById('dv'), 0);
                document.execCommand("Delete");
            }
        </script>
    </head>
    <body onload="test()">
        <div>This tests that we only preserve an empty paragraph's style when moving paragraphs around if the selection is still in an empty paragraph after the move occurs.</div>
        <div>The test passes if the text below is still underlined.</div><br>
        <div contenteditable><span class="Apple-style-span" style="text-decoration: underline;">This text should be underlined</span><div id="dv"><br></div></div>
    </body>
</html>
