From 4dc5e6ab7d945951b9e3dc00288626be4b1885f7 Mon Sep 17 00:00:00 2001 From: M66B Date: Sun, 18 Feb 2024 17:12:38 +0100 Subject: [PATCH] Switch markdown/formatted text --- .../main/java/eu/faircode/email/FragmentCompose.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index 0830e685e7..27998bbd7d 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -2348,7 +2348,10 @@ public class FragmentCompose extends FragmentBase { private void onMenuMarkdown() { markdown = !markdown; - onAction(R.id.menu_save, "Markdown"); + Bundle args = new Bundle(); + args.putBoolean("markdown", true); + args.putBoolean("show", true); + onAction(R.id.menu_save, args, "Markdown"); } private void setCompact(boolean compact) { @@ -6716,7 +6719,7 @@ public class FragmentCompose extends FragmentBase { boolean dirty = false; String body; - if (markdown) { + if (markdown ^ extras.getBoolean("markdown")) { MutableDataSet options = new MutableDataSet(); options.set(Parser.EXTENSIONS, Arrays.asList( TablesExtension.create(), @@ -6726,8 +6729,11 @@ public class FragmentCompose extends FragmentBase { String html = renderer.render(parser.parse(spanned.toString())); Document doc = JsoupEx.parse(html); - doc.body().attr("markdown", "true"); + doc.body().attr("markdown", Boolean.toString(markdown)); body = doc.html(); + + if (markdown != extras.getBoolean("markdown")) + dirty = true; } else body = HtmlHelper.toHtml(spanned, context);