mirror of
https://github.com/inotia00/revanced-patches.git
synced 2025-06-13 05:37:40 +02:00
fix(YouTube - Custom branding icon): Restrict the version that can use the patch options Change splash icons
to YouTube 19.16.39 (Close https://github.com/inotia00/ReVanced_Extended/issues/2605)
This commit is contained in:
@ -5,12 +5,14 @@ import app.revanced.patcher.patch.resourcePatch
|
|||||||
import app.revanced.patcher.patch.stringOption
|
import app.revanced.patcher.patch.stringOption
|
||||||
import app.revanced.patches.youtube.utils.compatibility.Constants.COMPATIBLE_PACKAGE
|
import app.revanced.patches.youtube.utils.compatibility.Constants.COMPATIBLE_PACKAGE
|
||||||
import app.revanced.patches.youtube.utils.patch.PatchList.CUSTOM_BRANDING_ICON_FOR_YOUTUBE
|
import app.revanced.patches.youtube.utils.patch.PatchList.CUSTOM_BRANDING_ICON_FOR_YOUTUBE
|
||||||
|
import app.revanced.patches.youtube.utils.playservice.is_19_17_or_greater
|
||||||
import app.revanced.patches.youtube.utils.playservice.is_19_32_or_greater
|
import app.revanced.patches.youtube.utils.playservice.is_19_32_or_greater
|
||||||
import app.revanced.patches.youtube.utils.playservice.is_19_34_or_greater
|
import app.revanced.patches.youtube.utils.playservice.is_19_34_or_greater
|
||||||
import app.revanced.patches.youtube.utils.playservice.versionCheckPatch
|
import app.revanced.patches.youtube.utils.playservice.versionCheckPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.ResourceUtils.updatePatchStatusIcon
|
import app.revanced.patches.youtube.utils.settings.ResourceUtils.updatePatchStatusIcon
|
||||||
import app.revanced.patches.youtube.utils.settings.settingsPatch
|
import app.revanced.patches.youtube.utils.settings.settingsPatch
|
||||||
import app.revanced.util.ResourceGroup
|
import app.revanced.util.ResourceGroup
|
||||||
|
import app.revanced.util.Utils.printWarn
|
||||||
import app.revanced.util.Utils.trimIndentMultiline
|
import app.revanced.util.Utils.trimIndentMultiline
|
||||||
import app.revanced.util.copyAdaptiveIcon
|
import app.revanced.util.copyAdaptiveIcon
|
||||||
import app.revanced.util.copyFile
|
import app.revanced.util.copyFile
|
||||||
@ -122,7 +124,7 @@ val customBrandingIconPatch = resourcePatch(
|
|||||||
key = "changeSplashIcon",
|
key = "changeSplashIcon",
|
||||||
default = true,
|
default = true,
|
||||||
title = "Change splash icons",
|
title = "Change splash icons",
|
||||||
description = "Apply the custom branding icon to the splash screen.",
|
description = "Apply the custom branding icon to the splash screen. Supports from YouTube 18.29.38 to YouTube 19.16.39.",
|
||||||
required = true
|
required = true
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -171,29 +173,33 @@ val customBrandingIconPatch = resourcePatch(
|
|||||||
|
|
||||||
// Change splash icon.
|
// Change splash icon.
|
||||||
if (changeSplashIconOption == true) {
|
if (changeSplashIconOption == true) {
|
||||||
splashIconResourceGroups.let { resourceGroups ->
|
if (!is_19_17_or_greater) {
|
||||||
resourceGroups.forEach {
|
splashIconResourceGroups.let { resourceGroups ->
|
||||||
copyResources("$appIconResourcePath/splash", it)
|
resourceGroups.forEach {
|
||||||
}
|
copyResources("$appIconResourcePath/splash", it)
|
||||||
}
|
|
||||||
|
|
||||||
document("res/values/styles.xml").use { document ->
|
|
||||||
val resourcesNode =
|
|
||||||
document.getElementsByTagName("resources").item(0) as Element
|
|
||||||
val childNodes = resourcesNode.childNodes
|
|
||||||
|
|
||||||
for (i in 0 until childNodes.length) {
|
|
||||||
val node = childNodes.item(i) as? Element ?: continue
|
|
||||||
val nodeAttributeName = node.getAttribute("name")
|
|
||||||
if (nodeAttributeName.startsWith("Theme.YouTube.Launcher")) {
|
|
||||||
val style = document.createElement("style")
|
|
||||||
style.setAttribute("name", nodeAttributeName)
|
|
||||||
style.setAttribute("parent", "@style/Base.Theme.YouTube.Launcher")
|
|
||||||
|
|
||||||
resourcesNode.removeChild(node)
|
|
||||||
resourcesNode.appendChild(style)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
document("res/values/styles.xml").use { document ->
|
||||||
|
val resourcesNode =
|
||||||
|
document.getElementsByTagName("resources").item(0) as Element
|
||||||
|
val childNodes = resourcesNode.childNodes
|
||||||
|
|
||||||
|
for (i in 0 until childNodes.length) {
|
||||||
|
val node = childNodes.item(i) as? Element ?: continue
|
||||||
|
val nodeAttributeName = node.getAttribute("name")
|
||||||
|
if (nodeAttributeName.startsWith("Theme.YouTube.Launcher")) {
|
||||||
|
val style = document.createElement("style")
|
||||||
|
style.setAttribute("name", nodeAttributeName)
|
||||||
|
style.setAttribute("parent", "@style/Base.Theme.YouTube.Launcher")
|
||||||
|
|
||||||
|
resourcesNode.removeChild(node)
|
||||||
|
resourcesNode.appendChild(style)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
printWarn("\"Change splash icons\" is not supported in this version. Use YouTube 19.16.39 or earlier.")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user