Use pointer events everywhere

This commit is contained in:
ahocevar
2019-08-31 22:49:40 +02:00
parent 1f5dfef200
commit d416866108
6 changed files with 37 additions and 77 deletions

View File

@@ -287,7 +287,6 @@ class PluggableMap extends BaseObject {
listen(this.viewport_, EventType.CONTEXTMENU, this.handleBrowserEvent, this);
listen(this.viewport_, EventType.WHEEL, this.handleBrowserEvent, this);
listen(this.viewport_, EventType.MOUSEWHEEL, this.handleBrowserEvent, this);
/**
* @type {Collection<import("./control/Control.js").default>}
@@ -524,7 +523,6 @@ class PluggableMap extends BaseObject {
this.mapBrowserEventHandler_.dispose();
unlisten(this.viewport_, EventType.CONTEXTMENU, this.handleBrowserEvent, this);
unlisten(this.viewport_, EventType.WHEEL, this.handleBrowserEvent, this);
unlisten(this.viewport_, EventType.MOUSEWHEEL, this.handleBrowserEvent, this);
if (this.handleResize_ !== undefined) {
removeEventListener(EventType.RESIZE, this.handleResize_, false);
this.handleResize_ = undefined;

View File

@@ -2,10 +2,11 @@
* @module ol/control/MousePosition
*/
import {listen} from '../events.js';
import EventType from '../events/EventType.js';
import EventType from '../pointer/EventType.js';
import {getChangeEventType} from '../Object.js';
import Control from './Control.js';
import {getTransformFromProjections, identityTransform, get as getProjection} from '../proj.js';
import 'pepjs';
/**
@@ -170,13 +171,11 @@ class MousePosition extends Control {
if (map) {
const viewport = map.getViewport();
this.listenerKeys.push(
listen(viewport, EventType.MOUSEMOVE, this.handleMouseMove, this),
listen(viewport, EventType.TOUCHSTART, this.handleMouseMove, this)
listen(viewport, EventType.POINTERMOVE, this.handleMouseMove, this)
);
if (this.renderOnMouseOut_) {
this.listenerKeys.push(
listen(viewport, EventType.MOUSEOUT, this.handleMouseOut, this),
listen(viewport, EventType.TOUCHEND, this.handleMouseOut, this)
listen(viewport, EventType.POINTEROUT, this.handleMouseOut, this)
);
}
}

View File

@@ -31,15 +31,6 @@ export default {
KEYDOWN: 'keydown',
KEYPRESS: 'keypress',
LOAD: 'load',
MOUSEDOWN: 'mousedown',
MOUSEMOVE: 'mousemove',
MOUSEOUT: 'mouseout',
MOUSEUP: 'mouseup',
MOUSEWHEEL: 'mousewheel',
MSPOINTERDOWN: 'MSPointerDown',
RESIZE: 'resize',
TOUCHSTART: 'touchstart',
TOUCHMOVE: 'touchmove',
TOUCHEND: 'touchend',
WHEEL: 'wheel'
};

View File

@@ -3,7 +3,7 @@
*/
import {always} from '../events/condition.js';
import EventType from '../events/EventType.js';
import {DEVICE_PIXEL_RATIO, FIREFOX, SAFARI} from '../has.js';
import {DEVICE_PIXEL_RATIO, FIREFOX} from '../has.js';
import Interaction, {zoomByDelta} from './Interaction.js';
import {clamp} from '../math.js';
@@ -153,7 +153,7 @@ class MouseWheelZoom extends Interaction {
return true;
}
const type = mapBrowserEvent.type;
if (type !== EventType.WHEEL && type !== EventType.MOUSEWHEEL) {
if (type !== EventType.WHEEL) {
return true;
}
@@ -178,11 +178,6 @@ class MouseWheelZoom extends Interaction {
if (wheelEvent.deltaMode === WheelEvent.DOM_DELTA_LINE) {
delta *= 40;
}
} else if (mapBrowserEvent.type == EventType.MOUSEWHEEL) {
delta = -wheelEvent.wheelDeltaY;
if (SAFARI) {
delta /= 3;
}
}
if (delta === 0) {