Bug 897701: Don't entrain the target of the pan longer than necessary. r=jlebar
authorKyle Huey <khuey@kylehuey.com>
Wed, 24 Jul 2013 16:27:45 -0700
changeset 152183 a016adf011fef97c215a55cc2d59eeacd41f8a44
parent 152182 38e2b972e33fae8c7b67480365f21ae7bfd50ffb
child 152184 ade076935d184c6d802358033248088e268034e5
push id2859
push userakeybl@mozilla.com
push dateMon, 16 Sep 2013 19:14:59 +0000
treeherdermozilla-beta@87d3c51cd2bf [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjlebar
bugs897701
milestone25.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 897701: Don't entrain the target of the pan longer than necessary. r=jlebar
dom/browser-element/BrowserElementPanning.js
--- a/dom/browser-element/BrowserElementPanning.js
+++ b/dom/browser-element/BrowserElementPanning.js
@@ -211,16 +211,19 @@ const ContentPanning = {
     if (this.target && click && (this.panning || this.preventNextClick)) {
       let target = this.target;
       let view = target.ownerDocument ? target.ownerDocument.defaultView
                                       : target;
       view.addEventListener('click', this, true, true);
     }
 
     this._finishPanning();
+
+    // Now that we're done, avoid entraining the thing we just panned.
+    this.pointerDownTarget = null;
   },
 
   // True when there's an async pan-zoom controll watching the
   // outermost scrollable frame, and we're waiting to see whether
   // we're going to take over from it and synchronously scroll an
   // inner scrollable frame.
   detectingScrolling: false,