From 8a97e38d20da750ea7cda3667488218e039ebd1d Mon Sep 17 00:00:00 2001 From: fankesyooni Date: Thu, 2 Nov 2023 08:12:06 +0800 Subject: [PATCH] fix: updateStatusBarIconAlpha on A14 and HyperOS --- .../java/com/fankes/miui/notify/hook/entity/SystemUIHooker.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/fankes/miui/notify/hook/entity/SystemUIHooker.kt b/app/src/main/java/com/fankes/miui/notify/hook/entity/SystemUIHooker.kt index d2af743..8c6c930 100644 --- a/app/src/main/java/com/fankes/miui/notify/hook/entity/SystemUIHooker.kt +++ b/app/src/main/java/com/fankes/miui/notify/hook/entity/SystemUIHooker.kt @@ -612,12 +612,12 @@ object SystemUIHooker : YukiBaseHooker() { * @param container 当前 [NotificationIconContainerClass] 的实例 */ private fun updateStatusBarIconAlpha(container: ViewGroup) { - val iconStateMethod = container.current().method { name = "getIconState"; param(StatusBarIconViewClass) } + val iconStatesMap = container.current().field { name = "mIconStates" }.cast>() if (container.childCount > 0) container.children.forEach { iconView -> if (iconView !is ImageView) return@forEach val iconAlpha = if (iconView.isGrayscaleIcon()) statusBarIconAlpha else 1f iconView.alpha = iconAlpha - iconStateMethod.call(iconView)?.current()?.field { name = "alpha"; superClass() }?.set(iconAlpha) + iconStatesMap?.get(iconView)?.current()?.field { name { it == "alpha" || it == "mAlpha" }; superClass() }?.set(iconAlpha) } }