From d50b5044e1c30e425a42ee498b5ab9b819eab7d6 Mon Sep 17 00:00:00 2001 From: dab246 Date: Fri, 17 Feb 2023 15:06:43 +0700 Subject: [PATCH] Hover item mailbox list in setting --- .../mailbox_visibility_controller.dart | 7 +++++ .../mailbox_visibility_view.dart | 1 + ...ailbox_visibility_folder_tile_builder.dart | 30 +++++++++++-------- 3 files changed, 26 insertions(+), 12 deletions(-) diff --git a/lib/features/manage_account/presentation/mailbox_visibility/mailbox_visibility_controller.dart b/lib/features/manage_account/presentation/mailbox_visibility/mailbox_visibility_controller.dart index 23adc9e7a..914e7678c 100644 --- a/lib/features/manage_account/presentation/mailbox_visibility/mailbox_visibility_controller.dart +++ b/lib/features/manage_account/presentation/mailbox_visibility/mailbox_visibility_controller.dart @@ -40,6 +40,7 @@ class MailboxVisibilityController extends BaseMailboxController { final _appToast = Get.find(); final _imagePaths = Get.find(); final _responsiveUtils = Get.find(); + final mailboxListScrollController = ScrollController(); MailboxVisibilityController( TreeBuilder treeBuilder, @@ -226,4 +227,10 @@ class MailboxVisibilityController extends BaseMailboxController { ); } } + + @override + void onClose() { + mailboxListScrollController.dispose(); + super.onClose(); + } } diff --git a/lib/features/manage_account/presentation/mailbox_visibility/mailbox_visibility_view.dart b/lib/features/manage_account/presentation/mailbox_visibility/mailbox_visibility_view.dart index 95e5c9d2b..5d7a6c3f5 100644 --- a/lib/features/manage_account/presentation/mailbox_visibility/mailbox_visibility_view.dart +++ b/lib/features/manage_account/presentation/mailbox_visibility/mailbox_visibility_view.dart @@ -63,6 +63,7 @@ class MailboxVisibilityView extends GetWidget Widget _buildListMailbox(BuildContext context) { return SingleChildScrollView( + controller: controller.mailboxListScrollController, key: const PageStorageKey('mailbox_list'), physics: const ClampingScrollPhysics(), child: Column(children: [ diff --git a/lib/features/manage_account/presentation/mailbox_visibility/widgets/mailbox_visibility_folder_tile_builder.dart b/lib/features/manage_account/presentation/mailbox_visibility/widgets/mailbox_visibility_folder_tile_builder.dart index 133455297..29ae46b99 100644 --- a/lib/features/manage_account/presentation/mailbox_visibility/widgets/mailbox_visibility_folder_tile_builder.dart +++ b/lib/features/manage_account/presentation/mailbox_visibility/widgets/mailbox_visibility_folder_tile_builder.dart @@ -27,18 +27,24 @@ class MailBoxVisibilityFolderTileBuilder extends StatelessWidget { @override Widget build(BuildContext context) { - return Container( - color: Colors.white, - padding: const EdgeInsets.all(8), - child: Row( - children: [ - const SizedBox(width: 8), - _buildLeadingMailboxItem(context), - Expanded(child: _buildTitleFolderItem()), - if (!_mailboxNode.item.isDefault) - _buildSubscribeButton(context), - const SizedBox(width: 32), - ] + return Material( + color: Colors.transparent, + child: InkWell( + onTap: () {}, + borderRadius: const BorderRadius.all(Radius.circular(8)), + child: Padding( + padding: const EdgeInsets.all(8), + child: Row( + children: [ + const SizedBox(width: 8), + _buildLeadingMailboxItem(context), + Expanded(child: _buildTitleFolderItem()), + if (!_mailboxNode.item.isDefault) + _buildSubscribeButton(context), + const SizedBox(width: 32), + ] + ), + ), ), ); }