From bfff5cc4461ddc9fb005819dab0573405fb6a14e Mon Sep 17 00:00:00 2001 From: YifePlayte <62252171+YifePlayte@users.noreply.github.com> Date: Wed, 23 Mar 2022 14:10:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=85=81=E8=AE=B8=E4=B8=8B?= =?UTF-8?q?=E6=BB=91=E6=89=80=E6=9C=89=E9=80=9A=E7=9F=A5=E5=8F=98=E6=88=90?= =?UTF-8?q?=E5=B0=8F=E7=AA=97=20(#104)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../activity/SettingsActivity.kt | 8 +++++++ .../simplicitytools/hook/app/SystemUI.kt | 2 ++ .../hook/app/systemui/CanNotificationSlide.kt | 21 +++++++++++++++++++ app/src/main/res/values/strings.xml | 1 + 4 files changed, 32 insertions(+) create mode 100644 app/src/main/java/com/lt2333/simplicitytools/hook/app/systemui/CanNotificationSlide.kt 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 191c2fe6..0bec7ea5 100644 --- a/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt +++ b/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt @@ -903,6 +903,14 @@ class SettingsActivity : MIUIActivity() { dataBindingRecv = show_weather_main_switch_binding.binding.getRecv(2) ) ) + add( + TextSummaryWithSwitchV( + TextSummaryV( + textId = R.string.can_notification_slide, + ), + SwitchV("can_notification_slide") + ) + ) add(LineV()) add(TitleTextV(resId = R.string.control_center)) diff --git a/app/src/main/java/com/lt2333/simplicitytools/hook/app/SystemUI.kt b/app/src/main/java/com/lt2333/simplicitytools/hook/app/SystemUI.kt index 7beaddaa..8575b652 100644 --- a/app/src/main/java/com/lt2333/simplicitytools/hook/app/SystemUI.kt +++ b/app/src/main/java/com/lt2333/simplicitytools/hook/app/SystemUI.kt @@ -60,6 +60,8 @@ class SystemUI : IXposedHookLoadPackage { DoubleLineNetworkSpeed().handleLoadPackage(lpparam) StatusBarBigMobileTypeIcon().handleLoadPackage(lpparam) + //允许下滑通知打开小窗 + CanNotificationSlide().handleLoadPackage(lpparam) } } diff --git a/app/src/main/java/com/lt2333/simplicitytools/hook/app/systemui/CanNotificationSlide.kt b/app/src/main/java/com/lt2333/simplicitytools/hook/app/systemui/CanNotificationSlide.kt new file mode 100644 index 00000000..23c8ce57 --- /dev/null +++ b/app/src/main/java/com/lt2333/simplicitytools/hook/app/systemui/CanNotificationSlide.kt @@ -0,0 +1,21 @@ +package com.lt2333.simplicitytools.hook.app.systemui + +import com.github.kyuubiran.ezxhelper.utils.findMethod +import com.github.kyuubiran.ezxhelper.utils.hookMethod +import com.lt2333.simplicitytools.util.hasEnable +import de.robv.android.xposed.IXposedHookLoadPackage +import de.robv.android.xposed.callbacks.XC_LoadPackage + +class CanNotificationSlide : IXposedHookLoadPackage { + override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam) { + findMethod("com.android.systemui.statusbar.notification.policy.AppMiniWindowManager") { + name == "canNotificationSlide" + }.hookMethod { + after { param -> + hasEnable("can_notification_slide") { + param.result = true + } + } + } + } +} \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 7f7629ec..6a94d793 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -181,4 +181,5 @@ Left Right Big Mobile Type Icon + Make all notification can be slide to small window