mirror of
https://github.com/inotia00/revanced-patches.git
synced 2025-05-28 21:00:19 +02:00
feat: change patches naming convention
This commit is contained in:
parent
a5c8ce862d
commit
d7ba1eef78
@ -12,7 +12,7 @@ import app.revanced.patches.microg.utils.annotations.MicroGCompatibility
|
||||
import app.revanced.util.resources.MicroGResourceUtils.copyFiles
|
||||
|
||||
@Patch(false)
|
||||
@Name("custom-branding-microg-revancify-blue")
|
||||
@Name("Custom branding icon Revancify blue")
|
||||
@Description("Changes the MicroG launcher icon to Revancify Blue.")
|
||||
@MicroGCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -12,7 +12,7 @@ import app.revanced.patches.microg.utils.annotations.MicroGCompatibility
|
||||
import app.revanced.util.resources.MicroGResourceUtils.copyFiles
|
||||
|
||||
@Patch
|
||||
@Name("custom-branding-microg-revancify-red")
|
||||
@Name("Custom branding icon Revancify red")
|
||||
@Description("Changes the MicroG launcher icon to Revancify Red.")
|
||||
@MicroGCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.patches.microg.utils.annotations.MicroGCompatibility
|
||||
import org.w3c.dom.Element
|
||||
|
||||
@Patch
|
||||
@Name("custom-branding-microg-name")
|
||||
@Name("Custom branding Microg name")
|
||||
@Description("Rename the MicroG app to the name specified in options.json.")
|
||||
@MicroGCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -13,7 +13,7 @@ import app.revanced.patches.microg.utils.annotations.MicroGCompatibility
|
||||
import org.w3c.dom.Element
|
||||
|
||||
@Patch(false)
|
||||
@Name("hide-icon-from-launcher")
|
||||
@Name("Hide icon from launcher")
|
||||
@Description("Hide MicroG icon from launcher.")
|
||||
@MicroGCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_ADS_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-music-ads")
|
||||
@Name("Hide music ads")
|
||||
@Description("Hides ads before playing a music.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -12,7 +12,7 @@ import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import org.w3c.dom.Element
|
||||
|
||||
@Patch
|
||||
@Name("amoled")
|
||||
@Name("Amoled")
|
||||
@Description("Applies pure black theme in flyout panels.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -20,7 +20,7 @@ import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("disable-auto-captions")
|
||||
@Name("Disable auto captions")
|
||||
@Description("Disables forced auto captions.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -21,7 +21,7 @@ import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-black-navigation-bar")
|
||||
@Name("Enable black navigation bar")
|
||||
@Description("Sets the navigation bar color to black.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -13,7 +13,7 @@ import app.revanced.util.resources.IconHelper.customIconMusic
|
||||
import app.revanced.util.resources.IconHelper.customIconMusicAdditional
|
||||
|
||||
@Patch(false)
|
||||
@Name("custom-branding-icon-mmt")
|
||||
@Name("Custom branding icon MMT")
|
||||
@Description("Changes the YouTube Music launcher icon to MMT.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -12,7 +12,7 @@ import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import app.revanced.util.resources.IconHelper.customIconMusic
|
||||
|
||||
@Patch
|
||||
@Name("custom-branding-icon-revancify-blue")
|
||||
@Name("Custom branding icon Revancify blue")
|
||||
@Description("Changes the YouTube Music launcher icon to Revancify Blue.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -12,7 +12,7 @@ import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import app.revanced.util.resources.IconHelper.customIconMusic
|
||||
|
||||
@Patch(false)
|
||||
@Name("custom-branding-icon-revancify-red")
|
||||
@Name("Custom branding icon Revancify red")
|
||||
@Description("Changes the YouTube Music launcher icon to Revancify Red.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -15,7 +15,7 @@ import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import org.w3c.dom.Element
|
||||
|
||||
@Patch(false)
|
||||
@Name("custom-branding-music-name")
|
||||
@Name("Custom branding Music name")
|
||||
@Description("Rename the YouTube Music app to the name specified in options.json.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_ADS_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-button-shelf")
|
||||
@Name("Hide button shelf")
|
||||
@Description("Hides the button shelf from homepage and explorer.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_ADS_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-carousel-shelf")
|
||||
@Name("Hide carousel shelf")
|
||||
@Description("Hides the carousel shelf from homepage and explorer.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -20,7 +20,7 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
|
||||
@Patch
|
||||
@Name("hide-cast-button")
|
||||
@Name("Hide cast button")
|
||||
@Description("Hides the cast button in the video player and header.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -21,7 +21,7 @@ import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-category-bar")
|
||||
@Name("Hide category bar")
|
||||
@Description("Hides the music category bar at the top of the homepage.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -26,7 +26,7 @@ import org.jf.dexlib2.iface.instruction.Instruction
|
||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-color-match-player")
|
||||
@Name("Enable color match player")
|
||||
@Description("Matches the color of the mini player and the fullscreen player.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -20,9 +20,8 @@ import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
|
||||
|
||||
@Patch
|
||||
@Name("enable-compact-dialog")
|
||||
@Name("Enable compact dialog")
|
||||
@Description("Enable compact dialog on phone.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_ADS_PATH
|
||||
|
||||
@Patch
|
||||
@Name("enable-custom-filter")
|
||||
@Name("Enable custom filter")
|
||||
@Description("Enables custom filter to hide layout components.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -20,7 +20,7 @@ import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-dismiss-queue")
|
||||
@Name("Enable dismiss queue")
|
||||
@Description("Add dismiss queue to flyout menu. (YT Music v6.04.51+)")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -23,8 +23,8 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
|
||||
@Patch
|
||||
@Name("hide-new-playlist-button")
|
||||
@Description("Hide the New Playlist button in the Library tab.")
|
||||
@Name("Hide new playlist button")
|
||||
@Description("Hide the \"New playlist\" button in the library.")
|
||||
@DependsOn(
|
||||
[
|
||||
SettingsPatch::class,
|
||||
|
@ -19,7 +19,7 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
|
||||
@Patch
|
||||
@Name("enable-landscape-mode")
|
||||
@Name("Enable landscape mode")
|
||||
@Description("Enables entry into landscape mode by screen rotation on the phone.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -19,7 +19,7 @@ import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-force-minimized-player")
|
||||
@Name("Enable force minimized player")
|
||||
@Description("Permanently keep player minimized even if another track is played.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -26,7 +26,7 @@ import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-navigation-label")
|
||||
@Name("Hide navigation label")
|
||||
@Description("Hide navigation bar labels.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -20,7 +20,7 @@ import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-new-layout")
|
||||
@Name("Enable new layout")
|
||||
@Description("Enable new player layouts. (YT Music v5.47.51+)")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -23,7 +23,7 @@ import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-old-style-miniplayer")
|
||||
@Name("Enable old style miniplayer")
|
||||
@Description("Return the miniplayers to old style. (for YT Music v5.55.53+)")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_ADS_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-playlist-card")
|
||||
@Name("Hide playlist card")
|
||||
@Description("Hides the playlist card from homepage.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -20,7 +20,7 @@ import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-sleep-timer")
|
||||
@Name("Enable sleep timer")
|
||||
@Description("Add sleep timer to flyout menu.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -24,7 +24,7 @@ import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-zen-mode")
|
||||
@Name("Enable zen mode")
|
||||
@Description("Adds a grey tint to the video player to reduce eye strain.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.patches.music.misc.backgroundplay.fingerprints.BackgroundPla
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
|
||||
@Patch
|
||||
@Name("background-play")
|
||||
@Name("Background play")
|
||||
@Description("Enables playing music in the background.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -11,7 +11,7 @@ import app.revanced.patcher.patch.annotations.Patch
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
|
||||
@Patch
|
||||
@Name("bitrate-default-value")
|
||||
@Name("Bitrate default value")
|
||||
@Description("Set the audio quality to \"Always High\" when you first install the app.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -15,7 +15,7 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_MISC_PATH
|
||||
|
||||
@Patch
|
||||
@Name("enable-opus-codec")
|
||||
@Name("Enable opus codec")
|
||||
@Description("Enable opus codec when playing audio.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -14,7 +14,7 @@ import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.enum.CategoryType
|
||||
|
||||
@Patch(false)
|
||||
@Name("enable-debug-logging")
|
||||
@Name("Enable debug logging")
|
||||
@Description("Adds debugging options.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -15,7 +15,7 @@ import app.revanced.patches.music.misc.exclusiveaudio.fingerprints.AudioOnlyEnab
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
|
||||
@Patch
|
||||
@Name("exclusive-audio-playback")
|
||||
@Name("Exclusive audio playback")
|
||||
@Description("Enables the option to play music without video.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -14,7 +14,7 @@ import app.revanced.patches.music.misc.minimizedplayback.fingerprints.MinimizedP
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
|
||||
@Patch
|
||||
@Name("enable-minimized-playback")
|
||||
@Name("Enable minimized playback")
|
||||
@Description("Enables minimized playback on Kids music.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -13,7 +13,7 @@ import java.nio.file.Files
|
||||
import java.nio.file.StandardCopyOption
|
||||
|
||||
@Patch
|
||||
@Name("optimize-resource")
|
||||
@Name("Optimize resource")
|
||||
@Description("Remove unnecessary resources.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -27,8 +27,8 @@ import org.jf.dexlib2.iface.instruction.TwoRegisterInstruction
|
||||
import org.jf.dexlib2.iface.reference.Reference
|
||||
|
||||
@Patch
|
||||
@Name("hide-get-premium")
|
||||
@Description("Removes all \"Get Premium\" evidences from the avatar menu.")
|
||||
@Name("Hide get premium")
|
||||
@Description("Hides \"Get Premium\" label from the account menu.")
|
||||
@DependsOn([SharedResourceIdPatch::class])
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -32,7 +32,7 @@ import org.jf.dexlib2.iface.reference.MethodReference
|
||||
import org.jf.dexlib2.iface.reference.Reference
|
||||
|
||||
@Patch
|
||||
@Name("remember-video-quality")
|
||||
@Name("Remember video quality")
|
||||
@Description("Save the video quality value whenever you change the video quality.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -27,7 +27,7 @@ import app.revanced.util.integrations.Constants.MUSIC_INTEGRATIONS_PATH
|
||||
import app.revanced.util.integrations.Constants.MUSIC_MISC_PATH
|
||||
|
||||
@Patch
|
||||
@Name("share-button-hook")
|
||||
@Name("Share button hook")
|
||||
@Description("Replace share button with external download button.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -38,7 +38,7 @@ import org.jf.dexlib2.immutable.ImmutableMethodImplementation
|
||||
import org.jf.dexlib2.immutable.ImmutableMethodParameter
|
||||
|
||||
@Patch
|
||||
@Name("enable-force-shuffle")
|
||||
@Name("Enable force shuffle")
|
||||
@Description("Enable force shuffle even if another track is played.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import org.jf.dexlib2.iface.instruction.TwoRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-taste-builder")
|
||||
@Name("Hide taste builder")
|
||||
@Description("Hides the \"Tell us which artists you like\" card from homepage.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -14,7 +14,7 @@ import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.resources.ResourceHelper.addTranslations
|
||||
|
||||
@Patch
|
||||
@Name("translations")
|
||||
@Name("Translations")
|
||||
@Description("Add Crowdin translations for YouTube Music.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -24,7 +24,7 @@ import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
import org.jf.dexlib2.iface.instruction.TwoRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-upgrade-button")
|
||||
@Name("Hide upgrade button")
|
||||
@Description("Hides upgrade button from navigation bar and hide upgrade banner from homepage.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -15,7 +15,7 @@ import app.revanced.util.enum.CategoryType
|
||||
import app.revanced.util.integrations.Constants.MUSIC_MISC_PATH
|
||||
|
||||
@Patch
|
||||
@Name("spoof-app-version")
|
||||
@Name("Spoof app version")
|
||||
@Description("Spoof the YouTube Music client version.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -14,7 +14,7 @@ import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import app.revanced.patches.music.utils.fix.androidauto.fingerprints.CertificateCheckFingerprint
|
||||
|
||||
@Patch
|
||||
@Name("certificate-spoof")
|
||||
@Name("Certificate spoof")
|
||||
@Description("Spoofs the YouTube Music certificate for Android Auto.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -1,24 +1,16 @@
|
||||
package app.revanced.patches.music.utils.fix.clientspoof.patch
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Description
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
import app.revanced.patcher.patch.BytecodePatch
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import app.revanced.patches.music.utils.fix.clientspoof.fingerprints.UserAgentHeaderBuilderFingerprint
|
||||
import app.revanced.patches.music.utils.microg.shared.Constants.MUSIC_PACKAGE_NAME
|
||||
import org.jf.dexlib2.iface.instruction.FiveRegisterInstruction
|
||||
|
||||
@Name("client-spoof-music")
|
||||
@Description("Spoofs the YouTube Music client.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
class ClientSpoofMusicPatch : BytecodePatch(
|
||||
listOf(UserAgentHeaderBuilderFingerprint)
|
||||
) {
|
||||
|
@ -1,14 +1,10 @@
|
||||
package app.revanced.patches.music.utils.integrations.patch
|
||||
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.patch.annotations.RequiresIntegrations
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import app.revanced.patches.music.utils.integrations.fingerprints.InitFingerprint
|
||||
import app.revanced.patches.shared.patch.integrations.AbstractIntegrationsPatch
|
||||
import app.revanced.util.integrations.Constants.MUSIC_INTEGRATIONS_PATH
|
||||
|
||||
@Name("integrations")
|
||||
@MusicCompatibility
|
||||
@RequiresIntegrations
|
||||
class IntegrationsPatch : AbstractIntegrationsPatch(
|
||||
"$MUSIC_INTEGRATIONS_PATH/utils/ReVancedUtils;",
|
||||
|
@ -31,7 +31,7 @@ import app.revanced.util.microg.MicroGBytecodeHelper
|
||||
PackageNamePatch::class
|
||||
]
|
||||
)
|
||||
@Name("microg-support")
|
||||
@Name("Microg support")
|
||||
@Description("Allows ReVanced Music to run without root and under a different package name with MicroG.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.2")
|
||||
|
@ -1,14 +1,10 @@
|
||||
package app.revanced.patches.music.utils.microg.resource.patch
|
||||
|
||||
import app.revanced.patcher.annotation.Description
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.ResourcePatch
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import app.revanced.patches.music.utils.microg.shared.Constants.MUSIC_PACKAGE_NAME
|
||||
import app.revanced.patches.music.utils.microg.shared.Constants.SPOOFED_PACKAGE_NAME
|
||||
import app.revanced.patches.music.utils.microg.shared.Constants.SPOOFED_PACKAGE_SIGNATURE
|
||||
@ -17,11 +13,7 @@ import app.revanced.util.microg.MicroGManifestHelper.addSpoofingMetadata
|
||||
import app.revanced.util.microg.MicroGResourceHelper.patchManifest
|
||||
import app.revanced.util.resources.MusicResourceHelper.setMicroG
|
||||
|
||||
@Name("microg-resource-patch")
|
||||
@Description("Resource patch to allow YouTube Music ReVanced to run without root and under a different package name.")
|
||||
@DependsOn([PackageNamePatch::class])
|
||||
@MusicCompatibility
|
||||
@Version("0.0.2")
|
||||
class MicroGResourcePatch : ResourcePatch {
|
||||
override fun execute(context: ResourceContext): PatchResult {
|
||||
val packageNameMusic = PackageNamePatch.MusicPackageName!!
|
||||
|
@ -1,14 +1,11 @@
|
||||
package app.revanced.patches.music.utils.resourceid.patch
|
||||
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.ResourcePatch
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import app.revanced.patches.shared.patch.mapping.ResourceMappingPatch
|
||||
import app.revanced.util.enum.ResourceType
|
||||
import app.revanced.util.enum.ResourceType.BOOL
|
||||
@ -19,10 +16,7 @@ import app.revanced.util.enum.ResourceType.LAYOUT
|
||||
import app.revanced.util.enum.ResourceType.STRING
|
||||
import app.revanced.util.enum.ResourceType.STYLE
|
||||
|
||||
@Name("music-resource-id")
|
||||
@DependsOn([ResourceMappingPatch::class])
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
class SharedResourceIdPatch : ResourcePatch {
|
||||
internal companion object {
|
||||
var ChipCloud: Long = -1
|
||||
|
@ -1,8 +1,6 @@
|
||||
package app.revanced.patches.music.utils.settings.bytecode.patch
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
@ -10,7 +8,6 @@ import app.revanced.patcher.patch.BytecodePatch
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import app.revanced.patches.music.utils.integrations.patch.IntegrationsPatch
|
||||
import app.revanced.patches.music.utils.settings.bytecode.fingerprints.PreferenceFingerprint
|
||||
import app.revanced.patches.music.utils.settings.bytecode.fingerprints.SettingsHeadersFragmentFingerprint
|
||||
@ -18,10 +15,7 @@ import app.revanced.util.integrations.Constants.MUSIC_INTEGRATIONS_PATH
|
||||
import org.jf.dexlib2.iface.instruction.FiveRegisterInstruction
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Name("settings-bytecode-patch")
|
||||
@DependsOn([IntegrationsPatch::class])
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
class SettingsBytecodePatch : BytecodePatch(
|
||||
listOf(
|
||||
PreferenceFingerprint,
|
||||
|
@ -27,7 +27,7 @@ import java.io.File
|
||||
import java.nio.file.Paths
|
||||
|
||||
@Patch
|
||||
@Name("settings")
|
||||
@Name("Settings")
|
||||
@Description("Adds settings for ReVanced to YouTube Music.")
|
||||
@DependsOn([SettingsBytecodePatch::class])
|
||||
@MusicCompatibility
|
||||
|
@ -1,9 +1,6 @@
|
||||
package app.revanced.patches.music.utils.videoid.patch
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Description
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
@ -11,7 +8,6 @@ import app.revanced.patcher.patch.BytecodePatch
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||
import app.revanced.patches.music.utils.videoid.fingerprint.VideoIdParentFingerprint
|
||||
import app.revanced.util.integrations.Constants.MUSIC_UTILS_PATH
|
||||
import org.jf.dexlib2.Opcode
|
||||
@ -19,10 +15,6 @@ import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
import org.jf.dexlib2.iface.reference.FieldReference
|
||||
|
||||
@Name("video-id-hook")
|
||||
@Description("Hook to detect when the video id changes.")
|
||||
@MusicCompatibility
|
||||
@Version("0.0.1")
|
||||
class VideoIdPatch : BytecodePatch(
|
||||
listOf(VideoIdParentFingerprint)
|
||||
) {
|
||||
|
@ -1,16 +1,10 @@
|
||||
package app.revanced.patches.reddit.ad.banner.patch
|
||||
|
||||
import app.revanced.patcher.annotation.Description
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.ResourcePatch
|
||||
|
||||
@Name("hide-subreddit-banner")
|
||||
@Description("Hides banner ads from comments on subreddits.")
|
||||
@Version("0.0.1")
|
||||
class HideBannerPatch : ResourcePatch {
|
||||
override fun execute(context: ResourceContext): PatchResult {
|
||||
context.xmlEditor[RESOURCE_FILE_PATH].use {
|
||||
|
@ -1,23 +1,15 @@
|
||||
package app.revanced.patches.reddit.ad.comments.patch
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Description
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.data.toMethodWalker
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.patch.BytecodePatch
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.annotations.RequiresIntegrations
|
||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||
import app.revanced.patches.reddit.ad.comments.fingerprints.HideCommentAdsFingerprint
|
||||
|
||||
@Name("hide-comment-ads")
|
||||
@Description("Removes all comment ads.")
|
||||
@RequiresIntegrations
|
||||
@Version("0.0.1")
|
||||
class HideCommentAdsPatch : BytecodePatch(
|
||||
listOf(HideCommentAdsFingerprint)
|
||||
) {
|
||||
|
@ -14,27 +14,27 @@ import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
import app.revanced.patcher.patch.annotations.Patch
|
||||
import app.revanced.patcher.patch.annotations.RequiresIntegrations
|
||||
import app.revanced.patches.reddit.ad.banner.patch.HideBannerPatch
|
||||
import app.revanced.patches.reddit.ad.comments.patch.HideCommentAdsPatch
|
||||
import app.revanced.patches.reddit.ad.general.fingerprints.AdPostFingerprint
|
||||
import app.revanced.patches.reddit.ad.general.fingerprints.NewAdPostFingerprint
|
||||
import app.revanced.patches.reddit.utils.annotations.RedditCompatibility
|
||||
import app.revanced.patches.reddit.utils.integrations.patch.IntegrationsPatch
|
||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
import org.jf.dexlib2.iface.instruction.formats.Instruction22c
|
||||
import org.jf.dexlib2.iface.reference.FieldReference
|
||||
|
||||
@Patch
|
||||
@Name("hide-ads")
|
||||
@Description("Removes ads from the Reddit.")
|
||||
@Name("Hide ads")
|
||||
@Description("Hides ads from the Reddit.")
|
||||
@DependsOn(
|
||||
[
|
||||
HideBannerPatch::class,
|
||||
HideCommentAdsPatch::class,
|
||||
IntegrationsPatch::class
|
||||
HideCommentAdsPatch::class
|
||||
]
|
||||
)
|
||||
@RedditCompatibility
|
||||
@RequiresIntegrations
|
||||
@Version("0.0.2")
|
||||
class HideAdsPatch : BytecodePatch(
|
||||
listOf(
|
||||
|
@ -15,7 +15,7 @@ import app.revanced.patches.reddit.utils.settings.bytecode.patch.SettingsBytecod
|
||||
import app.revanced.patches.reddit.utils.settings.resource.patch.SettingsPatch
|
||||
|
||||
@Patch
|
||||
@Name("hide-create-button")
|
||||
@Name("Hide create button")
|
||||
@Description("Hide create button at navigation bar.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -15,7 +15,7 @@ import app.revanced.patches.reddit.utils.settings.bytecode.patch.SettingsBytecod
|
||||
import app.revanced.patches.reddit.utils.settings.resource.patch.SettingsPatch
|
||||
|
||||
@Patch
|
||||
@Name("hide-discover-button")
|
||||
@Name("Hide discover button")
|
||||
@Description("Hide discover button at navigation bar.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -1,9 +1,6 @@
|
||||
package app.revanced.patches.reddit.layout.navigation.patch
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Description
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
@ -16,9 +13,6 @@ import app.revanced.patches.reddit.layout.navigation.fingerprints.BottomNavScree
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
|
||||
@Name("hide-navigation-buttons")
|
||||
@Description("Hide navigation buttons.")
|
||||
@Version("0.0.1")
|
||||
class NavigationButtonsPatch : BytecodePatch(
|
||||
listOf(BottomNavScreenFingerprint)
|
||||
) {
|
||||
|
@ -14,8 +14,8 @@ import app.revanced.patches.reddit.layout.premiumicon.fingerprints.PremiumIconFi
|
||||
import app.revanced.patches.reddit.utils.annotations.RedditCompatibility
|
||||
|
||||
@Patch
|
||||
@Name("premium-icon-reddit")
|
||||
@Description("Unlocks premium Reddit app icons.")
|
||||
@Name("Premium icon")
|
||||
@Description("Unlocks premium icons.")
|
||||
@RedditCompatibility
|
||||
@Version("0.0.1")
|
||||
class PremiumIconPatch : BytecodePatch(
|
||||
|
@ -20,7 +20,7 @@ import app.revanced.patches.reddit.utils.settings.bytecode.patch.SettingsBytecod
|
||||
import app.revanced.patches.reddit.utils.settings.resource.patch.SettingsPatch
|
||||
|
||||
@Patch
|
||||
@Name("disable-screenshot-popup")
|
||||
@Name("Disable screenshot popup")
|
||||
@Description("Disables the popup that shows up when taking a screenshot.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -17,7 +17,7 @@ import app.revanced.patches.reddit.utils.settings.bytecode.patch.SettingsBytecod
|
||||
import app.revanced.patches.reddit.utils.settings.resource.patch.SettingsPatch
|
||||
|
||||
@Patch
|
||||
@Name("open-links-directly")
|
||||
@Name("Open links directly")
|
||||
@Description("Skips over redirection URLs to external links.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@RedditCompatibility
|
||||
|
@ -20,7 +20,7 @@ import app.revanced.patches.reddit.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.bytecode.getStringIndex
|
||||
|
||||
@Patch
|
||||
@Name("open-links-externally")
|
||||
@Name("Open links externally")
|
||||
@Description("Open links outside of the app directly in your browser.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@RedditCompatibility
|
||||
|
@ -19,7 +19,7 @@ import app.revanced.patches.reddit.utils.settings.bytecode.patch.SettingsBytecod
|
||||
import app.revanced.patches.reddit.utils.settings.resource.patch.SettingsPatch
|
||||
|
||||
@Patch
|
||||
@Name("sanitize-sharing-links")
|
||||
@Name("Sanitize sharing links")
|
||||
@Description("Removes (tracking) query parameters from the URLs when sharing links.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@RedditCompatibility
|
||||
|
@ -1,13 +1,9 @@
|
||||
package app.revanced.patches.reddit.utils.integrations.patch
|
||||
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.patch.annotations.RequiresIntegrations
|
||||
import app.revanced.patches.reddit.utils.annotations.RedditCompatibility
|
||||
import app.revanced.patches.reddit.utils.integrations.fingerprints.InitFingerprint
|
||||
import app.revanced.patches.shared.patch.integrations.AbstractIntegrationsPatch
|
||||
|
||||
@Name("integrations")
|
||||
@RedditCompatibility
|
||||
@RequiresIntegrations
|
||||
class IntegrationsPatch : AbstractIntegrationsPatch(
|
||||
"Lapp/revanced/reddit/utils/ReVancedUtils;",
|
||||
|
@ -1,22 +1,16 @@
|
||||
package app.revanced.patches.reddit.utils.resourceid.patch
|
||||
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.ResourcePatch
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
import app.revanced.patches.reddit.utils.annotations.RedditCompatibility
|
||||
import app.revanced.patches.shared.patch.mapping.ResourceMappingPatch
|
||||
import app.revanced.util.enum.ResourceType
|
||||
import app.revanced.util.enum.ResourceType.STRING
|
||||
|
||||
@Name("reddit-resource-id")
|
||||
@DependsOn([ResourceMappingPatch::class])
|
||||
@RedditCompatibility
|
||||
@Version("0.0.1")
|
||||
class SharedResourceIdPatch : ResourcePatch {
|
||||
internal companion object {
|
||||
var ScreenShotShareBanner: Long = -1
|
||||
|
@ -1,8 +1,6 @@
|
||||
package app.revanced.patches.reddit.utils.settings.bytecode.patch
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
@ -10,14 +8,10 @@ import app.revanced.patcher.patch.BytecodePatch
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||
import app.revanced.patches.reddit.utils.annotations.RedditCompatibility
|
||||
import app.revanced.patches.reddit.utils.settings.bytecode.fingerprints.OssLicensesMenuActivityOnCreateFingerprint
|
||||
import app.revanced.patches.reddit.utils.settings.bytecode.fingerprints.SettingsStatusLoadFingerprint
|
||||
import kotlin.properties.Delegates
|
||||
|
||||
@Name("settings-bytecode-patch")
|
||||
@RedditCompatibility
|
||||
@Version("0.0.1")
|
||||
class SettingsBytecodePatch : BytecodePatch(
|
||||
listOf(
|
||||
OssLicensesMenuActivityOnCreateFingerprint,
|
||||
|
@ -21,7 +21,7 @@ import java.nio.file.Files
|
||||
import kotlin.io.path.exists
|
||||
|
||||
@Patch
|
||||
@Name("reddit-settings")
|
||||
@Name("Reddit settings")
|
||||
@Description("Adds ReVanced settings to Reddit.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -1,8 +1,6 @@
|
||||
package app.revanced.patches.shared.patch.ads
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.data.toMethodWalker
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
@ -16,8 +14,6 @@ import app.revanced.patcher.util.smali.ExternalLabel
|
||||
import app.revanced.patches.shared.fingerprints.ads.LegacyAdsFingerprint
|
||||
import app.revanced.patches.shared.fingerprints.ads.MainstreamAdsFingerprint
|
||||
|
||||
@Name("abstract-ads-patch")
|
||||
@Version("0.0.1")
|
||||
abstract class AbstractAdsPatch(
|
||||
private val descriptor: String
|
||||
) : BytecodePatch(
|
||||
|
@ -1,8 +1,6 @@
|
||||
package app.revanced.patches.shared.patch.litho
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.data.toMethodWalker
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
|
||||
@ -15,7 +13,6 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableField.Companion.toMutable
|
||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||
import app.revanced.patcher.util.smali.ExternalLabel
|
||||
import app.revanced.patches.shared.annotation.RVXCompatibility
|
||||
import app.revanced.patches.shared.fingerprints.litho.ByteBufferHookFingerprint
|
||||
import app.revanced.patches.shared.fingerprints.litho.EmptyComponentBuilderFingerprint
|
||||
import app.revanced.patches.shared.fingerprints.litho.IdentifierFingerprint
|
||||
@ -30,9 +27,6 @@ import org.jf.dexlib2.iface.reference.FieldReference
|
||||
import org.jf.dexlib2.immutable.ImmutableField
|
||||
import kotlin.properties.Delegates
|
||||
|
||||
@Name("component-parser-patch")
|
||||
@RVXCompatibility
|
||||
@Version("0.0.1")
|
||||
class ComponentParserPatch : BytecodePatch(
|
||||
listOf(
|
||||
ByteBufferHookFingerprint,
|
||||
@ -45,7 +39,8 @@ class ComponentParserPatch : BytecodePatch(
|
||||
EmptyComponentBuilderFingerprint.result?.let {
|
||||
it.mutableMethod.apply {
|
||||
val byteBufferClassIndex = it.scanResult.patternScanResult!!.startIndex
|
||||
byteBufferClassLabel = getInstruction<ReferenceInstruction>(byteBufferClassIndex).reference.toString()
|
||||
byteBufferClassLabel =
|
||||
getInstruction<ReferenceInstruction>(byteBufferClassIndex).reference.toString()
|
||||
|
||||
val targetIndex = getStringIndex("Failed to convert Element to Flatbuffers: %s") + 2
|
||||
val builderMethodDescriptor =
|
||||
@ -183,7 +178,8 @@ class ComponentParserPatch : BytecodePatch(
|
||||
invoke-static {v$stringBuilderRegister, v$identifierRegister, v$objectRegister, v$freeRegister}, $descriptor(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/Object;Ljava/nio/ByteBuffer;)Z
|
||||
move-result v$freeRegister
|
||||
if-eqz v$freeRegister, :unfiltered
|
||||
""" + emptyComponentLabel, ExternalLabel("unfiltered", getInstruction(insertIndex))
|
||||
""" + emptyComponentLabel,
|
||||
ExternalLabel("unfiltered", getInstruction(insertIndex))
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -1,8 +1,5 @@
|
||||
package app.revanced.patches.shared.patch.mapping
|
||||
|
||||
import app.revanced.patcher.annotation.Description
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
@ -12,9 +9,6 @@ import java.util.Collections
|
||||
import java.util.concurrent.Executors
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
@Name("resource-mapping")
|
||||
@Description("Creates a map of public resources.")
|
||||
@Version("0.0.1")
|
||||
class ResourceMappingPatch : ResourcePatch {
|
||||
companion object {
|
||||
internal lateinit var resourceMappings: List<ResourceElement>
|
||||
|
@ -1,8 +1,6 @@
|
||||
package app.revanced.patches.shared.patch.opus
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructionsWithLabels
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
@ -18,8 +16,6 @@ import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
import org.jf.dexlib2.iface.reference.Reference
|
||||
|
||||
@Name("abstract-opus-codec")
|
||||
@Version("0.0.1")
|
||||
abstract class AbstractOpusCodecsPatch(
|
||||
private val descriptor: String
|
||||
) : BytecodePatch(
|
||||
|
@ -13,7 +13,7 @@ import app.revanced.patcher.patch.annotations.Patch
|
||||
import app.revanced.patches.shared.annotation.RVXCompatibility
|
||||
|
||||
@Patch
|
||||
@Name("custom-package-name")
|
||||
@Name("Custom package name")
|
||||
@Description("Specifies the package name for YouTube and YT Music in the MicroG build.")
|
||||
@RVXCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -1,8 +1,6 @@
|
||||
package app.revanced.patches.shared.patch.versionspoof
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.fingerprint.method.impl.MethodFingerprint.Companion.resolve
|
||||
@ -16,8 +14,6 @@ import org.jf.dexlib2.dexbacked.reference.DexBackedFieldReference
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
|
||||
@Name("abstract-version-spoof")
|
||||
@Version("0.0.1")
|
||||
abstract class AbstractVersionSpoofPatch(
|
||||
private val descriptor: String
|
||||
) : BytecodePatch(
|
||||
|
@ -2,8 +2,6 @@ package app.revanced.patches.youtube.ads.general.bytecode.patch
|
||||
|
||||
import app.revanced.extensions.findMutableMethodOf
|
||||
import app.revanced.extensions.injectHideCall
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
import app.revanced.patcher.patch.BytecodePatch
|
||||
@ -16,9 +14,7 @@ import app.revanced.util.bytecode.getWideLiteralIndex
|
||||
import app.revanced.util.bytecode.isWideLiteralExists
|
||||
import org.jf.dexlib2.iface.instruction.formats.Instruction35c
|
||||
|
||||
@Name("hide-general-ads-bytecode-patch")
|
||||
@DependsOn([SharedResourceIdPatch::class])
|
||||
@Version("0.0.1")
|
||||
@Suppress("LABEL_NAME_CLASH")
|
||||
class GeneralAdsBytecodePatch : BytecodePatch() {
|
||||
override fun execute(context: BytecodeContext): PatchResult {
|
||||
|
@ -23,8 +23,8 @@ import app.revanced.util.resources.ResourceUtils.copyXmlNode
|
||||
import org.w3c.dom.Element
|
||||
|
||||
@Patch
|
||||
@Name("hide-general-ads")
|
||||
@Description("Removes general ads.")
|
||||
@Name("Hide general ads")
|
||||
@Description("Hides general ads.")
|
||||
@DependsOn(
|
||||
[
|
||||
DoubleBackToClosePatch::class,
|
||||
|
@ -1,8 +1,6 @@
|
||||
package app.revanced.patches.youtube.ads.getpremium.patch
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructionsWithLabels
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
@ -14,8 +12,6 @@ import app.revanced.patches.youtube.ads.getpremium.fingerprints.CompactYpcOfferM
|
||||
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||
import org.jf.dexlib2.iface.instruction.TwoRegisterInstruction
|
||||
|
||||
@Name("hide-get-premium")
|
||||
@Version("0.0.1")
|
||||
class HideGetPremiumPatch : BytecodePatch(
|
||||
listOf(CompactYpcOfferModuleViewFingerprint)
|
||||
) {
|
||||
|
@ -14,8 +14,8 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.integrations.Constants.ADS_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-video-ads")
|
||||
@Description("Removes ads in the video player.")
|
||||
@Name("Hide video ads")
|
||||
@Description("Hides ads in the video player.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@YouTubeCompatibility
|
||||
@Version("0.0.1")
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch.
|
||||
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-button-container")
|
||||
@Name("Hide button container")
|
||||
@Description("Adds the options to hide action buttons under a video.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-comment-component")
|
||||
@Name("Hide comment component")
|
||||
@Description("Hides components related to comments.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -21,7 +21,7 @@ import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-feed-flyout-panel")
|
||||
@Name("Hide feed flyout panel")
|
||||
@Description("Hides feed flyout panel components.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@YouTubeCompatibility
|
||||
|
@ -23,7 +23,7 @@ import app.revanced.util.integrations.Constants.FLYOUT_PANEL
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-old-quality-layout")
|
||||
@Name("Enable old quality layout")
|
||||
@Description("Enables the original quality flyout menu.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -1,9 +1,6 @@
|
||||
package app.revanced.patches.youtube.flyoutpanel.oldspeedlayout.patch
|
||||
|
||||
import app.revanced.extensions.toErrorResult
|
||||
import app.revanced.patcher.annotation.Description
|
||||
import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
@ -25,10 +22,7 @@ import org.jf.dexlib2.AccessFlags
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
import org.jf.dexlib2.immutable.ImmutableField
|
||||
|
||||
@Name("enable-old-speed-layout")
|
||||
@Description("Enables the original speed flyout menu.")
|
||||
@DependsOn([LithoFilterPatch::class])
|
||||
@Version("0.0.1")
|
||||
class OldSpeedLayoutPatch : BytecodePatch(
|
||||
listOf(
|
||||
FlyoutPanelPatchFingerprint,
|
||||
|
@ -15,7 +15,7 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-player-flyout-panel")
|
||||
@Name("Hide player flyout panel")
|
||||
@Description("Hides player flyout panel components.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -25,7 +25,7 @@ import app.revanced.util.integrations.Constants.FULLSCREEN
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-autoplay-preview")
|
||||
@Name("Hide autoplay preview")
|
||||
@Description("Hides the autoplay preview container in the fullscreen.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -22,8 +22,8 @@ import app.revanced.util.integrations.Constants.FULLSCREEN
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("enable-compact-controls-overlay")
|
||||
@Description("Enable compact control overlay.")
|
||||
@Name("Enable compact controls overlay")
|
||||
@Description("Enables compact control overlay.")
|
||||
@DependsOn(
|
||||
[
|
||||
SettingsPatch::class,
|
||||
|
@ -20,8 +20,8 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.integrations.Constants.FULLSCREEN
|
||||
|
||||
@Patch
|
||||
@Name("hide-endscreen-overlay")
|
||||
@Description("Hide endscreen overlay on swipe controls.")
|
||||
@Name("Hide end screen overlay")
|
||||
@Description("Hide end screen overlay on swipe controls.")
|
||||
@DependsOn(
|
||||
[
|
||||
SettingsPatch::class,
|
||||
|
@ -33,7 +33,7 @@ import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
||||
import org.jf.dexlib2.iface.instruction.formats.Instruction35c
|
||||
|
||||
@Patch
|
||||
@Name("hide-fullscreen-panels")
|
||||
@Name("Hide fullscreen panels")
|
||||
@Description("Hides video description and comments panel in fullscreen view.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -23,7 +23,7 @@ import app.revanced.util.integrations.Constants.FULLSCREEN
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch(false)
|
||||
@Name("disable-landscape-mode")
|
||||
@Name("Disable landscape mode")
|
||||
@Description("Disable landscape mode when entering fullscreen.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@YouTubeCompatibility
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-quick-actions")
|
||||
@Name("Hide quick actions")
|
||||
@Description("Adds the options to hide quick actions components in the fullscreen.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -22,7 +22,7 @@ import app.revanced.util.integrations.Constants.GENERAL
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-account-menu")
|
||||
@Name("Hide account menu")
|
||||
@Description("Hide account menu elements.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -25,7 +25,7 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.integrations.Constants.GENERAL
|
||||
|
||||
@Patch
|
||||
@Name("disable-auto-captions")
|
||||
@Name("Disable auto captions")
|
||||
@Description("Disables forced auto captions.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -19,7 +19,7 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||
import app.revanced.util.integrations.Constants.GENERAL
|
||||
|
||||
@Patch
|
||||
@Name("hide-auto-player-popup-panels")
|
||||
@Name("Hide auto player popup panels")
|
||||
@Description("Hide automatic popup panels (playlist or live chat) on video player.")
|
||||
@DependsOn([SettingsPatch::class])
|
||||
@YouTubeCompatibility
|
||||
|
@ -24,8 +24,8 @@ import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
import org.jf.dexlib2.iface.instruction.TwoRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-category-bar")
|
||||
@Description("Hide the category bar at the top of the feed and at the top of related videos.")
|
||||
@Name("Hide category bar")
|
||||
@Description("Hides the category bar in video feeds.")
|
||||
@DependsOn(
|
||||
[
|
||||
SettingsPatch::class,
|
||||
|
@ -20,7 +20,7 @@ import app.revanced.util.integrations.Constants.GENERAL
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-channel-avatar-section")
|
||||
@Name("Hide channel avatar section")
|
||||
@Description("Hides the channel avatar section of the subscription feed.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -20,7 +20,7 @@ import app.revanced.util.integrations.Constants.GENERAL
|
||||
import org.jf.dexlib2.iface.instruction.TwoRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-crowdfunding-box")
|
||||
@Name("Hide crowdfunding box")
|
||||
@Description("Hides the crowdfunding box between the player and video description.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.util.bytecode.BytecodeHelper.updatePatchStatus
|
||||
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-description-components")
|
||||
@Name("Hide description components")
|
||||
@Description("Hides description components.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -20,8 +20,8 @@ import app.revanced.util.integrations.Constants.GENERAL
|
||||
import org.jf.dexlib2.iface.instruction.TwoRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("hide-floating-microphone")
|
||||
@Description("Hide the floating microphone button above the keyboard.")
|
||||
@Name("Hide floating microphone")
|
||||
@Description("Hides the floating microphone button which appears in search.")
|
||||
@DependsOn(
|
||||
[
|
||||
SettingsPatch::class,
|
||||
|
@ -22,7 +22,7 @@ import app.revanced.util.integrations.Constants.GENERAL
|
||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Patch
|
||||
@Name("header-switch")
|
||||
@Name("Header switch")
|
||||
@Description("Add switch to change header.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
@ -16,7 +16,7 @@ import app.revanced.util.bytecode.BytecodeHelper.updatePatchStatus
|
||||
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||
|
||||
@Patch
|
||||
@Name("hide-layout-components")
|
||||
@Name("Hide layout components")
|
||||
@Description("Hides general layout components.")
|
||||
@DependsOn(
|
||||
[
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user