diff --git a/app/src/main/java/telegra/ph/MainActivity.kt b/app/src/main/java/telegra/ph/MainActivity.kt index 579af85..723a6e2 100644 --- a/app/src/main/java/telegra/ph/MainActivity.kt +++ b/app/src/main/java/telegra/ph/MainActivity.kt @@ -2,10 +2,10 @@ package telegra.ph import android.content.Intent import android.graphics.Bitmap +import android.os.Build import android.os.Bundle -import android.support.v7.app.AlertDialog import android.support.v7.app.AppCompatActivity -import android.text.Html +import android.view.ActionMode import android.view.Menu import android.view.MenuItem import com.afollestad.materialdialogs.MaterialDialog @@ -80,6 +80,18 @@ class MainActivity : AppCompatActivity(), AdvancedWebView.Listener { else super.onBackPressed() } + override fun onActionModeStarted(mode: ActionMode?) { + val menu = mode?.menu + mode?.menuInflater?.inflate(R.menu.formatting, menu) + menu?.findItem(R.id.format)?.apply { + setOnMenuItemClickListener { + executeJavaScript("javascript:showFormatTooltip();") + false + } + } + super.onActionModeStarted(mode) + } + override fun onCreateOptionsMenu(menu: Menu): Boolean { super.onCreateOptionsMenu(menu) menuInflater.inflate(R.menu.activity_main, menu) @@ -108,4 +120,12 @@ class MainActivity : AppCompatActivity(), AdvancedWebView.Listener { } } + private fun executeJavaScript(code: String) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { + webView?.evaluateJavascript(code, null) + } else { + webView?.loadUrl(code) + } + } + } diff --git a/app/src/main/res/menu/formatting.xml b/app/src/main/res/menu/formatting.xml new file mode 100644 index 0000000..53ebb5a --- /dev/null +++ b/app/src/main/res/menu/formatting.xml @@ -0,0 +1,8 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 40da6a7..4801d28 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -5,4 +5,5 @@ How to use text formatting?You can use formatting like bold, italics and so on at least on Lollipop and above by double tapping the text.

The app only shows strange things!

It\'s not verified, that the app will work on devices with KitKat or lower. In Lollipop Google introduced a Chrome based and updatable WebView with more features and fixes. I\'m sorry! But in December \'16 Telegram will publish docs for the Telegraph API, so I\'ll be able to create a native app instead of a wrapper. Be patient!]]>
+ Format