diff --git a/app/src/main/java/org/houxg/leamonax/editor/Editor.java b/app/src/main/java/org/houxg/leamonax/editor/Editor.java index 6aa5abc..386cc92 100644 --- a/app/src/main/java/org/houxg/leamonax/editor/Editor.java +++ b/app/src/main/java/org/houxg/leamonax/editor/Editor.java @@ -21,7 +21,8 @@ public abstract class Editor { ITALIC, ORDER_LIST, UNORDER_LIST, - BLOCK_QUOTE; + HEADER, + BLOCK_QUOTE } protected EditorListener mListener; diff --git a/app/src/main/java/org/houxg/leamonax/editor/QuillCallbackHandler.java b/app/src/main/java/org/houxg/leamonax/editor/QuillCallbackHandler.java index 5287487..523cbec 100644 --- a/app/src/main/java/org/houxg/leamonax/editor/QuillCallbackHandler.java +++ b/app/src/main/java/org/houxg/leamonax/editor/QuillCallbackHandler.java @@ -78,6 +78,9 @@ public class QuillCallbackHandler { case "blockquote": formatStatusMap.put(Editor.Style.BLOCK_QUOTE, getBoolean((Boolean) format.getValue())); break; + case "header": + Double headerLevel = ((Double)format.getValue()); + formatStatusMap.put(Editor.Style.HEADER, headerLevel != null && headerLevel > 0); } } return formatStatusMap; diff --git a/app/src/main/java/org/houxg/leamonax/editor/RichTextEditor.java b/app/src/main/java/org/houxg/leamonax/editor/RichTextEditor.java index 0643c2e..52f1f3f 100644 --- a/app/src/main/java/org/houxg/leamonax/editor/RichTextEditor.java +++ b/app/src/main/java/org/houxg/leamonax/editor/RichTextEditor.java @@ -69,7 +69,7 @@ public class RichTextEditor extends Editor implements OnJsEditorStateChangedList @Override public void setContent(String content) { - execJs(String.format(Locale.US, "quill.pasteHTML('%s');", HtmlUtils.escapeHtml(content))); + execJs(String.format(Locale.US, "quill.pasteHTML('%s', 'silent');", HtmlUtils.escapeHtml(content))); } @Override diff --git a/app/src/main/java/org/houxg/leamonax/ui/edit/EditorFragment.java b/app/src/main/java/org/houxg/leamonax/ui/edit/EditorFragment.java index fb777e8..ab1a17b 100644 --- a/app/src/main/java/org/houxg/leamonax/ui/edit/EditorFragment.java +++ b/app/src/main/java/org/houxg/leamonax/ui/edit/EditorFragment.java @@ -331,6 +331,11 @@ public class EditorFragment extends Fragment implements Editor.EditorListener { case BLOCK_QUOTE: mQuoteBtn.setChecked(enabled); break; + case HEADER: + if (mHeadingBtn != null) { + mHeadingBtn.setChecked(enabled); + } + break; } } } @@ -357,6 +362,11 @@ public class EditorFragment extends Fragment implements Editor.EditorListener { case UNORDER_LIST: mUnorderListBtn.setChecked(enabled); break; + case HEADER: + if (mHeadingBtn != null) { + mHeadingBtn.setChecked(enabled); + } + break; } } } diff --git a/app/src/main/res/drawable-xxhdpi/ic_header_richtext_disable.png b/app/src/main/res/drawable-xxhdpi/ic_header_richtext_disable.png new file mode 100644 index 0000000..7f39837 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_header_richtext_disable.png differ diff --git a/app/src/main/res/drawable-xxhdpi/ic_header_richtext_enable.png b/app/src/main/res/drawable-xxhdpi/ic_header_richtext_enable.png new file mode 100644 index 0000000..22b5192 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_header_richtext_enable.png differ diff --git a/app/src/main/res/layout/format_bar_richtext.xml b/app/src/main/res/layout/format_bar_richtext.xml index acb9c45..4605116 100755 --- a/app/src/main/res/layout/format_bar_richtext.xml +++ b/app/src/main/res/layout/format_bar_richtext.xml @@ -42,8 +42,8 @@ + app:checkedDrawable="@drawable/ic_header_richtext_enable" + app:uncheckedDrawable="@drawable/ic_header_richtext_disable" />