commit 0c99ae15ba87871403a7c5345707ea6d76a5c194
parent 00dd9e6dce94dbb3b20174c879db98aa74c3f53c
Author: rhunk <101876869+rhunk@users.noreply.github.com>
Date:   Wed, 26 Feb 2025 11:50:23 +0100

fix(core): addView hook

Signed-off-by: rhunk <101876869+rhunk@users.noreply.github.com>

Diffstat:
Mcore/src/main/kotlin/me/rhunk/snapenhance/core/event/EventDispatcher.kt | 11++++-------
1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/event/EventDispatcher.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/event/EventDispatcher.kt @@ -5,12 +5,12 @@ import android.content.Intent import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.view.ViewGroup.LayoutParams import me.rhunk.snapenhance.common.util.snap.SnapWidgetBroadcastReceiverHelper import me.rhunk.snapenhance.core.ModContext import me.rhunk.snapenhance.core.event.events.impl.* import me.rhunk.snapenhance.core.util.hook.HookStage import me.rhunk.snapenhance.core.util.hook.Hooker +import me.rhunk.snapenhance.core.util.hook.findRestrictedMethod import me.rhunk.snapenhance.core.util.hook.hook import me.rhunk.snapenhance.core.util.hook.hookConstructor import me.rhunk.snapenhance.core.util.ktx.getObjectField @@ -109,12 +109,9 @@ class EventDispatcher( } } - ViewGroup::class.java.getMethod( - "addView", - View::class.java, - Int::class.javaPrimitiveType, - LayoutParams::class.java - ).hook(HookStage.BEFORE) { param -> + ViewGroup::class.java.findRestrictedMethod { + it.name == "addViewInner" + }!!.hook(HookStage.BEFORE) { param -> context.event.post( AddViewEvent( parent = param.thisObject(),