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

View File

@@ -226,7 +226,7 @@ class MouseSource extends EventSource {
* @param {import("./PointerEventHandler.js").default} dispatcher Event handler.
* @return {Object} The copied event.
*/
function prepareEvent(inEvent, dispatcher) {
export function prepareEvent(inEvent, dispatcher) {
const e = dispatcher.cloneEvent(inEvent, inEvent);
// forward mouse preventDefault

View File

@@ -171,6 +171,7 @@ class MsSource extends EventSource {
* @return {Object} The copied event.
*/
prepareEvent_(inEvent) {
/** @type {MSPointerEvent|Object} */
let e = inEvent;
if (typeof inEvent.pointerType === 'number') {
e = this.dispatcher.cloneEvent(inEvent, inEvent);

View File

@@ -36,7 +36,7 @@ import {listen, unlisten} from '../events.js';
import EventTarget from '../events/Target.js';
import {POINTER, MSPOINTER, TOUCH} from '../has.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 NativeSource from '../pointer/NativeSource.js';
import PointerEvent from '../pointer/PointerEvent.js';
@@ -402,7 +402,7 @@ class PointerEventHandler extends EventTarget {
*/
wrapMouseEvent(eventType, event) {
const pointerEvent = this.makeEvent(
eventType, MouseSource.prepareEvent(event, this), event);
eventType, prepareMouseEvent(event, this), event);
return pointerEvent;
}

View File

@@ -300,12 +300,12 @@ class TouchSource extends EventSource {
if (count >= touchList.length) {
const d = [];
for (let i = 0; i < count; ++i) {
const key = keys[i];
const key = Number(keys[i]);
const value = this.pointerMap[key];
// Never remove pointerId == 1, which is mouse.
// Touch identifiers are 2 smaller than their pointerId, which is the
// 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);
}
}
@@ -348,7 +348,7 @@ class TouchSource extends EventSource {
this.dispatcher.move(event, browserEvent);
if (outEvent && outTarget !== event.target) {
outEvent.relatedTarget = event.target;
event.relatedTarget = outTarget;
/** @type {Object} */ (event).relatedTarget = outTarget;
// recover from retargeting by shadow
outEvent.target = outTarget;
if (event.target) {
@@ -356,8 +356,8 @@ class TouchSource extends EventSource {
this.dispatcher.enterOver(event, browserEvent);
} else {
// clean up case when finger leaves the screen
event.target = outTarget;
event.relatedTarget = null;
/** @type {Object} */ (event).target = outTarget;
/** @type {Object} */ (event).relatedTarget = null;
this.cancelOut_(browserEvent, event);
}
}