From 33d0ac0868a3cf211cd915a066eba0ef7c6fab8e Mon Sep 17 00:00:00 2001 From: M66B Date: Sun, 3 May 2020 09:33:31 +0200 Subject: [PATCH] Improved new line processing --- .../java/eu/faircode/email/HtmlHelper.java | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/HtmlHelper.java b/app/src/main/java/eu/faircode/email/HtmlHelper.java index 4137697b8e..74c8182c1e 100644 --- a/app/src/main/java/eu/faircode/email/HtmlHelper.java +++ b/app/src/main/java/eu/faircode/email/HtmlHelper.java @@ -2006,12 +2006,19 @@ public class HtmlHelper { } private void newline(int index) { - int len = ssb.length(); - if (len > 2 && - ssb.charAt(len - 1) == '\n' && - ssb.charAt(len - 2) == '\n') - return; - ssb.insert(index, "\n"); + int count = 0; + int i = Math.min(index, ssb.length() - 1); + while (i >= 0) { + char kar = ssb.charAt(i); + if (kar == '\n') + count++; + else if (kar != ' ' && kar != '\u00A0') + break; + i--; + } + + if (count < 2) + ssb.insert(index, "\n"); } }, document.body());