TF-3878 Thread Detail Fix email content disappearing
This commit is contained in:
+4
-3
@@ -21,9 +21,10 @@ extension InitializeThreadDetailManager on ThreadDetailManager {
|
||||
);
|
||||
currentMobilePageViewIndex.value = currentThreadIndex;
|
||||
} else if (selectedEmail?.id != null) {
|
||||
final currentEmailIndex = currentDisplayedEmails.indexOf(
|
||||
selectedEmail!,
|
||||
);
|
||||
final currentEmailIndex = currentDisplayedEmails
|
||||
.map((email) => email.id)
|
||||
.toList()
|
||||
.indexOf(selectedEmail?.id);
|
||||
currentMobilePageViewIndex.value = currentEmailIndex;
|
||||
}
|
||||
|
||||
|
||||
+3
-1
@@ -16,7 +16,9 @@ extension ThreadDetailNextPreviousActions on ThreadDetailManager {
|
||||
final currentIndex = isThreadDetailEnabled
|
||||
? availableThreadIds.indexOf(currentThreadId!)
|
||||
: currentDisplayedEmails
|
||||
.indexOf(mailboxDashBoardController.selectedEmail.value!);
|
||||
.map((email) => email.id)
|
||||
.toList()
|
||||
.indexOf(mailboxDashBoardController.selectedEmail.value?.id);
|
||||
_navigate(currentIndex + 1, isThreadDetailEnabled);
|
||||
}
|
||||
|
||||
|
||||
+6
@@ -11,6 +11,7 @@ import 'package:model/extensions/session_extension.dart';
|
||||
import 'package:tmail_ui_user/features/email/presentation/model/composer_arguments.dart';
|
||||
import 'package:tmail_ui_user/features/email/presentation/utils/email_utils.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/extensions/open_and_close_composer_extension.dart';
|
||||
import 'package:tmail_ui_user/features/thread_detail/presentation/extension/close_thread_detail_action.dart';
|
||||
import 'package:tmail_ui_user/features/thread_detail/presentation/thread_detail_controller.dart';
|
||||
import 'package:tmail_ui_user/main/routes/route_navigation.dart';
|
||||
|
||||
@@ -143,6 +144,7 @@ extension ThreadDetailOnEmailActionClick on ThreadDetailController {
|
||||
moveActionRequest.moveRequest,
|
||||
moveActionRequest.emailIdsWithReadStatus,
|
||||
);
|
||||
if (emailIdsPresentation.length == 1) closeThreadDetailAction(currentContext);
|
||||
}
|
||||
|
||||
void _trashEmail(PresentationEmail presentationEmail) {
|
||||
@@ -162,6 +164,7 @@ extension ThreadDetailOnEmailActionClick on ThreadDetailController {
|
||||
moveActionRequest.moveRequest,
|
||||
moveActionRequest.emailIdsWithReadStatus,
|
||||
);
|
||||
if (emailIdsPresentation.length == 1) closeThreadDetailAction(currentContext);
|
||||
}
|
||||
|
||||
void _markEmailSpam(PresentationEmail presentationEmail) {
|
||||
@@ -181,6 +184,7 @@ extension ThreadDetailOnEmailActionClick on ThreadDetailController {
|
||||
moveActionRequest.moveRequest,
|
||||
moveActionRequest.emailIdsWithReadStatus,
|
||||
);
|
||||
if (emailIdsPresentation.length == 1) closeThreadDetailAction(currentContext);
|
||||
}
|
||||
|
||||
void _unSpamEmail(PresentationEmail presentationEmail) {
|
||||
@@ -200,6 +204,7 @@ extension ThreadDetailOnEmailActionClick on ThreadDetailController {
|
||||
moveActionRequest.moveRequest,
|
||||
moveActionRequest.emailIdsWithReadStatus,
|
||||
);
|
||||
if (emailIdsPresentation.length == 1) closeThreadDetailAction(currentContext);
|
||||
}
|
||||
|
||||
void _deleteEmailPermanently(PresentationEmail email) {
|
||||
@@ -212,6 +217,7 @@ extension ThreadDetailOnEmailActionClick on ThreadDetailController {
|
||||
responsiveUtils: responsiveUtils,
|
||||
imagePaths: imagePaths,
|
||||
);
|
||||
if (emailIdsPresentation.length == 1) closeThreadDetailAction(currentContext);
|
||||
}
|
||||
|
||||
void _quickCreateRule(PresentationEmail presentationEmail) {
|
||||
|
||||
Reference in New Issue
Block a user