TF-1956 Fix email subjects are displayed overlap email content in RTL mode
(cherry picked from commit 6b341d449790ff00d8ed210b1b8580535d97e721)
This commit is contained in:
@@ -12,7 +12,7 @@ Widget buildIconWeb({
|
|||||||
required Widget icon,
|
required Widget icon,
|
||||||
String? tooltip,
|
String? tooltip,
|
||||||
IconWebCallback? onTap,
|
IconWebCallback? onTap,
|
||||||
EdgeInsets? iconPadding,
|
EdgeInsetsGeometry? iconPadding,
|
||||||
double? iconSize,
|
double? iconSize,
|
||||||
double? splashRadius,
|
double? splashRadius,
|
||||||
double? minSize,
|
double? minSize,
|
||||||
@@ -38,7 +38,7 @@ Widget buildIconWeb({
|
|||||||
Widget buildSVGIconButton({
|
Widget buildSVGIconButton({
|
||||||
required String icon,
|
required String icon,
|
||||||
String? tooltip,
|
String? tooltip,
|
||||||
EdgeInsets? padding,
|
EdgeInsetsGeometry? padding,
|
||||||
double? iconSize,
|
double? iconSize,
|
||||||
Color? iconColor,
|
Color? iconColor,
|
||||||
OnTapIconButtonCallbackAction? onTap,
|
OnTapIconButtonCallbackAction? onTap,
|
||||||
@@ -127,7 +127,7 @@ Widget buildTextCircleButton(String text, {
|
|||||||
|
|
||||||
Widget buildTextIcon(String text, {
|
Widget buildTextIcon(String text, {
|
||||||
TextStyle? textStyle,
|
TextStyle? textStyle,
|
||||||
EdgeInsets? padding,
|
EdgeInsetsGeometry? padding,
|
||||||
IconWebCallback? onTap,
|
IconWebCallback? onTap,
|
||||||
}) {
|
}) {
|
||||||
return Material(
|
return Material(
|
||||||
@@ -147,7 +147,7 @@ Widget buildTextButton(String text, {
|
|||||||
double? width,
|
double? width,
|
||||||
double? height,
|
double? height,
|
||||||
Color? backgroundColor,
|
Color? backgroundColor,
|
||||||
EdgeInsets? padding,
|
EdgeInsetsGeometry? padding,
|
||||||
double? radius,
|
double? radius,
|
||||||
IconWebCallback? onTap,
|
IconWebCallback? onTap,
|
||||||
FocusNode? focusNode,
|
FocusNode? focusNode,
|
||||||
@@ -160,7 +160,7 @@ Widget buildTextButton(String text, {
|
|||||||
style: ButtonStyle(
|
style: ButtonStyle(
|
||||||
backgroundColor: MaterialStateProperty.resolveWith((states) => backgroundColor ?? AppColor.colorTextButton),
|
backgroundColor: MaterialStateProperty.resolveWith((states) => backgroundColor ?? AppColor.colorTextButton),
|
||||||
elevation: MaterialStateProperty.resolveWith((states) => 0),
|
elevation: MaterialStateProperty.resolveWith((states) => 0),
|
||||||
padding: MaterialStateProperty.resolveWith<EdgeInsets>(
|
padding: MaterialStateProperty.resolveWith<EdgeInsetsGeometry>(
|
||||||
(Set<MaterialState> states) => padding ?? const EdgeInsets.symmetric(horizontal: 8)),
|
(Set<MaterialState> states) => padding ?? const EdgeInsets.symmetric(horizontal: 8)),
|
||||||
shape: MaterialStateProperty.all(RoundedRectangleBorder(borderRadius: BorderRadius.circular(radius ?? 0)))),
|
shape: MaterialStateProperty.all(RoundedRectangleBorder(borderRadius: BorderRadius.circular(radius ?? 0)))),
|
||||||
child: Text(
|
child: Text(
|
||||||
@@ -182,7 +182,7 @@ Widget buildButtonWrapText(String name, {
|
|||||||
double? radius,
|
double? radius,
|
||||||
double? height,
|
double? height,
|
||||||
double? minWidth,
|
double? minWidth,
|
||||||
EdgeInsets? padding,
|
EdgeInsetsGeometry? padding,
|
||||||
FocusNode? focusNode,
|
FocusNode? focusNode,
|
||||||
IconWebCallback? onTap
|
IconWebCallback? onTap
|
||||||
}) {
|
}) {
|
||||||
|
|||||||
+2
-2
@@ -13,7 +13,7 @@ class EmailQuickSearchItemTileWidget extends StatelessWidget {
|
|||||||
|
|
||||||
final PresentationEmail _presentationEmail;
|
final PresentationEmail _presentationEmail;
|
||||||
final PresentationMailbox? _presentationMailbox;
|
final PresentationMailbox? _presentationMailbox;
|
||||||
final EdgeInsets? contentPadding;
|
final EdgeInsetsGeometry? contentPadding;
|
||||||
|
|
||||||
EmailQuickSearchItemTileWidget(
|
EmailQuickSearchItemTileWidget(
|
||||||
this._presentationEmail,
|
this._presentationEmail,
|
||||||
@@ -29,7 +29,7 @@ class EmailQuickSearchItemTileWidget extends StatelessWidget {
|
|||||||
final maxWidthItem = constraints.maxWidth;
|
final maxWidthItem = constraints.maxWidth;
|
||||||
log('EmailQuickSearchItemTileWidget::build(): maxWidthItem: $maxWidthItem');
|
log('EmailQuickSearchItemTileWidget::build(): maxWidthItem: $maxWidthItem');
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: contentPadding ?? const EdgeInsets.all(12),
|
padding: contentPadding ?? const EdgeInsetsDirectional.all(12),
|
||||||
child: Row(
|
child: Row(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
|
|||||||
+2
-2
@@ -10,7 +10,7 @@ class RecentSearchItemTileWidget extends StatelessWidget {
|
|||||||
final imagePath = Get.find<ImagePaths>();
|
final imagePath = Get.find<ImagePaths>();
|
||||||
|
|
||||||
final RecentSearch recentSearch;
|
final RecentSearch recentSearch;
|
||||||
final EdgeInsets? contentPadding;
|
final EdgeInsetsGeometry? contentPadding;
|
||||||
|
|
||||||
RecentSearchItemTileWidget(
|
RecentSearchItemTileWidget(
|
||||||
this.recentSearch, {
|
this.recentSearch, {
|
||||||
@@ -21,7 +21,7 @@ class RecentSearchItemTileWidget extends StatelessWidget {
|
|||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: contentPadding ?? const EdgeInsets.all(12),
|
padding: contentPadding ?? const EdgeInsetsDirectional.all(12),
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
SvgPicture.asset(imagePath.icClockSB),
|
SvgPicture.asset(imagePath.icClockSB),
|
||||||
|
|||||||
@@ -34,8 +34,8 @@ mixin BaseEmailItemTile {
|
|||||||
) {
|
) {
|
||||||
if (hasMailboxLabel(isSearchEmailRunning, email)) {
|
if (hasMailboxLabel(isSearchEmailRunning, email)) {
|
||||||
return Container(
|
return Container(
|
||||||
margin: const EdgeInsets.only(left: 8),
|
margin: const EdgeInsetsDirectional.only(start: 8),
|
||||||
padding: const EdgeInsets.symmetric(
|
padding: const EdgeInsetsDirectional.symmetric(
|
||||||
horizontal: 8,
|
horizontal: 8,
|
||||||
vertical: 3),
|
vertical: 3),
|
||||||
constraints: const BoxConstraints(maxWidth: 100),
|
constraints: const BoxConstraints(maxWidth: 100),
|
||||||
@@ -248,8 +248,8 @@ mixin BaseEmailItemTile {
|
|||||||
height: iconSize ?? 48,
|
height: iconSize ?? 48,
|
||||||
alignment: Alignment.center,
|
alignment: Alignment.center,
|
||||||
padding: responsiveUtils.isDesktop(context)
|
padding: responsiveUtils.isDesktop(context)
|
||||||
? const EdgeInsets.symmetric(horizontal: 4)
|
? const EdgeInsetsDirectional.symmetric(horizontal: 4)
|
||||||
: const EdgeInsets.all(12),
|
: const EdgeInsetsDirectional.all(12),
|
||||||
child: SvgPicture.asset(
|
child: SvgPicture.asset(
|
||||||
email.selectMode == SelectMode.ACTIVE
|
email.selectMode == SelectMode.ACTIVE
|
||||||
? imagePaths.icSelected
|
? imagePaths.icSelected
|
||||||
|
|||||||
@@ -16,8 +16,8 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
final PresentationMailbox? mailboxContain;
|
final PresentationMailbox? mailboxContain;
|
||||||
final SearchQuery? _searchQuery;
|
final SearchQuery? _searchQuery;
|
||||||
final bool isSearchEmailRunning;
|
final bool isSearchEmailRunning;
|
||||||
final EdgeInsets? padding;
|
final EdgeInsetsGeometry? padding;
|
||||||
final EdgeInsets? paddingDivider;
|
final EdgeInsetsGeometry? paddingDivider;
|
||||||
final bool isDrag;
|
final bool isDrag;
|
||||||
final bool _isShowingEmailContent;
|
final bool _isShowingEmailContent;
|
||||||
|
|
||||||
@@ -51,7 +51,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
children: [
|
children: [
|
||||||
ListTile(
|
ListTile(
|
||||||
tileColor: _isShowingEmailContent ? AppColor.colorItemEmailSelectedDesktop : null,
|
tileColor: _isShowingEmailContent ? AppColor.colorItemEmailSelectedDesktop : null,
|
||||||
contentPadding: padding ?? const EdgeInsets.symmetric(horizontal: 16, vertical: 5),
|
contentPadding: padding ?? const EdgeInsetsDirectional.symmetric(horizontal: 16, vertical: 5),
|
||||||
onTap: () => _emailActionClick?.call(
|
onTap: () => _emailActionClick?.call(
|
||||||
EmailActionType.preview,
|
EmailActionType.preview,
|
||||||
_presentationEmail),
|
_presentationEmail),
|
||||||
@@ -75,7 +75,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
children: [
|
children: [
|
||||||
if (!_presentationEmail.hasRead)
|
if (!_presentationEmail.hasRead)
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(right: 5),
|
padding: const EdgeInsetsDirectional.only(end: 5),
|
||||||
child: SvgPicture.asset(
|
child: SvgPicture.asset(
|
||||||
imagePaths.icUnreadStatus,
|
imagePaths.icUnreadStatus,
|
||||||
width: 9,
|
width: 9,
|
||||||
@@ -89,10 +89,10 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
buildIconAnsweredOrForwarded(width: 16, height: 16, presentationEmail: _presentationEmail),
|
buildIconAnsweredOrForwarded(width: 16, height: 16, presentationEmail: _presentationEmail),
|
||||||
if (_presentationEmail.hasAttachment == true)
|
if (_presentationEmail.hasAttachment == true)
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(left: 8),
|
padding: const EdgeInsetsDirectional.only(start: 8),
|
||||||
child: buildIconAttachment()),
|
child: buildIconAttachment()),
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(right: 4, left: 8),
|
padding: const EdgeInsetsDirectional.only(end: 4, start: 8),
|
||||||
child: buildDateTime(_context, _presentationEmail)),
|
child: buildDateTime(_context, _presentationEmail)),
|
||||||
buildIconChevron(),
|
buildIconChevron(),
|
||||||
],
|
],
|
||||||
@@ -102,7 +102,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(top: 6),
|
padding: const EdgeInsetsDirectional.only(top: 6),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
@@ -116,13 +116,13 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
_presentationEmail),
|
_presentationEmail),
|
||||||
if (_presentationEmail.hasStarred)
|
if (_presentationEmail.hasStarred)
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(left: 8),
|
padding: const EdgeInsetsDirectional.only(start: 8),
|
||||||
child: buildIconStar(),
|
child: buildIconStar(),
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
)),
|
)),
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(top: 6),
|
padding: const EdgeInsetsDirectional.only(top: 6),
|
||||||
child: Row(children: [
|
child: Row(children: [
|
||||||
Expanded(child: buildEmailPartialContent(
|
Expanded(child: buildEmailPartialContent(
|
||||||
_presentationEmail,
|
_presentationEmail,
|
||||||
@@ -134,7 +134,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Padding(
|
Padding(
|
||||||
padding: paddingDivider ?? const EdgeInsets.symmetric(horizontal: 16),
|
padding: paddingDivider ?? const EdgeInsetsDirectional.symmetric(horizontal: 16),
|
||||||
child: const Divider(
|
child: const Divider(
|
||||||
color: AppColor.lineItemListColor,
|
color: AppColor.lineItemListColor,
|
||||||
height: 1,
|
height: 1,
|
||||||
|
|||||||
@@ -132,7 +132,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
: EmailActionType.preview,
|
: EmailActionType.preview,
|
||||||
_presentationEmail),
|
_presentationEmail),
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding: const EdgeInsets.only(top: 8, right: 12),
|
padding: const EdgeInsetsDirectional.only(top: 8, end: 12),
|
||||||
child: _buildAvatarIcon(),
|
child: _buildAvatarIcon(),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -141,7 +141,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
Row(children: [
|
Row(children: [
|
||||||
if (!_presentationEmail.hasRead)
|
if (!_presentationEmail.hasRead)
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(right: 5),
|
padding: const EdgeInsetsDirectional.only(end: 5),
|
||||||
child: SvgPicture.asset(
|
child: SvgPicture.asset(
|
||||||
imagePaths.icUnreadStatus,
|
imagePaths.icUnreadStatus,
|
||||||
width: 9,
|
width: 9,
|
||||||
@@ -156,14 +156,14 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
buildIconAnsweredOrForwarded(width: 16, height: 16, presentationEmail: _presentationEmail),
|
buildIconAnsweredOrForwarded(width: 16, height: 16, presentationEmail: _presentationEmail),
|
||||||
if (_presentationEmail.hasAttachment == true)
|
if (_presentationEmail.hasAttachment == true)
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(left: 8),
|
padding: const EdgeInsetsDirectional.only(start: 8),
|
||||||
child: SvgPicture.asset(
|
child: SvgPicture.asset(
|
||||||
imagePaths.icAttachment,
|
imagePaths.icAttachment,
|
||||||
width: 16,
|
width: 16,
|
||||||
height: 16,
|
height: 16,
|
||||||
fit: BoxFit.fill)),
|
fit: BoxFit.fill)),
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(right: 4, left: 8),
|
padding: const EdgeInsetsDirectional.only(end: 4, start: 8),
|
||||||
child: buildDateTime(_context, _presentationEmail)),
|
child: buildDateTime(_context, _presentationEmail)),
|
||||||
buildIconChevron()
|
buildIconChevron()
|
||||||
]),
|
]),
|
||||||
@@ -183,7 +183,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
),
|
),
|
||||||
if (_presentationEmail.hasStarred)
|
if (_presentationEmail.hasStarred)
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(left: 8),
|
padding: const EdgeInsetsDirectional.only(start: 8),
|
||||||
child: buildIconStar(),
|
child: buildIconStar(),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
@@ -323,7 +323,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
child: Stack(alignment: Alignment.bottomCenter, children: [
|
child: Stack(alignment: Alignment.bottomCenter, children: [
|
||||||
Row(children: [
|
Row(children: [
|
||||||
Container(
|
Container(
|
||||||
padding: const EdgeInsets.only(left: 16, right: 16),
|
padding: const EdgeInsetsDirectional.symmetric(horizontal: 16),
|
||||||
alignment: Alignment.center,
|
alignment: Alignment.center,
|
||||||
child: !_presentationEmail.hasRead
|
child: !_presentationEmail.hasRead
|
||||||
? SvgPicture.asset(
|
? SvgPicture.asset(
|
||||||
@@ -351,7 +351,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
buildIconWeb(
|
buildIconWeb(
|
||||||
icon: buildIconAnsweredOrForwarded(presentationEmail: _presentationEmail),
|
icon: buildIconAnsweredOrForwarded(presentationEmail: _presentationEmail),
|
||||||
tooltip: messageToolTipForAnsweredOrForwarded(context, _presentationEmail),
|
tooltip: messageToolTipForAnsweredOrForwarded(context, _presentationEmail),
|
||||||
iconPadding: const EdgeInsets.only(right: 12),
|
iconPadding: const EdgeInsetsDirectional.only(end: 12),
|
||||||
splashRadius: 1),
|
splashRadius: 1),
|
||||||
InkWell(
|
InkWell(
|
||||||
onTap: () {
|
onTap: () {
|
||||||
@@ -390,7 +390,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
Transform(
|
Transform(
|
||||||
transform: Matrix4.translationValues(0.0, 10, 0.0),
|
transform: Matrix4.translationValues(0.0, 10, 0.0),
|
||||||
child: const Padding(
|
child: const Padding(
|
||||||
padding: EdgeInsets.only(left: 120),
|
padding: EdgeInsetsDirectional.only(start: 120),
|
||||||
child: Divider(
|
child: Divider(
|
||||||
color: AppColor.lineItemListColor,
|
color: AppColor.lineItemListColor,
|
||||||
height: 1,
|
height: 1,
|
||||||
@@ -524,7 +524,7 @@ class EmailTileBuilder with BaseEmailItemTile {
|
|||||||
if (_presentationEmail.getEmailTitle().isNotEmpty)
|
if (_presentationEmail.getEmailTitle().isNotEmpty)
|
||||||
Container(
|
Container(
|
||||||
constraints: BoxConstraints(maxWidth: constraints.maxWidth / 2),
|
constraints: BoxConstraints(maxWidth: constraints.maxWidth / 2),
|
||||||
padding: const EdgeInsets.only(right: 12),
|
padding: const EdgeInsetsDirectional.only(end: 12),
|
||||||
child: buildEmailTitle(
|
child: buildEmailTitle(
|
||||||
_presentationEmail,
|
_presentationEmail,
|
||||||
isSearchEmailRunning,
|
isSearchEmailRunning,
|
||||||
|
|||||||
Reference in New Issue
Block a user