Replace goog.events.Event/EventTarget system with our own
This also removes goog.events.listen, goog.events.unlisten, goog.events.unlistenByKey and goog.events.BrowserEvent.
This commit is contained in:
@@ -1,11 +1,9 @@
|
||||
goog.provide('ol.pointer.EventSource');
|
||||
|
||||
goog.require('goog.events.BrowserEvent');
|
||||
|
||||
|
||||
/**
|
||||
* @param {ol.pointer.PointerEventHandler} dispatcher Event handler.
|
||||
* @param {!Object.<string, function(goog.events.BrowserEvent)>} mapping Event
|
||||
* @param {!Object.<string, function(Event)>} mapping Event
|
||||
* mapping.
|
||||
* @constructor
|
||||
*/
|
||||
@@ -18,7 +16,7 @@ ol.pointer.EventSource = function(dispatcher, mapping) {
|
||||
/**
|
||||
* @private
|
||||
* @const
|
||||
* @type {!Object.<string, function(goog.events.BrowserEvent)>}
|
||||
* @type {!Object.<string, function(Event)>}
|
||||
*/
|
||||
this.mapping_ = mapping;
|
||||
};
|
||||
@@ -36,7 +34,7 @@ ol.pointer.EventSource.prototype.getEvents = function() {
|
||||
/**
|
||||
* Returns a mapping between the supported event types and
|
||||
* the handlers that should handle an event.
|
||||
* @return {Object.<string, function(goog.events.BrowserEvent)>}
|
||||
* @return {Object.<string, function(Event)>}
|
||||
* Event/Handler mapping
|
||||
*/
|
||||
ol.pointer.EventSource.prototype.getMapping = function() {
|
||||
@@ -47,7 +45,7 @@ ol.pointer.EventSource.prototype.getMapping = function() {
|
||||
/**
|
||||
* Returns the handler that should handle a given event type.
|
||||
* @param {string} eventType The event type.
|
||||
* @return {function(goog.events.BrowserEvent)} Handler
|
||||
* @return {function(Event)} Handler
|
||||
*/
|
||||
ol.pointer.EventSource.prototype.getHandlerForEvent = function(eventType) {
|
||||
return this.mapping_[eventType];
|
||||
|
||||
@@ -50,7 +50,7 @@ ol.pointer.MouseSource = function(dispatcher) {
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!Object.<string, goog.events.BrowserEvent|Object>}
|
||||
* @type {!Object.<string, Event|Object>}
|
||||
*/
|
||||
this.pointerMap = dispatcher.pointerMap;
|
||||
|
||||
@@ -107,7 +107,7 @@ ol.pointer.MouseSource.DEDUP_DIST = 25;
|
||||
* or detect that the positions are invalid.
|
||||
*
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
* @return {boolean} True, if the event was generated by a touch.
|
||||
*/
|
||||
ol.pointer.MouseSource.prototype.isEventSimulatedFromTouch_ = function(inEvent) {
|
||||
@@ -129,12 +129,12 @@ ol.pointer.MouseSource.prototype.isEventSimulatedFromTouch_ = function(inEvent)
|
||||
* Creates a copy of the original event that will be used
|
||||
* for the fake pointer event.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
* @param {ol.pointer.PointerEventHandler} dispatcher Event handler.
|
||||
* @return {Object} The copied event.
|
||||
*/
|
||||
ol.pointer.MouseSource.prepareEvent = function(inEvent, dispatcher) {
|
||||
var e = dispatcher.cloneEvent(inEvent, inEvent.getBrowserEvent());
|
||||
var e = dispatcher.cloneEvent(inEvent, inEvent);
|
||||
|
||||
// forward mouse preventDefault
|
||||
var pd = e.preventDefault;
|
||||
@@ -154,7 +154,7 @@ ol.pointer.MouseSource.prepareEvent = function(inEvent, dispatcher) {
|
||||
/**
|
||||
* Handler for `mousedown`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MouseSource.prototype.mousedown = function(inEvent) {
|
||||
if (!this.isEventSimulatedFromTouch_(inEvent)) {
|
||||
@@ -173,7 +173,7 @@ ol.pointer.MouseSource.prototype.mousedown = function(inEvent) {
|
||||
/**
|
||||
* Handler for `mousemove`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MouseSource.prototype.mousemove = function(inEvent) {
|
||||
if (!this.isEventSimulatedFromTouch_(inEvent)) {
|
||||
@@ -186,7 +186,7 @@ ol.pointer.MouseSource.prototype.mousemove = function(inEvent) {
|
||||
/**
|
||||
* Handler for `mouseup`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MouseSource.prototype.mouseup = function(inEvent) {
|
||||
if (!this.isEventSimulatedFromTouch_(inEvent)) {
|
||||
@@ -204,7 +204,7 @@ ol.pointer.MouseSource.prototype.mouseup = function(inEvent) {
|
||||
/**
|
||||
* Handler for `mouseover`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MouseSource.prototype.mouseover = function(inEvent) {
|
||||
if (!this.isEventSimulatedFromTouch_(inEvent)) {
|
||||
@@ -217,7 +217,7 @@ ol.pointer.MouseSource.prototype.mouseover = function(inEvent) {
|
||||
/**
|
||||
* Handler for `mouseout`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MouseSource.prototype.mouseout = function(inEvent) {
|
||||
if (!this.isEventSimulatedFromTouch_(inEvent)) {
|
||||
@@ -230,7 +230,7 @@ ol.pointer.MouseSource.prototype.mouseout = function(inEvent) {
|
||||
/**
|
||||
* Dispatches a `pointercancel` event.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MouseSource.prototype.cancel = function(inEvent) {
|
||||
var e = ol.pointer.MouseSource.prepareEvent(inEvent, this.dispatcher);
|
||||
|
||||
@@ -53,7 +53,7 @@ ol.pointer.MsSource = function(dispatcher) {
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!Object.<string, goog.events.BrowserEvent|Object>}
|
||||
* @type {!Object.<string, Event|Object>}
|
||||
*/
|
||||
this.pointerMap = dispatcher.pointerMap;
|
||||
|
||||
@@ -77,14 +77,14 @@ goog.inherits(ol.pointer.MsSource, ol.pointer.EventSource);
|
||||
* for the fake pointer event.
|
||||
*
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
* @return {Object} The copied event.
|
||||
*/
|
||||
ol.pointer.MsSource.prototype.prepareEvent_ = function(inEvent) {
|
||||
var e = inEvent;
|
||||
if (goog.isNumber(inEvent.getBrowserEvent().pointerType)) {
|
||||
e = this.dispatcher.cloneEvent(inEvent, inEvent.getBrowserEvent());
|
||||
e.pointerType = this.POINTER_TYPES[inEvent.getBrowserEvent().pointerType];
|
||||
if (goog.isNumber(inEvent.pointerType)) {
|
||||
e = this.dispatcher.cloneEvent(inEvent, inEvent);
|
||||
e.pointerType = this.POINTER_TYPES[inEvent.pointerType];
|
||||
}
|
||||
|
||||
return e;
|
||||
@@ -103,10 +103,10 @@ ol.pointer.MsSource.prototype.cleanup = function(pointerId) {
|
||||
/**
|
||||
* Handler for `msPointerDown`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MsSource.prototype.msPointerDown = function(inEvent) {
|
||||
this.pointerMap[inEvent.getBrowserEvent().pointerId.toString()] = inEvent;
|
||||
this.pointerMap[inEvent.pointerId.toString()] = inEvent;
|
||||
var e = this.prepareEvent_(inEvent);
|
||||
this.dispatcher.down(e, inEvent);
|
||||
};
|
||||
@@ -115,7 +115,7 @@ ol.pointer.MsSource.prototype.msPointerDown = function(inEvent) {
|
||||
/**
|
||||
* Handler for `msPointerMove`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MsSource.prototype.msPointerMove = function(inEvent) {
|
||||
var e = this.prepareEvent_(inEvent);
|
||||
@@ -126,19 +126,19 @@ ol.pointer.MsSource.prototype.msPointerMove = function(inEvent) {
|
||||
/**
|
||||
* Handler for `msPointerUp`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MsSource.prototype.msPointerUp = function(inEvent) {
|
||||
var e = this.prepareEvent_(inEvent);
|
||||
this.dispatcher.up(e, inEvent);
|
||||
this.cleanup(inEvent.getBrowserEvent().pointerId);
|
||||
this.cleanup(inEvent.pointerId);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Handler for `msPointerOut`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MsSource.prototype.msPointerOut = function(inEvent) {
|
||||
var e = this.prepareEvent_(inEvent);
|
||||
@@ -149,7 +149,7 @@ ol.pointer.MsSource.prototype.msPointerOut = function(inEvent) {
|
||||
/**
|
||||
* Handler for `msPointerOver`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MsSource.prototype.msPointerOver = function(inEvent) {
|
||||
var e = this.prepareEvent_(inEvent);
|
||||
@@ -160,23 +160,23 @@ ol.pointer.MsSource.prototype.msPointerOver = function(inEvent) {
|
||||
/**
|
||||
* Handler for `msPointerCancel`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MsSource.prototype.msPointerCancel = function(inEvent) {
|
||||
var e = this.prepareEvent_(inEvent);
|
||||
this.dispatcher.cancel(e, inEvent);
|
||||
this.cleanup(inEvent.getBrowserEvent().pointerId);
|
||||
this.cleanup(inEvent.pointerId);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Handler for `msLostPointerCapture`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MsSource.prototype.msLostPointerCapture = function(inEvent) {
|
||||
var e = this.dispatcher.makeEvent('lostpointercapture',
|
||||
inEvent.getBrowserEvent(), inEvent);
|
||||
inEvent, inEvent);
|
||||
this.dispatcher.dispatchEvent(e);
|
||||
};
|
||||
|
||||
@@ -184,10 +184,10 @@ ol.pointer.MsSource.prototype.msLostPointerCapture = function(inEvent) {
|
||||
/**
|
||||
* Handler for `msGotPointerCapture`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.MsSource.prototype.msGotPointerCapture = function(inEvent) {
|
||||
var e = this.dispatcher.makeEvent('gotpointercapture',
|
||||
inEvent.getBrowserEvent(), inEvent);
|
||||
inEvent, inEvent);
|
||||
this.dispatcher.dispatchEvent(e);
|
||||
};
|
||||
|
||||
@@ -57,7 +57,7 @@ goog.inherits(ol.pointer.NativeSource, ol.pointer.EventSource);
|
||||
/**
|
||||
* Handler for `pointerdown`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.NativeSource.prototype.pointerDown = function(inEvent) {
|
||||
this.dispatcher.fireNativeEvent(inEvent);
|
||||
@@ -67,7 +67,7 @@ ol.pointer.NativeSource.prototype.pointerDown = function(inEvent) {
|
||||
/**
|
||||
* Handler for `pointermove`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.NativeSource.prototype.pointerMove = function(inEvent) {
|
||||
this.dispatcher.fireNativeEvent(inEvent);
|
||||
@@ -77,7 +77,7 @@ ol.pointer.NativeSource.prototype.pointerMove = function(inEvent) {
|
||||
/**
|
||||
* Handler for `pointerup`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.NativeSource.prototype.pointerUp = function(inEvent) {
|
||||
this.dispatcher.fireNativeEvent(inEvent);
|
||||
@@ -87,7 +87,7 @@ ol.pointer.NativeSource.prototype.pointerUp = function(inEvent) {
|
||||
/**
|
||||
* Handler for `pointerout`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.NativeSource.prototype.pointerOut = function(inEvent) {
|
||||
this.dispatcher.fireNativeEvent(inEvent);
|
||||
@@ -97,7 +97,7 @@ ol.pointer.NativeSource.prototype.pointerOut = function(inEvent) {
|
||||
/**
|
||||
* Handler for `pointerover`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.NativeSource.prototype.pointerOver = function(inEvent) {
|
||||
this.dispatcher.fireNativeEvent(inEvent);
|
||||
@@ -107,7 +107,7 @@ ol.pointer.NativeSource.prototype.pointerOver = function(inEvent) {
|
||||
/**
|
||||
* Handler for `pointercancel`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.NativeSource.prototype.pointerCancel = function(inEvent) {
|
||||
this.dispatcher.fireNativeEvent(inEvent);
|
||||
@@ -117,7 +117,7 @@ ol.pointer.NativeSource.prototype.pointerCancel = function(inEvent) {
|
||||
/**
|
||||
* Handler for `lostpointercapture`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.NativeSource.prototype.lostPointerCapture = function(inEvent) {
|
||||
this.dispatcher.fireNativeEvent(inEvent);
|
||||
@@ -127,7 +127,7 @@ ol.pointer.NativeSource.prototype.lostPointerCapture = function(inEvent) {
|
||||
/**
|
||||
* Handler for `gotpointercapture`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.NativeSource.prototype.gotPointerCapture = function(inEvent) {
|
||||
this.dispatcher.fireNativeEvent(inEvent);
|
||||
|
||||
@@ -31,8 +31,8 @@
|
||||
goog.provide('ol.pointer.PointerEvent');
|
||||
|
||||
|
||||
goog.require('goog.events');
|
||||
goog.require('goog.events.Event');
|
||||
goog.require('ol.events');
|
||||
goog.require('ol.events.Event');
|
||||
|
||||
|
||||
/**
|
||||
@@ -42,9 +42,9 @@ goog.require('goog.events.Event');
|
||||
* touch events and even native pointer events.
|
||||
*
|
||||
* @constructor
|
||||
* @extends {goog.events.Event}
|
||||
* @extends {ol.events.Event}
|
||||
* @param {string} type The type of the event to create.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
* @param {Object.<string, ?>=} opt_eventDict An optional dictionary of
|
||||
* initial event properties.
|
||||
*/
|
||||
@@ -53,9 +53,9 @@ ol.pointer.PointerEvent = function(type, browserEvent, opt_eventDict) {
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {goog.events.BrowserEvent}
|
||||
* @type {Event}
|
||||
*/
|
||||
this.browserEvent = browserEvent;
|
||||
this.originalEvent = browserEvent;
|
||||
|
||||
var eventDict = opt_eventDict ? opt_eventDict : {};
|
||||
|
||||
@@ -192,7 +192,7 @@ ol.pointer.PointerEvent = function(type, browserEvent, opt_eventDict) {
|
||||
};
|
||||
}
|
||||
};
|
||||
goog.inherits(ol.pointer.PointerEvent, goog.events.Event);
|
||||
goog.inherits(ol.pointer.PointerEvent, ol.events.Event);
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -31,9 +31,8 @@
|
||||
goog.provide('ol.pointer.PointerEventHandler');
|
||||
|
||||
goog.require('goog.dom');
|
||||
goog.require('goog.events');
|
||||
goog.require('goog.events.BrowserEvent');
|
||||
goog.require('goog.events.EventTarget');
|
||||
goog.require('ol.events');
|
||||
goog.require('ol.events.EventTarget');
|
||||
|
||||
goog.require('ol.has');
|
||||
goog.require('ol.pointer.MouseSource');
|
||||
@@ -45,7 +44,7 @@ goog.require('ol.pointer.TouchSource');
|
||||
|
||||
/**
|
||||
* @constructor
|
||||
* @extends {goog.events.EventTarget}
|
||||
* @extends {ol.events.EventTarget}
|
||||
* @param {Element|HTMLDocument} element Viewport element.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler = function(element) {
|
||||
@@ -60,12 +59,12 @@ ol.pointer.PointerEventHandler = function(element) {
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!Object.<string, goog.events.BrowserEvent|Object>}
|
||||
* @type {!Object.<string, Event|Object>}
|
||||
*/
|
||||
this.pointerMap = {};
|
||||
|
||||
/**
|
||||
* @type {Object.<string, function(goog.events.BrowserEvent)>}
|
||||
* @type {Object.<string, function(Event)>}
|
||||
* @private
|
||||
*/
|
||||
this.eventMap_ = {};
|
||||
@@ -78,7 +77,7 @@ ol.pointer.PointerEventHandler = function(element) {
|
||||
|
||||
this.registerSources();
|
||||
};
|
||||
goog.inherits(ol.pointer.PointerEventHandler, goog.events.EventTarget);
|
||||
goog.inherits(ol.pointer.PointerEventHandler, ol.events.EventTarget);
|
||||
|
||||
|
||||
/**
|
||||
@@ -159,7 +158,7 @@ ol.pointer.PointerEventHandler.prototype.unregister_ = function() {
|
||||
/**
|
||||
* Calls the right handler for a new event.
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} inEvent Browser event.
|
||||
* @param {Event} inEvent Browser event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.eventHandler_ = function(inEvent) {
|
||||
var type = inEvent.type;
|
||||
@@ -177,7 +176,7 @@ ol.pointer.PointerEventHandler.prototype.eventHandler_ = function(inEvent) {
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.addEvents_ = function(events) {
|
||||
events.forEach(function(eventName) {
|
||||
goog.events.listen(this.element_, eventName,
|
||||
ol.events.listen(this.element_, eventName,
|
||||
this.eventHandler_, false, this);
|
||||
}, this);
|
||||
};
|
||||
@@ -190,7 +189,7 @@ ol.pointer.PointerEventHandler.prototype.addEvents_ = function(events) {
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.removeEvents_ = function(events) {
|
||||
events.forEach(function(e) {
|
||||
goog.events.unlisten(this.element_, e,
|
||||
ol.events.unlisten(this.element_, e,
|
||||
this.eventHandler_, false, this);
|
||||
}, this);
|
||||
};
|
||||
@@ -199,7 +198,7 @@ ol.pointer.PointerEventHandler.prototype.removeEvents_ = function(events) {
|
||||
/**
|
||||
* Returns a snapshot of inEvent, with writable properties.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} browserEvent Browser event.
|
||||
* @param {Event} browserEvent Browser event.
|
||||
* @param {Event|Touch} inEvent An event that contains
|
||||
* properties to copy.
|
||||
* @return {Object} An object containing shallow copies of
|
||||
@@ -225,7 +224,7 @@ ol.pointer.PointerEventHandler.prototype.cloneEvent = function(browserEvent, inE
|
||||
/**
|
||||
* Triggers a 'pointerdown' event.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.down = function(pointerEventData, browserEvent) {
|
||||
this.fireEvent(ol.pointer.EventType.POINTERDOWN,
|
||||
@@ -236,7 +235,7 @@ ol.pointer.PointerEventHandler.prototype.down = function(pointerEventData, brows
|
||||
/**
|
||||
* Triggers a 'pointermove' event.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.move = function(pointerEventData, browserEvent) {
|
||||
this.fireEvent(ol.pointer.EventType.POINTERMOVE,
|
||||
@@ -247,7 +246,7 @@ ol.pointer.PointerEventHandler.prototype.move = function(pointerEventData, brows
|
||||
/**
|
||||
* Triggers a 'pointerup' event.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.up = function(pointerEventData, browserEvent) {
|
||||
this.fireEvent(ol.pointer.EventType.POINTERUP,
|
||||
@@ -258,7 +257,7 @@ ol.pointer.PointerEventHandler.prototype.up = function(pointerEventData, browser
|
||||
/**
|
||||
* Triggers a 'pointerenter' event.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.enter = function(pointerEventData, browserEvent) {
|
||||
pointerEventData.bubbles = false;
|
||||
@@ -270,7 +269,7 @@ ol.pointer.PointerEventHandler.prototype.enter = function(pointerEventData, brow
|
||||
/**
|
||||
* Triggers a 'pointerleave' event.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.leave = function(pointerEventData, browserEvent) {
|
||||
pointerEventData.bubbles = false;
|
||||
@@ -282,7 +281,7 @@ ol.pointer.PointerEventHandler.prototype.leave = function(pointerEventData, brow
|
||||
/**
|
||||
* Triggers a 'pointerover' event.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.over = function(pointerEventData, browserEvent) {
|
||||
pointerEventData.bubbles = true;
|
||||
@@ -294,7 +293,7 @@ ol.pointer.PointerEventHandler.prototype.over = function(pointerEventData, brows
|
||||
/**
|
||||
* Triggers a 'pointerout' event.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.out = function(pointerEventData, browserEvent) {
|
||||
pointerEventData.bubbles = true;
|
||||
@@ -306,7 +305,7 @@ ol.pointer.PointerEventHandler.prototype.out = function(pointerEventData, browse
|
||||
/**
|
||||
* Triggers a 'pointercancel' event.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.cancel = function(pointerEventData, browserEvent) {
|
||||
this.fireEvent(ol.pointer.EventType.POINTERCANCEL,
|
||||
@@ -317,7 +316,7 @@ ol.pointer.PointerEventHandler.prototype.cancel = function(pointerEventData, bro
|
||||
/**
|
||||
* Triggers a combination of 'pointerout' and 'pointerleave' events.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.leaveOut = function(pointerEventData, browserEvent) {
|
||||
this.out(pointerEventData, browserEvent);
|
||||
@@ -332,7 +331,7 @@ ol.pointer.PointerEventHandler.prototype.leaveOut = function(pointerEventData, b
|
||||
/**
|
||||
* Triggers a combination of 'pointerover' and 'pointerevents' events.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.enterOver = function(pointerEventData, browserEvent) {
|
||||
this.over(pointerEventData, browserEvent);
|
||||
@@ -366,7 +365,7 @@ ol.pointer.PointerEventHandler.prototype.contains_ = function(container, contain
|
||||
*
|
||||
* @param {string} inType A string representing the type of event to create.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
* @return {ol.pointer.PointerEvent} A PointerEvent of type `inType`.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.makeEvent = function(inType, pointerEventData, browserEvent) {
|
||||
@@ -378,7 +377,7 @@ ol.pointer.PointerEventHandler.prototype.makeEvent = function(inType, pointerEve
|
||||
* Make and dispatch an event in one call.
|
||||
* @param {string} inType A string representing the type of event.
|
||||
* @param {Object} pointerEventData Pointer event data.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.fireEvent = function(inType, pointerEventData, browserEvent) {
|
||||
var e = this.makeEvent(inType, pointerEventData, browserEvent);
|
||||
@@ -389,10 +388,10 @@ ol.pointer.PointerEventHandler.prototype.fireEvent = function(inType, pointerEve
|
||||
/**
|
||||
* Creates a pointer event from a native pointer event
|
||||
* and dispatches this event.
|
||||
* @param {goog.events.BrowserEvent} nativeEvent A platform event with a target.
|
||||
* @param {Event} nativeEvent A platform event with a target.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.fireNativeEvent = function(nativeEvent) {
|
||||
var e = this.makeEvent(nativeEvent.type, nativeEvent.getBrowserEvent(),
|
||||
var e = this.makeEvent(nativeEvent.type, nativeEvent,
|
||||
nativeEvent);
|
||||
this.dispatchEvent(e);
|
||||
};
|
||||
@@ -402,7 +401,7 @@ ol.pointer.PointerEventHandler.prototype.fireNativeEvent = function(nativeEvent)
|
||||
* Wrap a native mouse event into a pointer event.
|
||||
* This proxy method is required for the legacy IE support.
|
||||
* @param {string} eventType The pointer event type.
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
* @return {ol.pointer.PointerEvent} The wrapped event.
|
||||
*/
|
||||
ol.pointer.PointerEventHandler.prototype.wrapMouseEvent = function(eventType, browserEvent) {
|
||||
|
||||
@@ -54,7 +54,7 @@ ol.pointer.TouchSource = function(dispatcher, mouseSource) {
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!Object.<string, goog.events.BrowserEvent|Object>}
|
||||
* @type {!Object.<string, Event|Object>}
|
||||
*/
|
||||
this.pointerMap = dispatcher.pointerMap;
|
||||
|
||||
@@ -176,7 +176,7 @@ ol.pointer.TouchSource.prototype.cancelResetClickCount_ = function() {
|
||||
|
||||
/**
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} browserEvent Browser event
|
||||
* @param {Event} browserEvent Browser event
|
||||
* @param {Touch} inTouch Touch event
|
||||
* @return {Object} A pointer object.
|
||||
*/
|
||||
@@ -212,12 +212,12 @@ ol.pointer.TouchSource.prototype.touchToPointer_ = function(browserEvent, inTouc
|
||||
|
||||
/**
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} inEvent Touch event
|
||||
* @param {function(goog.events.BrowserEvent, Object)} inFunction In function.
|
||||
* @param {Event} inEvent Touch event
|
||||
* @param {function(Event, Object)} inFunction In function.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.processTouches_ = function(inEvent, inFunction) {
|
||||
var touches = Array.prototype.slice.call(
|
||||
inEvent.getBrowserEvent().changedTouches);
|
||||
inEvent.changedTouches);
|
||||
var count = touches.length;
|
||||
function preventDefault() {
|
||||
inEvent.preventDefault();
|
||||
@@ -260,10 +260,10 @@ ol.pointer.TouchSource.prototype.findTouch_ = function(touchList, searchId) {
|
||||
* this "abandoned" touch
|
||||
*
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.vacuumTouches_ = function(inEvent) {
|
||||
var touchList = inEvent.getBrowserEvent().touches;
|
||||
var touchList = inEvent.touches;
|
||||
// pointerMap.getCount() should be < touchList.length here,
|
||||
// as the touchstart has not been processed yet.
|
||||
var keys = Object.keys(this.pointerMap);
|
||||
@@ -293,11 +293,11 @@ ol.pointer.TouchSource.prototype.vacuumTouches_ = function(inEvent) {
|
||||
* Handler for `touchstart`, triggers `pointerover`,
|
||||
* `pointerenter` and `pointerdown` events.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.touchstart = function(inEvent) {
|
||||
this.vacuumTouches_(inEvent);
|
||||
this.setPrimaryTouch_(inEvent.getBrowserEvent().changedTouches[0]);
|
||||
this.setPrimaryTouch_(inEvent.changedTouches[0]);
|
||||
this.dedupSynthMouse_(inEvent);
|
||||
this.clickCount_++;
|
||||
this.processTouches_(inEvent, this.overDown_);
|
||||
@@ -306,7 +306,7 @@ ol.pointer.TouchSource.prototype.touchstart = function(inEvent) {
|
||||
|
||||
/**
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
* @param {Object} inPointer The in pointer object.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.overDown_ = function(browserEvent, inPointer) {
|
||||
@@ -324,7 +324,7 @@ ol.pointer.TouchSource.prototype.overDown_ = function(browserEvent, inPointer) {
|
||||
/**
|
||||
* Handler for `touchmove`.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.touchmove = function(inEvent) {
|
||||
inEvent.preventDefault();
|
||||
@@ -334,7 +334,7 @@ ol.pointer.TouchSource.prototype.touchmove = function(inEvent) {
|
||||
|
||||
/**
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
* @param {Object} inPointer The in pointer.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.moveOverOut_ = function(browserEvent, inPointer) {
|
||||
@@ -371,7 +371,7 @@ ol.pointer.TouchSource.prototype.moveOverOut_ = function(browserEvent, inPointer
|
||||
* Handler for `touchend`, triggers `pointerup`,
|
||||
* `pointerout` and `pointerleave` events.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The event.
|
||||
* @param {Event} inEvent The event.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.touchend = function(inEvent) {
|
||||
this.dedupSynthMouse_(inEvent);
|
||||
@@ -381,7 +381,7 @@ ol.pointer.TouchSource.prototype.touchend = function(inEvent) {
|
||||
|
||||
/**
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} browserEvent An event.
|
||||
* @param {Event} browserEvent An event.
|
||||
* @param {Object} inPointer The inPointer object.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.upOut_ = function(browserEvent, inPointer) {
|
||||
@@ -396,7 +396,7 @@ ol.pointer.TouchSource.prototype.upOut_ = function(browserEvent, inPointer) {
|
||||
* Handler for `touchcancel`, triggers `pointercancel`,
|
||||
* `pointerout` and `pointerleave` events.
|
||||
*
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.touchcancel = function(inEvent) {
|
||||
this.processTouches_(inEvent, this.cancelOut_);
|
||||
@@ -405,7 +405,7 @@ ol.pointer.TouchSource.prototype.touchcancel = function(inEvent) {
|
||||
|
||||
/**
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} browserEvent The event.
|
||||
* @param {Event} browserEvent The event.
|
||||
* @param {Object} inPointer The in pointer.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.cancelOut_ = function(browserEvent, inPointer) {
|
||||
@@ -430,11 +430,11 @@ ol.pointer.TouchSource.prototype.cleanUpPointer_ = function(inPointer) {
|
||||
* Prevent synth mouse events from creating pointer events.
|
||||
*
|
||||
* @private
|
||||
* @param {goog.events.BrowserEvent} inEvent The in event.
|
||||
* @param {Event} inEvent The in event.
|
||||
*/
|
||||
ol.pointer.TouchSource.prototype.dedupSynthMouse_ = function(inEvent) {
|
||||
var lts = this.mouseSource.lastTouches;
|
||||
var t = inEvent.getBrowserEvent().changedTouches[0];
|
||||
var t = inEvent.changedTouches[0];
|
||||
// only the primary finger will synth mouse events
|
||||
if (this.isPrimaryTouch_(t)) {
|
||||
// remember x/y of last touch
|
||||
|
||||
Reference in New Issue
Block a user