diff --git a/app/src/main/java/eu/faircode/email/StyleHelper.java b/app/src/main/java/eu/faircode/email/StyleHelper.java
index 636a74d377..7cc27c036d 100644
--- a/app/src/main/java/eu/faircode/email/StyleHelper.java
+++ b/app/src/main/java/eu/faircode/email/StyleHelper.java
@@ -15,6 +15,7 @@ import android.text.style.ForegroundColorSpan;
import android.text.style.ImageSpan;
import android.text.style.QuoteSpan;
import android.text.style.RelativeSizeSpan;
+import android.text.style.StrikethroughSpan;
import android.text.style.StyleSpan;
import android.text.style.TypefaceSpan;
import android.text.style.URLSpan;
@@ -122,6 +123,8 @@ public class StyleHelper {
return setFont(item);
case R.id.group_style_blockquote:
return setBlockquote(item);
+ case R.id.group_style_strikethrough:
+ return setStrikethrough(item);
case R.id.group_style_clear:
return clear(item);
default:
@@ -321,6 +324,22 @@ public class StyleHelper {
return true;
}
+ private boolean setStrikethrough(MenuItem item) {
+ boolean has = false;
+ for (StrikethroughSpan span : t.getSpans(s, e, StrikethroughSpan.class)) {
+ has = true;
+ t.removeSpan(span);
+ }
+
+ if (!has)
+ t.setSpan(new StrikethroughSpan(), s, e, Spanned.SPAN_EXCLUSIVE_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 fbc3cfa121..e6797d13ce 100644
--- a/app/src/main/res/menu/popup_style.xml
+++ b/app/src/main/res/menu/popup_style.xml
@@ -64,8 +64,16 @@
+
+
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 955d03821b..5d3916cf38 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -939,6 +939,7 @@
Font
Default
Block quote
+ Strikethrough
Clear formatting
Insert link