mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-03-26 22:49:01 +08:00
[ts] Fixed multi touch runtime error.
Repro: touch down 1, touch down 2 (using second finger), touch up 1, touch up 2 -> error.
This commit is contained in:
parent
f77a51d33a
commit
b3c405e9ca
2
spine-ts/build/spine-all.d.ts
vendored
2
spine-ts/build/spine-all.d.ts
vendored
@ -1337,8 +1337,8 @@ declare module spine.webgl {
|
||||
lastY: number;
|
||||
buttonDown: boolean;
|
||||
currTouch: Touch;
|
||||
touchesPool: Pool<Touch>;
|
||||
private listeners;
|
||||
touchesPool: Pool<Touch>;
|
||||
constructor(element: HTMLElement);
|
||||
private setupCallbacks;
|
||||
addListener(listener: InputListener): void;
|
||||
|
||||
@ -9401,10 +9401,10 @@ var spine;
|
||||
this.lastY = 0;
|
||||
this.buttonDown = false;
|
||||
this.currTouch = null;
|
||||
this.listeners = new Array();
|
||||
this.touchesPool = new spine.Pool(function () {
|
||||
return new spine.webgl.Touch(0, 0, 0);
|
||||
});
|
||||
this.listeners = new Array();
|
||||
this.element = element;
|
||||
this.setupCallbacks(element);
|
||||
}
|
||||
@ -9416,10 +9416,9 @@ var spine;
|
||||
var x = ev.clientX - rect.left;
|
||||
var y = ev.clientY - rect.top;
|
||||
var listeners = _this.listeners;
|
||||
for (var i = 0; i < listeners.length; i++) {
|
||||
for (var i = 0; i < listeners.length; i++)
|
||||
if (listeners[i].down)
|
||||
listeners[i].down(x, y);
|
||||
}
|
||||
_this.lastX = x;
|
||||
_this.lastY = y;
|
||||
_this.buttonDown = true;
|
||||
@ -9453,10 +9452,9 @@ var spine;
|
||||
var x = ev.clientX - rect.left;
|
||||
var y = ev.clientY - rect.top;
|
||||
var listeners = _this.listeners;
|
||||
for (var i = 0; i < listeners.length; i++) {
|
||||
for (var i = 0; i < listeners.length; i++)
|
||||
if (listeners[i].up)
|
||||
listeners[i].up(x, y);
|
||||
}
|
||||
_this.lastX = x;
|
||||
_this.lastY = y;
|
||||
_this.buttonDown = false;
|
||||
@ -9468,8 +9466,7 @@ var spine;
|
||||
element.addEventListener("mousemove", mouseMove, true);
|
||||
element.addEventListener("mouseup", mouseUp, true);
|
||||
element.addEventListener("touchstart", function (ev) {
|
||||
if (_this.currTouch)
|
||||
return;
|
||||
if (!_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9490,9 +9487,11 @@ var spine;
|
||||
_this.lastX = _this.currTouch.x;
|
||||
_this.lastY = _this.currTouch.y;
|
||||
_this.buttonDown = true;
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchend", function (ev) {
|
||||
if (_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9513,9 +9512,11 @@ var spine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchcancel", function (ev) {
|
||||
if (_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9536,11 +9537,11 @@ var spine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchmove", function (ev) {
|
||||
if (!_this.currTouch)
|
||||
return;
|
||||
if (_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9558,6 +9559,7 @@ var spine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
};
|
||||
|
||||
File diff suppressed because one or more lines are too long
2
spine-ts/build/spine-player.d.ts
vendored
2
spine-ts/build/spine-player.d.ts
vendored
@ -1306,8 +1306,8 @@ declare module spine.webgl {
|
||||
lastY: number;
|
||||
buttonDown: boolean;
|
||||
currTouch: Touch;
|
||||
touchesPool: Pool<Touch>;
|
||||
private listeners;
|
||||
touchesPool: Pool<Touch>;
|
||||
constructor(element: HTMLElement);
|
||||
private setupCallbacks;
|
||||
addListener(listener: InputListener): void;
|
||||
|
||||
@ -9151,10 +9151,10 @@ var spine;
|
||||
this.lastY = 0;
|
||||
this.buttonDown = false;
|
||||
this.currTouch = null;
|
||||
this.listeners = new Array();
|
||||
this.touchesPool = new spine.Pool(function () {
|
||||
return new spine.webgl.Touch(0, 0, 0);
|
||||
});
|
||||
this.listeners = new Array();
|
||||
this.element = element;
|
||||
this.setupCallbacks(element);
|
||||
}
|
||||
@ -9166,10 +9166,9 @@ var spine;
|
||||
var x = ev.clientX - rect.left;
|
||||
var y = ev.clientY - rect.top;
|
||||
var listeners = _this.listeners;
|
||||
for (var i = 0; i < listeners.length; i++) {
|
||||
for (var i = 0; i < listeners.length; i++)
|
||||
if (listeners[i].down)
|
||||
listeners[i].down(x, y);
|
||||
}
|
||||
_this.lastX = x;
|
||||
_this.lastY = y;
|
||||
_this.buttonDown = true;
|
||||
@ -9203,10 +9202,9 @@ var spine;
|
||||
var x = ev.clientX - rect.left;
|
||||
var y = ev.clientY - rect.top;
|
||||
var listeners = _this.listeners;
|
||||
for (var i = 0; i < listeners.length; i++) {
|
||||
for (var i = 0; i < listeners.length; i++)
|
||||
if (listeners[i].up)
|
||||
listeners[i].up(x, y);
|
||||
}
|
||||
_this.lastX = x;
|
||||
_this.lastY = y;
|
||||
_this.buttonDown = false;
|
||||
@ -9218,8 +9216,7 @@ var spine;
|
||||
element.addEventListener("mousemove", mouseMove, true);
|
||||
element.addEventListener("mouseup", mouseUp, true);
|
||||
element.addEventListener("touchstart", function (ev) {
|
||||
if (_this.currTouch)
|
||||
return;
|
||||
if (!_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9240,9 +9237,11 @@ var spine;
|
||||
_this.lastX = _this.currTouch.x;
|
||||
_this.lastY = _this.currTouch.y;
|
||||
_this.buttonDown = true;
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchend", function (ev) {
|
||||
if (_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9263,9 +9262,11 @@ var spine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchcancel", function (ev) {
|
||||
if (_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9286,11 +9287,11 @@ var spine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchmove", function (ev) {
|
||||
if (!_this.currTouch)
|
||||
return;
|
||||
if (_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9308,6 +9309,7 @@ var spine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
};
|
||||
|
||||
File diff suppressed because one or more lines are too long
2
spine-ts/build/spine-webgl.d.ts
vendored
2
spine-ts/build/spine-webgl.d.ts
vendored
@ -1306,8 +1306,8 @@ declare module spine.webgl {
|
||||
lastY: number;
|
||||
buttonDown: boolean;
|
||||
currTouch: Touch;
|
||||
touchesPool: Pool<Touch>;
|
||||
private listeners;
|
||||
touchesPool: Pool<Touch>;
|
||||
constructor(element: HTMLElement);
|
||||
private setupCallbacks;
|
||||
addListener(listener: InputListener): void;
|
||||
|
||||
@ -9151,10 +9151,10 @@ var spine;
|
||||
this.lastY = 0;
|
||||
this.buttonDown = false;
|
||||
this.currTouch = null;
|
||||
this.listeners = new Array();
|
||||
this.touchesPool = new spine.Pool(function () {
|
||||
return new spine.webgl.Touch(0, 0, 0);
|
||||
});
|
||||
this.listeners = new Array();
|
||||
this.element = element;
|
||||
this.setupCallbacks(element);
|
||||
}
|
||||
@ -9166,10 +9166,9 @@ var spine;
|
||||
var x = ev.clientX - rect.left;
|
||||
var y = ev.clientY - rect.top;
|
||||
var listeners = _this.listeners;
|
||||
for (var i = 0; i < listeners.length; i++) {
|
||||
for (var i = 0; i < listeners.length; i++)
|
||||
if (listeners[i].down)
|
||||
listeners[i].down(x, y);
|
||||
}
|
||||
_this.lastX = x;
|
||||
_this.lastY = y;
|
||||
_this.buttonDown = true;
|
||||
@ -9203,10 +9202,9 @@ var spine;
|
||||
var x = ev.clientX - rect.left;
|
||||
var y = ev.clientY - rect.top;
|
||||
var listeners = _this.listeners;
|
||||
for (var i = 0; i < listeners.length; i++) {
|
||||
for (var i = 0; i < listeners.length; i++)
|
||||
if (listeners[i].up)
|
||||
listeners[i].up(x, y);
|
||||
}
|
||||
_this.lastX = x;
|
||||
_this.lastY = y;
|
||||
_this.buttonDown = false;
|
||||
@ -9218,8 +9216,7 @@ var spine;
|
||||
element.addEventListener("mousemove", mouseMove, true);
|
||||
element.addEventListener("mouseup", mouseUp, true);
|
||||
element.addEventListener("touchstart", function (ev) {
|
||||
if (_this.currTouch)
|
||||
return;
|
||||
if (!_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9240,9 +9237,11 @@ var spine;
|
||||
_this.lastX = _this.currTouch.x;
|
||||
_this.lastY = _this.currTouch.y;
|
||||
_this.buttonDown = true;
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchend", function (ev) {
|
||||
if (_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9263,9 +9262,11 @@ var spine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchcancel", function (ev) {
|
||||
if (_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9286,11 +9287,11 @@ var spine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchmove", function (ev) {
|
||||
if (!_this.currTouch)
|
||||
return;
|
||||
if (_this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -9308,6 +9309,7 @@ var spine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
};
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -34,11 +34,12 @@ module spine.webgl {
|
||||
lastY = 0;
|
||||
buttonDown = false;
|
||||
currTouch: Touch = null;
|
||||
private listeners = new Array<InputListener>();
|
||||
|
||||
touchesPool = new Pool<spine.webgl.Touch>(() => {
|
||||
return new spine.webgl.Touch(0, 0, 0);
|
||||
});
|
||||
|
||||
private listeners = new Array<InputListener>();
|
||||
constructor (element: HTMLElement) {
|
||||
this.element = element;
|
||||
this.setupCallbacks(element);
|
||||
@ -52,9 +53,8 @@ module spine.webgl {
|
||||
let y = ev.clientY - rect.top;
|
||||
|
||||
let listeners = this.listeners;
|
||||
for (let i = 0; i < listeners.length; i++) {
|
||||
for (let i = 0; i < listeners.length; i++)
|
||||
if (listeners[i].down) listeners[i].down(x, y);
|
||||
}
|
||||
|
||||
this.lastX = x;
|
||||
this.lastY = y;
|
||||
@ -92,9 +92,8 @@ module spine.webgl {
|
||||
let y = ev.clientY - rect.top;
|
||||
|
||||
let listeners = this.listeners;
|
||||
for (let i = 0; i < listeners.length; i++) {
|
||||
for (let i = 0; i < listeners.length; i++)
|
||||
if (listeners[i].up) listeners[i].up(x, y);
|
||||
}
|
||||
|
||||
this.lastX = x;
|
||||
this.lastY = y;
|
||||
@ -104,14 +103,11 @@ module spine.webgl {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
element.addEventListener("mousedown", mouseDown, true);
|
||||
element.addEventListener("mousemove", mouseMove, true);
|
||||
element.addEventListener("mouseup", mouseUp, true);
|
||||
element.addEventListener("touchstart", (ev: TouchEvent) => {
|
||||
if (this.currTouch) return;
|
||||
|
||||
if (!this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -133,9 +129,11 @@ module spine.webgl {
|
||||
this.lastX = this.currTouch.x;
|
||||
this.lastY = this.currTouch.y;
|
||||
this.buttonDown = true;
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchend", (ev: TouchEvent) => {
|
||||
if (this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -156,9 +154,11 @@ module spine.webgl {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchcancel", (ev: TouchEvent) => {
|
||||
if (this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -179,11 +179,11 @@ module spine.webgl {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
element.addEventListener("touchmove", (ev: TouchEvent) => {
|
||||
if (!this.currTouch) return;
|
||||
|
||||
if (this.currTouch) {
|
||||
var touches = ev.changedTouches;
|
||||
for (var i = 0; i < touches.length; i++) {
|
||||
var touch = touches[i];
|
||||
@ -202,6 +202,7 @@ module spine.webgl {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ev.preventDefault();
|
||||
}, false);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user