TF-335 Add focus widget view above email detail view in browser

This commit is contained in:
dab246
2022-03-28 16:42:12 +07:00
committed by Dat H. Pham
parent 5a009f13e7
commit fbc5ea6796
3 changed files with 28 additions and 27 deletions
@@ -3,6 +3,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart'; import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:model/model.dart'; import 'package:model/model.dart';
import 'package:pointer_interceptor/pointer_interceptor.dart';
import 'package:tmail_ui_user/features/destination_picker/presentation/destination_picker_controller.dart'; import 'package:tmail_ui_user/features/destination_picker/presentation/destination_picker_controller.dart';
import 'package:tmail_ui_user/features/destination_picker/presentation/model/destination_picker_arguments.dart'; import 'package:tmail_ui_user/features/destination_picker/presentation/model/destination_picker_arguments.dart';
import 'package:tmail_ui_user/features/destination_picker/presentation/widgets/app_bar_destination_picker_builder.dart'; import 'package:tmail_ui_user/features/destination_picker/presentation/widgets/app_bar_destination_picker_builder.dart';
@@ -26,7 +27,7 @@ class DestinationPickerView extends GetWidget<DestinationPickerController> {
} }
if (actions == MailboxActions.create) { if (actions == MailboxActions.create) {
return Card( return PointerInterceptor(child: Card(
margin: EdgeInsets.zero, margin: EdgeInsets.zero,
borderOnForeground: false, borderOnForeground: false,
color: Colors.transparent, color: Colors.transparent,
@@ -35,10 +36,8 @@ class DestinationPickerView extends GetWidget<DestinationPickerController> {
child: ResponsiveWidget( child: ResponsiveWidget(
responsiveUtils: _responsiveUtils, responsiveUtils: _responsiveUtils,
mobile: _responsiveUtils.isPortrait(context) mobile: _responsiveUtils.isPortrait(context)
? Container( ? Container(child: _buildBodyMailboxLocation(context, actions), width: _responsiveUtils.getSizeScreenWidth(context))
child: _buildBodyMailboxLocation(context, actions), : _buildBodyMailboxDestination(context, actions),
width: _responsiveUtils.getSizeScreenWidth(context))
: _buildBodyMailboxDestination(context, actions),
tablet: Container( tablet: Container(
child: Row( child: Row(
children: [ children: [
@@ -65,9 +64,9 @@ class DestinationPickerView extends GetWidget<DestinationPickerController> {
) )
), ),
) )
); ));
} else { } else {
return _buildBodyMailboxDestination(context, actions); return PointerInterceptor(child: _buildBodyMailboxDestination(context, actions));
} }
} }
@@ -459,7 +459,7 @@ class MailboxController extends BaseMailboxController {
} }
void _openConfirmationDialogDeleteMailboxAction(BuildContext context, PresentationMailbox presentationMailbox) { void _openConfirmationDialogDeleteMailboxAction(BuildContext context, PresentationMailbox presentationMailbox) {
if (_responsiveUtils.isMobile(context) || _responsiveUtils.isMobileDevice(context)) { if (_responsiveUtils.isMobile(context)) {
(ConfirmationDialogActionSheetBuilder(context) (ConfirmationDialogActionSheetBuilder(context)
..messageText(AppLocalizations.of(context).message_confirmation_dialog_delete_mailbox(presentationMailbox.name?.name ?? '')) ..messageText(AppLocalizations.of(context).message_confirmation_dialog_delete_mailbox(presentationMailbox.name?.name ?? ''))
..onCancelAction(AppLocalizations.of(context).cancel, () => popBack()) ..onCancelAction(AppLocalizations.of(context).cancel, () => popBack())
@@ -536,7 +536,7 @@ class MailboxController extends BaseMailboxController {
} }
void _openDialogRenameMailboxAction(BuildContext context, PresentationMailbox presentationMailbox) { void _openDialogRenameMailboxAction(BuildContext context, PresentationMailbox presentationMailbox) {
if (_responsiveUtils.isMobile(context) || _responsiveUtils.isMobileDevice(context)) { if (_responsiveUtils.isMobile(context)) {
(EditTextModalSheetBuilder() (EditTextModalSheetBuilder()
..key(Key('rename_mailbox_modal_sheet')) ..key(Key('rename_mailbox_modal_sheet'))
..title(AppLocalizations.of(context).rename_mailbox) ..title(AppLocalizations.of(context).rename_mailbox)
@@ -560,22 +560,23 @@ class MailboxController extends BaseMailboxController {
showDialog( showDialog(
context: context, context: context,
barrierColor: AppColor.colorDefaultCupertinoActionSheet, barrierColor: AppColor.colorDefaultCupertinoActionSheet,
builder: (BuildContext context) => (EditTextDialogBuilder() builder: (BuildContext context) =>
..key(Key('rename_mailbox_dialog')) PointerInterceptor(child: (EditTextDialogBuilder()
..title(AppLocalizations.of(context).rename_mailbox) ..key(Key('rename_mailbox_dialog'))
..cancelText(AppLocalizations.of(context).cancel) ..title(AppLocalizations.of(context).rename_mailbox)
..setErrorString((value) => getErrorInputNameStringRenameMailbox(context, value)) ..cancelText(AppLocalizations.of(context).cancel)
..setTextController(TextEditingController.fromValue( ..setErrorString((value) => getErrorInputNameStringRenameMailbox(context, value))
TextEditingValue( ..setTextController(TextEditingController.fromValue(
text: presentationMailbox.name?.name ?? '', TextEditingValue(
selection: TextSelection( text: presentationMailbox.name?.name ?? '',
baseOffset: 0, selection: TextSelection(
extentOffset: presentationMailbox.name?.name.length ?? 0 baseOffset: 0,
) extentOffset: presentationMailbox.name?.name.length ?? 0
))) )
..onConfirmButtonAction(AppLocalizations.of(context).rename, )))
(value) => _renameMailboxAction(presentationMailbox, value))) ..onConfirmButtonAction(AppLocalizations.of(context).rename,
.build()); (value) => _renameMailboxAction(presentationMailbox, value)))
.build()));
} }
} }
@@ -2,6 +2,7 @@ import 'package:core/core.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart'; import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:pointer_interceptor/pointer_interceptor.dart';
import 'package:tmail_ui_user/features/mailbox_creator/presentation/mailbox_creator_controller.dart'; import 'package:tmail_ui_user/features/mailbox_creator/presentation/mailbox_creator_controller.dart';
import 'package:tmail_ui_user/features/mailbox_creator/presentation/widgets/app_bar_mailbox_creator_builder.dart'; import 'package:tmail_ui_user/features/mailbox_creator/presentation/widgets/app_bar_mailbox_creator_builder.dart';
import 'package:tmail_ui_user/features/mailbox_creator/presentation/widgets/create_mailbox_name_input_decoration_builder.dart'; import 'package:tmail_ui_user/features/mailbox_creator/presentation/widgets/create_mailbox_name_input_decoration_builder.dart';
@@ -14,7 +15,7 @@ class MailboxCreatorView extends GetWidget<MailboxCreatorController> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Card( return PointerInterceptor(child: Card(
margin: EdgeInsets.zero, margin: EdgeInsets.zero,
borderOnForeground: false, borderOnForeground: false,
color: Colors.transparent, color: Colors.transparent,
@@ -51,7 +52,7 @@ class MailboxCreatorView extends GetWidget<MailboxCreatorController> {
) )
), ),
) )
); ));
} }
Widget _buildBody(BuildContext context) { Widget _buildBody(BuildContext context) {