feat(Sync for Reddit): add Disable Sync for Lemmy bottom sheet patch

This commit is contained in:
oSumAtrIX 2023-07-25 01:36:28 +02:00
parent ffce3b8fce
commit 56b535b2a1
No known key found for this signature in database
GPG key ID: A9B3094ACDB604B4
2 changed files with 44 additions and 0 deletions

View file

@ -0,0 +1,9 @@
package app.revanced.patches.reddit.customclients.syncforreddit.annoyances.startup.fingerprints
import app.revanced.patcher.fingerprint.method.impl.MethodFingerprint
object MainActivityOnCreate : MethodFingerprint(
customFingerprint = custom@{ method, classDef ->
classDef.type.endsWith("MainActivity;") && method.name == "onCreate"
}
)

View file

@ -0,0 +1,35 @@
package app.revanced.patches.reddit.customclients.syncforreddit.annoyances.startup.patch
import app.revanced.patcher.annotation.Compatibility
import app.revanced.patcher.annotation.Description
import app.revanced.patcher.annotation.Name
import app.revanced.patcher.annotation.Package
import app.revanced.patcher.data.BytecodeContext
import app.revanced.patcher.extensions.InstructionExtensions.removeInstruction
import app.revanced.patcher.patch.BytecodePatch
import app.revanced.patcher.patch.PatchResult
import app.revanced.patcher.patch.PatchResultSuccess
import app.revanced.patcher.patch.annotations.Patch
import app.revanced.patches.reddit.customclients.syncforreddit.annoyances.startup.fingerprints.MainActivityOnCreate
@Patch
@Name("Disable Sync for Lemmy bottom sheet")
@Description("Disables the bottom sheet at the startup that asks you to signup to \"Sync for Lemmy\".")
@Compatibility(
[
Package("com.laurencedawson.reddit_sync", ["v23.06.30-13:39"]),
Package("com.laurencedawson.reddit_sync.pro"), // Version unknown.
Package("com.laurencedawson.reddit_sync.dev") // Version unknown.
]
)
class DisableSyncForLemmyBottomSheetPatch : BytecodePatch(listOf(MainActivityOnCreate)) {
override fun execute(context: BytecodeContext): PatchResult {
MainActivityOnCreate.result?.mutableMethod?.apply {
val showBottomSheetIndex = implementation!!.instructions.lastIndex - 1
removeInstruction(showBottomSheetIndex)
}
return PatchResultSuccess()
}
}