TF-2101 Handle open recover_deleted_messages
(cherry picked from commit a58beb7a293471f39b080805c652c9d6f73dfe20)
This commit is contained in:
@@ -1038,6 +1038,9 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
||||
case MailboxActions.newSubfolder:
|
||||
goToCreateNewMailboxView(context, parentMailbox: mailbox);
|
||||
break;
|
||||
case MailboxActions.recoverDeletedMessages:
|
||||
mailboxDashBoardController.gotoEmailRecovery();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
+12
@@ -2426,6 +2426,18 @@ class MailboxDashBoardController extends ReloadableController {
|
||||
}
|
||||
}
|
||||
|
||||
void gotoEmailRecovery() async {
|
||||
closeMailboxMenuDrawer();
|
||||
if (PlatformInfo.isWeb) {
|
||||
await DialogRouter.pushGeneralDialog(
|
||||
routeName: AppRoutes.emailRecovery,
|
||||
arguments: {},
|
||||
);
|
||||
} else {
|
||||
await push(AppRoutes.emailRecovery);
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void onClose() {
|
||||
_emailReceiveManager.closeEmailReceiveManagerStream();
|
||||
|
||||
@@ -441,17 +441,15 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView {
|
||||
Obx(() {
|
||||
final mailboxSelected = controller.selectedMailbox.value;
|
||||
if (mailboxSelected != null && mailboxSelected.role == PresentationMailbox.roleTrash) {
|
||||
return Row(
|
||||
children: [
|
||||
const SizedBox(width: 16),
|
||||
TMailButtonWidget.fromIcon(
|
||||
key: const Key('recover_deleted_messages_button'),
|
||||
icon: controller.imagePaths.icRecoverDeletedMessages,
|
||||
borderRadius: 10,
|
||||
iconSize: 16,
|
||||
onTapActionCallback: () => controller.gotoEmailRecovery(),
|
||||
)
|
||||
],
|
||||
return Padding(
|
||||
padding: const EdgeInsetsDirectional.only(start: 16),
|
||||
child: TMailButtonWidget.fromIcon(
|
||||
key: const Key('recover_deleted_messages_button'),
|
||||
icon: controller.imagePaths.icRecoverDeletedMessages,
|
||||
borderRadius: 10,
|
||||
iconSize: 16,
|
||||
onTapActionCallback: () => controller.gotoEmailRecovery(),
|
||||
),
|
||||
);
|
||||
} else {
|
||||
return const SizedBox.shrink();
|
||||
|
||||
@@ -3768,7 +3768,7 @@ class AppLocalizations {
|
||||
|
||||
String get bannerProgressingRecoveryMessage {
|
||||
return Intl.message(
|
||||
'The recovery is in progress. You can continue using TeamMail',
|
||||
'The recovery is in progress. You can continue using TwakeMail',
|
||||
name: 'bannerProgressingRecoveryMessage',
|
||||
);
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import 'package:tmail_ui_user/features/composer/presentation/composer_view.dart'
|
||||
import 'package:tmail_ui_user/features/contact/presentation/contact_bindings.dart';
|
||||
import 'package:tmail_ui_user/features/destination_picker/presentation/destination_picker_bindings.dart';
|
||||
import 'package:tmail_ui_user/features/destination_picker/presentation/destination_picker_view.dart' deferred as destination_picker;
|
||||
import 'package:tmail_ui_user/features/email_recovery/presentation/email_recovery_bindings.dart';
|
||||
import 'package:tmail_ui_user/features/home/presentation/home_bindings.dart';
|
||||
import 'package:tmail_ui_user/features/home/presentation/home_view.dart';
|
||||
import 'package:tmail_ui_user/features/contact/presentation/contact_view.dart' deferred as contact_view;
|
||||
@@ -32,6 +33,7 @@ import 'package:tmail_ui_user/main/pages/deferred_widget.dart';
|
||||
import 'package:tmail_ui_user/main/routes/app_routes.dart';
|
||||
import 'package:tmail_ui_user/features/search/mailbox/presentation/search_mailbox_view.dart' deferred as search_mailbox_view;
|
||||
import 'package:tmail_ui_user/features/mailto/presentation/mailto_url_view.dart' deferred as mailto_url_view;
|
||||
import 'package:tmail_ui_user/features/email_recovery/presentation/email_recovery_view.dart' deferred as email_recovery;
|
||||
|
||||
class AppPages {
|
||||
static final pages = [
|
||||
@@ -125,6 +127,14 @@ class AppPages {
|
||||
() => identity_creator.IdentityCreatorView()
|
||||
),
|
||||
binding: IdentityCreatorBindings()),
|
||||
GetPage(
|
||||
name: AppRoutes.emailRecovery,
|
||||
opaque: false,
|
||||
page: () => DeferredWidget(
|
||||
email_recovery.loadLibrary,
|
||||
() => email_recovery.EmailRecoveryView()
|
||||
),
|
||||
binding: EmailRecoveryBindings()),
|
||||
]
|
||||
];
|
||||
|
||||
|
||||
@@ -14,4 +14,5 @@ abstract class AppRoutes {
|
||||
static const unknownRoutePage = '/notfound';
|
||||
static const searchMailbox = '/search_mailbox';
|
||||
static const mailtoURL = '/mailto';
|
||||
static const emailRecovery = '/email_recovery';
|
||||
}
|
||||
@@ -6,6 +6,8 @@ import 'package:tmail_ui_user/features/contact/presentation/contact_bindings.dar
|
||||
import 'package:tmail_ui_user/features/contact/presentation/contact_view.dart';
|
||||
import 'package:tmail_ui_user/features/destination_picker/presentation/destination_picker_bindings.dart';
|
||||
import 'package:tmail_ui_user/features/destination_picker/presentation/destination_picker_view.dart';
|
||||
import 'package:tmail_ui_user/features/email_recovery/presentation/email_recovery_bindings.dart';
|
||||
import 'package:tmail_ui_user/features/email_recovery/presentation/email_recovery_view.dart';
|
||||
import 'package:tmail_ui_user/features/identity_creator/presentation/identity_creator_bindings.dart';
|
||||
import 'package:tmail_ui_user/features/identity_creator/presentation/identity_creator_view.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_creator/presentation/mailbox_creator_bindings.dart';
|
||||
@@ -46,6 +48,9 @@ class DialogRouter {
|
||||
case AppRoutes.contact:
|
||||
ContactBindings().dependencies();
|
||||
break;
|
||||
case AppRoutes.emailRecovery:
|
||||
EmailRecoveryBindings().dependencies();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -62,6 +67,8 @@ class DialogRouter {
|
||||
return DestinationPickerView();
|
||||
case AppRoutes.contact:
|
||||
return const ContactView();
|
||||
case AppRoutes.emailRecovery:
|
||||
return EmailRecoveryView();
|
||||
default:
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user