TF-4045 Add storage information in settings
This commit is contained in:
@@ -4,6 +4,7 @@ import 'package:core/presentation/utils/responsive_utils.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:tmail_ui_user/features/base/mixin/contact_support_mixin.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/extensions/validate_setting_capability_supported_extension.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/manage_account_dashboard_controller.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/model/account_menu_item.dart';
|
||||
import 'package:tmail_ui_user/main/routes/route_navigation.dart';
|
||||
@@ -48,6 +49,8 @@ class ManageAccountMenuController extends GetxController with ContactSupportMixi
|
||||
AccountMenuItem.mailboxVisibility,
|
||||
if (dashBoardController.isLanguageSettingDisplayed)
|
||||
AccountMenuItem.languageAndRegion,
|
||||
if (dashBoardController.isStorageCapabilitySupported)
|
||||
AccountMenuItem.storage,
|
||||
];
|
||||
listAccountMenuItem.value = newListMenuSetting;
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ import 'package:tmail_ui_user/features/home/domain/extensions/session_extensions
|
||||
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/user_information_widget.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/profile_setting/profile_setting_action_type.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/extensions/handle_profile_setting_action_type_click_extension.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/extensions/validate_setting_capability_supported_extension.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/menu/settings/settings_controller.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/menu/settings_utils.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/menu/widgets/setting_first_level_tile_builder.dart';
|
||||
@@ -169,6 +170,33 @@ class SettingsFirstLevelView extends GetWidget<SettingsController> {
|
||||
),
|
||||
]);
|
||||
}),
|
||||
Obx(() {
|
||||
if (controller.manageAccountDashboardController.isStorageCapabilitySupported) {
|
||||
return Column(children: [
|
||||
Divider(
|
||||
color: AppColor.colorDividerHorizontal,
|
||||
height: 1,
|
||||
indent: SettingsUtils.getHorizontalPadding(
|
||||
context,
|
||||
controller.responsiveUtils,
|
||||
),
|
||||
endIndent: SettingsUtils.getHorizontalPadding(
|
||||
context,
|
||||
controller.responsiveUtils,
|
||||
),
|
||||
),
|
||||
SettingFirstLevelTileBuilder(
|
||||
key: const ValueKey('setting_storage'),
|
||||
AccountMenuItem.storage.getName(AppLocalizations.of(context)),
|
||||
AccountMenuItem.storage.getIcon(controller.imagePaths),
|
||||
subtitle: AppLocalizations.of(context).storageSettingExplanation,
|
||||
() => controller.selectSettings(AccountMenuItem.storage),
|
||||
),
|
||||
]);
|
||||
} else {
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
}),
|
||||
Obx(() {
|
||||
if (controller.manageAccountDashboardController.isFcmCapabilitySupported && PlatformInfo.isMobile) {
|
||||
return Column(children: [
|
||||
|
||||
@@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/email_rules/email_rules_view.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/extensions/vacation_response_extension.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/extensions/validate_setting_capability_supported_extension.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/forward/forward_view.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/identities/identities_view.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/language_and_region/language_and_region_view.dart';
|
||||
@@ -13,6 +14,7 @@ import 'package:tmail_ui_user/features/manage_account/presentation/model/account
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/model/settings_page_level.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/notification/notification_view.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/preferences/preferences_view.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/storage/storage_view.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/vacation/vacation_view.dart';
|
||||
import 'package:tmail_ui_user/features/manage_account/presentation/vacation/widgets/vacation_notification_message_widget.dart';
|
||||
|
||||
@@ -137,6 +139,12 @@ class SettingsView extends GetWidget<SettingsController> {
|
||||
return MailboxVisibilityView();
|
||||
case AccountMenuItem.notification:
|
||||
return const NotificationView();
|
||||
case AccountMenuItem.storage:
|
||||
if (controller.manageAccountDashboardController.isStorageCapabilitySupported) {
|
||||
return const StorageView();
|
||||
} else {
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
default:
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user