Fix some editor bugs

This commit is contained in:
Jan-Lukas Else 2018-02-12 18:18:16 +01:00
parent 4ccb45df39
commit 459a1b98f8
3 changed files with 11 additions and 2 deletions

View File

@ -8,7 +8,7 @@
<link href="http://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.9/summernote-lite.css" rel="stylesheet"> <link href="http://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.9/summernote-lite.css" rel="stylesheet">
<style> <style>
* { * {
max-width: 100%; max-width: 100% !important;
height: auto; height: auto;
word-break: break-all; word-break: break-all;
word-break: break-word; word-break: break-word;

View File

@ -4,6 +4,7 @@ import android.annotation.SuppressLint
import android.content.Context import android.content.Context
import android.util.AttributeSet import android.util.AttributeSet
import android.webkit.JavascriptInterface import android.webkit.JavascriptInterface
import android.webkit.WebSettings
import android.webkit.WebView import android.webkit.WebView
import android.webkit.WebViewClient import android.webkit.WebViewClient
import im.delight.android.webview.AdvancedWebView import im.delight.android.webview.AdvancedWebView
@ -26,6 +27,7 @@ class Editor : AdvancedWebView {
@SuppressLint("SetJavaScriptEnabled", "AddJavascriptInterface") @SuppressLint("SetJavaScriptEnabled", "AddJavascriptInterface")
private fun init() { private fun init() {
this.settings.javaScriptEnabled = true this.settings.javaScriptEnabled = true
this.settings.cacheMode = WebSettings.LOAD_NO_CACHE
this.addJavascriptInterface(MyJavaScriptInterface(), "android") this.addJavascriptInterface(MyJavaScriptInterface(), "android")
this.settings.loadWithOverviewMode = true this.settings.loadWithOverviewMode = true
this.settings.useWideViewPort = true this.settings.useWideViewPort = true
@ -39,13 +41,17 @@ class Editor : AdvancedWebView {
} }
} }
fun reset() {
this.loadUrl("javascript:$('#summernote').summernote('reset');")
}
fun setText(html: String) { fun setText(html: String) {
webViewClient = object : WebViewClient() { webViewClient = object : WebViewClient() {
override fun onPageFinished(view: WebView, url: String) { override fun onPageFinished(view: WebView, url: String) {
setText(html) setText(html)
} }
} }
this.loadUrl("javascript:$('#summernote').summernote('reset');") reset()
this.loadUrl("javascript:$('#summernote').summernote('code', '" + html.replace("'", "\\'") + "');") this.loadUrl("javascript:$('#summernote').summernote('code', '" + html.replace("'", "\\'") + "');")
} }

View File

@ -67,6 +67,9 @@ class MainActivity : AppCompatActivity(), AdvancedWebView.Listener {
} else { } else {
showError(error) showError(error)
} }
} else {
// Reset
editor?.reset()
} }
} }
} }