refactor: make patches compatible with the newest patcher

This commit is contained in:
Lucaskyy
2022-04-13 21:25:50 +02:00
parent 99099ea0bc
commit bc56555d9e
9 changed files with 85 additions and 24 deletions

View File

@ -2,11 +2,18 @@ package app.revanced.patches.layout
import app.revanced.patcher.cache.Cache
import app.revanced.patcher.patch.Patch
import app.revanced.patcher.patch.PatchMetadata
import app.revanced.patcher.patch.PatchResult
import app.revanced.patcher.patch.PatchResultSuccess
import app.revanced.patcher.smali.asInstruction
class CreateButtonRemover : Patch("create-button-remover") {
class CreateButtonRemover : Patch(
PatchMetadata(
"create-button-remover",
"TODO",
"TODO"
)
) {
override fun execute(cache: Cache): PatchResult {
val map = cache.methodMap["create-button-patch"]

View File

@ -2,11 +2,18 @@ package app.revanced.patches.layout
import app.revanced.patcher.cache.Cache
import app.revanced.patcher.patch.Patch
import app.revanced.patcher.patch.PatchMetadata
import app.revanced.patcher.patch.PatchResult
import app.revanced.patcher.patch.PatchResultSuccess
import app.revanced.patcher.smali.asInstruction
class HideReels : Patch("hide-reels") {
class HideReels : Patch(
PatchMetadata(
"hide-reels",
"TODO",
"TODO"
)
) {
override fun execute(cache: Cache): PatchResult {
val map = cache.methodMap["hide-reel-patch"]
val implementation = map.method.implementation!!

View File

@ -1,15 +1,13 @@
package app.revanced.patches.layout
import app.revanced.patcher.cache.Cache
import app.revanced.patcher.extensions.AccessFlagExtensions.Companion.or
import app.revanced.patcher.extensions.addInstructions
import app.revanced.patcher.extensions.or
import app.revanced.patcher.patch.Patch
import app.revanced.patcher.patch.PatchResult
import app.revanced.patcher.patch.PatchResultError
import app.revanced.patcher.patch.PatchResultSuccess
import app.revanced.patcher.patch.*
import app.revanced.patcher.proxy.mutableTypes.MutableMethod.Companion.toMutable
import app.revanced.patcher.signature.MethodSignature
import app.revanced.patcher.smali.asInstructions
import app.revanced.patches.SHARED_METADATA
import org.jf.dexlib2.AccessFlags
import org.jf.dexlib2.Opcode
import org.jf.dexlib2.builder.instruction.BuilderInstruction22c
@ -19,11 +17,18 @@ import org.jf.dexlib2.iface.instruction.formats.Instruction35c
import org.jf.dexlib2.immutable.ImmutableMethod
import org.jf.dexlib2.immutable.ImmutableMethodImplementation
class HideSuggestions : Patch("hide-suggestions") {
class HideSuggestions : Patch(
PatchMetadata(
"hide-suggestions",
"TODO",
"TODO"
)
) {
override fun execute(cache: Cache): PatchResult {
val map = cache.methodMap["hide-suggestions-patch"].findParentMethod(
MethodSignature(
"hide-suggestions-method",
SHARED_METADATA,
"V",
AccessFlags.PUBLIC or AccessFlags.FINAL,
listOf("Z"),

View File

@ -3,11 +3,18 @@ package app.revanced.patches.layout
import app.revanced.patcher.cache.Cache
import app.revanced.patcher.extensions.addInstructions
import app.revanced.patcher.patch.Patch
import app.revanced.patcher.patch.PatchMetadata
import app.revanced.patcher.patch.PatchResult
import app.revanced.patcher.patch.PatchResultSuccess
import app.revanced.patcher.smali.asInstructions
class MinimizedPlayback : Patch("minimized-playback") {
class MinimizedPlayback : Patch(
PatchMetadata(
"minimized-playback",
"TODO",
"TODO"
)
) {
override fun execute(cache: Cache): PatchResult {
// Instead of removing all instructions like Vanced,
// we return the method at the beginning instead

View File

@ -1,23 +1,28 @@
package app.revanced.patches.layout
import app.revanced.patcher.cache.Cache
import app.revanced.patcher.extensions.AccessFlagExtensions.Companion.or
import app.revanced.patcher.extensions.addInstructions
import app.revanced.patcher.extensions.or
import app.revanced.patcher.patch.Patch
import app.revanced.patcher.patch.PatchResult
import app.revanced.patcher.patch.PatchResultError
import app.revanced.patcher.patch.PatchResultSuccess
import app.revanced.patcher.patch.*
import app.revanced.patcher.signature.MethodSignature
import app.revanced.patcher.smali.asInstructions
import app.revanced.patches.SHARED_METADATA
import org.jf.dexlib2.AccessFlags
import org.jf.dexlib2.Opcode
import org.jf.dexlib2.builder.instruction.BuilderInstruction21t
class OldQualityLayout : Patch("old-quality-restore") {
class OldQualityLayout : Patch(
PatchMetadata(
"old-quality-layout",
"TODO",
"TODO"
)
) {
override fun execute(cache: Cache): PatchResult {
val map = cache.methodMap["old-quality-patch"].findParentMethod(
MethodSignature(
"old-quality-patch-method",
SHARED_METADATA,
"L",
AccessFlags.FINAL or AccessFlags.PUBLIC,
emptyList(),