From 2d69e3c72f0d4cc8dfeb3f78198096cad18a31a2 Mon Sep 17 00:00:00 2001 From: Faris Armoush Date: Sun, 27 Jul 2025 11:01:22 +0300 Subject: [PATCH] Made `SpaceSubSpacesDialog` scrollable, for a better UX, and to account for a very long list of subspaces. --- .../widgets/space_sub_spaces_dialog.dart | 47 +++++++++++-------- 1 file changed, 27 insertions(+), 20 deletions(-) diff --git a/lib/pages/space_management_v2/modules/space_details/presentation/widgets/space_sub_spaces_dialog.dart b/lib/pages/space_management_v2/modules/space_details/presentation/widgets/space_sub_spaces_dialog.dart index 924a96e6..02a5c3d2 100644 --- a/lib/pages/space_management_v2/modules/space_details/presentation/widgets/space_sub_spaces_dialog.dart +++ b/lib/pages/space_management_v2/modules/space_details/presentation/widgets/space_sub_spaces_dialog.dart @@ -89,28 +89,35 @@ class _SpaceSubSpacesDialogState extends State { ), child: const SelectableText('Create Sub-Space'), ), - content: Column( - spacing: 12, - mainAxisSize: MainAxisSize.min, - children: [ - SubSpacesInput( - subSpaces: _subspaces, - onSubspaceAdded: _handleSubspaceAdded, - onSubspaceDeleted: _handleSubspaceDeleted, - controller: _subspaceNameController, - ), - AnimatedSwitcher( - duration: const Duration(milliseconds: 100), - child: Visibility( - key: ValueKey(_hasDuplicateNames), - visible: _hasDuplicateNames, - child: const SelectableText( - 'Error: Duplicate subspace names are not allowed.', - style: TextStyle(color: Colors.red), + content: ConstrainedBox( + constraints: BoxConstraints( + maxHeight: context.screenHeight * 0.4, + ), + child: SingleChildScrollView( + child: Column( + spacing: 12, + mainAxisSize: MainAxisSize.min, + children: [ + SubSpacesInput( + subSpaces: _subspaces, + onSubspaceAdded: _handleSubspaceAdded, + onSubspaceDeleted: _handleSubspaceDeleted, + controller: _subspaceNameController, ), - ), + AnimatedSwitcher( + duration: const Duration(milliseconds: 100), + child: Visibility( + key: ValueKey(_hasDuplicateNames), + visible: _hasDuplicateNames, + child: const SelectableText( + 'Error: Duplicate subspace names are not allowed.', + style: TextStyle(color: Colors.red), + ), + ), + ), + ], ), - ], + ), ), actions: [ SpaceDetailsActionButtons(