From 329df2ec5decf628e156d825dda7cb8348f9a745 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Thu, 16 May 2024 17:26:57 +0300 Subject: [PATCH 01/15] feat(YouTube): Add `Hide live chat messages` --- src/main/resources/youtube/settings/host/values/strings.xml | 3 +++ src/main/resources/youtube/settings/xml/revanced_prefs.xml | 1 + 2 files changed, 4 insertions(+) diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index 724698d660..7275b94c05 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -489,6 +489,9 @@ Note: Hide info panels Info panels are hidden. Info panels are shown. + Hide live chat messages + Live chat messages are hidden.\n\nThis setting applies to Shorts live videos too. + Live chat messages are shown.\n\nThis setting applies to Shorts live videos too. Hide medical panels Medical panels are hidden. Medical panels are shown. diff --git a/src/main/resources/youtube/settings/xml/revanced_prefs.xml b/src/main/resources/youtube/settings/xml/revanced_prefs.xml index efc1225715..a70c1f3c9c 100644 --- a/src/main/resources/youtube/settings/xml/revanced_prefs.xml +++ b/src/main/resources/youtube/settings/xml/revanced_prefs.xml @@ -400,6 +400,7 @@ + From f46777b4a4b1624b199a262dcd97b3559bebc412 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Thu, 16 May 2024 18:06:34 +0300 Subject: [PATCH 02/15] feat(YouTube/Overlay buttons): Add ability to reset speed back to default on second tap and hold --- src/main/resources/youtube/settings/host/values/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index 7275b94c05..c400c68142 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -806,7 +806,7 @@ Tap and hold to copy video timestamp." Show speed dialog button "Tap to open speed dialog. Tap and hold to set playback speed to 1.0x." - Playback speed reseted (1.0x). + Playback speed reset: %sx. Tap and hold to change button state. External downloader package name From fc1153f1e589a42db3feb907731de3ee9e275449 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Thu, 16 May 2024 18:21:31 +0300 Subject: [PATCH 03/15] feat(YouTube/Overlay buttons): Add `Time-ordered playlist` from channel videos --- .../host/layout/youtube_controls_bottom_ui_container.xml | 3 ++- src/main/resources/youtube/settings/host/values/strings.xml | 3 +++ src/main/resources/youtube/settings/xml/revanced_prefs.xml | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) 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 138d7b8d83..55342a706a 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 @@ -2,7 +2,8 @@ - + + diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index c400c68142..5025c7a5f7 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -807,6 +807,9 @@ Tap and hold to copy video timestamp." "Tap to open speed dialog. Tap and hold to set playback speed to 1.0x." Playback speed reset: %sx. + Show time-ordered playlist button + "Tap to generate a playlist of all videos from channel from oldest to newest. +Tap and hold to undo." Tap and hold to change button state. External downloader package name diff --git a/src/main/resources/youtube/settings/xml/revanced_prefs.xml b/src/main/resources/youtube/settings/xml/revanced_prefs.xml index a70c1f3c9c..bc8c1ff2ef 100644 --- a/src/main/resources/youtube/settings/xml/revanced_prefs.xml +++ b/src/main/resources/youtube/settings/xml/revanced_prefs.xml @@ -343,6 +343,7 @@ + SETTINGS: OVERLAY_BUTTONS --> From 60cfec39b79d12370e946bfd9507ccd9d8e43b2c Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Thu, 16 May 2024 18:51:33 +0300 Subject: [PATCH 04/15] feat(YouTube/Overlay buttons): Add more icon types and selectable bottom margin --- .../overlaybuttons/OverlayButtonsPatch.kt | 274 +++++++++--------- .../ic_fullscreen_vertical_button.png | Bin 547 -> 534 bytes .../drawable-xxhdpi/ic_vr.png | Bin 2182 -> 2161 bytes .../quantum_ic_fullscreen_exit_grey600_24.png | Bin .../quantum_ic_fullscreen_exit_white_24.png | Bin .../quantum_ic_fullscreen_grey600_24.png | Bin .../quantum_ic_fullscreen_white_24.png | Bin .../drawable-xxhdpi/revanced_copy_icon.png | Bin 0 -> 677 bytes .../revanced_copy_icon_with_time.png | Bin 0 -> 1166 bytes .../revanced_download_icon.png | Bin 1378 -> 1365 bytes .../drawable-xxhdpi/revanced_speed_icon.png | Bin 1401 -> 1380 bytes .../revanced_time_ordered_playlist.png | Bin 0 -> 632 bytes .../revanced_whitelist_icon.png | Bin 0 -> 2835 bytes .../yt_fill_arrow_repeat_white_24.png | Bin .../yt_outline_arrow_repeat_1_white_24.png | Bin .../yt_outline_arrow_shuffle_1_white_24.png | Bin .../yt_outline_screen_full_exit_white_24.png | Bin .../yt_outline_screen_full_white_24.png | Bin ...yt_outline_screen_vertical_vd_theme_24.png | Bin 547 -> 534 bytes .../drawable-xxhdpi/revanced_copy_icon.png | Bin 2013 -> 0 bytes .../revanced_copy_icon_with_time.png | Bin 2502 -> 0 bytes .../ic_fullscreen_vertical_button.png | Bin 1793 -> 0 bytes .../quantum_ic_fullscreen_exit_grey600_24.png | Bin 2391 -> 0 bytes .../quantum_ic_fullscreen_exit_white_24.png | Bin 2391 -> 0 bytes .../quantum_ic_fullscreen_grey600_24.png | Bin 1793 -> 0 bytes .../quantum_ic_fullscreen_white_24.png | Bin 1793 -> 0 bytes .../drawable-xxhdpi/revanced_copy_icon.png | Bin 2801 -> 0 bytes .../revanced_copy_icon_with_time.png | Bin 3111 -> 0 bytes .../revanced_download_icon.png | Bin 2353 -> 0 bytes .../drawable-xxhdpi/revanced_speed_icon.png | Bin 3076 -> 0 bytes .../yt_fill_arrow_repeat_white_24.png | Bin 2316 -> 0 bytes .../yt_outline_arrow_repeat_1_white_24.png | Bin 3136 -> 0 bytes .../yt_outline_arrow_shuffle_1_white_24.png | Bin 719 -> 0 bytes .../yt_outline_screen_full_exit_white_24.png | Bin 2391 -> 0 bytes .../yt_outline_screen_full_white_24.png | Bin 1793 -> 0 bytes .../ic_fullscreen_vertical_button.png | Bin 0 -> 2206 bytes .../rounded/drawable-xxhdpi/ic_vr.png | Bin 0 -> 1180 bytes .../quantum_ic_fullscreen_exit_grey600_24.png | Bin 0 -> 2066 bytes .../quantum_ic_fullscreen_exit_white_24.png | Bin 0 -> 2066 bytes .../quantum_ic_fullscreen_grey600_24.png | Bin 0 -> 2206 bytes .../quantum_ic_fullscreen_white_24.png | Bin 0 -> 2206 bytes .../drawable-xxhdpi/revanced_copy_icon.png | Bin 0 -> 2464 bytes .../revanced_copy_icon_with_time.png | Bin 0 -> 2580 bytes .../revanced_download_icon.png | Bin 0 -> 3003 bytes .../drawable-xxhdpi/revanced_speed_icon.png | Bin 0 -> 1450 bytes .../revanced_time_ordered_playlist.png | Bin 0 -> 657 bytes .../revanced_whitelist_icon.png | Bin 0 -> 1565 bytes .../yt_fill_arrow_repeat_white_24.png | Bin 0 -> 1161 bytes .../yt_outline_arrow_repeat_1_white_24.png | Bin 0 -> 1435 bytes .../yt_outline_arrow_shuffle_1_white_24.png | Bin 0 -> 2272 bytes .../yt_outline_screen_full_exit_white_24.png | Bin 0 -> 2066 bytes .../yt_outline_screen_full_white_24.png | Bin 0 -> 2206 bytes ...yt_outline_screen_vertical_vd_theme_24.png | Bin 0 -> 2206 bytes .../ic_fullscreen_vertical_button.png | Bin 0 -> 213 bytes .../thin/drawable-xxhdpi/ic_vr.png | Bin 0 -> 1166 bytes .../quantum_ic_fullscreen_exit_grey600_24.png | Bin 0 -> 192 bytes .../quantum_ic_fullscreen_exit_white_24.png | Bin 0 -> 192 bytes .../quantum_ic_fullscreen_grey600_24.png | Bin 0 -> 213 bytes .../quantum_ic_fullscreen_white_24.png | Bin 0 -> 213 bytes .../drawable-xxhdpi/revanced_copy_icon.png | Bin 0 -> 499 bytes .../revanced_copy_icon_with_time.png | Bin 0 -> 1027 bytes .../revanced_download_icon.png | Bin 0 -> 617 bytes .../drawable-xxhdpi/revanced_speed_icon.png | Bin 0 -> 1400 bytes .../revanced_time_ordered_playlist.png | Bin 0 -> 491 bytes .../revanced_whitelist_icon.png | Bin 0 -> 1588 bytes .../yt_fill_arrow_repeat_white_24.png | Bin 0 -> 672 bytes .../yt_outline_arrow_repeat_1_white_24.png | Bin 0 -> 759 bytes .../yt_outline_arrow_shuffle_1_white_24.png | Bin 0 -> 856 bytes .../yt_outline_screen_full_exit_white_24.png | Bin 0 -> 192 bytes .../yt_outline_screen_full_white_24.png | Bin 0 -> 213 bytes ...yt_outline_screen_vertical_vd_theme_24.xml | 5 + 71 files changed, 147 insertions(+), 132 deletions(-) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/ic_fullscreen_vertical_button.png (87%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/ic_vr.png (95%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png (100%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png (100%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png (100%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png (100%) create mode 100644 src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_copy_icon.png create mode 100644 src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_copy_icon_with_time.png rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/revanced_download_icon.png (87%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/revanced_speed_icon.png (66%) create mode 100644 src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_time_ordered_playlist.png create mode 100644 src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_whitelist_icon.png rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png (100%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png (100%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png (100%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png (100%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/yt_outline_screen_full_white_24.png (100%) rename src/main/resources/youtube/overlaybuttons/{default => bold}/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png (87%) delete mode 100644 src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_copy_icon.png delete mode 100644 src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_copy_icon_with_time.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/ic_fullscreen_vertical_button.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_copy_icon.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_copy_icon_with_time.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_download_icon.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_speed_icon.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png delete mode 100644 src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_screen_full_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/ic_fullscreen_vertical_button.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/ic_vr.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_copy_icon.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_copy_icon_with_time.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_download_icon.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_speed_icon.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_time_ordered_playlist.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_whitelist_icon.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_full_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/ic_fullscreen_vertical_button.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/ic_vr.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_copy_icon.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_copy_icon_with_time.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_download_icon.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_speed_icon.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_time_ordered_playlist.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_whitelist_icon.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_screen_full_white_24.png create mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable/yt_outline_screen_vertical_vd_theme_24.xml 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 7694d36adf..f41642ba88 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 @@ -1,7 +1,7 @@ package app.revanced.patches.youtube.player.overlaybuttons import app.revanced.patcher.data.ResourceContext -import app.revanced.patcher.patch.options.PatchOption.PatchExtensions.booleanPatchOption +import app.revanced.patcher.patch.options.PatchOption.PatchExtensions.stringPatchOption import app.revanced.patches.youtube.utils.compatibility.Constants.COMPATIBLE_PACKAGE import app.revanced.patches.youtube.utils.fix.fullscreen.FullscreenButtonViewStubPatch import app.revanced.patches.youtube.utils.fix.suggestedvideoendscreen.SuggestedVideoEndScreenPatch @@ -16,6 +16,12 @@ import app.revanced.util.doRecursively import app.revanced.util.patch.BaseResourcePatch import org.w3c.dom.Element +/** + * Patch to add overlay buttons in the YouTube video player. + * + * This patch integrates various buttons such as copy URL, speed, repeat, etc., into the video player's + * control overlay, providing enhanced functionality directly in the player interface. + */ @Suppress("DEPRECATION", "unused") object OverlayButtonsPatch : BaseResourcePatch( name = "Overlay buttons", @@ -30,38 +36,60 @@ object OverlayButtonsPatch : BaseResourcePatch( ), compatiblePackages = COMPATIBLE_PACKAGE ) { - private val OutlineIcon by booleanPatchOption( - key = "OutlineIcon", - default = false, - title = "Outline icons", - description = "Apply the outline icon", - required = true + private const val DEFAULT_MARGIN = "0.0dip" + private const val WIDER_MARGIN = "6.0dip" + private const val DEFAULT_ICON_KEY = "Rounded" + + // Mapping of icon types to their respective resource folder names + private val iconTypes = mapOf( + "Bold" to "bold", + DEFAULT_ICON_KEY to "rounded", + "Thin" to "thin" ) - private val WiderBottomPadding by booleanPatchOption( - key = "WiderBottomPadding", - default = false, - title = "Wider bottom padding", - description = "Apply wider bottom padding. Click effect may not be shown in the correct position." + // Option to select icon type + private val IconType by stringPatchOption( + key = "IconType", + default = DEFAULT_ICON_KEY, + values = iconTypes, + title = "Icon type", + description = "Apply icon type" ) - override fun execute(context: ResourceContext) { + // Option to set bottom margin + private val BottomMargin by stringPatchOption( + key = "BottomMargin", + default = DEFAULT_MARGIN, + values = mapOf( + "Wider" to WIDER_MARGIN, + "Default" to DEFAULT_MARGIN + ), + title = "Bottom margin", + description = "Apply bottom margin to Overlay buttons and Timestamp" + ) + /** + * Main execution method for applying the patch. + * + * @param context The resource context for patching. + */ + override fun execute(context: ResourceContext) { /** - * Inject hook + * Inject hooks for overlay buttons. */ arrayOf( "AlwaysRepeat;", "CopyVideoUrl;", "CopyVideoUrlTimestamp;", "ExternalDownload;", - "SpeedDialog;" + "SpeedDialog;", + "TimeOrderedPlaylist;" ).forEach { className -> PlayerControlsPatch.hookOverlayButtons("$OVERLAY_BUTTONS_PATH/$className") } /** - * Copy resources + * Copy necessary resources for the overlay buttons. */ arrayOf( ResourceGroup( @@ -74,56 +102,42 @@ object OverlayButtonsPatch : BaseResourcePatch( context.copyResources("youtube/overlaybuttons/shared", resourceGroup) } - if (OutlineIcon == true) { - arrayOf( - ResourceGroup( - "drawable-xxhdpi", - "ic_fullscreen_vertical_button.png", - "quantum_ic_fullscreen_exit_grey600_24.png", - "quantum_ic_fullscreen_exit_white_24.png", - "quantum_ic_fullscreen_grey600_24.png", - "quantum_ic_fullscreen_white_24.png", - "revanced_copy_icon.png", - "revanced_copy_icon_with_time.png", - "revanced_download_icon.png", - "revanced_speed_icon.png", - "yt_fill_arrow_repeat_white_24.png", - "yt_outline_arrow_repeat_1_white_24.png", - "yt_outline_arrow_shuffle_1_white_24.png", - "yt_outline_screen_full_exit_white_24.png", - "yt_outline_screen_full_white_24.png" - ) - ).forEach { resourceGroup -> - context.copyResources("youtube/overlaybuttons/outline", resourceGroup) + // Apply the selected icon type to the overlay buttons + IconType?.let { iconType -> + val iconValue = iconType.lowercase() + val commonResources = arrayOf( + "ic_fullscreen_vertical_button.png", + "ic_vr.png", + "quantum_ic_fullscreen_exit_grey600_24.png", + "quantum_ic_fullscreen_exit_white_24.png", + "quantum_ic_fullscreen_grey600_24.png", + "quantum_ic_fullscreen_white_24.png", + "revanced_time_ordered_playlist.png", + "revanced_copy_icon.png", + "revanced_copy_icon_with_time.png", + "revanced_download_icon.png", + "revanced_speed_icon.png", + "revanced_whitelist_icon.png", + "yt_fill_arrow_repeat_white_24.png", + "yt_outline_arrow_repeat_1_white_24.png", + "yt_outline_arrow_shuffle_1_white_24.png", + "yt_outline_screen_full_exit_white_24.png", + "yt_outline_screen_full_white_24.png" + ) + val specificResources = if (iconValue == "thin") { + arrayOf("yt_outline_screen_vertical_vd_theme_24.xml") + } else { + arrayOf("yt_outline_screen_vertical_vd_theme_24.png") } - } else { - arrayOf( - ResourceGroup( - "drawable-xxhdpi", - "ic_fullscreen_vertical_button.png", - "ic_vr.png", - "quantum_ic_fullscreen_exit_grey600_24.png", - "quantum_ic_fullscreen_exit_white_24.png", - "quantum_ic_fullscreen_grey600_24.png", - "quantum_ic_fullscreen_white_24.png", - "revanced_copy_icon.png", - "revanced_copy_icon_with_time.png", - "revanced_download_icon.png", - "revanced_speed_icon.png", - "yt_fill_arrow_repeat_white_24.png", - "yt_outline_arrow_repeat_1_white_24.png", - "yt_outline_arrow_shuffle_1_white_24.png", - "yt_outline_screen_full_exit_white_24.png", - "yt_outline_screen_full_white_24.png", - "yt_outline_screen_vertical_vd_theme_24.png" - ) - ).forEach { resourceGroup -> - context.copyResources("youtube/overlaybuttons/default", resourceGroup) + val resources = commonResources + specificResources + resources.forEach { resource -> + val folderName = if (resource.endsWith(".xml")) "drawable" else "drawable-xxhdpi" + context.copyResources("youtube/overlaybuttons/$iconValue", ResourceGroup(folderName, resource)) } } /** - * Merge xml nodes from the host to their real xml files + * Merge XML nodes from the host to their respective XML files. */ context.copyXmlNode( "youtube/overlaybuttons/shared/host", @@ -131,95 +145,90 @@ object OverlayButtonsPatch : BaseResourcePatch( "android.support.constraint.ConstraintLayout" ) - val fullscreenButtonId = if (SettingsPatch.upward1909) - "youtube_controls_fullscreen_button_stub" - else - "fullscreen_button" + val marginBottom = "$BottomMargin" + + // Modify the layout of fullscreen button for newer YouTube versions (19.09.xx+) + try { + context.xmlEditor["res/layout/youtube_controls_fullscreen_button.xml"].use { editor -> + editor.file.doRecursively loop@{ node -> + if (node !is Element) return@loop + + if (node.getAttribute("android:id").endsWith("_button")) { + node.setAttribute("android:layout_marginBottom", marginBottom) + node.setAttribute("android:paddingLeft", "0.0dip") + node.setAttribute("android:paddingRight", "0.0dip") + node.setAttribute("android:paddingBottom", "22.0dip") + if (!node.getAttribute("android:layout_height").equals("0.0dip") && + !node.getAttribute("android:layout_width").equals("0.0dip") + ) { + node.setAttribute("android:layout_height", "48.0dip") + node.setAttribute("android:layout_width", "48.0dip") + } + } + } + } + } catch (e: Exception) { + // Do nothing if there's an error + } - val bottomPadding = if (WiderBottomPadding == true) "31.0dip" else "22.0dip" context.xmlEditor["res/layout/youtube_controls_bottom_ui_container.xml"].use { editor -> - editor.file.doRecursively loop@{ - if (it !is Element) return@loop + editor.file.doRecursively loop@{ node -> + if (node !is Element) return@loop // Change the relationship between buttons - it.getAttributeNode("yt:layout_constraintRight_toLeftOf")?.let { attribute -> - if (attribute.textContent == "@id/fullscreen_button") { - attribute.textContent = "@+id/speed_dialog_button" + node.getAttributeNode("yt:layout_constraintRight_toLeftOf") + ?.let { attribute -> + if (attribute.textContent == "@id/fullscreen_button") { + attribute.textContent = "@+id/speed_dialog_button" + } } - } - it.getAttributeNode("android:id")?.let { attribute -> - // Adjust Fullscreen Button size and padding - arrayOf( - "speed_dialog_button", - "copy_video_url_button", - "copy_video_url_timestamp_button", - "always_repeat_button", - "external_download_button", - fullscreenButtonId - ).forEach { targetId -> - if (attribute.textContent.endsWith(targetId)) { - arrayOf( - "0.0dip" to arrayOf("paddingLeft", "paddingRight"), - bottomPadding to arrayOf("paddingBottom"), - "48.0dip" to arrayOf("layout_height", "layout_width") - ).forEach { (replace, attributes) -> - attributes.forEach { name -> - it.getAttributeNode("android:$name")?.textContent = replace - } - } + // Adjust TimeBar and Chapter bottom padding + arrayOf( + "@id/time_bar_chapter_title" to "16.0dip", + "@id/timestamps_container" to "14.0dip" + ).forEach { (id, replace) -> + node.getAttributeNode("android:id")?.let { attribute -> + if (attribute.textContent == id) { + node.getAttributeNode("android:paddingBottom").textContent = + replace } } } - if (WiderBottomPadding == false) { - // Adjust TimeBar and Chapter bottom padding - arrayOf( - "@id/time_bar_chapter_title" to "14.0dip", - "@id/timestamps_container" to "12.0dip" - ).forEach { (id, replace) -> - it.getAttributeNode("android:id")?.let { attribute -> - if (attribute.textContent == id) { - it.getAttributeNode("android:paddingBottom").textContent = replace - } - } + // Adjust layout for fullscreen button stub + if (node.getAttribute("android:id") == "@id/youtube_controls_fullscreen_button_stub") { + node.setAttribute("android:layout_marginBottom", marginBottom) + if (!node.getAttribute("android:layout_height").equals("0.0dip") && + !node.getAttribute("android:layout_width").equals("0.0dip") + ) { + node.setAttribute("android:layout_height", "48.0dip") + node.setAttribute("android:layout_width", "48.0dip") } } - } - } - arrayOf( - "youtube_controls_cf_fullscreen_button.xml", - "youtube_controls_fullscreen_button.xml" - ).forEach { xmlFile -> - val targetXml = context["res"].resolve("layout").resolve(xmlFile) - if (targetXml.exists()) { - context.xmlEditor["res/layout/$xmlFile"].use { editor -> - editor.file.doRecursively loop@{ - if (it !is Element) return@loop - - it.getAttributeNode("android:id")?.let { attribute -> - // Adjust Fullscreen Button size and padding - if (attribute.textContent.endsWith("fullscreen_button")) { - arrayOf( - "0.0dip" to arrayOf("paddingLeft", "paddingRight"), - bottomPadding to arrayOf("paddingBottom"), - "48.0dip" to arrayOf("layout_height", "layout_width") - ).forEach { (replace, attributes) -> - attributes.forEach { name -> - it.getAttributeNode("android:$name")?.textContent = replace - } - } - } - } + // Adjust margin and padding for other buttons + if (node.getAttribute("android:id").endsWith("_button")) { + node.setAttribute("android:layout_marginBottom", marginBottom) + node.setAttribute("android:paddingLeft", "0.0dip") + node.setAttribute("android:paddingRight", "0.0dip") + node.setAttribute("android:paddingBottom", "22.0dip") + if (!node.getAttribute("android:layout_height").equals("0.0dip") && + !node.getAttribute("android:layout_width").equals("0.0dip") + ) { + node.setAttribute("android:layout_height", "48.0dip") + node.setAttribute("android:layout_width", "48.0dip") } + } else if (node.getAttribute("android:id") == "@id/time_bar_chapter_title_container" || + node.getAttribute("android:id") == "@id/timestamps_container" + ) { + node.setAttribute("android:layout_marginBottom", marginBottom) } } } - /** - * Add settings + * Add settings for the overlay buttons. */ SettingsPatch.addPreference( arrayOf( @@ -229,6 +238,7 @@ object OverlayButtonsPatch : BaseResourcePatch( ) ) + // Update the patch status in settings to reflect the applied changes SettingsPatch.updatePatchStatus(this) } -} \ No newline at end of file +} diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/ic_fullscreen_vertical_button.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/ic_fullscreen_vertical_button.png similarity index 87% rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/ic_fullscreen_vertical_button.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/ic_fullscreen_vertical_button.png index b23946dba01ba7700bfd20d878dc68eb9735e0a0..5623e6b5046406d7b6db8d1900c724938d50c4e8 100644 GIT binary patch delta 10 RcmZ3?GL2<|@tu diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png similarity index 100% rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png diff --git a/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_copy_icon.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_copy_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e558d652af0cc91f55c96c4bb2754343033848e6 GIT binary patch literal 677 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2V9N1yaSW-L^LDmx(B~-)sj>)`nzNt`|&~mBijh1c2ta{%+-CsRX=P5%! z({A+2HWk$F>8AE+AmFPvDm zWr61`$EP|Q)Ge+{-ES;5xxB!9=fOp@Z}2`)`uc<+XYovRJEmpD&8}Rt7|*dB3zuO! z_nfU$q(tb3q{M#tv|?tLZ;rpCzU^g;V|hAzk>thyXB+Ps{Hjr?vby&_w#YR96{-Z-6ID(O# duH*4RTJEv`Ti#qI0bufD@O1TaS?83{1OO@{8|(l8 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_copy_icon_with_time.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_copy_icon_with_time.png new file mode 100644 index 0000000000000000000000000000000000000000..c7d20692f8e58b19224af1c85afcdaf71b6513e9 GIT binary patch literal 1166 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2UM`)W0RW*^kc@K3HqR^poof>l_BD%ej5V$_F+9`Og;2^_g$M@ca|k6YT)^Rckwrdp_8^ zr|GBK%do>c(;N2-Z8_TNnIQAS`mx3T$J!G#3wfE7Id2&$dlt)@sJq4+w`~a6BEYg~ zLW-(vyQ%~K2c-=fhb^`@emuwl}lsyFi;1EI$~N z;C;$2zS#7OsD{-!{|S#i`?s(j_$Bd8FW)S#p!Avb+4pYgy=M@Thy$5XAcdzP*XN+Dsf3w&wHvL07VFz>HC(G};`pmp! z@=yKJ9N*g|JtB?^j0~P6d{_BkIV)ao!QL0oHFIMBFdh}ikkM`0xq(T7#VT-Om7%}f z{atM5qZBUpTzXLvva|c#q;)op*P3=UF0V8=@5gX|ht=o1iO){0fAMMmwA(vu4dh(I z&ri+>vSr#MsQiuP7UQDZlkFMH9-7^*oNgV{pWLU)Dg3{~!@YMsuTqh5qrKq7M8QZ^ z!*`0=jaIHt{F$>bEaKZ^2I#hq^LBx{< Th3#&@a)!av)z4*}Q$iB}^K}d5 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_download_icon.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_download_icon.png similarity index 87% rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_download_icon.png rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_download_icon.png index 90f98db8a7627f55794bed34d53c4700e92cbe95..f2d0d6c813271b0aca0c00352e4576c32bcd3dad 100644 GIT binary patch delta 10 RcmaFFb(L#^@1JnQj delta 30 jcmaFD^^W@fk$L90|Va?5N4dJ%_qH4(U}zhh?58H diff --git a/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_time_ordered_playlist.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_time_ordered_playlist.png new file mode 100644 index 0000000000000000000000000000000000000000..60d1831a59c4853e912a8245663020775cca3db7 GIT binary patch literal 632 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 lp#}{#s5bSh>5sb{FnI zo8YXJ3eCwZm4ZmfG!yhpjd4U%$3N5=CreOM%9I%=m8h^$n|gb|4K|dMJM;Fveed(W zKR(|dTWib9jg}?LAP9=Km`!#to5c||8oZa>Igkscv0n3wJOquKAdU!VdwmiFMJ6(Z z#X_-l5l*shB|)(cTIqLt0UCnlXZpPaSw;)6gDzn_2IOA*F$88P15%V`#jM_Jx|A_j zadbgdULjdkM(QafGXtLQ$AJJhEfBEZ?eg%r-++YV;$SUqqX-;=2xSJuC@O@Dtu{ED zELv|k|G=g>2SzlHKtafm=;xO6&QwV^te_F4?YM`$5Bq)Zdy2~415`o zQbF+IDC+b1ls=7;Kb@pFbhgPj{IGvP&A}OajT}L>mH0RKL6HAthDKK=O`k(jnIR?}q;d*L0Vr7cC zgPR#1M746TbPDK~2Ujiz4y6lDkYX7a5K@dkO(BEZ%u_QkAl6q(1EK$s7XvV!bqYR$ zqm3nittaLk3XDg^f*tS!{ilnevth+O1P2{MT!woU_y~79+5=h~2YOlVQf4;yeYL*I(|)C;zUbHN=sXU@nmLQ!*P2ZlCZ3JgSEF{R~;N! zmKv3i5D3ha#@9_RX-nL4_y=FQ=HAuHM^lRrFF$<$mHS;Ec5S=Tm3QdMDc9K+A`!b? z{7y$enlQ5!u8ABgH?J~E#>Khv9=$YXUd#%~#)yJuS=`!)yOQ*phP1efxKEScuhGB3 zM=J04UEi}=eiPaxxisO`<$=B0BKJglOrNZ^S(rYm@5`l4TQYWC?kXc9{aMYoBAGx% z@aN~F*Pi*jdD_;RO&y11N2-5o@2pz6IM-JGLV57r*MEF_%G6Yu+-%z&Yp;i#)kjZ$ zv}IQJEG+-y%@x5$%XZ^Ud27nNOUc)3cWEk>v2r1OPUiK(^I{#V|@3s-iFK*r#D_q*%Q0wO6QIC4*>lKBlk*A z$5b9^{x11cT1(B>#sgT z`Wb{)K-b3H>fErT`?+3uy6yJl_3K(27GC`9T2F1qinp}qZpZY#CYgJ7b<~4>zho^A g1$emWa&zzGsW1e1e z55RmzAGH4Z_?xiG1aZq#-tE5+A25eYePF;?Lnj2 zyDMe8$=%Xe7{%2rM2=@*EQ4B0p=q?xaDx^>voVs9fn_Q+0${466JRLi0w6h13Q4t5 zSe7!TK!?3s5GO+mvQfSq2oGa~8eob*jgbh$pjK%J*dPGrcwuU6T?PTh9E8jk01;M! zjNQ@%Mij2Y7(pzEi9%2iBbd*UBN+&qk+Ge@fjDds;(=@)6M|qaALj8G3lBhv)5#TZ zqA+?v7&Q|BStO~2K~S&Pv-DgRuFC}3d_Et9I3S0^q!3IZUqd1WriSocWDsHms#9u7 zC9Yvu8IcS;mlOb$s`ECewM(=bV!=<8$3O$31=%dfYSSE0jxOP}xjNOHa5)NMDol-O zNP@z$m$2F_oWzMN{J&5yZT~_57=h>N zP)w9Zsp)IAMhi#jFoeW)G8|Ve-c-V($_x&N#bX2{D>ZUlPi%SZ04798OaM@~#$`fm zCYvo|b76=La|5?QK`;c(L#4P}smNaz%7xj%zkpIPBS%Q&SHW@=R^U1{LK&=7BbgYe z)no#UB{#xRxC+-%f+_8|udhp@q7rntLaCxQh(vKDLn4X_V)KK7m>d>+PF<-KmS_kP z(V&<_C;%wuu#`$U%;9s;U>?S1a=0OsvBA7RCLiJ>OinO{C^&&3SVqRYxzu?fj^Q?g?Qs-SPXJMpLGUmbsMo?=S2msW2|Ck(D zSXTaK56si*voMPEf5gQ+jKCG79?@YDnUuGFHSR!4dC;1$^LBv$Y2w`8YstL`rz(bZ zxKyjC$x^k$G*pSxQMJrBVS+`Y*(FJY5i&#dWL11gQj*uTa9mMM4*Ewp-ZU4j=GAp; zKlhO2_yg`Q>dN;YSntd68T-=3HAdZ)(snMjwCtd|Ub^;EVf1)pcR-hRbS%JZmh&t7 zs|tJ1_Vl^;O&rtr3TFFmZ0vPpUG13Z=p1Pq(f3YO|EuHCAB6i&gS=S1tpbiv~Pna0jHn|nTyqE5;@Uwm>wX8v>i=Z=-8 zu;v@Lom375mGB9vU`4ZgxlQt|t%@Dc@$OO8c!b(?KdVm}QG7Qs zn`AfUyM&auTz%tq=!4jbBcyFpO+!yZZI!3L^Q&x!u${pl^|++2ZLPz%e07g&*+3rn zQ|X&eTvN^ZuL9^y+u@dPtLcsOlM~akEbj=Xpc7c;f|YA(V68pO&iF( zfDeB@e|vT4Khl%iW@it5JgK{D`3wC6$Kj`!f>`CIP{)o_C22PAHPl>K-|hf*ZQpf8 zJ%xI=|Mg)oS@{giRY`})gKHydInY@8?B*x@<7uqg%j1u>s6KdZ)3YYai&@mxME9_R z->E2I$8Q>Gcj!xH3>@qqH^|x!^d4ypHQp&|H=fLg`r>FKU&AxsBM+~i9iQ$zI`p*w z+9XQutISFi&@Z|AKDGPKrhce0+$L`{Xej@WJKp~cJ><92?Nv#Pxcsa$pyL|DT`LgR z6hHQ3pKK#68jCA>3-$wu?B{B?b-l%J0n>>GTOR>yfc~lcs3ZsAWowx^E7m&-=${;T z8EUt+)LaEjpD2m#zI1Nul(?|btsn)de*?KVsTcqN diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/ic_fullscreen_vertical_button.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/ic_fullscreen_vertical_button.png deleted file mode 100644 index 15df96114cab83425e80b3ede2104624860b50a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1793 zcmeAS@N?(olHy`uVBq!ia0vp^ZXnFT1|$ph9<>0eS*a18X}-P;T0k}j0~@0d12d4t z2!srbQVgtMHUmQ#qcofy$EX2S!vs`g$N(f6M1eT1J(Gb2s=fwDgMbGR15JX^0htx4 zIk|}?`9%r=MfnOwdd7ODKslxbOmKZ}3z!jXpd7=BdGC(`Db50q$YKTtZeb8+WSBKa zf`NfKCo?3XB*NFnDmgz_FEJ%QDOIl`w*aJz!KT6r$jnVGNmQuF&B-gas<2f8tFQvH zLBje<3ScEA*|tg%z5xo(`9-M;W_kvC21<5Z3JMA~MJZ`kK`w4k?LeNbQbtKhft9{~ zd3m{Bxv^e;QM$gNrKP35fswwEkuFe$ZgFK^Nn(X=Ua>O75STeGsl~}fnFS@8`FRQ; za}$&DOG|8(lt3220mPlD6`2T|@`|C}0(wv%B%^PrXP}Qw8_=_G_o3*jNG!mqsU$NE zhg~2Uh&FIwK-_2pa)A{%5+hwQb5rw*f&Q^GH?RRa4MPIqIV6n{xHKY3AZY}8%gVVZ z6_jK`^7C`-u%#dyeRNf52KWM_J0-Cs(Iv4Y)y~Mk$XM6FMAy(H#L&XZ$k@ujOxplR z0(}8821PBBIiLWsiU>+A&d(_YMWda$kpU3s8-hq1eGF-Itq7f=d6^}4Mo=wi!sxmp z5%Sn9M3zR^>R*(Z3QUY(w;DoiLl%Rox6ucsN2K%#N&H|@VCuKy0tO2#C)sgj`JXxn z%&${DT^vIy=DeMCHcP}&;CTI2Y5S&+V)9NO7O?9#eS8=FMC!d=-+3i&IhPMlf>k;m zI40j&yT5(r&3=K-%ciHd1=!Dc+d6mMs+B8W&3vonF-gS}hT5+BP5HuNQCRM!nY=7+ z*3I1$cljOUPn;sxuybauq_t+t665Jl-c3^ZdRSLSB{t;6t_lBVGp)@j^0ZpLcVF|Z zP6jo_H(WnD0$=2<{M!EOu-P%mg2;uhgwu{6c<)%c-h0hqj|S$xmpkX|Ugh7>k-TSj z)aLVPWkLGS%g(&{I^(ly?Sz-EfqTzY9j~yz^(xw1V#WT_QWm9U4J*wT>9Vl7X?|VS z8~03o#?N?x9X9O_E8b1gbh3Cb<00dfCsL0i&e#U4xJ*tI?wz$DdDa)sSqC;uNKRqh zHGSK)4=d80^7o}?XRyCE$`qU^Sfi!O_|Aprh9EmnJ-=3`&D1)*>1B+6R!!e%T*q*~ zadoXUEId3XF!<-SWnUPPZP#k0GBdZ}hC|+k0~c$7{AjOCKyeXl`6> z>eju)@`c=uN$dVtnyAICpRF(0_cC&Mt^dj^l@9y|;{LszvoLnEef)vzA7}kBT$eoc zrq{J)cc!j;xOCm?Su*R>nmdx89gyCAv_ZOVZAQ9o{y~28)VoWro+-HRweV*}EIi$K cPVzY{&)}x9sr&K8^PuA2)78&qol`;+09r|R&;S4c diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png deleted file mode 100644 index 47c0612f46030528e9baaf98a55faff29f18763f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2391 zcmZ`*3p|wR8h^*F5p80XGbJ;~M$N^r?#8{VOFfuWhW=1Ab!lKiS;jpY+ za#^-bVwFox?Yb|k{mG?B*>fD5OsYkyvt_?Qv9{j%z3=mU@BjHfm-l_X?>8qs-JRF1 zMXdz@tfSMYUa+JoCQ=Pv_dlt1hD9EmNe_2(17@&}1ZoIvpbTpW_y-Uupt_&~;Dgxw zUJpWSU$RkxZOj3@0$q59r*eSGlKoLwDuyB)>}gSYawP01E=$Z8qCJItG!bWk`y9rU zij>~-Xhq7)I*b9Ie^nA;p)R2Li2%^hQA`BL%hv-yIf}zzikWVEp-?^-#|q(<+ zZ7U25hrFmxOLX{&WEde93m`l`CME_KV}auf58%yhY;5oZBA!UZ!WLN35uTVO!SX~# zi%#D8p|VAxLXJSp;q%Z6zpM~`w3uXQs0j3aEau6UaF!$SL`!AC1>zM5-W*53e~1Pb z`#!(Fup}(OM@eE%_(x(XkVV?UVJzlotH=OaxI{lHhs)-P;Cjf`MB9bb{st@;w}Qz0 z7;y!#f(VxdISAQ`mSOPuQREMGkS%_-)hY*W@O6i=#4IXH%q9~FL<=mz5^HYBFy94P z?t(tI+Ci{@2!us9f3aQRM{yt!(~B+QM@1{H5iXkm54^czwZ;DpUQJzQ?&opDWcbV$ zD66(tv;3Cv4+UHaucmqkIc&HY7jiXUinelZ$=(*P=*JcPx!C**yKwiD*TTp0?oEOp zzP!c+KxL9nwPQ%~pX8CwZE@5}d3Y`E@a@TFr_?VyD0Cnecxq-4LI6VF78XMb5R@VUN~X3qrXNxfLg%--tI~IS$UNjC%k1WwopXH8 z+ric7!0fWo-Br4ARwcI*A_uGV-8Bx@H5a_8;WP^#_f^{Y5P~VH+$ex4ntoh&YT#hS zgt*bbVMr&*G$LMKi9%=W*<_TgWnVq-s5$iSpVdaMCx|GuLt4Pv$|`L(`aA1_ZNRx( zE(sIcA>^MrJsRI}CiyI}O_!dM+C}=tyL#t|w)(AKF#WRCD8_LO?5DxsG{p=~)gNcJ zFgLbFSO%FU?p8`ba<*xyQtZA;D%OrRB+71g{DuisJCZ$C@H>WXS8hN%s`3h(I*$s; zFMgh2Reln%O{l#i$&7wp`NhotW@;GEPwgHIqCuJC{n`C=>0U2s*Kl0Um@udNf1T_) zx@`K@zTScnf3Nh(3#DATg=<}$i_p3=rqO?9B*4TM>)Y!_zY#CYWxs8-|6{1^nvy_; zqO+}91Xhqi^|{q!NKyHv z`@VDp)&Bg3EHeNqj0oK~co=F=Ce2Luy?EVL_^zK!?&Q3Y^gr_UhSGe`#7{j0zC46J^!sq?2Gn2w>M5*oi9-{boF*k$FMmP=1A;oA=#4Yx(Dc;3&VEwi0F^Aq5WB$zfNWAg+ItD-1h1*b!Jrps=oxbyPX&5fD3*$C%!MmZE z6nGFNin({8Cu1mb-}v3x;lR%Bi?6Si&b{st^n`7dc`~9*^ z`6aZ}0^|%$o;=REsS2bfSvc^r-Zym$B%uQl&s6R6=W9*~wp|2HF}!p~%g{5T2UXHG&7)F8BD~4g7~-_(0OsgMp11kTu!{ zWiW+nQc>P|-0z>ZXM$ezBBbDBBYv|{_SYs*o+M_28N@uvl)}_ifOM7T}TUzcee{A4y&X$dD YRplPq$a`(=)rvnAbVqk;m3?sHpW7UQ$p8QV diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png deleted file mode 100644 index 47c0612f46030528e9baaf98a55faff29f18763f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2391 zcmZ`*3p|wR8h^*F5p80XGbJ;~M$N^r?#8{VOFfuWhW=1Ab!lKiS;jpY+ za#^-bVwFox?Yb|k{mG?B*>fD5OsYkyvt_?Qv9{j%z3=mU@BjHfm-l_X?>8qs-JRF1 zMXdz@tfSMYUa+JoCQ=Pv_dlt1hD9EmNe_2(17@&}1ZoIvpbTpW_y-Uupt_&~;Dgxw zUJpWSU$RkxZOj3@0$q59r*eSGlKoLwDuyB)>}gSYawP01E=$Z8qCJItG!bWk`y9rU zij>~-Xhq7)I*b9Ie^nA;p)R2Li2%^hQA`BL%hv-yIf}zzikWVEp-?^-#|q(<+ zZ7U25hrFmxOLX{&WEde93m`l`CME_KV}auf58%yhY;5oZBA!UZ!WLN35uTVO!SX~# zi%#D8p|VAxLXJSp;q%Z6zpM~`w3uXQs0j3aEau6UaF!$SL`!AC1>zM5-W*53e~1Pb z`#!(Fup}(OM@eE%_(x(XkVV?UVJzlotH=OaxI{lHhs)-P;Cjf`MB9bb{st@;w}Qz0 z7;y!#f(VxdISAQ`mSOPuQREMGkS%_-)hY*W@O6i=#4IXH%q9~FL<=mz5^HYBFy94P z?t(tI+Ci{@2!us9f3aQRM{yt!(~B+QM@1{H5iXkm54^czwZ;DpUQJzQ?&opDWcbV$ zD66(tv;3Cv4+UHaucmqkIc&HY7jiXUinelZ$=(*P=*JcPx!C**yKwiD*TTp0?oEOp zzP!c+KxL9nwPQ%~pX8CwZE@5}d3Y`E@a@TFr_?VyD0Cnecxq-4LI6VF78XMb5R@VUN~X3qrXNxfLg%--tI~IS$UNjC%k1WwopXH8 z+ric7!0fWo-Br4ARwcI*A_uGV-8Bx@H5a_8;WP^#_f^{Y5P~VH+$ex4ntoh&YT#hS zgt*bbVMr&*G$LMKi9%=W*<_TgWnVq-s5$iSpVdaMCx|GuLt4Pv$|`L(`aA1_ZNRx( zE(sIcA>^MrJsRI}CiyI}O_!dM+C}=tyL#t|w)(AKF#WRCD8_LO?5DxsG{p=~)gNcJ zFgLbFSO%FU?p8`ba<*xyQtZA;D%OrRB+71g{DuisJCZ$C@H>WXS8hN%s`3h(I*$s; zFMgh2Reln%O{l#i$&7wp`NhotW@;GEPwgHIqCuJC{n`C=>0U2s*Kl0Um@udNf1T_) zx@`K@zTScnf3Nh(3#DATg=<}$i_p3=rqO?9B*4TM>)Y!_zY#CYWxs8-|6{1^nvy_; zqO+}91Xhqi^|{q!NKyHv z`@VDp)&Bg3EHeNqj0oK~co=F=Ce2Luy?EVL_^zK!?&Q3Y^gr_UhSGe`#7{j0zC46J^!sq?2Gn2w>M5*oi9-{boF*k$FMmP=1A;oA=#4Yx(Dc;3&VEwi0F^Aq5WB$zfNWAg+ItD-1h1*b!Jrps=oxbyPX&5fD3*$C%!MmZE z6nGFNin({8Cu1mb-}v3x;lR%Bi?6Si&b{st^n`7dc`~9*^ z`6aZ}0^|%$o;=REsS2bfSvc^r-Zym$B%uQl&s6R6=W9*~wp|2HF}!p~%g{5T2UXHG&7)F8BD~4g7~-_(0OsgMp11kTu!{ zWiW+nQc>P|-0z>ZXM$ezBBbDBBYv|{_SYs*o+M_28N@uvl)}_ifOM7T}TUzcee{A4y&X$dD YRplPq$a`(=)rvnAbVqk;m3?sHpW7UQ$p8QV diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png deleted file mode 100644 index 15df96114cab83425e80b3ede2104624860b50a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1793 zcmeAS@N?(olHy`uVBq!ia0vp^ZXnFT1|$ph9<>0eS*a18X}-P;T0k}j0~@0d12d4t z2!srbQVgtMHUmQ#qcofy$EX2S!vs`g$N(f6M1eT1J(Gb2s=fwDgMbGR15JX^0htx4 zIk|}?`9%r=MfnOwdd7ODKslxbOmKZ}3z!jXpd7=BdGC(`Db50q$YKTtZeb8+WSBKa zf`NfKCo?3XB*NFnDmgz_FEJ%QDOIl`w*aJz!KT6r$jnVGNmQuF&B-gas<2f8tFQvH zLBje<3ScEA*|tg%z5xo(`9-M;W_kvC21<5Z3JMA~MJZ`kK`w4k?LeNbQbtKhft9{~ zd3m{Bxv^e;QM$gNrKP35fswwEkuFe$ZgFK^Nn(X=Ua>O75STeGsl~}fnFS@8`FRQ; za}$&DOG|8(lt3220mPlD6`2T|@`|C}0(wv%B%^PrXP}Qw8_=_G_o3*jNG!mqsU$NE zhg~2Uh&FIwK-_2pa)A{%5+hwQb5rw*f&Q^GH?RRa4MPIqIV6n{xHKY3AZY}8%gVVZ z6_jK`^7C`-u%#dyeRNf52KWM_J0-Cs(Iv4Y)y~Mk$XM6FMAy(H#L&XZ$k@ujOxplR z0(}8821PBBIiLWsiU>+A&d(_YMWda$kpU3s8-hq1eGF-Itq7f=d6^}4Mo=wi!sxmp z5%Sn9M3zR^>R*(Z3QUY(w;DoiLl%Rox6ucsN2K%#N&H|@VCuKy0tO2#C)sgj`JXxn z%&${DT^vIy=DeMCHcP}&;CTI2Y5S&+V)9NO7O?9#eS8=FMC!d=-+3i&IhPMlf>k;m zI40j&yT5(r&3=K-%ciHd1=!Dc+d6mMs+B8W&3vonF-gS}hT5+BP5HuNQCRM!nY=7+ z*3I1$cljOUPn;sxuybauq_t+t665Jl-c3^ZdRSLSB{t;6t_lBVGp)@j^0ZpLcVF|Z zP6jo_H(WnD0$=2<{M!EOu-P%mg2;uhgwu{6c<)%c-h0hqj|S$xmpkX|Ugh7>k-TSj z)aLVPWkLGS%g(&{I^(ly?Sz-EfqTzY9j~yz^(xw1V#WT_QWm9U4J*wT>9Vl7X?|VS z8~03o#?N?x9X9O_E8b1gbh3Cb<00dfCsL0i&e#U4xJ*tI?wz$DdDa)sSqC;uNKRqh zHGSK)4=d80^7o}?XRyCE$`qU^Sfi!O_|Aprh9EmnJ-=3`&D1)*>1B+6R!!e%T*q*~ zadoXUEId3XF!<-SWnUPPZP#k0GBdZ}hC|+k0~c$7{AjOCKyeXl`6> z>eju)@`c=uN$dVtnyAICpRF(0_cC&Mt^dj^l@9y|;{LszvoLnEef)vzA7}kBT$eoc zrq{J)cc!j;xOCm?Su*R>nmdx89gyCAv_ZOVZAQ9o{y~28)VoWro+-HRweV*}EIi$K cPVzY{&)}x9sr&K8^PuA2)78&qol`;+09r|R&;S4c diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png deleted file mode 100644 index 15df96114cab83425e80b3ede2104624860b50a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1793 zcmeAS@N?(olHy`uVBq!ia0vp^ZXnFT1|$ph9<>0eS*a18X}-P;T0k}j0~@0d12d4t z2!srbQVgtMHUmQ#qcofy$EX2S!vs`g$N(f6M1eT1J(Gb2s=fwDgMbGR15JX^0htx4 zIk|}?`9%r=MfnOwdd7ODKslxbOmKZ}3z!jXpd7=BdGC(`Db50q$YKTtZeb8+WSBKa zf`NfKCo?3XB*NFnDmgz_FEJ%QDOIl`w*aJz!KT6r$jnVGNmQuF&B-gas<2f8tFQvH zLBje<3ScEA*|tg%z5xo(`9-M;W_kvC21<5Z3JMA~MJZ`kK`w4k?LeNbQbtKhft9{~ zd3m{Bxv^e;QM$gNrKP35fswwEkuFe$ZgFK^Nn(X=Ua>O75STeGsl~}fnFS@8`FRQ; za}$&DOG|8(lt3220mPlD6`2T|@`|C}0(wv%B%^PrXP}Qw8_=_G_o3*jNG!mqsU$NE zhg~2Uh&FIwK-_2pa)A{%5+hwQb5rw*f&Q^GH?RRa4MPIqIV6n{xHKY3AZY}8%gVVZ z6_jK`^7C`-u%#dyeRNf52KWM_J0-Cs(Iv4Y)y~Mk$XM6FMAy(H#L&XZ$k@ujOxplR z0(}8821PBBIiLWsiU>+A&d(_YMWda$kpU3s8-hq1eGF-Itq7f=d6^}4Mo=wi!sxmp z5%Sn9M3zR^>R*(Z3QUY(w;DoiLl%Rox6ucsN2K%#N&H|@VCuKy0tO2#C)sgj`JXxn z%&${DT^vIy=DeMCHcP}&;CTI2Y5S&+V)9NO7O?9#eS8=FMC!d=-+3i&IhPMlf>k;m zI40j&yT5(r&3=K-%ciHd1=!Dc+d6mMs+B8W&3vonF-gS}hT5+BP5HuNQCRM!nY=7+ z*3I1$cljOUPn;sxuybauq_t+t665Jl-c3^ZdRSLSB{t;6t_lBVGp)@j^0ZpLcVF|Z zP6jo_H(WnD0$=2<{M!EOu-P%mg2;uhgwu{6c<)%c-h0hqj|S$xmpkX|Ugh7>k-TSj z)aLVPWkLGS%g(&{I^(ly?Sz-EfqTzY9j~yz^(xw1V#WT_QWm9U4J*wT>9Vl7X?|VS z8~03o#?N?x9X9O_E8b1gbh3Cb<00dfCsL0i&e#U4xJ*tI?wz$DdDa)sSqC;uNKRqh zHGSK)4=d80^7o}?XRyCE$`qU^Sfi!O_|Aprh9EmnJ-=3`&D1)*>1B+6R!!e%T*q*~ zadoXUEId3XF!<-SWnUPPZP#k0GBdZ}hC|+k0~c$7{AjOCKyeXl`6> z>eju)@`c=uN$dVtnyAICpRF(0_cC&Mt^dj^l@9y|;{LszvoLnEef)vzA7}kBT$eoc zrq{J)cc!j;xOCm?Su*R>nmdx89gyCAv_ZOVZAQ9o{y~28)VoWro+-HRweV*}EIi$K cPVzY{&)}x9sr&K8^PuA2)78&qol`;+09r|R&;S4c diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_copy_icon.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_copy_icon.png deleted file mode 100644 index 2996ba60d8d5ea4a4539b708102aa3d6362ef922..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2801 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 diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_copy_icon_with_time.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_copy_icon_with_time.png deleted file mode 100644 index 37ba55dda2c8b524eb923c558ac8a0fa6253ff4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3111 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 diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_speed_icon.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_speed_icon.png deleted file mode 100644 index 68532d62fb23f779a79a337688bd37fbda57ef4d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3076 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 diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png deleted file mode 100644 index 491254dda7cb40875f2f914d4a9f79e6d45ee303..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 719 zcmV;=0xPx%iAh93RCr$P+Dl3UK@bMuzg!4{AP5SAAh-}wL=Xf)P(cs`(S?{hcnde)z=b#P zkwdugHXfp-Lyb&AoPN!8S3_kN=8@u?e>(jl=%-VF)TdiOfgA}@AO%WmL^MH~AWcx3 zfF>x-Pun0(kR~WiKogYar)`iXsBnUeF`od&L^Mt-#eKCg<_o}u`^@Pxh$#9^iN4U5 zz&HC*c{ujZg4-)uK#X+BNUK95 z{fEPK*alr5P^-8P0P8~`b>WBy;sVbAyaU+i8_9)J1rQf`%1E1iA^G4`1H^@%Fw#~k zk}pnGKwRuGBW=ebh2T^N#04J#cmuE#iWG{|0y^hz(9>-1+V^|XVAc0Wn)8e?hn%Ec z0FOlU>bge^j_aNw$FlW37$B)QB7h|06bF)yQxvEMoMJ#RIQE*M*WE;P6eDr$ywW#-?7iu% z9mPnTJ)Yy<51j?@9oBT6mklTer!_7MM&ebC$x18{$)4^=!HGo@yX-R?*FJD!kg5Rc z6DJf&JkSt0AxNTuhQ#qj5(|_A#|KFyP)-~dk~p9eI9*5p^3X9KS%;j z2h!wFF`(Qyo|`zW$qRsH>{b-WMp(B2ca3&+BY7Wl1{L2U+jK{*MhfJ3atfqCX)m`X zNE4(9N)ylorTJ+aqzTdlr3q+)()_dy(gdX?=oc;guUK=;SsDNU002ovPDHLkV1k@a BEyDl+ diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png deleted file mode 100644 index 47c0612f46030528e9baaf98a55faff29f18763f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2391 zcmZ`*3p|wR8h^*F5p80XGbJ;~M$N^r?#8{VOFfuWhW=1Ab!lKiS;jpY+ za#^-bVwFox?Yb|k{mG?B*>fD5OsYkyvt_?Qv9{j%z3=mU@BjHfm-l_X?>8qs-JRF1 zMXdz@tfSMYUa+JoCQ=Pv_dlt1hD9EmNe_2(17@&}1ZoIvpbTpW_y-Uupt_&~;Dgxw zUJpWSU$RkxZOj3@0$q59r*eSGlKoLwDuyB)>}gSYawP01E=$Z8qCJItG!bWk`y9rU zij>~-Xhq7)I*b9Ie^nA;p)R2Li2%^hQA`BL%hv-yIf}zzikWVEp-?^-#|q(<+ zZ7U25hrFmxOLX{&WEde93m`l`CME_KV}auf58%yhY;5oZBA!UZ!WLN35uTVO!SX~# zi%#D8p|VAxLXJSp;q%Z6zpM~`w3uXQs0j3aEau6UaF!$SL`!AC1>zM5-W*53e~1Pb z`#!(Fup}(OM@eE%_(x(XkVV?UVJzlotH=OaxI{lHhs)-P;Cjf`MB9bb{st@;w}Qz0 z7;y!#f(VxdISAQ`mSOPuQREMGkS%_-)hY*W@O6i=#4IXH%q9~FL<=mz5^HYBFy94P z?t(tI+Ci{@2!us9f3aQRM{yt!(~B+QM@1{H5iXkm54^czwZ;DpUQJzQ?&opDWcbV$ zD66(tv;3Cv4+UHaucmqkIc&HY7jiXUinelZ$=(*P=*JcPx!C**yKwiD*TTp0?oEOp zzP!c+KxL9nwPQ%~pX8CwZE@5}d3Y`E@a@TFr_?VyD0Cnecxq-4LI6VF78XMb5R@VUN~X3qrXNxfLg%--tI~IS$UNjC%k1WwopXH8 z+ric7!0fWo-Br4ARwcI*A_uGV-8Bx@H5a_8;WP^#_f^{Y5P~VH+$ex4ntoh&YT#hS zgt*bbVMr&*G$LMKi9%=W*<_TgWnVq-s5$iSpVdaMCx|GuLt4Pv$|`L(`aA1_ZNRx( zE(sIcA>^MrJsRI}CiyI}O_!dM+C}=tyL#t|w)(AKF#WRCD8_LO?5DxsG{p=~)gNcJ zFgLbFSO%FU?p8`ba<*xyQtZA;D%OrRB+71g{DuisJCZ$C@H>WXS8hN%s`3h(I*$s; zFMgh2Reln%O{l#i$&7wp`NhotW@;GEPwgHIqCuJC{n`C=>0U2s*Kl0Um@udNf1T_) zx@`K@zTScnf3Nh(3#DATg=<}$i_p3=rqO?9B*4TM>)Y!_zY#CYWxs8-|6{1^nvy_; zqO+}91Xhqi^|{q!NKyHv z`@VDp)&Bg3EHeNqj0oK~co=F=Ce2Luy?EVL_^zK!?&Q3Y^gr_UhSGe`#7{j0zC46J^!sq?2Gn2w>M5*oi9-{boF*k$FMmP=1A;oA=#4Yx(Dc;3&VEwi0F^Aq5WB$zfNWAg+ItD-1h1*b!Jrps=oxbyPX&5fD3*$C%!MmZE z6nGFNin({8Cu1mb-}v3x;lR%Bi?6Si&b{st^n`7dc`~9*^ z`6aZ}0^|%$o;=REsS2bfSvc^r-Zym$B%uQl&s6R6=W9*~wp|2HF}!p~%g{5T2UXHG&7)F8BD~4g7~-_(0OsgMp11kTu!{ zWiW+nQc>P|-0z>ZXM$ezBBbDBBYv|{_SYs*o+M_28N@uvl)}_ifOM7T}TUzcee{A4y&X$dD YRplPq$a`(=)rvnAbVqk;m3?sHpW7UQ$p8QV diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_screen_full_white_24.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_screen_full_white_24.png deleted file mode 100644 index 15df96114cab83425e80b3ede2104624860b50a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1793 zcmeAS@N?(olHy`uVBq!ia0vp^ZXnFT1|$ph9<>0eS*a18X}-P;T0k}j0~@0d12d4t z2!srbQVgtMHUmQ#qcofy$EX2S!vs`g$N(f6M1eT1J(Gb2s=fwDgMbGR15JX^0htx4 zIk|}?`9%r=MfnOwdd7ODKslxbOmKZ}3z!jXpd7=BdGC(`Db50q$YKTtZeb8+WSBKa zf`NfKCo?3XB*NFnDmgz_FEJ%QDOIl`w*aJz!KT6r$jnVGNmQuF&B-gas<2f8tFQvH zLBje<3ScEA*|tg%z5xo(`9-M;W_kvC21<5Z3JMA~MJZ`kK`w4k?LeNbQbtKhft9{~ zd3m{Bxv^e;QM$gNrKP35fswwEkuFe$ZgFK^Nn(X=Ua>O75STeGsl~}fnFS@8`FRQ; za}$&DOG|8(lt3220mPlD6`2T|@`|C}0(wv%B%^PrXP}Qw8_=_G_o3*jNG!mqsU$NE zhg~2Uh&FIwK-_2pa)A{%5+hwQb5rw*f&Q^GH?RRa4MPIqIV6n{xHKY3AZY}8%gVVZ z6_jK`^7C`-u%#dyeRNf52KWM_J0-Cs(Iv4Y)y~Mk$XM6FMAy(H#L&XZ$k@ujOxplR z0(}8821PBBIiLWsiU>+A&d(_YMWda$kpU3s8-hq1eGF-Itq7f=d6^}4Mo=wi!sxmp z5%Sn9M3zR^>R*(Z3QUY(w;DoiLl%Rox6ucsN2K%#N&H|@VCuKy0tO2#C)sgj`JXxn z%&${DT^vIy=DeMCHcP}&;CTI2Y5S&+V)9NO7O?9#eS8=FMC!d=-+3i&IhPMlf>k;m zI40j&yT5(r&3=K-%ciHd1=!Dc+d6mMs+B8W&3vonF-gS}hT5+BP5HuNQCRM!nY=7+ z*3I1$cljOUPn;sxuybauq_t+t665Jl-c3^ZdRSLSB{t;6t_lBVGp)@j^0ZpLcVF|Z zP6jo_H(WnD0$=2<{M!EOu-P%mg2;uhgwu{6c<)%c-h0hqj|S$xmpkX|Ugh7>k-TSj z)aLVPWkLGS%g(&{I^(ly?Sz-EfqTzY9j~yz^(xw1V#WT_QWm9U4J*wT>9Vl7X?|VS z8~03o#?N?x9X9O_E8b1gbh3Cb<00dfCsL0i&e#U4xJ*tI?wz$DdDa)sSqC;uNKRqh zHGSK)4=d80^7o}?XRyCE$`qU^Sfi!O_|Aprh9EmnJ-=3`&D1)*>1B+6R!!e%T*q*~ zadoXUEId3XF!<-SWnUPPZP#k0GBdZ}hC|+k0~c$7{AjOCKyeXl`6> z>eju)@`c=uN$dVtnyAICpRF(0_cC&Mt^dj^l@9y|;{LszvoLnEef)vzA7}kBT$eoc zrq{J)cc!j;xOCm?Su*R>nmdx89gyCAv_ZOVZAQ9o{y~28)VoWro+-HRweV*}EIi$K cPVzY{&)}x9sr&K8^PuA2)78&qol`;+09r|R&;S4c diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/ic_fullscreen_vertical_button.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/ic_fullscreen_vertical_button.png new file mode 100644 index 0000000000000000000000000000000000000000..c2a16d0edc4d74495310932de987ac97a43a75c2 GIT binary patch literal 2206 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/ic_vr.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/ic_vr.png new file mode 100644 index 0000000000000000000000000000000000000000..e3ddc84d13c47784146bacfc29385fb435af87f4 GIT binary patch literal 1180 zcmeAS@N?(olHy`uVBq!ia0vp^(?FPm8Ax*9Z@j?3z&JI)C&U%V{XYr@SqMCE?~(&X zOnXU?UoeA+vZ0-WsDgLt^eq?P{eORH>kQ+zV_&};=p<8vglvLNbFDy}uTw+#Zq`lmCuWMi0&WwmsE6wHZCEqGGUHu#FcJzm4t!d-sr1O$rKWV=Ot%gbM$b78{M$>jpquN+rD`lA$RxZB2bui8D1J@+q!3%?Mp zzLmGikN?E(%h6WVHrt;r+VX14o-J#vft>QEi>|#q@zF(ZdWX!O=Qa~H?fU=B72KJ* z<;~tRXZ~tF=k>hY+}?laxV-&D_xZ;HQ+X^|&$FfPec$=~=!e6#`|6L$*L)0;(>NRU z%lrQ|ZT*D2xLMu%$|~N@$@sW$Z|Cw;24ag;r@q|Lxc)(IO6AMDixPGGrYWi4J06}Y zaarE3Ev$Z(x&7|r`)mGA!x*J%n#XO5qP|Am}Eco VS6;1<+4>hCF;7=Nmvv4FO#s1_15f|} literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png new file mode 100644 index 0000000000000000000000000000000000000000..3ee41153da5f42596953f0fc6fb67f8443937f8d GIT binary patch literal 2066 zcmV+t2<`WYP)&> zcis)DI=|$9yPn;7X7<^6-(gIn(P%UpjYgx^!a*yps0e3m!JyGx z{`T^4DU?I}w&0t~-0CXcJBa9uY;k9BA!Etea<^B4`^`BV682z{@}_e4yM?C?B6>?5 z?k;mF8S3cFl?ktm-xtU4TuE4=1Na)+qOwukz*7gI>FHvee~Z~l5M`|o(ietm>U~zV zuD&FMxMT}fb|1pXp{-mTH}J$kL~lbDGEGn8&(g-2SZ3nl=-~d#$7ae#u0W`%c`Pv# zKMw=qYG7fQu!WKF03}B4?UO5b;vmNEL4#`i04Mje($Yg#Ci78lHui6Riq%vv#s*F# zQqidaDQs;QXCb8Z7;Eb4rOZi>p2tNf6>T7rk3ttAss3L@%8Zpr{bp|XqmYvwJ9MC* z4ZYdFA)B0gXMw?aS+ISYM6Q>nUcdgFgd8fTv|$W)Co=kboQq=K7q~}=;cPs<%gJ6f zrba&fv6OPQXn8&XsZxj`=_g2Ldx%mkL`l=ho)dLXHIO3{Kikm`Y{#FsKxpDpItH|tm95W^5Wd5a=hGe1Vp++aWOCg(1^`JBk+)V_=USdG{#l~CoFrYlG9s~Iw8l9haf3dPq> z25+{XgnSI=-RfQ^d&_}hvXN5g9E5xZX`P`$sVzm)2nqTM5mkJnm8dzwJS5X?#2Oxj zx4uL9p+0?z#`&zU(tXkB$3ttnZ;x^AD-P;BhSHb(6f@VbRpBo&!`M!$&Eae<=SB>d z|A-R&I+Sv07qk=6%)DXfzs)Mx)XE|FEo)G$m&P(Q_x8GgH&P=}5#% z%%;+7w(d;bv}4ETGHO**o@nf(|7c%dpxf8pxY8Fk+dH~4ja}V|Q1=aWeaElMLHW5C ziJKAqdB%-9$xtLlX%4Xi?Y3mqkYyAY)r!oKWblOpv2PS=(jE1e8*kt&EyG);N z8}fE5E_5+TGnk^j%mnS{K4Y?${Qz}CYKc{fC#kRyW=DN{KL@=G?IxGkf$UH=+d)=# zkCgch5o1*Rc7GKq<(RbOH>r;Gpt?XpA!xrnBMb9{e_3c4=PyEQoovo|pnGs-9n?x5e!pK5 zbV0QV$riK;KSd_dSjt7!PY7{2HZgPm`$zif>Pjg3nIE=appwqvs$+8aIbL{KscX~L z)C0v28zghPk>TTuKFdhT&BbO8jGh<>JK3>w{tvJ5?DW(Q^j4=z-JY*fY06i3xrr!Q zm-8#(dZWc#zl|}`#eT-bGmO}H=|yG+LM>mO9GkhTeC*2b8$*qP8DGcQdfOE>C_Rc- zvzM{-SuijOI0gpI^iDhj3063)dlNmsg3mw{2^OQ~ZVWz47;LsJ3TpRZE?` z3N5SQuZAZjsL1+hyyVvyvu$-T%?;W1aOu892clEa4#xQ^Td=BQGvy1cU)f&MhNmDmT5(vgZARHt^F02pm-8!69aMmyVfGS)No1&{rKW1p6llQc zods;c63&U1jo=dAJBYJ1e#c6}h(((H%{6VoYitXtJwa((@QJcFyNLG=VodcihoH-l znlz3JVZHi=yKXHV0ywayyXUkNxg&_LHh)e-!_Yp5Xv^kWj5yWa<`8(h(T2lF>HFvA!{@G+-&|1;ptV}vbz=;95kb6!M$eU@40 w22GlctJ%DFEwe_W(P%UpjYgx&> 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..c2a16d0edc4d74495310932de987ac97a43a75c2 GIT binary patch literal 2206 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_copy_icon.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_copy_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..18ee94dfd7f72c0df4a757ccc5a29383bce5e4c7 GIT binary patch literal 2464 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_download_icon.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_download_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..a11cc5277ceba0420b0ddef60ec454d4245384b5 GIT binary patch literal 3003 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_time_ordered_playlist.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_time_ordered_playlist.png new file mode 100644 index 0000000000000000000000000000000000000000..62f88f2828795dcea4b0de897358ebbe6d4db1b4 GIT binary patch literal 657 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAk#y#SvOS0Md=_<~O}3%h_m^ePGR z3uXu?ce(KYgt6N^k@%0L3Adcr$+vR(HB?(ZjhvzVU`6%@HPzk&yQ_qZ?mg1^R>!eG z@<>RmiG#JqKJn+DJ@Rk+7uaWP@f4l?eX6j>opsk47#JlyT^vIy=DfWc8GOh3J`UFFxDS6DZ>P_w%)+LhW-_ z4ZXg_>W!7rx0hWw$K+&`%CU5#&gN`RrcIXK0u$~(PXEn!|KLKl7N?K-Ax!~M%(G-$ z7e8I0)7Q6E;lUBv&?AkDIUkl7T3N6EboCW)?247U9GSCR3so*0T`KzG)i1S4%1+zM zFG?`(GXF8BAmFv4)nUhzGdK@N+%EN+rysri_4?&)zlxt-{CsNuJk{kQ5+Ls(H8nNMB2KuMJKD1H}oOtPldYg9IRMqRtuFP## z`rY2WxYhlc%LgH*r7DjVZ#nOle|mPO+Npi^bv1eigAU(M=n?$;NBU&Q+PI_tj2V+Q z?7#cY+@rDSjD$G5T;#Mv^A_dJ@G=r9UAJZHrUiXFT3TK)Ffhw_x;TbZ%y~O4JzUsP zq|Lp_K`l$cA>)#Y*OW;Ni!QO`bVLMRRM^S~O_m-P+?@mlB z6SS-7+bLgE_U`w&;&)Td@F-5~I8ragy-4TcMegUvIy!qdUkbP(rW^OET%@{&>1w;O z;mMfmDe0%KlxIa*J#{%2Bs}Mg&aAbQii(#1(mTC*r^$+^+B}Xw6N*#7AC zI!wEhZQ|OUv^)isr)VsV3cC5~lWF$XwojchmK?w)dNRipFnU zPU~4_lxN(2n>lUgw?(P*&uo;J)%`KK+Tocs2jBcN7r5G-mz=dgd`{C3psx}sufQ=FR6?gHa^A^UpWo-^+Z zQ+XsZFG$+Uce(35servog8$_=2J5=LvQz#b)+`~=XyjmHeRs;_0FlOXjm!Q{-&py| z?!0+C!&+~KT^v!H%oLR$`U!=0|Gu^Ew1-~#vv|EIZYfTvPb4gM%t|upH!=Kfma~^oR4u({VKak?xO9k3#`jE_a3h- z+93H}{=(BoOTteotoUwOS+?p+cK#WeJq#7$D}>|%nr#|;*STE&$hbwG%TndD;EVoB zuNyDsJ$Pg<+I&Lb#rYjv(szruE=$Yc@wRxvdMmz2_3w)ZFQg_mc8KR6XI%G%%d=8z zr`}1^o zz2MA_tpCrlxt{Jj-}U7E;y)Z}n(H$*8~b@Y~oOS8M$g3_VGEx`!8AUAk*1LSs zXE%|nk9D2>mVdtf-m~9z_WUI#^+{$5i9J)r&vLVy-L@%I66~zE{>R|h)}iwF$O%xf O&*16m=d#Wzp$Pzv(%g6e literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..e14a58d36d342c2b16f79f0124a1e7f739acc0f1 GIT binary patch literal 1161 zcmV;41a|w0P)A$QWyvZlM8yCR<-mtTqeM+$Plk|a!a-Jzi3c^15VQUVc#xAv4{AKyivohk%{n`@s5wf0+la0CPZNDc8D5MuC+D`~Lurm1%IPJ?KI3P2ld_ z{!73S2wwre0~g4Q>Lz30tH5|}|9J?n0VleA{dUw*jmI^{+^F%5I-ZRx_9WEQvF2Q8 zE~jNieWvGgAvLH6a$*)Vey*B+-KzJT_2sj0N5klz2l%g1Qt;S<5y=PwCR-2$MGgRW75nxrz_AKyM zHFEloG6sd*c~+#QFX^Wj%F0oQdMEf6geL$YZcryf2$wo( zr%Z_bS6Brs4juu*Hrk(^H^m?uGz=_n*&d<9{SLB0l~Bf@NS5bWq*u9~S}0@CMern7 zhxe1&zQLs9Q7nXTNqq(48Q>NedN+hH(*b^R(ppGXxj4(5B_Iy0O<1f&ZOO0a9s=;3Hb>NQN;S(_QDe$OvHQ6{ywyfqJa2$9XxUE$t z@I8c=LI|bH-le*ox*hxk*idlzPr6@+hpXv~QLlc7;A$$yc5JH%)qS3Mj9R;Q+4zXTx0XPjF zhoR4aUx0Hp&fc%mTr@C!?V`!XA+_V&??9sN$(Gt)W71)@XvNw8i{@NtPeD(bZ_b5M zPlD@)+d>_$8huM~xH(z3uD+oeZcl2QY8rG(-Bh=(zC&GS_T#oSb!$l^5{X12kw_#G bi9Y2YyBs<%NV;AL00000NkvXXu0mjftQ8@< literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..408a0435163597b7e2e65a452f133ffe0ae0ba1f GIT binary patch literal 1435 zcmV;M1!Ve(P)+$YRcDlAnJU{90eR#h0 z?0;uwXJ^(#9*@W4@pwEQkH_PQf_bTzx!jNCb+)u^2TZvc=8QlLorMONr#ozMZ37G$ z49ux&4BBpsYa7H2Xwfif9D33g+ZHe{_P~t&P$|Ns?Y_EEr5)M?GY%LA`RW!XC`tPw zOd7u&lawt%8kmcnMEQ+4>@C=Q26_m(4Z1oxvf-RU?)sJLIAKd@(rHVuTu{uffiW*( zbtiN`Wq9li=tbVPV%ZvlP=xQm;xp)WsGBk_nHeDYaXMG0peoFhInH8c*w|% z^k%f6JSNEBvGy(t9M=6JHJP%d?_|aa}TsOv@LDUYiI@!Db>@A z8$&J3b6vPPA98KmbHo;B!aUP~5_h9+Bg&scQ${I(O5qcaIZk;CbOxFWmaVB)RdA)( zBNN{kC-aIe&LkM*8itnYjY(tB#ZIJs6xt1KW4_>6E242YnCimE`p}L==+~IU36y7v zI?iGxXG@ucQfuY+zYCN(E}4^tuP3x!#C5zFmpGo|=kaljD)A&n9fwXPhO__|gQRa0 zj^nt5NhtN8EDl3&Ks!*P9>Mb4#Gn@7P{p$3xe=m+BP!@lq76w-o)WZkcs5kKu!`!; zAK_{Kv@OP@r3NW=(3Zp*+)Os$7e2u1<5Vf-YBL)BL8aEr*kZ%DRIwF;l6Lam>V{s= zh1Pr4NlO~;{x@r^rzJQTRGuc?XQ|%avCh*80V|r+ zcQLsO;P&|@)=ptF4|6_Ns&mp7w^B)MkP!4I-m;}z4LDS>6-9VNQ`*kdz5Z2fkdl#r zLTHDyleV#?I-IIl9D1lBFV9qWLcbBseIGn+w}Shq_WaHvhYN9uVBHiO}88(Jqr@BnEHx`cpmC}IvCG@oKU791Y*ddC)SclqjO$^}I&)+o-T9>fS7hRVD-#Gcc^Q?723u_A1SLnznJ_XWQ!smF zO2&4KERiWEu1r1Ey-+nIQ&qP3Oi8F#V$Ob<%(ERM3uJOKc=e@^^`vDuFZhtj&G~NI zapG`lq?ym7K`uyx{2tYgPYW`|`z0QxAK;7!zzpQ1<+Yj{NKZFE23-~UUK-}#q1TnV z!g<=;so3Gf<-H#n?b;miwTv}8XD9{L;S4bJR7 zs#r6T*J?(gqtI8#*WX056G|0Y)qB4L>z4+`jk|_upPpy;h)DyiU$r$&Iv}s++TvF| zL0@Pfq9m1cU&xoF3Nh79db3S`)cD^LQ{4t_acx6T-JW3mmn1P~ME+yIz9*@W4@pwFK%76DXP~t$w8AkvB002ovPDHLkV1jXfp!5I$ literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..5360c1cc29b008029d946a1e15304bfdf285ebaa GIT binary patch literal 2272 zcmV<62p{)}P)9mjWW@6MOAjUDU=f++=|suWOxmeNwF>O>J02*e{n5NIlpu|$xn@(5{4k(!o2 zg3KSNMCBD)Din&6s?eyYafA9t6KE)DNvi}};@EZKB!1rcUVFPcGrPlg_HOs~&X?O< z8^7fJ$a8ypJM){F@BZd(MF|NB2?+@a2?+@a2?+@a2?<$hSX!>z=Ik!p;(xF$_Bos9 z5Md|9=q>#uC^Z=_Bp~$~_FoYDsD~R!|BJ86E)6ciHuBP>) z&n5fFZj#t^dsif$xSFWyXYteZDDqXf&Z(>rPC-MupoNh*J$w1PVEf>l3i>yCW|gJ>C0>-iArE*Z&t!yz@Pqk$4Mk zZxM=!H_A-7pZ++0kx1kfAJ%cwEQRG{b7G$9=$r9m&kblDu z`_x$C6CI- z%Jx{DyedH`vI%p~peUy$XnsOm(rfh7bOMp5L?p>I$oOVkh*m{-&Rs?6#S!!e;sdy@ z!?n}zX%P7DLh#Mec=DV-9Xi#mXpTRFkgc92I4-Jo9O)0k&X~M+)C?HUMj!9Pzy;r~_4XM5!HM;|+)a>gD;98VnF>(n%V_~JjGjt1Eu8Jtit!f!x;SKMX;}JnvzSK+mL86RU&lvf)CE zQ`V1lSgklF=8nI~rj~&?5~k~2sK8*27oGm=Q%|mfr`!)wnCCs53DeYX4YDb*8Nb%z ze8k^0xpW+eQ%DC3yktl}dsIOM`cVPRKif5m#a(#o$9d_kOV5!44F=hB5tj8u%+F>^ z!Z_&}!sFU<@f<(g)O%2g6P`e(6AJilu}a^Qqo&>)WXnZZyvMfqA$Sq`c%DZ3hs@0M z@)Jjrdi9L-qC1(}SNKD@?|}mx$jppgas|cEq$0TfHY`ln;|1J6r_LvX(kyAx6QeN* zan|QSZhs`j$)j)G5@chcXnH1nIe6>a-_2~>egHGL%8a+dDP7MUs`LAzuqXmam`MjQ z{VlD>eDitRwsv=PteLz>vIS?+1hOn!u9sJj)S{-BYaDx%Sk zBGIkF7Exi_-AMmEq9z|SwbYvyX+Z_jGlfoc%$rb|Hg}^BOr0G)^J7%%0DiE1(Z9qD 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png new file mode 100644 index 0000000000000000000000000000000000000000..c2a16d0edc4d74495310932de987ac97a43a75c2 GIT binary patch literal 2206 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/ic_fullscreen_vertical_button.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/ic_fullscreen_vertical_button.png new file mode 100644 index 0000000000000000000000000000000000000000..66a60db633d2ba85116e9b6e6cbe53f5cdcccaaf GIT binary patch literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xZ3?!EyURMI7)B}7%T!Hj|BEULZFH4|O-jX1{ zV1{W2rkwcC!Fl}K(Hl44yS_I9N(6YiIEGZrNluVpUChANGR1-6AbauDiy}MQnjDyV zPV+r;TcACwC38}m$gV}aGyEPLG{_7Q4D50{s3Gw#!Qk2Mg{wPOD9xI2Xx@sfWRac} Z28P!wG_Go~ScBZj;OXk;vd$@?2>`^XV5$HB literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/ic_vr.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/ic_vr.png new file mode 100644 index 0000000000000000000000000000000000000000..92636d83776265f6cbb848409c27bd8716d55f00 GIT binary patch literal 1166 zcmeAS@N?(olHy`uVBq!ia0vp^(?FPm8Ax*9Z@j?3z}O$)6XFWw{vQQ{CImX)eGC9b zNoz@vUoeA;ePBXixssFHz!Nz>EC zF{EP7+Z!)~g$*UxKE!gZl{vMTwKd3bO^~a@PLX~lu@8$LFm`EFJZQ}5Ui65OOYYCZ zV>zki=~jM=CR?1d*{|>Ud7t%fpG!C8`kY;`fcjIq-BZF{l3g!$ee$^3S1+-A)2dx* z&(}pw*;4JlXW6b*m#S9m`gN)D(5u&L+HUPWzdP4Cd6DMM{Wo(zdh6zWZcGVYwDI8U z4BHI-&{q>ImL1N0dB1$=?Y<6WyIXnclM8rWya>sB^M+wp-|W8N5~denZ{IRj`KEEc zaQ^Rk^Fyg1!5M<@6BaoJDVzaXGM95^MMV=LJw40p6r`Z z`9s}6>$u^8(EVOAKUpnzc6h4=Sxzr>?Msf@ef6LAHH#uPC&OuS$1WX=u#)gT&Z73T zBJ{gvy|3T8$8DV<=N??yBJTY?%?q{1=&M-Q^x|@{$ z{7fq6tm7?J#r*GPdJ74$FAJ@HpI!6*zc+tFJ9pMv?$`s$n=@xAu7PkDZ2Y(4Sq^wTF({{Q~>^u?z##ZO!jmASgpj1|tYY3J{;&nz-J z_vdy*PHCWD@x5QWzbE~BxOi_!-{x&nzqnIu?Ki7kx37)k7yYC;du2=SS*MTJ;`h~Y zi>2+?7v*mC&3^xF!Idzz$u~7Ze@5Qev^NkXD*vySKeaS6UElpj3NRHjc)I$ztaD0e F0stiJ^)dhe literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png new file mode 100644 index 0000000000000000000000000000000000000000..fa3838a7e3a6d19d733cd00c67c89ce5b166f52b GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xZ3?!EyURMI76a#!hT!Hj|yx_dz>z_bH+$BMN z!3;bHxCH)laPprxo@l3j0VwS3>EaktF()}ef^{*2q=A;=4KFqek&P{C2WGrk$h)}f zM3{-G2+IVKMh6kgF1Ldk67L#z?M&S;mDM>)F!1Uz4T+Tu4EJstuo|9Tpba#R!PC{x JWt~$(69C1lP5}S_ literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..fa3838a7e3a6d19d733cd00c67c89ce5b166f52b GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xZ3?!EyURMI76a#!hT!Hj|yx_dz>z_bH+$BMN z!3;bHxCH)laPprxo@l3j0VwS3>EaktF()}ef^{*2q=A;=4KFqek&P{C2WGrk$h)}f zM3{-G2+IVKMh6kgF1Ldk67L#z?M&S;mDM>)F!1Uz4T+Tu4EJstuo|9Tpba#R!PC{x JWt~$(69C1lP5}S_ literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png new file mode 100644 index 0000000000000000000000000000000000000000..66a60db633d2ba85116e9b6e6cbe53f5cdcccaaf GIT binary patch literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xZ3?!EyURMI7)B}7%T!Hj|BEULZFH4|O-jX1{ zV1{W2rkwcC!Fl}K(Hl44yS_I9N(6YiIEGZrNluVpUChANGR1-6AbauDiy}MQnjDyV zPV+r;TcACwC38}m$gV}aGyEPLG{_7Q4D50{s3Gw#!Qk2Mg{wPOD9xI2Xx@sfWRac} Z28P!wG_Go~ScBZj;OXk;vd$@?2>`^XV5$HB literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..66a60db633d2ba85116e9b6e6cbe53f5cdcccaaf GIT binary patch literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xZ3?!EyURMI7)B}7%T!Hj|BEULZFH4|O-jX1{ zV1{W2rkwcC!Fl}K(Hl44yS_I9N(6YiIEGZrNluVpUChANGR1-6AbauDiy}MQnjDyV zPV+r;TcACwC38}m$gV}aGyEPLG{_7Q4D50{s3Gw#!Qk2Mg{wPOD9xI2Xx@sfWRac} Z28P!wG_Go~ScBZj;OXk;vd$@?2>`^XV5$HB literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_copy_icon.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_copy_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ede23c0ec9128f2823bd88c142c01005f1aa595e GIT binary patch literal 499 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAk#iU6MwS0Md=C;;W_wz)vJT9gF& z1v7Y-H>7Eb9Qt3l^Y(#*UxIYIq^=zekNueZ#^293;jN9@^(W6}w%+4%KJ|T-Q1qUw z;`Uz)I<(VWKFqas0h)2h)5S5QV$R#^+l87OL|PL?t|W^IcSWAD{QWO~nb@@Ioy{Uv z^Y$;?apw4;oQ)A;$^S!@GNp@yvef1_Muc%cZKydIvXNye*(}`YTGCD<vZ%ES=IrP79=j{UrzXa)aNnJY{9{Vx*jlZ8yf?c0)qE+$qO`B(w+D5#L z<65_!PwZUJbvcfUb8hk`E!t)5w)MzcZb?yVwa6#WlnMe|+GabS`rfQJId`s3wR^uI z+m8=FS)&_GmhHJJUZL_;c1h=}q6_D>)9cROkYB-X;Utk)oP01Jm@YPXx;TbZ%z1k~ zJo=D<2-|~Z3%+-~9UAXCnZMtwe!utV-tXVmXD^t#&CHWkKL13y?(4aH9y4R>bCcjHT7678*lc?c=!9>`f|Jb%JX#$6n4M+v#8$Eo8k1PEr;HF zOb)eg$!2&Rc7Nf^>$15ySxa<_Htcn7U9)3#yhf124)zC%wr_)FEe;%3zT4!^`Oxsp zP{_AP(=S|#ahyzm+gQu&X%Q~lo FCIC9-r0)O# literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_download_icon.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_download_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..1084bce581f155b9f2ccc341ba06132fdf50cb81 GIT binary patch literal 617 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2U^4J@aSW+od^^M1kJ*u@ZF9$@ za4)W19+nKQ4>&R{7{oo-9dO*i(VP`3W#uvdEaLcQnW__01M`ao}S-ewI^7p}pbpGZw)K&IbyMn`SX_#GCam48Nee zT>@1n~M666b zpX0omf+hD)`c+J2@<#sQYAH_a>f66`kJa*4Ig`!4=(>hl`6}kClj0smWZwNeBFIz zn2_mLR^8||D#|8hd}y!|f(DKUs78*RA8Sfl6|6hibaz7L&!-L-;}SF5q-=p{xZ2ajF{EP7+i5SuFFS}F z?G8~A5zQ9}N!iHC#i0?961c&^HEN}_UP9;E>Ca($;2NxGE|-Vr!Js zRf%U;t{n{C-=Zo4G~e`I=if z?cJy5G0)LC_w&aV-@x7C3IPuTV^R|IV*85Msr-ohrThJ%)>%nCAWt=PopS$)@`H|v zc{`p2FZrDow3dB)N8jxye=;(|`W9QCJi7bSyO3<2?;PLv9m>2aBCp`Gr6;+mK=j;U zPv4Df!71JG*>*t={adf*&x=alBRY#W-~ZL&BUL#y_&yOr~1shyH4Nua=h?_1xrd;&yZU@AP9V%dh`P-jH%~lIp&HOx%xJ3$8mVT?ghK22WQ%mvv4FO#oz1 Bo;Cmg literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_time_ordered_playlist.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_time_ordered_playlist.png new file mode 100644 index 0000000000000000000000000000000000000000..24a8f417c66270eab3b8d7bd6583abdf2b3d76fd GIT binary patch literal 491 zcmVUH@^^cpChw$ zqh`S)7I!}_djUP}_`zW0cDKL+dq)2VY*7SI6h zftA!*DydbVwqszb7wg2{%})m1BJbt1e0(e5?pHso-7vG6;HO(NTXXk=5^|J-9?G$H zBV*_xFj3Yu#_ph|nGLtP*TH;Q=d5=7Jl1OC?j658`DO=&uFP!J-H$q6z+cv32Zi>4 z@zhz9$XOtOOJFH=-d|UsKy6#ytP}f%S-&_jvz^o-epSvL)CAUn|FRK27Q|GB1-~!kNMp9>~Bw#Le h1`!bv5fKsTjdy>KF7#~4W>o+H002ovPDHLkV1iuJ*?Ry0 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_whitelist_icon.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_whitelist_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..6e3e22d7567e067c86f24b328eb638157dca0326 GIT binary patch literal 1588 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..2ddb3c4e5eb837a31a52d76687ce7345e050a1af GIT binary patch literal 856 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2V3zlEaSW+od^^j!=!%0t+uDXJ zojX~URY>37BiuEiVZ!192APAE3%H6Igmy4k`ZqUDSoJhJ+Ij1fsby~3neNf`;alA= zeJS}~b6e_d-`0(af{cO!*boOx+UA>LRUL7>*V}SBKa2TJQ!LK<>boreRL=g(aoMKt z7EYE}%&ax-AKPaf|zl|Igg6xP0lem$j<$(kfr1 zvx-{c{L3y~W=ML!$o^v2mnZvnOK)1~yzAoK=;32#nbTFsEo&&$1Ot>te!hUb-G0UncBYE^HtR5hpUyWnOqjrngSv)1G_&Z}xp zF{XJ*GcWI%YrnwgqPLHh&Yk@h`=&A-xqYtja>Udde#`;PD!<+4sAv|P`M88(D(7|W zmwq}6Lo8DFboW#zN=c_bEmO&!ux~;A#pQ;aiRs*%bU&%>)%#}n(S3X3B(|5HJ_&DZ zWU8}F*I63=yLM_BTl!yZ^{1DG=ZHl$DO>2WMC}T({8;d1%cnJ2QJy3AWs( zE45E?b&<_#y#k5ibH5{QKkh5oCiz{^_a5sEkrS2$V(-F@mpRxkP}??NWH0xIZv}@~ z8k3^M=Lb&K@VMcdzPmZ)HTS1Or#K6oqWvr!ex0q%R=sH7D|^)L!4`*I(!XB4Rblwb zsm^d<`To0WCOvaHC3iufKt`o{)z8~+<6dy*UTbJ;dCXAZQQr~SI7N4X;e#s*wMxr6 z9e2I|^(lIZXTi(mp)(S4ynR+LF`lqvn)rgy1DpcS9jYdXE(kqTI6-eh`}!r*=gjxm z5b5d7w)lRSudu2(|H~qSgy6P9^ zC4ZLrYrlQ!-Xore)&~mTKJWSO=LD~b5{vh<&6$;abY6>jV6%yZ47ZJ?gJ_f$_Eg)b c!|{jN$t8y2>dO>sV2)w%boFyt=akR{00vihrT_o{ literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..fa3838a7e3a6d19d733cd00c67c89ce5b166f52b GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xZ3?!EyURMI76a#!hT!Hj|yx_dz>z_bH+$BMN z!3;bHxCH)laPprxo@l3j0VwS3>EaktF()}ef^{*2q=A;=4KFqek&P{C2WGrk$h)}f zM3{-G2+IVKMh6kgF1Ldk67L#z?M&S;mDM>)F!1Uz4T+Tu4EJstuo|9Tpba#R!PC{x JWt~$(69C1lP5}S_ literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_screen_full_white_24.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_screen_full_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..66a60db633d2ba85116e9b6e6cbe53f5cdcccaaf GIT binary patch literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xZ3?!EyURMI7)B}7%T!Hj|BEULZFH4|O-jX1{ zV1{W2rkwcC!Fl}K(Hl44yS_I9N(6YiIEGZrNluVpUChANGR1-6AbauDiy}MQnjDyV zPV+r;TcACwC38}m$gV}aGyEPLG{_7Q4D50{s3Gw#!Qk2Mg{wPOD9xI2Xx@sfWRac} Z28P!wG_Go~ScBZj;OXk;vd$@?2>`^XV5$HB literal 0 HcmV?d00001 diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable/yt_outline_screen_vertical_vd_theme_24.xml b/src/main/resources/youtube/overlaybuttons/thin/drawable/yt_outline_screen_vertical_vd_theme_24.xml new file mode 100644 index 0000000000..7f8290b4b1 --- /dev/null +++ b/src/main/resources/youtube/overlaybuttons/thin/drawable/yt_outline_screen_vertical_vd_theme_24.xml @@ -0,0 +1,5 @@ + + + + From 80bab2fcc69c083978f982307bd304294f527294 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Thu, 16 May 2024 18:57:04 +0300 Subject: [PATCH 05/15] feat(YouTube): Add more start page options --- .../youtube/settings/host/values/arrays.xml | 14 ++++++++++++++ .../youtube/settings/host/values/strings.xml | 7 +++++++ 2 files changed, 21 insertions(+) diff --git a/src/main/resources/youtube/settings/host/values/arrays.xml b/src/main/resources/youtube/settings/host/values/arrays.xml index 4c80d1b529..283a018b79 100644 --- a/src/main/resources/youtube/settings/host/values/arrays.xml +++ b/src/main/resources/youtube/settings/host/values/arrays.xml @@ -30,8 +30,15 @@ @string/revanced_change_start_page_entry_shorts @string/revanced_change_start_page_entry_library @string/revanced_change_start_page_entry_liked_videos + @string/revanced_change_start_page_entry_watch_later @string/revanced_change_start_page_entry_history @string/revanced_change_start_page_entry_trending + @string/revanced_change_start_page_entry_gaming + @string/revanced_change_start_page_entry_live + @string/revanced_change_start_page_entry_music + @string/revanced_change_start_page_entry_movies + @string/revanced_change_start_page_entry_sports + @string/revanced_change_start_page_entry_browse @@ -43,8 +50,15 @@ www.youtube.com/feed/library www.youtube.com/playlist?list=LL + www.youtube.com/playlist?list=WL www.youtube.com/feed/history www.youtube.com/feed/trending + www.youtube.com/gaming + www.youtube.com/channel/UC4R8DWoMoI7CAwX8_LjQHig + www.youtube.com/channel/UC-9-kyTW8ZkZNDHQJ6FgpwQ + www.youtube.com/feed/storefront?bp=ogUCKAI%3D + www.youtube.com/channel/UCEgdi0XIXXZ-qJOFPf4JSKw + www.youtube.com/feed/guide_builder @string/revanced_change_shorts_repeat_state_entry_default diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index 5025c7a5f7..45f3b03518 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -271,15 +271,22 @@ Limitations: General Change start page + Browse channels Default Explore + Gaming History Library Liked videos + Live + Movies + Music Search Shorts + Sports Subscriptions Trending + Watch later Invalid start page, resetting to default. Disable forced auto audio tracks Forced auto audio tracks are disabled. From f37db7b1f1d44254eabaa8bf218959bf516bae19 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Fri, 17 May 2024 12:58:08 +0300 Subject: [PATCH 06/15] refactor: remove period from speed reset toast --- src/main/resources/youtube/settings/host/values/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index 45f3b03518..f6d83fe8e9 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -813,7 +813,7 @@ Tap and hold to copy video timestamp." Show speed dialog button "Tap to open speed dialog. Tap and hold to set playback speed to 1.0x." - Playback speed reset: %sx. + Playback speed reset: %sx Show time-ordered playlist button "Tap to generate a playlist of all videos from channel from oldest to newest. Tap and hold to undo." From 64e850422e05e92411a6a7ac9dd74137ab715ba2 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Fri, 17 May 2024 13:09:19 +0300 Subject: [PATCH 07/15] feat(YouTube): Add `Hide live chat replay` --- src/main/resources/youtube/settings/host/values/strings.xml | 3 +++ src/main/resources/youtube/settings/xml/revanced_prefs.xml | 1 + 2 files changed, 4 insertions(+) diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index f6d83fe8e9..65bfb1986a 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -733,6 +733,9 @@ Limitation: Video title disappears when clicked." Quick actions top margin Configure the spacing from the seekbar to the quick action container, between 0-32. Quick actions top margin must be between 0-32. Reset to default values. + Hide live chat replay button + Live chat replay button in fullscreen bottom right corner is hidden.\n\nIt appears in fullscreen when closing live chat. + Live chat replay button in fullscreen bottom right corner is shown.\n\nIt appears in fullscreen when closing live chat. Disable landscape mode diff --git a/src/main/resources/youtube/settings/xml/revanced_prefs.xml b/src/main/resources/youtube/settings/xml/revanced_prefs.xml index bc8c1ff2ef..b088de0201 100644 --- a/src/main/resources/youtube/settings/xml/revanced_prefs.xml +++ b/src/main/resources/youtube/settings/xml/revanced_prefs.xml @@ -302,6 +302,7 @@ + From 50f6cf3141edefe29e4e09313bcc88e8d0135e14 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Fri, 17 May 2024 13:28:17 +0300 Subject: [PATCH 08/15] feat(YouTube/Swipe controls): Add adjustable `Swipe overlay screen size` --- src/main/resources/youtube/settings/host/values/strings.xml | 3 +++ src/main/resources/youtube/settings/xml/revanced_prefs.xml | 1 + 2 files changed, 4 insertions(+) diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index 65bfb1986a..9d44121084 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -1053,6 +1053,9 @@ Limitation: Official headers in search results will be hidden." The amount of threshold for swipe to occur. Swipe overlay text size The text size for swipe overlay. + Swipe overlay screen size + Percentage of swipeable screen area. + Swipeable area size cannot be more than %s%%. Reset to default value. Swipe overlay timeout The amount of milliseconds the overlay is visible. Disable auto HDR brightness diff --git a/src/main/resources/youtube/settings/xml/revanced_prefs.xml b/src/main/resources/youtube/settings/xml/revanced_prefs.xml index b088de0201..055fb684bf 100644 --- a/src/main/resources/youtube/settings/xml/revanced_prefs.xml +++ b/src/main/resources/youtube/settings/xml/revanced_prefs.xml @@ -478,6 +478,7 @@ + PREFERENCE_SCREEN: SWIPE_CONTROLS --> From a651d2fd82d66f7f2b9973ec5b6865fe2b6172c6 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Mon, 20 May 2024 17:37:59 +0300 Subject: [PATCH 10/15] chore: clarify swipe overlay screen size description --- src/main/resources/youtube/settings/host/values/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index 9d44121084..a5ceedd884 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -1054,7 +1054,7 @@ Limitation: Official headers in search results will be hidden." Swipe overlay text size The text size for swipe overlay. Swipe overlay screen size - Percentage of swipeable screen area. + Percentage of swipeable screen area.\n\nNote: This will also change the size of the screen area for the double-tap-to-seek gesture. Swipeable area size cannot be more than %s%%. Reset to default value. Swipe overlay timeout The amount of milliseconds the overlay is visible. From 55019b1ae91c01838ce9488fbb4e433ec387c677 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Mon, 20 May 2024 17:38:57 +0300 Subject: [PATCH 11/15] chore: remove whitelist icons --- .../drawable-xxhdpi/revanced_whitelist_icon.png | Bin 2835 -> 0 bytes .../drawable-xxhdpi/revanced_whitelist_icon.png | Bin 1565 -> 0 bytes .../drawable-xxhdpi/revanced_whitelist_icon.png | Bin 1588 -> 0 bytes 3 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_whitelist_icon.png delete mode 100644 src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_whitelist_icon.png delete mode 100644 src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_whitelist_icon.png diff --git a/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_whitelist_icon.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_whitelist_icon.png deleted file mode 100644 index c9ed8cfdf2a34b6d2ac92ce6d7570db971d18acc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2835 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 O&*16m=d#Wzp$Pzv(%g6e diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_whitelist_icon.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_whitelist_icon.png deleted file mode 100644 index 6e3e22d7567e067c86f24b328eb638157dca0326..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1588 zcmV-42Fv-0P)$cG@PhfoTiDoX4v%2dRe3Og)4S(7`iSHm2HVDyVu$jMT z6h}&*N#r~X)`7)!`MN_s0eis^I1G-1f4~LcVsJH>4{ipx0o`FP2H5CF!^iGGN3>k< zTHqp@NEAuBV+LI^?FsM(xED;BsBiN*<%4^`PEZ9d-ep53c1|E@ol{2}wNl3M$zZqT z>4N&e%vQO+$EY(4^n%}k;&1SjZ=GE85wtxQOy&nz%9o7J)-1WQg|CiF*`y z7BO2*n3||S>IN#f=Yj)3u?N)u*K5cvYzGljO$^OgM1=`xB0@nAIBZIGHJvVg7a`kB z%n{mt+g1}5uV$1H?xjGl6pF{n($NL^GVmWb4VFs??bE#NwP59{nWi3ndQnOEC%FIi~qf zT8&ud7Z9v5viH)k(6=m;zA@dm`s&t*pHH|^!96~mTrMMkTiJfb_WKYWxpO(UUs!$b z;aXpV<{8n~X)mZGlbqfKzPf!4nr#G!e2MDwOE5`e-U{!p9li!lALSXDma)xrO~EGp zVJf|cKzt3FYDA~f+0xjnK$A`y^Rz|<@q4}oX;M$2shLcoAd}o5))|#pyRSj+R@J;! zW>J7imzY@1y?KSNLGIzKNxe)XXOpfnv6{~I3SWcvTlHKf>vA;ddeeQt%N^fjUhE#R zH_{J$`}*X=k=YwJwKR$8CK=s}u8*ALxe(0*iYl0ryr+LA^)oSvIvN^QXmHQ>6O&5# z!4W#<%Kdx$^?;{slc@26>3!3WJ!LjzTa0jL$`W4P;7V;0eYNP}C)2yai#TmEWQ&bZ zAG29$>-hA8CzVO`d%(2*LYvvUTda1-+$dddY;r~kaC(_UzGhxN1Bxvf$w*cP!sR2h zqyHVcll5vp3(mwQk^7Ko)IeEb8po~@(g71t=oBxUiA*BzHPhEWCc4NC$gcyZOvI{! zxnoU2m)0k}3@$8ETLTy5>w%&Q7B!sAc?Z5&lX8|2UmlTq5WWu-TAwpFzE^e`@SPPV z%|z%RP-uNlPj(i>SAy@XFzHH!4g-bO=PZrCwCpnAdt1a7QFfIxtc193u+Kzlea`9( z%eO2A$8_+Dan?6c%MN89MBxnZR-IBULGhkRNOB$2y&t&wu7BCqKa4)$qBBj>#i8&? zP&K7mf}&LxZI2;QLsQ@Pflq;pAvW%Crn21;3rn4zGqwo50%#rcX`s+53w=e=T=|?c zc5FI9u1vWFXo;VD&aqiL4tl}3fq0H>1TLbcl3u$Nuj~}bsJwx0T1T`JoL^VsTedah zsZqWkfX2HusID)ST2`Z1hHHR+t5H7&ew6(kU>hTlKhw4hcsFq3IXk(T+^A(@ryNAE zenOzR{Q;owM?P_kWc|+LLEvU6VlR!{`kzg#iS5uLA@@6|1*e`-x|41K3xOWu`niH8 z_4IK$0dzNg2Zn)u5%d*zK#kTr;95(kN5NgxIO1L4TL$^0000 Date: Tue, 21 May 2024 00:33:48 +0900 Subject: [PATCH 12/15] remove unused file --- .../patches/youtube/player/overlaybuttons/OverlayButtonsPatch.kt | 1 - 1 file changed, 1 deletion(-) 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 f41642ba88..41b8c628f7 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 @@ -117,7 +117,6 @@ object OverlayButtonsPatch : BaseResourcePatch( "revanced_copy_icon_with_time.png", "revanced_download_icon.png", "revanced_speed_icon.png", - "revanced_whitelist_icon.png", "yt_fill_arrow_repeat_white_24.png", "yt_outline_arrow_repeat_1_white_24.png", "yt_outline_arrow_shuffle_1_white_24.png", From a1913b67f698e7c0b80819d3299d9129b4731642 Mon Sep 17 00:00:00 2001 From: inotia00 <108592928+inotia00@users.noreply.github.com> Date: Tue, 21 May 2024 19:47:59 +0900 Subject: [PATCH 13/15] instead of using try..catch, check if file exists --- .../overlaybuttons/OverlayButtonsPatch.kt | 55 ++++++++++--------- 1 file changed, 28 insertions(+), 27 deletions(-) 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 41b8c628f7..2778ff0e79 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 @@ -38,6 +38,7 @@ object OverlayButtonsPatch : BaseResourcePatch( ) { private const val DEFAULT_MARGIN = "0.0dip" private const val WIDER_MARGIN = "6.0dip" + private const val DEFAULT_ICON_KEY = "Rounded" // Mapping of icon types to their respective resource folder names @@ -74,9 +75,8 @@ object OverlayButtonsPatch : BaseResourcePatch( * @param context The resource context for patching. */ override fun execute(context: ResourceContext) { - /** - * Inject hooks for overlay buttons. - */ + + // Inject hooks for overlay buttons. arrayOf( "AlwaysRepeat;", "CopyVideoUrl;", @@ -88,9 +88,7 @@ object OverlayButtonsPatch : BaseResourcePatch( PlayerControlsPatch.hookOverlayButtons("$OVERLAY_BUTTONS_PATH/$className") } - /** - * Copy necessary resources for the overlay buttons. - */ + // Copy necessary resources for the overlay buttons. arrayOf( ResourceGroup( "drawable", @@ -135,39 +133,42 @@ object OverlayButtonsPatch : BaseResourcePatch( } } - /** - * Merge XML nodes from the host to their respective XML files. - */ + // Merge XML nodes from the host to their respective XML files. context.copyXmlNode( "youtube/overlaybuttons/shared/host", "layout/youtube_controls_bottom_ui_container.xml", "android.support.constraint.ConstraintLayout" ) - val marginBottom = "$BottomMargin" + val marginBottom = BottomMargin + ?: DEFAULT_MARGIN // Modify the layout of fullscreen button for newer YouTube versions (19.09.xx+) - try { - context.xmlEditor["res/layout/youtube_controls_fullscreen_button.xml"].use { editor -> - editor.file.doRecursively loop@{ node -> - if (node !is Element) return@loop - - if (node.getAttribute("android:id").endsWith("_button")) { - node.setAttribute("android:layout_marginBottom", marginBottom) - node.setAttribute("android:paddingLeft", "0.0dip") - node.setAttribute("android:paddingRight", "0.0dip") - node.setAttribute("android:paddingBottom", "22.0dip") - if (!node.getAttribute("android:layout_height").equals("0.0dip") && - !node.getAttribute("android:layout_width").equals("0.0dip") - ) { - node.setAttribute("android:layout_height", "48.0dip") - node.setAttribute("android:layout_width", "48.0dip") + arrayOf( + "youtube_controls_cf_fullscreen_button.xml", + "youtube_controls_fullscreen_button.xml" + ).forEach { xmlFile -> + val targetXml = context["res"].resolve("layout").resolve(xmlFile) + if (targetXml.exists()) { + context.xmlEditor["res/layout/$xmlFile"].use { editor -> + editor.file.doRecursively loop@{ node -> + if (node !is Element) return@loop + + if (node.getAttribute("android:id").endsWith("_button")) { + node.setAttribute("android:layout_marginBottom", marginBottom) + node.setAttribute("android:paddingLeft", "0.0dip") + node.setAttribute("android:paddingRight", "0.0dip") + node.setAttribute("android:paddingBottom", "22.0dip") + if (!node.getAttribute("android:layout_height").equals("0.0dip") && + !node.getAttribute("android:layout_width").equals("0.0dip") + ) { + node.setAttribute("android:layout_height", "48.0dip") + node.setAttribute("android:layout_width", "48.0dip") + } } } } } - } catch (e: Exception) { - // Do nothing if there's an error } context.xmlEditor["res/layout/youtube_controls_bottom_ui_container.xml"].use { editor -> From 3374309b026f12a46acd2ac19e84bac844d66611 Mon Sep 17 00:00:00 2001 From: inotia00 <108592928+inotia00@users.noreply.github.com> Date: Tue, 21 May 2024 20:20:39 +0900 Subject: [PATCH 14/15] update strings.xml --- .../resources/youtube/settings/host/values/strings.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/resources/youtube/settings/host/values/strings.xml b/src/main/resources/youtube/settings/host/values/strings.xml index a5ceedd884..13f7399bee 100644 --- a/src/main/resources/youtube/settings/host/values/strings.xml +++ b/src/main/resources/youtube/settings/host/values/strings.xml @@ -688,12 +688,15 @@ Note: "Shows the video title section in fullscreen. Limitation: Video title disappears when clicked." + Hide autoplay preview container Autoplay preview container is hidden. Autoplay preview container is shown. - Hide autoplay preview container + Hide live chat replay button + Live chat replay button is hidden.\n\nIt appears in fullscreen when closing live chat. + Live chat replay button is shown.\n\nIt appears in fullscreen when closing live chat. + Hide related video overlay Related video overlay is hidden. Related video overlay is shown. - Hide related video overlay Quick actions @@ -733,9 +736,6 @@ Limitation: Video title disappears when clicked." Quick actions top margin Configure the spacing from the seekbar to the quick action container, between 0-32. Quick actions top margin must be between 0-32. Reset to default values. - Hide live chat replay button - Live chat replay button in fullscreen bottom right corner is hidden.\n\nIt appears in fullscreen when closing live chat. - Live chat replay button in fullscreen bottom right corner is shown.\n\nIt appears in fullscreen when closing live chat. Disable landscape mode From 10aef3f7ace42c8bb170f0a5a327399b6631dfd4 Mon Sep 17 00:00:00 2001 From: inotia00 <108592928+inotia00@users.noreply.github.com> Date: Tue, 21 May 2024 20:22:23 +0900 Subject: [PATCH 15/15] update revanced_prefs.xml --- src/main/resources/youtube/settings/xml/revanced_prefs.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/youtube/settings/xml/revanced_prefs.xml b/src/main/resources/youtube/settings/xml/revanced_prefs.xml index aff311e0e1..e85f8cac36 100644 --- a/src/main/resources/youtube/settings/xml/revanced_prefs.xml +++ b/src/main/resources/youtube/settings/xml/revanced_prefs.xml @@ -288,6 +288,7 @@ + @@ -302,7 +303,6 @@ -