| <!DOCTYPE html> |
| <html> |
| <body> |
| <p>This tests modifying a text node with selection but without a focus. |
| WebKit used to automatically set the focus to the root editable element of this node but it should not. |
| You should see 'PASS' below:</p> |
| <div id="target" onfocus="target.innerText='FAIL'" contenteditable>hello</div> |
| <div id="focused" contenteditable>world</div> |
| <script> |
| |
| var target = document.getElementById('target'); |
| var focused = document.getElementById('focused'); |
| focused.focus(); |
| getSelection().setBaseAndExtent(target.firstChild, 1, target.firstChild, 3); |
| |
| // The bug doesn't reproduce if this function was ran here or inside load event handler |
| setTimeout(function() { |
| target.firstChild.data = 'PASS'; |
| alert('activeElement:' + document.activeElement.id); // necessary to reproduce the bug |
| }, 50); |
| |
| </script> |
| </body> |
| </html> |