aboutsummaryrefslogtreecommitdiff
path: root/app/src/main
diff options
context:
space:
mode:
authorAllan Wang <me@allanwang.ca>2019-08-06 23:01:43 -0700
committerAllan Wang <me@allanwang.ca>2019-08-06 23:01:43 -0700
commite64c30732b5156144f18db41fcf5a713b1d11deb (patch)
tree175e04dfb75fee85bc3bba7c30c7a0fde29e2308 /app/src/main
parent5515d6dd562a28d576a87bdc102914a410b8490c (diff)
downloadfrost-e64c30732b5156144f18db41fcf5a713b1d11deb.tar.gz
frost-e64c30732b5156144f18db41fcf5a713b1d11deb.tar.bz2
frost-e64c30732b5156144f18db41fcf5a713b1d11deb.zip
Fix up menu web view look
Diffstat (limited to 'app/src/main')
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/injectors/JsInjector.kt13
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClients.kt21
-rw-r--r--app/src/main/res/values/strings_pref_behaviour.xml9
3 files changed, 29 insertions, 14 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/injectors/JsInjector.kt b/app/src/main/kotlin/com/pitchedapps/frost/injectors/JsInjector.kt
index 00c7bcfc..13032479 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/injectors/JsInjector.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/injectors/JsInjector.kt
@@ -52,14 +52,19 @@ class JsBuilder {
val cssMin = css.replace(Regex("\\s*\n\\s*"), "")
append("var a=document.createElement('style');")
append("a.innerHTML='$cssMin';")
- if (tag != null) append("a.id='$tag';")
+ if (tag != null) {
+ append("a.id='$tag';")
+ }
append("document.head.appendChild(a);")
}
- if (js.isNotBlank())
+ if (js.isNotBlank()) {
append(js)
+ }
}
var content = builder.append("}()").toString()
- if (tag != null) content = singleInjector(tag, content)
+ if (tag != null) {
+ content = singleInjector(tag, content)
+ }
return content
}
@@ -101,4 +106,4 @@ fun FrostWebViewClient.jsInject(vararg injectors: InjectorContract) = web.jsInje
class JsInjector(val function: String) : InjectorContract {
override fun inject(webView: WebView) =
webView.evaluateJavascript(function, null)
-}
+} \ No newline at end of file
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClients.kt b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClients.kt
index ecedc997..025119aa 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClients.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClients.kt
@@ -91,7 +91,7 @@ open class FrostWebViewClient(val web: FrostWebView) : BaseWebViewClient() {
override fun onPageCommitVisible(view: WebView, url: String?) {
super.onPageCommitVisible(view, url)
injectBackgroundColor()
- if (url.isFacebookUrl)
+ if (url.isFacebookUrl) {
view.jsInject(
// CssHider.CORE,
CssHider.HEADER,
@@ -111,8 +111,9 @@ open class FrostWebViewClient(val web: FrostWebView) : BaseWebViewClient() {
JsAssets.CONTEXT_A,
JsAssets.MEDIA
)
- else
+ } else {
refresh.offer(false)
+ }
}
override fun onPageFinished(view: WebView, url: String?) {
@@ -212,19 +213,27 @@ class FrostWebViewClientMenu(web: FrostWebView) : FrostWebViewClient(web) {
override fun onPageFinished(view: WebView, url: String?) {
super.onPageFinished(view, url)
- if (url == null) return
- if (url.shouldInjectMenu) jsInject(JsAssets.MENU)
+ if (url == null) {
+ return
+ }
+ if (url.shouldInjectMenu) {
+ jsInject(JsAssets.MENU)
+ }
}
override fun emit(flag: Int) {
super.emit(flag)
when (flag) {
- EMIT_FINISH -> super.injectAndFinish()
+ EMIT_FINISH -> {
+ super.injectAndFinish()
+ }
}
}
override fun onPageFinishedActions(url: String) {
v { "Should inject ${url.shouldInjectMenu}" }
- if (!url.shouldInjectMenu) injectAndFinish()
+ if (!url.shouldInjectMenu) {
+ injectAndFinish()
+ }
}
}
diff --git a/app/src/main/res/values/strings_pref_behaviour.xml b/app/src/main/res/values/strings_pref_behaviour.xml
index 890a7531..d7043aa7 100644
--- a/app/src/main/res/values/strings_pref_behaviour.xml
+++ b/app/src/main/res/values/strings_pref_behaviour.xml
@@ -19,10 +19,11 @@
<string name="force_message_bottom_desc">When loading a message thread, trigger a scroll to the bottom of the page rather than loading the page as is.</string>
<string name="enable_pip">Enable PIP</string>
<string name="enable_pip_desc">Enable picture in picture videos</string>
- <string name="web_only">Web Only</string>
- <string name="web_only_desc">Having troubles? Enable to use web exclusive features. All parsing and background services will be disabled.</string>
- <string name="leave_web_only_title">Leave web only mode</string>
- <string name="leave_web_only_desc">Currently in web only mode. Would you like to disable it to continue?</string>
+ <!-- Disable translation as this is still experimental -->
+ <string name="web_only" translatable="false">Web Only</string>
+ <string name="web_only_desc" translatable="false">Having troubles? Enable to use web exclusive features. All parsing and background services will be disabled.</string>
+ <string name="leave_web_only_title" translatable="false">Leave web only mode</string>
+ <string name="leave_web_only_desc" translatable="false">Currently in web only mode. Would you like to disable it to continue?</string>
<string name="autoplay_settings">Autoplay Settings</string>
<string name="autoplay_settings_desc">Open Facebook\'s auto play settings. Note that it must be disabled for PIP to work.</string>
<string name="exit_confirmation">Exit Confirmation</string>