From dc7e45e4ad340a336788c5d4c1d4050afed6d574 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=8C=E5=A0=86=E5=B0=8F=E9=80=8F=E6=98=8E?= Date: Mon, 14 Mar 2022 01:48:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=94=81=E5=B1=8F=E7=94=B5?= =?UTF-8?q?=E6=B5=81=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../simplicitytools/activity/SettingsActivity.kt | 5 +++-- .../hook/app/systemui/LockScreenCurrent.kt | 15 +++++++++++++-- app/src/main/res/values/strings.xml | 2 +- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt b/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt index b4f12978..e5b1b977 100644 --- a/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt +++ b/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt @@ -945,9 +945,10 @@ class SettingsActivity : MIUIActivity() { add( TextSummaryWithSwitchV( TextSummaryV( - textId = R.string.lock_screen_current, + textId = R.string.lock_screen_charging_current, + tipsId = R.string.only_official_default_themes_are_supported ), - SwitchV("lock_screen_current") + SwitchV("lock_screen_charging_current") ) ) } diff --git a/app/src/main/java/com/lt2333/simplicitytools/hook/app/systemui/LockScreenCurrent.kt b/app/src/main/java/com/lt2333/simplicitytools/hook/app/systemui/LockScreenCurrent.kt index 737d5941..062f177f 100644 --- a/app/src/main/java/com/lt2333/simplicitytools/hook/app/systemui/LockScreenCurrent.kt +++ b/app/src/main/java/com/lt2333/simplicitytools/hook/app/systemui/LockScreenCurrent.kt @@ -2,12 +2,14 @@ package com.lt2333.simplicitytools.hook.app.systemui import android.annotation.SuppressLint import android.content.Context +import android.widget.TextView import com.github.kyuubiran.ezxhelper.init.InitFields import com.lt2333.simplicitytools.R import com.lt2333.simplicitytools.util.findClass import com.lt2333.simplicitytools.util.hasEnable import com.lt2333.simplicitytools.util.hookAfterMethod import de.robv.android.xposed.IXposedHookLoadPackage +import de.robv.android.xposed.XposedHelpers import de.robv.android.xposed.callbacks.XC_LoadPackage import java.io.BufferedReader import java.io.FileReader @@ -26,6 +28,15 @@ class LockScreenCurrent : IXposedHookLoadPackage { ) { it.result = getCurrent() + "\n" + it.result } + "com.android.systemui.statusbar.phone.KeyguardBottomAreaView".findClass(lpparam.classLoader) + .hookAfterMethod( + "onFinishInflate" + ) { + (XposedHelpers.getObjectField( + it.thisObject, + "mIndicationText" + ) as TextView).isSingleLine = false + } } } @@ -43,11 +54,11 @@ class LockScreenCurrent : IXposedHookLoadPackage { if (platName.startsWith("mt") || platName.startsWith("MT")) { val filePath = "/sys/class/power_supply/battery/device/FG_Battery_CurrentConsumption" - val current = (getMeanCurrentVal(filePath, 5, 0) / 1000.0f).roundToInt() + val current = (-getMeanCurrentVal(filePath, 5, 0) / 1000.0f).roundToInt() result = "${InitFields.moduleRes.getString(R.string.current_current)} ${current}mA" } else if (platName.startsWith("qcom")) { val filePath = "/sys/class/power_supply/battery/current_now" - val current = (getMeanCurrentVal(filePath, 5, 0) / 1000.0f).roundToInt() + val current = (-getMeanCurrentVal(filePath, 5, 0) / 1000.0f).roundToInt() result = "${InitFields.moduleRes.getString(R.string.current_current)} ${current}mA" } } catch (e: Exception) { diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 21a7ec66..fcf6c059 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -156,6 +156,6 @@ Current: Participate in translation Help us translate the app into your language - Lock screen displays current information + Display current information during charging Current