TF-1779 Fix logic of replacing dot in long email
(cherry picked from commit 24d306500325fc3f7b7901cf1936e46f8be6ccf3)
This commit is contained in:
@@ -1,4 +1,5 @@
|
|||||||
import 'package:core/utils/app_logger.dart';
|
import 'package:core/utils/app_logger.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
extension StringExtension on String {
|
extension StringExtension on String {
|
||||||
|
|
||||||
@@ -38,4 +39,11 @@ extension StringExtension on String {
|
|||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String get withUnicodeCharacter {
|
||||||
|
return characters
|
||||||
|
.replaceAll(Characters(' '), Characters('\u{00A0}'))
|
||||||
|
.replaceAll(Characters('-'), Characters('\u{2011}'))
|
||||||
|
.toString();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
import 'package:core/presentation/extensions/capitalize_extension.dart';
|
import 'package:core/presentation/extensions/capitalize_extension.dart';
|
||||||
import 'package:core/presentation/extensions/color_extension.dart';
|
import 'package:core/presentation/extensions/color_extension.dart';
|
||||||
import 'package:core/presentation/extensions/html_extension.dart';
|
import 'package:core/presentation/extensions/html_extension.dart';
|
||||||
|
import 'package:core/presentation/extensions/string_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/views/button/icon_button_web.dart';
|
import 'package:core/presentation/views/button/icon_button_web.dart';
|
||||||
@@ -352,7 +353,7 @@ class ComposerView extends GetWidget<ComposerController>
|
|||||||
left: AppUtils.isDirectionRTL(context) ? 8 : 12
|
left: AppUtils.isDirectionRTL(context) ? 8 : 12
|
||||||
),
|
),
|
||||||
child: Text(
|
child: Text(
|
||||||
controller.identitySelected.value?.email ?? '',
|
(controller.identitySelected.value?.email ?? '').withUnicodeCharacter,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
style: const TextStyle(fontSize: 17, fontWeight: FontWeight.normal, color: AppColor.colorEmailAddressPrefix),
|
style: const TextStyle(fontSize: 17, fontWeight: FontWeight.normal, color: AppColor.colorEmailAddressPrefix),
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:core/presentation/extensions/color_extension.dart';
|
import 'package:core/presentation/extensions/color_extension.dart';
|
||||||
|
import 'package:core/presentation/extensions/string_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/style_utils.dart';
|
import 'package:core/presentation/utils/style_utils.dart';
|
||||||
@@ -299,7 +300,7 @@ class MailBoxFolderTileBuilder {
|
|||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
_mailboxNode.item.name?.name ?? '',
|
(_mailboxNode.item.name?.name ?? '').withUnicodeCharacter,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
@@ -310,7 +311,7 @@ class MailBoxFolderTileBuilder {
|
|||||||
),
|
),
|
||||||
if(_mailboxNode.item.isTeamMailboxes)
|
if(_mailboxNode.item.isTeamMailboxes)
|
||||||
Text(
|
Text(
|
||||||
_mailboxNode.item.emailTeamMailBoxes ?? '',
|
(_mailboxNode.item.emailTeamMailBoxes ?? '').withUnicodeCharacter,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
|
|
||||||
import 'package:core/presentation/extensions/color_extension.dart';
|
import 'package:core/presentation/extensions/color_extension.dart';
|
||||||
|
import 'package:core/presentation/extensions/string_extension.dart';
|
||||||
import 'package:core/presentation/resources/image_paths.dart';
|
import 'package:core/presentation/resources/image_paths.dart';
|
||||||
import 'package:core/presentation/utils/style_utils.dart';
|
import 'package:core/presentation/utils/style_utils.dart';
|
||||||
import 'package:core/presentation/views/image/avatar_builder.dart';
|
import 'package:core/presentation/views/image/avatar_builder.dart';
|
||||||
@@ -59,7 +60,7 @@ class UserInformationWidgetBuilder extends StatelessWidget {
|
|||||||
top: 10
|
top: 10
|
||||||
),
|
),
|
||||||
child: Text(
|
child: Text(
|
||||||
_userProfile != null ? '${_userProfile?.email}' : '',
|
_userProfile != null ? '${_userProfile?.email}'.withUnicodeCharacter : '',
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
|
|||||||
+5
-3
@@ -1,4 +1,5 @@
|
|||||||
import 'package:core/presentation/extensions/color_extension.dart';
|
import 'package:core/presentation/extensions/color_extension.dart';
|
||||||
|
import 'package:core/presentation/extensions/string_extension.dart';
|
||||||
import 'package:core/presentation/resources/image_paths.dart';
|
import 'package:core/presentation/resources/image_paths.dart';
|
||||||
import 'package:core/presentation/utils/style_utils.dart';
|
import 'package:core/presentation/utils/style_utils.dart';
|
||||||
import 'package:core/presentation/views/button/icon_button_web.dart';
|
import 'package:core/presentation/views/button/icon_button_web.dart';
|
||||||
@@ -65,7 +66,7 @@ class IdentityListTileBuilder extends StatelessWidget {
|
|||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(bottom: 6),
|
padding: const EdgeInsets.only(bottom: 6),
|
||||||
child: Text(
|
child: Text(
|
||||||
identity.name ?? '',
|
(identity.name ?? '').withUnicodeCharacter,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
@@ -122,7 +123,7 @@ class IdentityListTileBuilder extends StatelessWidget {
|
|||||||
child: SvgPicture.asset(imagePath, width: 15, height: 15))),
|
child: SvgPicture.asset(imagePath, width: 15, height: 15))),
|
||||||
const SizedBox(width: 4),
|
const SizedBox(width: 4),
|
||||||
Expanded(child: Text(
|
Expanded(child: Text(
|
||||||
text ?? '',
|
(text ?? '').withUnicodeCharacter,
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
color: AppColor.colorEmailAddressFull,
|
color: AppColor.colorEmailAddressFull,
|
||||||
fontWeight: FontWeight.normal,
|
fontWeight: FontWeight.normal,
|
||||||
@@ -150,7 +151,8 @@ class IdentityListTileBuilder extends StatelessWidget {
|
|||||||
decoration: TextDecoration.underline,
|
decoration: TextDecoration.underline,
|
||||||
color: AppColor.colorTextButton))),
|
color: AppColor.colorTextButton))),
|
||||||
const SizedBox(width: 4),
|
const SizedBox(width: 4),
|
||||||
Expanded(child: Text(text ?? '',
|
Expanded(child: Text(
|
||||||
|
(text ?? '').withUnicodeCharacter,
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
color: AppColor.colorEmailAddressFull,
|
color: AppColor.colorEmailAddressFull,
|
||||||
fontWeight: FontWeight.normal,
|
fontWeight: FontWeight.normal,
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:core/presentation/extensions/color_extension.dart';
|
import 'package:core/presentation/extensions/color_extension.dart';
|
||||||
|
import 'package:core/presentation/extensions/string_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/style_utils.dart';
|
import 'package:core/presentation/utils/style_utils.dart';
|
||||||
@@ -204,7 +205,7 @@ class _MailboxSearchedItemBuilderState extends State<MailboxSearchedItemBuilder>
|
|||||||
|
|
||||||
Widget _buildTitleItem() {
|
Widget _buildTitleItem() {
|
||||||
return Text(
|
return Text(
|
||||||
widget._presentationMailbox.name?.name ?? '',
|
(widget._presentationMailbox.name?.name ?? '').withUnicodeCharacter,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
@@ -218,7 +219,7 @@ class _MailboxSearchedItemBuilderState extends State<MailboxSearchedItemBuilder>
|
|||||||
Widget _buildSubtitleItem() {
|
Widget _buildSubtitleItem() {
|
||||||
if (widget._presentationMailbox.mailboxPath?.isNotEmpty == true) {
|
if (widget._presentationMailbox.mailboxPath?.isNotEmpty == true) {
|
||||||
return Text(
|
return Text(
|
||||||
widget._presentationMailbox.mailboxPath ?? '',
|
(widget._presentationMailbox.mailboxPath ?? '').withUnicodeCharacter,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
@@ -230,7 +231,7 @@ class _MailboxSearchedItemBuilderState extends State<MailboxSearchedItemBuilder>
|
|||||||
);
|
);
|
||||||
} else if (widget._presentationMailbox.isTeamMailboxes) {
|
} else if (widget._presentationMailbox.isTeamMailboxes) {
|
||||||
return Text(
|
return Text(
|
||||||
widget._presentationMailbox.emailTeamMailBoxes ?? '',
|
(widget._presentationMailbox.emailTeamMailBoxes ?? '').withUnicodeCharacter,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
|
|
||||||
import 'package:core/presentation/extensions/color_extension.dart';
|
import 'package:core/presentation/extensions/color_extension.dart';
|
||||||
|
import 'package:core/presentation/extensions/string_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/style_utils.dart';
|
import 'package:core/presentation/utils/style_utils.dart';
|
||||||
@@ -39,7 +40,7 @@ mixin BaseEmailItemTile {
|
|||||||
borderRadius: BorderRadius.circular(10),
|
borderRadius: BorderRadius.circular(10),
|
||||||
color: AppColor.backgroundCounterMailboxColor),
|
color: AppColor.backgroundCounterMailboxColor),
|
||||||
child: Text(
|
child: Text(
|
||||||
email.mailboxName,
|
email.mailboxName.withUnicodeCharacter,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
@@ -84,7 +85,7 @@ mixin BaseEmailItemTile {
|
|||||||
) {
|
) {
|
||||||
if (isSearchEnabled(isSearchEmailRunning, query)) {
|
if (isSearchEnabled(isSearchEmailRunning, query)) {
|
||||||
return RichTextBuilder(
|
return RichTextBuilder(
|
||||||
informationSender(email, mailbox),
|
informationSender(email, mailbox).withUnicodeCharacter,
|
||||||
query?.value ?? '',
|
query?.value ?? '',
|
||||||
TextStyle(
|
TextStyle(
|
||||||
fontSize: 15,
|
fontSize: 15,
|
||||||
@@ -98,7 +99,7 @@ mixin BaseEmailItemTile {
|
|||||||
).build();
|
).build();
|
||||||
} else {
|
} else {
|
||||||
return Text(
|
return Text(
|
||||||
informationSender(email, mailbox),
|
informationSender(email, mailbox).withUnicodeCharacter,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
@@ -118,7 +119,7 @@ mixin BaseEmailItemTile {
|
|||||||
) {
|
) {
|
||||||
if (isSearchEnabled(isSearchEmailRunning, query)) {
|
if (isSearchEnabled(isSearchEmailRunning, query)) {
|
||||||
return RichTextBuilder(
|
return RichTextBuilder(
|
||||||
email.getEmailTitle(),
|
email.getEmailTitle().withUnicodeCharacter,
|
||||||
query?.value ?? '',
|
query?.value ?? '',
|
||||||
TextStyle(
|
TextStyle(
|
||||||
fontSize: 13,
|
fontSize: 13,
|
||||||
@@ -132,7 +133,7 @@ mixin BaseEmailItemTile {
|
|||||||
).build();
|
).build();
|
||||||
} else {
|
} else {
|
||||||
return Text(
|
return Text(
|
||||||
email.getEmailTitle(),
|
email.getEmailTitle().withUnicodeCharacter,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
@@ -151,7 +152,7 @@ mixin BaseEmailItemTile {
|
|||||||
) {
|
) {
|
||||||
if (isSearchEnabled(isSearchEmailRunning, query)) {
|
if (isSearchEnabled(isSearchEmailRunning, query)) {
|
||||||
return RichTextBuilder(
|
return RichTextBuilder(
|
||||||
email.getPartialContent(),
|
email.getPartialContent().withUnicodeCharacter,
|
||||||
query?.value ?? '',
|
query?.value ?? '',
|
||||||
const TextStyle(
|
const TextStyle(
|
||||||
fontSize: 13,
|
fontSize: 13,
|
||||||
@@ -164,7 +165,7 @@ mixin BaseEmailItemTile {
|
|||||||
).build();
|
).build();
|
||||||
} else {
|
} else {
|
||||||
return Text(
|
return Text(
|
||||||
email.getPartialContent(),
|
email.getPartialContent().withUnicodeCharacter,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
softWrap: CommonTextStyle.defaultSoftWrap,
|
softWrap: CommonTextStyle.defaultSoftWrap,
|
||||||
overflow: CommonTextStyle.defaultTextOverFlow,
|
overflow: CommonTextStyle.defaultTextOverFlow,
|
||||||
|
|||||||
Reference in New Issue
Block a user