diff --git a/ts/routes/reviewer-inner/index.ts b/ts/routes/reviewer-inner/index.ts index 2b06aa8f5..79afff161 100644 --- a/ts/routes/reviewer-inner/index.ts +++ b/ts/routes/reviewer-inner/index.ts @@ -132,6 +132,10 @@ addEventListener("keydown", (e) => { } }); +addEventListener("click", () => { + postParentMessage({ type: "closemenu" }); +}); + const base = document.createElement("base"); base.href = "/media/"; document.head.appendChild(base); diff --git a/ts/routes/reviewer/reviewer-bottom/MoreSubmenu.svelte b/ts/routes/reviewer/reviewer-bottom/MoreSubmenu.svelte index 866aababa..8a2e9efab 100644 --- a/ts/routes/reviewer/reviewer-bottom/MoreSubmenu.svelte +++ b/ts/routes/reviewer/reviewer-bottom/MoreSubmenu.svelte @@ -5,22 +5,27 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
- { - if (!lockOpen) { - showFloating = false; - } - }} - closeOnInsideClick - > + diff --git a/ts/routes/reviewer/reviewer.ts b/ts/routes/reviewer/reviewer.ts index 8e4f88de8..2547d3a1a 100644 --- a/ts/routes/reviewer/reviewer.ts +++ b/ts/routes/reviewer/reviewer.ts @@ -119,6 +119,10 @@ export class ReviewerState { document.dispatchEvent(new KeyboardEvent(forceKeyUp ? "keyup" : "keydown", e.data.eventInit)); break; } + case "closemenu": { + document.dispatchEvent(new CustomEvent("closemenu")); + break; + } case "setstorage": { setConfigJson({ key: "reviewerStorage", diff --git a/ts/routes/reviewer/reviewerRequest.ts b/ts/routes/reviewer/reviewerRequest.ts index 3b9b51fab..e876f417f 100644 --- a/ts/routes/reviewer/reviewerRequest.ts +++ b/ts/routes/reviewer/reviewerRequest.ts @@ -16,9 +16,18 @@ interface KeyPressMessage { eventInit: KeyboardEventInit; } +interface CloseMenuMessage { + type: "closemenu"; +} + interface SetStorageMessage { type: "setstorage"; json_buffer: Uint8Array; } -export type ReviewerRequest = AudioMessage | UpdateTypedAnswerMessage | KeyPressMessage | SetStorageMessage; +export type ReviewerRequest = + | AudioMessage + | UpdateTypedAnswerMessage + | KeyPressMessage + | SetStorageMessage + | CloseMenuMessage;