From a3c392ce8bb2b7d47ccbf1df3ef8ad437eb75bbf Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Mar 2026 18:55:01 +0100 Subject: [PATCH] Reset selected widget when exiting record page layout edit mode (#18603) ## Before https://github.com/user-attachments/assets/b9720898-3433-488b-b784-1fa78e4e68f7 ## After https://github.com/user-attachments/assets/8f3fdde5-773d-44c4-a0f5-cca683736782 --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Devessier <29370468+Devessier@users.noreply.github.com> --- .../page-layout/hooks/useSetIsPageLayoutInEditMode.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/twenty-front/src/modules/page-layout/hooks/useSetIsPageLayoutInEditMode.ts b/packages/twenty-front/src/modules/page-layout/hooks/useSetIsPageLayoutInEditMode.ts index 6c451af141..9605f468fa 100644 --- a/packages/twenty-front/src/modules/page-layout/hooks/useSetIsPageLayoutInEditMode.ts +++ b/packages/twenty-front/src/modules/page-layout/hooks/useSetIsPageLayoutInEditMode.ts @@ -7,6 +7,7 @@ import { fieldsWidgetGroupsDraftComponentState } from '@/page-layout/states/fiel import { fieldsWidgetUngroupedFieldsDraftComponentState } from '@/page-layout/states/fieldsWidgetUngroupedFieldsDraftComponentState'; import { hasInitializedFieldsWidgetGroupsDraftComponentState } from '@/page-layout/states/hasInitializedFieldsWidgetGroupsDraftComponentState'; import { isPageLayoutInEditModeComponentState } from '@/page-layout/states/isPageLayoutInEditModeComponentState'; +import { pageLayoutEditingWidgetIdComponentState } from '@/page-layout/states/pageLayoutEditingWidgetIdComponentState'; import { SIDE_PANEL_COMPONENT_INSTANCE_ID } from '@/side-panel/constants/SidePanelComponentInstanceId'; import { isSidePanelOpenedState } from '@/side-panel/states/isSidePanelOpenedState'; import { useAvailableComponentInstanceIdOrThrow } from '@/ui/utilities/state/component-state/hooks/useAvailableComponentInstanceIdOrThrow'; @@ -53,6 +54,11 @@ export const useSetIsPageLayoutInEditMode = (pageLayoutIdFromProps: string) => { pageLayoutId, ); + const pageLayoutEditingWidgetIdState = useAtomComponentStateCallbackState( + pageLayoutEditingWidgetIdComponentState, + pageLayoutId, + ); + const store = useStore(); const setIsPageLayoutInEditMode = useCallback( @@ -62,6 +68,8 @@ export const useSetIsPageLayoutInEditMode = (pageLayoutIdFromProps: string) => { store.set(fieldsWidgetUngroupedFieldsDraftState, {}); store.set(fieldsWidgetEditorModeDraftState, {}); store.set(hasInitializedFieldsWidgetGroupsDraftState, {}); + } else { + store.set(pageLayoutEditingWidgetIdState, null); } store.set(isPageLayoutInEditModeState, value); @@ -88,6 +96,7 @@ export const useSetIsPageLayoutInEditMode = (pageLayoutIdFromProps: string) => { fieldsWidgetUngroupedFieldsDraftState, fieldsWidgetEditorModeDraftState, hasInitializedFieldsWidgetGroupsDraftState, + pageLayoutEditingWidgetIdState, pageLayoutId, store, ],