From 93a4bda5fe7313b91de8e84dda7be70eb6246cd9 Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 17 Oct 2023 15:40:23 +0200 Subject: [PATCH] Remove invisible element of preview --- .../java/eu/faircode/email/HtmlHelper.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/app/src/main/java/eu/faircode/email/HtmlHelper.java b/app/src/main/java/eu/faircode/email/HtmlHelper.java index c11c13723a..63f2ab1f03 100644 --- a/app/src/main/java/eu/faircode/email/HtmlHelper.java +++ b/app/src/main/java/eu/faircode/email/HtmlHelper.java @@ -2594,6 +2594,31 @@ public class HtmlHelper { private static String _getText(Document d) { truncate(d, MAX_FULL_TEXT_SIZE); + for (Element e : d.select("*")) { + String style = e.attr("style"); + if (TextUtils.isEmpty(style)) + continue; + + String[] params = style.split(";"); + for (String param : params) { + int colon = param.indexOf(':'); + if (colon <= 0) + continue; + String key = param.substring(0, colon) + .trim() + .toLowerCase(Locale.ROOT); + String value = param.substring(colon + 1) + .replace("!important", "") + .trim() + .toLowerCase(Locale.ROOT) + .replaceAll("\\s+", " "); + if ("display".equals(key) && "none".equals(value)) { + e.remove(); + break; + } + } + } + for (Element bq : d.select("blockquote")) bq.prependChild(new TextNode("> "));