From 7bd53c22cbfd96f3ba90f552e4330b294af6ac59 Mon Sep 17 00:00:00 2001 From: Oleg Isonen Date: Fri, 1 Jul 2022 13:58:44 +0200 Subject: [PATCH] calc rect when selecting inline instance --- .../canvas-tools/outline/selected-instance-outline.tsx | 4 +++- app/shared/dom-hooks/use-measure.ts | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/designer/features/workspace/canvas-tools/outline/selected-instance-outline.tsx b/app/designer/features/workspace/canvas-tools/outline/selected-instance-outline.tsx index 9d85927f4c..4c7891f9dc 100644 --- a/app/designer/features/workspace/canvas-tools/outline/selected-instance-outline.tsx +++ b/app/designer/features/workspace/canvas-tools/outline/selected-instance-outline.tsx @@ -11,7 +11,9 @@ export const SelectedInstanceOutline = () => { const [instanceData] = useSelectedInstanceData(); const [textEditingInstanceId] = useTextEditingInstanceId(); - const isEditingCurrentInstance = textEditingInstanceId === instanceData?.id; + const isEditingCurrentInstance = + textEditingInstanceId !== undefined && + textEditingInstanceId === instanceData?.id; if ( instanceData === undefined || diff --git a/app/shared/dom-hooks/use-measure.ts b/app/shared/dom-hooks/use-measure.ts index e9c8c3930d..fadea3217f 100644 --- a/app/shared/dom-hooks/use-measure.ts +++ b/app/shared/dom-hooks/use-measure.ts @@ -16,7 +16,7 @@ export type UseMeasureResult< export const useMeasure = < MeasuredElement extends HTMLElement = HTMLElement >(): UseMeasureResult => { - const [element, ref] = useState(null); + const [element, setElement] = useState(null); const [rect, setRect] = useState(); const handleChange = useCallback(() => { @@ -43,5 +43,7 @@ export const useMeasure = < }; }, [element, observer]); - return [ref, rect]; + useEffect(handleChange, [handleChange]); + + return [setElement, rect]; };