From fbd9345cf88d4acb3a2aa8a479bfd8c6a5d8e621 Mon Sep 17 00:00:00 2001 From: Kelvin Date: Tue, 7 Nov 2023 16:04:19 +0100 Subject: [PATCH 1/3] Fix fallback to cache results --- .../subscription/SubscriptionsTaskFetchAlgorithm.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/futo/platformplayer/subscription/SubscriptionsTaskFetchAlgorithm.kt b/app/src/main/java/com/futo/platformplayer/subscription/SubscriptionsTaskFetchAlgorithm.kt index 88b6e454..98d251d1 100644 --- a/app/src/main/java/com/futo/platformplayer/subscription/SubscriptionsTaskFetchAlgorithm.kt +++ b/app/src/main/java/com/futo/platformplayer/subscription/SubscriptionsTaskFetchAlgorithm.kt @@ -79,7 +79,7 @@ abstract class SubscriptionsTaskFetchAlgorithm( if(result != null) { if(result.pager != null) taskResults.add(result); - else if(result.exception != null) { + if(result.exception != null) { val ex = result.exception; if(ex != null) { val nonRuntimeEx = findNonRuntimeException(ex); @@ -198,6 +198,7 @@ abstract class SubscriptionsTaskFetchAlgorithm( Logger.i(StateSubscriptions.TAG, "Channel ${task.sub.channel.name} failed, substituting with cache"); pager = ChannelContentCache.instance.getChannelCachePager(task.sub.channel.url); taskEx = ex; + return@submit SubscriptionTaskResult(task, pager, taskEx); } } return@submit SubscriptionTaskResult(task, null, taskEx); From 6b67cd549fde2f25576d764b19b5bd4febf5dd48 Mon Sep 17 00:00:00 2001 From: Kelvin Date: Tue, 7 Nov 2023 16:24:22 +0100 Subject: [PATCH 2/3] Fix chapters not getting cleared --- .../platformplayer/fragment/mainactivity/main/VideoDetailView.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/VideoDetailView.kt b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/VideoDetailView.kt index 4fbceb39..b89d24ee 100644 --- a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/VideoDetailView.kt +++ b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/VideoDetailView.kt @@ -1051,6 +1051,7 @@ class VideoDetailView : ConstraintLayout { } catch(ex: Throwable) { Logger.e(TAG, "Failed to get chapters", ex); + _player.setChapters(null); /*withContext(Dispatchers.Main) { UIDialogs.toast(context, "Failed to get chapters\n" + ex.message); From f7aa6d006ee798737323521a1cf81d11538881b5 Mon Sep 17 00:00:00 2001 From: Kelvin Date: Tue, 7 Nov 2023 16:46:55 +0100 Subject: [PATCH 3/3] Add header to login activity with current url --- .../activities/LoginActivity.kt | 13 ++++++ app/src/main/res/layout/activity_login.xml | 40 +++++++++++++++++-- 2 files changed, 49 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/futo/platformplayer/activities/LoginActivity.kt b/app/src/main/java/com/futo/platformplayer/activities/LoginActivity.kt index 23040dad..d2bddb7a 100644 --- a/app/src/main/java/com/futo/platformplayer/activities/LoginActivity.kt +++ b/app/src/main/java/com/futo/platformplayer/activities/LoginActivity.kt @@ -7,6 +7,8 @@ import android.webkit.ConsoleMessage import android.webkit.CookieManager import android.webkit.WebChromeClient import android.webkit.WebView +import android.widget.ImageButton +import android.widget.TextView import androidx.appcompat.app.AppCompatActivity import androidx.lifecycle.lifecycleScope import com.futo.platformplayer.* @@ -23,6 +25,8 @@ import kotlinx.serialization.json.Json class LoginActivity : AppCompatActivity() { private lateinit var _webView: WebView; + private lateinit var _textUrl: TextView; + private lateinit var _buttonClose: ImageButton; override fun onCreate(savedInstanceState: Bundle?) { @@ -30,6 +34,13 @@ class LoginActivity : AppCompatActivity() { setContentView(R.layout.activity_login); setNavigationBarColorAndIcons(); + _textUrl = findViewById(R.id.text_url); + _buttonClose = findViewById(R.id.button_close); + _buttonClose.setOnClickListener { + finish(); + } + + _webView = findViewById(R.id.web_view); _webView.settings.javaScriptEnabled = true; CookieManager.getInstance().setAcceptCookie(true); @@ -60,6 +71,8 @@ class LoginActivity : AppCompatActivity() { }; var isFirstLoad = true; webViewClient.onPageLoaded.subscribe { view, url -> + _textUrl.setText(url ?: ""); + if(!isFirstLoad) return@subscribe; isFirstLoad = false; diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 8bffe366..fd35ed06 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -1,11 +1,43 @@ - - + + + + - \ No newline at end of file + android:layout_height="0dp" + app:layout_constraintTop_toBottomOf="@id/header" + app:layout_constraintLeft_toLeftOf="parent" + app:layout_constraintRight_toRightOf="parent" + app:layout_constraintBottom_toBottomOf="parent"/> + \ No newline at end of file