diff options
author | 2020-01-07 00:19:09 +0700 | |
---|---|---|
committer | 2020-01-07 00:19:09 +0700 | |
commit | 7f1f2c52d8deeb0fddb7a7322af7dd090ac19461 (patch) | |
tree | 6d5aba6a51777875918a609e4fdf2534870169be /source/libs/on-pr-merge-panel-open.ts | |
parent | dac2a0302aad5462c3a6b896fc66b18391c73d12 (diff) | |
download | refined-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.ts | 34 |
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) + ); + } + }; } |