]> git.donarmstrong.com Git - dactyl.git/blobdiff - common/modules/finder.jsm
Import r6976 from upstream hg supporting Firefox up to 25.*
[dactyl.git] / common / modules / finder.jsm
index 9c1897deb9859bd34c0bbf62404423de2fd31f75..738b17772bf4835fe5def2d718c3d6f4b26ad4f3 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (c) 2008-2012 Kris Maglione <maglione.k@gmail.com>
+// Copyright (c) 2008-2013 Kris Maglione <maglione.k@gmail.com>
 //
 // This work is licensed for reuse under an MIT license. Details are
 // given in the LICENSE.txt file included with this file.
@@ -75,9 +75,7 @@ var RangeFinder = Module("rangefinder", {
         this.find("", mode == this.modes.FIND_BACKWARD);
     },
 
-    bootstrap: function bootstrap(str, backward) {
-        if (arguments.length < 2 && this.rangeFind)
-            backward = this.rangeFind.reverse;
+    bootstrap: function bootstrap(str, backward=this.rangeFind && this.rangeFind.reverse) {
 
         let highlighted = this.rangeFind && this.rangeFind.highlighted;
         let selections = this.rangeFind && this.rangeFind.selections;
@@ -104,7 +102,7 @@ var RangeFinder = Module("rangefinder", {
             return "";
         }
 
-        this.options["findflags"].forEach(function (f) replacer(f, f));
+        this.options["findflags"].forEach(f => replacer(f, f));
 
         let pattern = str.replace(/\\(.|$)/g, replacer);
 
@@ -430,7 +428,7 @@ var RangeFind = Class("RangeFind", {
     findRange: function findRange(range) {
         let doc = range.startContainer.ownerDocument;
         let win = doc.defaultView;
-        let ranges = this.ranges.filter(function (r)
+        let ranges = this.ranges.filter(r =>
             r.window === win && RangeFind.sameDocument(r.range, range) && RangeFind.contains(r.range, range));
 
         if (this.backward)
@@ -516,7 +514,7 @@ var RangeFind = Class("RangeFind", {
     },
 
     iter: function iter(word) {
-        let saved = ["lastRange", "lastString", "range", "regexp"].map(function (s) [s, this[s]], this);
+        let saved = ["lastRange", "lastString", "range", "regexp"].map(s => [s, this[s]]);
         let res;
         try {
             let regexp = this.regexp && word != util.regexp.escape(word);
@@ -542,7 +540,7 @@ var RangeFind = Class("RangeFind", {
             }
         }
         finally {
-            saved.forEach(function ([k, v]) this[k] = v, this);
+            saved.forEach(([k, v]) => { this[k] = v; });
         }
     },
 
@@ -611,7 +609,7 @@ var RangeFind = Class("RangeFind", {
         this.range = this.findRange(this.startRange) || this.ranges[0];
         util.assert(this.range, "Null range", false);
         this.ranges.first = this.range;
-        this.ranges.forEach(function (range) range.save());
+        this.ranges.forEach(range => { range.save(); });
         this.forward = null;
         this.found = false;
     },
@@ -837,7 +835,7 @@ var RangeFind = Class("RangeFind", {
         }
         return true;
     },
-    selectNodePath: ["a", "xhtml:a", "*[@onclick]"].map(function (p) "ancestor-or-self::" + p).join(" | "),
+    selectNodePath: ["a", "xhtml:a", "*[@onclick]"].map(p => "ancestor-or-self::" + p).join(" | "),
     union: function union(a, b) {
         let start = a.compareBoundaryPoints(a.START_TO_START, b) < 0 ? a : b;
         let end   = a.compareBoundaryPoints(a.END_TO_END, b) > 0 ? a : b;