aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/kotlin/com/pitchedapps/frost/web
diff options
context:
space:
mode:
authorAllan Wang <me@allanwang.ca>2017-06-06 23:24:06 -0700
committerAllan Wang <me@allanwang.ca>2017-06-06 23:24:06 -0700
commit605a08c2e2e8634263d7626cf7471310add3acb2 (patch)
tree7652ecc94a4969688ce85ed94ab9233117d78a40 /app/src/main/kotlin/com/pitchedapps/frost/web
parent067ea15188f20fa268255153e35c2df732fdffee (diff)
downloadfrost-605a08c2e2e8634263d7626cf7471310add3acb2.tar.gz
frost-605a08c2e2e8634263d7626cf7471310add3acb2.tar.bz2
frost-605a08c2e2e8634263d7626cf7471310add3acb2.zip
Preparing preferences
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/web')
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/web/FrostJSI.kt10
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClient.kt2
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewCore.kt4
3 files changed, 12 insertions, 4 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostJSI.kt b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostJSI.kt
index 045c180f..66f638af 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostJSI.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostJSI.kt
@@ -3,15 +3,21 @@ package com.pitchedapps.frost.web
import android.content.Context
import android.webkit.JavascriptInterface
import com.pitchedapps.frost.LoginActivity
+import com.pitchedapps.frost.MainActivity
import com.pitchedapps.frost.SelectorActivity
import com.pitchedapps.frost.dbflow.CookieModel
+import com.pitchedapps.frost.utils.cookies
import com.pitchedapps.frost.utils.launchNewTask
import com.pitchedapps.frost.utils.launchWebOverlay
/**
* Created by Allan Wang on 2017-06-01.
*/
-class FrostJSI(val context: Context, val cookies: ArrayList<CookieModel>) {
+class FrostJSI(val context: Context) {
+
+ val cookies: ArrayList<CookieModel>
+ get() = (context as? MainActivity)?.cookies() ?: arrayListOf()
+
@JavascriptInterface
fun loadUrl(url: String) = context.launchWebOverlay(url)
@@ -20,7 +26,7 @@ class FrostJSI(val context: Context, val cookies: ArrayList<CookieModel>) {
if (cookies.isNotEmpty())
context.launchNewTask(SelectorActivity::class.java, cookies)
else
- context.launchNewTask(LoginActivity::class.java, clearStack = false)
+ context.launchNewTask(LoginActivity::class.java)
}
} \ No newline at end of file
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClient.kt b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClient.kt
index 37d10015..922d527b 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClient.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClient.kt
@@ -48,7 +48,7 @@ class FrostWebViewClient(val refreshObservable: Subject<Boolean>) : WebViewClien
if (c is MainActivity && c.cookies().isNotEmpty())
c.launchNewTask(SelectorActivity::class.java, c.cookies())
else
- c.launchNewTask(LoginActivity::class.java, clearStack = false)
+ c.launchNewTask(LoginActivity::class.java)
}
override fun onPageFinished(view: WebView, url: String) {
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewCore.kt b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewCore.kt
index 6477deda..146f5a33 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewCore.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewCore.kt
@@ -11,9 +11,10 @@ import android.util.AttributeSet
import android.view.MotionEvent
import android.view.View
import android.view.animation.DecelerateInterpolator
-import android.webkit.CookieManager
import android.webkit.WebView
+import com.pitchedapps.frost.MainActivity
import com.pitchedapps.frost.utils.L
+import com.pitchedapps.frost.utils.cookies
import io.reactivex.Scheduler
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.disposables.Disposable
@@ -56,6 +57,7 @@ class FrostWebViewCore @JvmOverloads constructor(
setLayerType(View.LAYER_TYPE_HARDWARE, null)
setWebViewClient(FrostWebViewClient(refreshObservable))
setWebChromeClient(FrostChromeClient(progressObservable, titleObservable))
+ addJavascriptInterface(FrostJSI(context), "Frost")
}
override fun loadUrl(url: String?) {