From 6598dff6dfba1f232ebc69b809c9b6d3aa52c055 Mon Sep 17 00:00:00 2001 From: Kai Date: Fri, 6 Jun 2025 23:35:59 -0500 Subject: [PATCH 1/2] add add to watch later setting add https://github.com/futo-org/grayjay-android/issues/2173 Changelog: added --- .../java/com/futo/platformplayer/Settings.kt | 7 +++-- .../futo/platformplayer/UISlideOverlays.kt | 2 ++ .../main/ArticleDetailFragment.kt | 2 ++ .../mainactivity/main/ChannelFragment.kt | 2 ++ .../mainactivity/main/ContentFeedView.kt | 2 ++ .../mainactivity/main/VideoDetailView.kt | 2 ++ .../platformplayer/states/StatePlaylists.kt | 27 +++++++++---------- app/src/main/res/values/strings.xml | 3 +++ 8 files changed, 31 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/com/futo/platformplayer/Settings.kt b/app/src/main/java/com/futo/platformplayer/Settings.kt index e8f4f70a..c265fc40 100644 --- a/app/src/main/java/com/futo/platformplayer/Settings.kt +++ b/app/src/main/java/com/futo/platformplayer/Settings.kt @@ -999,10 +999,13 @@ class Settings : FragmentedStorageFileJson() { @FormField(R.string.playlist_allow_dups, FieldForm.TOGGLE, R.string.playlist_allow_dups_description, 3) var playlistAllowDups: Boolean = true; - @FormField(R.string.enable_polycentric, FieldForm.TOGGLE, R.string.can_be_disabled_when_you_are_experiencing_issues, 4) + @FormField(R.string.add_to_beginning_of_watch_later, FieldForm.TOGGLE, R.string.add_to_beginning_description, 4) + var addToBeginning: Boolean = true; + + @FormField(R.string.enable_polycentric, FieldForm.TOGGLE, R.string.can_be_disabled_when_you_are_experiencing_issues, 5) var polycentricEnabled: Boolean = true; - @FormField(R.string.polycentric_local_cache, FieldForm.TOGGLE, R.string.polycentric_local_cache_description, 5) + @FormField(R.string.polycentric_local_cache, FieldForm.TOGGLE, R.string.polycentric_local_cache_description, 7) var polycentricLocalCache: Boolean = true; } diff --git a/app/src/main/java/com/futo/platformplayer/UISlideOverlays.kt b/app/src/main/java/com/futo/platformplayer/UISlideOverlays.kt index 3db07410..83387081 100644 --- a/app/src/main/java/com/futo/platformplayer/UISlideOverlays.kt +++ b/app/src/main/java/com/futo/platformplayer/UISlideOverlays.kt @@ -1151,6 +1151,8 @@ class UISlideOverlays { call = { if(StatePlaylists.instance.addToWatchLater(SerializedPlatformVideo.fromVideo(video), true)) UIDialogs.appToast("Added to watch later", false); + else + UIDialogs.toast(container.context.getString(R.string.already_in_watch_later)) }), ) ); diff --git a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ArticleDetailFragment.kt b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ArticleDetailFragment.kt index 989a19e1..d052e0f1 100644 --- a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ArticleDetailFragment.kt +++ b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ArticleDetailFragment.kt @@ -778,6 +778,8 @@ class ArticleDetailFragment : MainFragment { view.onAddToWatchLaterClicked.subscribe { a -> if(StatePlaylists.instance.addToWatchLater(SerializedPlatformVideo.fromVideo(content), true)) UIDialogs.toast("Added to watch later\n[${content.name}]") + else + UIDialogs.toast(context.getString(R.string.already_in_watch_later)) } } else if(content is IPlatformPost) { diff --git a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ChannelFragment.kt b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ChannelFragment.kt index 63b60c1f..74116069 100644 --- a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ChannelFragment.kt +++ b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ChannelFragment.kt @@ -226,6 +226,8 @@ class ChannelFragment : MainFragment() { if (content is IPlatformVideo) { if(StatePlaylists.instance.addToWatchLater(SerializedPlatformVideo.fromVideo(content), true)) UIDialogs.toast("Added to watch later\n[${content.name}]") + else + UIDialogs.toast(context.getString(R.string.already_in_watch_later)) } } adapter.onUrlClicked.subscribe { url -> diff --git a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ContentFeedView.kt b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ContentFeedView.kt index cc528a2b..fbb85dac 100644 --- a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ContentFeedView.kt +++ b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/ContentFeedView.kt @@ -86,6 +86,8 @@ abstract class ContentFeedView : FeedViewShow confirmation dialog when deleting media from a playlist Allow duplicate playlist videos Allow adding duplicate videos to playlists + Save new videos to start of watch later + When adding videos to watch later add them to the beginning of the list instead of the end + Already in watch later Enable Polycentric Enable Polycentric Local Caching Caches polycentric results on-device to reduce load times, changing requires app reboot From 99dc50894c849239d560ad1d3f5e8c04bb6adf58 Mon Sep 17 00:00:00 2001 From: Kai Date: Mon, 9 Jun 2025 16:54:24 -0500 Subject: [PATCH 2/2] update text Changelog: changed --- app/src/main/res/values/strings.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 03a21f85..de5148c2 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -466,8 +466,8 @@ Show confirmation dialog when deleting media from a playlist Allow duplicate playlist videos Allow adding duplicate videos to playlists - Save new videos to start of watch later - When adding videos to watch later add them to the beginning of the list instead of the end + Add new videos to the beginning of Watch Later + When adding videos to Watch Later add them to the beginning of the list instead of the end Already in watch later Enable Polycentric Enable Polycentric Local Caching