---
.../music/patches/theme/ThemePatch.java | 27 +++
.../shared/theme/BaseThemePatch.java | 48 ++++
.../youtube/patches/theme/ThemePatch.java | 55 ++---
patches/api/patches.api | 9 +
.../navigationbar/NavigationBarPatch.kt | 32 ++-
.../patches/music/layout/theme/ThemePatch.kt | 43 ++++
.../shared/layout/theme/BaseThemePatch.kt | 133 +++++++++++
.../shared/layout/theme/Fingerprints.kt | 24 ++
.../layout/theme/LithoColorHookPatch.kt | 27 +++
.../shared/misc/settings/SettingsPatch.kt | 18 +-
.../layout/seekbar/SeekbarColorPatch.kt | 14 +-
.../youtube/layout/theme/Fingerprints.kt | 21 --
.../layout/theme/LithoColorHookPatch.kt | 25 +-
.../youtube/layout/theme/ThemePatch.kt | 216 ++++++++----------
14 files changed, 463 insertions(+), 229 deletions(-)
create mode 100644 extensions/music/src/main/java/app/revanced/extension/music/patches/theme/ThemePatch.java
create mode 100644 extensions/shared/library/src/main/java/app/revanced/extension/shared/theme/BaseThemePatch.java
create mode 100644 patches/src/main/kotlin/app/revanced/patches/music/layout/theme/ThemePatch.kt
create mode 100644 patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/BaseThemePatch.kt
create mode 100644 patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/Fingerprints.kt
create mode 100644 patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/LithoColorHookPatch.kt
diff --git a/extensions/music/src/main/java/app/revanced/extension/music/patches/theme/ThemePatch.java b/extensions/music/src/main/java/app/revanced/extension/music/patches/theme/ThemePatch.java
new file mode 100644
index 000000000..3f4e39669
--- /dev/null
+++ b/extensions/music/src/main/java/app/revanced/extension/music/patches/theme/ThemePatch.java
@@ -0,0 +1,27 @@
+package app.revanced.extension.music.patches.theme;
+
+import app.revanced.extension.shared.theme.BaseThemePatch;
+
+@SuppressWarnings("unused")
+public class ThemePatch extends BaseThemePatch {
+
+ // Color constants used in relation with litho components.
+ private static final int[] DARK_VALUES = {
+ 0xFF212121, // Comments box background.
+ 0xFF030303, // Button container background in album.
+ 0xFF000000, // Button container background in playlist.
+ };
+
+ /**
+ * Injection point.
+ *
+ * Change the color of Litho components.
+ * If the color of the component matches one of the values, return the background color.
+ *
+ * @param originalValue The original color value.
+ * @return The new or original color value.
+ */
+ public static int getValue(int originalValue) {
+ return processColorValue(originalValue, DARK_VALUES, null);
+ }
+}
diff --git a/extensions/shared/library/src/main/java/app/revanced/extension/shared/theme/BaseThemePatch.java b/extensions/shared/library/src/main/java/app/revanced/extension/shared/theme/BaseThemePatch.java
new file mode 100644
index 000000000..2d12b0c1f
--- /dev/null
+++ b/extensions/shared/library/src/main/java/app/revanced/extension/shared/theme/BaseThemePatch.java
@@ -0,0 +1,48 @@
+package app.revanced.extension.shared.theme;
+
+import androidx.annotation.Nullable;
+
+import app.revanced.extension.shared.Utils;
+
+@SuppressWarnings("unused")
+public abstract class BaseThemePatch {
+ // Background colors.
+ protected static final int BLACK_COLOR = Utils.getResourceColor("yt_black1");
+ protected static final int WHITE_COLOR = Utils.getResourceColor("yt_white1");
+
+ /**
+ * Check if a value matches any of the provided values.
+ *
+ * @param value The value to check.
+ * @param of The array of values to compare against.
+ * @return True if the value matches any of the provided values.
+ */
+ protected static boolean anyEquals(int value, int... of) {
+ for (int v : of) {
+ if (value == v) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Helper method to process color values for Litho components.
+ *
+ * @param originalValue The original color value.
+ * @param darkValues Array of dark mode color values to match.
+ * @param lightValues Array of light mode color values to match.
+ * @return The new or original color value.
+ */
+ protected static int processColorValue(int originalValue, int[] darkValues, @Nullable int[] lightValues) {
+ if (Utils.isDarkModeEnabled()) {
+ if (anyEquals(originalValue, darkValues)) {
+ return BLACK_COLOR;
+ }
+ } else if (lightValues != null && anyEquals(originalValue, lightValues)) {
+ return WHITE_COLOR;
+ }
+
+ return originalValue;
+ }
+}
diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/theme/ThemePatch.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/theme/ThemePatch.java
index 281fe0936..16e0b0459 100644
--- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/theme/ThemePatch.java
+++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/theme/ThemePatch.java
@@ -1,16 +1,13 @@
package app.revanced.extension.youtube.patches.theme;
-import static app.revanced.extension.youtube.patches.theme.ThemePatch.SplashScreenAnimationStyle.styleFromOrdinal;
-
import androidx.annotation.Nullable;
import app.revanced.extension.shared.Logger;
-import app.revanced.extension.shared.Utils;
+import app.revanced.extension.shared.theme.BaseThemePatch;
import app.revanced.extension.youtube.settings.Settings;
@SuppressWarnings("unused")
-public class ThemePatch {
-
+public class ThemePatch extends BaseThemePatch {
public enum SplashScreenAnimationStyle {
DEFAULT(0),
FPS_60_ONE_SECOND(1),
@@ -43,57 +40,39 @@ public class ThemePatch {
}
}
- // color constants used in relation with litho components
+ // Color constants used in relation with litho components.
private static final int[] WHITE_VALUES = {
- -1, // comments chip background
- -394759, // music related results panel background
- -83886081, // video chapters list background
+ 0xFFFFFFFF, // Comments chip background.
+ 0xFFF9F9F9, // Music related results panel background.
+ 0xFAFFFFFF, // Video chapters list background.
};
private static final int[] DARK_VALUES = {
- -14145496, // explore drawer background
- -14606047, // comments chip background
- -15198184, // music related results panel background
- -15790321, // comments chip background (new layout)
- -98492127 // video chapters list background
+ 0xFF282828, // Explore drawer background.
+ 0xFF212121, // Comments chip background.
+ 0xFF181818, // Music related results panel background.
+ 0xFF0F0F0F, // Comments chip background (new layout).
+ 0xFA212121, // Video chapters list background.
};
- // Background colors.
- private static final int WHITE_COLOR = Utils.getResourceColor("yt_white1");
- private static final int BLACK_COLOR = Utils.getResourceColor("yt_black1");
-
- private static final boolean GRADIENT_LOADING_SCREEN_ENABLED = Settings.GRADIENT_LOADING_SCREEN.get();
-
/**
* Injection point.
- *
+ *
* Change the color of Litho components.
- * If the color of the component matches one of the values, return the background color .
+ * If the color of the component matches one of the values, return the background color.
*
* @param originalValue The original color value.
- * @return The new or original color value
+ * @return The new or original color value.
*/
public static int getValue(int originalValue) {
- if (Utils.isDarkModeEnabled()) {
- if (anyEquals(originalValue, DARK_VALUES)) return BLACK_COLOR;
- } else {
- if (anyEquals(originalValue, WHITE_VALUES)) return WHITE_COLOR;
- }
-
- return originalValue;
- }
-
- private static boolean anyEquals(int value, int... of) {
- for (int v : of) if (value == v) return true;
-
- return false;
+ return processColorValue(originalValue, DARK_VALUES, WHITE_VALUES);
}
/**
* Injection point.
*/
public static boolean gradientLoadingScreenEnabled(boolean original) {
- return GRADIENT_LOADING_SCREEN_ENABLED;
+ return Settings.GRADIENT_LOADING_SCREEN.get();
}
/**
@@ -108,7 +87,7 @@ public class ThemePatch {
final int replacement = style.style;
if (original != replacement) {
Logger.printDebug(() -> "Overriding splash screen style from: "
- + styleFromOrdinal(original) + " to: " + style);
+ + SplashScreenAnimationStyle.styleFromOrdinal(original) + " to: " + style);
}
return replacement;
diff --git a/patches/api/patches.api b/patches/api/patches.api
index ab0252db1..7ac39ad52 100644
--- a/patches/api/patches.api
+++ b/patches/api/patches.api
@@ -388,6 +388,10 @@ public final class app/revanced/patches/music/layout/premium/HideGetPremiumPatch
public static final fun getHideGetPremiumPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
+public final class app/revanced/patches/music/layout/theme/ThemePatchKt {
+ public static final fun getThemePatch ()Lapp/revanced/patcher/patch/BytecodePatch;
+}
+
public final class app/revanced/patches/music/layout/upgradebutton/HideUpgradeButtonPatchKt {
public static final fun getHideUpgradeButton ()Lapp/revanced/patcher/patch/BytecodePatch;
public static final fun getRemoveUpgradeButton ()Lapp/revanced/patcher/patch/BytecodePatch;
@@ -733,6 +737,11 @@ public final class app/revanced/patches/serviceportalbund/detection/root/RootDet
public static final fun getRootDetectionPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
+public final class app/revanced/patches/shared/layout/theme/LithoColorHookPatchKt {
+ public static final fun getLithoColorHookPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
+ public static final fun getLithoColorOverrideHook ()Lkotlin/jvm/functions/Function2;
+}
+
public final class app/revanced/patches/shared/misc/checks/BaseCheckEnvironmentPatchKt {
public static final fun checkEnvironmentPatch (Lapp/revanced/patcher/Fingerprint;Lapp/revanced/patcher/patch/Patch;[Ljava/lang/String;)Lapp/revanced/patcher/patch/BytecodePatch;
}
diff --git a/patches/src/main/kotlin/app/revanced/patches/music/layout/navigationbar/NavigationBarPatch.kt b/patches/src/main/kotlin/app/revanced/patches/music/layout/navigationbar/NavigationBarPatch.kt
index e9598f576..4459700cb 100644
--- a/patches/src/main/kotlin/app/revanced/patches/music/layout/navigationbar/NavigationBarPatch.kt
+++ b/patches/src/main/kotlin/app/revanced/patches/music/layout/navigationbar/NavigationBarPatch.kt
@@ -4,6 +4,7 @@ import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
import app.revanced.patcher.patch.PatchException
import app.revanced.patcher.patch.bytecodePatch
+import app.revanced.patcher.patch.resourcePatch
import app.revanced.patches.all.misc.resources.addResources
import app.revanced.patches.all.misc.resources.addResourcesPatch
import app.revanced.patches.music.misc.extension.sharedExtensionPatch
@@ -35,7 +36,23 @@ val navigationBarPatch = bytecodePatch(
resourceMappingPatch,
sharedExtensionPatch,
settingsPatch,
- addResourcesPatch
+ addResourcesPatch,
+ resourcePatch {
+ execute {
+ // Ensure the first ImageView has 'layout_weight' to stay properly sized
+ // when the TextView is hidden.
+ document("res/layout/image_with_text_tab.xml").use { document ->
+ val imageView = document.getElementsByTagName("ImageView").item(0)
+ imageView?.let {
+ if (it.attributes.getNamedItem("android:layout_weight") == null) {
+ val attr = document.createAttribute("android:layout_weight")
+ attr.value = "0.5"
+ it.attributes.setNamedItem(attr)
+ }
+ }
+ }
+ }
+ }
)
compatibleWith(
@@ -46,10 +63,7 @@ val navigationBarPatch = bytecodePatch(
)
execute {
- text1 = resourceMappings[
- "id",
- "text1",
- ]
+ text1 = resourceMappings["id", "text1"]
addResources("music", "layout.navigationbar.navigationBarPatch")
@@ -71,9 +85,7 @@ val navigationBarPatch = bytecodePatch(
)
tabLayoutTextFingerprint.method.apply {
- /**
- * Hide navigation labels.
- */
+ // Hide navigation labels.
val constIndex = indexOfFirstLiteralInstructionOrThrow(text1)
val targetIndex = indexOfFirstInstructionOrThrow(constIndex, Opcode.CHECK_CAST)
val targetParameter = getInstruction(targetIndex).reference
@@ -87,9 +99,7 @@ val navigationBarPatch = bytecodePatch(
"invoke-static { v$targetRegister }, $EXTENSION_CLASS_DESCRIPTOR->hideNavigationLabel(Landroid/widget/TextView;)V"
)
- /**
- * Set navigation enum and hide navigation buttons.
- */
+ // Set navigation enum and hide navigation buttons.
val enumIndex = tabLayoutTextFingerprint.patternMatch!!.startIndex + 3
val enumRegister = getInstruction(enumIndex).registerA
val insertEnumIndex = indexOfFirstInstructionOrThrow(Opcode.AND_INT_LIT8) - 2
diff --git a/patches/src/main/kotlin/app/revanced/patches/music/layout/theme/ThemePatch.kt b/patches/src/main/kotlin/app/revanced/patches/music/layout/theme/ThemePatch.kt
new file mode 100644
index 000000000..c6e7091c6
--- /dev/null
+++ b/patches/src/main/kotlin/app/revanced/patches/music/layout/theme/ThemePatch.kt
@@ -0,0 +1,43 @@
+package app.revanced.patches.music.layout.theme
+
+import app.revanced.patches.music.misc.extension.sharedExtensionPatch
+import app.revanced.patches.shared.layout.theme.THEME_DEFAULT_DARK_COLOR_NAMES
+import app.revanced.patches.shared.layout.theme.baseThemePatch
+import app.revanced.patches.shared.layout.theme.baseThemeResourcePatch
+import app.revanced.patches.shared.layout.theme.darkThemeBackgroundColorOption
+import app.revanced.patches.shared.misc.settings.overrideThemeColors
+
+private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/music/patches/theme/ThemePatch;"
+
+@Suppress("unused")
+val themePatch = baseThemePatch(
+ extensionClassDescriptor = EXTENSION_CLASS_DESCRIPTOR,
+
+ block = {
+ dependsOn(
+ sharedExtensionPatch,
+ baseThemeResourcePatch(
+ darkColorNames = THEME_DEFAULT_DARK_COLOR_NAMES + setOf(
+ "yt_black_pure",
+ "yt_black_pure_opacity80",
+ "ytm_color_grey_12",
+ "material_grey_800"
+ )
+ )
+ )
+
+ compatibleWith(
+ "com.google.android.apps.youtube.music"(
+ "7.29.52",
+ "8.10.52"
+ )
+ )
+ },
+
+ executeBlock = {
+ overrideThemeColors(
+ null,
+ darkThemeBackgroundColorOption.value!!
+ )
+ }
+)
diff --git a/patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/BaseThemePatch.kt b/patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/BaseThemePatch.kt
new file mode 100644
index 000000000..de070fb89
--- /dev/null
+++ b/patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/BaseThemePatch.kt
@@ -0,0 +1,133 @@
+package app.revanced.patches.shared.layout.theme
+
+import app.revanced.patcher.patch.BytecodePatchBuilder
+import app.revanced.patcher.patch.BytecodePatchContext
+import app.revanced.patcher.patch.PatchException
+import app.revanced.patcher.patch.bytecodePatch
+import app.revanced.patcher.patch.resourcePatch
+import app.revanced.patcher.patch.stringOption
+import app.revanced.util.childElementsSequence
+import java.util.Locale
+
+internal const val THEME_COLOR_OPTION_DESCRIPTION = "Can be a hex color (#RRGGBB) or a color resource reference."
+
+internal val THEME_DEFAULT_DARK_COLOR_NAMES = setOf(
+ "yt_black0", "yt_black1", "yt_black1_opacity95", "yt_black1_opacity98",
+ "yt_black2", "yt_black3", "yt_black4", "yt_status_bar_background_dark",
+ "material_grey_850"
+)
+
+internal val THEME_DEFAULT_LIGHT_COLOR_NAMES = setOf(
+ "yt_white1", "yt_white1_opacity95", "yt_white1_opacity98",
+ "yt_white2", "yt_white3", "yt_white4"
+)
+
+/**
+ * @param colorString #AARRGGBB #RRGGBB, or an Android color resource name.
+ */
+internal fun validateColorName(colorString: String): Boolean {
+ if (colorString.startsWith("#")) {
+ // #RRGGBB or #AARRGGBB
+ val hex = colorString.substring(1).uppercase(Locale.US)
+
+ if (hex.length == 8) {
+ // Transparent colors will crash the app.
+ if (hex[0] != 'F' || hex[1] != 'F') {
+ return false
+ }
+ } else if (hex.length != 6) {
+ return false
+ }
+
+ return hex.all { it.isDigit() || it in 'A'..'F' }
+ }
+
+ if (colorString.startsWith("@android:color/")) {
+ // Cannot easily validate Android built-in colors, so assume it's a correct color.
+ return true
+ }
+
+ // Allow any color name, because if it's invalid it will
+ // throw an exception during resource compilation.
+ return colorString.startsWith("@color/")
+}
+
+/**
+ * Dark theme color option for YouTube and YT Music Theme patches.
+ */
+internal val darkThemeBackgroundColorOption = stringOption(
+ key = "darkThemeBackgroundColor",
+ default = "@android:color/black",
+ values = mapOf(
+ "Pure black" to "@android:color/black",
+ "Material You" to "@android:color/system_neutral1_900",
+ "Classic (old YouTube)" to "#212121",
+ "Catppuccin (Mocha)" to "#181825",
+ "Dark pink" to "#290025",
+ "Dark blue" to "#001029",
+ "Dark green" to "#002905",
+ "Dark yellow" to "#282900",
+ "Dark orange" to "#291800",
+ "Dark red" to "#290000",
+ ),
+ title = "Dark theme background color",
+ description = THEME_COLOR_OPTION_DESCRIPTION
+)
+
+/**
+ * Shared theme patch for YouTube and YT Music.
+ */
+internal fun baseThemePatch(
+ extensionClassDescriptor: String,
+ block: BytecodePatchBuilder.() -> Unit = {},
+ executeBlock: BytecodePatchContext.() -> Unit = {}
+) = bytecodePatch(
+ name = "Theme",
+ description = "Adds options for theming and applies a custom background theme " +
+ "(dark background theme defaults to pure black).",
+) {
+ darkThemeBackgroundColorOption()
+
+ block()
+
+ dependsOn(lithoColorHookPatch)
+
+ execute {
+ executeBlock()
+
+ lithoColorOverrideHook(extensionClassDescriptor, "getValue")
+ }
+}
+
+internal fun baseThemeResourcePatch(
+ darkColorNames: Set = THEME_DEFAULT_DARK_COLOR_NAMES,
+ lightColorNames: Set = THEME_DEFAULT_LIGHT_COLOR_NAMES,
+ lightColorReplacement: (() -> String)? = null
+) = resourcePatch {
+
+ execute {
+ // After patch option validators are fixed https://github.com/ReVanced/revanced-patcher/issues/372
+ // This should changed to a patch option validator.
+ val darkColor by darkThemeBackgroundColorOption
+ if (!validateColorName(darkColor!!)) {
+ throw PatchException("Invalid dark theme color: $darkColor")
+ }
+
+ val lightColor = lightColorReplacement?.invoke()
+ if (lightColor != null && !validateColorName(lightColor)) {
+ throw PatchException("Invalid light theme color: $lightColor")
+ }
+
+ document("res/values/colors.xml").use { document ->
+ val resourcesNode = document.getElementsByTagName("resources").item(0)
+
+ resourcesNode.childElementsSequence().forEach { node ->
+ val name = node.getAttribute("name")
+ when {
+ name in darkColorNames -> node.textContent = darkColor
+ lightColor != null && name in lightColorNames -> node.textContent = lightColor
+ }
+ }
+ }
+ }
+}
diff --git a/patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/Fingerprints.kt b/patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/Fingerprints.kt
new file mode 100644
index 000000000..41a042796
--- /dev/null
+++ b/patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/Fingerprints.kt
@@ -0,0 +1,24 @@
+package app.revanced.patches.shared.layout.theme
+
+import app.revanced.patcher.fingerprint
+import com.android.tools.smali.dexlib2.AccessFlags
+import com.android.tools.smali.dexlib2.Opcode
+
+internal val lithoOnBoundsChangeFingerprint = fingerprint {
+ accessFlags(AccessFlags.PROTECTED, AccessFlags.FINAL)
+ returns("V")
+ parameters("Landroid/graphics/Rect;")
+ opcodes(
+ Opcode.IGET,
+ Opcode.IF_EQZ,
+ Opcode.INVOKE_VIRTUAL,
+ Opcode.MOVE_RESULT,
+ Opcode.IF_NEZ,
+ Opcode.IGET_OBJECT,
+ Opcode.INVOKE_VIRTUAL,
+ Opcode.RETURN_VOID,
+ )
+ custom { method, _ ->
+ method.name == "onBoundsChange"
+ }
+}
diff --git a/patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/LithoColorHookPatch.kt b/patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/LithoColorHookPatch.kt
new file mode 100644
index 000000000..bfa1259a0
--- /dev/null
+++ b/patches/src/main/kotlin/app/revanced/patches/shared/layout/theme/LithoColorHookPatch.kt
@@ -0,0 +1,27 @@
+package app.revanced.patches.shared.layout.theme
+
+import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
+import app.revanced.patcher.patch.bytecodePatch
+
+lateinit var lithoColorOverrideHook: (targetMethodClass: String, targetMethodName: String) -> Unit
+ private set
+
+val lithoColorHookPatch = bytecodePatch(
+ description = "Adds a hook to set color of Litho components.",
+) {
+
+ execute {
+ var insertionIndex = lithoOnBoundsChangeFingerprint.patternMatch!!.endIndex - 1
+
+ lithoColorOverrideHook = { targetMethodClass, targetMethodName ->
+ lithoOnBoundsChangeFingerprint.method.addInstructions(
+ insertionIndex,
+ """
+ invoke-static { p1 }, $targetMethodClass->$targetMethodName(I)I
+ move-result p1
+ """
+ )
+ insertionIndex += 2
+ }
+ }
+}
diff --git a/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/SettingsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/SettingsPatch.kt
index b2800bf4a..9d13d1e55 100644
--- a/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/SettingsPatch.kt
+++ b/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/SettingsPatch.kt
@@ -26,26 +26,26 @@ fun settingsPatch (
preferences: Set,
) = settingsPatch(listOf(rootPreference), preferences)
-private var themeForegroundColor : String? = null
-private var themeBackgroundColor : String? = null
+private var lightThemeColor : String? = null
+private var darkThemeColor : String? = null
/**
* Sets the default theme colors used in various ReVanced specific settings menus.
* By default these colors are white and black, but instead can be set to the
* same color the target app uses for it's own settings.
*/
-fun overrideThemeColors(foregroundColor: String, backgroundColor: String) {
- themeForegroundColor = foregroundColor
- themeBackgroundColor = backgroundColor
+fun overrideThemeColors(lightThemeColorString: String?, darkThemeColorString: String) {
+ lightThemeColor = lightThemeColorString
+ darkThemeColor = darkThemeColorString
}
private val settingsColorPatch = bytecodePatch {
finalize {
- if (themeForegroundColor != null) {
- themeLightColorResourceNameFingerprint.method.returnEarly(themeForegroundColor!!)
+ if (lightThemeColor != null) {
+ themeLightColorResourceNameFingerprint.method.returnEarly(lightThemeColor!!)
}
- if (themeBackgroundColor != null) {
- themeDarkColorResourceNameFingerprint.method.returnEarly(themeBackgroundColor!!)
+ if (darkThemeColor != null) {
+ themeDarkColorResourceNameFingerprint.method.returnEarly(darkThemeColor!!)
}
}
}
diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/SeekbarColorPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/SeekbarColorPatch.kt
index 76fe99b31..f89175c8f 100644
--- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/SeekbarColorPatch.kt
+++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/SeekbarColorPatch.kt
@@ -10,13 +10,12 @@ import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patcher.patch.resourcePatch
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod.Companion.toMutable
+import app.revanced.patches.shared.layout.theme.lithoColorHookPatch
+import app.revanced.patches.shared.layout.theme.lithoColorOverrideHook
import app.revanced.patches.shared.misc.mapping.get
import app.revanced.patches.shared.misc.mapping.resourceMappingPatch
import app.revanced.patches.shared.misc.mapping.resourceMappings
-import app.revanced.patches.youtube.layout.theme.lithoColorHookPatch
-import app.revanced.patches.youtube.layout.theme.lithoColorOverrideHook
import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch
-import app.revanced.patches.youtube.misc.playservice.is_19_25_or_greater
import app.revanced.patches.youtube.misc.playservice.is_19_34_or_greater
import app.revanced.patches.youtube.misc.playservice.is_19_46_or_greater
import app.revanced.patches.youtube.misc.playservice.is_19_49_or_greater
@@ -108,11 +107,6 @@ private val seekbarColorResourcePatch = resourcePatch {
scaleNode.replaceChild(replacementNode, shapeNode)
}
-
- if (!is_19_25_or_greater) {
- return@execute
- }
-
ytYoutubeMagentaColorId = resourceMappings[
"color",
"yt_youtube_magenta",
@@ -260,10 +254,6 @@ val seekbarColorPatch = bytecodePatch(
lithoColorOverrideHook(EXTENSION_CLASS_DESCRIPTOR, "getLithoColor")
- if (!is_19_25_or_greater) {
- return@execute
- }
-
// 19.25+ changes
arrayOf(
diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/Fingerprints.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/Fingerprints.kt
index 583750c06..69df83109 100644
--- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/Fingerprints.kt
+++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/Fingerprints.kt
@@ -3,27 +3,6 @@ package app.revanced.patches.youtube.layout.theme
import app.revanced.patcher.fingerprint
import app.revanced.patches.youtube.shared.YOUTUBE_MAIN_ACTIVITY_CLASS_TYPE
import app.revanced.util.literal
-import com.android.tools.smali.dexlib2.AccessFlags
-import com.android.tools.smali.dexlib2.Opcode
-
-internal val lithoThemeFingerprint = fingerprint {
- accessFlags(AccessFlags.PROTECTED, AccessFlags.FINAL)
- returns("V")
- parameters("Landroid/graphics/Rect;")
- opcodes(
- Opcode.IGET,
- Opcode.IF_EQZ,
- Opcode.INVOKE_VIRTUAL,
- Opcode.MOVE_RESULT,
- Opcode.IF_NEZ,
- Opcode.IGET_OBJECT,
- Opcode.INVOKE_VIRTUAL,
- Opcode.RETURN_VOID,
- )
- custom { method, _ ->
- method.name == "onBoundsChange"
- }
-}
internal const val GRADIENT_LOADING_SCREEN_AB_CONSTANT = 45412406L
diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/LithoColorHookPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/LithoColorHookPatch.kt
index fdab6c4b8..a0bd5e716 100644
--- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/LithoColorHookPatch.kt
+++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/LithoColorHookPatch.kt
@@ -1,28 +1,19 @@
package app.revanced.patches.youtube.layout.theme
-import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.patch.bytecodePatch
+
+@Deprecated("Function was moved", ReplaceWith("app.revanced.patches.shared.layout.theme.lithoColorOverrideHook"))
+@Suppress("unused")
lateinit var lithoColorOverrideHook: (targetMethodClass: String, targetMethodName: String) -> Unit
private set
-val lithoColorHookPatch = bytecodePatch(
- description = "Adds a hook to set color of Litho components.",
-) {
+@Deprecated("Patch was moved", ReplaceWith("app.revanced.patches.shared.layout.theme.lithoColorHookPatch"))
+@Suppress("unused")
+val lithoColorHookPatch = bytecodePatch{
+ dependsOn(app.revanced.patches.shared.layout.theme.lithoColorHookPatch)
execute {
-
- var insertionIndex = lithoThemeFingerprint.patternMatch!!.endIndex - 1
-
- lithoColorOverrideHook = { targetMethodClass, targetMethodName ->
- lithoThemeFingerprint.method.addInstructions(
- insertionIndex,
- """
- invoke-static { p1 }, $targetMethodClass->$targetMethodName(I)I
- move-result p1
- """,
- )
- insertionIndex += 2
- }
+ lithoColorOverrideHook = app.revanced.patches.shared.layout.theme.lithoColorOverrideHook
}
}
diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/ThemePatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/ThemePatch.kt
index a43833449..e6022b059 100644
--- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/ThemePatch.kt
+++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/ThemePatch.kt
@@ -1,14 +1,16 @@
package app.revanced.patches.youtube.layout.theme
import app.revanced.patcher.patch.PatchException
-import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patcher.patch.resourcePatch
import app.revanced.patcher.patch.stringOption
import app.revanced.patches.all.misc.resources.addResources
import app.revanced.patches.all.misc.resources.addResourcesPatch
+import app.revanced.patches.shared.layout.theme.THEME_COLOR_OPTION_DESCRIPTION
+import app.revanced.patches.shared.layout.theme.baseThemePatch
+import app.revanced.patches.shared.layout.theme.baseThemeResourcePatch
+import app.revanced.patches.shared.layout.theme.darkThemeBackgroundColorOption
import app.revanced.patches.shared.misc.mapping.resourceMappingPatch
import app.revanced.patches.shared.misc.settings.overrideThemeColors
-import app.revanced.patches.shared.misc.settings.preference.BasePreference
import app.revanced.patches.shared.misc.settings.preference.InputType
import app.revanced.patches.shared.misc.settings.preference.ListPreference
import app.revanced.patches.shared.misc.settings.preference.PreferenceCategory
@@ -17,126 +19,54 @@ import app.revanced.patches.shared.misc.settings.preference.SwitchPreference
import app.revanced.patches.shared.misc.settings.preference.TextPreference
import app.revanced.patches.youtube.layout.seekbar.seekbarColorPatch
import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch
-import app.revanced.patches.youtube.misc.playservice.is_19_25_or_greater
import app.revanced.patches.youtube.misc.playservice.is_19_47_or_greater
-import app.revanced.patches.youtube.misc.playservice.versionCheckPatch
import app.revanced.patches.youtube.misc.settings.PreferenceScreen
import app.revanced.patches.youtube.misc.settings.settingsPatch
-import app.revanced.util.childElementsSequence
import app.revanced.util.forEachChildElement
import app.revanced.util.insertLiteralOverride
import org.w3c.dom.Element
private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/theme/ThemePatch;"
-val themePatch = bytecodePatch(
- name = "Theme",
- description = "Adds options for theming and applies a custom background theme " +
- "(dark background theme defaults to amoled black).",
-) {
- val amoledBlackColor = "@android:color/black"
- val whiteColor = "@android:color/white"
+val themePatch = baseThemePatch(
+ extensionClassDescriptor = EXTENSION_CLASS_DESCRIPTOR,
- val darkThemeBackgroundColor by stringOption(
- key = "darkThemeBackgroundColor",
- default = amoledBlackColor,
- values = mapOf(
- "Amoled black" to amoledBlackColor,
- "Material You" to "@android:color/system_neutral1_900",
- "Classic (old YouTube)" to "#FF212121",
- "Catppuccin (Mocha)" to "#FF181825",
- "Dark pink" to "#FF290025",
- "Dark blue" to "#FF001029",
- "Dark green" to "#FF002905",
- "Dark yellow" to "#FF282900",
- "Dark orange" to "#FF291800",
- "Dark red" to "#FF290000",
- ),
- title = "Dark theme background color",
- description = "Can be a hex color (#AARRGGBB) or a color resource reference.",
- )
+ block = {
+ val lightThemeBackgroundColor by stringOption(
+ key = "lightThemeBackgroundColor",
+ default = "@android:color/white",
+ values = mapOf(
+ "White" to "@android:color/white",
+ "Material You" to "@android:color/system_neutral1_50",
+ "Catppuccin (Latte)" to "#E6E9EF",
+ "Light pink" to "#FCCFF3",
+ "Light blue" to "#D1E0FF",
+ "Light green" to "#CCFFCC",
+ "Light yellow" to "#FDFFCC",
+ "Light orange" to "#FFE6CC",
+ "Light red" to "#FFD6D6",
+ ),
+ title = "Light theme background color",
+ description = THEME_COLOR_OPTION_DESCRIPTION
+ )
- val lightThemeBackgroundColor by stringOption(
- key = "lightThemeBackgroundColor",
- default = whiteColor,
- values = mapOf(
- "White" to whiteColor,
- "Material You" to "@android:color/system_neutral1_50",
- "Catppuccin (Latte)" to "#FFE6E9EF",
- "Light pink" to "#FFFCCFF3",
- "Light blue" to "#FFD1E0FF",
- "Light green" to "#FFCCFFCC",
- "Light yellow" to "#FFFDFFCC",
- "Light orange" to "#FFFFE6CC",
- "Light red" to "#FFFFD6D6",
- ),
- title = "Light theme background color",
- description = "Can be a hex color (#AARRGGBB) or a color resource reference.",
- )
-
- dependsOn(
- sharedExtensionPatch,
- settingsPatch,
- addResourcesPatch,
- lithoColorHookPatch,
- seekbarColorPatch,
- versionCheckPatch,
- resourcePatch {
- dependsOn(
- settingsPatch,
- resourceMappingPatch,
- )
+ val themeResourcePatch = resourcePatch {
+ dependsOn(resourceMappingPatch)
execute {
- val preferences = mutableSetOf(
- SwitchPreference("revanced_seekbar_custom_color"),
- TextPreference("revanced_seekbar_custom_color_primary",
- tag = "app.revanced.extension.shared.settings.preference.ColorPickerPreference",
- inputType = InputType.TEXT_CAP_CHARACTERS),
+ overrideThemeColors(
+ lightThemeBackgroundColor!!,
+ darkThemeBackgroundColorOption.value!!
)
- if (is_19_25_or_greater) {
- preferences += TextPreference("revanced_seekbar_custom_color_accent",
- tag = "app.revanced.extension.shared.settings.preference.ColorPickerPreference",
- inputType = InputType.TEXT_CAP_CHARACTERS)
- }
-
- PreferenceScreen.SEEKBAR.addPreferences(
- PreferenceCategory(
- titleKey = null,
- sorting = Sorting.UNSORTED,
- tag = "app.revanced.extension.shared.settings.preference.NoTitlePreferenceCategory",
- preferences = preferences
- )
- )
-
- overrideThemeColors(lightThemeBackgroundColor!!, darkThemeBackgroundColor!!)
-
- // Edit theme colors via resources.
- document("res/values/colors.xml").use { document ->
- val resourcesNode = document.getElementsByTagName("resources").item(0) as Element
-
- resourcesNode.childElementsSequence().forEach { node ->
- when (node.getAttribute("name")) {
- "yt_black0", "yt_black1", "yt_black1_opacity95", "yt_black1_opacity98",
- "yt_black2", "yt_black3", "yt_black4", "yt_status_bar_background_dark",
- "material_grey_850",
- -> node.textContent = darkThemeBackgroundColor
-
- "yt_white1", "yt_white1_opacity95", "yt_white1_opacity98",
- "yt_white2", "yt_white3", "yt_white4",
- -> node.textContent = lightThemeBackgroundColor
- }
- }
- }
-
fun addColorResource(
resourceFile: String,
colorName: String,
colorValue: String,
) {
document(resourceFile).use { document ->
- val resourcesNode = document.getElementsByTagName("resources").item(0) as Element
+ val resourcesNode =
+ document.getElementsByTagName("resources").item(0) as Element
resourcesNode.appendChild(
document.createElement("color").apply {
@@ -150,18 +80,31 @@ val themePatch = bytecodePatch(
// Add a dynamic background color to the colors.xml file.
val splashBackgroundColorKey = "revanced_splash_background_color"
- addColorResource("res/values/colors.xml", splashBackgroundColorKey, lightThemeBackgroundColor!!)
- addColorResource("res/values-night/colors.xml", splashBackgroundColorKey, darkThemeBackgroundColor!!)
+ addColorResource(
+ "res/values/colors.xml",
+ splashBackgroundColorKey,
+ lightThemeBackgroundColor!!
+ )
+ addColorResource(
+ "res/values-night/colors.xml",
+ splashBackgroundColorKey,
+ darkThemeBackgroundColorOption.value!!
+ )
- // Edit splash screen files and change the background color,
+ // Edit splash screen files and change the background color.
arrayOf(
"res/drawable/quantum_launchscreen_youtube.xml",
"res/drawable-sw600dp/quantum_launchscreen_youtube.xml",
).forEach editSplashScreen@{ resourceFileName ->
document(resourceFileName).use { document ->
- document.getElementsByTagName("layer-list").item(0).forEachChildElement { node ->
+ document.getElementsByTagName(
+ "layer-list"
+ ).item(0).forEachChildElement { node ->
if (node.hasAttribute("android:drawable")) {
- node.setAttribute("android:drawable", "@color/$splashBackgroundColorKey")
+ node.setAttribute(
+ "android:drawable",
+ "@color/$splashBackgroundColorKey"
+ )
return@editSplashScreen
}
}
@@ -172,7 +115,6 @@ val themePatch = bytecodePatch(
// Fix the splash screen dark mode background color.
// In 19.32+ the dark mode splash screen is white and fades to black.
- // Maybe it's a bug in YT, or maybe it intentionally. Who knows.
document("res/values-night-v27/styles.xml").use { document ->
// Create a night mode specific override for the splash screen background.
val style = document.createElement("style")
@@ -195,29 +137,63 @@ val themePatch = bytecodePatch(
style.appendChild(styleItem)
}
- val resourcesNode = document.getElementsByTagName("resources").item(0) as Element
+ val resourcesNode =
+ document.getElementsByTagName("resources").item(0) as Element
resourcesNode.appendChild(style)
}
}
}
- )
-
- compatibleWith(
- "com.google.android.youtube"(
- "19.34.42",
- "20.07.39",
- "20.13.41",
- "20.14.43",
+ dependsOn(
+ sharedExtensionPatch,
+ settingsPatch,
+ addResourcesPatch,
+ seekbarColorPatch,
+ baseThemeResourcePatch(
+ lightColorReplacement = { lightThemeBackgroundColor!! }
+ ),
+ themeResourcePatch
)
- )
- execute {
+ compatibleWith(
+ "com.google.android.youtube"(
+ "19.34.42",
+ "20.07.39",
+ "20.13.41",
+ "20.14.43",
+ )
+ )
+ },
+
+ executeBlock = {
addResources("youtube", "layout.theme.themePatch")
PreferenceScreen.GENERAL_LAYOUT.addPreferences(
SwitchPreference("revanced_gradient_loading_screen")
)
+ val preferences = mutableSetOf(
+ SwitchPreference("revanced_seekbar_custom_color"),
+ TextPreference(
+ "revanced_seekbar_custom_color_primary",
+ tag = "app.revanced.extension.shared.settings.preference.ColorPickerPreference",
+ inputType = InputType.TEXT_CAP_CHARACTERS
+ ),
+ TextPreference(
+ "revanced_seekbar_custom_color_accent",
+ tag = "app.revanced.extension.shared.settings.preference.ColorPickerPreference",
+ inputType = InputType.TEXT_CAP_CHARACTERS
+ )
+ )
+
+ PreferenceScreen.SEEKBAR.addPreferences(
+ PreferenceCategory(
+ titleKey = null,
+ sorting = Sorting.UNSORTED,
+ tag = "app.revanced.extension.shared.settings.preference.NoTitlePreferenceCategory",
+ preferences = preferences
+ )
+ )
+
if (is_19_47_or_greater) {
PreferenceScreen.GENERAL_LAYOUT.addPreferences(
ListPreference("revanced_splash_screen_animation_style")
@@ -236,7 +212,5 @@ val themePatch = bytecodePatch(
"$EXTENSION_CLASS_DESCRIPTOR->getLoadingScreenType(I)I"
)
}
-
- lithoColorOverrideHook(EXTENSION_CLASS_DESCRIPTOR, "getValue")
}
-}
+)
From 041f7e0140e9995131529e043c70bbdbef851f4f Mon Sep 17 00:00:00 2001
From: semantic-release-bot
Date: Fri, 26 Sep 2025 05:33:20 +0000
Subject: [PATCH 3/6] chore: Release v5.41.0-dev.16 [skip ci]
# [5.41.0-dev.16](https://github.com/ReVanced/revanced-patches/compare/v5.41.0-dev.15...v5.41.0-dev.16) (2025-09-26)
### Features
* **YouTube Music:** Add `Theme` patch ([#5984](https://github.com/ReVanced/revanced-patches/issues/5984)) ([3bd76d6](https://github.com/ReVanced/revanced-patches/commit/3bd76d60d664befff29c24c9de56dac1486a6e67))
---
CHANGELOG.md | 7 +++++++
gradle.properties | 2 +-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8e6980acf..45a72ad90 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,10 @@
+# [5.41.0-dev.16](https://github.com/ReVanced/revanced-patches/compare/v5.41.0-dev.15...v5.41.0-dev.16) (2025-09-26)
+
+
+### Features
+
+* **YouTube Music:** Add `Theme` patch ([#5984](https://github.com/ReVanced/revanced-patches/issues/5984)) ([3bd76d6](https://github.com/ReVanced/revanced-patches/commit/3bd76d60d664befff29c24c9de56dac1486a6e67))
+
# [5.41.0-dev.15](https://github.com/ReVanced/revanced-patches/compare/v5.41.0-dev.14...v5.41.0-dev.15) (2025-09-25)
diff --git a/gradle.properties b/gradle.properties
index a109346d7..ee3b54ed2 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -3,4 +3,4 @@ org.gradle.jvmargs = -Xms512M -Xmx2048M
org.gradle.parallel = true
android.useAndroidX = true
kotlin.code.style = official
-version = 5.41.0-dev.15
+version = 5.41.0-dev.16
From 15a7e540de4ddc65d6f96ea661b7e2ce064f89e7 Mon Sep 17 00:00:00 2001
From: LisoUseInAIKyrios <118716522+LisoUseInAIKyrios@users.noreply.github.com>
Date: Fri, 26 Sep 2025 12:14:20 +0400
Subject: [PATCH 4/6] refactor(YouTube - Miniplayer): Change ReVanced settings
that are now YouTube default on into "Disable" style settings (#6003)
---
.../youtube/patches/MiniplayerPatch.java | 16 +++++++--------
.../extension/youtube/settings/Settings.java | 20 +++++++++++--------
.../layout/miniplayer/MiniplayerPatch.kt | 6 +++---
.../resources/addresources/values/strings.xml | 18 ++++++++---------
4 files changed, 32 insertions(+), 28 deletions(-)
diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/MiniplayerPatch.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/MiniplayerPatch.java
index c19edb08d..ac05e1540 100644
--- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/MiniplayerPatch.java
+++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/MiniplayerPatch.java
@@ -19,7 +19,7 @@ import app.revanced.extension.shared.Utils;
import app.revanced.extension.shared.settings.Setting;
import app.revanced.extension.youtube.settings.Settings;
-@SuppressWarnings("SpellCheckingInspection")
+@SuppressWarnings({"unused", "SpellCheckingInspection"})
public final class MiniplayerPatch {
/**
@@ -129,7 +129,7 @@ public final class MiniplayerPatch {
(CURRENT_TYPE.isModern() && Settings.MINIPLAYER_DOUBLE_TAP_ACTION.get());
private static final boolean DRAG_AND_DROP_ENABLED =
- CURRENT_TYPE.isModern() && Settings.MINIPLAYER_DRAG_AND_DROP.get();
+ CURRENT_TYPE.isModern() && !Settings.MINIPLAYER_DISABLE_DRAG_AND_DROP.get();
private static final boolean HIDE_OVERLAY_BUTTONS_ENABLED =
Settings.MINIPLAYER_HIDE_OVERLAY_BUTTONS.get()
@@ -145,10 +145,10 @@ public final class MiniplayerPatch {
&& (VersionCheckPatch.IS_19_34_OR_GREATER || Settings.MINIPLAYER_HIDE_REWIND_FORWARD.get());
private static final boolean MINIPLAYER_ROUNDED_CORNERS_ENABLED =
- CURRENT_TYPE.isModern() && Settings.MINIPLAYER_ROUNDED_CORNERS.get();
+ CURRENT_TYPE.isModern() && !Settings.MINIPLAYER_DISABLE_ROUNDED_CORNERS.get();
private static final boolean MINIPLAYER_HORIZONTAL_DRAG_ENABLED =
- DRAG_AND_DROP_ENABLED && Settings.MINIPLAYER_HORIZONTAL_DRAG.get();
+ DRAG_AND_DROP_ENABLED && !Settings.MINIPLAYER_DISABLE_HORIZONTAL_DRAG.get();
/**
* Remove a broken and always present subtitle text that is only
@@ -173,14 +173,14 @@ public final class MiniplayerPatch {
public static final class MiniplayerHorizontalDragAvailability implements Setting.Availability {
@Override
public boolean isAvailable() {
- return Settings.MINIPLAYER_TYPE.get().isModern() && Settings.MINIPLAYER_DRAG_AND_DROP.get();
+ return Settings.MINIPLAYER_TYPE.get().isModern() && !Settings.MINIPLAYER_DISABLE_DRAG_AND_DROP.get();
}
@Override
public List> getParentSettings() {
return List.of(
Settings.MINIPLAYER_TYPE,
- Settings.MINIPLAYER_DRAG_AND_DROP
+ Settings.MINIPLAYER_DISABLE_DRAG_AND_DROP
);
}
}
@@ -192,7 +192,7 @@ public final class MiniplayerPatch {
return type == MODERN_4
|| (!IS_19_20_OR_GREATER && (type == MODERN_1 || type == MODERN_3))
|| (!IS_19_26_OR_GREATER && type == MODERN_1
- && !Settings.MINIPLAYER_DOUBLE_TAP_ACTION.get() && !Settings.MINIPLAYER_DRAG_AND_DROP.get())
+ && !Settings.MINIPLAYER_DOUBLE_TAP_ACTION.get() && Settings.MINIPLAYER_DISABLE_DRAG_AND_DROP.get())
|| (IS_19_29_OR_GREATER && type == MODERN_3);
}
@@ -201,7 +201,7 @@ public final class MiniplayerPatch {
return List.of(
Settings.MINIPLAYER_TYPE,
Settings.MINIPLAYER_DOUBLE_TAP_ACTION,
- Settings.MINIPLAYER_DRAG_AND_DROP
+ Settings.MINIPLAYER_DISABLE_DRAG_AND_DROP
);
}
}
diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/Settings.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/Settings.java
index cab782668..17937a660 100644
--- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/Settings.java
+++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/Settings.java
@@ -11,6 +11,10 @@ import static app.revanced.extension.youtube.patches.ChangeHeaderPatch.HeaderLog
import static app.revanced.extension.youtube.patches.ChangeStartPagePatch.ChangeStartPageTypeAvailability;
import static app.revanced.extension.youtube.patches.ChangeStartPagePatch.StartPage;
import static app.revanced.extension.youtube.patches.ExitFullscreenPatch.FullscreenMode;
+import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerAnyModernAvailability;
+import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerHideOverlayButtonsAvailability;
+import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerHideRewindOrOverlayOpacityAvailability;
+import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerHideSubtextsAvailability;
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerHorizontalDragAvailability;
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerType;
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerType.MINIMAL;
@@ -177,15 +181,15 @@ public class Settings extends BaseSettings {
// Miniplayer
public static final EnumSetting MINIPLAYER_TYPE = new EnumSetting<>("revanced_miniplayer_type", MiniplayerType.DEFAULT, true);
- public static final BooleanSetting MINIPLAYER_DOUBLE_TAP_ACTION = new BooleanSetting("revanced_miniplayer_double_tap_action", TRUE, true, new MiniplayerPatch.MiniplayerAnyModernAvailability());
- public static final BooleanSetting MINIPLAYER_DRAG_AND_DROP = new BooleanSetting("revanced_miniplayer_drag_and_drop", TRUE, true, new MiniplayerPatch.MiniplayerAnyModernAvailability());
- public static final BooleanSetting MINIPLAYER_HORIZONTAL_DRAG = new BooleanSetting("revanced_miniplayer_horizontal_drag", FALSE, true, new MiniplayerHorizontalDragAvailability());
- public static final BooleanSetting MINIPLAYER_HIDE_OVERLAY_BUTTONS = new BooleanSetting("revanced_miniplayer_hide_overlay_buttons", FALSE, true, new MiniplayerPatch.MiniplayerHideOverlayButtonsAvailability());
- public static final BooleanSetting MINIPLAYER_HIDE_SUBTEXT = new BooleanSetting("revanced_miniplayer_hide_subtext", FALSE, true, new MiniplayerPatch.MiniplayerHideSubtextsAvailability());
+ public static final BooleanSetting MINIPLAYER_DISABLE_DRAG_AND_DROP = new BooleanSetting("revanced_miniplayer_disable_drag_and_drop", FALSE, true, new MiniplayerAnyModernAvailability());
+ public static final BooleanSetting MINIPLAYER_DISABLE_HORIZONTAL_DRAG = new BooleanSetting("revanced_miniplayer_disable_horizontal_drag", FALSE, true, new MiniplayerHorizontalDragAvailability());
+ public static final BooleanSetting MINIPLAYER_DISABLE_ROUNDED_CORNERS = new BooleanSetting("revanced_miniplayer_disable_rounded_corners", FALSE, true, new MiniplayerAnyModernAvailability());
+ public static final BooleanSetting MINIPLAYER_DOUBLE_TAP_ACTION = new BooleanSetting("revanced_miniplayer_double_tap_action", TRUE, true, new MiniplayerAnyModernAvailability());
+ public static final BooleanSetting MINIPLAYER_HIDE_OVERLAY_BUTTONS = new BooleanSetting("revanced_miniplayer_hide_overlay_buttons", FALSE, true, new MiniplayerHideOverlayButtonsAvailability());
+ public static final BooleanSetting MINIPLAYER_HIDE_SUBTEXT = new BooleanSetting("revanced_miniplayer_hide_subtext", FALSE, true, new MiniplayerHideSubtextsAvailability());
public static final BooleanSetting MINIPLAYER_HIDE_REWIND_FORWARD = new BooleanSetting("revanced_miniplayer_hide_rewind_forward", TRUE, true, new MiniplayerPatch.MiniplayerHideRewindOrOverlayOpacityAvailability());
- public static final BooleanSetting MINIPLAYER_ROUNDED_CORNERS = new BooleanSetting("revanced_miniplayer_rounded_corners", TRUE, true, new MiniplayerPatch.MiniplayerAnyModernAvailability());
- public static final IntegerSetting MINIPLAYER_WIDTH_DIP = new IntegerSetting("revanced_miniplayer_width_dip", 192, true, new MiniplayerPatch.MiniplayerAnyModernAvailability());
- public static final IntegerSetting MINIPLAYER_OPACITY = new IntegerSetting("revanced_miniplayer_opacity", 100, true, new MiniplayerPatch.MiniplayerHideRewindOrOverlayOpacityAvailability());
+ public static final IntegerSetting MINIPLAYER_WIDTH_DIP = new IntegerSetting("revanced_miniplayer_width_dip", 192, true, new MiniplayerAnyModernAvailability());
+ public static final IntegerSetting MINIPLAYER_OPACITY = new IntegerSetting("revanced_miniplayer_opacity", 100, true, new MiniplayerHideRewindOrOverlayOpacityAvailability());
// External downloader
public static final BooleanSetting EXTERNAL_DOWNLOADER = new BooleanSetting("revanced_external_downloader", FALSE);
diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/miniplayer/MiniplayerPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/miniplayer/MiniplayerPatch.kt
index 13c4549c2..2758210a5 100644
--- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/miniplayer/MiniplayerPatch.kt
+++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/miniplayer/MiniplayerPatch.kt
@@ -186,15 +186,15 @@ val miniplayerPatch = bytecodePatch(
if (!is_19_29_or_greater) {
preferences += SwitchPreference("revanced_miniplayer_double_tap_action")
}
- preferences += SwitchPreference("revanced_miniplayer_drag_and_drop")
+ preferences += SwitchPreference("revanced_miniplayer_disable_drag_and_drop")
}
if (is_19_43_or_greater) {
- preferences += SwitchPreference("revanced_miniplayer_horizontal_drag")
+ preferences += SwitchPreference("revanced_miniplayer_disable_horizontal_drag")
}
if (is_19_36_or_greater) {
- preferences += SwitchPreference("revanced_miniplayer_rounded_corners")
+ preferences += SwitchPreference("revanced_miniplayer_disable_rounded_corners")
}
preferences += SwitchPreference("revanced_miniplayer_hide_subtext")
diff --git a/patches/src/main/resources/addresources/values/strings.xml b/patches/src/main/resources/addresources/values/strings.xml
index f95b98d40..f151ae14d 100644
--- a/patches/src/main/resources/addresources/values/strings.xml
+++ b/patches/src/main/resources/addresources/values/strings.xml
@@ -1421,25 +1421,25 @@ Limitation: Using the back button on the toolbar may not work"
Modern 2
Modern 3
Modern 4
- Enable rounded corners
- Corners are rounded
- Corners are square
+ Disable rounded corners
+ Corners are square
+ Corners are rounded
Enable double-tap and pinch to resize
"Double-tap action and pinch to resize is enabled
• Double tap to increase miniplayer size
• Double tap again to restore original size"
Double-tap action and pinch to resize is disabled
- Enable drag and drop
- "Drag and drop is enabled
+ Disable drag and drop
+ Drag and drop is disabled
+ "Drag and drop is enabled
Miniplayer can be dragged to any corner of the screen"
- Drag and drop is disabled
- Enable horizontal drag gesture
- "Horizontal drag gesture enabled
+ Disable horizontal drag gesture
+ Horizontal drag gesture disabled
+ "Horizontal drag gesture enabled
Miniplayer can be dragged off-screen to the left or right"
- Horizontal drag gesture disabled
Hide overlay buttons
Overlay buttons are hidden
Overlay buttons are shown
From 50aca3314f9fbcf2732f6854ec34a312a19ea69f Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
<41898282+github-actions[bot]@users.noreply.github.com>
Date: Fri, 26 Sep 2025 12:24:08 +0400
Subject: [PATCH 5/6] chore: Sync translations (#6005)
---
.../addresources/values-ar-rSA/strings.xml | 18 ++++++-------
.../addresources/values-az-rAZ/strings.xml | 18 ++++++-------
.../addresources/values-be-rBY/strings.xml | 18 ++++++-------
.../addresources/values-bg-rBG/strings.xml | 18 ++++++-------
.../addresources/values-bn-rBD/strings.xml | 18 ++++++-------
.../addresources/values-cs-rCZ/strings.xml | 18 ++++++-------
.../addresources/values-da-rDK/strings.xml | 18 ++++++-------
.../addresources/values-de-rDE/strings.xml | 18 ++++++-------
.../addresources/values-el-rGR/strings.xml | 18 ++++++-------
.../addresources/values-es-rES/strings.xml | 18 ++++++-------
.../addresources/values-et-rEE/strings.xml | 18 ++++++-------
.../addresources/values-fi-rFI/strings.xml | 18 ++++++-------
.../addresources/values-fil-rPH/strings.xml | 18 ++++++-------
.../addresources/values-fr-rFR/strings.xml | 18 ++++++-------
.../addresources/values-ga-rIE/strings.xml | 18 ++++++-------
.../addresources/values-hu-rHU/strings.xml | 18 ++++++-------
.../addresources/values-hy-rAM/strings.xml | 18 ++++++-------
.../addresources/values-in-rID/strings.xml | 18 ++++++-------
.../addresources/values-it-rIT/strings.xml | 18 ++++++-------
.../addresources/values-iw-rIL/strings.xml | 18 ++++++-------
.../addresources/values-ja-rJP/strings.xml | 18 ++++++-------
.../addresources/values-ko-rKR/strings.xml | 18 ++++++-------
.../addresources/values-lt-rLT/strings.xml | 18 ++++++-------
.../addresources/values-lv-rLV/strings.xml | 18 ++++++-------
.../addresources/values-nl-rNL/strings.xml | 18 ++++++-------
.../addresources/values-pl-rPL/strings.xml | 18 ++++++-------
.../addresources/values-pt-rBR/strings.xml | 18 ++++++-------
.../addresources/values-pt-rPT/strings.xml | 18 ++++++-------
.../addresources/values-ro-rRO/strings.xml | 18 ++++++-------
.../addresources/values-ru-rRU/strings.xml | 18 ++++++-------
.../addresources/values-sk-rSK/strings.xml | 18 ++++++-------
.../addresources/values-sl-rSI/strings.xml | 18 ++++++-------
.../addresources/values-sq-rAL/strings.xml | 18 ++++++-------
.../addresources/values-sr-rCS/strings.xml | 18 ++++++-------
.../addresources/values-sr-rSP/strings.xml | 18 ++++++-------
.../addresources/values-sv-rSE/strings.xml | 18 ++++++-------
.../addresources/values-th-rTH/strings.xml | 18 ++++++-------
.../addresources/values-tr-rTR/strings.xml | 18 ++++++-------
.../addresources/values-uk-rUA/strings.xml | 26 +++++++++----------
.../addresources/values-vi-rVN/strings.xml | 18 ++++++-------
.../addresources/values-zh-rCN/strings.xml | 18 ++++++-------
.../addresources/values-zh-rTW/strings.xml | 18 ++++++-------
42 files changed, 382 insertions(+), 382 deletions(-)
diff --git a/patches/src/main/resources/addresources/values-ar-rSA/strings.xml b/patches/src/main/resources/addresources/values-ar-rSA/strings.xml
index d38d5e947..aebfa8fb4 100644
--- a/patches/src/main/resources/addresources/values-ar-rSA/strings.xml
+++ b/patches/src/main/resources/addresources/values-ar-rSA/strings.xml
@@ -1352,25 +1352,25 @@ Second \"item\" text"
حديث 2
حديث 3
حديث 4
- تمكين الزوايا المستديرة
- الزوايا مستديرة
- الزوايا مربعة
+ تعطيل الزوايا الدائرية
+ الزوايا مربعة
+ الزوايا مستديرة
تمكين النقر المزدوج والضغط لتغيير الحجم
"تم تمكين إجراء الضغط المزدوج والضغط لتغيير الحجم
• النقر المزدوج لزيادة حجم المشغل المصغر
• النقر المزدوج مرة أخرى لاستعادة الحجم الأصلي"
إجراء النقر المزدوج والضغط لتغيير الحجم معطل
- تمكين السحب والإفلات
- "السحب والإفلات مفعلان
+ تعطيل السحب والإفلات
+ تم تعطيل السحب والإفلات
+ "السحب والإفلات مفعلان
يمكن سحب المشغل المصغر إلى أي زاوية من الشاشة"
- تم تعطيل السحب والإفلات
- تمكين إيماءة السحب الأفقية
- "تم تمكين إيماءة السحب الأفقية
+ تعطيل إيماءة السحب الأفقي
+ تم تعطيل إيماءة السحب الأفقية
+ "تم تمكين إيماءة السحب الأفقية
يمكن سحب المشغل المصغر خارج الشاشة إلى اليسار أو اليمين"
- تم تعطيل إيماءة السحب الأفقية
إخفاء أزرار الواجهة
تم إخفاء أزرار الواجهة
يتم عرض أزرار الواجهة
diff --git a/patches/src/main/resources/addresources/values-az-rAZ/strings.xml b/patches/src/main/resources/addresources/values-az-rAZ/strings.xml
index 3b45c5cf7..8931da46e 100644
--- a/patches/src/main/resources/addresources/values-az-rAZ/strings.xml
+++ b/patches/src/main/resources/addresources/values-az-rAZ/strings.xml
@@ -1351,25 +1351,25 @@ Məhdudiyyət: Alətlər cizgisindəki geri düyməsin istifadə işləməyə bi
Müasir 2
Müasir 3
Müasir 4
- Dairəvi küncləri aktivləşdir
- Künclər dairəvidir
- Künclər kvadratdır
+ Yuvarlaq küncləri söndür
+ Künclər kvadratdır
+ Künclər dairəvidir
Ölçüsünü dəyişmək üçün cüt toxunmanı və çimdikləməni aktiv et
"Ölçüsün dəyişmək üçün cüt kliklə və çimdiklə
• Kiçik oynadıcı ölçüsün artırmaq üçün cüt toxun
• Orijinal ölçünü bərpa etmək üçün təkrar cüt toxun"
Ölçüsünü dəyişdirmək üçün cüt toxunma fəaliyyəti və çimdikləmə yoxdur
- \"Sürüklə və burax\"ı aktivləşdir
- "Sürüklə və burax aktivdir
+ Sürük-burax funksiyasını söndür
+ \"Sürüklə və burax\" aktiv deyil
+ "Sürüklə və burax aktivdir
Kiçik oynadıcı ekranın istənilən küncünə sürüklənə bilər"
- \"Sürüklə və burax\" aktiv deyil
- Üfüqi sürükləmə jestini aktivləşdir
- "Üfüqi sürükləmə jesti aktivdir
+ Üfüqi sürükləmə jestini söndür
+ Üfüqi sürükləmə jesti qapatıldı
+ "Üfüqi sürükləmə jesti aktivdir
Kiçik oynadıcı ekrandan sola və ya sağa sürüklənə bilər"
- Üfüqi sürükləmə jesti qapatıldı
Örtük düymələrini gizlət
Örtük düymələri gizlidir
Örtük düymələri görünür
diff --git a/patches/src/main/resources/addresources/values-be-rBY/strings.xml b/patches/src/main/resources/addresources/values-be-rBY/strings.xml
index 566bb2cb8..a2b78898c 100644
--- a/patches/src/main/resources/addresources/values-be-rBY/strings.xml
+++ b/patches/src/main/resources/addresources/values-be-rBY/strings.xml
@@ -1353,25 +1353,25 @@ Second \"item\" text"
Сучасны 2
Сучасны 3
Сучасны 4
- Включить закругленные углы
- Углы закруглены
- Углы квадратные
+ Адключыць закругленыя вуглы
+ Углы квадратные
+ Углы закруглены
Включить двойное нажатие и масштабирование с помощьющипка
"Уключана дзеянне «подвойнае націсканне» і «шчыпкі для змены памеру»
• Подвойнае націсканне, каб павялічыць памер міні-прайгравальніка
• Подвойнае націсканне яшчэ раз, каб аднавіць першапачатковы памер"
Двойное нажатие и scalewithpinch отключены
- Включить перетаскивание
- "Уключана перацягванне і кіданне
+ Адключыць перацягванне
+ Перетаскивание отключено
+ "Уключана перацягванне і кіданне
Міні-прайгравальнік можна перацягнуць у любы куток экрана"
- Перетаскивание отключено
- Включить горизонтальный жест перетаскивания
- "Уключаны жэст гарызантальнага перацягвання
+ Адключыць гарызантальны жэст перацягвання
+ Горизонтальный жест перетаскивания отключен
+ "Уключаны жэст гарызантальнага перацягвання
Міні-прайгравальнік можна перацягнуць за межы экрана ўлева ці ўправа"
- Горизонтальный жест перетаскивания отключен
Схаваць кнопкі накладання
Кнопкі накладання схаваныя
Кнопкі накладання паказаны
diff --git a/patches/src/main/resources/addresources/values-bg-rBG/strings.xml b/patches/src/main/resources/addresources/values-bg-rBG/strings.xml
index 004a7e2de..98b86283a 100644
--- a/patches/src/main/resources/addresources/values-bg-rBG/strings.xml
+++ b/patches/src/main/resources/addresources/values-bg-rBG/strings.xml
@@ -1352,25 +1352,25 @@ Second \"item\" text"
Модерен 2
Модерен 3
Модерен 4
- Активирайте заоблени ъгли
- Ъглите са заоблени
- Ъглите са нормални
+ Деактивиране на заоблени ъгли
+ Ъглите са нормални
+ Ъглите са заоблени
Активирайте двойното докосване и щипване за преоразмеряване
"Активирано е двойно докосване и щипка за преоразмеряване
• Двойно докосване за увеличаване на размера на мини плейъра
• Двойно докосване отново, за да възстановите оригиналния размер"
Двойно докосване и щипване за преоразмеряване е деактивирано
- Разрешете плъзгане и местене
- "Включено е плъзгане и пускане
+ Деактивиране на плъзгане и пускане
+ Плъзгането и преместването е деактивирано
+ "Включено е плъзгане и пускане
Мини плейърът може да бъде плъзган до всеки ъгъл на екрана"
- Плъзгането и преместването е деактивирано
- Активиране на хоризонтално плъзгане
- "Активиран е хоризонтален жест за плъзгане
+ Деактивиране на хоризонтален жест за плъзгане
+ Жестът за хоризонтално плъзгане е деактивиран
+ "Активиран е хоризонтален жест за плъзгане
Мини плейърът може да бъде плъзган извън екрана наляво или надясно"
- Жестът за хоризонтално плъзгане е деактивиран
Скриване на бутоните за наслагване
Бутоните за наслагване са скрити
Бутоните за наслагване са показани
diff --git a/patches/src/main/resources/addresources/values-bn-rBD/strings.xml b/patches/src/main/resources/addresources/values-bn-rBD/strings.xml
index 05e43105a..7ff0637ce 100644
--- a/patches/src/main/resources/addresources/values-bn-rBD/strings.xml
+++ b/patches/src/main/resources/addresources/values-bn-rBD/strings.xml
@@ -1348,25 +1348,25 @@ YouTube সেটিংসে অটো প্লে পরিবর্তন
মর্ডান ২
মর্ডান ৩
আধুনিক ৪
- গোলাকার কোণ সক্ষম করুন
- কোণগুলি গোলাকার
- কোণগুলি বর্গাকার
+ গোলাকার কোণা নিষ্ক্রিয় করুন
+ কোণগুলি বর্গাকার
+ কোণগুলি গোলাকার
ডাবল-ট্যাপ এবং পিঞ্চ টু রিসাইজ সক্ষম করুন
"ডাবল-ট্যাপ করার ক্রিয়া এবং আকার পরিবর্তন করার জন্য চিমটি দেওয়া সক্রিয়
• miniplayer আকার বৃদ্ধি করতে ডাবল ট্যাপ করুন
• মূল আকার পুনরুদ্ধার করতে আবার ডাবল ট্যাপ করুন"
ডাবল-ট্যাপ অ্যাকশন এবং পিঞ্চ টু রিসাইজ অক্ষম
- ড্র্যাগ এবং ড্রপ সক্ষম করুন
- "ড্র্যাগ এবং ড্রপ সক্রিয়
+ টেনে-ছেড়ে দেওয়া নিষ্ক্রিয় করুন
+ ড্র্যাগ এবং ড্রপ অক্ষম
+ "ড্র্যাগ এবং ড্রপ সক্রিয়
Miniplayer স্ক্রিনের যেকোনো কোণে টানা যাবে"
- ড্র্যাগ এবং ড্রপ অক্ষম
- অনুভূমিক ড্র্যাগ অঙ্গভঙ্গি সক্ষম করুন
- "ক্ষैতিকভাবে টানার ভঙ্গি সক্রিয়
+ অনুভূমিক টেনে নেওয়ার ভঙ্গি নিষ্ক্রিয় করুন
+ অনুভূমিক ড্র্যাগ অঙ্গভঙ্গি অক্ষম
+ "ক্ষैতিকভাবে টানার ভঙ্গি সক্রিয়
Miniplayer স্ক্রিন থেকে বামে বা ডানে টানা যাবে"
- অনুভূমিক ড্র্যাগ অঙ্গভঙ্গি অক্ষম
ওভারলে বোতাম লুকান
ওভারলে বোতাম লুকানো আছে
ওভারলে বোতাম দেখানো হয়েছে
diff --git a/patches/src/main/resources/addresources/values-cs-rCZ/strings.xml b/patches/src/main/resources/addresources/values-cs-rCZ/strings.xml
index b1539078d..eec21e392 100644
--- a/patches/src/main/resources/addresources/values-cs-rCZ/strings.xml
+++ b/patches/src/main/resources/addresources/values-cs-rCZ/strings.xml
@@ -1352,25 +1352,25 @@ Omezení: Použití tlačítka zpět na panelu nástrojů nemusí fungovat"Moderní 2
Moderní 3
Moderní 4
- Povolit zaoblené rohy
- Rohy jsou zaoblené
- Rohy jsou čtvercové
+ Zakázat zaoblené rohy
+ Rohy jsou čtvercové
+ Rohy jsou zaoblené
Povolit dvojitý klepnutí a přiblížení pro změnu velikosti
"Aktivováno dvojitým klepnutím a přiblížením pro změnu velikosti
• Dvojitým klepnutím zvětšíte velikost \"miniplayeru\"
• Dvojitým klepnutím znovu obnovíte původní velikost"
Dvojitý klepnutí a přiblížení pro změnu velikosti je zakázáno
- Povolit přetažení
- "Aktivováno přetahování
+ Zakázat přetahování
+ Přetažení je zakázáno
+ "Aktivováno přetahování
\"Miniplayer\" lze přetáhnout do libovolného rohu obrazovky"
- Přetažení je zakázáno
- Povolit horizontální posun
- "Aktivováno horizontální přetahování
+ Zakázat horizontální gesto přetahování
+ Horizontální posun je zakázán
+ "Aktivováno horizontální přetahování
\"Miniplayer\" lze přetáhnout z obrazovky doleva nebo doprava"
- Horizontální posun je zakázán
Skrýt tlačítka překrytí
Tlačítka překrytí jsou skrytá
Tlačítka překrytí jsou zobrazena
diff --git a/patches/src/main/resources/addresources/values-da-rDK/strings.xml b/patches/src/main/resources/addresources/values-da-rDK/strings.xml
index eca848ac1..f32dacd33 100644
--- a/patches/src/main/resources/addresources/values-da-rDK/strings.xml
+++ b/patches/src/main/resources/addresources/values-da-rDK/strings.xml
@@ -1354,25 +1354,25 @@ Begrænsning: Brug af tilbage-knappen på værktøjslinjen fungerer muligvis ikk
Moderne 2
Moderne 3
Moderne 4
- Aktiver afrundede hjørner
- Hjørner er afrundede
- Hjørner er firkantede
+ Deaktiver afrundede hjørner
+ Hjørner er firkantede
+ Hjørner er afrundede
Aktiver dobbelttryk og klemme for at ændre størrelse
"Dobbelttrykshandling og knib for at ændre størrelse er aktiveret
● Dobbelttryk for at øge miniafspillerstørrelsen
● Dobbelttryk igen for at gendanne den oprindelige størrelse"
Dobbelttryk handling og klemme for at ændre størrelse er deaktiveret
- Aktiver træk og slip
- "Træk og slip er aktiveret
+ Deaktiver træk og slip
+ Træk og slip er deaktiveret
+ "Træk og slip er aktiveret
Miniafspiller kan trækkes til et hvilket som helst hjørne af skærmen"
- Træk og slip er deaktiveret
- Aktiver vandret træk-bevægelse
- "Vandret træk-bevægelse aktiveret
+ Deaktiver vandret trækbevægelse
+ Vandret trækbevægelse deaktiveret
+ "Vandret træk-bevægelse aktiveret
Miniafspiller kan trækkes ud over skærmen til venstre eller højre"
- Vandret trækbevægelse deaktiveret
Skjul overlay-knapper
Overlay-knapper er skjult
Overlay-knapper vises
diff --git a/patches/src/main/resources/addresources/values-de-rDE/strings.xml b/patches/src/main/resources/addresources/values-de-rDE/strings.xml
index a5cc4b988..7ee669512 100644
--- a/patches/src/main/resources/addresources/values-de-rDE/strings.xml
+++ b/patches/src/main/resources/addresources/values-de-rDE/strings.xml
@@ -1349,25 +1349,25 @@ Einschränkung: Die Verwendung der Zurück-Taste auf der Symbolleiste funktionie
Modern 2
Modern 3
Modern 4
- Abgerundete Ecken aktivieren
- Ecken sind abgerundet
- Ecken sind Quadrat
+ Abgerundete Ecken deaktivieren
+ Ecken sind Quadrat
+ Ecken sind abgerundet
Aktiviere doppeltes Tippen und Pratzen um die Größe zu ändern
"Doppeltippen und mit zwei Fingern vergrößern/verkleinern ist aktiviert
• Doppeltippen, um die Größe des Mini-Players zu vergrößern
• Nochmals doppeltippen, um die ursprüngliche Größe wiederherzustellen"
Doppel-Tipp-Aktion und Pinch um die Größe zu verändern, ist deaktiviert
- Drag and Drop aktivieren
- "Drag-and-Drop ist aktiviert
+ Drag & Drop deaktivieren
+ Drag and Drop ist deaktiviert
+ "Drag-and-Drop ist aktiviert
Der Mini-Player kann in jede Ecke des Bildschirms gezogen werden"
- Drag and Drop ist deaktiviert
- Horizontales Ziehen aktivieren
- "Horizontale Ziehgeste aktiviert
+ Horizontale Ziehgeste deaktivieren
+ Horizontale Drag Geste deaktiviert
+ "Horizontale Ziehgeste aktiviert
Der Mini-Player kann mit einer Wischgeste vom Bildschirm nach links oder rechts gezogen werden"
- Horizontale Drag Geste deaktiviert
Overlay-Buttons ausblenden
Overlay-Buttons sind ausgeblendet
Overlay-Buttons werden angezeigt
diff --git a/patches/src/main/resources/addresources/values-el-rGR/strings.xml b/patches/src/main/resources/addresources/values-el-rGR/strings.xml
index 1cc679d0c..3ea46a397 100644
--- a/patches/src/main/resources/addresources/values-el-rGR/strings.xml
+++ b/patches/src/main/resources/addresources/values-el-rGR/strings.xml
@@ -1353,25 +1353,25 @@ Second \"item\" text"
Μοντέρνος 2
Μοντέρνος 3
Μοντέρνος 4
- Στρογγυλεμένες γωνίες
- Οι γωνίες είναι στρογγυλεμένες
- Οι γωνίες είναι τετράγωνες
+ Απενεργοποίηση στρογγυλεμένων γωνιών
+ Οι γωνίες είναι τετράγωνες
+ Οι γωνίες είναι στρογγυλεμένες
Διπλό πάτημα & τσίμπημα για αλλαγή μεγέθους
"Η λειτουργία διπλού πατήματος και τσιμπήματος για αλλαγή μεγέθους είναι ενεργοποιημένη
• Πατήστε δύο φορές για να αυξήσετε το μέγεθος της ελαχιστοποιημένης οθόνης
• Πατήστε ξανά δύο φορές για επαναφορά στο αρχικό της μέγεθος"
Η λειτουργία διπλού πατήματος και τσιμπήματος για αλλαγή μεγέθους είναι απενεργοποιημένη
- Λειτουργία μεταφοράς και απόθεσης
- "Η λειτουργία μεταφοράς και απόθεσης είναι ενεργοποιημένη
+ Απενεργοποίηση λειτουργίας μεταφοράς και απόθεσης
+ Η λειτουργία μεταφοράς και απόθεσης είναι απενεργοποιημένη
+ "Η λειτουργία μεταφοράς και απόθεσης είναι ενεργοποιημένη
Η ελαχιστοποιημένη οθόνη αναπαραγωγής μπορεί να μετακινηθεί σε οποιαδήποτε γωνία της οθόνης"
- Η λειτουργία μεταφοράς και απόθεσης είναι απενεργοποιημένη
- Χειρονομία οριζόντιας σύρσης
- "Η χειρονομία οριζόντιας σύρσης είναι ενεργοποιημένη
+ Απενεργοποίηση χειρονομίας οριζόντιας σύρσης
+ Η χειρονομία οριζόντιας σύρσης είναι απενεργοποιημένη
+ "Η χειρονομία οριζόντιας σύρσης είναι ενεργοποιημένη
Η ελαχιστοποιημένη οθόνη μπορεί να συρθεί εκτός οθόνης προς τα αριστερά ή δεξιά"
- Η χειρονομία οριζόντιας σύρσης είναι απενεργοποιημένη
Κουμπιά επικάλυψης οθόνης αναπαραγωγής
Κρυμμένα
Εμφανίζονται
diff --git a/patches/src/main/resources/addresources/values-es-rES/strings.xml b/patches/src/main/resources/addresources/values-es-rES/strings.xml
index 3b01257f4..a89606794 100644
--- a/patches/src/main/resources/addresources/values-es-rES/strings.xml
+++ b/patches/src/main/resources/addresources/values-es-rES/strings.xml
@@ -1343,25 +1343,25 @@ Limitación: Es posible que el uso del botón de retroceso en la barra de herram
Moderna 2
Moderna 3
Moderno 4
- Habilitar esquinas redondeadas
- Las esquinas están redondeadas
- Las esquinas son cuadradas
+ Desactivar esquinas redondeadas
+ Las esquinas son cuadradas
+ Las esquinas están redondeadas
Habilitar doble toque y pellizco para redimensionar
"La acción de doble toque y el pellizco para cambiar el tamaño están activados
• Toca dos veces para aumentar el tamaño del minireproductor
• Toca dos veces de nuevo para restaurar el tamaño original"
Acción de doble toque y pellizco para redimensionar está desactivado
- Activar arrastrar y soltar
- "La función de arrastrar y soltar está activada
+ Desactivar arrastrar y soltar
+ Arrastre y suelte está desactivado
+ "La función de arrastrar y soltar está activada
El minireproductor se puede arrastrar a cualquier esquina de la pantalla"
- Arrastre y suelte está desactivado
- Activar gesto de arrastre horizontal
- "El gesto de arrastre horizontal está activado
+ Desactivar gesto de arrastre horizontal
+ Gesto de arrastre horizontal desactivado
+ "El gesto de arrastre horizontal está activado
El minireproductor se puede arrastrar fuera de la pantalla hacia la izquierda o la derecha"
- Gesto de arrastre horizontal desactivado
Ocultar botones de superposición
Los botones de superposición están ocultos
Se muestran los botones de superposición
diff --git a/patches/src/main/resources/addresources/values-et-rEE/strings.xml b/patches/src/main/resources/addresources/values-et-rEE/strings.xml
index ef39fd107..2d6ad820b 100644
--- a/patches/src/main/resources/addresources/values-et-rEE/strings.xml
+++ b/patches/src/main/resources/addresources/values-et-rEE/strings.xml
@@ -1352,25 +1352,25 @@ Piirang: tööriistaribal tagasinupp ei pruugi töötada"
Kaasaegne 2
Kaasaegne 3
Moodne 4
- Lülita ümarate nurkade režiim sisse
- Nurgad on ümarad
- Nurgad on ruudukujulised
+ Keela ümarad nurgad
+ Nurgad on ruudukujulised
+ Nurgad on ümarad
Lülita kahekordne puudutus ja pigistamine suuruse muutmiseks sisse
"Topeltklõpsamise toiming ja tihendamisega suuruse muutmine on lubatud
• Topeltklõpsake, et suurendada minimaalse mängija suurust
• Topeltklõpsake uuesti, et taastada algne suurus"
Kahekordse puudutuse toiming ja pigistamine suuruse muutmiseks on keelatud
- Lülita lohistamine sisse
- "Lohistamine on lubatud
+ Keela lohistamine
+ Lohistamine on keelatud
+ "Lohistamine on lubatud
Minimaalset mängijat saab lohistada ekraani mis tahes nurka"
- Lohistamine on keelatud
- Lülita horisontaalse lohistamise žest sisse
- "Horisontaalne lohistamise žest on lubatud
+ Keela horisontaalne lohistamisžest
+ Horisontaalse lohistamise žest on keelatud
+ "Horisontaalne lohistamise žest on lubatud
Minimaalset mängijat saab lohistada ekraanilt vasakule või paremale"
- Horisontaalse lohistamise žest on keelatud
Peida ülekatteliidese nupud
Ülekatteliidese nupud on peidetud
Ülekatteliidese nupud on nähtaval
diff --git a/patches/src/main/resources/addresources/values-fi-rFI/strings.xml b/patches/src/main/resources/addresources/values-fi-rFI/strings.xml
index 33a6cd5cf..6ca7300d3 100644
--- a/patches/src/main/resources/addresources/values-fi-rFI/strings.xml
+++ b/patches/src/main/resources/addresources/values-fi-rFI/strings.xml
@@ -1352,25 +1352,25 @@ Rajoitus: Työkalupalkin takaisin-painikkeen käyttäminen ei välttämättä to
Moderni 2
Moderni 3
Moderni 4
- Ota pyöristetyt kulmat käyttöön
- Kulmat on pyöristetty
- Kulmat ovat suorakulmaisia
+ Poista pyöristetyt kulmat käytöstä
+ Kulmat ovat suorakulmaisia
+ Kulmat on pyöristetty
Ota kaksoisnapautus ja koon muuttaminen nipistämällä käyttöön
"Kaksoisnapautustoiminto ja koon muuttaminen nipistämällä ovat käytössä
• Kaksoisnapauta suurentaaksesi minisoittimen kokoa
• Kaksoisnapauta uudelleen alkuperäisen koon palauttamiseksi"
Kaksoisnapautustoiminto ja koon muuttaminen nipistämällä eivät olet käytössä
- Ota vedä ja pudota käyttöön
- "Vedä ja pudota on käytössä
+ Poista vedä ja pudota käytöstä
+ Vedä ja pudota ei ole käytössä
+ "Vedä ja pudota on käytössä
Minisoitin voidaan vetää mihin tahansa näytön kulmaan"
- Vedä ja pudota ei ole käytössä
- Ota vaakasuuntainen vetoele käyttöön
- "Vaakasuuntainen vetoele on käytössä
+ Poista vaakasuuntainen vetoele käytöstä
+ Vaakasuuntainen vetoele ei ole käytössä
+ "Vaakasuuntainen vetoele on käytössä
Minisoitin voidaan vetää pois näytöltä vasemmalle tai oikealle"
- Vaakasuuntainen vetoele ei ole käytössä
Piilota peittokuvan painikkeet
Peittokuvan painikkeet on piilotettu
Peittokuvan painikkeet näytetään
diff --git a/patches/src/main/resources/addresources/values-fil-rPH/strings.xml b/patches/src/main/resources/addresources/values-fil-rPH/strings.xml
index 76be116a0..5cb394885 100644
--- a/patches/src/main/resources/addresources/values-fil-rPH/strings.xml
+++ b/patches/src/main/resources/addresources/values-fil-rPH/strings.xml
@@ -1350,25 +1350,25 @@ Limitasyon: Maaaring hindi gumana ang paggamit ng back button sa toolbar"Moderno 2
Moderno 3
Makabagong 4
- Paganahin ang mga bilugan na sulok
- Bilugan ang mga sulok
- Parihaba ang mga sulok
+ Huwag paganahin ang bilog na mga sulok
+ Parihaba ang mga sulok
+ Bilugan ang mga sulok
Paganahin ang pag-resize gamit ang double-tap at pinch
"Ang pagkilos ng double-tap at pinch upang baguhin ang laki ay pinagana
• Double tap upang dagdagan ang laki ng \"miniplayer\"
• Double tap muli upang ibalik ang orihinal na laki"
Hindi pinagana ang pagkilos ng double-tap at pag-resize gamit ang pinch
- Paganahin ang drag and drop
- "Ang drag and drop ay pinagana
+ Huwag paganahin ang pagkaladkad at paghulog
+ Hindi pinagana ang drag and drop
+ "Ang drag and drop ay pinagana
Ang \"miniplayer\" ay maaaring i-drag sa anumang sulok ng screen"
- Hindi pinagana ang drag and drop
- Paganahin ang pahalang na drag gesture
- "Ang horizontal drag gesture ay pinagana
+ Huwag paganahin ang pahalang na kilos ng pagkaladkad
+ Hindi pinagana ang pahalang na drag gesture
+ "Ang horizontal drag gesture ay pinagana
Ang \"miniplayer\" ay maaaring i-drag palabas ng screen sa kaliwa o kanan"
- Hindi pinagana ang pahalang na drag gesture
Itago ang mga button ng overlay
Nakatago ang mga button ng overlay
Ipinapakita ang mga button ng overlay
diff --git a/patches/src/main/resources/addresources/values-fr-rFR/strings.xml b/patches/src/main/resources/addresources/values-fr-rFR/strings.xml
index 615694fad..33b0a7e43 100644
--- a/patches/src/main/resources/addresources/values-fr-rFR/strings.xml
+++ b/patches/src/main/resources/addresources/values-fr-rFR/strings.xml
@@ -1353,25 +1353,25 @@ Limitation : Il se peut que le bouton Retour dans la barre d'outils ne fonction
Moderne 2
Moderne 3
Moderne 4
- Activer les coins arrondis
- Les coins sont arrondis
- Les coins sont carrés
+ Désactiver les coins arrondis
+ Les coins sont carrés
+ Les coins sont arrondis
Activer le double appui et Pincer pour redimensionner
"L'action de double appui et Pincer pour redimensionner sont activés
• Appuyez deux fois pour augmenter la taille du lecteur réduit
• Appuyez deux fois à nouveau pour rétablir la taille d'origine"
Action de double appui et Pincer pour redimensionner sont désactivés
- Activer le glisser-déposer
- "Le glisser-déposer est activé
+ Désactiver le glisser-déposer
+ Le glisser-déposer est désactivé
+ "Le glisser-déposer est activé
Le lecteur réduit peut être déplacé vers n'importe quel coin de l'écran"
- Le glisser-déposer est désactivé
- Activer le geste de déplacement horizontal
- "Le geste de déplacement horizontal est activé
+ Désactiver le geste de glissement horizontal
+ Geste de déplacement horizontal désactivé
+ "Le geste de déplacement horizontal est activé
Le lecteur réduit peut être déplacé hors de l'écran, à gauche comme à droite"
- Geste de déplacement horizontal désactivé
Masquer les boutons en superposition
Les boutons en superposition sont masqués
Les boutons en superposition sont affichés
diff --git a/patches/src/main/resources/addresources/values-ga-rIE/strings.xml b/patches/src/main/resources/addresources/values-ga-rIE/strings.xml
index c78f9f608..a0acceb34 100644
--- a/patches/src/main/resources/addresources/values-ga-rIE/strings.xml
+++ b/patches/src/main/resources/addresources/values-ga-rIE/strings.xml
@@ -1352,25 +1352,25 @@ Teorainn: Seans nach n-oibreoidh úsáid a bhaint as an gcnaipe cúil ar an mbar
Nua-Aimseartha 2
Nua-aimseartha 3
Nua-aimseartha 4
- Cumasaigh coirnéil chothromú
- Déantar coirnéil a shlánú
- Tá coirnéil cearnach
+ Díchumasaigh coirnéil chruinn
+ Tá coirnéil cearnach
+ Déantar coirnéil a shlánú
Cumasaigh sconna dúbailte agus pinch chun méid a athrú
"Gníomh tap dúbailte agus pinch le méid a athrú cumasaithe
• Tap dúbailte chun méid an mhion-imreora a mhéadú
• Tap dúbailte arís chun an méid bunaidh a athchóiriú"
Díchumasaíodh gníomh tapáil faoi dhó agus pinch chun méid a athrú
- Cumasaigh tarraing agus scaoil
- "Tá drag-and-drop cumasaithe
+ Díchumasaigh tarraing agus scaoil
+ Tá tarraing agus scaoil díchumasaithe
+ "Tá drag-and-drop cumasaithe
Is féidir an mhion-imreoir a tharraingt go haon chúinne den scáileán"
- Tá tarraing agus scaoil díchumasaithe
- Cumasaigh gotha tarraingthe cothrománach
- "Cumasaithe geastú tarraingthe cothrománach
+ Díchumasaigh gotha tarraingthe cothrománach
+ Díchumasaíodh an comhartha tarraingthe cothrománach
+ "Cumasaithe geastú tarraingthe cothrománach
Is féidir an mhion-imreoir a tharraingt as an scáileán ar chlé nó ar dheis"
- Díchumasaíodh an comhartha tarraingthe cothrománach
Folaigh cnaipí forleathana
Tá cnaipí forleathana i bhfolach
Taispeántar cnaipí forleathana
diff --git a/patches/src/main/resources/addresources/values-hu-rHU/strings.xml b/patches/src/main/resources/addresources/values-hu-rHU/strings.xml
index 45874de17..c82619edb 100644
--- a/patches/src/main/resources/addresources/values-hu-rHU/strings.xml
+++ b/patches/src/main/resources/addresources/values-hu-rHU/strings.xml
@@ -1349,25 +1349,25 @@ Ha később kikapcsolja, akkor ajánlott az alkalmazás adatait törölni, hogy
Modern 2
Modern 3
Modern 4
- Lekerekített sarkok engedélyezése
- A sarkok lekerekítettek
- A sarkok négyzet alakúak
+ Lekerekített sarkok letiltása
+ A sarkok négyzet alakúak
+ A sarkok lekerekítettek
Az átméretezéshez engedélyezze a dupla koppintást és az összehúzást
"A dupla koppintásos művelet és a csippentés a méretezéshez engedélyezve van
• Dupla koppintás a miniatűr képernyő méretének növeléséhez
• Dupla koppintás az eredeti méret visszaállításához"
A dupla koppintás művelet és az átméretezéshez csípés le van tiltva
- Fogd és vidd engedélyezése
- "A húzás és elengedés engedélyezve van
+ Fogd és vidd letiltása
+ A Fogd és vidd letiltva
+ "A húzás és elengedés engedélyezve van
A miniatűr képernyőt a képernyő bármely sarkába húzhatja"
- A Fogd és vidd letiltva
- Vízszintes húzási kézmozdulat engedélyezése
- "A vízszintes húzás gesztus engedélyezve van
+ Vízszintes húzás letiltása
+ A vízszintes húzómozdulat letiltva
+ "A vízszintes húzás gesztus engedélyezve van
A miniatűr képernyőt a képernyő bal vagy jobb szélére húzhatja"
- A vízszintes húzómozdulat letiltva
Fedőgomb elrejtése
A fedőgombok rejtve vannak
A fedőgombok láthatók
diff --git a/patches/src/main/resources/addresources/values-hy-rAM/strings.xml b/patches/src/main/resources/addresources/values-hy-rAM/strings.xml
index 2382d0a2c..4f37af712 100644
--- a/patches/src/main/resources/addresources/values-hy-rAM/strings.xml
+++ b/patches/src/main/resources/addresources/values-hy-rAM/strings.xml
@@ -1353,25 +1353,25 @@ Seekbar thumbnails-ները կօգտագործեն նույն որակը, ինչ
Ժամանակակից 2
Ժամանակակից 3
Ժամանակակից 4
- Աктиվացնել կլորացված անկյունները
- Անկյունները կլորացված են
- Անկյունները քառակուսի են
+ Անջատել կլորացված անկյունները
+ Անկյունները քառակուսի են
+ Անկյունները կլորացված են
Աктиվացնել կրկնակի սեղմելը և մատների շարժումը չափը փոխելու համար
"Երկու անգամ սեղմելու գործողությունը և չափսի փոփոխման համար սեղմելը միացված են
• Երկու անգամ սեղմել՝ մեծացնելու mini-player-ի չափսը
• Երկու անգամ սեղմել կրկին՝ վերականգնելու սկզբնական չափսը"
Կրկնակի սեղմելու գործողությունը և մատների շարժումը չափը փոխելու համար անջատված են
- Աктиվացնել քարշել և թողնել
- "Գրավել և թողնելը միացված է
+ Անջատել քաշել և գցելը
+ Քարշել և թողնել անջատված է
+ "Գրավել և թողնելը միացված է
Mini-player-ը կարող է գրավվել էկրանի ցանկացած անկյուն։"
- Քարշել և թողնել անջատված է
- Աктиվացնել հորիզոնական քարշելու ժեստը
- "Հորիզոնական գրավելու ժեստը միացված է
+ Անջատել հորիզոնական քաշելու ժեստը
+ Հորիզոնական քարշելու ժեստը անջատված է
+ "Հորիզոնական գրավելու ժեստը միացված է
Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի ձախ կամ աջ։"
- Հորիզոնական քարշելու ժեստը անջատված է
Թաքցնել վերադիր կոճակները
Վերադիր կոճակները թաքցված են
Վերադիր կոճակները ցուցադրվում են
diff --git a/patches/src/main/resources/addresources/values-in-rID/strings.xml b/patches/src/main/resources/addresources/values-in-rID/strings.xml
index 05c455406..3ea45f7e9 100644
--- a/patches/src/main/resources/addresources/values-in-rID/strings.xml
+++ b/patches/src/main/resources/addresources/values-in-rID/strings.xml
@@ -1351,25 +1351,25 @@ Batasan: Menggunakan tombol kembali pada toolbar mungkin tidak berfungsi"Modern 2
Modern 3
Modern 4
- Aktifkan sudut membulat
- Sudutnya membulat
- Sudutnya persegi
+ Nonaktifkan sudut membulat
+ Sudutnya persegi
+ Sudutnya membulat
Aktifkan ketuk dua kali dan cubit untuk mengubah ukuran
"Tindakan ketuk dua kali dan cubit untuk mengubah ukuran diaktifkan
• Ketuk dua kali untuk memperbesar ukuran miniplayer
• Ketuk dua kali lagi untuk mengembalikan ukuran asli"
Tindakan ketuk dua kali dan cubit untuk mengubah ukuran dinonaktifkan
- Aktifkan seret dan lepas
- "Seret dan lepas diaktifkan
+ Nonaktifkan seret dan lepas
+ Seret dan lepas dinonaktifkan
+ "Seret dan lepas diaktifkan
Miniplayer dapat diseret ke sudut layar mana pun"
- Seret dan lepas dinonaktifkan
- Aktifkan gerakan seret horizontal
- "Gerakan seret horizontal diaktifkan
+ Nonaktifkan gerakan seret horizontal
+ Gerakan seret horizontal dinonaktifkan
+ "Gerakan seret horizontal diaktifkan
Miniplayer dapat diseret keluar layar ke kiri atau kanan"
- Gerakan seret horizontal dinonaktifkan
Sembunyikan tombol hamparan
Tombol hamparan disembunyikan
Tombol hamparan ditampilkan
diff --git a/patches/src/main/resources/addresources/values-it-rIT/strings.xml b/patches/src/main/resources/addresources/values-it-rIT/strings.xml
index e3fc6a7e2..48ee5cd1b 100644
--- a/patches/src/main/resources/addresources/values-it-rIT/strings.xml
+++ b/patches/src/main/resources/addresources/values-it-rIT/strings.xml
@@ -1351,25 +1351,25 @@ Limitazione: l'utilizzo del pulsante Indietro sulla barra degli strumenti potreb
Moderno 2
Moderno 3
Moderno 4
- Abilita angoli arrotondati
- Gli angoli sono arrotondati
- Gli angoli sono quadrati
+ Disabilita angoli arrotondati
+ Gli angoli sono quadrati
+ Gli angoli sono arrotondati
Abilita il doppio tocco e il pizzico per ridimensionare
"I gesti Doppio Tocco e Pizzico per ridimensionare sono abilitati
• Tocca due volte per aumentare la dimensione del riproduttore minimizzato
• Tocca di nuovo due volte per ripristinare le dimensioni originali"
L\'azione a doppio tocco e il pizzico da ridimensionare è disabilitato
- Abilita drag and drop
- "Il gesto Trascina e Rilascia è attivato
+ Disabilita trascinamento
+ Trascinare e rilasciare è disabilitato
+ "Il gesto Trascina e Rilascia è attivato
Il riproduttore minimizzato può essere trascinato in qualsiasi angolo dello schermo"
- Trascinare e rilasciare è disabilitato
- Abilita il gesto di trascinamento orizzontale
- "Il gesto Trascina Orizzontalmente è abilitato
+ Disabilita gesto di trascinamento orizzontale
+ Gesto di trascinamento orizzontale disabilitato
+ "Il gesto Trascina Orizzontalmente è abilitato
Il riproduttore minimizzato può essere trascinato fuori dallo schermo a sinistra o a destra"
- Gesto di trascinamento orizzontale disabilitato
Nascondi i pulsanti di overlay
I pulsanti di overlay sono nascosti
I pulsanti di overlay sono visualizzati
diff --git a/patches/src/main/resources/addresources/values-iw-rIL/strings.xml b/patches/src/main/resources/addresources/values-iw-rIL/strings.xml
index bb642f55c..3125fd399 100644
--- a/patches/src/main/resources/addresources/values-iw-rIL/strings.xml
+++ b/patches/src/main/resources/addresources/values-iw-rIL/strings.xml
@@ -1354,25 +1354,25 @@ Second \"item\" text"
מודרני 2
מודרני 3
מודרני 4
- הפעל פינות מעוגלות
- הפינות מעוגלות
- הפינות מרובעות
+ בטל פינות מעוגלות
+ הפינות מרובעות
+ הפינות מעוגלות
הפעל הקשה כפולה וצביטה לשינוי גודל
"פעולת הקשה כפולה וצביטה לשינוי גודל מופעלת
• הקש פעמיים כדי להגדיל את גודל המיני-נגן
• הקש פעמיים שוב כדי לשחזר את הגודל המקורי"
פעולת הקשה כפולה וצביטה לשינוי גודל מושבתת
- הפעל גרירה ושחרור
- "גרירה ושחרור מופעלים
+ בטל גרירה ושחרור
+ גרירה ושחרור מושבת
+ "גרירה ושחרור מופעלים
מיני-נגן ניתן לגרירה לעבר כל פינה של המסך"
- גרירה ושחרור מושבת
- הפעל מחוות גרירה אופקית
- "מחוות גרירה אופקית מופעלת
+ בטל מחוות גרירה אופקית
+ מחוות גרירה אופקית מושבתת
+ "מחוות גרירה אופקית מופעלת
מיני-נגן ניתן לגרירה מחוץ למסך לשמאל או לימין"
- מחוות גרירה אופקית מושבתת
הסתר לחצני שכבת-על
לחצני שכבת-על מוסתרים
לחצני שכבת-על מוצגים
diff --git a/patches/src/main/resources/addresources/values-ja-rJP/strings.xml b/patches/src/main/resources/addresources/values-ja-rJP/strings.xml
index 8d0aac857..227bee863 100644
--- a/patches/src/main/resources/addresources/values-ja-rJP/strings.xml
+++ b/patches/src/main/resources/addresources/values-ja-rJP/strings.xml
@@ -1355,25 +1355,25 @@ Automotive レイアウト
モダン 2
モダン 3
モダン 4
- 丸角を有効化
- ミニプレーヤーの角は丸角です
- ミニプレーヤーの角は直角です
+ 丸角を無効化
+ ミニプレーヤーの角は直角です
+ ミニプレーヤーの角は丸角です
ダブルタップとピンチによるサイズ変更を有効化
"ダブルタップとピンチによるサイズ変更は有効です
• ダブルタップすると、ミニプレーヤーのサイズが大きくなる
• もう一度ダブルタップすると、元のサイズに戻る"
ダブルタップとピンチによるサイズ変更は無効です
- ドラッグ&ドロップを有効化
- "ドラッグ&ドロップは有効です
+ ドラッグ&ドロップを無効化
+ ドラッグ&ドロップは無効です
+ "ドラッグ&ドロップは有効です
ミニプレーヤーを画面の四隅に移動できます"
- ドラッグ&ドロップは無効です
- 横方向ドラッグ ジェスチャーを有効化
- "横方向ドラッグ ジェスチャーは有効です
+ 横方向ドラッグ ジェスチャーを無効化
+ 横方向ドラッグ ジェスチャーは無効です
+ "横方向ドラッグ ジェスチャーは有効です
ミニプレーヤーを画面の左端または右端までドラッグすると最小化されます"
- 横方向ドラッグ ジェスチャーは無効です
オーバーレイ ボタンを非表示
オーバーレイ ボタンは表示されません
オーバーレイ ボタンは表示されます
diff --git a/patches/src/main/resources/addresources/values-ko-rKR/strings.xml b/patches/src/main/resources/addresources/values-ko-rKR/strings.xml
index 4f47b3da7..fd15e110b 100644
--- a/patches/src/main/resources/addresources/values-ko-rKR/strings.xml
+++ b/patches/src/main/resources/addresources/values-ko-rKR/strings.xml
@@ -1354,25 +1354,25 @@ YouTube Premium 사용자라면 이 설정은 필요하지 않을 수 있습니
모던 스타일 2
모던 스타일 3
모던 스타일 4
- 둥근 모서리 활성화하기
- 모서리를 둥글게 활성화합니다
- 모서리를 각지게 활성화합니다
+ 둥근 모서리 비활성화하기
+ 모서리를 각지게 활성화합니다
+ 모서리를 둥글게 활성화합니다
\'두 번 탭하기\' 및 \'핀치하여 크기 조정\' 활성화하기
"'두 번 탭하기 동작' 및 '핀치하여 크기 조정'을 활성화합니다
• 두 번 탭하여 미니 플레이어 크기를 늘릴 수 있습니다
• 다시 두 번 탭하면 원래 크기로 복원됩니다"
\'두 번 탭하기 동작\' 및 \'핀치하여 크기 조정\'을 비활성화합니다
- 드래그 & 드롭 활성화하기
- "드래그 & 드롭을 활성화합니다
+ 드래그 & 드롭 비활성화하기
+ 드래그 & 드롭을 비활성화합니다
+ "드래그 & 드롭을 활성화합니다
• 미니 플레이어를 화면 구석으로 드래그 할 수 있습니다"
- 드래그 & 드롭을 비활성화합니다
- 수평 드래그 제스처 활성화하기
- "수평 드래그 제스처를 활성화합니다
+ 수평 드래그 제스처 비활성화하기
+ 수평 드래그 제스처를 비활성화합니다
+ "수평 드래그 제스처를 활성화합니다
• 미니 플레이어 절반 정도를 왼쪽 밖 또는 오른쪽 밖으로 드래그하여 숨길 수 있습니다"
- 수평 드래그 제스처를 비활성화합니다
오버레이 버튼 숨기기
오버레이 버튼이 숨겨집니다.
오버레이 버튼이 표시됩니다.
diff --git a/patches/src/main/resources/addresources/values-lt-rLT/strings.xml b/patches/src/main/resources/addresources/values-lt-rLT/strings.xml
index 05b0034db..0740bbe95 100644
--- a/patches/src/main/resources/addresources/values-lt-rLT/strings.xml
+++ b/patches/src/main/resources/addresources/values-lt-rLT/strings.xml
@@ -1353,25 +1353,25 @@ Ribojimas: įrankių juostoje esantis atgal mygtukas gali neveikti."
Modernus 2
Modernus 3
Modernus 4
- Įgalinti suapvalintus kampus
- Kampai yra suapvalinti
- Kampai yra kvadratiniai
+ Išjungti suapvalintus kampus
+ Kampai yra kvadratiniai
+ Kampai yra suapvalinti
Įgalinti dvigubą bakstelėjimą ir suspaudimą, kad būtų galima keisti dydį
"Dvigubas bakstelėjimas ir sugriebimas, kad pakeistumėte dydį, įjungtas
• Dvigubai bakstelėkite, kad padidintumėte \"miniplayer\" dydį
• Dar kartą dvigubai bakstelėkite, kad atkurtumėte pradinį dydį"
Dvigubo bakstelėjimo veiksmas ir suspaudimas, kad būtų galima keisti dydį, yra išjungtas
- Įgalinti vilkimą ir numetimą
- "„Drag and drop“ įjungtas
+ Išjungti vilkimą ir numetimą
+ Vilkimas ir numetimas yra išjungtas
+ "„Drag and drop“ įjungtas
\"Miniplayer\" galima perkelti į bet kurį ekrano kampą"
- Vilkimas ir numetimas yra išjungtas
- Įgalinti horizontalaus vilkimo gestą
- "Horizontalus vilkimo gestas įjungtas
+ Išjungti horizontalųjį vilkimo gestą
+ Horizontalaus vilkimo gestas išjungtas
+ "Horizontalus vilkimo gestas įjungtas
\"Miniplayer\" galima vilkti nuo ekrano į kairę arba dešinę"
- Horizontalaus vilkimo gestas išjungtas
Slėpti perdangos mygtukus
Perdangos mygtukai paslėpti
Perdangos mygtukai rodomi
diff --git a/patches/src/main/resources/addresources/values-lv-rLV/strings.xml b/patches/src/main/resources/addresources/values-lv-rLV/strings.xml
index 50eaa6daa..1b311ba76 100644
--- a/patches/src/main/resources/addresources/values-lv-rLV/strings.xml
+++ b/patches/src/main/resources/addresources/values-lv-rLV/strings.xml
@@ -1353,25 +1353,25 @@ Ierobežojums: Atpakaļpoga rīkjoslā var nedarboties"
Moderns 2
Moderns 3
Moderns 4
- Iespējot noapaļotus stūrus
- Stūri ir noapaļoti
- Stūri ir kvadrātveida
+ Atspējot noapaļotos stūrus
+ Stūri ir kvadrātveida
+ Stūri ir noapaļoti
Iespējot divkāršu pieskaršanos un saspiešanu, lai mainītu izmēru
"Dubultpieskāriena darbība un saspiešana, lai mainītu izmēru, ir iespējota
• Dubultpieskarieties, lai palielinātu miniatskaņotāja izmēru
• Atkārtojiet dubultpieskārienu, lai atjaunotu sākotnējo izmēru"
Divkāršas pieskaršanās darbība un saspiešana, lai mainītu izmēru, ir atspējota
- Iespējot velci un nometiet
- "Pārvilkšana un nomešana ir iespējota
+ Atspējot vilkšanu un nomešanu
+ Velciet un nometiet ir atspējots
+ "Pārvilkšana un nomešana ir iespējota
Miniatskaņotāju var pārvilkt uz jebkuru ekrāna stūri"
- Velciet un nometiet ir atspējots
- Iespējot horizontālu velci
- "Horizontālas pārvilkšanas žests ir iespējots
+ Atspējot horizontālās vilkšanas žestu
+ Horizontāls velci ir atspējots
+ "Horizontālas pārvilkšanas žests ir iespējots
Miniatskaņotāju var pārvilkt no ekrāna uz kreiso vai labo pusi"
- Horizontāls velci ir atspējots
Paslēpt pārklājuma pogas
Pārklājuma pogas ir paslēptas
Pārklājuma pogas ir redzamas
diff --git a/patches/src/main/resources/addresources/values-nl-rNL/strings.xml b/patches/src/main/resources/addresources/values-nl-rNL/strings.xml
index 366f561b6..ae7adbe7b 100644
--- a/patches/src/main/resources/addresources/values-nl-rNL/strings.xml
+++ b/patches/src/main/resources/addresources/values-nl-rNL/strings.xml
@@ -1350,25 +1350,25 @@ Als het later wordt uitgeschakeld, wordt aanbevolen om de app-gegevens te wissen
Modern 2
Modern 3
Modern 4
- Schakel afgeronde hoeken in
- Hoeken zijn afgerond
- Hoeken zijn vierkant
+ Afgeronde hoeken uitschakelen
+ Hoeken zijn vierkant
+ Hoeken zijn afgerond
Schakel dubbeltikken en knijpen om te verkleinen in
"Dubbeltikactie en knijpen om te verkleinen is ingeschakeld
• Dubbeltik om de miniplayer-grootte te vergroten
• Dubbeltik opnieuw om de oorspronkelijke grootte te herstellen"
Dubbeltikken en knijpen om te verkleinen is uitgeschakeld
- Schakel slepen en neerzetten in
- "Sleep-en-neerzetten is ingeschakeld
+ Slepen en neerzetten uitschakelen
+ Slepen en neerzetten is uitgeschakeld
+ "Sleep-en-neerzetten is ingeschakeld
De miniplayer kan naar elke hoek van het scherm worden gesleept"
- Slepen en neerzetten is uitgeschakeld
- Schakel horizontaal sleepgebaar in
- "Horizontale sleepbeweging ingeschakeld
+ Horizontale sleepbeweging uitschakelen
+ Horizontaal sleepgebaar uitgeschakeld
+ "Horizontale sleepbeweging ingeschakeld
De miniplayer kan naar links of rechts van het scherm worden gesleept"
- Horizontaal sleepgebaar uitgeschakeld
Overlayknoppen verbergen
Overlayknoppen zijn verborgen
Overlayknoppen worden weergegeven
diff --git a/patches/src/main/resources/addresources/values-pl-rPL/strings.xml b/patches/src/main/resources/addresources/values-pl-rPL/strings.xml
index 69509f974..6cc0aa06e 100644
--- a/patches/src/main/resources/addresources/values-pl-rPL/strings.xml
+++ b/patches/src/main/resources/addresources/values-pl-rPL/strings.xml
@@ -1348,25 +1348,25 @@ Ograniczenie: użycie przycisku wstecz na pasku narzędzi może nie działać"
Nowoczesny 2
Nowoczesny 3
Nowoczesny 4
- Zaokrąglone narożniki
- Narożniki są zaokrąglone
- Narożniki są kwadratowe
+ Wyłącz zaokrąglone rogi
+ Narożniki są kwadratowe
+ Narożniki są zaokrąglone
Podwójne stuknięcie i uszczypnięcie, aby zmienić rozmiar
"Akcja dwukrotnego dotknięcia i gest szczypania w celu zmiany rozmiaru są włączone
• Dwukrotnie naciśnij, aby powiększyć rozmiar odtwarzacza
• Ponownie dotknij dwukrotnie, aby przywrócić oryginalny rozmiar"
Wyłączone
- Gest przeciągnięcia i upuszczenia
- "Przeciąganie i upuszczanie jest włączone
+ Wyłącz przeciąganie i upuszczanie
+ Gest przeciągnięcia i upuszczenia wyłączony
+ "Przeciąganie i upuszczanie jest włączone
Odtwarzacz można przeciągnąć do dowolnego rogu ekranu"
- Gest przeciągnięcia i upuszczenia wyłączony
- Gest przeciągania w poziomie
- "Włączony gest przeciągania w poziomie
+ Wyłącz gest przeciągania w poziomie
+ Gest przeciągania w poziomie jest wyłączony
+ "Włączony gest przeciągania w poziomie
Odtwarzacz można przeciągnąć poza ekran w lewo lub w prawo"
- Gest przeciągania w poziomie jest wyłączony
Ukryj przyciski nakładki
Przyciski nakładki są ukryte
Przyciski nakładki są widoczne
diff --git a/patches/src/main/resources/addresources/values-pt-rBR/strings.xml b/patches/src/main/resources/addresources/values-pt-rBR/strings.xml
index eb66de3d0..5e2d96d1b 100644
--- a/patches/src/main/resources/addresources/values-pt-rBR/strings.xml
+++ b/patches/src/main/resources/addresources/values-pt-rBR/strings.xml
@@ -1349,25 +1349,25 @@ Limitação: usar o botão Voltar na barra de ferramentas pode não funcionar"
Moderno 2
Moderno 3
Moderno 4
- Ativar cantos arredondados
- Os cantos são arredondados
- Os cantos são quadrados
+ Desativar cantos arredondados
+ Os cantos são quadrados
+ Os cantos são arredondados
Ativar toque duplo e pinçar para redimensionar
"A ação de toque duplo e beliscar para redimensionar está habilitada
• Toque duas vezes para aumentar o tamanho do miniplayer
• Toque duas vezes novamente para restaurar o tamanho original"
Toque duplo e pinçar para redimensionar está desativado
- Ativar arrastar e soltar
- "Arrastar e soltar está habilitado
+ Desativar arrastar e soltar
+ Arrastar e soltar está desativado
+ "Arrastar e soltar está habilitado
O miniplayer pode ser arrastado para qualquer canto da tela"
- Arrastar e soltar está desativado
- Ativar o gesto de arrastar horizontal
- "O gesto de arrastar horizontalmente está habilitado
+ Desativar gesto de arrastar horizontal
+ Gesto de arrastar horizontal desativado
+ "O gesto de arrastar horizontalmente está habilitado
O miniplayer pode ser arrastado para fora da tela para a esquerda ou direita"
- Gesto de arrastar horizontal desativado
Ocultar botões de sobreposição
Botões de sobreposição estão ocultos
Botões de sobreposição são mostrados
diff --git a/patches/src/main/resources/addresources/values-pt-rPT/strings.xml b/patches/src/main/resources/addresources/values-pt-rPT/strings.xml
index b4ea5422d..5b0293be1 100644
--- a/patches/src/main/resources/addresources/values-pt-rPT/strings.xml
+++ b/patches/src/main/resources/addresources/values-pt-rPT/strings.xml
@@ -1352,25 +1352,25 @@ Limitação: Usar o botão voltar na barra de ferramentas pode não funcionar"
Moderno 2
Moderno 3
Moderno 4
- Ativar cantos arredondados
- Bordas são arredondadas
- Os cantos estão quadrados
+ Desativar cantos arredondados
+ Os cantos estão quadrados
+ Bordas são arredondadas
Ativar toque duplo e pinch para redimensionar
"Hành động chạm hai lần và thu phóng bằng cử chỉ được bật
• Chạm hai lần để tăng kích thước miniplayer
• Chạm hai lần nữa để khôi phục kích thước ban đầu"
Ação de toque duplo e pinçar para redimensionar está desativado
- Ativar arrastar e soltar
- "Kéo và thả được bật
+ Desativar arrastar e soltar
+ Arrastar e soltar está desativado
+ "Kéo và thả được bật
Miniplayer có thể được kéo đến bất kỳ góc nào của màn hình"
- Arrastar e soltar está desativado
- Ativar o gesto de arrastar horizontal
- "Cử chỉ kéo ngang được bật
+ Desativar gesto de arrastar horizontal
+ Gestos de arrastar horizontais desativados
+ "Cử chỉ kéo ngang được bật
Miniplayer có thể được kéo ra khỏi màn hình sang trái hoặc phải"
- Gestos de arrastar horizontais desativados
Ocultar botões de sobreposição
Os botões de sobreposição estão ocultos
Os botões de sobreposição são mostrados
diff --git a/patches/src/main/resources/addresources/values-ro-rRO/strings.xml b/patches/src/main/resources/addresources/values-ro-rRO/strings.xml
index d792de3ad..82ae2935a 100644
--- a/patches/src/main/resources/addresources/values-ro-rRO/strings.xml
+++ b/patches/src/main/resources/addresources/values-ro-rRO/strings.xml
@@ -1349,25 +1349,25 @@ Limitare: Utilizarea butonului Înapoi de pe bara de instrumente poate să nu fu
Modern 2
Modern 3
Modern 4
- Activează colțurile rotunjite
- Colţurile sunt rotunjite
- Colţurile sunt pătrate
+ Dezactivează colțurile rotunjite
+ Colţurile sunt pătrate
+ Colţurile sunt rotunjite
Activează dublu-click și prinde pentru a redimensiona
"Acțiunea de dublu tap și pinch to resize este activată
• Dublu atingeți pentru a mări dimensiunea miniplayer-ului
• Atingeți din nou de două ori pentru a restabili dimensiunea inițială"
Atingeți de două ori și redimensionarea este dezactivată
- Activează drag and drop
- "Drag and drop este activat
+ Dezactivează glisarea și plasarea
+ Drag and drop este dezactivat
+ "Drag and drop este activat
Miniplayerul poate fi tras în orice colț al ecranului"
- Drag and drop este dezactivat
- Activează Gestul de tragere orizontal
- "Gestul de glisare orizontală este activat
+ Dezactivează gestul de glisare orizontală
+ Gest de tragere orizontal dezactivat
+ "Gestul de glisare orizontală este activat
Miniplayerul poate fi tras pe ecran spre stânga sau spre dreapta"
- Gest de tragere orizontal dezactivat
Ascunde butoanele suprapuse
Butoanele suprapuse sunt ascunse
Butoanele suprapuse sunt afișate
diff --git a/patches/src/main/resources/addresources/values-ru-rRU/strings.xml b/patches/src/main/resources/addresources/values-ru-rRU/strings.xml
index 44d619a92..c2a9b2460 100644
--- a/patches/src/main/resources/addresources/values-ru-rRU/strings.xml
+++ b/patches/src/main/resources/addresources/values-ru-rRU/strings.xml
@@ -1354,25 +1354,25 @@ Second \"item\" text"
Современный 2
Современный 3
Современный 4
- Включить закругление углов
- Углы миниплеера закруглены
- Углы миниплеера квадратны
+ Отключить закругление углов
+ Углы миниплеера квадратны
+ Углы миниплеера закруглены
Включить двойное нажатие и изменение размера щипком
"Двойное нажатие и изменение размера щипком включены
• Двойное нажатие для увеличения размера миниплеера
• Двойное нажатие еще раз для восстановления исходного размера"
Двойное нажатие и изменение размера щипком отключены
- Включить перетаскивание
- "Перетаскивание включено
+ Отключить перетаскивание
+ Перетаскивание отключено
+ "Перетаскивание включено
Миниплеер можно перетащить в любой угол экрана"
- Перетаскивание отключено
- Включить жест горизонтального перетаскивания
- "Жест горизонтального перетаскивания включен
+ Отключить жест горизонтального перетаскивания
+ Жест горизонтального перетаскивания отключен
+ "Жест горизонтального перетаскивания включен
Миниплеер можно перетаскивать за пределы экрана влево или вправо"
- Жест горизонтального перетаскивания отключен
Скрыть кнопки миниплеера
Кнопки миниплеера скрыты
Кнопки миниплеера показаны
diff --git a/patches/src/main/resources/addresources/values-sk-rSK/strings.xml b/patches/src/main/resources/addresources/values-sk-rSK/strings.xml
index bd72b630e..0ba8360c8 100644
--- a/patches/src/main/resources/addresources/values-sk-rSK/strings.xml
+++ b/patches/src/main/resources/addresources/values-sk-rSK/strings.xml
@@ -1347,23 +1347,23 @@ Obmedzenie: Používanie tlačidla Späť na paneli s nástrojmi nemusí fungova
Moderné 2
Moderné 3
Moderné 4
- Povoliť zaoblené rohy
- Rohy sú zaoblené
- Rohy sú štvorcové
+ Zakázať zaoblené rohy
+ Rohy sú štvorcové
+ Rohy sú zaoblené
Povoliť dvojite klepnutie a štípanie na zmenu veľkosti
"Akcia dvojitého ťuknutia a zmenšenie prstami je povolená
• Dvojité ťuknutie na zväčšenie veľkosti miniprehrávača
• Dvojité ťuknutie znova na obnovenie pôvodnej veľkosti"
Funkcia dvojklépanie a štípanie na zmenu veľkosti je zakázaná
- Povoliť potiahnutie a pustenie
- "Pretiahnutie a"
- Potiahnutie a pustenie je zakázané
- Povoliť horizontálne posunutie
- "Gesto horizontálneho potiahnutia je povolené
+ Zakázať presúvanie myšou
+ Potiahnutie a pustenie je zakázané
+ "Pretiahnutie a"
+ Zakázať horizontálne gesto potiahnutia
+ Zakázané je horizontálne posunutie
+ "Gesto horizontálneho potiahnutia je povolené
Miniprehrávač sa dá potiahnuť mimo obrazovky doľava alebo doprava"
- Zakázané je horizontálne posunutie
Skryť tlačidlá prekrytia
Tlačidlá prekrytia sú skryté
Zobrazujú sa tlačidlá prekrytia
diff --git a/patches/src/main/resources/addresources/values-sl-rSI/strings.xml b/patches/src/main/resources/addresources/values-sl-rSI/strings.xml
index a952f01dd..babf8d99b 100644
--- a/patches/src/main/resources/addresources/values-sl-rSI/strings.xml
+++ b/patches/src/main/resources/addresources/values-sl-rSI/strings.xml
@@ -1351,25 +1351,25 @@ Omejitev: uporaba gumba za nazaj v orodni vrstici morda ne bo delovala"
Sodobno 2
Sodobno 3
Sodobno 4
- Omogoči zaobljene robove
- Robovi so zaobljeni
- Robovi so kvadratni
+ Onemogoči zaobljene vogale
+ Robovi so kvadratni
+ Robovi so zaobljeni
Omogoči dvojni dotik in stiskanje za spreminjanje velikosti
"Dvojni dotik in ščipanje za spremembo velikosti sta omogočena
• Dvakrat tapnite, da povečate velikost minipredvajalnika
• Znova dvakrat tapnite, da obnovite prvotno velikost"
Dvojni dotik in stiskanje za spreminjanje velikosti je onemogočeno
- Omogoči povleci in spusti
- "Povleci in spusti so omogočeni
+ Onemogoči vlečenje in spuščanje
+ Povleci in spusti je onemogočeno
+ "Povleci in spusti so omogočeni
Minipredvajalnik lahko povlečete v kateri koli kot zaslona"
- Povleci in spusti je onemogočeno
- Omogoči vodoravno kretnjo vlečenja
- "Omogočena je kretnja vodoravnega vlečenja
+ Onemogoči vodoravno potezo vlečenja
+ Vodoravna kretnja vlečenja je onemogočena
+ "Omogočena je kretnja vodoravnega vlečenja
Minipredvajalnik lahko povlečete z zaslona na levo ali desno"
- Vodoravna kretnja vlečenja je onemogočena
Skrij prekrivne gumbe
Prekrivni gumbi so skriti
Prekrivni gumbi so prikazani
diff --git a/patches/src/main/resources/addresources/values-sq-rAL/strings.xml b/patches/src/main/resources/addresources/values-sq-rAL/strings.xml
index 3869538ca..63d72dc34 100644
--- a/patches/src/main/resources/addresources/values-sq-rAL/strings.xml
+++ b/patches/src/main/resources/addresources/values-sq-rAL/strings.xml
@@ -1350,25 +1350,25 @@ Kufizimi: Përdorimi i butonit të kthimit në shiritin e veglave mund të mos f
Modern 2
Modern 3
Modern 4
- Aktivizo qoshet e rrumbullakosura
- Qoshet janë të rrumbullakosura
- Qoshet janë katrore
+ Çaktivizo qoshet e rrumbullakosura
+ Qoshet janë katrore
+ Qoshet janë të rrumbullakosura
Aktivizo dy-prekje dhe shtrëngim për të ridimensionuar
"Veprimi i dyfishtë shtypjeje dhe shtrëngimi për të ridimensionuar është aktivizuar
• Dyfishtë shtyp për të rritur madhësinë e miniplayer-it
• Dyfishtë shtyp përsëri për të rivendosur madhësinë origjinale"
Veprimi i dy-prekjeve dhe shtrëngimi për të ridimensionuar është i çaktivizuar
- Aktivizo tërheqjen dhe lëshimin
- "Tërheqja dhe lëshimi është aktivizuar
+ Çaktivizo zvarritjen dhe lëshimin
+ Tërheqja dhe lëshimi është e çaktivizuar
+ "Tërheqja dhe lëshimi është aktivizuar
Miniplayer mund të tërhiqet në çdo qoshe të ekranit"
- Tërheqja dhe lëshimi është e çaktivizuar
- Aktivizo gjestet e tërheqjes horizontale
- "Lëvizja horizontale me tërheqje është aktivizuar
+ Çaktivizo gjestin horizontal të zvarritjes
+ Gjestet e tërheqjes horizontale janë të çaktivizuara
+ "Lëvizja horizontale me tërheqje është aktivizuar
Miniplayer mund të tërhiqet jashtë ekranit në të majtë ose në të djathtë"
- Gjestet e tërheqjes horizontale janë të çaktivizuara
Fshih butonat e mbivendosjes
Butonat e mbivendosjes janë të fshehur
Butonat e mbivendosjes janë të dukshëm
diff --git a/patches/src/main/resources/addresources/values-sr-rCS/strings.xml b/patches/src/main/resources/addresources/values-sr-rCS/strings.xml
index 5497aa5ec..b608aed8c 100644
--- a/patches/src/main/resources/addresources/values-sr-rCS/strings.xml
+++ b/patches/src/main/resources/addresources/values-sr-rCS/strings.xml
@@ -1351,25 +1351,25 @@ Ograničenje: Korišćenje dugmeta „Nazad” na traci sa alatkama možda neće
Moderan 2
Moderan 3
Moderan 4
- Omogući zaobljene uglove
- Uglovi su zaobljeni
- Uglovi su kvadratni
+ Onemogući zaobljene ivice
+ Uglovi su kvadratni
+ Uglovi su zaobljeni
Omogući dvostruki dodir i štipanje za promenu veličine
"Radnja dvostrukog dodira i štipanja za promenu veličine je omogućena
• Dvaput dodirnite da biste povećali veličinu mini-plejera
• Dvaput dodirnite ponovo da biste vratili originalnu veličinu"
Radnja dvostrukog dodira i štipanja za promenu veličine je onemogućena
- Omogući prevlačenje i otpuštanje
- "Povlačenje i otpuštanje je omogućeno
+ Onemogući prevlačenje i ispuštanje
+ Prevlačenje i otpuštanje je onemogućeno
+ "Povlačenje i otpuštanje je omogućeno
Mini-plejer se može prevući u bilo koji ugao ekrana"
- Prevlačenje i otpuštanje je onemogućeno
- Omogući pokret horizontalnog prevlačenja
- "Pokret horizontalnog prevlačenja je omogućen
+ Onemogući horizontalni gest prevlačenja
+ Pokret horizontalnog prevlačenja je onemogućen
+ "Pokret horizontalnog prevlačenja je omogućen
Mini-plejer se može prevući sa ekrana ulevo ili udesno"
- Pokret horizontalnog prevlačenja je onemogućen
Sakrij dugmad preklopa
Dugmad preklopa su skrivena
Dugmad preklopa su prikazana
diff --git a/patches/src/main/resources/addresources/values-sr-rSP/strings.xml b/patches/src/main/resources/addresources/values-sr-rSP/strings.xml
index 4cec2e86d..635ab6076 100644
--- a/patches/src/main/resources/addresources/values-sr-rSP/strings.xml
+++ b/patches/src/main/resources/addresources/values-sr-rSP/strings.xml
@@ -1351,25 +1351,25 @@ Second \"item\" text"
Модеран 2
Модеран 3
Модеран 4
- Омогући заобљене углове
- Углови су заобљени
- Углови су квадратни
+ Онемогући заобљене углове
+ Углови су квадратни
+ Углови су заобљени
Омогући двоструки додир и штипање за промену величине
"Радња двоструког додира и штипања за промену величине је омогућена
• Двапут додирните да бисте повећали величину мини-плејера
• Двапут додирните поново да бисте вратили оригиналну величину"
Радња двоструког додира и штипања за промену величине су онемогућени
- Омогући превлачење и отпуштање
- "Превлачење и отпуштање је омогућено
+ Онемогући превлачење и отпуштање
+ Превлачење и отпуштање је онемогућено
+ "Превлачење и отпуштање је омогућено
Мини-плејер се може превући у било који угао екрана"
- Превлачење и отпуштање је онемогућено
- Омогући покрет хоризонталног превлачења
- "Покрет хоризонталног превлачења је омогућен
+ Онемогући хоризонтални покрет превлачења
+ Покрет хоризонталног превлачења је онемогућен
+ "Покрет хоризонталног превлачења је омогућен
Мини-плејер се може превући са екрана улево или удесно"
- Покрет хоризонталног превлачења је онемогућен
Сакриј дугмад преклопа
Дугмад преклопа су скривена
Дугмад преклопа су приказана
diff --git a/patches/src/main/resources/addresources/values-sv-rSE/strings.xml b/patches/src/main/resources/addresources/values-sv-rSE/strings.xml
index 4185d9a1b..1e982b5a3 100644
--- a/patches/src/main/resources/addresources/values-sv-rSE/strings.xml
+++ b/patches/src/main/resources/addresources/values-sv-rSE/strings.xml
@@ -1351,25 +1351,25 @@ Begränsning: Bakåtknappen i verktygsfältet kanske inte fungerar"
Modern 2
Modern 3
Modern 4
- Aktivera rundade hörn
- Hörnen är rundade
- Hörnen är fyrkantiga
+ Inaktivera rundade hörn
+ Hörnen är fyrkantiga
+ Hörnen är rundade
Aktivera dubbeltryck och nyp för att ändra storlek
"Dubbeltrycksåtgärd och nyp för att ändra storlek är aktiverat
• Tryck snabbt två gånger för att öka minispelarens storlek
• Tryck snabbt två gånger igen för att återställa den ursprungliga storleken"
Dubbeltrycksåtgärd och nyp för att ändra storlek är inaktiverat
- Aktivera dra och släpp
- "Dra och släpp är aktiverat
+ Inaktivera dra och släpp
+ Dra och släpp är inaktiverat
+ "Dra och släpp är aktiverat
Minispelaren kan dras till valfritt hörn av skärmen"
- Dra och släpp är inaktiverat
- Aktivera horisontell draggest
- "Horisontell draggest är aktiverad
+ Inaktivera horisontell draggest
+ Horisontell draggest är inaktiverad
+ "Horisontell draggest är aktiverad
Minispelaren kan dras utanför skärmen till vänster eller höger"
- Horisontell draggest är inaktiverad
Dölj överläggsknappar
Överläggsknapparna är dolda
Överläggsknapparna visas
diff --git a/patches/src/main/resources/addresources/values-th-rTH/strings.xml b/patches/src/main/resources/addresources/values-th-rTH/strings.xml
index 7da243489..9aa721686 100644
--- a/patches/src/main/resources/addresources/values-th-rTH/strings.xml
+++ b/patches/src/main/resources/addresources/values-th-rTH/strings.xml
@@ -1351,25 +1351,25 @@ User id ของคุณเหมือนกับรหัสผ่าน
ทันสมัย 2
ทันสมัย 3
ทันสมัย 4
- เปิดใช้งานมุมโค้งมน
- มุมโค้งมน
- มุมเป็นสี่เหลี่ยม
+ ปิดใช้งานมุมโค้งมน
+ มุมเป็นสี่เหลี่ยม
+ มุมโค้งมน
เปิดใช้งานการแตะสองครั้งและการบีบเพื่อปรับขนาด
"การกระทำแตะสองครั้ง และการบีบเพื่อปรับขนาด เปิดใช้งาน
• แตะสองครั้งเพื่อเพิ่มขนาด miniplayer
• แตะสองครั้งอีกครั้งเพื่อคืนค่าขนาดเดิม"
การแตะสองครั้งและการบีบเพื่อปรับขนาดปิดใช้งานแล้ว
- เปิดใช้งานการลากและวาง
- "ลากและวาง เปิดใช้งาน
+ ปิดใช้งานการลากและวาง
+ การลากและวางปิดใช้งานแล้ว
+ "ลากและวาง เปิดใช้งาน
สามารถลาก miniplayer ไปยังมุมใดๆ ของหน้าจอ"
- การลากและวางปิดใช้งานแล้ว
- เปิดใช้งานท่าทางการลากแบบแนวนอน
- "ท่าทางลากแนวนอน เปิดใช้งาน
+ ปิดใช้งานท่าทางการลากแนวนอน
+ ท่าทางการลากแบบแนวนอนปิดใช้งานแล้ว
+ "ท่าทางลากแนวนอน เปิดใช้งาน
สามารถลาก miniplayer ออกจากหน้าจอไปทางซ้ายหรือขวา"
- ท่าทางการลากแบบแนวนอนปิดใช้งานแล้ว
ซ่อนปุ่มโอเวอร์เลย์
ปุ่มโอเวอร์เลย์ถูกซ่อน
ปุ่มโอเวอร์เลย์ถูกแสดง
diff --git a/patches/src/main/resources/addresources/values-tr-rTR/strings.xml b/patches/src/main/resources/addresources/values-tr-rTR/strings.xml
index 1449fc324..82869534b 100644
--- a/patches/src/main/resources/addresources/values-tr-rTR/strings.xml
+++ b/patches/src/main/resources/addresources/values-tr-rTR/strings.xml
@@ -1354,25 +1354,25 @@ Kısıtlama: Araç çubuğundaki geri düğmesini kullanmak işe yaramayabilir"<
Modern 2
Modern 3
Modern 4
- Yuvarlatılmış köşeleri etkinleştir
- Köşeler yuvarlatılmış
- Köşeler kare şeklinde
+ Yuvarlatılmış köşeleri devre dışı bırak
+ Köşeler kare şeklinde
+ Köşeler yuvarlatılmış
Boyutlandırmak için çift dokunmayı ve sıkıştırmayı etkinleştir
"Boyutlandırmak için çift dokunma ve sıkıştırma etkin
• Mini oynatıcı boyutunu artırmak için çift dokunun
• Orijinal boyuta geri dönmek için tekrar çift dokunun"
Boyutlandırmak için çift dokunma ve sıkıştırma devre dışı
- Sürükleyip bırakmayı etkinleştir
- "Sürükle ve bırak etkin
+ Sürükleyip bırakmayı devre dışı bırak
+ Sürükle ve bırak devre dışı
+ "Sürükle ve bırak etkin
Mini oynatıcı, ekranın herhangi bir köşesine sürüklenebilir"
- Sürükle ve bırak devre dışı
- Yatay sürükleme hareketini etkinleştir
- "Yatay sürükleme hareketi etkin
+ Yatay sürükleme hareketini devre dışı bırak
+ Yatay sürükleme hareketi devre dışı
+ "Yatay sürükleme hareketi etkin
Mini oynatıcı, ekranın dışına sağa veya sola sürüklenebilir"
- Yatay sürükleme hareketi devre dışı
Katman düğmelerini gizle
Katman düğmeleri gizli
Katman düğmeleri görünür
diff --git a/patches/src/main/resources/addresources/values-uk-rUA/strings.xml b/patches/src/main/resources/addresources/values-uk-rUA/strings.xml
index 6767b4d54..9df94a947 100644
--- a/patches/src/main/resources/addresources/values-uk-rUA/strings.xml
+++ b/patches/src/main/resources/addresources/values-uk-rUA/strings.xml
@@ -399,18 +399,18 @@ Second \"item\" text"
Недійсний фільтр: %s
Приховати кількість переглядів
Кількість переглядів приховано у стрічці та результатах пошуку
- Кількість переглядів відображається у стрічці та результатах пошуку
+ Кількість переглядів показуються у стрічці та результатах пошуку
"Обмеження:
• Полиці Shorts, сторінки каналів та результати пошуку можуть досі показувати кількість переглядів
-• Ця функція не працює з автомобільним форм-фактором"
+• Ця функція не працює з автомобільним макетом інтерфейсу"
Приховати час завантаження
Час завантаження приховано у стрічці та результатах пошуку
- Час завантаження відображається у стрічці та результатах пошуку
+ Час завантаження показується у стрічці та результатах пошуку
"Обмеження:
• Полиці Shorts, сторінки каналів і результати пошуку можуть досі показувати час завантаження
-• Ця функція не працює з автомобільним форм-фактором"
+• Ця функція не працює з автомобільним макетом інтерфейсу"
Приховати контент за ключовими словами
Приховати відео із результатів пошуку та стрічки за допомогою фільтрів ключових слів
Приховати відео на головній
@@ -1351,25 +1351,25 @@ Second \"item\" text"
Новітній 2
Новітній 3
Новітній 4
- Увімкнути закруглені кути
- Кути закруглені
- Кути квадратні
+ Вимкнути закруглені кути
+ Кути квадратні
+ Кути закруглені
Подвійне натискання та зміна розміру щипком
"Подвійне натискання та зміну розміру щипком увімкнено
• Двічі торкніться, щоб збільшити розмір мініплеєра
• Двічі торкніться ще раз, щоб відновити початковий розмір"
Подвійне натискання та зміну розміру щипком вимкнено
- Увімкнути перетягування
- "Перетягування увімкнено
+ Вимкнути перетягування
+ Перетягування вимкнено
+ "Перетягування увімкнено
Мініплеєр можна перетягнути в будь-який кут екрану"
- Перетягування вимкнено
- Увімкнути жест горизонтального перетягування
- "Жест горизонтального перетягування увімкнено
+ Вимкнути жест горизонтального перетягування
+ Жест горизонтального перетягування вимкнено
+ "Жест горизонтального перетягування увімкнено
Мініплеєр можна перетягнути за межі екрана вліво або вправо"
- Жест горизонтального перетягування вимкнено
Приховати кнопки накладання
Кнопки накладання приховано
Кнопки накладання показуються
diff --git a/patches/src/main/resources/addresources/values-vi-rVN/strings.xml b/patches/src/main/resources/addresources/values-vi-rVN/strings.xml
index cd879dc24..e0563b829 100644
--- a/patches/src/main/resources/addresources/values-vi-rVN/strings.xml
+++ b/patches/src/main/resources/addresources/values-vi-rVN/strings.xml
@@ -1353,25 +1353,25 @@ Hạn chế: Nút quay lại trên thanh công cụ có thể không hoạt đ
Hiện đại 2
Hiện đại 3
Hiện đại 4
- Bật góc bo tròn
- Góc được bo tròn
- Góc vuông
+ Tắt góc bo tròn
+ Góc vuông
+ Góc được bo tròn
Bật chạm hai lần và chụm để thay đổi kích thước
"Thao tác chạm hai lần và chụm để thay đổi kích thước đã bật
• Chạm hai lần để tăng kích thước trình phát thu nhỏ
• Chạm hai lần nữa để khôi phục kích thước ban đầu"
Thao tác chạm hai lần và chụm để thay đổi kích thước đã tắt
- Bật kéo và thả
- "Kéo và thả đã được bật
+ Tắt kéo và thả
+ Kéo và thả đã tắt
+ "Kéo và thả đã được bật
Trình phát thu nhỏ có thể được kéo đến bất kỳ góc nào của màn hình"
- Kéo và thả đã tắt
- Bật cử chỉ kéo ngang
- "Cử chỉ kéo ngang đã được bật
+ Tắt cử chỉ kéo ngang
+ Cử chỉ kéo ngang đã tắt
+ "Cử chỉ kéo ngang đã được bật
Trình phát thu nhỏ có thể được kéo ra mép màn hình sang bên trái hoặc phải"
- Cử chỉ kéo ngang đã tắt
Ẩn nút lớp phủ
Các nút lớp phủ đã bị ẩn
Các nút lớp phủ được hiển thị
diff --git a/patches/src/main/resources/addresources/values-zh-rCN/strings.xml b/patches/src/main/resources/addresources/values-zh-rCN/strings.xml
index 99b729d09..86186d6e6 100644
--- a/patches/src/main/resources/addresources/values-zh-rCN/strings.xml
+++ b/patches/src/main/resources/addresources/values-zh-rCN/strings.xml
@@ -1357,25 +1357,25 @@ Second \"item\" text"
现代 2
现代 3
现代 4
- 启用圆角
- 已启用圆角
- 已禁用圆角
+ 禁用圆角
+ 已禁用圆角
+ 已启用圆角
启用双击和捏合缩放
"已启用双击操作和捏合以调整大小
• 双击以增加迷你播放器大小
• 再次双击以恢复原始大小"
已禁用双击操作和捏合缩放
- 启用拖放
- "已启用拖放
+ 禁用拖放
+ 已禁用拖放
+ "已启用拖放
迷你播放器可以拖动到屏幕的任何角落"
- 已禁用拖放
- 启用水平拖动
- "已启用水平拖动手势
+ 禁用水平拖动手势
+ 已禁用水平拖动
+ "已启用水平拖动手势
迷你播放器可以拖动到屏幕的左侧或右侧"
- 已禁用水平拖动
隐藏悬浮窗按钮
悬浮窗按钮已隐藏
悬浮窗按钮已显示
diff --git a/patches/src/main/resources/addresources/values-zh-rTW/strings.xml b/patches/src/main/resources/addresources/values-zh-rTW/strings.xml
index b5e4d78f5..adbf8b177 100644
--- a/patches/src/main/resources/addresources/values-zh-rTW/strings.xml
+++ b/patches/src/main/resources/addresources/values-zh-rTW/strings.xml
@@ -1353,25 +1353,25 @@ Second \"item\" text"
現代 2
現代 3
現代 4
- 啟用圓角
- 已將角落設為圓角
- 已將角落設為方角
+ 停用圓角
+ 已將角落設為方角
+ 已將角落設為圓角
啟用輕觸兩下動作和雙指撥動調整大小
"已啟用輕觸兩下動作和雙指撥動調整大小
• 輕觸兩下以放大迷你播放器
• 再次輕觸兩下以還原原始大小"
已停用輕觸兩下動作和雙指撥動調整大小
- 啟用拖曳功能
- "已啟用拖曳功能
+ 停用拖放
+ 已停用拖曳功能
+ "已啟用拖曳功能
迷你播放器可拖曳至螢幕任一角落"
- 已停用拖曳功能
- 啟用水平拖曳手勢
- "已啟用水平拖曳手勢
+ 停用水平拖曳手勢
+ 已停用水平拖曳手勢
+ "已啟用水平拖曳手勢
迷你播放器可水平拖曳至螢幕左右兩側之外"
- 已停用水平拖曳手勢
隱藏暫停時顯示的按鈕
已隱藏暫停時顯示的按鈕
已顯示暫停時顯示的按鈕
From 4be00d09b7b87dcfac324de8709af06e9f730791 Mon Sep 17 00:00:00 2001
From: LisoUseInAIKyrios <118716522+LisoUseInAIKyrios@users.noreply.github.com>
Date: Fri, 26 Sep 2025 12:25:17 +0400
Subject: [PATCH 6/6] fix(YouTube - SponsorBlock): Show category color dot in
voting dialog menu
---
.../extension/youtube/sponsorblock/SponsorBlockUtils.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/sponsorblock/SponsorBlockUtils.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/sponsorblock/SponsorBlockUtils.java
index 0cd58eb97..76c0403d5 100644
--- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/sponsorblock/SponsorBlockUtils.java
+++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/sponsorblock/SponsorBlockUtils.java
@@ -302,7 +302,7 @@ public class SponsorBlockUtils {
SpannableStringBuilder spannableBuilder = new SpannableStringBuilder();
- spannableBuilder.append(segment.category.getTitle().toString());
+ spannableBuilder.append(segment.category.getTitleWithColorDot());
spannableBuilder.append('\n');
String startTime = formatSegmentTime(segment.start);