mirror of
https://github.com/inotia00/revanced-patches.git
synced 2025-05-01 07:04:30 +02:00
fix(youtube): separate hide-general-ads
to hide-layout-components
patch
This commit is contained in:
parent
5080ae5452
commit
00fb748025
@ -16,6 +16,6 @@ object TabLayoutFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_STATIC,
|
Opcode.INVOKE_STATIC,
|
||||||
Opcode.MOVE_RESULT
|
Opcode.MOVE_RESULT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(ColorGrey) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(ColorGrey) }
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.blacknavbar.fingerprints.TabLayoutFingerprint
|
import app.revanced.patches.music.layout.blacknavbar.fingerprints.TabLayoutFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
|
@ -12,9 +12,9 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.castbutton.fingerprints.HideCastButtonFingerprint
|
import app.revanced.patches.music.layout.castbutton.fingerprints.HideCastButtonFingerprint
|
||||||
import app.revanced.patches.music.layout.castbutton.fingerprints.HideCastButtonParentFingerprint
|
import app.revanced.patches.music.layout.castbutton.fingerprints.HideCastButtonParentFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||||
|
@ -13,6 +13,6 @@ object ChipCloudFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_STATIC,
|
Opcode.INVOKE_STATIC,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(ChipCloud) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(ChipCloud) }
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.categorybar.fingerprints.ChipCloudFingerprint
|
import app.revanced.patches.music.layout.categorybar.fingerprints.ChipCloudFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
|
@ -16,10 +16,10 @@ import app.revanced.patcher.patch.annotations.DependsOn
|
|||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.colormatchplayer.fingerprints.ColorMatchPlayerFingerprint
|
import app.revanced.patches.music.layout.colormatchplayer.fingerprints.ColorMatchPlayerFingerprint
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.fingerprints.ColorMatchPlayerParentFingerprint
|
import app.revanced.patches.music.utils.fingerprints.ColorMatchPlayerParentFingerprint
|
||||||
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||||
import org.jf.dexlib2.iface.instruction.Instruction
|
import org.jf.dexlib2.iface.instruction.Instruction
|
||||||
|
@ -16,6 +16,6 @@ object DialogSolidFingerprint : MethodFingerprint(
|
|||||||
Opcode.MOVE_RESULT_OBJECT,
|
Opcode.MOVE_RESULT_OBJECT,
|
||||||
Opcode.INVOKE_STATIC
|
Opcode.INVOKE_STATIC
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(DialogSolid) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(DialogSolid) }
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -13,8 +13,8 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.compactdialog.fingerprints.DialogSolidFingerprint
|
import app.revanced.patches.music.layout.compactdialog.fingerprints.DialogSolidFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
|
@ -11,5 +11,5 @@ object DismissQueueFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.MOVE_RESULT
|
Opcode.MOVE_RESULT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWide32LiteralExists(45413042) }
|
customFingerprint = { methodDef, _ -> methodDef.isWide32LiteralExists(45413042) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.dismissqueue.fingerprints.DismissQueueFingerprint
|
import app.revanced.patches.music.layout.dismissqueue.fingerprints.DismissQueueFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||||
|
@ -11,6 +11,6 @@ object FloatingButtonParentFingerprint : MethodFingerprint(
|
|||||||
accessFlags = AccessFlags.PROTECTED or AccessFlags.FINAL,
|
accessFlags = AccessFlags.PROTECTED or AccessFlags.FINAL,
|
||||||
parameters = listOf("L"),
|
parameters = listOf("L"),
|
||||||
opcodes = listOf(Opcode.INVOKE_DIRECT),
|
opcodes = listOf(Opcode.INVOKE_DIRECT),
|
||||||
customFingerprint = { it, _ -> it.isNarrowLiteralExists(259982244) }
|
customFingerprint = { methodDef, _ -> methodDef.isNarrowLiteralExists(259982244) }
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -14,9 +14,9 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.floatingbutton.fingerprints.FloatingButtonFingerprint
|
import app.revanced.patches.music.layout.floatingbutton.fingerprints.FloatingButtonFingerprint
|
||||||
import app.revanced.patches.music.layout.floatingbutton.fingerprints.FloatingButtonParentFingerprint
|
import app.revanced.patches.music.layout.floatingbutton.fingerprints.FloatingButtonParentFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
|
@ -16,6 +16,6 @@ object TabletIdentifierFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.MOVE_RESULT
|
Opcode.MOVE_RESULT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(IsTablet) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(IsTablet) }
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -11,8 +11,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.landscapemode.fingerprints.TabletIdentifierFingerprint
|
import app.revanced.patches.music.layout.landscapemode.fingerprints.TabletIdentifierFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
|
@ -11,8 +11,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.minimizedplayer.fingerprints.MinimizedPlayerFingerprint
|
import app.revanced.patches.music.layout.minimizedplayer.fingerprints.MinimizedPlayerFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||||
|
@ -16,6 +16,6 @@ object TabLayoutTextFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(Text1) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(Text1) }
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -13,8 +13,8 @@ import app.revanced.patcher.patch.PatchResultError
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.navigationlabel.fingerprints.TabLayoutTextFingerprint
|
import app.revanced.patches.music.layout.navigationlabel.fingerprints.TabLayoutTextFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch.Companion.Text1
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch.Companion.Text1
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
|
@ -6,5 +6,5 @@ import app.revanced.util.bytecode.isWide32LiteralExists
|
|||||||
object NewLayoutFingerprint : MethodFingerprint(
|
object NewLayoutFingerprint : MethodFingerprint(
|
||||||
returnType = "Z",
|
returnType = "Z",
|
||||||
parameters = listOf(),
|
parameters = listOf(),
|
||||||
customFingerprint = { it, _ -> it.isWide32LiteralExists(45399578) }
|
customFingerprint = { methodDef, _ -> methodDef.isWide32LiteralExists(45399578) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.newlayout.fingerprints.NewLayoutFingerprint
|
import app.revanced.patches.music.layout.newlayout.fingerprints.NewLayoutFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||||
|
@ -6,5 +6,5 @@ import app.revanced.util.bytecode.isWide32LiteralExists
|
|||||||
object SwipeToCloseFingerprint : MethodFingerprint(
|
object SwipeToCloseFingerprint : MethodFingerprint(
|
||||||
returnType = "Z",
|
returnType = "Z",
|
||||||
parameters = listOf(),
|
parameters = listOf(),
|
||||||
customFingerprint = { it, _ -> it.isWide32LiteralExists(45398432) }
|
customFingerprint = { methodDef, _ -> methodDef.isWide32LiteralExists(45398432) }
|
||||||
)
|
)
|
@ -13,11 +13,11 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.oldstyleminiplayer.fingerprints.NextButtonVisibilityFingerprint
|
import app.revanced.patches.music.layout.oldstyleminiplayer.fingerprints.NextButtonVisibilityFingerprint
|
||||||
import app.revanced.patches.music.layout.oldstyleminiplayer.fingerprints.SwipeToCloseFingerprint
|
import app.revanced.patches.music.layout.oldstyleminiplayer.fingerprints.SwipeToCloseFingerprint
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.fingerprints.ColorMatchPlayerParentFingerprint
|
import app.revanced.patches.music.utils.fingerprints.ColorMatchPlayerParentFingerprint
|
||||||
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||||
|
@ -6,5 +6,5 @@ import app.revanced.util.bytecode.isWide32LiteralExists
|
|||||||
object SleepTimerFingerprint : MethodFingerprint(
|
object SleepTimerFingerprint : MethodFingerprint(
|
||||||
returnType = "Z",
|
returnType = "Z",
|
||||||
parameters = listOf(),
|
parameters = listOf(),
|
||||||
customFingerprint = { it, _ -> it.isWide32LiteralExists(45372767) }
|
customFingerprint = { methodDef, _ -> methodDef.isWide32LiteralExists(45372767) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.sleeptimer.fingerprints.SleepTimerFingerprint
|
import app.revanced.patches.music.layout.sleeptimer.fingerprints.SleepTimerFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||||
|
@ -14,10 +14,10 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.layout.zenmode.fingerprints.ZenModeFingerprint
|
import app.revanced.patches.music.layout.zenmode.fingerprints.ZenModeFingerprint
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.fingerprints.ColorMatchPlayerParentFingerprint
|
import app.revanced.patches.music.utils.fingerprints.ColorMatchPlayerParentFingerprint
|
||||||
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
import app.revanced.util.integrations.Constants.MUSIC_LAYOUT
|
||||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||||
|
@ -17,5 +17,5 @@ object BackgroundPlaybackParentFingerprint : MethodFingerprint(
|
|||||||
Opcode.GOTO,
|
Opcode.GOTO,
|
||||||
Opcode.NOP
|
Opcode.NOP
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("/WatchFragment;") }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("/WatchFragment;") }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.misc.backgroundplay.fingerprints.BackgroundPlaybackParentFingerprint
|
import app.revanced.patches.music.misc.backgroundplay.fingerprints.BackgroundPlaybackParentFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
|
|
||||||
@Patch
|
@Patch
|
||||||
@Name("background-play")
|
@Name("background-play")
|
||||||
|
@ -20,20 +20,20 @@ class BitrateDefaultValuePatch : ResourcePatch {
|
|||||||
context.xmlEditor[RESOURCE_FILE_PATH].use { editor ->
|
context.xmlEditor[RESOURCE_FILE_PATH].use { editor ->
|
||||||
editor.file.getElementsByTagName("com.google.android.apps.youtube.music.ui.preference.PreferenceCategoryCompat")
|
editor.file.getElementsByTagName("com.google.android.apps.youtube.music.ui.preference.PreferenceCategoryCompat")
|
||||||
.item(0).childNodes.apply {
|
.item(0).childNodes.apply {
|
||||||
arrayOf("BitrateAudioMobile", "BitrateAudioWiFi").forEach {
|
arrayOf("BitrateAudioMobile", "BitrateAudioWiFi").forEach {
|
||||||
for (i in 1 until length) {
|
for (i in 1 until length) {
|
||||||
val view = item(i)
|
val view = item(i)
|
||||||
if (
|
if (
|
||||||
view.hasAttributes() &&
|
view.hasAttributes() &&
|
||||||
view.attributes.getNamedItem("android:key").nodeValue.endsWith(it)
|
view.attributes.getNamedItem("android:key").nodeValue.endsWith(it)
|
||||||
) {
|
) {
|
||||||
view.attributes.getNamedItem("android:defaultValue").nodeValue =
|
view.attributes.getNamedItem("android:defaultValue").nodeValue =
|
||||||
"Always High"
|
"Always High"
|
||||||
break
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return PatchResultSuccess()
|
return PatchResultSuccess()
|
||||||
|
@ -11,8 +11,8 @@ import app.revanced.patcher.patch.BytecodePatch
|
|||||||
import app.revanced.patcher.patch.PatchResult
|
import app.revanced.patcher.patch.PatchResult
|
||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.misc.exclusiveaudio.fingerprints.AudioOnlyEnablerFingerprint
|
import app.revanced.patches.music.misc.exclusiveaudio.fingerprints.AudioOnlyEnablerFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
|
|
||||||
@Patch
|
@Patch
|
||||||
@Name("exclusive-audio-playback")
|
@Name("exclusive-audio-playback")
|
||||||
|
@ -10,8 +10,8 @@ import app.revanced.patcher.patch.BytecodePatch
|
|||||||
import app.revanced.patcher.patch.PatchResult
|
import app.revanced.patcher.patch.PatchResult
|
||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.misc.minimizedplayback.fingerprints.MinimizedPlaybackManagerFingerprint
|
import app.revanced.patches.music.misc.minimizedplayback.fingerprints.MinimizedPlaybackManagerFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
|
|
||||||
@Patch
|
@Patch
|
||||||
@Name("minimized-playback-music")
|
@Name("minimized-playback-music")
|
||||||
|
@ -18,5 +18,5 @@ object AccountMenuFooterFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.IGET_OBJECT
|
Opcode.IGET_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(PrivacyTosFooter) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(PrivacyTosFooter) }
|
||||||
)
|
)
|
||||||
|
@ -14,9 +14,9 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.misc.premium.fingerprints.AccountMenuFooterFingerprint
|
import app.revanced.patches.music.misc.premium.fingerprints.AccountMenuFooterFingerprint
|
||||||
import app.revanced.patches.music.misc.premium.fingerprints.HideGetPremiumFingerprint
|
import app.revanced.patches.music.misc.premium.fingerprints.HideGetPremiumFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch.Companion.PrivacyTosFooter
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch.Companion.PrivacyTosFooter
|
||||||
import app.revanced.util.bytecode.getWideLiteralIndex
|
import app.revanced.util.bytecode.getWideLiteralIndex
|
||||||
|
@ -10,5 +10,5 @@ object MusicVideoQualitySettingsParentFingerprint : MethodFingerprint(
|
|||||||
returnType = "V",
|
returnType = "V",
|
||||||
accessFlags = AccessFlags.PUBLIC or AccessFlags.CONSTRUCTOR,
|
accessFlags = AccessFlags.PUBLIC or AccessFlags.CONSTRUCTOR,
|
||||||
parameters = listOf("L"),
|
parameters = listOf("L"),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(QualityTitle) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(QualityTitle) }
|
||||||
)
|
)
|
@ -15,10 +15,10 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.misc.quality.fingerprints.MusicVideoQualitySettingsFingerprint
|
import app.revanced.patches.music.misc.quality.fingerprints.MusicVideoQualitySettingsFingerprint
|
||||||
import app.revanced.patches.music.misc.quality.fingerprints.MusicVideoQualitySettingsParentFingerprint
|
import app.revanced.patches.music.misc.quality.fingerprints.MusicVideoQualitySettingsParentFingerprint
|
||||||
import app.revanced.patches.music.misc.quality.fingerprints.UserQualityChangeFingerprint
|
import app.revanced.patches.music.misc.quality.fingerprints.UserQualityChangeFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.patches.music.utils.videoid.patch.VideoIdPatch
|
import app.revanced.patches.music.utils.videoid.patch.VideoIdPatch
|
||||||
|
@ -3,5 +3,5 @@ package app.revanced.patches.music.misc.sharebuttonhook.fingerprints
|
|||||||
import app.revanced.patcher.fingerprint.method.impl.MethodFingerprint
|
import app.revanced.patcher.fingerprint.method.impl.MethodFingerprint
|
||||||
|
|
||||||
object FullStackTraceActivityFingerprint : MethodFingerprint(
|
object FullStackTraceActivityFingerprint : MethodFingerprint(
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("FullStackTraceActivity;") && it.name == "onCreate" }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("FullStackTraceActivity;") && methodDef.name == "onCreate" }
|
||||||
)
|
)
|
||||||
|
@ -15,11 +15,11 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.misc.sharebuttonhook.fingerprints.ConnectionTrackerFingerprint
|
import app.revanced.patches.music.misc.sharebuttonhook.fingerprints.ConnectionTrackerFingerprint
|
||||||
import app.revanced.patches.music.misc.sharebuttonhook.fingerprints.FullStackTraceActivityFingerprint
|
import app.revanced.patches.music.misc.sharebuttonhook.fingerprints.FullStackTraceActivityFingerprint
|
||||||
import app.revanced.patches.music.misc.sharebuttonhook.fingerprints.SharePanelFingerprint
|
import app.revanced.patches.music.misc.sharebuttonhook.fingerprints.SharePanelFingerprint
|
||||||
import app.revanced.patches.music.misc.sharebuttonhook.fingerprints.ShowToastFingerprint
|
import app.revanced.patches.music.misc.sharebuttonhook.fingerprints.ShowToastFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.patches.music.utils.videoid.patch.VideoIdPatch
|
import app.revanced.patches.music.utils.videoid.patch.VideoIdPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
|
@ -14,5 +14,5 @@ object MusicPlaybackControlsFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.RETURN_VOID
|
Opcode.RETURN_VOID
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("MusicPlaybackControls;") }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("MusicPlaybackControls;") }
|
||||||
)
|
)
|
||||||
|
@ -18,6 +18,10 @@ object ShuffleClassFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.RETURN_VOID
|
Opcode.RETURN_VOID
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.name == "<init>" && it.isWideLiteralExists(DisabledIconAlpha) }
|
customFingerprint = { methodDef, _ ->
|
||||||
|
methodDef.name == "<init>" && methodDef.isWideLiteralExists(
|
||||||
|
DisabledIconAlpha
|
||||||
|
)
|
||||||
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -19,10 +19,10 @@ import app.revanced.patcher.util.TypeUtil.traverseClassHierarchy
|
|||||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableField.Companion.toMutable
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableField.Companion.toMutable
|
||||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod.Companion.toMutable
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod.Companion.toMutable
|
||||||
import app.revanced.patcher.util.smali.toInstructions
|
import app.revanced.patcher.util.smali.toInstructions
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.misc.shuffle.fingerprints.MusicPlaybackControlsFingerprint
|
import app.revanced.patches.music.misc.shuffle.fingerprints.MusicPlaybackControlsFingerprint
|
||||||
import app.revanced.patches.music.misc.shuffle.fingerprints.ShuffleClassFingerprint
|
import app.revanced.patches.music.misc.shuffle.fingerprints.ShuffleClassFingerprint
|
||||||
import app.revanced.patches.music.misc.shuffle.fingerprints.ShuffleClassReferenceFingerprint
|
import app.revanced.patches.music.misc.shuffle.fingerprints.ShuffleClassReferenceFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.music.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.enum.CategoryType
|
import app.revanced.util.enum.CategoryType
|
||||||
|
@ -11,8 +11,8 @@ import app.revanced.patcher.patch.BytecodePatch
|
|||||||
import app.revanced.patcher.patch.PatchResult
|
import app.revanced.patcher.patch.PatchResult
|
||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.misc.tastebuilder.fingerprints.TasteBuilderConstructorFingerprint
|
import app.revanced.patches.music.misc.tastebuilder.fingerprints.TasteBuilderConstructorFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import org.jf.dexlib2.iface.instruction.TwoRegisterInstruction
|
import org.jf.dexlib2.iface.instruction.TwoRegisterInstruction
|
||||||
|
|
||||||
@Patch
|
@Patch
|
||||||
|
@ -16,6 +16,6 @@ object NotifierShelfFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_STATIC,
|
Opcode.INVOKE_STATIC,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(MusicNotifierShelf) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(MusicNotifierShelf) }
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -13,5 +13,9 @@ object PivotBarConstructorFingerprint : MethodFingerprint(
|
|||||||
Opcode.IPUT_OBJECT,
|
Opcode.IPUT_OBJECT,
|
||||||
Opcode.RETURN_VOID
|
Opcode.RETURN_VOID
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.name == "<init>" && it.isNarrowLiteralExists(117501096) }
|
customFingerprint = { methodDef, _ ->
|
||||||
|
methodDef.name == "<init>" && methodDef.isNarrowLiteralExists(
|
||||||
|
117501096
|
||||||
|
)
|
||||||
|
}
|
||||||
)
|
)
|
@ -14,9 +14,9 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
|
||||||
import app.revanced.patches.music.misc.upgradebutton.fingerprints.NotifierShelfFingerprint
|
import app.revanced.patches.music.misc.upgradebutton.fingerprints.NotifierShelfFingerprint
|
||||||
import app.revanced.patches.music.misc.upgradebutton.fingerprints.PivotBarConstructorFingerprint
|
import app.revanced.patches.music.misc.upgradebutton.fingerprints.PivotBarConstructorFingerprint
|
||||||
|
import app.revanced.patches.music.utils.annotations.MusicCompatibility
|
||||||
import app.revanced.patches.music.utils.integrations.patch.IntegrationsPatch
|
import app.revanced.patches.music.utils.integrations.patch.IntegrationsPatch
|
||||||
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.music.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||||
|
@ -19,5 +19,5 @@ object PreferenceFingerprint : MethodFingerprint(
|
|||||||
Opcode.IGET_OBJECT,
|
Opcode.IGET_OBJECT,
|
||||||
Opcode.INVOKE_INTERFACE
|
Opcode.INVOKE_INTERFACE
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.definingClass == "Landroidx/preference/Preference;" }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass == "Landroidx/preference/Preference;" }
|
||||||
)
|
)
|
@ -12,5 +12,5 @@ object SettingsHeadersFragmentFingerprint : MethodFingerprint(
|
|||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
|
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("/SettingsHeadersFragment;") && it.name == "onCreate" }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("/SettingsHeadersFragment;") && methodDef.name == "onCreate" }
|
||||||
)
|
)
|
@ -12,5 +12,5 @@ object VideoIdFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_INTERFACE,
|
Opcode.INVOKE_INTERFACE,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("SubtitlesOverlayPresenter;") && it.name == "handleVideoStageEvent" }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("SubtitlesOverlayPresenter;") && methodDef.name == "handleVideoStageEvent" }
|
||||||
)
|
)
|
||||||
|
@ -7,5 +7,5 @@ import org.jf.dexlib2.AccessFlags
|
|||||||
object HideCommentAdsFingerprint : MethodFingerprint(
|
object HideCommentAdsFingerprint : MethodFingerprint(
|
||||||
returnType = "Ljava/lang/Object;",
|
returnType = "Ljava/lang/Object;",
|
||||||
accessFlags = AccessFlags.PUBLIC or AccessFlags.FINAL,
|
accessFlags = AccessFlags.PUBLIC or AccessFlags.FINAL,
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("RedditCommentsPageAdRepository;") },
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("RedditCommentsPageAdRepository;") },
|
||||||
)
|
)
|
@ -16,5 +16,5 @@ object ScreenNavigatorFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_STATIC
|
Opcode.INVOKE_STATIC
|
||||||
),
|
),
|
||||||
strings = listOf("uri", "android.intent.action.VIEW"),
|
strings = listOf("uri", "android.intent.action.VIEW"),
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("/RedditScreenNavigator;") }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("/RedditScreenNavigator;") }
|
||||||
)
|
)
|
@ -140,9 +140,9 @@ class ComponentParserPatch : BytecodePatch(
|
|||||||
sget-object v$freeRegister, $definingClass->buffer:Ljava/nio/ByteBuffer;
|
sget-object v$freeRegister, $definingClass->buffer:Ljava/nio/ByteBuffer;
|
||||||
invoke-static {v$stringBuilderRegister, v$identifierRegister, v$objectRegister, v$freeRegister}, $descriptor(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/Object;Ljava/nio/ByteBuffer;)Z
|
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
|
move-result v$freeRegister
|
||||||
if-eqz v$freeRegister, :not_an_ad
|
if-eqz v$freeRegister, :unfiltered
|
||||||
""" + emptyComponentLabel,
|
""" + emptyComponentLabel,
|
||||||
ExternalLabel("not_an_ad", getInstruction(insertIndex))
|
ExternalLabel("unfiltered", getInstruction(insertIndex))
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -156,9 +156,9 @@ class ComponentParserPatch : BytecodePatch(
|
|||||||
"""
|
"""
|
||||||
invoke-static {v$stringBuilderRegister, v$identifierRegister}, $descriptor(Ljava/lang/StringBuilder;Ljava/lang/String;)Z
|
invoke-static {v$stringBuilderRegister, v$identifierRegister}, $descriptor(Ljava/lang/StringBuilder;Ljava/lang/String;)Z
|
||||||
move-result v$freeRegister
|
move-result v$freeRegister
|
||||||
if-eqz v$freeRegister, :not_an_ad
|
if-eqz v$freeRegister, :unfiltered
|
||||||
""" + emptyComponentLabel,
|
""" + emptyComponentLabel,
|
||||||
ExternalLabel("not_an_ad", getInstruction(insertIndex))
|
ExternalLabel("unfiltered", getInstruction(insertIndex))
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -173,8 +173,8 @@ class ComponentParserPatch : BytecodePatch(
|
|||||||
sget-object v1, $definingClass->buffer:Ljava/nio/ByteBuffer;
|
sget-object v1, $definingClass->buffer:Ljava/nio/ByteBuffer;
|
||||||
invoke-static {v0, v1}, $descriptor(Ljava/lang/Object;Ljava/nio/ByteBuffer;)Z
|
invoke-static {v0, v1}, $descriptor(Ljava/lang/Object;Ljava/nio/ByteBuffer;)Z
|
||||||
move-result v0
|
move-result v0
|
||||||
if-eqz v0, :not_an_ad
|
if-eqz v0, :unfiltered
|
||||||
""" + emptyComponentLabel, ExternalLabel("not_an_ad", getInstruction(0))
|
""" + emptyComponentLabel, ExternalLabel("unfiltered", getInstruction(0))
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,8 +14,11 @@ import app.revanced.patcher.patch.annotations.Patch
|
|||||||
import app.revanced.patches.youtube.ads.general.bytecode.patch.GeneralAdsBytecodePatch
|
import app.revanced.patches.youtube.ads.general.bytecode.patch.GeneralAdsBytecodePatch
|
||||||
import app.revanced.patches.youtube.ads.getpremium.patch.HideGetPremiumPatch
|
import app.revanced.patches.youtube.ads.getpremium.patch.HideGetPremiumPatch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
|
import app.revanced.patches.youtube.utils.fix.doublebacktoclose.patch.DoubleBackToClosePatch
|
||||||
|
import app.revanced.patches.youtube.utils.fix.swiperefresh.patch.SwipeRefreshPatch
|
||||||
import app.revanced.patches.youtube.utils.litho.patch.LithoFilterPatch
|
import app.revanced.patches.youtube.utils.litho.patch.LithoFilterPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
|
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||||
import app.revanced.util.resources.ResourceUtils.copyXmlNode
|
import app.revanced.util.resources.ResourceUtils.copyXmlNode
|
||||||
import org.w3c.dom.Element
|
import org.w3c.dom.Element
|
||||||
|
|
||||||
@ -24,10 +27,12 @@ import org.w3c.dom.Element
|
|||||||
@Description("Removes general ads.")
|
@Description("Removes general ads.")
|
||||||
@DependsOn(
|
@DependsOn(
|
||||||
[
|
[
|
||||||
|
DoubleBackToClosePatch::class,
|
||||||
GeneralAdsBytecodePatch::class,
|
GeneralAdsBytecodePatch::class,
|
||||||
HideGetPremiumPatch::class,
|
HideGetPremiumPatch::class,
|
||||||
LithoFilterPatch::class,
|
LithoFilterPatch::class,
|
||||||
SettingsPatch::class
|
SettingsPatch::class,
|
||||||
|
SwipeRefreshPatch::class
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
@YouTubeCompatibility
|
@YouTubeCompatibility
|
||||||
@ -55,6 +60,8 @@ class GeneralAdsPatch : ResourcePatch {
|
|||||||
)
|
)
|
||||||
|
|
||||||
override fun execute(context: ResourceContext): PatchResult {
|
override fun execute(context: ResourceContext): PatchResult {
|
||||||
|
LithoFilterPatch.addFilter("$PATCHES_PATH/ads/AdsFilter;")
|
||||||
|
|
||||||
context.forEach {
|
context.forEach {
|
||||||
|
|
||||||
if (!it.name.startsWithAny(*resourceFileNames)) return@forEach
|
if (!it.name.startsWithAny(*resourceFileNames)) return@forEach
|
||||||
@ -90,7 +97,7 @@ class GeneralAdsPatch : ResourcePatch {
|
|||||||
*/
|
*/
|
||||||
context.copyXmlNode("youtube/doubleback/host", "values/arrays.xml", "resources")
|
context.copyXmlNode("youtube/doubleback/host", "values/arrays.xml", "resources")
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* Add settings
|
* Add settings
|
||||||
*/
|
*/
|
||||||
SettingsPatch.addPreference(
|
SettingsPatch.addPreference(
|
||||||
@ -98,17 +105,7 @@ class GeneralAdsPatch : ResourcePatch {
|
|||||||
"PREFERENCE: ADS_SETTINGS",
|
"PREFERENCE: ADS_SETTINGS",
|
||||||
"SETTINGS: HIDE_GENERAL_ADS",
|
"SETTINGS: HIDE_GENERAL_ADS",
|
||||||
|
|
||||||
"PREFERENCE: GENERAL_SETTINGS",
|
"SETTINGS: DOUBLE_BACK_TIMEOUT"
|
||||||
"SETTINGS: HIDE_GENERAL_ADS",
|
|
||||||
|
|
||||||
"PREFERENCE: GENERAL_SETTINGS",
|
|
||||||
"PREFERENCE_HEADER: PLAYER",
|
|
||||||
"SETTINGS: HIDE_AUDIO_TRACK_BUTTON",
|
|
||||||
"SETTINGS: HIDE_VIEW_PRODUCT",
|
|
||||||
"SETTINGS: DOUBLE_BACK_TIMEOUT",
|
|
||||||
|
|
||||||
"PREFERENCE: BOTTOM_PLAYER_SETTINGS",
|
|
||||||
"SETTINGS: COMMENT_COMPONENT_PARENT"
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -15,5 +15,5 @@ object CompactYpcOfferModuleViewFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.RETURN_VOID
|
Opcode.RETURN_VOID
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("CompactYpcOfferModuleView;") && it.name == "onMeasure" }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("CompactYpcOfferModuleView;") && methodDef.name == "onMeasure" }
|
||||||
)
|
)
|
@ -11,7 +11,9 @@ import app.revanced.patcher.patch.annotations.DependsOn
|
|||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.ads.general.bytecode.patch.GeneralAdsBytecodePatch
|
import app.revanced.patches.youtube.ads.general.bytecode.patch.GeneralAdsBytecodePatch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
|
import app.revanced.patches.youtube.utils.litho.patch.LithoFilterPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
|
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||||
|
|
||||||
@Patch
|
@Patch
|
||||||
@Name("hide-comment-component")
|
@Name("hide-comment-component")
|
||||||
@ -26,6 +28,7 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
|||||||
@Version("0.0.1")
|
@Version("0.0.1")
|
||||||
class CommentComponentPatch : ResourcePatch {
|
class CommentComponentPatch : ResourcePatch {
|
||||||
override fun execute(context: ResourceContext): PatchResult {
|
override fun execute(context: ResourceContext): PatchResult {
|
||||||
|
LithoFilterPatch.addFilter("$PATCHES_PATH/ads/CommentsFilter;")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add settings
|
* Add settings
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package app.revanced.patches.youtube.flyoutpanel.flyoutpanel.patch
|
package app.revanced.patches.youtube.flyoutpanel.general.patch
|
||||||
|
|
||||||
import app.revanced.patcher.annotation.Description
|
import app.revanced.patcher.annotation.Description
|
||||||
import app.revanced.patcher.annotation.Name
|
import app.revanced.patcher.annotation.Name
|
||||||
@ -9,16 +9,17 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.ResourcePatch
|
import app.revanced.patcher.patch.ResourcePatch
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.ads.general.resource.patch.GeneralAdsPatch
|
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
|
import app.revanced.patches.youtube.utils.litho.patch.LithoFilterPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
|
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||||
|
|
||||||
@Patch
|
@Patch
|
||||||
@Name("hide-flyout-panel")
|
@Name("hide-flyout-panel")
|
||||||
@Description("Adds options to hide player settings flyout panel.")
|
@Description("Adds options to hide player settings flyout panel.")
|
||||||
@DependsOn(
|
@DependsOn(
|
||||||
[
|
[
|
||||||
GeneralAdsPatch::class,
|
LithoFilterPatch::class,
|
||||||
SettingsPatch::class
|
SettingsPatch::class
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
@ -26,6 +27,7 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
|||||||
@Version("0.0.1")
|
@Version("0.0.1")
|
||||||
class FlyoutPanelPatch : ResourcePatch {
|
class FlyoutPanelPatch : ResourcePatch {
|
||||||
override fun execute(context: ResourceContext): PatchResult {
|
override fun execute(context: ResourceContext): PatchResult {
|
||||||
|
LithoFilterPatch.addFilter("$PATCHES_PATH/ads/FlyoutPanelsFilter;")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add settings
|
* Add settings
|
@ -22,5 +22,5 @@ object QualityMenuViewInflateFingerprint : MethodFingerprint(
|
|||||||
Opcode.MOVE_RESULT_OBJECT,
|
Opcode.MOVE_RESULT_OBJECT,
|
||||||
Opcode.CHECK_CAST
|
Opcode.CHECK_CAST
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(VideoQualityBottomSheet) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(VideoQualityBottomSheet) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.flyoutpanel.oldqualitylayout.fingerprints.QualityMenuViewInflateFingerprint
|
import app.revanced.patches.youtube.flyoutpanel.oldqualitylayout.fingerprints.QualityMenuViewInflateFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.FLYOUT_PANEL
|
import app.revanced.util.integrations.Constants.FLYOUT_PANEL
|
||||||
|
@ -13,18 +13,16 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.youtube.utils.fingerprints.LayoutConstructorFingerprint
|
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
|
import app.revanced.patches.youtube.utils.fingerprints.LayoutConstructorFingerprint
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch.Companion.AutoNavPreviewStub
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch.Companion.AutoNavPreviewStub
|
||||||
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch.Companion.AutoNavToggle
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.bytecode.getStringIndex
|
import app.revanced.util.bytecode.getStringIndex
|
||||||
import app.revanced.util.bytecode.getWideLiteralIndex
|
import app.revanced.util.bytecode.getWideLiteralIndex
|
||||||
import app.revanced.util.integrations.Constants.FULLSCREEN
|
import app.revanced.util.integrations.Constants.FULLSCREEN
|
||||||
import org.jf.dexlib2.iface.instruction.Instruction
|
|
||||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||||
import org.jf.dexlib2.iface.instruction.ReferenceInstruction
|
|
||||||
import org.jf.dexlib2.iface.reference.FieldReference
|
|
||||||
|
|
||||||
@Patch
|
@Patch
|
||||||
@Name("hide-autoplay-preview")
|
@Name("hide-autoplay-preview")
|
||||||
@ -43,26 +41,17 @@ class HideAutoplayPreviewPatch : BytecodePatch(
|
|||||||
override fun execute(context: BytecodeContext): PatchResult {
|
override fun execute(context: BytecodeContext): PatchResult {
|
||||||
LayoutConstructorFingerprint.result?.let {
|
LayoutConstructorFingerprint.result?.let {
|
||||||
it.mutableMethod.apply {
|
it.mutableMethod.apply {
|
||||||
val insertInstruction = implementation!!.instructions
|
|
||||||
|
|
||||||
val dummyRegister =
|
val dummyRegister =
|
||||||
getInstruction<OneRegisterInstruction>(getStringIndex("1.0x")).registerA
|
getInstruction<OneRegisterInstruction>(getStringIndex("1.0x")).registerA
|
||||||
val insertIndex = getWideLiteralIndex(AutoNavPreviewStub)
|
val insertIndex = getWideLiteralIndex(AutoNavPreviewStub)
|
||||||
|
val jumpIndex = getWideLiteralIndex(AutoNavToggle) - 1
|
||||||
val branchIndex =
|
|
||||||
insertInstruction.subList(insertIndex + 1, insertInstruction.size - 1)
|
|
||||||
.indexOfFirst { instruction ->
|
|
||||||
((instruction as? ReferenceInstruction)?.reference as? FieldReference)?.type == "Lcom/google/android/apps/youtube/app/player/autonav/AutonavToggleController;"
|
|
||||||
} + 1
|
|
||||||
|
|
||||||
val jumpInstruction = getInstruction<Instruction>(insertIndex + branchIndex)
|
|
||||||
|
|
||||||
addInstructionsWithLabels(
|
addInstructionsWithLabels(
|
||||||
insertIndex, """
|
insertIndex, """
|
||||||
invoke-static {}, $FULLSCREEN->hideAutoPlayPreview()Z
|
invoke-static {}, $FULLSCREEN->hideAutoPlayPreview()Z
|
||||||
move-result v$dummyRegister
|
move-result v$dummyRegister
|
||||||
if-nez v$dummyRegister, :hidden
|
if-nez v$dummyRegister, :hidden
|
||||||
""", ExternalLabel("hidden", jumpInstruction)
|
""", ExternalLabel("hidden", getInstruction(jumpIndex))
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
} ?: return LayoutConstructorFingerprint.toErrorResult()
|
} ?: return LayoutConstructorFingerprint.toErrorResult()
|
||||||
|
@ -15,7 +15,7 @@ import app.revanced.patcher.patch.annotations.DependsOn
|
|||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.fullscreen.compactcontrolsoverlay.fingerprints.YouTubeControlsOverlayFingerprint
|
import app.revanced.patches.youtube.utils.fingerprints.YouTubeControlsOverlayFingerprint
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.FULLSCREEN
|
import app.revanced.util.integrations.Constants.FULLSCREEN
|
||||||
|
@ -6,5 +6,5 @@ import app.revanced.util.bytecode.isWideLiteralExists
|
|||||||
|
|
||||||
object EndScreenResultsFingerprint : MethodFingerprint(
|
object EndScreenResultsFingerprint : MethodFingerprint(
|
||||||
returnType = "V",
|
returnType = "V",
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(AppRelatedEndScreenResults) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(AppRelatedEndScreenResults) }
|
||||||
)
|
)
|
@ -13,8 +13,8 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.fullscreen.endscreenoverlay.fingerprints.EndScreenResultsFingerprint
|
import app.revanced.patches.youtube.fullscreen.endscreenoverlay.fingerprints.EndScreenResultsFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.FULLSCREEN
|
import app.revanced.util.integrations.Constants.FULLSCREEN
|
||||||
|
@ -6,8 +6,9 @@ import app.revanced.util.bytecode.isWideLiteralExists
|
|||||||
|
|
||||||
object FullscreenEngagementPanelFingerprint : MethodFingerprint(
|
object FullscreenEngagementPanelFingerprint : MethodFingerprint(
|
||||||
returnType = "L",
|
returnType = "L",
|
||||||
customFingerprint = { it, _ ->
|
parameters = listOf("L"),
|
||||||
it.definingClass.endsWith("FullscreenEngagementPanelOverlay;") && it.isWideLiteralExists(
|
customFingerprint = { methodDef, _ ->
|
||||||
|
methodDef.isWideLiteralExists(
|
||||||
FullScreenEngagementPanel
|
FullScreenEngagementPanel
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -12,5 +12,5 @@ object FullscreenViewAdderFingerprint : MethodFingerprint(
|
|||||||
Opcode.CONST_4,
|
Opcode.CONST_4,
|
||||||
Opcode.INVOKE_VIRTUAL
|
Opcode.INVOKE_VIRTUAL
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("FullscreenEngagementPanelOverlay;") }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("FullscreenEngagementPanelOverlay;") }
|
||||||
)
|
)
|
@ -16,10 +16,10 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.youtube.utils.fingerprints.LayoutConstructorFingerprint
|
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.fullscreen.fullscreenpanels.fingerprints.FullscreenEngagementPanelFingerprint
|
import app.revanced.patches.youtube.fullscreen.fullscreenpanels.fingerprints.FullscreenEngagementPanelFingerprint
|
||||||
import app.revanced.patches.youtube.fullscreen.fullscreenpanels.fingerprints.FullscreenViewAdderFingerprint
|
import app.revanced.patches.youtube.fullscreen.fullscreenpanels.fingerprints.FullscreenViewAdderFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
|
import app.revanced.patches.youtube.utils.fingerprints.LayoutConstructorFingerprint
|
||||||
import app.revanced.patches.youtube.utils.quickactionscontainer.patch.HideQuickActionsContainerPatch
|
import app.revanced.patches.youtube.utils.quickactionscontainer.patch.HideQuickActionsContainerPatch
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch.Companion.FullScreenEngagementPanel
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch.Companion.FullScreenEngagementPanel
|
||||||
|
@ -13,5 +13,5 @@ object OrientationPrimaryFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_STATIC,
|
Opcode.INVOKE_STATIC,
|
||||||
Opcode.MOVE_RESULT
|
Opcode.MOVE_RESULT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.name == "<init>" }
|
customFingerprint = { methodDef, _ -> methodDef.name == "<init>" }
|
||||||
)
|
)
|
@ -14,10 +14,10 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.fullscreen.landscapemode.fingerprints.OrientationParentFingerprint
|
import app.revanced.patches.youtube.fullscreen.landscapemode.fingerprints.OrientationParentFingerprint
|
||||||
import app.revanced.patches.youtube.fullscreen.landscapemode.fingerprints.OrientationPrimaryFingerprint
|
import app.revanced.patches.youtube.fullscreen.landscapemode.fingerprints.OrientationPrimaryFingerprint
|
||||||
import app.revanced.patches.youtube.fullscreen.landscapemode.fingerprints.OrientationSecondaryFingerprint
|
import app.revanced.patches.youtube.fullscreen.landscapemode.fingerprints.OrientationSecondaryFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.FULLSCREEN
|
import app.revanced.util.integrations.Constants.FULLSCREEN
|
||||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||||
|
@ -9,17 +9,18 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.ResourcePatch
|
import app.revanced.patcher.patch.ResourcePatch
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.ads.general.resource.patch.GeneralAdsPatch
|
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
|
import app.revanced.patches.youtube.utils.litho.patch.LithoFilterPatch
|
||||||
import app.revanced.patches.youtube.utils.quickactionscontainer.patch.HideQuickActionsContainerPatch
|
import app.revanced.patches.youtube.utils.quickactionscontainer.patch.HideQuickActionsContainerPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
|
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||||
|
|
||||||
@Patch
|
@Patch
|
||||||
@Name("hide-quick-actions")
|
@Name("hide-quick-actions")
|
||||||
@Description("Adds the options to hide quick actions components in the fullscreen.")
|
@Description("Adds the options to hide quick actions components in the fullscreen.")
|
||||||
@DependsOn(
|
@DependsOn(
|
||||||
[
|
[
|
||||||
GeneralAdsPatch::class,
|
LithoFilterPatch::class,
|
||||||
HideQuickActionsContainerPatch::class,
|
HideQuickActionsContainerPatch::class,
|
||||||
SettingsPatch::class
|
SettingsPatch::class
|
||||||
]
|
]
|
||||||
@ -28,6 +29,7 @@ import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
|||||||
@Version("0.0.1")
|
@Version("0.0.1")
|
||||||
class QuickActionsPatch : ResourcePatch {
|
class QuickActionsPatch : ResourcePatch {
|
||||||
override fun execute(context: ResourceContext): PatchResult {
|
override fun execute(context: ResourceContext): PatchResult {
|
||||||
|
LithoFilterPatch.addFilter("$PATCHES_PATH/ads/QuickActionButtonsFilter;")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add settings
|
* Add settings
|
||||||
|
@ -12,5 +12,5 @@ object AccountMenuParentFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(CompactLink) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(CompactLink) }
|
||||||
)
|
)
|
@ -13,9 +13,9 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.accountmenu.fingerprints.AccountMenuFingerprint
|
import app.revanced.patches.youtube.general.accountmenu.fingerprints.AccountMenuFingerprint
|
||||||
import app.revanced.patches.youtube.general.accountmenu.fingerprints.AccountMenuParentFingerprint
|
import app.revanced.patches.youtube.general.accountmenu.fingerprints.AccountMenuParentFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
@ -15,11 +15,12 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.youtube.utils.fingerprints.SubtitleButtonControllerFingerprint
|
|
||||||
import app.revanced.patches.shared.fingerprints.captions.SubtitleTrackFingerprint
|
import app.revanced.patches.shared.fingerprints.captions.SubtitleTrackFingerprint
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.autocaptions.fingerprints.StartVideoInformerFingerprint
|
import app.revanced.patches.youtube.general.autocaptions.fingerprints.StartVideoInformerFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
|
import app.revanced.patches.youtube.utils.fingerprints.SubtitleButtonControllerFingerprint
|
||||||
import app.revanced.patches.youtube.utils.playertype.patch.PlayerTypeHookPatch
|
import app.revanced.patches.youtube.utils.playertype.patch.PlayerTypeHookPatch
|
||||||
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
|
||||||
@ -29,7 +30,8 @@ import app.revanced.util.integrations.Constants.GENERAL
|
|||||||
@DependsOn(
|
@DependsOn(
|
||||||
[
|
[
|
||||||
PlayerTypeHookPatch::class,
|
PlayerTypeHookPatch::class,
|
||||||
SettingsPatch::class
|
SettingsPatch::class,
|
||||||
|
SharedResourceIdPatch::class
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
@YouTubeCompatibility
|
@YouTubeCompatibility
|
||||||
|
@ -13,8 +13,8 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.autopopuppanels.fingerprints.EngagementPanelControllerFingerprint
|
import app.revanced.patches.youtube.general.autopopuppanels.fingerprints.EngagementPanelControllerFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
|
||||||
|
@ -12,5 +12,5 @@ object FilterBarHeightFingerprint : MethodFingerprint(
|
|||||||
Opcode.MOVE_RESULT,
|
Opcode.MOVE_RESULT,
|
||||||
Opcode.IPUT
|
Opcode.IPUT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(FilterBarHeight) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(FilterBarHeight) }
|
||||||
)
|
)
|
@ -11,5 +11,5 @@ object RelatedChipCloudFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(RelatedChipCloudMargin) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(RelatedChipCloudMargin) }
|
||||||
)
|
)
|
@ -13,5 +13,5 @@ object SearchResultsChipBarFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(BarContainerHeight) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(BarContainerHeight) }
|
||||||
)
|
)
|
@ -13,10 +13,10 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.categorybar.fingerprints.FilterBarHeightFingerprint
|
import app.revanced.patches.youtube.general.categorybar.fingerprints.FilterBarHeightFingerprint
|
||||||
import app.revanced.patches.youtube.general.categorybar.fingerprints.RelatedChipCloudFingerprint
|
import app.revanced.patches.youtube.general.categorybar.fingerprints.RelatedChipCloudFingerprint
|
||||||
import app.revanced.patches.youtube.general.categorybar.fingerprints.SearchResultsChipBarFingerprint
|
import app.revanced.patches.youtube.general.categorybar.fingerprints.SearchResultsChipBarFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
@ -12,5 +12,5 @@ object ChannelListSubMenuFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(ChannelListSubMenu) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(ChannelListSubMenu) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.channellistsubmenu.fingerprints.ChannelListSubMenuFingerprint
|
import app.revanced.patches.youtube.general.channellistsubmenu.fingerprints.ChannelListSubMenuFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
@ -11,5 +11,5 @@ object CrowdfundingBoxFingerprint : MethodFingerprint(
|
|||||||
Opcode.MOVE_RESULT_OBJECT,
|
Opcode.MOVE_RESULT_OBJECT,
|
||||||
Opcode.IPUT_OBJECT
|
Opcode.IPUT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(DonationCompanion) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(DonationCompanion) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.crowdfundingbox.fingerprints.CrowdfundingBoxFingerprint
|
import app.revanced.patches.youtube.general.crowdfundingbox.fingerprints.CrowdfundingBoxFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
@ -11,5 +11,5 @@ object FloatingMicrophoneFingerprint : MethodFingerprint(
|
|||||||
Opcode.IF_EQZ,
|
Opcode.IF_EQZ,
|
||||||
Opcode.RETURN_VOID
|
Opcode.RETURN_VOID
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(Fab) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(Fab) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.floatingmicrophone.fingerprints.FloatingMicrophoneFingerprint
|
import app.revanced.patches.youtube.general.floatingmicrophone.fingerprints.FloatingMicrophoneFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
@ -0,0 +1,54 @@
|
|||||||
|
package app.revanced.patches.youtube.general.layout.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.patcher.patch.annotations.Patch
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
|
import app.revanced.patches.youtube.utils.litho.patch.LithoFilterPatch
|
||||||
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
|
import app.revanced.util.integrations.Constants.PATCHES_PATH
|
||||||
|
|
||||||
|
@Patch
|
||||||
|
@Name("hide-layout-components")
|
||||||
|
@Description("Hides general layout components.")
|
||||||
|
@DependsOn(
|
||||||
|
[
|
||||||
|
LithoFilterPatch::class,
|
||||||
|
SettingsPatch::class
|
||||||
|
]
|
||||||
|
)
|
||||||
|
@YouTubeCompatibility
|
||||||
|
@Version("0.0.1")
|
||||||
|
class LayoutComponentsPatch : ResourcePatch {
|
||||||
|
override fun execute(context: ResourceContext): PatchResult {
|
||||||
|
LithoFilterPatch.addFilter("$PATCHES_PATH/ads/CommunityPostFilter;")
|
||||||
|
LithoFilterPatch.addFilter("$PATCHES_PATH/ads/LayoutComponentsFilter;")
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add settings
|
||||||
|
*/
|
||||||
|
SettingsPatch.addPreference(
|
||||||
|
arrayOf(
|
||||||
|
"PREFERENCE: BOTTOM_PLAYER_SETTINGS",
|
||||||
|
"PREFERENCE: GENERAL_SETTINGS",
|
||||||
|
"PREFERENCE: PLAYER",
|
||||||
|
|
||||||
|
"SETTINGS: COMMENT_COMPONENT_PARENT",
|
||||||
|
|
||||||
|
"SETTINGS: HIDE_AUDIO_TRACK_BUTTON",
|
||||||
|
"SETTINGS: HIDE_LAYOUT_COMPONENTS",
|
||||||
|
"SETTINGS: HIDE_VIEW_PRODUCT"
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
SettingsPatch.updatePatchStatus("hide-layout-components")
|
||||||
|
|
||||||
|
return PatchResultSuccess()
|
||||||
|
}
|
||||||
|
}
|
@ -12,5 +12,5 @@ object LoadMoreButtonFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_STATIC,
|
Opcode.INVOKE_STATIC,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(ExpandButtonDown) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(ExpandButtonDown) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.loadmorebutton.fingerprints.LoadMoreButtonFingerprint
|
import app.revanced.patches.youtube.general.loadmorebutton.fingerprints.LoadMoreButtonFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
@ -11,5 +11,5 @@ object BottomPanelOverlayTextFingerprint : MethodFingerprint(
|
|||||||
Opcode.MOVE_RESULT_OBJECT,
|
Opcode.MOVE_RESULT_OBJECT,
|
||||||
Opcode.IPUT_OBJECT
|
Opcode.IPUT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(BottomPanelOverlayText) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(BottomPanelOverlayText) }
|
||||||
)
|
)
|
@ -15,8 +15,8 @@ import app.revanced.patcher.patch.annotations.DependsOn
|
|||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.shared.fingerprints.litho.EmptyComponentBuilderFingerprint
|
import app.revanced.patches.shared.fingerprints.litho.EmptyComponentBuilderFingerprint
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.mixplaylists.fingerprints.BottomPanelOverlayTextFingerprint
|
import app.revanced.patches.youtube.general.mixplaylists.fingerprints.BottomPanelOverlayTextFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.bytecode.getStringIndex
|
import app.revanced.util.bytecode.getStringIndex
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
@ -15,5 +15,5 @@ object AccountSwitcherAccessibilityLabelFingerprint : MethodFingerprint(
|
|||||||
Opcode.APUT_OBJECT,
|
Opcode.APUT_OBJECT,
|
||||||
Opcode.CONST
|
Opcode.CONST
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(AccountSwitcherAccessibility) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(AccountSwitcherAccessibility) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.personalinformation.fingerprints.AccountSwitcherAccessibilityLabelFingerprint
|
import app.revanced.patches.youtube.general.personalinformation.fingerprints.AccountSwitcherAccessibilityLabelFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
|
||||||
|
@ -5,5 +5,5 @@ import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
|||||||
import app.revanced.util.bytecode.isWideLiteralExists
|
import app.revanced.util.bytecode.isWideLiteralExists
|
||||||
|
|
||||||
object SearchSuggestionEntryFingerprint : MethodFingerprint(
|
object SearchSuggestionEntryFingerprint : MethodFingerprint(
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(SearchSuggestionEntry) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(SearchSuggestionEntry) }
|
||||||
)
|
)
|
@ -13,10 +13,10 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.searchterms.fingerprints.SearchEndpointFingerprint
|
import app.revanced.patches.youtube.general.searchterms.fingerprints.SearchEndpointFingerprint
|
||||||
import app.revanced.patches.youtube.general.searchterms.fingerprints.SearchEndpointParentFingerprint
|
import app.revanced.patches.youtube.general.searchterms.fingerprints.SearchEndpointParentFingerprint
|
||||||
import app.revanced.patches.youtube.general.searchterms.fingerprints.SearchSuggestionEntryFingerprint
|
import app.revanced.patches.youtube.general.searchterms.fingerprints.SearchSuggestionEntryFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch.Companion.SearchSuggestionEntry
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch.Companion.SearchSuggestionEntry
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
|
@ -8,5 +8,5 @@ object HideSnackBarFingerprint : MethodFingerprint(
|
|||||||
returnType = "V",
|
returnType = "V",
|
||||||
accessFlags = AccessFlags.PUBLIC or AccessFlags.FINAL,
|
accessFlags = AccessFlags.PUBLIC or AccessFlags.FINAL,
|
||||||
parameters = listOf("L", "L"),
|
parameters = listOf("L", "L"),
|
||||||
customFingerprint = { it, _ -> it.definingClass.endsWith("BottomUiContainer;") }
|
customFingerprint = { methodDef, _ -> methodDef.definingClass.endsWith("BottomUiContainer;") }
|
||||||
)
|
)
|
@ -13,8 +13,8 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.smali.ExternalLabel
|
import app.revanced.patcher.util.smali.ExternalLabel
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.snackbar.fingerprints.HideSnackBarFingerprint
|
import app.revanced.patches.youtube.general.snackbar.fingerprints.HideSnackBarFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.integrations.Constants.GENERAL
|
import app.revanced.util.integrations.Constants.GENERAL
|
||||||
|
|
||||||
|
@ -12,5 +12,5 @@ object BreakingNewsFingerprint : MethodFingerprint(
|
|||||||
Opcode.INVOKE_VIRTUAL,
|
Opcode.INVOKE_VIRTUAL,
|
||||||
Opcode.MOVE_RESULT_OBJECT
|
Opcode.MOVE_RESULT_OBJECT
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(HorizontalCardList) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(HorizontalCardList) }
|
||||||
)
|
)
|
@ -12,8 +12,8 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.suggestions.fingerprints.BreakingNewsFingerprint
|
import app.revanced.patches.youtube.general.suggestions.fingerprints.BreakingNewsFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.litho.patch.LithoFilterPatch
|
import app.revanced.patches.youtube.utils.litho.patch.LithoFilterPatch
|
||||||
import app.revanced.patches.youtube.utils.navbarindex.patch.NavBarIndexPatch
|
import app.revanced.patches.youtube.utils.navbarindex.patch.NavBarIndexPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
|
@ -9,5 +9,5 @@ import org.jf.dexlib2.AccessFlags
|
|||||||
object MiniPlayerDimensionsCalculatorFingerprint : MethodFingerprint(
|
object MiniPlayerDimensionsCalculatorFingerprint : MethodFingerprint(
|
||||||
returnType = "V",
|
returnType = "V",
|
||||||
accessFlags = AccessFlags.PUBLIC or AccessFlags.FINAL,
|
accessFlags = AccessFlags.PUBLIC or AccessFlags.FINAL,
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(FloatyBarTopMargin) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(FloatyBarTopMargin) }
|
||||||
)
|
)
|
@ -16,11 +16,11 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.tabletminiplayer.fingerprints.MiniPlayerDimensionsCalculatorFingerprint
|
import app.revanced.patches.youtube.general.tabletminiplayer.fingerprints.MiniPlayerDimensionsCalculatorFingerprint
|
||||||
import app.revanced.patches.youtube.general.tabletminiplayer.fingerprints.MiniPlayerOverrideFingerprint
|
import app.revanced.patches.youtube.general.tabletminiplayer.fingerprints.MiniPlayerOverrideFingerprint
|
||||||
import app.revanced.patches.youtube.general.tabletminiplayer.fingerprints.MiniPlayerOverrideNoContextFingerprint
|
import app.revanced.patches.youtube.general.tabletminiplayer.fingerprints.MiniPlayerOverrideNoContextFingerprint
|
||||||
import app.revanced.patches.youtube.general.tabletminiplayer.fingerprints.MiniPlayerResponseModelSizeCheckFingerprint
|
import app.revanced.patches.youtube.general.tabletminiplayer.fingerprints.MiniPlayerResponseModelSizeCheckFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.bytecode.getStringIndex
|
import app.revanced.util.bytecode.getStringIndex
|
||||||
|
@ -14,5 +14,5 @@ object SetActionBarRingoFingerprint : MethodFingerprint(
|
|||||||
Opcode.IGET_OBJECT,
|
Opcode.IGET_OBJECT,
|
||||||
Opcode.INVOKE_STATIC
|
Opcode.INVOKE_STATIC
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(ActionBarRingo) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(ActionBarRingo) }
|
||||||
)
|
)
|
@ -13,5 +13,5 @@ object SetToolBarPaddingFingerprint : MethodFingerprint(
|
|||||||
Opcode.IGET_OBJECT,
|
Opcode.IGET_OBJECT,
|
||||||
Opcode.INVOKE_STATIC
|
Opcode.INVOKE_STATIC
|
||||||
),
|
),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(ToolBarPaddingHome) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(ToolBarPaddingHome) }
|
||||||
)
|
)
|
@ -14,9 +14,9 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.general.widesearchbar.fingerprints.SetActionBarRingoFingerprint
|
import app.revanced.patches.youtube.general.widesearchbar.fingerprints.SetActionBarRingoFingerprint
|
||||||
import app.revanced.patches.youtube.general.widesearchbar.fingerprints.SetToolBarPaddingFingerprint
|
import app.revanced.patches.youtube.general.widesearchbar.fingerprints.SetToolBarPaddingFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.patch.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch.Companion.contexts
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch.Companion.contexts
|
||||||
|
@ -9,9 +9,9 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.ResourcePatch
|
import app.revanced.patcher.patch.ResourcePatch
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.layout.theme.patch.GeneralThemePatch
|
import app.revanced.patches.youtube.layout.theme.patch.GeneralThemePatch
|
||||||
import app.revanced.patches.youtube.layout.theme.patch.GeneralThemePatch.Companion.isMonetPatchIncluded
|
import app.revanced.patches.youtube.layout.theme.patch.GeneralThemePatch.Companion.isMonetPatchIncluded
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.resources.ResourceHelper.updatePatchStatusTheme
|
import app.revanced.util.resources.ResourceHelper.updatePatchStatusTheme
|
||||||
import app.revanced.util.resources.ResourceUtils
|
import app.revanced.util.resources.ResourceUtils
|
||||||
|
@ -11,9 +11,9 @@ import app.revanced.patcher.patch.PatchResult
|
|||||||
import app.revanced.patcher.patch.PatchResultSuccess
|
import app.revanced.patcher.patch.PatchResultSuccess
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.layout.pipnotification.fingerprints.PrimaryPiPFingerprint
|
import app.revanced.patches.youtube.layout.pipnotification.fingerprints.PrimaryPiPFingerprint
|
||||||
import app.revanced.patches.youtube.layout.pipnotification.fingerprints.SecondaryPiPFingerprint
|
import app.revanced.patches.youtube.layout.pipnotification.fingerprints.SecondaryPiPFingerprint
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
|
|
||||||
@Patch
|
@Patch
|
||||||
|
@ -11,8 +11,8 @@ import app.revanced.patcher.patch.PatchResultSuccess
|
|||||||
import app.revanced.patcher.patch.ResourcePatch
|
import app.revanced.patcher.patch.ResourcePatch
|
||||||
import app.revanced.patcher.patch.annotations.DependsOn
|
import app.revanced.patcher.patch.annotations.DependsOn
|
||||||
import app.revanced.patcher.patch.annotations.Patch
|
import app.revanced.patcher.patch.annotations.Patch
|
||||||
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
|
||||||
import app.revanced.patches.youtube.layout.theme.patch.GeneralThemePatch.Companion.isMonetPatchIncluded
|
import app.revanced.patches.youtube.layout.theme.patch.GeneralThemePatch.Companion.isMonetPatchIncluded
|
||||||
|
import app.revanced.patches.youtube.utils.annotations.YouTubeCompatibility
|
||||||
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
import app.revanced.patches.youtube.utils.settings.resource.patch.SettingsPatch
|
||||||
import app.revanced.util.resources.ResourceHelper.updatePatchStatusTheme
|
import app.revanced.util.resources.ResourceHelper.updatePatchStatusTheme
|
||||||
import org.w3c.dom.Element
|
import org.w3c.dom.Element
|
||||||
|
@ -10,5 +10,5 @@ object TooltipContentViewFingerprint : MethodFingerprint(
|
|||||||
returnType = "V",
|
returnType = "V",
|
||||||
accessFlags = AccessFlags.PUBLIC or AccessFlags.FINAL,
|
accessFlags = AccessFlags.PUBLIC or AccessFlags.FINAL,
|
||||||
parameters = listOf("L"),
|
parameters = listOf("L"),
|
||||||
customFingerprint = { it, _ -> it.isWideLiteralExists(ToolTipContentView) }
|
customFingerprint = { methodDef, _ -> methodDef.isWideLiteralExists(ToolTipContentView) }
|
||||||
)
|
)
|
||||||
|
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