TF-3758 Update text style for folder item
Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
@@ -254,6 +254,8 @@ extension AppColor on Color {
|
|||||||
static const blackAlpha40 = Color.fromRGBO(0, 0, 0, 0.4);
|
static const blackAlpha40 = Color.fromRGBO(0, 0, 0, 0.4);
|
||||||
static const blackAlpha20 = Color.fromRGBO(0, 0, 0, 0.2);
|
static const blackAlpha20 = Color.fromRGBO(0, 0, 0, 0.2);
|
||||||
static const textPrimary = Color(0xFF424244);
|
static const textPrimary = Color(0xFF424244);
|
||||||
|
static const iconFolder = Color(0xFF297EF2);
|
||||||
|
static const folderDivider = Color(0xFFE4E8EC);
|
||||||
|
|
||||||
static const mapGradientColor = [
|
static const mapGradientColor = [
|
||||||
[Color(0xFF21D4FD), Color(0xFFB721FF)],
|
[Color(0xFF21D4FD), Color(0xFFB721FF)],
|
||||||
|
|||||||
@@ -222,7 +222,25 @@ class ThemeUtils {
|
|||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
fontSize: fontSize ?? 15,
|
fontSize: fontSize ?? 15,
|
||||||
height: 20 / (fontSize ?? 15),
|
height: 20 / (fontSize ?? 15),
|
||||||
color: color,
|
color: color ?? Colors.black,
|
||||||
|
);
|
||||||
|
|
||||||
|
static TextStyle textStyleInter500() => const TextStyle(
|
||||||
|
fontFamily: ConstantsUI.fontApp,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
letterSpacing: 0.0,
|
||||||
|
fontSize: 14,
|
||||||
|
height: 18 / 14,
|
||||||
|
color: Colors.black,
|
||||||
|
);
|
||||||
|
|
||||||
|
static TextStyle textStyleInter400() => const TextStyle(
|
||||||
|
fontFamily: ConstantsUI.fontApp,
|
||||||
|
fontWeight: FontWeight.normal,
|
||||||
|
letterSpacing: 0.01,
|
||||||
|
fontSize: 13,
|
||||||
|
height: 16 / 13,
|
||||||
|
color: Colors.black,
|
||||||
);
|
);
|
||||||
|
|
||||||
static TextStyle textStyleM3LabelLarge({Color? color}) => TextStyle(
|
static TextStyle textStyleM3LabelLarge({Color? color}) => TextStyle(
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import 'package:tmail_ui_user/features/home/domain/extensions/session_extensions
|
|||||||
import 'package:tmail_ui_user/features/mailbox/presentation/base_mailbox_view.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/base_mailbox_view.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_categories.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_categories.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_node.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_node.dart';
|
||||||
|
import 'package:tmail_ui_user/features/mailbox/presentation/styles/mailbox_item_widget_styles.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/folder_widget.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/folder_widget.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/folders_bar_widget.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/folders_bar_widget.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/mailbox_category_widget.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/mailbox_category_widget.dart';
|
||||||
@@ -38,7 +39,6 @@ class MailboxView extends BaseMailboxView {
|
|||||||
child: _buildListMailbox(context),
|
child: _buildListMailbox(context),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
const Divider(color: AppColor.colorDividerHorizontal),
|
|
||||||
const QuotasView(),
|
const QuotasView(),
|
||||||
Container(
|
Container(
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
@@ -75,9 +75,10 @@ class MailboxView extends BaseMailboxView {
|
|||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
Obx(() {
|
Obx(() {
|
||||||
if (controller.mailboxDashBoardController.listSendingEmails.isNotEmpty &&
|
if (controller.mailboxDashBoardController.listSendingEmails.isNotEmpty) {
|
||||||
PlatformInfo.isMobile) {
|
|
||||||
return SendingQueueMailboxWidget(
|
return SendingQueueMailboxWidget(
|
||||||
|
imagePaths: controller.imagePaths,
|
||||||
|
responsiveUtils: controller.responsiveUtils,
|
||||||
listSendingEmails: controller.mailboxDashBoardController.listSendingEmails,
|
listSendingEmails: controller.mailboxDashBoardController.listSendingEmails,
|
||||||
onOpenSendingQueueAction: () => controller.openSendingQueueViewAction(context),
|
onOpenSendingQueueAction: () => controller.openSendingQueueViewAction(context),
|
||||||
isSelected: controller.mailboxDashBoardController.dashboardRoute.value == DashboardRoutes.sendingQueue,
|
isSelected: controller.mailboxDashBoardController.dashboardRoute.value == DashboardRoutes.sendingQueue,
|
||||||
@@ -86,13 +87,25 @@ class MailboxView extends BaseMailboxView {
|
|||||||
return const SizedBox.shrink();
|
return const SizedBox.shrink();
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
const SizedBox(height: 8),
|
Obx(() {
|
||||||
const Divider(color: AppColor.colorDividerMailbox, height: 1),
|
if (controller.defaultMailboxIsNotEmpty ||
|
||||||
|
controller.mailboxDashBoardController.listSendingEmails.isNotEmpty) {
|
||||||
|
return const Padding(
|
||||||
|
padding: EdgeInsets.only(top: 8),
|
||||||
|
child: Divider(color: AppColor.folderDivider, height: 1),
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
return const SizedBox.shrink();
|
||||||
|
}
|
||||||
|
}),
|
||||||
FoldersBarWidget(
|
FoldersBarWidget(
|
||||||
onOpenSearchFolder: () => controller.openSearchViewAction(context),
|
onOpenSearchFolder: () => controller.openSearchViewAction(context),
|
||||||
onAddNewFolder: () => controller.goToCreateNewMailboxView(context),
|
onAddNewFolder: () => controller.goToCreateNewMailboxView(context),
|
||||||
imagePaths: controller.imagePaths,
|
imagePaths: controller.imagePaths,
|
||||||
responsiveUtils: controller.responsiveUtils,
|
responsiveUtils: controller.responsiveUtils,
|
||||||
|
height: 40,
|
||||||
|
padding: const EdgeInsets.symmetric(horizontal: 24),
|
||||||
|
labelStyle: ThemeUtils.textStyleInter500(),
|
||||||
),
|
),
|
||||||
Obx(() {
|
Obx(() {
|
||||||
if (controller.personalMailboxIsNotEmpty) {
|
if (controller.personalMailboxIsNotEmpty) {
|
||||||
@@ -105,7 +118,6 @@ class MailboxView extends BaseMailboxView {
|
|||||||
return const SizedBox.shrink();
|
return const SizedBox.shrink();
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
const SizedBox(height: 8),
|
|
||||||
Obx(() {
|
Obx(() {
|
||||||
if (controller.teamMailboxesIsNotEmpty) {
|
if (controller.teamMailboxesIsNotEmpty) {
|
||||||
return _buildMailboxCategory(
|
return _buildMailboxCategory(
|
||||||
@@ -137,9 +149,10 @@ class MailboxView extends BaseMailboxView {
|
|||||||
return Column(
|
return Column(
|
||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
const SizedBox(height: 8),
|
const Padding(
|
||||||
const Divider(color: AppColor.colorDividerMailbox, height: 1),
|
padding: EdgeInsets.only(top: 8),
|
||||||
const SizedBox(height: 8),
|
child: Divider(color: AppColor.folderDivider, height: 1),
|
||||||
|
),
|
||||||
FolderWidget(
|
FolderWidget(
|
||||||
icon: controller.imagePaths.icHelp,
|
icon: controller.imagePaths.icHelp,
|
||||||
label: AppLocalizations.of(context).support,
|
label: AppLocalizations.of(context).support,
|
||||||
@@ -147,7 +160,13 @@ class MailboxView extends BaseMailboxView {
|
|||||||
.mailboxDashBoardController
|
.mailboxDashBoardController
|
||||||
.onGetHelpOrReportBug(contactSupportCapability!),
|
.onGetHelpOrReportBug(contactSupportCapability!),
|
||||||
tooltip: AppLocalizations.of(context).getHelpOrReportABug,
|
tooltip: AppLocalizations.of(context).getHelpOrReportABug,
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 16)
|
padding: const EdgeInsets.symmetric(horizontal: 12),
|
||||||
|
itemPadding: const EdgeInsets.symmetric(
|
||||||
|
horizontal: MailboxItemWidgetStyles.mobileItemPadding,
|
||||||
|
),
|
||||||
|
borderRadius: MailboxItemWidgetStyles.mobileBorderRadius,
|
||||||
|
height: MailboxItemWidgetStyles.mobileHeight,
|
||||||
|
labelTextStyle: ThemeUtils.textStyleInter500(),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
@@ -189,7 +208,7 @@ class MailboxView extends BaseMailboxView {
|
|||||||
context: context,
|
context: context,
|
||||||
categories: categories,
|
categories: categories,
|
||||||
mailboxNode: mailboxNode,
|
mailboxNode: mailboxNode,
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
padding: const EdgeInsets.symmetric(horizontal: 12),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return Column(children: [
|
return Column(children: [
|
||||||
@@ -206,10 +225,10 @@ class MailboxView extends BaseMailboxView {
|
|||||||
),
|
),
|
||||||
isArrangeLTR: false,
|
isArrangeLTR: false,
|
||||||
showIcon: true,
|
showIcon: true,
|
||||||
padding: const EdgeInsetsDirectional.only(
|
padding: const EdgeInsets.symmetric(horizontal: 24),
|
||||||
start: 26,
|
height: 40,
|
||||||
end: 16,
|
iconSpace: MailboxItemWidgetStyles.mobileLabelIconSpace,
|
||||||
),
|
labelTextStyle: ThemeUtils.textStyleInter500(),
|
||||||
)),
|
)),
|
||||||
AnimatedContainer(
|
AnimatedContainer(
|
||||||
duration: const Duration(milliseconds: 400),
|
duration: const Duration(milliseconds: 400),
|
||||||
@@ -219,8 +238,8 @@ class MailboxView extends BaseMailboxView {
|
|||||||
categories: categories,
|
categories: categories,
|
||||||
mailboxNode: mailboxNode,
|
mailboxNode: mailboxNode,
|
||||||
padding: const EdgeInsetsDirectional.only(
|
padding: const EdgeInsetsDirectional.only(
|
||||||
start: 30,
|
start: 24,
|
||||||
end: 16,
|
end: 12,
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
: const Offstage())
|
: const Offstage())
|
||||||
@@ -235,7 +254,7 @@ class MailboxView extends BaseMailboxView {
|
|||||||
context,
|
context,
|
||||||
key: const Key('children_tree_mailbox_child'),
|
key: const Key('children_tree_mailbox_child'),
|
||||||
isExpanded: mailboxNode.expandMode == ExpandMode.EXPAND,
|
isExpanded: mailboxNode.expandMode == ExpandMode.EXPAND,
|
||||||
paddingChild: const EdgeInsetsDirectional.only(start: 14),
|
paddingChild: const EdgeInsetsDirectional.only(start: 12),
|
||||||
parent: Obx(() => MailboxItemWidget(
|
parent: Obx(() => MailboxItemWidget(
|
||||||
mailboxNode: mailboxNode,
|
mailboxNode: mailboxNode,
|
||||||
mailboxNodeSelected: controller.mailboxDashBoardController.selectedMailbox.value,
|
mailboxNodeSelected: controller.mailboxDashBoardController.selectedMailbox.value,
|
||||||
|
|||||||
@@ -2,8 +2,12 @@
|
|||||||
class MailboxItemWidgetStyles {
|
class MailboxItemWidgetStyles {
|
||||||
static const double selectionIconSize = 20;
|
static const double selectionIconSize = 20;
|
||||||
static const double itemPadding = 10;
|
static const double itemPadding = 10;
|
||||||
|
static const double mobileItemPadding = 12;
|
||||||
static const double borderRadius = 8;
|
static const double borderRadius = 8;
|
||||||
|
static const double mobileBorderRadius = 10;
|
||||||
static const double height = 36;
|
static const double height = 36;
|
||||||
|
static const double mobileHeight = 40;
|
||||||
static const double teamMailboxHeight = 52;
|
static const double teamMailboxHeight = 52;
|
||||||
static const double labelIconSpace = 16;
|
static const double labelIconSpace = 16;
|
||||||
|
static const double mobileLabelIconSpace = 8;
|
||||||
}
|
}
|
||||||
@@ -7,6 +7,8 @@ class TrailingMailboxItemWidgetStyles {
|
|||||||
static const Color menuIconBackgroundColor = Colors.transparent;
|
static const Color menuIconBackgroundColor = Colors.transparent;
|
||||||
|
|
||||||
static const EdgeInsetsGeometry countEmailsPadding = EdgeInsetsDirectional.only(start: 5);
|
static const EdgeInsetsGeometry countEmailsPadding = EdgeInsetsDirectional.only(start: 5);
|
||||||
|
static const EdgeInsetsGeometry mobileCountEmailsPadding =
|
||||||
|
EdgeInsetsDirectional.only(start: 8);
|
||||||
static const EdgeInsetsGeometry menuIconMargin = EdgeInsetsDirectional.only(start: 5);
|
static const EdgeInsetsGeometry menuIconMargin = EdgeInsetsDirectional.only(start: 5);
|
||||||
static const EdgeInsetsGeometry menuIconPadding = EdgeInsetsDirectional.all(2);
|
static const EdgeInsetsGeometry menuIconPadding = EdgeInsetsDirectional.all(2);
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
|
|
||||||
import 'package:core/presentation/utils/style_utils.dart';
|
import 'package:core/presentation/utils/theme_utils.dart';
|
||||||
|
import 'package:core/utils/platform_info.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
class CountOfEmailsWidget extends StatelessWidget {
|
class CountOfEmailsWidget extends StatelessWidget {
|
||||||
@@ -13,11 +14,12 @@ class CountOfEmailsWidget extends StatelessWidget {
|
|||||||
return Text(
|
return Text(
|
||||||
value,
|
value,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: TextOverflow.ellipsis,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
style: PlatformInfo.isMobile
|
||||||
style: Theme.of(context).textTheme.bodySmall?.copyWith(
|
? ThemeUtils.textStyleInter400()
|
||||||
color: Colors.black,
|
: Theme.of(context).textTheme.bodyMedium?.copyWith(
|
||||||
),
|
color: Colors.black,
|
||||||
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,9 +2,8 @@ import 'package:core/presentation/extensions/color_extension.dart';
|
|||||||
import 'package:core/presentation/utils/theme_utils.dart';
|
import 'package:core/presentation/utils/theme_utils.dart';
|
||||||
import 'package:core/presentation/views/text/text_overflow_builder.dart';
|
import 'package:core/presentation/views/text/text_overflow_builder.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_svg/flutter_svg.dart';
|
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/styles/mailbox_icon_widget_styles.dart';
|
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/styles/mailbox_item_widget_styles.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/styles/mailbox_item_widget_styles.dart';
|
||||||
|
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/mailbox_icon_widget.dart';
|
||||||
|
|
||||||
class FolderWidget extends StatelessWidget {
|
class FolderWidget extends StatelessWidget {
|
||||||
final String icon;
|
final String icon;
|
||||||
@@ -12,6 +11,10 @@ class FolderWidget extends StatelessWidget {
|
|||||||
final VoidCallback onOpenFolderAction;
|
final VoidCallback onOpenFolderAction;
|
||||||
final String? tooltip;
|
final String? tooltip;
|
||||||
final EdgeInsetsGeometry? padding;
|
final EdgeInsetsGeometry? padding;
|
||||||
|
final EdgeInsetsGeometry? itemPadding;
|
||||||
|
final double? borderRadius;
|
||||||
|
final double? height;
|
||||||
|
final TextStyle? labelTextStyle;
|
||||||
|
|
||||||
const FolderWidget({
|
const FolderWidget({
|
||||||
super.key,
|
super.key,
|
||||||
@@ -20,35 +23,36 @@ class FolderWidget extends StatelessWidget {
|
|||||||
required this.onOpenFolderAction,
|
required this.onOpenFolderAction,
|
||||||
this.tooltip,
|
this.tooltip,
|
||||||
this.padding,
|
this.padding,
|
||||||
|
this.itemPadding,
|
||||||
|
this.borderRadius,
|
||||||
|
this.height,
|
||||||
|
this.labelTextStyle,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
Widget item = Container(
|
Widget item = Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
borderRadius: BorderRadius.all(
|
borderRadius: BorderRadius.all(
|
||||||
Radius.circular(MailboxItemWidgetStyles.borderRadius),
|
Radius.circular(borderRadius ?? MailboxItemWidgetStyles.borderRadius),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
padding: const EdgeInsets.symmetric(
|
padding: itemPadding ?? const EdgeInsets.symmetric(
|
||||||
horizontal: MailboxItemWidgetStyles.itemPadding,
|
horizontal: MailboxItemWidgetStyles.itemPadding,
|
||||||
),
|
),
|
||||||
height: MailboxItemWidgetStyles.height,
|
height: height ?? MailboxItemWidgetStyles.height,
|
||||||
child: Row(children: [
|
child: Row(children: [
|
||||||
SvgPicture.asset(
|
MailboxIconWidget(
|
||||||
icon,
|
icon: icon,
|
||||||
width: MailboxIconWidgetStyles.iconSize,
|
padding: const EdgeInsetsDirectional.only(
|
||||||
height: MailboxIconWidgetStyles.iconSize,
|
end: MailboxItemWidgetStyles.mobileLabelIconSpace,
|
||||||
fit: BoxFit.fill,
|
),
|
||||||
|
color: AppColor.iconFolder,
|
||||||
),
|
),
|
||||||
const SizedBox(width: MailboxItemWidgetStyles.labelIconSpace),
|
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Padding(
|
child: TextOverflowBuilder(
|
||||||
padding: const EdgeInsets.symmetric(vertical: 3),
|
label,
|
||||||
child: TextOverflowBuilder(
|
style: labelTextStyle ?? ThemeUtils.textStyleBodyBody3(color: Colors.black),
|
||||||
label,
|
|
||||||
style: ThemeUtils.textStyleBodyBody3(color: Colors.black),
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
]),
|
]),
|
||||||
@@ -65,8 +69,8 @@ class FolderWidget extends StatelessWidget {
|
|||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
child: InkWell(
|
child: InkWell(
|
||||||
onTap: onOpenFolderAction,
|
onTap: onOpenFolderAction,
|
||||||
borderRadius: const BorderRadius.all(
|
borderRadius: BorderRadius.all(
|
||||||
Radius.circular(MailboxItemWidgetStyles.borderRadius),
|
Radius.circular(borderRadius ?? MailboxItemWidgetStyles.borderRadius),
|
||||||
),
|
),
|
||||||
hoverColor: AppColor.blue100,
|
hoverColor: AppColor.blue100,
|
||||||
child: item,
|
child: item,
|
||||||
|
|||||||
@@ -11,6 +11,9 @@ class FoldersBarWidget extends StatelessWidget {
|
|||||||
final VoidCallback onAddNewFolder;
|
final VoidCallback onAddNewFolder;
|
||||||
final ImagePaths imagePaths;
|
final ImagePaths imagePaths;
|
||||||
final ResponsiveUtils responsiveUtils;
|
final ResponsiveUtils responsiveUtils;
|
||||||
|
final double? height;
|
||||||
|
final EdgeInsetsGeometry? padding;
|
||||||
|
final TextStyle? labelStyle;
|
||||||
|
|
||||||
const FoldersBarWidget({
|
const FoldersBarWidget({
|
||||||
super.key,
|
super.key,
|
||||||
@@ -18,6 +21,9 @@ class FoldersBarWidget extends StatelessWidget {
|
|||||||
required this.onAddNewFolder,
|
required this.onAddNewFolder,
|
||||||
required this.imagePaths,
|
required this.imagePaths,
|
||||||
required this.responsiveUtils,
|
required this.responsiveUtils,
|
||||||
|
this.height,
|
||||||
|
this.padding,
|
||||||
|
this.labelStyle,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -56,17 +62,19 @@ class FoldersBarWidget extends StatelessWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return Container(
|
return Container(
|
||||||
padding: EdgeInsetsDirectional.only(
|
padding: padding ?? EdgeInsetsDirectional.only(
|
||||||
start: responsiveUtils.isWebDesktop(context) ? 10 : 26,
|
start: responsiveUtils.isWebDesktop(context) ? 10 : 26,
|
||||||
end: responsiveUtils.isWebDesktop(context) ? 0 : 8,
|
end: responsiveUtils.isWebDesktop(context) ? 0 : 8,
|
||||||
),
|
),
|
||||||
height: 48,
|
height: height ?? 48,
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Text(
|
child: Text(
|
||||||
AppLocalizations.of(context).folders,
|
AppLocalizations.of(context).folders,
|
||||||
style: ThemeUtils.textStyleInter700(color: Colors.black),
|
style: labelStyle ?? ThemeUtils.textStyleInter700(),
|
||||||
|
maxLines: 1,
|
||||||
|
overflow: TextOverflow.ellipsis,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
Row(children: [searchBarIcon, newFolderIcon]),
|
Row(children: [searchBarIcon, newFolderIcon]),
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
|
import 'package:core/presentation/extensions/color_extension.dart';
|
||||||
import 'package:core/presentation/resources/image_paths.dart';
|
import 'package:core/presentation/resources/image_paths.dart';
|
||||||
import 'package:core/presentation/utils/responsive_utils.dart';
|
import 'package:core/presentation/utils/responsive_utils.dart';
|
||||||
import 'package:core/presentation/utils/theme_utils.dart';
|
import 'package:core/presentation/utils/theme_utils.dart';
|
||||||
import 'package:core/presentation/views/text/text_overflow_builder.dart';
|
import 'package:core/presentation/views/text/text_overflow_builder.dart';
|
||||||
|
import 'package:core/utils/platform_info.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:model/extensions/presentation_mailbox_extension.dart';
|
import 'package:model/extensions/presentation_mailbox_extension.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/extensions/presentation_mailbox_extension.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/extensions/presentation_mailbox_extension.dart';
|
||||||
@@ -51,9 +53,7 @@ class _LabelMailboxItemWidgetState extends State<LabelMailboxItemWidget> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final displayNameWidget = TextOverflowBuilder(
|
final displayNameWidget = TextOverflowBuilder(
|
||||||
widget.mailboxNode.item.getDisplayName(context),
|
widget.mailboxNode.item.getDisplayName(context),
|
||||||
style: widget.isSelected
|
style: _displayNameTextStyle,
|
||||||
? ThemeUtils.textStyleInter700(color: Colors.black, fontSize: 14)
|
|
||||||
: ThemeUtils.textStyleBodyBody3(color: Colors.black),
|
|
||||||
);
|
);
|
||||||
|
|
||||||
final nameWithExpandIcon = Row(
|
final nameWithExpandIcon = Row(
|
||||||
@@ -159,4 +159,17 @@ class _LabelMailboxItemWidgetState extends State<LabelMailboxItemWidget> {
|
|||||||
return widget.responsiveUtils.isWebDesktop(context) &&
|
return widget.responsiveUtils.isWebDesktop(context) &&
|
||||||
widget.mailboxNode.item.allowedHasEmptyAction;
|
widget.mailboxNode.item.allowedHasEmptyAction;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TextStyle get _displayNameTextStyle {
|
||||||
|
if (isSelected) {
|
||||||
|
return ThemeUtils.textStyleInter700(
|
||||||
|
color: PlatformInfo.isMobile ? AppColor.iconFolder : null,
|
||||||
|
fontSize: 14,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
return PlatformInfo.isMobile
|
||||||
|
? ThemeUtils.textStyleInter500()
|
||||||
|
: ThemeUtils.textStyleBodyBody3(color: Colors.black);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -2,6 +2,7 @@ import 'package:core/presentation/resources/image_paths.dart';
|
|||||||
import 'package:core/presentation/utils/theme_utils.dart';
|
import 'package:core/presentation/utils/theme_utils.dart';
|
||||||
import 'package:core/presentation/views/button/tmail_button_widget.dart';
|
import 'package:core/presentation/views/button/tmail_button_widget.dart';
|
||||||
import 'package:core/utils/direction_utils.dart';
|
import 'package:core/utils/direction_utils.dart';
|
||||||
|
import 'package:core/utils/platform_info.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_svg/flutter_svg.dart';
|
import 'package:flutter_svg/flutter_svg.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
@@ -21,6 +22,9 @@ class MailboxCategoryWidget extends StatefulWidget {
|
|||||||
final bool isArrangeLTR;
|
final bool isArrangeLTR;
|
||||||
final bool showIcon;
|
final bool showIcon;
|
||||||
final EdgeInsetsGeometry? padding;
|
final EdgeInsetsGeometry? padding;
|
||||||
|
final double? height;
|
||||||
|
final double? iconSpace;
|
||||||
|
final TextStyle? labelTextStyle;
|
||||||
|
|
||||||
const MailboxCategoryWidget({
|
const MailboxCategoryWidget({
|
||||||
super.key,
|
super.key,
|
||||||
@@ -30,6 +34,9 @@ class MailboxCategoryWidget extends StatefulWidget {
|
|||||||
this.isArrangeLTR = true,
|
this.isArrangeLTR = true,
|
||||||
this.showIcon = false,
|
this.showIcon = false,
|
||||||
this.padding,
|
this.padding,
|
||||||
|
this.height,
|
||||||
|
this.iconSpace,
|
||||||
|
this.labelTextStyle,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -55,7 +62,7 @@ class _MailboxCategoryWidgetState extends State<MailboxCategoryWidget> {
|
|||||||
height: MailboxIconWidgetStyles.iconSize,
|
height: MailboxIconWidgetStyles.iconSize,
|
||||||
fit: BoxFit.fill,
|
fit: BoxFit.fill,
|
||||||
),
|
),
|
||||||
const SizedBox(width: MailboxItemWidgetStyles.labelIconSpace),
|
SizedBox(width: widget.iconSpace ?? MailboxItemWidgetStyles.labelIconSpace),
|
||||||
],
|
],
|
||||||
if (!widget.isArrangeLTR)
|
if (!widget.isArrangeLTR)
|
||||||
Flexible(
|
Flexible(
|
||||||
@@ -63,7 +70,7 @@ class _MailboxCategoryWidgetState extends State<MailboxCategoryWidget> {
|
|||||||
widget.categories.getTitle(context),
|
widget.categories.getTitle(context),
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
style: ThemeUtils.textStyleBodyBody3(color: Colors.black),
|
style: widget.labelTextStyle ?? ThemeUtils.textStyleBodyBody3(color: Colors.black),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
TMailButtonWidget.fromIcon(
|
TMailButtonWidget.fromIcon(
|
||||||
@@ -72,9 +79,12 @@ class _MailboxCategoryWidgetState extends State<MailboxCategoryWidget> {
|
|||||||
DirectionUtils.isDirectionRTLByLanguage(context),
|
DirectionUtils.isDirectionRTLByLanguage(context),
|
||||||
),
|
),
|
||||||
iconColor: Colors.black,
|
iconColor: Colors.black,
|
||||||
iconSize: 20,
|
iconSize: PlatformInfo.isMobile ? 17 : 20,
|
||||||
backgroundColor: Colors.transparent,
|
backgroundColor: Colors.transparent,
|
||||||
padding: const EdgeInsets.all(5),
|
margin: PlatformInfo.isMobile
|
||||||
|
? const EdgeInsetsDirectional.only(start: 8)
|
||||||
|
: null,
|
||||||
|
padding: EdgeInsets.all(PlatformInfo.isMobile ? 3 : 5),
|
||||||
tooltipMessage: widget.expandMode.getTooltipMessage(AppLocalizations.of(context)),
|
tooltipMessage: widget.expandMode.getTooltipMessage(AppLocalizations.of(context)),
|
||||||
onTapActionCallback: () =>
|
onTapActionCallback: () =>
|
||||||
widget.onToggleMailboxCategories(widget.categories, _key)),
|
widget.onToggleMailboxCategories(widget.categories, _key)),
|
||||||
@@ -84,13 +94,19 @@ class _MailboxCategoryWidgetState extends State<MailboxCategoryWidget> {
|
|||||||
widget.categories.getTitle(context),
|
widget.categories.getTitle(context),
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
style: ThemeUtils.textStyleBodyBody3(color: Colors.black),
|
style: widget.labelTextStyle ?? ThemeUtils.textStyleBodyBody3(color: Colors.black),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
|
|
||||||
if (widget.padding != null) {
|
if (widget.padding != null && widget.height != null) {
|
||||||
|
return Container(
|
||||||
|
padding: widget.padding!,
|
||||||
|
height: widget.height!,
|
||||||
|
child: item,
|
||||||
|
);
|
||||||
|
} else if (widget.padding != null) {
|
||||||
return Padding(padding: widget.padding!, child: item);
|
return Padding(padding: widget.padding!, child: item);
|
||||||
} else {
|
} else {
|
||||||
return item;
|
return item;
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ import 'package:core/presentation/extensions/color_extension.dart';
|
|||||||
import 'package:core/presentation/resources/image_paths.dart';
|
import 'package:core/presentation/resources/image_paths.dart';
|
||||||
import 'package:core/presentation/views/button/tmail_button_widget.dart';
|
import 'package:core/presentation/views/button/tmail_button_widget.dart';
|
||||||
import 'package:core/utils/direction_utils.dart';
|
import 'package:core/utils/direction_utils.dart';
|
||||||
|
import 'package:core/utils/platform_info.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:model/extensions/presentation_mailbox_extension.dart';
|
import 'package:model/extensions/presentation_mailbox_extension.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/extensions/expand_mode_extension.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/extensions/expand_mode_extension.dart';
|
||||||
@@ -31,8 +32,11 @@ class MailboxExpandButton extends StatelessWidget {
|
|||||||
DirectionUtils.isDirectionRTLByLanguage(context),
|
DirectionUtils.isDirectionRTLByLanguage(context),
|
||||||
),
|
),
|
||||||
iconColor: _expandIconColor,
|
iconColor: _expandIconColor,
|
||||||
iconSize: 20,
|
iconSize: PlatformInfo.isMobile ? 17 : 20,
|
||||||
padding: const EdgeInsets.all(5),
|
margin: PlatformInfo.isMobile
|
||||||
|
? const EdgeInsetsDirectional.only(start: 8)
|
||||||
|
: null,
|
||||||
|
padding: EdgeInsets.all(PlatformInfo.isMobile ? 3 : 5),
|
||||||
backgroundColor: Colors.transparent,
|
backgroundColor: Colors.transparent,
|
||||||
tooltipMessage: mailboxNode.expandMode.getTooltipMessage(AppLocalizations.of(context)),
|
tooltipMessage: mailboxNode.expandMode.getTooltipMessage(AppLocalizations.of(context)),
|
||||||
onTapActionCallback: () => onExpandFolderActionClick?.call(mailboxNode, itemKey),
|
onTapActionCallback: () => onExpandFolderActionClick?.call(mailboxNode, itemKey),
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import 'package:core/presentation/extensions/color_extension.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_svg/flutter_svg.dart';
|
import 'package:flutter_svg/flutter_svg.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/presentation/styles/mailbox_icon_widget_styles.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/styles/mailbox_icon_widget_styles.dart';
|
||||||
@@ -5,19 +6,27 @@ import 'package:tmail_ui_user/features/mailbox/presentation/styles/mailbox_item_
|
|||||||
|
|
||||||
class MailboxIconWidget extends StatelessWidget {
|
class MailboxIconWidget extends StatelessWidget {
|
||||||
final String icon;
|
final String icon;
|
||||||
|
final EdgeInsetsGeometry? padding;
|
||||||
|
final Color? color;
|
||||||
|
|
||||||
const MailboxIconWidget({super.key, required this.icon});
|
const MailboxIconWidget({
|
||||||
|
super.key,
|
||||||
|
required this.icon,
|
||||||
|
this.padding,
|
||||||
|
this.color,
|
||||||
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: const EdgeInsetsDirectional.only(
|
padding: padding ?? const EdgeInsetsDirectional.only(
|
||||||
end: MailboxItemWidgetStyles.labelIconSpace,
|
end: MailboxItemWidgetStyles.labelIconSpace,
|
||||||
),
|
),
|
||||||
child: SvgPicture.asset(
|
child: SvgPicture.asset(
|
||||||
icon,
|
icon,
|
||||||
width: MailboxIconWidgetStyles.iconSize,
|
width: MailboxIconWidgetStyles.iconSize,
|
||||||
height: MailboxIconWidgetStyles.iconSize,
|
height: MailboxIconWidgetStyles.iconSize,
|
||||||
|
colorFilter: color?.asFilter(),
|
||||||
fit: BoxFit.fill,
|
fit: BoxFit.fill,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -156,22 +156,32 @@ class _MailboxItemWidgetState extends State<MailboxItemWidget> {
|
|||||||
child: InkWell(
|
child: InkWell(
|
||||||
onLongPress: () => widget.onLongPressMailboxNodeAction?.call(widget.mailboxNode),
|
onLongPress: () => widget.onLongPressMailboxNodeAction?.call(widget.mailboxNode),
|
||||||
onTap: () => widget.onOpenMailboxFolderClick?.call(widget.mailboxNode),
|
onTap: () => widget.onOpenMailboxFolderClick?.call(widget.mailboxNode),
|
||||||
borderRadius: const BorderRadius.all(Radius.circular(MailboxItemWidgetStyles.borderRadius)),
|
borderRadius: const BorderRadius.all(
|
||||||
|
Radius.circular(MailboxItemWidgetStyles.mobileBorderRadius),
|
||||||
|
),
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
borderRadius: const BorderRadius.all(Radius.circular(MailboxItemWidgetStyles.borderRadius)),
|
borderRadius: const BorderRadius.all(
|
||||||
|
Radius.circular(MailboxItemWidgetStyles.mobileBorderRadius),
|
||||||
|
),
|
||||||
color: backgroundColorItem
|
color: backgroundColorItem
|
||||||
),
|
),
|
||||||
padding: const EdgeInsetsDirectional.symmetric(
|
padding: const EdgeInsetsDirectional.symmetric(
|
||||||
horizontal: MailboxItemWidgetStyles.itemPadding,
|
horizontal: MailboxItemWidgetStyles.mobileItemPadding,
|
||||||
),
|
),
|
||||||
height: widget.mailboxNode.item.isTeamMailboxes
|
height: widget.mailboxNode.item.isTeamMailboxes
|
||||||
? MailboxItemWidgetStyles.teamMailboxHeight
|
? MailboxItemWidgetStyles.teamMailboxHeight
|
||||||
: MailboxItemWidgetStyles.height,
|
: MailboxItemWidgetStyles.mobileHeight,
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
if (_isIconDisplayed)
|
if (_isIconDisplayed)
|
||||||
MailboxIconWidget(icon: _iconMailbox),
|
MailboxIconWidget(
|
||||||
|
icon: _iconMailbox,
|
||||||
|
padding: const EdgeInsetsDirectional.only(
|
||||||
|
end: MailboxItemWidgetStyles.mobileLabelIconSpace,
|
||||||
|
),
|
||||||
|
color: AppColor.iconFolder,
|
||||||
|
),
|
||||||
Expanded(
|
Expanded(
|
||||||
child: LabelMailboxItemWidget(
|
child: LabelMailboxItemWidget(
|
||||||
itemKey: _key,
|
itemKey: _key,
|
||||||
@@ -183,15 +193,8 @@ class _MailboxItemWidgetState extends State<MailboxItemWidget> {
|
|||||||
onMenuActionClick: widget.onMenuActionClick,
|
onMenuActionClick: widget.onMenuActionClick,
|
||||||
onEmptyMailboxActionCallback: widget.onEmptyMailboxActionCallback,
|
onEmptyMailboxActionCallback: widget.onEmptyMailboxActionCallback,
|
||||||
onClickExpandMailboxNodeAction: widget.onExpandFolderActionClick,
|
onClickExpandMailboxNodeAction: widget.onExpandFolderActionClick,
|
||||||
)
|
),
|
||||||
),
|
),
|
||||||
if (_isSelectActionNoValid)
|
|
||||||
SvgPicture.asset(
|
|
||||||
_imagePaths.icSelectedSB,
|
|
||||||
width: MailboxItemWidgetStyles.selectionIconSize,
|
|
||||||
height: MailboxItemWidgetStyles.selectionIconSize,
|
|
||||||
fit: BoxFit.fill
|
|
||||||
)
|
|
||||||
]
|
]
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
import 'package:core/presentation/extensions/color_extension.dart';
|
import 'package:core/presentation/extensions/color_extension.dart';
|
||||||
import 'package:core/presentation/resources/image_paths.dart';
|
import 'package:core/presentation/resources/image_paths.dart';
|
||||||
import 'package:core/presentation/utils/responsive_utils.dart';
|
import 'package:core/presentation/utils/responsive_utils.dart';
|
||||||
|
import 'package:core/presentation/utils/theme_utils.dart';
|
||||||
import 'package:core/presentation/views/text/text_overflow_builder.dart';
|
import 'package:core/presentation/views/text/text_overflow_builder.dart';
|
||||||
import 'package:core/utils/platform_info.dart';
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_svg/flutter_svg.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/styles/mailbox_item_widget_styles.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:tmail_ui_user/features/mailbox/presentation/styles/trailing_mailbox_item_widget_styles.dart';
|
||||||
|
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/count_of_emails_widget.dart';
|
||||||
|
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/mailbox_icon_widget.dart';
|
||||||
import 'package:tmail_ui_user/features/sending_queue/domain/model/sending_email.dart';
|
import 'package:tmail_ui_user/features/sending_queue/domain/model/sending_email.dart';
|
||||||
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
||||||
|
|
||||||
@@ -13,73 +15,59 @@ class SendingQueueMailboxWidget extends StatelessWidget {
|
|||||||
|
|
||||||
final List<SendingEmail> listSendingEmails;
|
final List<SendingEmail> listSendingEmails;
|
||||||
final bool isSelected;
|
final bool isSelected;
|
||||||
|
final ImagePaths imagePaths;
|
||||||
|
final ResponsiveUtils responsiveUtils;
|
||||||
final VoidCallback? onOpenSendingQueueAction;
|
final VoidCallback? onOpenSendingQueueAction;
|
||||||
|
|
||||||
const SendingQueueMailboxWidget({
|
const SendingQueueMailboxWidget({
|
||||||
super.key,
|
super.key,
|
||||||
required this.listSendingEmails,
|
required this.listSendingEmails,
|
||||||
|
required this.imagePaths,
|
||||||
|
required this.responsiveUtils,
|
||||||
this.isSelected = false,
|
this.isSelected = false,
|
||||||
this.onOpenSendingQueueAction
|
this.onOpenSendingQueueAction
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final imagePath = Get.find<ImagePaths>();
|
|
||||||
final responsiveUtils = Get.find<ResponsiveUtils>();
|
|
||||||
|
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: const EdgeInsets.only(left: 20, right: 16),
|
padding: const EdgeInsetsDirectional.symmetric(horizontal: 12),
|
||||||
child: Material(
|
child: Material(
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
child: InkWell(
|
child: InkWell(
|
||||||
onTap: onOpenSendingQueueAction,
|
onTap: onOpenSendingQueueAction,
|
||||||
borderRadius: const BorderRadius.all(Radius.circular(8)),
|
borderRadius: const BorderRadius.all(
|
||||||
|
Radius.circular(MailboxItemWidgetStyles.mobileBorderRadius),
|
||||||
|
),
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
borderRadius: BorderRadius.circular(8),
|
borderRadius: const BorderRadius.all(
|
||||||
color: isSelected ? AppColor.colorBgMailboxSelected : Colors.transparent),
|
Radius.circular(MailboxItemWidgetStyles.mobileBorderRadius),
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 12),
|
),
|
||||||
child: Column(
|
color: backgroundColorItem,
|
||||||
mainAxisSize: MainAxisSize.min,
|
),
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
padding: const EdgeInsetsDirectional.symmetric(
|
||||||
|
horizontal: MailboxItemWidgetStyles.mobileItemPadding,
|
||||||
|
),
|
||||||
|
height: MailboxItemWidgetStyles.mobileHeight,
|
||||||
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
Row(
|
MailboxIconWidget(
|
||||||
crossAxisAlignment: CrossAxisAlignment.center,
|
icon: imagePaths.icMailboxSendingQueue,
|
||||||
children: [
|
padding: const EdgeInsetsDirectional.only(
|
||||||
SizedBox(width: responsiveUtils.isLandscapeMobile(context) ? 20 : 28),
|
end: MailboxItemWidgetStyles.mobileLabelIconSpace,
|
||||||
SvgPicture.asset(
|
),
|
||||||
imagePath.icMailboxSendingQueue,
|
color: AppColor.iconFolder,
|
||||||
width: PlatformInfo.isWeb ? 20 : 24,
|
),
|
||||||
height: PlatformInfo.isWeb ? 20 : 24,
|
Expanded(
|
||||||
colorFilter: AppColor.primaryColor.asFilter(),
|
child: TextOverflowBuilder(
|
||||||
fit: BoxFit.fill),
|
AppLocalizations.of(context).sendingQueue,
|
||||||
const SizedBox(width: 12),
|
style: _displayNameTextStyle,
|
||||||
Expanded(child: Row(
|
),
|
||||||
crossAxisAlignment: CrossAxisAlignment.end,
|
),
|
||||||
children: [
|
Padding(
|
||||||
Expanded(
|
padding: TrailingMailboxItemWidgetStyles.mobileCountEmailsPadding,
|
||||||
child: TextOverflowBuilder(
|
child: CountOfEmailsWidget(value: _getCountSendingEmails()),
|
||||||
AppLocalizations.of(context).sendingQueue,
|
|
||||||
style: const TextStyle(
|
|
||||||
fontSize: 15,
|
|
||||||
color: AppColor.colorNameEmail,
|
|
||||||
fontWeight: FontWeight.normal),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
Padding(
|
|
||||||
padding: const EdgeInsetsDirectional.only(start: 12),
|
|
||||||
child: TextOverflowBuilder(
|
|
||||||
_getCountSendingEmails(),
|
|
||||||
style: const TextStyle(
|
|
||||||
fontSize: 13,
|
|
||||||
color: Colors.black,
|
|
||||||
fontWeight: FontWeight.normal
|
|
||||||
)
|
|
||||||
),
|
|
||||||
)
|
|
||||||
],
|
|
||||||
))
|
|
||||||
]
|
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
),
|
),
|
||||||
@@ -89,10 +77,29 @@ class SendingQueueMailboxWidget extends StatelessWidget {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Color get backgroundColorItem {
|
||||||
|
if (isSelected) {
|
||||||
|
return AppColor.blue100;
|
||||||
|
} else {
|
||||||
|
return Colors.transparent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
String _getCountSendingEmails() {
|
String _getCountSendingEmails() {
|
||||||
if (listSendingEmails.isEmpty) {
|
if (listSendingEmails.isEmpty) {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
return listSendingEmails.length <= 999 ? '${listSendingEmails.length}' : '999+';
|
return listSendingEmails.length <= 999 ? '${listSendingEmails.length}' : '999+';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TextStyle get _displayNameTextStyle {
|
||||||
|
if (isSelected) {
|
||||||
|
return ThemeUtils.textStyleInter700(
|
||||||
|
color: AppColor.iconFolder,
|
||||||
|
fontSize: 14,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
return ThemeUtils.textStyleInter500();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -45,12 +45,16 @@ class TrailingMailboxItemWidget extends StatelessWidget {
|
|||||||
return const SizedBox();
|
return const SizedBox();
|
||||||
} else if (mailboxNode.item.allowedToDisplayCountOfUnreadEmails) {
|
} else if (mailboxNode.item.allowedToDisplayCountOfUnreadEmails) {
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: TrailingMailboxItemWidgetStyles.countEmailsPadding,
|
padding: PlatformInfo.isMobile
|
||||||
|
? TrailingMailboxItemWidgetStyles.mobileCountEmailsPadding
|
||||||
|
: TrailingMailboxItemWidgetStyles.countEmailsPadding,
|
||||||
child: CountOfEmailsWidget(value: mailboxNode.item.countUnReadEmailsAsString),
|
child: CountOfEmailsWidget(value: mailboxNode.item.countUnReadEmailsAsString),
|
||||||
);
|
);
|
||||||
} else if (mailboxNode.item.allowedToDisplayCountOfTotalEmails) {
|
} else if (mailboxNode.item.allowedToDisplayCountOfTotalEmails) {
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: TrailingMailboxItemWidgetStyles.countEmailsPadding,
|
padding: PlatformInfo.isMobile
|
||||||
|
? TrailingMailboxItemWidgetStyles.mobileCountEmailsPadding
|
||||||
|
: TrailingMailboxItemWidgetStyles.countEmailsPadding,
|
||||||
child: CountOfEmailsWidget(value: mailboxNode.item.countTotalEmailsAsString),
|
child: CountOfEmailsWidget(value: mailboxNode.item.countTotalEmailsAsString),
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
@@ -59,12 +63,16 @@ class TrailingMailboxItemWidget extends StatelessWidget {
|
|||||||
} else {
|
} else {
|
||||||
if (mailboxNode.item.allowedToDisplayCountOfUnreadEmails) {
|
if (mailboxNode.item.allowedToDisplayCountOfUnreadEmails) {
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: TrailingMailboxItemWidgetStyles.countEmailsPadding,
|
padding: PlatformInfo.isMobile
|
||||||
|
? TrailingMailboxItemWidgetStyles.mobileCountEmailsPadding
|
||||||
|
: TrailingMailboxItemWidgetStyles.countEmailsPadding,
|
||||||
child: CountOfEmailsWidget(value: mailboxNode.item.countUnReadEmailsAsString),
|
child: CountOfEmailsWidget(value: mailboxNode.item.countUnReadEmailsAsString),
|
||||||
);
|
);
|
||||||
} else if (mailboxNode.item.allowedToDisplayCountOfTotalEmails) {
|
} else if (mailboxNode.item.allowedToDisplayCountOfTotalEmails) {
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: TrailingMailboxItemWidgetStyles.countEmailsPadding,
|
padding: PlatformInfo.isMobile
|
||||||
|
? TrailingMailboxItemWidgetStyles.mobileCountEmailsPadding
|
||||||
|
: TrailingMailboxItemWidgetStyles.countEmailsPadding,
|
||||||
child: CountOfEmailsWidget(value: mailboxNode.item.countTotalEmailsAsString),
|
child: CountOfEmailsWidget(value: mailboxNode.item.countTotalEmailsAsString),
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user