Fix type check errors in ol/pointer

This commit is contained in:
Kevin Schmidt
2018-10-03 10:41:29 -06:00
parent 83763a73d9
commit d3a82b0586
4 changed files with 9 additions and 8 deletions
+1 -1
View File
@@ -226,7 +226,7 @@ class MouseSource extends EventSource {
* @param {import("./PointerEventHandler.js").default} dispatcher Event handler. * @param {import("./PointerEventHandler.js").default} dispatcher Event handler.
* @return {Object} The copied event. * @return {Object} The copied event.
*/ */
function prepareEvent(inEvent, dispatcher) { export function prepareEvent(inEvent, dispatcher) {
const e = dispatcher.cloneEvent(inEvent, inEvent); const e = dispatcher.cloneEvent(inEvent, inEvent);
// forward mouse preventDefault // forward mouse preventDefault
+1
View File
@@ -171,6 +171,7 @@ class MsSource extends EventSource {
* @return {Object} The copied event. * @return {Object} The copied event.
*/ */
prepareEvent_(inEvent) { prepareEvent_(inEvent) {
/** @type {MSPointerEvent|Object} */
let e = inEvent; let e = inEvent;
if (typeof inEvent.pointerType === 'number') { if (typeof inEvent.pointerType === 'number') {
e = this.dispatcher.cloneEvent(inEvent, inEvent); e = this.dispatcher.cloneEvent(inEvent, inEvent);
+2 -2
View File
@@ -36,7 +36,7 @@ import {listen, unlisten} from '../events.js';
import EventTarget from '../events/Target.js'; import EventTarget from '../events/Target.js';
import {POINTER, MSPOINTER, TOUCH} from '../has.js'; import {POINTER, MSPOINTER, TOUCH} from '../has.js';
import PointerEventType from '../pointer/EventType.js'; import PointerEventType from '../pointer/EventType.js';
import MouseSource from '../pointer/MouseSource.js'; import MouseSource, {prepareEvent as prepareMouseEvent} from '../pointer/MouseSource.js';
import MsSource from '../pointer/MsSource.js'; import MsSource from '../pointer/MsSource.js';
import NativeSource from '../pointer/NativeSource.js'; import NativeSource from '../pointer/NativeSource.js';
import PointerEvent from '../pointer/PointerEvent.js'; import PointerEvent from '../pointer/PointerEvent.js';
@@ -402,7 +402,7 @@ class PointerEventHandler extends EventTarget {
*/ */
wrapMouseEvent(eventType, event) { wrapMouseEvent(eventType, event) {
const pointerEvent = this.makeEvent( const pointerEvent = this.makeEvent(
eventType, MouseSource.prepareEvent(event, this), event); eventType, prepareMouseEvent(event, this), event);
return pointerEvent; return pointerEvent;
} }
+5 -5
View File
@@ -300,12 +300,12 @@ class TouchSource extends EventSource {
if (count >= touchList.length) { if (count >= touchList.length) {
const d = []; const d = [];
for (let i = 0; i < count; ++i) { for (let i = 0; i < count; ++i) {
const key = keys[i]; const key = Number(keys[i]);
const value = this.pointerMap[key]; const value = this.pointerMap[key];
// Never remove pointerId == 1, which is mouse. // Never remove pointerId == 1, which is mouse.
// Touch identifiers are 2 smaller than their pointerId, which is the // Touch identifiers are 2 smaller than their pointerId, which is the
// index in pointermap. // index in pointermap.
if (key != /** @type {string} */ (POINTER_ID) && !this.findTouch_(touchList, key - 2)) { if (key != POINTER_ID && !this.findTouch_(touchList, key - 2)) {
d.push(value.out); d.push(value.out);
} }
} }
@@ -348,7 +348,7 @@ class TouchSource extends EventSource {
this.dispatcher.move(event, browserEvent); this.dispatcher.move(event, browserEvent);
if (outEvent && outTarget !== event.target) { if (outEvent && outTarget !== event.target) {
outEvent.relatedTarget = event.target; outEvent.relatedTarget = event.target;
event.relatedTarget = outTarget; /** @type {Object} */ (event).relatedTarget = outTarget;
// recover from retargeting by shadow // recover from retargeting by shadow
outEvent.target = outTarget; outEvent.target = outTarget;
if (event.target) { if (event.target) {
@@ -356,8 +356,8 @@ class TouchSource extends EventSource {
this.dispatcher.enterOver(event, browserEvent); this.dispatcher.enterOver(event, browserEvent);
} else { } else {
// clean up case when finger leaves the screen // clean up case when finger leaves the screen
event.target = outTarget; /** @type {Object} */ (event).target = outTarget;
event.relatedTarget = null; /** @type {Object} */ (event).relatedTarget = null;
this.cancelOut_(browserEvent, event); this.cancelOut_(browserEvent, event);
} }
} }