mirror of
https://github.com/LittleTurtle2333/SimplicityTools.git
synced 2026-07-12 11:21:18 +08:00
simplify HideMobileTypeIcon.kt
This commit is contained in:
@@ -3,68 +3,29 @@ package com.lt2333.simplicitytools.hook.app.systemui
|
|||||||
import android.view.View
|
import android.view.View
|
||||||
import android.widget.ImageView
|
import android.widget.ImageView
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
import com.lt2333.simplicitytools.util.XSPUtils
|
import com.lt2333.simplicitytools.util.getObjectField
|
||||||
|
import com.lt2333.simplicitytools.util.hasEnable
|
||||||
|
import com.lt2333.simplicitytools.util.hookAfterMethod
|
||||||
import de.robv.android.xposed.IXposedHookLoadPackage
|
import de.robv.android.xposed.IXposedHookLoadPackage
|
||||||
import de.robv.android.xposed.XC_MethodHook
|
|
||||||
import de.robv.android.xposed.XposedHelpers
|
|
||||||
import de.robv.android.xposed.callbacks.XC_LoadPackage
|
import de.robv.android.xposed.callbacks.XC_LoadPackage
|
||||||
|
|
||||||
class HideMobileTypeIcon : IXposedHookLoadPackage {
|
class HideMobileTypeIcon : IXposedHookLoadPackage {
|
||||||
override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam) {
|
override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam) {
|
||||||
val classIfExists = XposedHelpers.findClassIfExists(
|
val iconState = "com.android.systemui.statusbar.phone.StatusBarSignalPolicy\$MobileIconState"
|
||||||
"com.android.systemui.statusbar.StatusBarMobileView",
|
"com.android.systemui.statusbar.StatusBarMobileView".hookAfterMethod(lpparam.classLoader, "initViewState", iconState) {
|
||||||
lpparam.classLoader
|
hasEnable("hide_mobile_type_icon") {
|
||||||
)
|
(it.thisObject.getObjectField("mMobileType") as TextView).visibility = View.INVISIBLE
|
||||||
XposedHelpers.findAndHookMethod(
|
(it.thisObject.getObjectField("mMobileTypeImage") as ImageView).visibility = View.INVISIBLE
|
||||||
classIfExists,
|
(it.thisObject.getObjectField("mMobileTypeSingle") as TextView).visibility = View.INVISIBLE
|
||||||
"initViewState",
|
|
||||||
"com.android.systemui.statusbar.phone.StatusBarSignalPolicy\$MobileIconState",
|
|
||||||
object : XC_MethodHook() {
|
|
||||||
override fun afterHookedMethod(param: MethodHookParam) {
|
|
||||||
if (XSPUtils.getBoolean("hide_mobile_type_icon", false)) {
|
|
||||||
(XposedHelpers.getObjectField(
|
|
||||||
param.thisObject,
|
|
||||||
"mMobileType"
|
|
||||||
) as TextView).visibility = View.INVISIBLE
|
|
||||||
|
|
||||||
(XposedHelpers.getObjectField(
|
|
||||||
param.thisObject,
|
|
||||||
"mMobileTypeImage"
|
|
||||||
) as ImageView).visibility = View.INVISIBLE
|
|
||||||
|
|
||||||
(XposedHelpers.getObjectField(
|
|
||||||
param.thisObject,
|
|
||||||
"mMobileTypeSingle"
|
|
||||||
) as TextView).visibility = View.INVISIBLE
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
|
||||||
|
|
||||||
XposedHelpers.findAndHookMethod(
|
"com.android.systemui.statusbar.StatusBarMobileView".hookAfterMethod(lpparam.classLoader, "updateState", iconState) {
|
||||||
classIfExists,
|
hasEnable("hide_mobile_type_icon") {
|
||||||
"updateState",
|
(it.thisObject.getObjectField("mMobileType") as TextView).visibility = View.INVISIBLE
|
||||||
"com.android.systemui.statusbar.phone.StatusBarSignalPolicy\$MobileIconState",
|
(it.thisObject.getObjectField("mMobileTypeImage") as ImageView).visibility = View.INVISIBLE
|
||||||
object : XC_MethodHook() {
|
(it.thisObject.getObjectField("mMobileTypeSingle") as TextView).visibility = View.INVISIBLE
|
||||||
override fun afterHookedMethod(param: MethodHookParam) {
|
|
||||||
if (XSPUtils.getBoolean("hide_mobile_type_icon", false)) {
|
|
||||||
(XposedHelpers.getObjectField(
|
|
||||||
param.thisObject,
|
|
||||||
"mMobileType"
|
|
||||||
) as TextView).visibility = View.INVISIBLE
|
|
||||||
|
|
||||||
(XposedHelpers.getObjectField(
|
|
||||||
param.thisObject,
|
|
||||||
"mMobileTypeImage"
|
|
||||||
) as ImageView).visibility = View.INVISIBLE
|
|
||||||
|
|
||||||
(XposedHelpers.getObjectField(
|
|
||||||
param.thisObject,
|
|
||||||
"mMobileTypeSingle"
|
|
||||||
) as TextView).visibility = View.INVISIBLE
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user