DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (4126098473d5)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
<!DOCTYPE HTML>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
   - License, v. 2.0. If a copy of the MPL was not distributed with this file,
   - You can obtain one at http://mozilla.org/MPL/2.0/.  -->
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=578771
-->

<head>
  <title>Test for Bug 578771</title>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
  <script src="/tests/SimpleTest/EventUtils.js"></script>  
</head>

<body>
  <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=578771">Mozilla Bug 578771</a>
  <p id="display"></p>
  <div id="content" style="display: none">
  </div>

  <pre id="test">
    <script type="application/javascript">

      /** Test for Bug 578771 **/
      SimpleTest.waitForExplicitFinish();

      function testElem(elem, elemTag) {
        var ce = document.getElementById("ce");
        ce.focus();

        synthesizeMouse(elem, 5, 5, {clickCount: 2 });
        ok(elem.selectionStart == 0 && elem.selectionEnd == 7,
           " Double-clicking on another " + elemTag + " works correctly");

        ce.focus();
        synthesizeMouse(elem, 5, 5, {clickCount: 3 });
        ok(elem.selectionStart == 0 && elem.selectionEnd == 14,
           "Triple-clicking on another " + elemTag + " works correctly");
      }
      // Avoid platform selection differences
      SimpleTest.waitForFocus(function() {
         SpecialPowers.pushPrefEnv({"set": [["layout.word_select.eat_space_to_next_word", false]]}, startTest);
      });

      function startTest() {
         var input = document.getElementById("ip");
         testElem(input, "input");

         var textarea = document.getElementById("ta");
         testElem(textarea, "textarea");

         SimpleTest.finish();
      }
   </script>
  </pre>

  <input id="ip" type="text" value="Mozilla editor" />
  <textarea id="ta">Mozilla editor</textarea>
  <div id="ce" contenteditable="true">Contenteditable div that could interfere with focus</div>
</body>
</html>