From a74c1e835bfb1dd01e1cca69c190f9c84ad86e32 Mon Sep 17 00:00:00 2001 From: M66B Date: Fri, 21 Dec 2018 15:19:07 +0100 Subject: [PATCH] Added hiding/showing blockquotes --- .../eu/faircode/email/AdapterMessage.java | 61 ++++++++++++++----- .../java/eu/faircode/email/HtmlHelper.java | 8 ++- .../res/drawable/baseline_format_quote_24.xml | 10 +++ .../main/res/layout/item_message_compact.xml | 21 ++++--- .../main/res/layout/item_message_normal.xml | 21 ++++--- app/src/main/res/values/strings.xml | 1 - 6 files changed, 89 insertions(+), 33 deletions(-) create mode 100755 app/src/main/res/drawable/baseline_format_quote_24.xml diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index 7009317564..c9b7efbb83 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -61,6 +61,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.EditText; +import android.widget.ImageButton; import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.TextView; @@ -177,7 +178,8 @@ public class AdapterMessage extends RecyclerView.Adapter 0 && show_expanded ? View.VISIBLE : View.GONE); bnvActions.setVisibility(viewType == ViewType.THREAD && show_expanded ? View.INVISIBLE : View.GONE); btnHtml.setVisibility(viewType == ViewType.THREAD && show_expanded ? View.INVISIBLE : View.GONE); - btnImages.setVisibility(viewType == ViewType.THREAD && show_expanded ? View.INVISIBLE : View.GONE); + ibQuotes.setVisibility(viewType == ViewType.THREAD && show_expanded ? View.INVISIBLE : View.GONE); + ibImages.setVisibility(viewType == ViewType.THREAD && show_expanded ? View.INVISIBLE : View.GONE); pbBody.setVisibility(View.GONE); bnvActions.setTag(null); @@ -605,7 +612,9 @@ public class AdapterMessage extends RecyclerView.Adapter 0); boolean has_images = (ss.getSpans(0, ss.length(), ImageSpan.class).length > 0); boolean show_expanded = properties.getValue("expanded", message.id); + boolean show_quotes = properties.getValue("quotes", message.id); boolean show_images = properties.getValue("images", message.id); btnHtml.setVisibility(hasWebView && show_expanded ? View.VISIBLE : View.GONE); - btnImages.setVisibility(has_images && show_expanded && !show_images ? View.VISIBLE : View.GONE); + ibQuotes.setVisibility(has_quotes && show_expanded && !show_quotes ? View.VISIBLE : View.GONE); + ibImages.setVisibility(has_images && show_expanded && !show_images ? View.VISIBLE : View.GONE); tvBody.setText(body); pbBody.setVisibility(View.GONE); } @@ -833,11 +860,13 @@ public class AdapterMessage extends RecyclerView.Adapter%s %s:

\n
%s
", Html.escapeHtml(new Date(message.received).toString()), Html.escapeHtml(MessageHelper.getFormattedAddresses(message.from, true)), - sanitize ? sanitize(html) : getBody(html)); + sanitize ? sanitize(html, true) : getBody(html)); } } diff --git a/app/src/main/res/drawable/baseline_format_quote_24.xml b/app/src/main/res/drawable/baseline_format_quote_24.xml new file mode 100755 index 0000000000..048d594c77 --- /dev/null +++ b/app/src/main/res/drawable/baseline_format_quote_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/layout/item_message_compact.xml b/app/src/main/res/layout/item_message_compact.xml index 0e9af06d92..21844791e6 100644 --- a/app/src/main/res/layout/item_message_compact.xml +++ b/app/src/main/res/layout/item_message_compact.xml @@ -572,16 +572,23 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/bnvActions" /> -