diff --git a/dist/iwmlib.js b/dist/iwmlib.js index ba4243b..6d03dc4 100644 --- a/dist/iwmlib.js +++ b/dist/iwmlib.js @@ -3325,15 +3325,22 @@ } close() { + this._callCloseCallbacks(); + this._removeSelfFromScatterContainer(); + } + + _callCloseCallbacks() { if (this.onClose) { this.onClose.forEach(callback => callback(this)); + } + } - /** + _removeSelfFromScatterContainer() { + /** Removes self from container when it's closed. */ - if (this.container) { - this.container.remove(this); - } + if (this.container) { + this.container.remove(this); } } @@ -3930,7 +3937,10 @@ * @memberof DOMScatterContainer */ remove(scatter) { - this.scatter.delete(scatter.element); + const element = scatter.element; + if (!this.scatter.has(element)) console.warn(`Try removing element that is not in the scatter.`, element); + + this.scatter.delete(element); } /** diff --git a/dist/iwmlib.pixi.js b/dist/iwmlib.pixi.js index 5a7432c..526103b 100644 --- a/dist/iwmlib.pixi.js +++ b/dist/iwmlib.pixi.js @@ -6771,15 +6771,22 @@ } close() { + this._callCloseCallbacks(); + this._removeSelfFromScatterContainer(); + } + + _callCloseCallbacks() { if (this.onClose) { this.onClose.forEach(callback => callback(this)); + } + } - /** + _removeSelfFromScatterContainer() { + /** Removes self from container when it's closed. */ - if (this.container) { - this.container.remove(this); - } + if (this.container) { + this.container.remove(this); } }