<!DOCTYPE HTML> <html class="reftest-wait"><head> <meta charset="utf-8"> <title>Testcase #1 for bug 1129078</title> <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <script src="selection-utils.js"></script> <style type="text/css"> @font-face { font-family: Ahem; src: url("Ahem.ttf"); } html,body { margin:0; padding: 0; } body,pre { font-family: Ahem; font-size: 20px; } </style> </head> <body> <pre id="select"> 2af45494-ak7e-11e4-a0c6-a7e7 38222880-bj6d-11e4-8064-fb7b 3d649ae4-ci5c-11e4-995d-17b2 434351bc-dh4b-11e4-9971-4fc8 4dc0e0b4-eg4a-11e4-8c28-5319 a96319c8-ad7d-11e4-b312-039c </pre> <pre id="log" style="border:1px solid green"></pre> <script> var sel = window.getSelection(); var e = document.querySelector('#select'); function setupSelectionPrev3() { addChildRanges([[0,150,0,160], [0,65,0,70], [0,15,0,15]], e); sel.extend(e.firstChild, 10); // to get eDirPrevious direction } function setupSelectionPrev2() { addChildRanges([[0,150,0,160], [0,70,0,70]], e); sel.extend(e.firstChild, 65); // to get eDirPrevious direction } function setupSelectionPrev1() { addChildRanges([[0,160,0,160]], e); sel.extend(e.firstChild, 150); // to get eDirPrevious direction } function setupSelectionNext3() { addChildRanges([[0,10,0,15], [0,65,0,70], [0,150,0,160]], e); } function setupSelectionNext2() { addChildRanges([[0,10,0,15], [0,65,0,70]], e); } function setupSelectionNext2b() { addChildRanges([[0,15,0,80], [0,150,0,160]], e); } function setupSelectionNext1() { addChildRanges([[0,10,0,15]], e); } function setupSelectionNext1b() { addChildRanges([[0,15,0,170]], e); } function setupSelectionNext1c() { addChildRanges([[0,150,0,160]], e); } function runTest() { var hash = window.location.hash var op = hash.substring(6,8); var test = hash.substring(0,6); if (hash.substring(0,5) == "#prev") { if (test == "#prev1") { setupSelectionPrev3(); if (op == "SL") { sel.extend(e.firstChild, 8); } else if (op == "SR") { sel.extend(e.firstChild, 12); } else if (op == "AD") { addChildRanges([[0,1,0,2]], e); } else { sel.extend(e.firstChild, 1); } } else if (test == "#prev2") { setupSelectionPrev3(); sel.extend(e.firstChild, 13); } else if (test == "#prev3") { if (op == "S_") { setupSelectionPrev3(); sel.extend(e.firstChild, 20); } else if (op == "SA") { setupSelectionPrev3(); sel.extend(e.firstChild, 20); } } else if (test == "#prev4") { addChildRanges([[0,67,0,70], [0,150,0,160], [0,15,0,67]], e); } else if (test == "#prev5") { if (op == "S_") { setupSelectionNext2b(); } else if (op == "SA") { setupSelectionNext2b(); } } else if (test == "#prev6") { addChildRanges([[0,152,0,160], [0,15,0,152]], e); } else if (test == "#prev7") { if (op == "AD") { setupSelectionPrev3(); addChildRanges([[0,168,0,170]], e); } else if (op == "S_") { setupSelectionNext1b(); } else if (op == "SA") { setupSelectionNext1b(); } } } else { if (test == "#next1") { if (op == "SL") { setupSelectionNext3(); sel.extend(e.firstChild, 158); } else if (op == "SR") { setupSelectionNext3(); sel.extend(e.firstChild, 162); } else if (op == "AD") { setupSelectionNext3(); addChildRanges([[0,1,0,2]], e); } else if (op == "S_") { setupSelectionNext1c(); sel.extend(e.firstChild, 1); } else if (op == "SA") { setupSelectionNext1c(); sel.extend(e.firstChild, 1); } } else if (test == "#next2") { addChildRanges([[0,10,0,13], [0,150,0,151]], e); sel.extend(e.firstChild, 13); } else if (test == "#next3") { if (op == "S_") { addChildRanges([[0,10,0,15], [0,150,0,151]], e); sel.extend(e.firstChild, 20); } else if (op == "SA") { setupSelectionNext3(); sel.extend(e.firstChild, 20); } } else if (test == "#next4") { setupSelectionNext3(); sel.extend(e.firstChild, 67); } else if (test == "#next5") { if (op == "S_") { setupSelectionNext3(); sel.extend(e.firstChild, 80); } else if (op == "SA") { setupSelectionNext3(); sel.extend(e.firstChild, 80); } } else if (test == "#next6") { setupSelectionNext3(); sel.extend(e.firstChild, 152); } else if (test == "#next7") { setupSelectionNext3(); if (op == "AD") { addChildRanges([[0,168,0,170]], e); } else { sel.extend(e.firstChild, 170); } } } document.documentElement.removeAttribute("class"); } SimpleTest.waitForFocus(runTest); </script> </body> </html>