mirror of
https://github.com/leanote/leanote-android.git
synced 2026-01-14 04:03:41 +08:00
add title div; fix a bug that icon didn’t changed while toggling header
This commit is contained in:
@@ -6,18 +6,24 @@
|
||||
<meta name=viewport content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
||||
<title>Markdown Editor</title>
|
||||
<link href="quill.bubble.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
#title {outline: 0px solid transparent;}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="editor"></div>
|
||||
<div contenteditable="false" id="title"></div>
|
||||
<hr/>
|
||||
<div id="content"></div>
|
||||
</body>
|
||||
<script src="quill.js" type="text/javascript"></script>
|
||||
<!-- Initialize Quill editor -->
|
||||
<script>
|
||||
var nativeCallbackHandler;
|
||||
var titleDiv = document.getElementById('title');
|
||||
var options = {
|
||||
theme: 'bubble'
|
||||
};
|
||||
var quill = new Quill('#editor', options);
|
||||
var quill = new Quill('#content', options);
|
||||
quill.on('text-change', function(delta, oldDelta, source) {
|
||||
for (var i = 0; i < delta.ops.length; i++) {
|
||||
var operation = delta.ops[i];
|
||||
@@ -95,11 +101,13 @@
|
||||
function enable() {
|
||||
document.addEventListener("selectionchange", selectionChangeHandler, false);
|
||||
quill.enable();
|
||||
titleDiv.setAttribute("contenteditable", true);
|
||||
}
|
||||
|
||||
function disable() {
|
||||
document.removeEventListener("selectionchange", selectionChangeHandler, false);
|
||||
quill.disable();
|
||||
titleDiv.setAttribute("contenteditable", false);
|
||||
}
|
||||
|
||||
function insertImage(title, url) {
|
||||
@@ -117,5 +125,13 @@
|
||||
{'link':url});
|
||||
}
|
||||
}
|
||||
|
||||
function getTitle() {
|
||||
return titleDiv.innerHTML;
|
||||
}
|
||||
|
||||
function setTitle(title) {
|
||||
return titleDiv.innerHTML = title;
|
||||
}
|
||||
</script>
|
||||
</html>
|
||||
|
||||
@@ -59,12 +59,12 @@ public class RichTextEditor extends Editor implements OnJsEditorStateChangedList
|
||||
|
||||
@Override
|
||||
public void setTitle(String title) {
|
||||
execJs(String.format(Locale.US, "ZSSEditor.getField('zss_field_title').setPlainText('%s');", HtmlUtils.escapeHtml(title)));
|
||||
execJs(String.format(Locale.US, "setTitle('%s');", HtmlUtils.escapeHtml(title)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTitle() {
|
||||
return HtmlUtils.unescapeHtml(new JsRunner().get(mWebView, "ZSSEditor.getField('zss_field_title').getHTML();"));
|
||||
return HtmlUtils.unescapeHtml(new JsRunner().get(mWebView, "getTitle();"));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -313,6 +313,9 @@ public class EditorFragment extends Fragment implements Editor.EditorListener {
|
||||
if (mQuoteBtn != null) {
|
||||
mQuoteBtn.setChecked(false);
|
||||
}
|
||||
if (mHeadingBtn != null) {
|
||||
mHeadingBtn.setChecked(false);
|
||||
}
|
||||
for (Map.Entry<Editor.Style, Boolean> entry : formatStatus.entrySet()) {
|
||||
boolean enabled = entry.getValue();
|
||||
switch (entry.getKey()) {
|
||||
|
||||
Reference in New Issue
Block a user