summaryrefslogtreecommitdiff
path: root/source/libs/on-pr-merge-panel-open.ts
diff options
context:
space:
mode:
authorGravatar Federico Brigante <github@bfred.it> 2020-01-07 00:19:09 +0700
committerGravatar GitHub <noreply@github.com> 2020-01-07 00:19:09 +0700
commit7f1f2c52d8deeb0fddb7a7322af7dd090ac19461 (patch)
tree6d5aba6a51777875918a609e4fdf2534870169be /source/libs/on-pr-merge-panel-open.ts
parentdac2a0302aad5462c3a6b896fc66b18391c73d12 (diff)
downloadrefined-github-7f1f2c52d8deeb0fddb7a7322af7dd090ac19461.tar.gz
refined-github-7f1f2c52d8deeb0fddb7a7322af7dd090ac19461.tar.zst
refined-github-7f1f2c52d8deeb0fddb7a7322af7dd090ac19461.zip
Keep features working after clicking the browser’s Back button (#2639)
Diffstat (limited to 'source/libs/on-pr-merge-panel-open.ts')
-rw-r--r--source/libs/on-pr-merge-panel-open.ts34
1 files changed, 16 insertions, 18 deletions
diff --git a/source/libs/on-pr-merge-panel-open.ts b/source/libs/on-pr-merge-panel-open.ts
index d8df675b..6ed88d48 100644
--- a/source/libs/on-pr-merge-panel-open.ts
+++ b/source/libs/on-pr-merge-panel-open.ts
@@ -13,27 +13,25 @@ const sessionResumeHandler = mem((callback: EventListener) => async (event: Even
callback(event);
});
-export default function (callback: EventListener): DelegateSubscription[] {
+export default function (callback: EventListener): DelegateSubscription {
document.addEventListener(
'session:resume',
sessionResumeHandler(callback)
);
+ const toggleSubscription = delegate(
+ '.js-merge-pr:not(.is-rebasing)',
+ 'details:toggled',
+ delegateHandler(callback)
+ );
- return [
- {
- // Imitate a DelegateSubscription for this event as well
- destroy() {
- document.removeEventListener(
- 'session:resume',
- sessionResumeHandler(callback)
- );
- }
- },
- ...delegate(
- '#discussion_bucket',
- '.js-merge-pr:not(.is-rebasing)',
- 'details:toggled',
- delegateHandler(callback)
- )
- ];
+ // Imitate a DelegateSubscription for this event as well
+ return {
+ destroy() {
+ toggleSubscription.destroy();
+ document.removeEventListener(
+ 'session:resume',
+ sessionResumeHandler(callback)
+ );
+ }
+ };
}