mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-02-25 11:16:24 +00:00
Monotone-Parent: 3c5a8e942698ea3905e25425e79f63872340a177
Monotone-Revision: c92215743e18639bc67087d728b615679277ce13 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2006-11-08T23:46:28 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
@@ -28,3 +28,44 @@ HTMLTableElement.prototype.deselectAll = function() {
|
||||
for (var i = 0; i < nodes.length; i++)
|
||||
deselectNode(nodes[i]);
|
||||
}
|
||||
|
||||
/* "draggesture" seems inhibited on Mozilla so we create a work-around */
|
||||
HTMLTableElement.prototype.workAroundDragGesture = function() {
|
||||
this._dragGestureStartPoint = null;
|
||||
this.addEventListener("mousedown", this._dragGestureMouseDownHandler, false);
|
||||
}
|
||||
|
||||
HTMLTableElement.prototype._dragGestureMouseDownHandler = function(event) {
|
||||
this.addEventListener("mousemove", this._dragGestureMouseMoveHandler, false);
|
||||
this.addEventListener("mousedown", this._dragGestureMouseUpHandler, false);
|
||||
this._dragGestureStartPoint = new Array(event.clientX, event.clientY);
|
||||
this._dragGestureTarget = event.target;
|
||||
}
|
||||
|
||||
HTMLTableElement.prototype._dragGestureMouseUpHandler = function(event) {
|
||||
this.removeEventListener("mousemove", this._dragGestureMouseMoveHandler, false);
|
||||
this.removeEventListener("mousedown", this._dragGestureMouseUpHandler, false);
|
||||
this._dragGestureStartPoint = null;
|
||||
}
|
||||
|
||||
HTMLTableElement.prototype._dragGestureMouseMoveHandler = function(event) {
|
||||
var deltaX = event.clientX - this._dragGestureStartPoint[0];
|
||||
var deltaY = event.clientX - this._dragGestureStartPoint[0];
|
||||
if (Math.sqrt((deltaX * deltaX) + (deltaY * deltaY)) > 10) {
|
||||
this.removeEventListener("mousemove", this._dragGestureMouseMoveHandler, false);
|
||||
this.removeEventListener("mousedown", this._dragGestureMouseUpHandler, false);
|
||||
this._dragGestureStartPoint = null;
|
||||
var dragStart = document.createEvent("MouseEvents");
|
||||
dragStart.initMouseEvent("draggesture-hack", true, true, window,
|
||||
event.detail, event.screenX, event.screenY,
|
||||
event.clientX, event.clientY, event.ctrlKey,
|
||||
event.altKey, event.shiftKey, event.metaKey,
|
||||
event.button, null);
|
||||
this.dispatchEvent(dragStart);
|
||||
window.addEventListener("mouseup", document.DNDManager.destinationDrop, false);
|
||||
window.addEventListener("mouseover", document.DNDManager.destinationEnter, false);
|
||||
window.addEventListener("mousemove", document.DNDManager.destinationOver, false);
|
||||
window.addEventListener("mouseout", document.DNDManager.destinationExit, false);
|
||||
event.returnValue = false;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user