summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source/features/toggle-everything-with-alt.tsx5
1 files changed, 3 insertions, 2 deletions
diff --git a/source/features/toggle-everything-with-alt.tsx b/source/features/toggle-everything-with-alt.tsx
index 1a249cd0..fc0d9f5f 100644
--- a/source/features/toggle-everything-with-alt.tsx
+++ b/source/features/toggle-everything-with-alt.tsx
@@ -1,3 +1,4 @@
+import mem from 'mem';
import select from 'select-dom';
import delegate from 'delegate-it';
import features from '../libs/features';
@@ -17,7 +18,7 @@ function init(): void {
delegate(document, '.js-file .js-resolvable-thread-toggler', 'click', clickAll(resolvedCommentsSelector));
}
-function clickAll(selectorGetter: ((clickedItem: HTMLElement) => string)): EventHandler {
+const clickAll = mem((selectorGetter: ((clickedItem: HTMLElement) => string)): EventHandler => {
return event => {
if (event.altKey && event.isTrusted) {
const clickedItem = event.delegateTarget;
@@ -28,7 +29,7 @@ function clickAll(selectorGetter: ((clickedItem: HTMLElement) => string)): Event
resetScroll();
}
};
-}
+});
function clickAllExcept(elementsToClick: string, except: HTMLElement): void {
for (const item of select.all(elementsToClick)) {