aboutsummaryrefslogtreecommitdiff
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
parent5515d6dd562a28d576a87bdc102914a410b8490c (diff)
downloadfrost-e64c30732b5156144f18db41fcf5a713b1d11deb.tar.gz
frost-e64c30732b5156144f18db41fcf5a713b1d11deb.tar.bz2
frost-e64c30732b5156144f18db41fcf5a713b1d11deb.zip
Fix up menu web view look
-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
-rw-r--r--app/src/web/scss/core/_core_bg.scss2
-rw-r--r--app/src/web/ts/menu.ts3
5 files changed, 33 insertions, 15 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>
diff --git a/app/src/web/scss/core/_core_bg.scss b/app/src/web/scss/core/_core_bg.scss
index 17c93b7b..2c76cfaf 100644
--- a/app/src/web/scss/core/_core_bg.scss
+++ b/app/src/web/scss/core/_core_bg.scss
@@ -6,7 +6,7 @@ html, body, :root, #root, #header, #MComposer, ._1upc, input, ._2f9r, ._59e9, ._
._5lp5, .container, .subpage, ._5n_f, #static_templates, ._22_8, ._1t4h, ._uoq, ._3qdh, ._8ca, ._3h8i,
._6-l ._2us7, ._6-l ._6-p:not([style*="background-image:"]), ._333v, div.sharerSelector, ._529j, ._305j, ._1pph, ._3t_l, ._4pvz,
._1g05, .acy, ._51-g, ._533c, ._ib-, .sharerAttachmentEmpty, .sharerBottomWrapper, ._24e1,
-._3bg5 ._56do, ._5hfh, ._52e-, .mQuestionsPollResultsBar, ._5hoc, ._5oxw, ._32_4, ._1hiz,
+._3bg5 ._56do, ._5hfh, ._52e-, .mQuestionsPollResultsBar, ._5hoc, ._5oxw, ._32_4, ._1hiz, ._53_-,
._38do, .bo, .cq, ._234-, ._a-5, ._2zh4, ._15ks, ._3oyc, ._36dc, ._3iyw ._3iyx, ._6bes, ._55wo, ._4-dy,
.tlBody, #timelineBody, .timelineX, .timeline, .feed, .tlPrelude, .tlFeedPlaceholder, ._4_d0,
.al, ._1gkq, ._5c5b, ._1qxg, ._5luf, ._2new, ._cld, ._3zvb, ._2nk0, .btnD, .btnI, ._2bdb, ._3ci9,
diff --git a/app/src/web/ts/menu.ts b/app/src/web/ts/menu.ts
index 6f9dbf16..b26e9cc9 100644
--- a/app/src/web/ts/menu.ts
+++ b/app/src/web/ts/menu.ts
@@ -20,6 +20,9 @@
return
}
+ /*
+ * Required to remove height restrictions
+ */
const y = new MutationObserver(() => {
viewport.removeAttribute('style');
root.removeAttribute('style');