From 4b92fca5db45f1c5477995056bb6b11a2c876e76 Mon Sep 17 00:00:00 2001 From: Allan Wang Date: Sun, 23 Feb 2020 18:51:01 -0800 Subject: Update theme and alert cancellation --- .../com/pitchedapps/frost/web/FrostChromeClients.kt | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'app/src/main/kotlin') diff --git a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostChromeClients.kt b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostChromeClients.kt index bdaf22ba..43b7071e 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostChromeClients.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostChromeClients.kt @@ -48,6 +48,7 @@ import kotlinx.coroutines.channels.SendChannel */ class FrostChromeClient(web: FrostWebView) : WebChromeClient() { + private val refresh: SendChannel = web.parent.refreshChannel private val progress: SendChannel = web.parent.progressChannel private val title: SendChannel = web.parent.titleChannel private val activity = (web.context as? ActivityContract) @@ -83,6 +84,12 @@ class FrostChromeClient(web: FrostWebView) : WebChromeClient() { return activity != null } + private fun JsResult.frostCancel() { + cancel() + refresh.offer(false) + progress.offer(100) + } + override fun onJsAlert( view: WebView, url: String, @@ -93,7 +100,7 @@ class FrostChromeClient(web: FrostWebView) : WebChromeClient() { title(text = url) message(text = message) positiveButton { result.confirm() } - onDismiss { result.cancel() } + onDismiss { result.frostCancel() } } return true } @@ -108,8 +115,8 @@ class FrostChromeClient(web: FrostWebView) : WebChromeClient() { title(text = url) message(text = message) positiveButton { result.confirm() } - negativeButton { result.cancel() } - onDismiss { result.cancel() } + negativeButton { result.frostCancel() } + onDismiss { result.frostCancel() } } return true } @@ -124,8 +131,8 @@ class FrostChromeClient(web: FrostWebView) : WebChromeClient() { title(text = url) message(text = message) positiveButton { result.confirm() } - negativeButton { result.cancel() } - onDismiss { result.cancel() } + negativeButton { result.frostCancel() } + onDismiss { result.frostCancel() } } return true } @@ -144,8 +151,8 @@ class FrostChromeClient(web: FrostWebView) : WebChromeClient() { result.confirm(charSequence.toString()) } // positive button added through input - negativeButton { result.cancel() } - onDismiss { result.cancel() } + negativeButton { result.frostCancel() } + onDismiss { result.frostCancel() } } return true } -- cgit v1.2.3