| <!DOCTYPE html> |
| <html> |
| <head> |
| <style type="text/css"> |
| div > * { |
| display: block; |
| } |
| </style> |
| </head> |
| <body> |
| <div id="test" contenteditable><hr><datagrid></datagrid><object></object></div> |
| <script src="../../resources/dump-as-markup.js"></script> |
| <script> |
| |
| var test = document.getElementById('test'); |
| test.focus(); |
| |
| Markup.description('This test ensures WebKit does not ignore the content of hr, datagrid, and object with child nodes.') |
| |
| var text = 'hello world WebKit'; |
| |
| for (var i = 0; i < test.childNodes.length; i++) { |
| var textNode = document.createTextNode(text); |
| test.childNodes[i].appendChild(textNode); |
| window.getSelection().setBaseAndExtent(textNode, 6, textNode, 11); |
| document.execCommand('bold', false, null); |
| } |
| |
| Markup.dump(test, '"world" and only "world" should be bolded in each element below'); |
| |
| window.getSelection().setPosition(test, 0); |
| |
| for (var i = 0; i < (text.length + 1) * test.childNodes.length - 1; i++) |
| window.getSelection().modify('extend', 'forward', 'character'); |
| |
| var range = window.getSelection().getRangeAt(0).cloneContents(); |
| |
| Markup.dump(range, 'The result below should be identical to the result above'); |
| |
| </script> |
| </body> |
| </html> |