From 85e2a2a92b72eab77aaf2dcc77da8479edacec1f Mon Sep 17 00:00:00 2001 From: Abdul Rahman <81605929+abdulrahmancodes@users.noreply.github.com> Date: Tue, 20 May 2025 02:13:49 +0530 Subject: [PATCH] fix: prevent unwanted newlines in note editor when typing (#12128) https://github.com/user-attachments/assets/16706d7a-fe0e-4979-bd72-00f4bfec594b Closes #12119 --------- Co-authored-by: Charles Bochet --- .../activities/components/ActivityRichTextEditor.tsx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/twenty-front/src/modules/activities/components/ActivityRichTextEditor.tsx b/packages/twenty-front/src/modules/activities/components/ActivityRichTextEditor.tsx index ba0a61928..2a1dae154 100644 --- a/packages/twenty-front/src/modules/activities/components/ActivityRichTextEditor.tsx +++ b/packages/twenty-front/src/modules/activities/components/ActivityRichTextEditor.tsx @@ -1,6 +1,6 @@ import { useApolloClient } from '@apollo/client'; import { useCallback, useMemo } from 'react'; -import { useRecoilCallback, useRecoilState } from 'recoil'; +import { useRecoilCallback, useRecoilState, useRecoilValue } from 'recoil'; import { v4 } from 'uuid'; import { useUploadAttachmentFile } from '@/activities/files/hooks/useUploadAttachmentFile'; @@ -26,7 +26,9 @@ import { Task } from '@/activities/types/Task'; import { filterAttachmentsToRestore } from '@/activities/utils/filterAttachmentsToRestore'; import { getActivityAttachmentIdsToDelete } from '@/activities/utils/getActivityAttachmentIdsToDelete'; import { getActivityAttachmentPathsToRestore } from '@/activities/utils/getActivityAttachmentPathsToRestore'; +import { commandMenuPageState } from '@/command-menu/states/commandMenuPageState'; import { CommandMenuHotkeyScope } from '@/command-menu/types/CommandMenuHotkeyScope'; +import { CommandMenuPages } from '@/command-menu/types/CommandMenuPages'; import { useDeleteManyRecords } from '@/object-record/hooks/useDeleteManyRecords'; import { useLazyFetchAllRecords } from '@/object-record/hooks/useLazyFetchAllRecords'; import { useRestoreManyRecords } from '@/object-record/hooks/useRestoreManyRecords'; @@ -295,6 +297,8 @@ export const ActivityRichTextEditor = ({ uploadFile: handleEditorBuiltInUploadFile, }); + const commandMenuPage = useRecoilValue(commandMenuPageState); + useScopedHotkeys( Key.Escape, () => { @@ -306,6 +310,11 @@ export const ActivityRichTextEditor = ({ useScopedHotkeys( '*', (keyboardEvent) => { + // TODO: remove once stacked hotkeys / focusKeys are in place + if (commandMenuPage !== CommandMenuPages.EditRichText) { + return; + } + if (keyboardEvent.key === Key.Escape) { return; }