| OLD | NEW |
| 1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> | 1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
| 2 <html> | 2 <html> |
| 3 <head> | 3 <head> |
| 4 <meta charset="utf-8"> | 4 <meta charset="utf-8"> |
| 5 <script src="../../resources/js-test.js"></script> | 5 <script src="../../resources/js-test.js"></script> |
| 6 </head> | 6 </head> |
| 7 <body> | 7 <body> |
| 8 <p id="description"></p> | 8 <p id="description"></p> |
| 9 <input id="text" readonly="readonly" value="2009-04-29"/><br/> | 9 <input id="text" readonly="readonly" value="2009-04-29"/><br/> |
| 10 <textarea id="area" readonly="readonly">2009-04-29</textarea></div> | 10 <textarea id="area" readonly="readonly">2009-04-29</textarea></div> |
| 11 <div id="console"></div> | 11 <div id="console"></div> |
| 12 <div> | 12 <div> |
| 13 <script type="text/javascript"> | 13 <script type="text/javascript"> |
| 14 description('Tests for selectionStart and selectionEnd on read-only INPUT and TE
XTAREA. <br/> <a href="https://bugs.webkit.org/show_bug.cgi?id=25444">bug 25444<
/a>: SelectionStart, selectionEnd properties return wrong values when the select
ion is in a form input.'); | 14 description('Tests for selectionStart and selectionEnd on read-only INPUT and TE
XTAREA. <br/> <a href="https://bugs.webkit.org/show_bug.cgi?id=25444">bug 25444<
/a>: SelectionStart, selectionEnd properties return wrong values when the select
ion is in a form input.'); |
| 15 | 15 |
| 16 function startTest(element, start, end) { | 16 function startTest(element, start, end) { |
| 17 element.setSelectionRange(start, end); | 17 element.setSelectionRange(start, end); |
| 18 | 18 |
| 19 start = start < 0 ? 0 : start; | 19 start = start < 0 ? end : start; |
| 20 end = end > 10 ? 10 : end; | 20 end = end > 10 ? 10 : end; |
| 21 start = start > end ? end : start; | 21 start = start > end ? end : start; |
| 22 | 22 |
| 23 if (element.selectionStart != start) | 23 if (element.selectionStart != start) |
| 24 testFailed('element.selectionStart' + ' should be ' + start + ' but it i
s ' + element.selectionStart); | 24 testFailed('element.selectionStart' + ' should be ' + start + ' but it i
s ' + element.selectionStart); |
| 25 else | 25 else |
| 26 testPassed('element.selectionStart' + ' is ' + element.selectionStart); | 26 testPassed('element.selectionStart' + ' is ' + element.selectionStart); |
| 27 | 27 |
| 28 if (element.selectionEnd != end) | 28 if (element.selectionEnd != end) |
| 29 testFailed('element.selectionEnd' + ' should be ' + end + ' but it is '
+ element.selectionEnd); | 29 testFailed('element.selectionEnd' + ' should be ' + end + ' but it is '
+ element.selectionEnd); |
| 30 else | 30 else |
| 31 testPassed('element.selectionEnd' + ' is ' + element.selectionEnd); | 31 testPassed('element.selectionEnd' + ' is ' + element.selectionEnd); |
| 32 } | 32 } |
| 33 | 33 |
| 34 function testHandler(element) { | 34 function testHandler(element) { |
| 35 var offsets = [[0, 10], [0, 9], [1, 10], [5,5], [8,5], [-1,0], [-1,50]]; | 35 var offsets = [[0, 10], [0, 9], [1, 10], [5,5], [8,5], [-1,0], [-1,50]]; |
| 36 for (var i = 0; i < offsets.length; i++) | 36 for (var i = 0; i < offsets.length; i++) |
| 37 startTest(element, offsets[i][0], offsets[i][1]); | 37 startTest(element, offsets[i][0], offsets[i][1]); |
| 38 } | 38 } |
| 39 | 39 |
| 40 testHandler(document.getElementById('text')); | 40 testHandler(document.getElementById('text')); |
| 41 testHandler(document.getElementById('area')); | 41 testHandler(document.getElementById('area')); |
| 42 | 42 |
| 43 </script> | 43 </script> |
| 44 </body> | 44 </body> |
| 45 </html> | 45 </html> |
| 46 | 46 |
| OLD | NEW |