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 7694d36ad..2778ff0e7 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,39 +36,59 @@ 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"
)
+ // 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(
"drawable",
@@ -74,120 +100,50 @@ 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",
+ "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",
"layout/youtube_controls_bottom_ui_container.xml",
"android.support.constraint.ConstraintLayout"
)
- val fullscreenButtonId = if (SettingsPatch.upward1909)
- "youtube_controls_fullscreen_button_stub"
- else
- "fullscreen_button"
-
- 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
-
- // 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"
- }
- }
-
- 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
- }
- }
- }
- }
- }
-
- 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
- }
- }
- }
- }
- }
- }
+ val marginBottom = BottomMargin
+ ?: DEFAULT_MARGIN
+ // Modify the layout of fullscreen button for newer YouTube versions (19.09.xx+)
arrayOf(
"youtube_controls_cf_fullscreen_button.xml",
"youtube_controls_fullscreen_button.xml"
@@ -195,21 +151,19 @@ object OverlayButtonsPatch : BaseResourcePatch(
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
+ editor.file.doRecursively loop@{ node ->
+ if (node !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
- }
- }
+ 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")
}
}
}
@@ -217,9 +171,64 @@ object OverlayButtonsPatch : BaseResourcePatch(
}
}
+ context.xmlEditor["res/layout/youtube_controls_bottom_ui_container.xml"].use { editor ->
+ editor.file.doRecursively loop@{ node ->
+ if (node !is Element) return@loop
+
+ // Change the relationship between buttons
+ node.getAttributeNode("yt:layout_constraintRight_toLeftOf")
+ ?.let { attribute ->
+ if (attribute.textContent == "@id/fullscreen_button") {
+ attribute.textContent = "@+id/speed_dialog_button"
+ }
+ }
+
+ // 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
+ }
+ }
+ }
+
+ // 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")
+ }
+ }
+
+ // 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 b23946dba..5623e6b50 100644
Binary files a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/ic_fullscreen_vertical_button.png and b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/ic_fullscreen_vertical_button.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/ic_vr.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/ic_vr.png
similarity index 95%
rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/ic_vr.png
rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/ic_vr.png
index 82e17235a..e6358b6b8 100644
Binary files a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/ic_vr.png and b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/ic_vr.png differ
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 000000000..e558d652a
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_copy_icon.png differ
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 000000000..c7d20692f
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_copy_icon_with_time.png differ
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 90f98db8a..f2d0d6c81 100644
Binary files a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_download_icon.png and b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_download_icon.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_speed_icon.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_speed_icon.png
similarity index 66%
rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_speed_icon.png
rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_speed_icon.png
index 2277524ee..30f24a1e2 100644
Binary files a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_speed_icon.png and b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_speed_icon.png differ
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 000000000..60d1831a5
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/revanced_time_ordered_playlist.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png
similarity index 100%
rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png
rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png
similarity index 100%
rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png
rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png
similarity index 100%
rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png
rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png
similarity index 100%
rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png
rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_screen_full_white_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_screen_full_white_24.png
similarity index 100%
rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_screen_full_white_24.png
rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_screen_full_white_24.png
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png
similarity index 87%
rename from src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png
rename to src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png
index b23946dba..5623e6b50 100644
Binary files a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png and b/src/main/resources/youtube/overlaybuttons/bold/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_copy_icon.png b/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_copy_icon.png
deleted file mode 100644
index 9e10fbe3f..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_copy_icon.png and /dev/null differ
diff --git a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_copy_icon_with_time.png b/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_copy_icon_with_time.png
deleted file mode 100644
index 021d4d5bc..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/default/drawable-xxhdpi/revanced_copy_icon_with_time.png and /dev/null differ
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 15df96114..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/ic_fullscreen_vertical_button.png and /dev/null differ
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 47c0612f4..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png and /dev/null differ
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 47c0612f4..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png and /dev/null differ
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 15df96114..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png and /dev/null differ
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 15df96114..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png and /dev/null differ
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 2996ba60d..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_copy_icon.png and /dev/null differ
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 37ba55dda..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_copy_icon_with_time.png and /dev/null differ
diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_download_icon.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_download_icon.png
deleted file mode 100644
index 5618e6909..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_download_icon.png and /dev/null differ
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 68532d62f..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/revanced_speed_icon.png and /dev/null differ
diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png
deleted file mode 100644
index 1f47966df..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png and /dev/null differ
diff --git a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png b/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png
deleted file mode 100644
index e296f6a68..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png and /dev/null differ
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 491254dda..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png and /dev/null differ
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 47c0612f4..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png and /dev/null differ
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 15df96114..000000000
Binary files a/src/main/resources/youtube/overlaybuttons/outline/drawable-xxhdpi/yt_outline_screen_full_white_24.png and /dev/null differ
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 000000000..c2a16d0ed
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/ic_fullscreen_vertical_button.png differ
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 000000000..e3ddc84d1
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/ic_vr.png differ
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 000000000..3ee41153d
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png
new file mode 100644
index 000000000..3ee41153d
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png
new file mode 100644
index 000000000..c2a16d0ed
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png differ
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 000000000..c2a16d0ed
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png differ
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 000000000..18ee94dfd
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_copy_icon.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_copy_icon_with_time.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_copy_icon_with_time.png
new file mode 100644
index 000000000..3c6253e45
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_copy_icon_with_time.png differ
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 000000000..a11cc5277
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_download_icon.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_speed_icon.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_speed_icon.png
new file mode 100644
index 000000000..e9e8f89a2
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_speed_icon.png differ
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 000000000..62f88f282
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/revanced_time_ordered_playlist.png differ
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 000000000..e14a58d36
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png differ
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 000000000..408a04351
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png differ
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 000000000..5360c1cc2
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png
new file mode 100644
index 000000000..3ee41153d
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_full_white_24.png b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_full_white_24.png
new file mode 100644
index 000000000..c2a16d0ed
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_full_white_24.png differ
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 000000000..c2a16d0ed
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/rounded/drawable-xxhdpi/yt_outline_screen_vertical_vd_theme_24.png differ
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 138d7b8d8..55342a706 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/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 000000000..66a60db63
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/ic_fullscreen_vertical_button.png differ
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 000000000..92636d837
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/ic_vr.png differ
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 000000000..fa3838a7e
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_exit_grey600_24.png differ
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 000000000..fa3838a7e
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_exit_white_24.png differ
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 000000000..66a60db63
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_grey600_24.png differ
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 000000000..66a60db63
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/quantum_ic_fullscreen_white_24.png differ
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 000000000..ede23c0ec
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_copy_icon.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_copy_icon_with_time.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_copy_icon_with_time.png
new file mode 100644
index 000000000..9e94dc200
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_copy_icon_with_time.png differ
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 000000000..1084bce58
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_download_icon.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_speed_icon.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_speed_icon.png
new file mode 100644
index 000000000..42f829840
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_speed_icon.png differ
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 000000000..24a8f417c
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/revanced_time_ordered_playlist.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png
new file mode 100644
index 000000000..a3759b904
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_fill_arrow_repeat_white_24.png differ
diff --git a/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png
new file mode 100644
index 000000000..1dba8781e
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_arrow_repeat_1_white_24.png differ
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 000000000..2ddb3c4e5
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_arrow_shuffle_1_white_24.png differ
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 000000000..fa3838a7e
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_screen_full_exit_white_24.png differ
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 000000000..66a60db63
Binary files /dev/null and b/src/main/resources/youtube/overlaybuttons/thin/drawable-xxhdpi/yt_outline_screen_full_white_24.png differ
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 000000000..7f8290b4b
--- /dev/null
+++ b/src/main/resources/youtube/overlaybuttons/thin/drawable/yt_outline_screen_vertical_vd_theme_24.xml
@@ -0,0 +1,5 @@
+
+
+
+
diff --git a/src/main/resources/youtube/settings/host/values/arrays.xml b/src/main/resources/youtube/settings/host/values/arrays.xml
index 4c80d1b52..283a018b7 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 e6461f002..4c7447ae4 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.
@@ -486,6 +493,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.
@@ -675,12 +685,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
@@ -800,7 +813,10 @@ 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
+ 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
@@ -1034,6 +1050,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.\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.
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 5f4b50cd1..b333ff615 100644
--- a/src/main/resources/youtube/settings/xml/revanced_prefs.xml
+++ b/src/main/resources/youtube/settings/xml/revanced_prefs.xml
@@ -287,6 +287,7 @@
+
@@ -342,6 +343,7 @@
+
SETTINGS: OVERLAY_BUTTONS -->
@@ -399,6 +401,7 @@
+
@@ -473,7 +476,8 @@
-
+
+
PREFERENCE_SCREEN: SWIPE_CONTROLS -->