mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2025-12-20 17:26:01 +08:00
[ts][player] Dispose input on dispose.
This commit is contained in:
parent
fd20a0c009
commit
000b12c6bf
@ -236,6 +236,7 @@ export class SpinePlayer implements Disposable {
|
|||||||
private previousViewport: Viewport = {} as Viewport;
|
private previousViewport: Viewport = {} as Viewport;
|
||||||
private viewportTransitionStart = 0;
|
private viewportTransitionStart = 0;
|
||||||
private eventListeners: Array<{ target: any, event: any, func: any }> = [];
|
private eventListeners: Array<{ target: any, event: any, func: any }> = [];
|
||||||
|
private input?: Input;
|
||||||
|
|
||||||
constructor (parent: HTMLElement | string, private config: SpinePlayerConfig) {
|
constructor (parent: HTMLElement | string, private config: SpinePlayerConfig) {
|
||||||
let parentDom = typeof parent === "string" ? document.getElementById(parent) : parent;
|
let parentDom = typeof parent === "string" ? document.getElementById(parent) : parent;
|
||||||
@ -283,6 +284,7 @@ export class SpinePlayer implements Disposable {
|
|||||||
var eventListener = this.eventListeners[i];
|
var eventListener = this.eventListeners[i];
|
||||||
eventListener.target.removeEventListener(eventListener.event, eventListener.func);
|
eventListener.target.removeEventListener(eventListener.event, eventListener.func);
|
||||||
}
|
}
|
||||||
|
this.input?.dispose();
|
||||||
this.parent.removeChild(this.dom);
|
this.parent.removeChild(this.dom);
|
||||||
this.disposed = true;
|
this.disposed = true;
|
||||||
}
|
}
|
||||||
@ -615,7 +617,8 @@ export class SpinePlayer implements Disposable {
|
|||||||
return best;
|
return best;
|
||||||
};
|
};
|
||||||
|
|
||||||
new Input(canvas).addListener({
|
this.input = new Input(canvas);
|
||||||
|
this.input.addListener({
|
||||||
down: (x, y) => {
|
down: (x, y) => {
|
||||||
target = closest(x, y);
|
target = closest(x, y);
|
||||||
},
|
},
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user