diff --git a/app/src/main/java/eu/faircode/email/ActivityCode.java b/app/src/main/java/eu/faircode/email/ActivityCode.java
index 881c7a064b..075c19698d 100644
--- a/app/src/main/java/eu/faircode/email/ActivityCode.java
+++ b/app/src/main/java/eu/faircode/email/ActivityCode.java
@@ -72,6 +72,7 @@ public class ActivityCode extends ActivityBase {
private boolean sanitize = false;
private boolean lines = false;
private boolean links = false;
+ private boolean pretty = true;
private String searching = null;
private static final int REQUEST_SAVE = 1;
@@ -85,6 +86,7 @@ public class ActivityCode extends ActivityBase {
sanitize = savedInstanceState.getBoolean("fair:sanitize");
lines = savedInstanceState.getBoolean("fair:lines");
links = savedInstanceState.getBoolean("fair:links");
+ pretty = savedInstanceState.getBoolean("fair:pretty");
searching = savedInstanceState.getString("fair:searching");
}
@@ -159,6 +161,7 @@ public class ActivityCode extends ActivityBase {
outState.putBoolean("fair:sanitize", sanitize);
outState.putBoolean("fair:lines", lines);
outState.putBoolean("fair:links", links);
+ outState.putBoolean("fair:pretty", pretty);
outState.putString("fair:searching", searching);
super.onSaveInstanceState(outState);
}
@@ -227,7 +230,7 @@ public class ActivityCode extends ActivityBase {
menu.findItem(R.id.menu_lines).setChecked(lines);
menu.findItem(R.id.menu_links).setChecked(links);
- menu.findItem(R.id.menu_check_html).setVisible(BuildConfig.DEBUG || debug);
+ menu.findItem(R.id.menu_pretty).setChecked(pretty);
return super.onPrepareOptionsMenu(menu);
}
@@ -258,6 +261,11 @@ public class ActivityCode extends ActivityBase {
item.setChecked(links);
load();
return true;
+ } else if (itemId == R.id.menu_pretty) {
+ pretty = !pretty;
+ item.setChecked(pretty);
+ load();
+ return true;
} else if (itemId == R.id.menu_check_html) {
checkHtml();
return true;
@@ -303,6 +311,7 @@ public class ActivityCode extends ActivityBase {
args.putLong("id", id);
args.putCharSequence("selected", selected);
args.putBoolean("sanitize", sanitize);
+ args.putBoolean("pretty", pretty);
new SimpleTask() {
@Override
@@ -320,6 +329,7 @@ public class ActivityCode extends ActivityBase {
long id = args.getLong("id");
CharSequence selected = args.getCharSequence("selected");
boolean sanitize = args.getBoolean("sanitize");
+ boolean pretty = args.getBoolean("pretty");
DB db = DB.getInstance(context);
EntityMessage message = db.message().getMessage(id);
@@ -354,8 +364,8 @@ public class ActivityCode extends ActivityBase {
}
d.outputSettings()
- .prettyPrint(true)
- .outline(true)
+ .prettyPrint(pretty)
+ .outline(pretty)
.indentAmount(1);
if (selected == null)
@@ -421,6 +431,10 @@ public class ActivityCode extends ActivityBase {
@Override
protected void onExecuted(Bundle args, ParseErrorList errors) {
+ lines = true;
+ pretty = false;
+ load();
+
SpannableStringBuilderEx ssb = new SpannableStringBuilderEx();
ssb.append("Errors: ")
.append(Integer.toString(errors.size()))
diff --git a/app/src/main/res/menu/menu_code.xml b/app/src/main/res/menu/menu_code.xml
index 481506434c..01e28a0434 100644
--- a/app/src/main/res/menu/menu_code.xml
+++ b/app/src/main/res/menu/menu_code.xml
@@ -23,13 +23,19 @@
+
+
- Alarm
Stop
+ Show line numbers
+ Enable links
+ Pretty print
+
Synchronize
Folders
Messages
@@ -2138,8 +2142,6 @@
Show AMP variant
Show original message
Show reformatted message
- Show line numbers
- Enable links
Edit
Default color
Close hint