fix(YouTube - Hide info cards): Fix info cards not hiding for some users (#3039)

This commit is contained in:
LisoUseInAIKyrios 2023-09-28 00:18:31 +04:00 committed by GitHub
parent ec37be2b7e
commit cb38637e6b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -13,6 +13,7 @@ import app.revanced.patches.youtube.layout.hide.infocards.fingerprints.Infocards
import app.revanced.patches.youtube.layout.hide.infocards.fingerprints.InfocardsIncognitoParentFingerprint
import app.revanced.patches.youtube.layout.hide.infocards.fingerprints.InfocardsMethodCallFingerprint
import app.revanced.patches.youtube.misc.integrations.IntegrationsPatch
import app.revanced.patches.youtube.misc.litho.filter.LithoFilterPatch
import com.android.tools.smali.dexlib2.Opcode
import com.android.tools.smali.dexlib2.iface.instruction.FiveRegisterInstruction
import com.android.tools.smali.dexlib2.iface.instruction.ReferenceInstruction
@ -22,6 +23,7 @@ import com.android.tools.smali.dexlib2.iface.instruction.ReferenceInstruction
description = "Hides info cards in videos.",
dependencies = [
IntegrationsPatch::class,
LithoFilterPatch::class,
HideInfocardsResourcePatch::class
],
compatiblePackages = [
@ -45,6 +47,9 @@ object HideInfoCardsPatch : BytecodePatch(
InfocardsMethodCallFingerprint,
)
) {
private const val FILTER_CLASS_DESCRIPTOR =
"Lapp/revanced/integrations/patches/components/HideInfoCardsFilterPatch;"
override fun execute(context: BytecodeContext) {
InfocardsIncognitoFingerprint.also {
it.resolve(context, InfocardsIncognitoParentFingerprint.result!!.classDef)
@ -79,5 +84,8 @@ object HideInfoCardsPatch : BytecodePatch(
)
)
}
// Info cards can also appear as litho components.
LithoFilterPatch.addFilter(FILTER_CLASS_DESCRIPTOR)
}
}