Index: remoting/webapp/app_remoting/js/drag_and_drop.js |
diff --git a/remoting/webapp/app_remoting/js/drag_and_drop.js b/remoting/webapp/app_remoting/js/drag_and_drop.js |
deleted file mode 100644 |
index 7861ad196ab60ab0fad4b373890394304c6befd9..0000000000000000000000000000000000000000 |
--- a/remoting/webapp/app_remoting/js/drag_and_drop.js |
+++ /dev/null |
@@ -1,120 +0,0 @@ |
-// Copyright 2014 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-/** |
- * @fileoverview |
- * Provide support for drag-and-drop operations in shaped windows. The |
- * standard API doesn't work because no "dragover" events are generated |
- * if the mouse moves outside the window region. |
- */ |
-'use strict'; |
- |
-/** @suppress {duplicate} */ |
-var remoting = remoting || {}; |
- |
-/** |
- * @constructor |
- * @param {Element} element The element to register for drag and drop. |
- * @param {function(number, number):void} dragUpdate Callback to receive the |
- * X and Y deltas as the element is dragged. |
- * @param {function():void=} opt_dragStart Initiation callback. |
- * @param {function():void=} opt_dragEnd Completion callback. |
- */ |
-remoting.DragAndDrop = function(element, dragUpdate, |
- opt_dragStart, opt_dragEnd) { |
- /** @private */ |
- this.element_ = element; |
- |
- /** @private */ |
- this.dragUpdate_ = dragUpdate; |
- |
- /** @private */ |
- this.dragStart_ = opt_dragStart; |
- |
- /** @private */ |
- this.dragEnd_ = opt_dragEnd; |
- |
- /** @private {number} */ |
- this.previousDeltaX_ = 0; |
- |
- /** @private {number} */ |
- this.previousDeltaY_ = 0; |
- |
- /** @type {boolean} */ |
- this.seenNonZeroDelta_ = false; |
- |
- /** @private {function(Event):void} */ |
- this.callOnMouseUp_ = this.onMouseUp_.bind(this); |
- |
- /** @private {function(Event):void} */ |
- this.callOnMouseMove_ = this.onMouseMove_.bind(this); |
- |
- element.addEventListener('mousedown', this.onMouseDown_.bind(this), false); |
-}; |
- |
-/** |
- * @param {Event} event |
- */ |
-remoting.DragAndDrop.prototype.onMouseDown_ = function(event) { |
- if (event.button != 0) { |
- return; |
- } |
- this.previousDeltaX_ = 0; |
- this.previousDeltaY_ = 0; |
- this.seenNonZeroDelta_ = false; |
- this.element_.addEventListener('mousemove', this.callOnMouseMove_, false); |
- this.element_.addEventListener('mouseup', this.callOnMouseUp_, false); |
- this.element_.requestPointerLock(); |
- if (this.dragStart_) { |
- this.dragStart_(); |
- } |
-}; |
- |
-/** |
- * TODO(jamiewalch): Remove the workarounds in this method once the pointer-lock |
- * API is fixed (crbug.com/419562). |
- * |
- * @param {Event} event |
- */ |
-remoting.DragAndDrop.prototype.onMouseMove_ = function(event) { |
- // Ignore the first non-zero delta. A click event will generate a bogus |
- // mousemove event, even if the mouse doesn't move. |
- if (!this.seenNonZeroDelta_ && |
- (event.movementX != 0 || event.movementY != 0)) { |
- this.seenNonZeroDelta_ = true; |
- } |
- |
- /** |
- * The mouse lock API is buggy when used with shaped windows, and occasionally |
- * generates single, large deltas that must be filtered out. |
- * |
- * @param {number} previous |
- * @param {number} current |
- * @return {number} |
- */ |
- var adjustDelta = function(previous, current) { |
- var THRESHOLD = 100; // Based on observed values. |
- if (Math.abs(previous < THRESHOLD) && Math.abs(current) >= THRESHOLD) { |
- return 0; |
- } |
- return current; |
- }; |
- this.previousDeltaX_ = adjustDelta(this.previousDeltaX_, event.movementX); |
- this.previousDeltaY_ = adjustDelta(this.previousDeltaY_, event.movementY); |
- if (this.previousDeltaX_ != 0 || this.previousDeltaY_ != 0) { |
- this.dragUpdate_(this.previousDeltaX_, this.previousDeltaY_); |
- } |
-}; |
- |
-/** |
- * @param {Event} event |
- */ |
-remoting.DragAndDrop.prototype.onMouseUp_ = function(event) { |
- this.element_.removeEventListener('mousemove', this.callOnMouseMove_, false); |
- this.element_.removeEventListener('mouseup', this.callOnMouseUp_, false); |
- document.exitPointerLock(); |
- if (this.dragEnd_) { |
- this.dragEnd_(); |
- } |
-}; |