From d9b6d2cd85f10ab9dabfdab26478ff15258c8abf Mon Sep 17 00:00:00 2001 From: Thomas Weber Date: Fri, 2 Jul 2021 00:18:19 -0500 Subject: [PATCH] Don't leak ContextMenu --- src/scaffolding/context-menu.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/scaffolding/context-menu.js b/src/scaffolding/context-menu.js index f6c9201..7c57579 100644 --- a/src/scaffolding/context-menu.js +++ b/src/scaffolding/context-menu.js @@ -6,6 +6,8 @@ class ContextMenu { this.root = document.createElement('div'); this.root.className = styles.contextMenu; + + this._onmousedown = this._onmousedown.bind(this) } _onmousedown (e) { @@ -29,7 +31,7 @@ class ContextMenu { } show (mouseEvent) { - document.addEventListener('mousedown', this._onmousedown.bind(this)); + document.addEventListener('mousedown', this._onmousedown); const layersRect = this.parent.layersRect; const x = mouseEvent.clientX - layersRect.left + 1; const y = mouseEvent.clientY - layersRect.top + 1; @@ -38,6 +40,7 @@ class ContextMenu { } destroy () { + document.removeEventListener('mousedown', this._onmousedown); this.root.remove(); } }