From 9982245ff2833a8de7f82966ce8bf3706955fc78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ho=C3=A0ng=20Gia=20B=E1=BA=A3o?= <70064328+YT-Advanced@users.noreply.github.com> Date: Wed, 4 Dec 2024 09:49:20 +0700 Subject: [PATCH] feat(YouTube/Overlay buttons): replace `time-ordered playlist` button with `play all` button (#96) * feat(YouTube): Add `Play All` Overlay buttons * Fix * Reorder * fix compile error * chore: clarify description * chore: add dependency * chore: use lowercase letters, same as other buttons --------- Co-authored-by: inotia00 <108592928+inotia00@users.noreply.github.com> --- .../visual/VisualPreferencesIconsPatch.kt | 2 +- .../overlaybuttons/OverlayButtonsPatch.kt | 6 ++-- ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin .../youtube_controls_bottom_ui_container.xml | 4 +-- ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin ...utton.png => revanced_play_all_button.png} | Bin .../youtube/settings/host/values/arrays.xml | 28 ++++++++++++++++++ .../youtube/settings/host/values/strings.xml | 23 ++++++++++++-- .../youtube/settings/xml/revanced_prefs.xml | 7 +++-- ...revanced_overlay_button_play_all_icon.xml} | 0 22 files changed, 58 insertions(+), 12 deletions(-) rename src/main/resources/youtube/overlaybuttons/bold/drawable-hdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/bold/drawable-mdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/bold/drawable-xhdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/bold/drawable-xxxhdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/rounded/drawable-hdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/rounded/drawable-mdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/rounded/drawable-xhdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/rounded/drawable-xxxhdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/thin/drawable-hdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/thin/drawable-mdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/thin/drawable-xhdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/overlaybuttons/thin/drawable-xxxhdpi/{revanced_time_ordered_playlist_button.png => revanced_play_all_button.png} (100%) rename src/main/resources/youtube/visual/shared/drawable/{revanced_overlay_button_time_ordered_playlist_icon.xml => revanced_overlay_button_play_all_icon.xml} (100%) diff --git a/src/main/kotlin/app/revanced/patches/youtube/layout/visual/VisualPreferencesIconsPatch.kt b/src/main/kotlin/app/revanced/patches/youtube/layout/visual/VisualPreferencesIconsPatch.kt index 46a2abeb2..123eddf2e 100644 --- a/src/main/kotlin/app/revanced/patches/youtube/layout/visual/VisualPreferencesIconsPatch.kt +++ b/src/main/kotlin/app/revanced/patches/youtube/layout/visual/VisualPreferencesIconsPatch.kt @@ -304,8 +304,8 @@ object VisualPreferencesIconsPatch : BaseResourcePatch( "revanced_overlay_button_copy_video_url_timestamp", "revanced_overlay_button_mute_volume", "revanced_overlay_button_external_downloader", + "revanced_overlay_button_play_all", "revanced_overlay_button_speed_dialog", - "revanced_overlay_button_time_ordered_playlist", "revanced_overlay_button_whitelist", "revanced_preference_screen_account_menu", "revanced_preference_screen_action_buttons", diff --git a/src/main/kotlin/app/revanced/patches/youtube/player/overlaybuttons/OverlayButtonsPatch.kt b/src/main/kotlin/app/revanced/patches/youtube/player/overlaybuttons/OverlayButtonsPatch.kt index b2a31d9c5..9024804a2 100644 --- a/src/main/kotlin/app/revanced/patches/youtube/player/overlaybuttons/OverlayButtonsPatch.kt +++ b/src/main/kotlin/app/revanced/patches/youtube/player/overlaybuttons/OverlayButtonsPatch.kt @@ -109,8 +109,8 @@ object OverlayButtonsPatch : BaseResourcePatch( "CopyVideoUrlTimestamp;", "MuteVolume;", "ExternalDownload;", + "PlayAll;", "SpeedDialog;", - "TimeOrderedPlaylist;", "Whitelists;" ).forEach { className -> PlayerControlsPatch.hookBottomControlButton("$OVERLAY_BUTTONS_PATH/$className") @@ -145,13 +145,13 @@ object OverlayButtonsPatch : BaseResourcePatch( "quantum_ic_fullscreen_exit_white_24.png", "quantum_ic_fullscreen_grey600_24.png", "quantum_ic_fullscreen_white_24.png", - "revanced_time_ordered_playlist_button.png", "revanced_copy_button.png", "revanced_copy_timestamp_button.png", "revanced_download_button.png", + "revanced_play_all_button.png", + "revanced_speed_button.png", "revanced_volume_muted_button.png", "revanced_volume_unmuted_button.png", - "revanced_speed_button.png", "revanced_whitelist_button.png", "yt_fill_arrow_repeat_white_24.png", "yt_outline_arrow_repeat_1_white_24.png", diff --git a/src/main/resources/youtube/overlaybuttons/bold/drawable-hdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-hdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/bold/drawable-hdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-hdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/bold/drawable-mdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-mdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/bold/drawable-mdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-mdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/bold/drawable-xhdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xhdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/bold/drawable-xhdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xhdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/bold/drawable-xxxhdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxxhdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/bold/drawable-xxxhdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxxhdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-hdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-hdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/rounded/drawable-hdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/rounded/drawable-hdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-mdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-mdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/rounded/drawable-mdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/rounded/drawable-mdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xhdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xhdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/rounded/drawable-xhdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/rounded/drawable-xhdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxxhdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxxhdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/rounded/drawable-xxxhdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/rounded/drawable-xxxhdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/shared/host/layout/youtube_controls_bottom_ui_container.xml b/src/main/resources/youtube/overlaybuttons/shared/host/layout/youtube_controls_bottom_ui_container.xml index dce423b9c..f184aac3b 100644 --- a/src/main/resources/youtube/overlaybuttons/shared/host/layout/youtube_controls_bottom_ui_container.xml +++ b/src/main/resources/youtube/overlaybuttons/shared/host/layout/youtube_controls_bottom_ui_container.xml @@ -4,8 +4,8 @@ - - + + diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-hdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-hdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/thin/drawable-hdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/thin/drawable-hdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-mdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-mdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/thin/drawable-mdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/thin/drawable-mdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xhdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xhdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/thin/drawable-xhdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/thin/drawable-xhdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxxhdpi/revanced_time_ordered_playlist_button.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxxhdpi/revanced_play_all_button.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/thin/drawable-xxxhdpi/revanced_time_ordered_playlist_button.png rename to src/main/resources/youtube/overlaybuttons/thin/drawable-xxxhdpi/revanced_play_all_button.png diff --git a/src/main/resources/youtube/settings/host/values/arrays.xml b/src/main/resources/youtube/settings/host/values/arrays.xml index 2c26e39ff..9468b28a6 100644 --- a/src/main/resources/youtube/settings/host/values/arrays.xml +++ b/src/main/resources/youtube/settings/host/values/arrays.xml @@ -135,6 +135,34 @@ https://github.com/deniscerri/ytdlnis/releases/latest + + @string/revanced_overlay_button_play_all_type_entry_1 + @string/revanced_overlay_button_play_all_type_entry_2 + @string/revanced_overlay_button_play_all_type_entry_3 + @string/revanced_overlay_button_play_all_type_entry_4 + @string/revanced_overlay_button_play_all_type_entry_5 + @string/revanced_overlay_button_play_all_type_entry_6 + @string/revanced_overlay_button_play_all_type_entry_7 + @string/revanced_overlay_button_play_all_type_entry_8 + @string/revanced_overlay_button_play_all_type_entry_9 + @string/revanced_overlay_button_play_all_type_entry_10 + @string/revanced_overlay_button_play_all_type_entry_11 + @string/revanced_overlay_button_play_all_type_entry_12 + + + ALL_CONTENTS_WITH_TIME_DESCENDING + ALL_CONTENTS_WITH_POPULAR_DESCENDING + VIDEOS_ONLY_WITH_TIME_DESCENDING + VIDEOS_ONLY_WITH_POPULAR_DESCENDING + SHORTS_ONLY_WITH_TIME_DESCENDING + SHORTS_ONLY_WITH_POPULAR_DESCENDING + LIVESTREAMS_ONLY_WITH_TIME_DESCENDING + LIVESTREAMS_ONLY_WITH_POPULAR_DESCENDING + ALL_MEMBERSHIPS_CONTENTS + MEMBERSHIPS_VIDEOS_ONLY + MEMBERSHIPS_SHORTS_ONLY + MEMBERSHIPS_LIVESTREAMS_ONLY + @string/revanced_miniplayer_type_entry_1 @string/revanced_miniplayer_type_entry_2 diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index 3163372d1..929110503 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -1031,9 +1031,26 @@ Tap and hold to reset playback speed to 1.0x. Tap and hold again to reset back t "Tap to open whitelist dialog. Tap and hold to open whitelist setting dialog. - Show time-ordered playlist button - "Tap to generate a playlist of all videos from channel from oldest to newest. -Tap and hold to undo." + Show play all button + "Tap to generate a playlist of all videos from channel. +Tap and hold to undo. + +Info: +• May not work on livestreams." + Generate playlist mode + All contents (Sort by time) + All contents (Sort by popular) + Videos only (Sort by time) + Videos only (Sort by popular) + Shorts only (Sort by time) + Shorts only (Sort by popular) + Streamed videos only (Sort by time) + Streamed videos only (Sort by popular) + All Members only contents + Members only videos + Members only shorts + Members only livestreams + Unable to generate playlist due to channel id mismatch. Channel whitelist Check or remove the list of channels added to the whitelist. diff --git a/src/main/resources/youtube/settings/xml/revanced_prefs.xml b/src/main/resources/youtube/settings/xml/revanced_prefs.xml index c5e4ac964..8c7a1ca2d 100644 --- a/src/main/resources/youtube/settings/xml/revanced_prefs.xml +++ b/src/main/resources/youtube/settings/xml/revanced_prefs.xml @@ -427,11 +427,12 @@ - - - + + + + SETTINGS: OVERLAY_BUTTONS -->