TF-4082 Save text formatting menu state to user's preferences when send email or close composer
This commit is contained in:
+3
@@ -13,6 +13,7 @@ import 'package:tmail_ui_user/features/email/presentation/extensions/composer_ar
|
||||
import 'package:tmail_ui_user/features/email/presentation/model/composer_arguments.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/action/dashboard_action.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/extensions/update_text_formatting_menu_state_extension.dart';
|
||||
import 'package:tmail_ui_user/features/sending_queue/presentation/model/sending_email_arguments.dart';
|
||||
import 'package:tmail_ui_user/features/thread_detail/presentation/action/thread_detail_ui_action.dart';
|
||||
import 'package:tmail_ui_user/main/routes/app_routes.dart';
|
||||
@@ -125,6 +126,8 @@ extension OpenAndCloseComposerExtension on MailboxDashBoardController {
|
||||
if (composerId != null) {
|
||||
await removeComposerCacheByIdOnWeb(composerId);
|
||||
}
|
||||
|
||||
saveTextFormattingMenuState();
|
||||
}
|
||||
|
||||
void _handleResultAfterCloseComposer(dynamic result) {
|
||||
|
||||
+14
@@ -1,4 +1,6 @@
|
||||
import 'package:core/utils/app_logger.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/usecases/get_text_formatting_menu_state_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/usecases/save_text_formatting_menu_state_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
|
||||
import 'package:tmail_ui_user/main/routes/route_navigation.dart';
|
||||
|
||||
@@ -13,5 +15,17 @@ extension UpdateTextFormattingMenuStateExtension on MailboxDashBoardController {
|
||||
|
||||
void updateTextFormattingMenuState(bool isDisplayed) {
|
||||
isTextFormattingMenuOpened.value = isDisplayed;
|
||||
log('$runtimeType::updateTextFormattingMenuState(): isDisplayed: $isDisplayed');
|
||||
}
|
||||
|
||||
void saveTextFormattingMenuState() {
|
||||
saveTextFormattingMenuStateInteractor =
|
||||
getBinding<SaveTextFormattingMenuStateInteractor>();
|
||||
if (saveTextFormattingMenuStateInteractor == null) return;
|
||||
|
||||
final isDisplayed = isTextFormattingMenuOpened.value;
|
||||
consumeState(
|
||||
saveTextFormattingMenuStateInteractor!.execute(isDisplayed),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user