From 9cc09b5b712cfa90aee78a0b186e0137f5b982cf Mon Sep 17 00:00:00 2001 From: dab246 Date: Tue, 21 Jun 2022 12:43:37 +0700 Subject: [PATCH] TF-551 Fix mailbox scrollbar jumps and resizes in destination picker --- .../presentation/destination_picker_view.dart | 47 +++++++++---------- 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/lib/features/destination_picker/presentation/destination_picker_view.dart b/lib/features/destination_picker/presentation/destination_picker_view.dart index d4d92baa7..cecf7c668 100644 --- a/lib/features/destination_picker/presentation/destination_picker_view.dart +++ b/lib/features/destination_picker/presentation/destination_picker_view.dart @@ -181,31 +181,30 @@ class DestinationPickerView extends GetWidget } Widget _buildListMailbox(BuildContext context, MailboxActions? actions) { - return ListView( - primary: false, - shrinkWrap: true, - children: [ - if (actions == MailboxActions.moveEmail || actions == MailboxActions.move) - _buildSearchBarWidget(context), - _buildLoadingView(), - if (actions == MailboxActions.create && !BuildUtils.isWeb && _responsiveUtils.isScreenWithShortestSide(context)) + return SingleChildScrollView( + physics: const ClampingScrollPhysics(), + child: Column(children: [ + if (actions == MailboxActions.moveEmail || actions == MailboxActions.move) + _buildSearchBarWidget(context), + _buildLoadingView(), + if (actions == MailboxActions.create && !BuildUtils.isWeb && _responsiveUtils.isScreenWithShortestSide(context)) + const SizedBox(height: 12), + if (actions == MailboxActions.create || actions == MailboxActions.move) + _buildUnifiedMailbox(context, actions), const SizedBox(height: 12), - if (actions == MailboxActions.create || actions == MailboxActions.move) - _buildUnifiedMailbox(context, actions), - const SizedBox(height: 12), - Obx(() => controller.defaultMailboxHasChild - ? _buildMailboxCategory(context, MailboxCategories.exchange, controller.defaultRootNode, actions) - : const SizedBox.shrink()), - if (actions == MailboxActions.create) const SizedBox(height: 12), - if (actions != MailboxActions.create && !BuildUtils.isWeb) - const Padding( - padding: EdgeInsets.only(left: 55, right: 20), - child: Divider(color: AppColor.lineItemListColor, height: 0.5, thickness: 0.2)), - Obx(() => controller.folderMailboxHasChild - ? _buildMailboxCategory(context, MailboxCategories.folders, controller.folderRootNode, actions) - : const SizedBox.shrink()), - const SizedBox(height: 12), - ] + Obx(() => controller.defaultMailboxHasChild + ? _buildMailboxCategory(context, MailboxCategories.exchange, controller.defaultRootNode, actions) + : const SizedBox.shrink()), + if (actions == MailboxActions.create) const SizedBox(height: 12), + if (actions != MailboxActions.create && !BuildUtils.isWeb) + const Padding( + padding: EdgeInsets.only(left: 55, right: 20), + child: Divider(color: AppColor.lineItemListColor, height: 0.5, thickness: 0.2)), + Obx(() => controller.folderMailboxHasChild + ? _buildMailboxCategory(context, MailboxCategories.folders, controller.folderRootNode, actions) + : const SizedBox.shrink()), + const SizedBox(height: 12), + ]) ); }