Fixes #15961: Fix secret toggle button by avoiding duplicate event handler

This commit is contained in:
Jeremy Stretch 2024-05-06 09:26:20 -04:00
parent 56e0449ebc
commit 60aee6f5e1
3 changed files with 16 additions and 17 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -60,18 +60,17 @@ function handleSecretToggle(state: StateManager<SecretState>, button: HTMLButton
toggleSecretButton(hidden, button);
}
function toggleCallback(event: MouseEvent) {
handleSecretToggle(secretState, event.currentTarget as HTMLButtonElement);
}
/**
* Initialize secret toggle button.
*/
export function initSecretToggle(): void {
hideSecret();
for (const button of getElements<HTMLButtonElement>('button.toggle-secret')) {
button.addEventListener(
'click',
event => {
handleSecretToggle(secretState, event.currentTarget as HTMLButtonElement);
},
false,
);
button.removeEventListener('click', toggleCallback);
button.addEventListener('click', toggleCallback);
}
}