From da760474391def4fa60eaec327ebdcc8bf59b67d Mon Sep 17 00:00:00 2001 From: M66B Date: Thu, 1 Oct 2020 10:22:20 +0200 Subject: [PATCH] Added insert blockquote --- .../java/eu/faircode/email/StyleHelper.java | 27 +++++++++++++++++++ app/src/main/res/menu/popup_style.xml | 10 ++++++- app/src/main/res/values/strings.xml | 1 + 3 files changed, 37 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/eu/faircode/email/StyleHelper.java b/app/src/main/java/eu/faircode/email/StyleHelper.java index 5635cf093e..636a74d377 100644 --- a/app/src/main/java/eu/faircode/email/StyleHelper.java +++ b/app/src/main/java/eu/faircode/email/StyleHelper.java @@ -13,6 +13,7 @@ import android.text.Spanned; import android.text.style.BulletSpan; import android.text.style.ForegroundColorSpan; import android.text.style.ImageSpan; +import android.text.style.QuoteSpan; import android.text.style.RelativeSizeSpan; import android.text.style.StyleSpan; import android.text.style.TypefaceSpan; @@ -119,6 +120,8 @@ public class StyleHelper { return setList(item); case R.id.group_style_font: return setFont(item); + case R.id.group_style_blockquote: + return setBlockquote(item); case R.id.group_style_clear: return clear(item); default: @@ -294,6 +297,30 @@ public class StyleHelper { return true; } + private boolean setBlockquote(MenuItem item) { + Context context = etBody.getContext(); + + int colorPrimary = Helper.resolveColor(context, R.attr.colorPrimary); + int dp3 = Helper.dp2pixels(context, 3); + int dp6 = Helper.dp2pixels(context, 6); + + QuoteSpan[] spans = t.getSpans(s, e, QuoteSpan.class); + for (QuoteSpan span : spans) + t.removeSpan(span); + + QuoteSpan q; + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P) + q = new QuoteSpan(colorPrimary); + else + q = new QuoteSpan(colorPrimary, dp3, dp6); + t.setSpan(q, s, e, Spanned.SPAN_INCLUSIVE_EXCLUSIVE); + + etBody.setText(t); + etBody.setSelection(s, e); + + return true; + } + private boolean clear(MenuItem item) { for (Object span : t.getSpans(s, e, Object.class)) if (!(span instanceof ImageSpan)) diff --git a/app/src/main/res/menu/popup_style.xml b/app/src/main/res/menu/popup_style.xml index 25365b6b76..fbc3cfa121 100644 --- a/app/src/main/res/menu/popup_style.xml +++ b/app/src/main/res/menu/popup_style.xml @@ -56,8 +56,16 @@ + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e2e43115eb..955d03821b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -938,6 +938,7 @@ Numbered Font Default + Block quote Clear formatting Insert link