diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index 986d12b291..7cb447b915 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -1760,7 +1760,18 @@ public class AdapterMessage extends RecyclerView.Adapter width) { + float scale = width / image.getIntrinsicWidth(); + image.setBounds(0, 0, + Math.round(image.getIntrinsicWidth() * scale), + Math.round(image.getIntrinsicHeight() * scale)); + } + + return image; } }, null); diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index 96b0efda06..19c06ebc83 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -2760,7 +2760,18 @@ public class FragmentCompose extends FragmentBase { new Html.ImageGetter() { @Override public Drawable getDrawable(String source) { - return HtmlHelper.decodeImage(source, id, show_images, tvReference); + Drawable image = HtmlHelper.decodeImage(source, id, show_images, tvReference); + + float width = context.getResources().getDisplayMetrics().widthPixels - + Helper.dp2pixels(context, 12); // margins; + if (image.getIntrinsicWidth() > width) { + float scale = width / image.getIntrinsicWidth(); + image.setBounds(0, 0, + Math.round(image.getIntrinsicWidth() * scale), + Math.round(image.getIntrinsicHeight() * scale)); + } + + return image; } }, null);