TF-3924 Thread Detail Memory leak resolve

This commit is contained in:
DatDang
2025-07-31 13:45:03 +07:00
committed by Dat H. Pham
parent d83e92bc5f
commit 0b17dc26e8
8 changed files with 38 additions and 55 deletions
@@ -400,6 +400,7 @@ class ComposerBindings extends BaseBindings {
Get.delete<CreateNewAndSaveEmailToDraftsInteractor>(tag: composerId);
Get.delete<RestoreEmailInlineImagesInteractor>(tag: composerId);
Get.delete<PrintEmailInteractor>(tag: composerId);
Get.delete<SaveTemplateEmailInteractor>(tag: composerId);
IdentityInteractorsBindings(composerId: composerId).dispose();
PreferencesInteractorsBindings(composerId: composerId).dispose();
@@ -58,4 +58,17 @@ class CalendarEventInteractorBindings extends InteractorsBindings {
Get.find<HtmlDataSource>(),
));
}
void dispose() {
Get.delete<CalendarEventDataSource>();
Get.delete<CalendarEventAPI>();
Get.delete<CalendarEventDataSourceImpl>();
Get.delete<ParseCalendarEventInteractor>();
Get.delete<AcceptCalendarEventInteractor>();
Get.delete<MaybeCalendarEventInteractor>();
Get.delete<RejectCalendarEventInteractor>();
Get.delete<AcceptCounterCalendarEventInteractor>();
Get.delete<CalendarEventRepository>();
Get.delete<CalendarEventRepositoryImpl>();
}
}
@@ -34,4 +34,12 @@ class MdnInteractorBindings extends InteractorsBindings {
void bindingsRepositoryImpl() {
Get.lazyPut(() => MdnRepositoryImpl(Get.find<MdnDataSource>()));
}
void dispose() {
Get.delete<MdnDataSource>();
Get.delete<MdnDataSourceImpl>();
Get.delete<SendReceiptToSenderInteractor>();
Get.delete<MdnRepository>();
Get.delete<MdnRepositoryImpl>();
}
}
@@ -93,6 +93,7 @@ import 'package:tmail_ui_user/features/email/domain/usecases/send_receipt_to_sen
import 'package:tmail_ui_user/features/email/domain/usecases/store_opened_email_interactor.dart';
import 'package:tmail_ui_user/features/email/presentation/action/email_ui_action.dart';
import 'package:tmail_ui_user/features/email/presentation/bindings/calendar_event_interactor_bindings.dart';
import 'package:tmail_ui_user/features/email/presentation/bindings/mdn_interactor_bindings.dart';
import 'package:tmail_ui_user/features/email/presentation/extensions/attachment_extension.dart';
import 'package:tmail_ui_user/features/email/presentation/extensions/calendar_attendee_extension.dart';
import 'package:tmail_ui_user/features/email/presentation/extensions/calendar_organizer_extension.dart';
@@ -265,6 +266,8 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
_downloadProgressStateController.close();
_attachmentListScrollController.dispose();
emailScrollController.dispose();
CalendarEventInteractorBindings().dispose();
MdnInteractorBindings().dispose();
super.onClose();
}