From fc64a51974fbfe4231f5d894c8213b9c36ae2a51 Mon Sep 17 00:00:00 2001 From: Ruslan Bakiev Date: Thu, 19 Feb 2026 18:01:36 +0700 Subject: [PATCH] Refine comm event composer to keep fixed height and auto-close plus menu --- Frontend/app.vue | 125 +++++++++++++++++++++++++++++------------------ 1 file changed, 77 insertions(+), 48 deletions(-) diff --git a/Frontend/app.vue b/Frontend/app.vue index a77ba65..e4f3505 100644 --- a/Frontend/app.vue +++ b/Frontend/app.vue @@ -1694,6 +1694,7 @@ const commDraft = ref(""); const commSending = ref(false); const commRecording = ref(false); const commComposerMode = ref<"message" | "planned" | "logged">("message"); +const commQuickMenuOpen = ref(false); const commEventSaving = ref(false); const commEventError = ref(""); const commEventMode = ref<"planned" | "logged">("planned"); @@ -1725,6 +1726,7 @@ watch(selectedCommThreadId, () => { commPinnedOnly.value = false; commDraft.value = ""; commComposerMode.value = "message"; + commQuickMenuOpen.value = false; commEventError.value = ""; eventCloseOpen.value = {}; eventCloseDraft.value = {}; @@ -2373,12 +2375,23 @@ function openCommEventModal(mode: "planned" | "logged") { setDefaultCommEventForm(mode); commEventError.value = ""; commComposerMode.value = mode; + commQuickMenuOpen.value = false; } function closeCommEventModal() { if (commEventSaving.value) return; commComposerMode.value = "message"; commEventError.value = ""; + commQuickMenuOpen.value = false; +} + +function toggleCommQuickMenu() { + if (!selectedCommThread.value || commEventSaving.value) return; + commQuickMenuOpen.value = !commQuickMenuOpen.value; +} + +function closeCommQuickMenu() { + commQuickMenuOpen.value = false; } function commComposerPlaceholder() { @@ -3666,11 +3679,17 @@ async function decideFeedCard(card: FeedCard, decision: "accepted" | "rejected")
-