TF-1844 Fix mailbox not selected in advanced search
(cherry picked from commit 5711f01183f335c4446c7f5c870f5aca6d72e82c)
This commit is contained in:
+3
-2
@@ -131,12 +131,13 @@ class AdvancedFilterController extends BaseController {
|
||||
void selectedMailBox(BuildContext context) async {
|
||||
final accountId = _mailboxDashBoardController.accountId.value;
|
||||
final session = _mailboxDashBoardController.sessionCurrent;
|
||||
if (accountId != null) {
|
||||
if (accountId != null && session != null) {
|
||||
final arguments = DestinationPickerArguments(
|
||||
accountId,
|
||||
MailboxActions.select,
|
||||
session,
|
||||
mailboxIdSelected: searchController.searchEmailFilter.value.mailbox?.id);
|
||||
mailboxIdSelected: _destinationMailboxSelected?.id
|
||||
);
|
||||
|
||||
final destinationMailbox = PlatformInfo.isWeb
|
||||
? await DialogRouter.pushGeneralDialog(routeName: AppRoutes.destinationPicker, arguments: arguments)
|
||||
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class AdvancedSearchInputFormStyle {
|
||||
static const TextStyle inputTextStyle = TextStyle(
|
||||
color: Colors.black,
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w400,
|
||||
);
|
||||
}
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class TextFieldAutocompleteEmailAddressStyle {
|
||||
static const TextStyle inputTextStyle = TextStyle(
|
||||
color: Colors.black,
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w400,
|
||||
);
|
||||
}
|
||||
+1
-1
@@ -2,7 +2,7 @@ import 'package:core/core.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_svg/flutter_svg.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_filter_form.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_input_form.dart';
|
||||
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
||||
|
||||
Future<void> showAdvancedSearchFilterBottomSheet(BuildContext context) async {
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@ import 'package:core/presentation/utils/responsive_utils.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:pointer_interceptor/pointer_interceptor.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_filter_form.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_input_form.dart';
|
||||
|
||||
class AdvancedSearchFilterOverlay extends StatelessWidget {
|
||||
|
||||
|
||||
+14
-11
@@ -8,9 +8,10 @@ import 'package:tmail_ui_user/features/base/widget/popup_item_no_icon_widget.dar
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/advanced_filter_controller.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/advanced_search_filter.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/email_receive_time_type.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/styles/advanced_search_input_form_style.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_filter_form_bottom_view.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/date_drop_down_button.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/text_field_auto_complete_email_adress.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/text_field_autocomplete_email_adress.dart';
|
||||
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
||||
import 'package:tmail_ui_user/main/routes/route_navigation.dart';
|
||||
|
||||
@@ -66,14 +67,15 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
|
||||
nextFocusNode: controller.focusManager.mailboxFieldFocusNode,
|
||||
),
|
||||
_buildFilterField(
|
||||
textEditingController: controller.mailBoxFilterInputController,
|
||||
context: context,
|
||||
advancedSearchFilterField: AdvancedSearchFilterField.mailBox,
|
||||
isSelectFormList: true,
|
||||
currentFocusNode: controller.focusManager.mailboxFieldFocusNode,
|
||||
nextFocusNode: controller.focusManager.attachmentCheckboxFocusNode,
|
||||
mouseCursor: SystemMouseCursors.click,
|
||||
onTap: () => controller.selectedMailBox(context)),
|
||||
textEditingController: controller.mailBoxFilterInputController,
|
||||
context: context,
|
||||
advancedSearchFilterField: AdvancedSearchFilterField.mailBox,
|
||||
isSelectFormList: true,
|
||||
currentFocusNode: controller.focusManager.mailboxFieldFocusNode,
|
||||
nextFocusNode: controller.focusManager.attachmentCheckboxFocusNode,
|
||||
mouseCursor: SystemMouseCursors.click,
|
||||
onTap: () => controller.selectedMailBox(context)
|
||||
),
|
||||
Row(children: [
|
||||
Expanded(child: _buildFilterField(
|
||||
context: context,
|
||||
@@ -253,7 +255,7 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
|
||||
),
|
||||
const Padding(padding: EdgeInsets.all(4)),
|
||||
_responsiveUtils.isMobile(context) || _responsiveUtils.landscapeTabletSupported(context)
|
||||
? TextFieldAutoCompleteEmailAddress(
|
||||
? TextFieldAutocompleteEmailAddress(
|
||||
optionsBuilder: controller.getAutoCompleteSuggestion,
|
||||
advancedSearchFilterField: advancedSearchFilterField,
|
||||
initialTags: listTagInitial,
|
||||
@@ -289,7 +291,7 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
|
||||
},
|
||||
)
|
||||
: Expanded(
|
||||
child: TextFieldAutoCompleteEmailAddress(
|
||||
child: TextFieldAutocompleteEmailAddress(
|
||||
optionsBuilder: controller.getAutoCompleteSuggestion,
|
||||
advancedSearchFilterField: advancedSearchFilterField,
|
||||
initialTags: listTagInitial,
|
||||
@@ -363,6 +365,7 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
|
||||
mouseCursor: mouseCursor,
|
||||
maxLines: 1,
|
||||
textInputAction: isSelectFormList ? TextInputAction.done : TextInputAction.next,
|
||||
textStyle: AdvancedSearchInputFormStyle.inputTextStyle,
|
||||
onTap: onTap,
|
||||
onTextSubmitted: (value) {
|
||||
if (isSelectFormList) {
|
||||
+8
-6
@@ -10,12 +10,13 @@ import 'package:model/extensions/email_address_extension.dart';
|
||||
import 'package:textfield_tags/textfield_tags.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/advanced_search_filter.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/custom_tf_tag_controller.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/styles/text_field_autocomplete_email_address_style.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/autocomplete_suggestion_item_widget.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/autocomplete_tag_item_widget.dart';
|
||||
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
||||
|
||||
class TextFieldAutoCompleteEmailAddress extends StatefulWidget {
|
||||
const TextFieldAutoCompleteEmailAddress({
|
||||
class TextFieldAutocompleteEmailAddress extends StatefulWidget {
|
||||
const TextFieldAutocompleteEmailAddress({
|
||||
Key? key,
|
||||
required this.advancedSearchFilterField,
|
||||
required this.initialTags,
|
||||
@@ -36,12 +37,12 @@ class TextFieldAutoCompleteEmailAddress extends StatefulWidget {
|
||||
final FocusNode? nextFocusNode;
|
||||
|
||||
@override
|
||||
State<TextFieldAutoCompleteEmailAddress> createState() =>
|
||||
_TextFieldAutoCompleteEmailAddressState();
|
||||
State<TextFieldAutocompleteEmailAddress> createState() =>
|
||||
_TextFieldAutocompleteEmailAddressState();
|
||||
}
|
||||
|
||||
class _TextFieldAutoCompleteEmailAddressState
|
||||
extends State<TextFieldAutoCompleteEmailAddress> {
|
||||
class _TextFieldAutocompleteEmailAddressState
|
||||
extends State<TextFieldAutocompleteEmailAddress> {
|
||||
final double _distanceToField = 380;
|
||||
final _responsiveUtils = Get.find<ResponsiveUtils>();
|
||||
late CustomController _controller;
|
||||
@@ -138,6 +139,7 @@ class _TextFieldAutoCompleteEmailAddressState
|
||||
focusNode: fn,
|
||||
textInputAction: TextInputAction.next,
|
||||
maxLines: 1,
|
||||
textStyle: TextFieldAutocompleteEmailAddressStyle.inputTextStyle,
|
||||
decoration: InputDecoration(
|
||||
filled: true,
|
||||
fillColor: Colors.white,
|
||||
Reference in New Issue
Block a user