From acb7854ae78bd376398a7957bdefb4a247678043 Mon Sep 17 00:00:00 2001 From: 777genius Date: Tue, 5 May 2026 14:35:09 +0300 Subject: [PATCH] fix(composer): keep editor active while sending --- .../team/messages/MessageComposer.pendingSend.test.tsx | 10 ++++++++++ .../components/team/messages/MessageComposer.tsx | 1 - 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/renderer/components/team/messages/MessageComposer.pendingSend.test.tsx b/src/renderer/components/team/messages/MessageComposer.pendingSend.test.tsx index 8e4cbb48..2e7bb6af 100644 --- a/src/renderer/components/team/messages/MessageComposer.pendingSend.test.tsx +++ b/src/renderer/components/team/messages/MessageComposer.pendingSend.test.tsx @@ -247,6 +247,14 @@ function getSendButton(host: HTMLElement): HTMLButtonElement { return button; } +function getTextarea(host: HTMLElement): HTMLTextAreaElement { + const textarea = host.querySelector('textarea[aria-label="Message"]'); + if (!(textarea instanceof HTMLTextAreaElement)) { + throw new Error('Message textarea not found'); + } + return textarea; +} + describe('MessageComposer pending send lifecycle', () => { beforeEach(() => { vi.stubGlobal('IS_REACT_ACT_ENVIRONMENT', true); @@ -285,6 +293,8 @@ describe('MessageComposer pending send lifecycle', () => { }) ); expect(draftHarness.state.text).toBe(''); + expect(getTextarea(host).disabled).toBe(false); + expect(getSendButton(host).disabled).toBe(true); render({ sending: false }); diff --git a/src/renderer/components/team/messages/MessageComposer.tsx b/src/renderer/components/team/messages/MessageComposer.tsx index a66b3e56..626b9db7 100644 --- a/src/renderer/components/team/messages/MessageComposer.tsx +++ b/src/renderer/components/team/messages/MessageComposer.tsx @@ -971,7 +971,6 @@ export const MessageComposer = ({ minRows={isCompactLayout ? 1 : 2} maxRows={6} maxLength={MAX_TEXT_LENGTH} - disabled={sending} hintText={crossTeamHintText} showHint={!isCompactLayout} cornerActionInset={isCompactLayout ? 'compact' : 'default'}