From f86bb3eab864c402f2c3d8d000626d9641a488af Mon Sep 17 00:00:00 2001 From: Kacper Date: Tue, 16 Dec 2025 14:49:23 +0100 Subject: [PATCH 1/2] feat: enhance CategoryAutocomplete and AddFeatureDialog components - Added responsive width handling to the CategoryAutocomplete component, ensuring the popover adjusts based on the trigger button's width. - Updated the AddFeatureDialog button width from 180px to 200px for improved layout consistency. --- .../components/ui/category-autocomplete.tsx | 29 ++++++++++++++++++- .../board-view/dialogs/add-feature-dialog.tsx | 2 +- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/apps/app/src/components/ui/category-autocomplete.tsx b/apps/app/src/components/ui/category-autocomplete.tsx index 7addab59..8f4b0054 100644 --- a/apps/app/src/components/ui/category-autocomplete.tsx +++ b/apps/app/src/components/ui/category-autocomplete.tsx @@ -39,11 +39,33 @@ export function CategoryAutocomplete({ "data-testid": testId, }: CategoryAutocompleteProps) { const [open, setOpen] = React.useState(false); + const [triggerWidth, setTriggerWidth] = React.useState(0); + const triggerRef = React.useRef(null); + + // Update trigger width when component mounts or value changes + React.useEffect(() => { + if (triggerRef.current) { + const updateWidth = () => { + setTriggerWidth(triggerRef.current?.offsetWidth || 0); + }; + + updateWidth(); + + // Listen for resize events to handle responsive behavior + const resizeObserver = new ResizeObserver(updateWidth); + resizeObserver.observe(triggerRef.current); + + return () => { + resizeObserver.disconnect(); + }; + } + }, [value]); return ( - + diff --git a/apps/app/src/components/views/board-view/dialogs/add-feature-dialog.tsx b/apps/app/src/components/views/board-view/dialogs/add-feature-dialog.tsx index e14a79c0..b701d0ed 100644 --- a/apps/app/src/components/views/board-view/dialogs/add-feature-dialog.tsx +++ b/apps/app/src/components/views/board-view/dialogs/add-feature-dialog.tsx @@ -273,7 +273,7 @@ export function AddFeatureDialog({
-