feat: Use an extension property to create new exception when failing to resolve a fingerprint

This commit adds the extension property to the public API
This commit is contained in:
oSumAtrIX
2023-08-25 00:05:30 +02:00
parent 31b5d506a5
commit a471605db7
91 changed files with 259 additions and 247 deletions
@@ -1,6 +1,6 @@
package app.revanced.patches.twitch.ad.video.patch
import app.revanced.extensions.toErrorResult
import app.revanced.extensions.exception
import app.revanced.patcher.annotation.Description
import app.revanced.patcher.annotation.Name
import app.revanced.patcher.data.BytecodeContext
@@ -95,7 +95,7 @@ class VideoAdsPatch : AbstractAdPatch(
""",
ExternalLabel(skipLabelName, mutableMethod.getInstruction(0))
)
} ?: throw CheckAdEligibilityLambdaFingerprint.toErrorResult()
} ?: throw CheckAdEligibilityLambdaFingerprint.exception
GetReadyToShowAdFingerprint.result?.apply {
val adFormatDeclined = "Ltv/twitch/android/shared/display/ads/theatre/StreamDisplayAdsPresenter\$Action\$AdFormatDeclined;"
@@ -110,7 +110,7 @@ class VideoAdsPatch : AbstractAdPatch(
""",
ExternalLabel(skipLabelName, mutableMethod.getInstruction(0))
)
} ?: throw GetReadyToShowAdFingerprint.toErrorResult()
} ?: throw GetReadyToShowAdFingerprint.exception
// Spoof showAds JSON field
ContentConfigShowAdsFingerprint.result?.apply {
@@ -121,7 +121,7 @@ class VideoAdsPatch : AbstractAdPatch(
return v0
"""
)
} ?: throw ContentConfigShowAdsFingerprint.toErrorResult()
} ?: throw ContentConfigShowAdsFingerprint.exception
SettingsPatch.PreferenceScreen.ADS.CLIENT_SIDE.addPreferences(
SwitchPreference(
@@ -1,6 +1,6 @@
package app.revanced.patches.twitch.chat.antidelete.patch
import app.revanced.extensions.toErrorResult
import app.revanced.extensions.exception
import app.revanced.patcher.annotation.Description
import app.revanced.patcher.annotation.Name
import app.revanced.patcher.data.BytecodeContext
@@ -51,11 +51,11 @@ class ShowDeletedMessagesPatch : BytecodePatch(
""",
ExternalLabel("no_spoiler", getInstruction(implementation!!.instructions.lastIndex))
)
} ?: throw DeletedMessageClickableSpanCtorFingerprint.toErrorResult()
} ?: throw DeletedMessageClickableSpanCtorFingerprint.exception
// Spoiler mode: Disable setHasModAccess setter
SetHasModAccessFingerprint.result?.mutableMethod?.addInstruction(0, "return-void")
?: throw SetHasModAccessFingerprint.toErrorResult()
?: throw SetHasModAccessFingerprint.exception
// Cross-out mode: Reformat span of deleted message
ChatUtilCreateDeletedSpanFingerprint.result?.mutableMethod?.apply {
@@ -69,7 +69,7 @@ class ShowDeletedMessagesPatch : BytecodePatch(
""",
ExternalLabel("no_reformat", getInstruction(0))
)
} ?: throw ChatUtilCreateDeletedSpanFingerprint.toErrorResult()
} ?: throw ChatUtilCreateDeletedSpanFingerprint.exception
SettingsPatch.PreferenceScreen.CHAT.GENERAL.addPreferences(
ListPreference(
@@ -1,6 +1,6 @@
package app.revanced.patches.twitch.chat.autoclaim.patch
import app.revanced.extensions.toErrorResult
import app.revanced.extensions.exception
import app.revanced.patcher.annotation.Description
import app.revanced.patcher.annotation.Name
import app.revanced.patcher.data.BytecodeContext
@@ -60,6 +60,6 @@ class AutoClaimChannelPointPatch : BytecodePatch(
""",
ExternalLabel("auto_claim", getInstruction(lastIndex))
)
} ?: throw CommunityPointsButtonViewDelegateFingerprint.toErrorResult()
} ?: throw CommunityPointsButtonViewDelegateFingerprint.exception
}
}
@@ -1,6 +1,6 @@
package app.revanced.patches.twitch.debug.patch
import app.revanced.extensions.toErrorResult
import app.revanced.extensions.exception
import app.revanced.patcher.annotation.Description
import app.revanced.patcher.annotation.Name
import app.revanced.patcher.data.BytecodeContext
@@ -44,7 +44,7 @@ class DebugModePatch : BytecodePatch(
return v0
"""
)
} ?: throw it.toErrorResult()
} ?: throw it.exception
}
SettingsPatch.PreferenceScreen.MISC.OTHER.addPreferences(
@@ -1,6 +1,6 @@
package app.revanced.patches.twitch.misc.settings.bytecode.patch
import app.revanced.extensions.toErrorResult
import app.revanced.extensions.exception
import app.revanced.patcher.annotation.Description
import app.revanced.patcher.annotation.Name
import app.revanced.patcher.data.BytecodeContext
@@ -55,7 +55,7 @@ class SettingsPatch : BytecodePatch(
""",
ExternalLabel("no_rv_settings_init", mutableMethod.getInstruction(insertIndex))
)
} ?: throw SettingsActivityOnCreateFingerprint.toErrorResult()
} ?: throw SettingsActivityOnCreateFingerprint.exception
// Create new menu item for settings menu
SettingsMenuItemEnumFingerprint.result?.apply {
@@ -65,7 +65,7 @@ class SettingsPatch : BytecodePatch(
REVANCED_SETTINGS_MENU_ITEM_TITLE_RES,
REVANCED_SETTINGS_MENU_ITEM_ICON_RES
)
} ?: throw SettingsMenuItemEnumFingerprint.toErrorResult()
} ?: throw SettingsMenuItemEnumFingerprint.exception
// Intercept settings menu creation and add new menu item
MenuGroupsUpdatedFingerprint.result?.apply {
@@ -77,7 +77,7 @@ class SettingsPatch : BytecodePatch(
move-result-object p1
"""
)
} ?: throw MenuGroupsUpdatedFingerprint.toErrorResult()
} ?: throw MenuGroupsUpdatedFingerprint.exception
// Intercept onclick events for the settings menu
MenuGroupsOnClickFingerprint.result?.apply {
@@ -94,7 +94,7 @@ class SettingsPatch : BytecodePatch(
""",
ExternalLabel("no_rv_settings_onclick", mutableMethod.getInstruction(insertIndex))
)
} ?: throw MenuGroupsOnClickFingerprint.toErrorResult()
} ?: throw MenuGroupsOnClickFingerprint.exception
addString("revanced_settings", "ReVanced Settings", false)
addString("revanced_reboot_message", "Twitch needs to restart to apply your changes. Restart now?", false)