From 7c087562dfa57b5c7b8a8381d5e54afb7bbb2850 Mon Sep 17 00:00:00 2001 From: yova Date: Thu, 1 Feb 2024 21:52:02 +0100 Subject: [PATCH] cleanup JSI --- .../java/org/wntr/mdeditor/MainActivity.kt | 121 +++++++----------- .../org/wntr/mdeditor/MetadataActivity.kt | 21 +-- app/src/main/res/raw/controller.js | 16 +-- 3 files changed, 60 insertions(+), 98 deletions(-) diff --git a/app/src/main/java/org/wntr/mdeditor/MainActivity.kt b/app/src/main/java/org/wntr/mdeditor/MainActivity.kt index 85e9582..37bcc93 100644 --- a/app/src/main/java/org/wntr/mdeditor/MainActivity.kt +++ b/app/src/main/java/org/wntr/mdeditor/MainActivity.kt @@ -59,53 +59,53 @@ class MainActivity : AppCompatActivity() { autoDownloadFontAwesome: false, theme: "solarized", status: [ - { - className: "editor-statusbar-left", - onUpdate: (el) => { - el.innerHTML = saveStatus() - } - }, - { - className: "displayName", - defaultValue: "None", - onUpdate: (el) => { - el.innerHTML = displayName() - }, - }, "lines", "words", "cursor", - { - className: "editor-statusbar-right", - onUpdate: (el) => { - el.innerHTML = "" - } - } + { + className: "editor-statusbar-left", + onUpdate: (el) => { + el.innerHTML = saveStatus() + } + }, + { + className: "displayName", + defaultValue: "None", + onUpdate: (el) => { + el.innerHTML = displayName() + }, + }, "lines", "words", "cursor", + { + className: "editor-statusbar-right", + onUpdate: (el) => { + el.innerHTML = "" + } + } ], toolbar: [ - { - name: "toggleTheme", - action: toggleTheme, - className: "fa fa-moon", - title: "Toggle Theme" - }, - { - name: "share", - action: shareText, - className: "fa fa-share-nodes", - title: "Share" - },"strikethrough", "horizontal-rule","undo", - { - name: "preview", - action: myPreview, - className: "fa fa-eye", - title: "Preview", - noDisable: true - },"redo", - "bold", "italic","link","code", - { - name: "toggle", - action: toggleBar, - className: "fa fa-expand", - title: "Toggle Bar", - } + { + name: "toggleTheme", + action: toggleTheme, + className: "fa fa-moon", + title: "Toggle Theme" + }, + { + name: "share", + action: shareText, + className: "fa fa-share-nodes", + title: "Share" + },"strikethrough", "horizontal-rule","undo", + { + name: "preview", + action: myPreview, + className: "fa fa-eye", + title: "Preview", + noDisable: true + },"redo", + "bold", "italic","link","code", + { + name: "toggle", + action: toggleBar, + className: "fa fa-expand", + title: "Toggle Bar", + } ] }); """ @@ -141,7 +141,7 @@ class MainActivity : AppCompatActivity() { Log.i(javaClass.simpleName, "intent data on start: ${intent.data.toString()}\nIntent action: ${intent.action}") credManager = CredentialManager(applicationContext) - val webView = findViewById(R.id.mde_webview) + webView = findViewById(R.id.mde_webview) webView.settings.javaScriptEnabled = true webView.setLongClickable(true); @@ -164,19 +164,9 @@ class MainActivity : AppCompatActivity() { webView.loadUrl("file:///android_res/raw/index.html") val jsi = object { - @JavascriptInterface - fun getValue(): String { - return mdeValue - } - - @JavascriptInterface - fun reportChange(value: String) { - Log.i(javaClass.simpleName, value) - } @JavascriptInterface - fun triggerSaveFile(value: String) { - mdeValue = value + fun triggerSaveFile() { saveFile() } @@ -189,11 +179,6 @@ class MainActivity : AppCompatActivity() { return height }*/ - @JavascriptInterface - fun refresh() { - readFile(thisFileUri!!) - } - @JavascriptInterface fun triggerDisplayName(): String { return getDisplayName(applicationContext, thisFileUri) @@ -214,11 +199,6 @@ class MainActivity : AppCompatActivity() { } } - @JavascriptInterface - fun triggerGhost(sharedText: String) { - shareGhost(sharedText, ::sendPost) - } - @JavascriptInterface fun getMdToAppend(): String { val md = mdToAppend @@ -226,13 +206,6 @@ class MainActivity : AppCompatActivity() { return md } - @JavascriptInterface - fun getCursor(): String { - val cursor = JSONObject(JSONObject(metaData.cursor), arrayOf("ch", "line")) - Log.i(javaClass.simpleName,"delivering cursor: $cursor") - return cursor.toString() - } - @JavascriptInterface fun isFullscreen() : Boolean{ return supportActionBar!!.isShowing diff --git a/app/src/main/java/org/wntr/mdeditor/MetadataActivity.kt b/app/src/main/java/org/wntr/mdeditor/MetadataActivity.kt index f32a156..71e0b44 100644 --- a/app/src/main/java/org/wntr/mdeditor/MetadataActivity.kt +++ b/app/src/main/java/org/wntr/mdeditor/MetadataActivity.kt @@ -5,6 +5,7 @@ import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import android.view.View +import org.wntr.mdeditor.MainActivity.Companion.credManager import org.wntr.mdeditor.databinding.ActivityMetadataBinding class MetadataActivity : AppCompatActivity() { @@ -15,25 +16,25 @@ class MetadataActivity : AppCompatActivity() { super.onCreate(savedInstanceState) binding = ActivityMetadataBinding.inflate(layoutInflater) setContentView(binding.root) - binding.title.setText(MainActivity.metaData.get("title") ?: getDisplayName(applicationContext, MainActivity.thisFileUri)) - binding.url.setText(MainActivity.metaData.get("url")) - binding.featureImage.setText(MainActivity.metaData.get("feature_image")) - binding.author.setText(MainActivity.metaData.get("author") ?: MainActivity.credManager.username) + binding.title.setText(metaData.get("title") ?: getDisplayName(applicationContext, thisFileUri)) + binding.url.setText(metaData.get("url")) + binding.featureImage.setText(metaData.get("feature_image")) + binding.author.setText(metaData.get("author") ?: credManager.username) } fun onButtonSaveClick(view: View) { Log.d(javaClass.simpleName, "Getting Metadata:\ntitle:\t${binding.title.text}\nfeature_image:\t${binding.featureImage.text}") - MainActivity.metaData.put("title", binding.title.text.toString()) - MainActivity.metaData.put("feature_image", binding.featureImage.text.toString()) + metaData.put("title", binding.title.text.toString()) + metaData.put("feature_image", binding.featureImage.text.toString()) if (binding.author.text.toString() != MainActivity.credManager.username) { var apiHost: String? = null - if (MainActivity.metaData.get("url") !== null) { - val url = Uri.parse(MainActivity.metaData.get("url")) + if (metaData.get("url") !== null) { + val url = Uri.parse(metaData.get("url")) apiHost = url.scheme + "://" + url.host } else apiHost = MainActivity.credManager.instance - MainActivity.credManager.saveCredentialsToSharedPrefs(Credentials(apiHost, binding.author.text.toString())) + credManager.saveCredentialsToSharedPrefs(Credentials(apiHost, binding.author.text.toString())) } - MainActivity.metaData.put("author", binding.author.text.toString()) + metaData.put("author", binding.author.text.toString()) MainActivity.readOnResume = false finish() } diff --git a/app/src/main/res/raw/controller.js b/app/src/main/res/raw/controller.js index 9bdeab3..4f6930c 100644 --- a/app/src/main/res/raw/controller.js +++ b/app/src/main/res/raw/controller.js @@ -1,14 +1,5 @@ -function onRead() { - easyMDE.codemirror.doc.setValue(Android.getValue()) - easyMDE.codemirror.doc.markClean() - easyMDE.codemirror.focus() - easyMDE.codemirror.doc.setCursor(JSON.parse(Android.getCursor())) - pasteText() -} - function saveFile() { - if (!easyMDE.codemirror.doc.isClean()) Android.triggerSaveFile(easyMDE.value()) - easyMDE.codemirror.doc.markClean() + if (!easyMDE.codemirror.doc.isClean()) Android.triggerSaveFile() } function dispatchCut() { @@ -22,10 +13,7 @@ function myPreview() { saveFile() easyMDE.togglePreview() } -function refresh() { - Android.refresh() - onRead() -} + function displayName() { if (typeof Android !== 'undefined') return Android.triggerDisplayName() else return "NONdroid"