TF-2667 Fix width size inline image in email view after send email

This commit is contained in:
dab246
2024-03-22 03:02:07 +07:00
committed by Dat H. Pham
parent 31ff28d7d2
commit 6b82027090
5 changed files with 28 additions and 12 deletions
@@ -1587,7 +1587,7 @@ class ComposerController extends BaseController with DragDropFileMixin {
if (responsiveUtils.isMobile(context)) {
maxWithEditor = maxWith - 40;
} else {
maxWithEditor = maxWith - 120;
maxWithEditor = maxWith - 70;
}
consumeState(_localImagePickerInteractor.execute());
@@ -2000,8 +2000,15 @@ class ComposerController extends BaseController with DragDropFileMixin {
void onLocalFileDropZoneListener({
required BuildContext context,
required DropDoneDetails details
required DropDoneDetails details,
required double maxWidth
}) async {
if (responsiveUtils.isMobile(context)) {
maxWithEditor = maxWidth - 40;
} else {
maxWithEditor = maxWidth - 70;
}
final listFileInfo = await onDragDone(context: context, details: details);
if (listFileInfo.isEmpty && context.mounted) {
@@ -248,7 +248,8 @@ class ComposerView extends GetWidget<ComposerController> {
onLocalFileDropZoneListener: (details) =>
controller.onLocalFileDropZoneListener(
context: context,
details: details
details: details,
maxWidth: constraintsEditor.maxWidth,
),
)
),
@@ -503,7 +504,8 @@ class ComposerView extends GetWidget<ComposerController> {
onLocalFileDropZoneListener: (details) =>
controller.onLocalFileDropZoneListener(
context: context,
details: details
details: details,
maxWidth: constraintsEditor.maxWidth,
),
)
),
@@ -731,7 +733,8 @@ class ComposerView extends GetWidget<ComposerController> {
onLocalFileDropZoneListener: (details) =>
controller.onLocalFileDropZoneListener(
context: context,
details: details
details: details,
maxWidth: constraintsEditor.maxWidth,
),
)
),
@@ -279,11 +279,11 @@ class RichTextWebController extends BaseRichTextController {
menuOrderListController.hideMenu();
}
void insertImageAsBase64({required PlatformFile platformFile}) {
void insertImageAsBase64({required PlatformFile platformFile, int? maxWidth}) {
if (platformFile.bytes != null) {
final base64Data = base64Encode(platformFile.bytes!);
editorController.insertHtml(
'<img src="${HtmlUtils.convertBase64ToImageResourceData(base64Data: base64Data, mimeType: 'image/${platformFile.extension}')}" data-filename="${platformFile.name}" alt="Image in my signature" style="max-width: 100%;"/>'
'<img src="${HtmlUtils.convertBase64ToImageResourceData(base64Data: base64Data, mimeType: 'image/${platformFile.extension}')}" data-filename="${platformFile.name}" alt="Image in my signature" style="max-width: ${maxWidth != null ? '${maxWidth}px' : '100%'};"/>'
);
} else {
logError("RichTextWebController::insertImageAsBase64: bytes is null");
@@ -546,7 +546,7 @@ class IdentityCreatorController extends BaseController {
}
} else {
if (PlatformInfo.isWeb) {
richTextWebController.insertImageAsBase64(platformFile: file);
richTextWebController.insertImageAsBase64(platformFile: file, maxWidth: maxWidth);
} else if (PlatformInfo.isMobile) {
richTextMobileTabletController.insertImageData(platformFile: file, maxWidth: maxWidth);
if (file.path != null) {