feat(Label): Add depend on settings to register websocket for label
This commit is contained in:
+4
-11
@@ -8,15 +8,15 @@ import 'package:tmail_ui_user/features/thread_detail/presentation/action/thread_
|
||||
extension HandleReactiveObxVariableExtension on MailboxDashBoardController {
|
||||
|
||||
void registerReactiveObxVariableListener() {
|
||||
advancedSearchVisibleWorker = ever(
|
||||
workerObxVariables.add(ever(
|
||||
searchController.isAdvancedSearchViewOpen,
|
||||
_onAdvancedSearchVisibleChanged
|
||||
);
|
||||
));
|
||||
|
||||
searchInputFocusWorker = ever(
|
||||
workerObxVariables.add(ever(
|
||||
searchController.isSearchInputFocused,
|
||||
onSearchInputFocusChanged
|
||||
);
|
||||
));
|
||||
}
|
||||
|
||||
void _onAdvancedSearchVisibleChanged(bool visible) {
|
||||
@@ -52,11 +52,4 @@ extension HandleReactiveObxVariableExtension on MailboxDashBoardController {
|
||||
|
||||
dispatchAction(dashboardAction);
|
||||
}
|
||||
|
||||
void disposeReactiveObxVariableListener() {
|
||||
advancedSearchVisibleWorker?.dispose();
|
||||
advancedSearchVisibleWorker = null;
|
||||
searchInputFocusWorker?.dispose();
|
||||
searchInputFocusWorker = null;
|
||||
}
|
||||
}
|
||||
+19
@@ -1,3 +1,4 @@
|
||||
import 'package:core/utils/app_logger.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
|
||||
|
||||
@@ -15,4 +16,22 @@ extension HandleLogicLabelExtension on MailboxDashBoardController {
|
||||
return labelController.isLabelSettingEnabled.isTrue &&
|
||||
isLabelCapabilitySupported;
|
||||
}
|
||||
|
||||
void registerLabelReactiveObxListener() {
|
||||
workerObxVariables.add(
|
||||
ever(
|
||||
labelController.isLabelSettingEnabled,
|
||||
_onLabelSettingEnabledChanged,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
void _onLabelSettingEnabledChanged(bool isEnabled) {
|
||||
log('$runtimeType::_onLabelSettingEnabledChanged: isEnabled is $isEnabled');
|
||||
injectWebSocket(
|
||||
session: sessionCurrent,
|
||||
accountId: accountId.value,
|
||||
isLabelAvailable: isEnabled,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user