tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_takeFocus.html (3281B)


      1 <html>
      2 
      3 <head>
      4  <title>nsIAccessible::takeFocus testing</title>
      5 
      6  <link rel="stylesheet" type="text/css"
      7        href="chrome://mochikit/content/tests/SimpleTest/test.css" />
      8 
      9  <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
     10 
     11  <script type="application/javascript"
     12          src="../common.js"></script>
     13  <script type="application/javascript"
     14          src="../role.js"></script>
     15  <script type="application/javascript"
     16          src="../states.js"></script>
     17  <script type="application/javascript"
     18          src="../events.js"></script>
     19 
     20  <script type="application/javascript">
     21    // //////////////////////////////////////////////////////////////////////////
     22    // Invokers
     23 
     24    function takeFocusInvoker(aID) {
     25      this.accessible = getAccessible(aID);
     26 
     27      this.eventSeq = [ new focusChecker(this.accessible) ];
     28 
     29      this.invoke = function takeFocusInvoker_invoke() {
     30        this.accessible.takeFocus();
     31      };
     32 
     33      this.getID = function takeFocusInvoker_getID() {
     34        return "takeFocus for " + prettyName(aID);
     35      };
     36    }
     37 
     38    // //////////////////////////////////////////////////////////////////////////
     39    // Test
     40 
     41    // gA11yEventDumpToConsole = true; // debug stuff
     42 
     43    var gQueue = null;
     44    function doTest() {
     45      disableLogging(); // from test_focusedChild
     46      gQueue = new eventQueue();
     47 
     48      gQueue.push(new takeFocusInvoker("aria-link"));
     49      gQueue.push(new takeFocusInvoker("aria-link2"));
     50      gQueue.push(new takeFocusInvoker("link"));
     51      gQueue.push(new takeFocusInvoker(document));
     52      gQueue.push(new takeFocusInvoker("lb_item2"));
     53      gQueue.push(new takeFocusInvoker(document));
     54      gQueue.push(new takeFocusInvoker("lb_item3.2"));
     55      gQueue.push(new takeFocusInvoker(document));
     56      gQueue.push(new takeFocusInvoker("lb_item3.1"));
     57 
     58      gQueue.invoke(); // Will call SimpleTest.finish();
     59    }
     60 
     61    SimpleTest.waitForExplicitFinish();
     62    addA11yLoadEvent(doTest);
     63  </script>
     64 </head>
     65 
     66 <body>
     67 
     68  <a target="_blank"
     69     href="https://bugzilla.mozilla.org/show_bug.cgi?id=429547"
     70     title="Support aria-activedescendant usage in nsIAccesible::TakeFocus()">
     71    Mozilla Bug 429547
     72  </a>
     73  <a target="_blank"
     74     href="https://bugzilla.mozilla.org/show_bug.cgi?id=452710"
     75     title="nsIAccessible::takeFocus testing">
     76    Mozilla Bug 452710
     77  </a>
     78  <a target="_blank"
     79     href="https://bugzilla.mozilla.org/show_bug.cgi?id=706067"
     80     title="Make takeFocus work on widget items">
     81    Mozilla Bug 706067
     82  </a>
     83  <p id="display"></p>
     84  <div id="content" style="display: none"></div>
     85  <pre id="test">
     86  </pre>
     87 
     88  <span id="aria-link" role="link" tabindex="0">link</span>
     89  <span id="aria-link2" role="link" tabindex="0">link</span>
     90 
     91  <a id="link" href="">link</a>
     92 
     93  <div role="listbox" aria-activedescendant="item1" id="container" tabindex="1">
     94    <div role="option" id="item1">item1</div>
     95    <div role="option" id="item2">item2</div>
     96    <div role="option" id="item3">item3</div>
     97  </div>
     98 
     99  <select id="listbox" size="5">
    100    <option id="lb_item1">item1</option>
    101    <option id="lb_item2">item2</option>
    102    <optgroup>
    103      <option id="lb_item3.1">item 3.1</option>
    104      <option id="lb_item3.2">item 3.2</option>
    105    </optgroup>
    106  </select>
    107 </body>
    108 </html>