commit fcb84661a6fe8af93f55deceffc3ab3d459873fb
parent ebee8f2ef85d238355483917766ccbf496a11e14
Author: rhunk <101876869+rhunk@users.noreply.github.com>
Date:   Mon,  1 Jan 2024 23:33:37 +0100

fix(mappings): build error

Diffstat:
Mcore/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/downloader/MediaDownloader.kt | 11+++++------
Mcore/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/AddFriendSourceSpoof.kt | 2+-
Mcore/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/InfiniteStoryBoost.kt | 7+++----
Mcore/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/NoFriendScoreDelay.kt | 2+-
Mcore/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/global/SnapchatPlus.kt | 2+-
Mcore/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/tweaks/CameraTweaks.kt | 2+-
6 files changed, 12 insertions(+), 14 deletions(-)

diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/downloader/MediaDownloader.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/downloader/MediaDownloader.kt @@ -37,7 +37,7 @@ import me.rhunk.snapenhance.core.features.impl.spying.MessageLogger import me.rhunk.snapenhance.core.ui.ViewAppearanceHelper import me.rhunk.snapenhance.core.util.hook.HookAdapter import me.rhunk.snapenhance.core.util.hook.HookStage -import me.rhunk.snapenhance.core.util.hook.Hooker +import me.rhunk.snapenhance.core.util.hook.hook import me.rhunk.snapenhance.core.util.ktx.getObjectField import me.rhunk.snapenhance.core.util.media.PreviewUtils import me.rhunk.snapenhance.core.wrapper.impl.SnapUUID @@ -466,11 +466,11 @@ class MediaDownloader : MessagingRuleFeature("MediaDownloader", MessagingRuleTyp val onOperaViewStateCallback: (HookAdapter) -> Unit = onOperaViewStateCallback@{ param -> - val viewState = (param.thisObject() as Any).getObjectField(context.mappings.getMappedValue("OperaPageViewController", "viewStateField")).toString() + val viewState = (param.thisObject() as Any).getObjectField(context.mappings.getMappedValue("OperaPageViewController", "viewStateField")!!).toString() if (viewState != "FULLY_DISPLAYED") { return@onOperaViewStateCallback } - val operaLayerList = (param.thisObject() as Any).getObjectField(context.mappings.getMappedValue("OperaPageViewController", "layerListField")) as ArrayList<*> + val operaLayerList = (param.thisObject() as Any).getObjectField(context.mappings.getMappedValue("OperaPageViewController", "layerListField")!!) as ArrayList<*> val mediaParamMap: ParamMap = operaLayerList.map { Layer(it) }.first().paramMap if (!mediaParamMap.containsKey("image_media_info") && !mediaParamMap.containsKey("video_media_info_list")) @@ -503,9 +503,8 @@ class MediaDownloader : MessagingRuleFeature("MediaDownloader", MessagingRuleTyp } arrayOf("onDisplayStateChange", "onDisplayStateChangeGesture").forEach { methodName -> - Hooker.hook( - operaViewerControllerClass, - context.mappings.getMappedValue("OperaPageViewController", methodName), + operaViewerControllerClass.hook( + context.mappings.getMappedValue("OperaPageViewController", methodName) ?: return@forEach, HookStage.AFTER, onOperaViewStateCallback ) } diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/AddFriendSourceSpoof.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/AddFriendSourceSpoof.kt @@ -11,7 +11,7 @@ class AddFriendSourceSpoof : Feature("AddFriendSourceSpoof", loadParams = Featur private set override fun onActivityCreate() { - val friendRelationshipChangerMapping = context.mappings.getMappedMap("FriendRelationshipChanger") + val friendRelationshipChangerMapping = context.mappings.getMappedMap("FriendRelationshipChanger") ?: throw Exception("Failed to get friendRelationshipChangerMapping") findClass(friendRelationshipChangerMapping["class"].toString()).hookConstructor(HookStage.AFTER) { param -> friendRelationshipChangerInstance = param.thisObject() diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/InfiniteStoryBoost.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/InfiniteStoryBoost.kt @@ -7,11 +7,10 @@ import me.rhunk.snapenhance.core.util.hook.hookConstructor class InfiniteStoryBoost : Feature("InfiniteStoryBoost", loadParams = FeatureLoadParams.ACTIVITY_CREATE_ASYNC) { override fun asyncOnActivityCreate() { - val storyBoostStateClass = context.mappings.getMappedClass("StoryBoostStateClass") + if (!context.config.experimental.infiniteStoryBoost.get()) return + val storyBoostStateClass = context.mappings.getMappedClass("StoryBoostStateClass") ?: throw Exception("Failed to get storyBoostStateClass") - storyBoostStateClass.hookConstructor(HookStage.BEFORE, { - context.config.experimental.infiniteStoryBoost.get() - }) { param -> + storyBoostStateClass.hookConstructor(HookStage.BEFORE) { param -> val startTimeMillis = param.arg<Long>(1) //reset timestamp if it's more than 24 hours if (System.currentTimeMillis() - startTimeMillis > 86400000) { diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/NoFriendScoreDelay.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/NoFriendScoreDelay.kt @@ -9,7 +9,7 @@ import java.lang.reflect.Constructor class NoFriendScoreDelay : Feature("NoFriendScoreDelay", loadParams = FeatureLoadParams.ACTIVITY_CREATE_SYNC) { override fun onActivityCreate() { if (!context.config.experimental.noFriendScoreDelay.get()) return - val scoreUpdateClass = context.mappings.getMappedClass("ScoreUpdate") + val scoreUpdateClass = context.mappings.getMappedClass("ScoreUpdate") ?: throw Exception("Failed to get scoreUpdateClass") scoreUpdateClass.hookConstructor(HookStage.BEFORE) { param -> val constructor = param.method() as Constructor<*> diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/global/SnapchatPlus.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/global/SnapchatPlus.kt @@ -13,7 +13,7 @@ class SnapchatPlus: Feature("SnapchatPlus", loadParams = FeatureLoadParams.INIT_ override fun init() { if (!context.config.global.snapchatPlus.get()) return - val subscriptionInfoClass = context.mappings.getMappedClass("SubscriptionInfoClass") + val subscriptionInfoClass = context.mappings.getMappedClass("SubscriptionInfoClass") ?: throw Exception("Failed to get subscriptionInfoClass") Hooker.hookConstructor(subscriptionInfoClass, HookStage.BEFORE) { param -> if (param.arg<Int>(0) == 2) return@hookConstructor diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/tweaks/CameraTweaks.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/tweaks/CameraTweaks.kt @@ -62,7 +62,7 @@ class CameraTweaks : Feature("Camera Tweaks", loadParams = FeatureLoadParams.ACT } } - context.mappings.getMappedClass("ScCameraSettings").hookConstructor(HookStage.BEFORE) { param -> + context.mappings.getMappedClass("ScCameraSettings")?.hookConstructor(HookStage.BEFORE) { param -> val previewResolution = ScSize(param.argNullable(2)) val captureResolution = ScSize(param.argNullable(3))