remove old web reader

This commit is contained in:
Satindar Dhillon 2023-01-18 09:35:53 -08:00
parent 3f1c9d7093
commit a02f1efaf4
5 changed files with 4 additions and 54 deletions

View file

@ -2,6 +2,5 @@ package app.omnivore.omnivore
sealed class Routes(val route: String) {
object Library : Routes("Library")
object WebAppReader : Routes("WebAppReader")
object Settings: Routes("Settings")
}

View file

@ -1,5 +1,6 @@
package app.omnivore.omnivore.dataService
import android.util.Log
import app.omnivore.omnivore.models.ServerSyncStatus
import app.omnivore.omnivore.networking.ReadingProgressParams
import app.omnivore.omnivore.networking.updateReadingProgress
@ -12,6 +13,7 @@ suspend fun DataService.updateWebReadingProgress(jsonString: String) {
val savedItemId = readingProgressParams.id ?: return
withContext(Dispatchers.IO) {
Log.d("sync", "updating progress")
val savedItem = db.savedItemDao().findById(savedItemId) ?: return@withContext
savedItem.readingProgress = readingProgressParams.readingProgressPercent ?: 0.0
savedItem.readingProgressAnchor = readingProgressParams.readingProgressAnchorIndex ?: 0
@ -22,6 +24,7 @@ suspend fun DataService.updateWebReadingProgress(jsonString: String) {
if (isUpdatedOnServer) {
savedItem.serverSyncStatus = ServerSyncStatus.IS_SYNCED.rawValue
Log.d("sync", "saved item progress: ${savedItem.readingProgress}")
db.savedItemDao().update(savedItem)
}
}

View file

@ -1,45 +0,0 @@
package app.omnivore.omnivore.ui.reader
import android.annotation.SuppressLint
import android.view.ViewGroup
import android.webkit.CookieManager
import android.webkit.WebView
import android.webkit.WebViewClient
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.viewinterop.AndroidView
import app.omnivore.omnivore.BuildConfig
@SuppressLint("SetJavaScriptEnabled")
@Composable
fun ArticleWebView(slug: String, authCookieString: String) {
WebView.setWebContentsDebuggingEnabled(true)
val url = BuildConfig.OMNIVORE_WEB_URL + "/app/me/$slug"
AndroidView(factory = {
WebView(it).apply {
layoutParams = ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT
)
settings.javaScriptEnabled = true
settings.allowContentAccess = true
settings.allowFileAccess = true
settings.domStorageEnabled = true
webViewClient = object : WebViewClient() {
}
CookieManager.getInstance().setAcceptThirdPartyCookies(this, true)
CookieManager.getInstance().setAcceptCookie(true)
CookieManager.getInstance().setCookie(BuildConfig.OMNIVORE_API_URL, authCookieString)
CookieManager.getInstance().setCookie(BuildConfig.OMNIVORE_WEB_URL, authCookieString) {
loadUrl(url)
}
}
}, update = {
it.loadUrl(url)
})
}

View file

@ -137,6 +137,7 @@ class WebReaderViewModel @Inject constructor(
}
}
"articleReadingProgress" -> {
Log.d("sync", "articleReadingProgressMesssageReceived")
viewModelScope.launch {
dataService.updateWebReadingProgress(jsonString)
}

View file

@ -79,14 +79,6 @@ fun PrimaryNavigator(
)
}
// TODO: delete this route and views
composable("WebAppReader/{slug}") {
ArticleWebView(
it.arguments?.getString("slug") ?: "",
authCookieString = loginViewModel.getAuthCookieString() ?: ""
)
}
composable("WebReader/{slug}") {
webReaderViewModel.reset() // clear previously loaded item