11package io.github.soclear.oneuix.hook
22
3+ import android.annotation.SuppressLint
34import android.view.View
45import android.view.ViewGroup
56import android.widget.ImageView
@@ -16,6 +17,7 @@ import io.github.soclear.oneuix.data.Package
1617import java.lang.reflect.Field
1718import java.util.Collections
1819import java.util.WeakHashMap
20+ import androidx.core.view.isVisible
1921
2022internal object HideBatteryIconHook {
2123 private const val STATUS_BAR_CHARGING_ICON = " stat_sys_battery_charging"
@@ -81,7 +83,7 @@ internal object HideBatteryIconHook {
8183 try {
8284 hookAllMethods(
8385 findClass(
84- " com.android.systemui.battery.BatteryMeterViewController\ $ 3" ,
86+ $$ " com.android.systemui.battery.BatteryMeterViewController$3" ,
8587 loadPackageParam.classLoader
8688 ),
8789 " onBatteryLevelChanged" ,
@@ -157,7 +159,7 @@ internal object HideBatteryIconHook {
157159
158160 private fun resolveBatteryMeterView (instance : Any ): Any? {
159161 if (instance is View ) return instance
160- val controller = readFieldValue(instance, listOf (" this\ $ 0" )) ? : return null
162+ val controller = readFieldValue(instance, listOf ($$ " this$0" )) ? : return null
161163 return readFieldValue(controller, listOf (" mView" ))
162164 }
163165
@@ -187,6 +189,7 @@ internal object HideBatteryIconHook {
187189 appliedBatteryChargingIconIds[iconView] = drawableId
188190 }
189191
192+ @SuppressLint(" DiscouragedApi" )
190193 private fun resolveBatteryChargingIconId (iconView : ImageView ): Int {
191194 if (batteryChargingIconId != UNRESOLVED_CHARGING_ICON_ID ) return batteryChargingIconId
192195 val resources = iconView.resources
@@ -386,7 +389,7 @@ internal object HideBatteryIconHook {
386389 }
387390
388391 private fun TextView.isVisibleWithText (): Boolean =
389- visibility == View . VISIBLE && text.isNotBlank()
392+ isVisible && text.isNotBlank()
390393
391394 private data class BatteryIconLayout (
392395 val width : Int ,
0 commit comments