From 2aeeaad2660e74e61b82d312658b5ed7944a1678 Mon Sep 17 00:00:00 2001
From: programminghoch10 <16062290+programminghoch10@users.noreply.github.com>
Date: Mon, 4 Sep 2023 23:30:08 +0200
Subject: [PATCH 1/2] add AntiBrightnessChange modulet
---
AntiBrightnessChange/build.gradle.kts | 19 ++++++++++
.../src/main/AndroidManifest.xml | 29 ++++++++++++++
.../src/main/assets/xposed_init | 1 +
.../AntiBrightnessChange/Hook.java | 38 +++++++++++++++++++
.../src/main/res/values/arrays.xml | 5 +++
settings.gradle.kts | 1 +
6 files changed, 93 insertions(+)
create mode 100644 AntiBrightnessChange/build.gradle.kts
create mode 100644 AntiBrightnessChange/src/main/AndroidManifest.xml
create mode 100644 AntiBrightnessChange/src/main/assets/xposed_init
create mode 100644 AntiBrightnessChange/src/main/java/com/programminghoch10/AntiBrightnessChange/Hook.java
create mode 100644 AntiBrightnessChange/src/main/res/values/arrays.xml
diff --git a/AntiBrightnessChange/build.gradle.kts b/AntiBrightnessChange/build.gradle.kts
new file mode 100644
index 0000000..ae3b9fe
--- /dev/null
+++ b/AntiBrightnessChange/build.gradle.kts
@@ -0,0 +1,19 @@
+plugins {
+ id("com.android.application")
+}
+
+android {
+ val packageName = "com.programminghoch10.AntiBrightnessChange"
+ namespace = packageName
+
+ defaultConfig {
+ applicationId = packageName
+ minSdk = 33
+ targetSdk = 33
+ compileSdk = 33
+ versionCode = 1
+ versionName = "1.0"
+ }
+}
+
+dependencies {}
diff --git a/AntiBrightnessChange/src/main/AndroidManifest.xml b/AntiBrightnessChange/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..0eaa936
--- /dev/null
+++ b/AntiBrightnessChange/src/main/AndroidManifest.xml
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/AntiBrightnessChange/src/main/assets/xposed_init b/AntiBrightnessChange/src/main/assets/xposed_init
new file mode 100644
index 0000000..bb3b42b
--- /dev/null
+++ b/AntiBrightnessChange/src/main/assets/xposed_init
@@ -0,0 +1 @@
+com.programminghoch10.AntiBrightnessChange.Hook
diff --git a/AntiBrightnessChange/src/main/java/com/programminghoch10/AntiBrightnessChange/Hook.java b/AntiBrightnessChange/src/main/java/com/programminghoch10/AntiBrightnessChange/Hook.java
new file mode 100644
index 0000000..b11e88f
--- /dev/null
+++ b/AntiBrightnessChange/src/main/java/com/programminghoch10/AntiBrightnessChange/Hook.java
@@ -0,0 +1,38 @@
+package com.programminghoch10.AntiBrightnessChange;
+
+import static android.view.WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_NONE;
+
+import android.view.WindowManager;
+
+import androidx.annotation.Keep;
+
+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;
+
+@Keep
+public class Hook implements IXposedHookLoadPackage {
+ @Override
+ public void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) {
+ if (lpparam.packageName.equals("android")) {
+ XposedHelpers.findAndHookMethod("com.android.server.wm.RootWindowContainer", lpparam.classLoader, "handleNotObscuredLocked",
+ "com.android.server.wm.WindowState", boolean.class, boolean.class, new XC_MethodHook() {
+ @Override
+ protected void afterHookedMethod(MethodHookParam param) {
+ XposedHelpers.setFloatField(param.thisObject, "mScreenBrightnessOverride", Float.NaN);
+ }
+ });
+ return;
+ }
+
+ XposedHelpers.findAndHookMethod(WindowManager.LayoutParams.class, "copyFrom", WindowManager.LayoutParams.class, new XC_MethodHook() {
+ @Override
+ protected void beforeHookedMethod(MethodHookParam param) {
+ WindowManager.LayoutParams layoutParams = (WindowManager.LayoutParams) param.args[0];
+ layoutParams.screenBrightness = BRIGHTNESS_OVERRIDE_NONE;
+ layoutParams.buttonBrightness = BRIGHTNESS_OVERRIDE_NONE;
+ }
+ });
+ }
+}
diff --git a/AntiBrightnessChange/src/main/res/values/arrays.xml b/AntiBrightnessChange/src/main/res/values/arrays.xml
new file mode 100644
index 0000000..549bac0
--- /dev/null
+++ b/AntiBrightnessChange/src/main/res/values/arrays.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 5494f32..8d730d0 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -18,6 +18,7 @@ dependencyResolutionManagement {
}
rootProject.name = "XposedModulets"
+include(":AntiBrightnessChange")
include(":AutomaticAdvancedSettingsExpander")
include(":BetterVerboseWiFiLogging")
include(":BetterBluetoothDeviceSort")
From 398903e55974ce30964ad702b9f3eda3cd75a8de Mon Sep 17 00:00:00 2001
From: programminghoch10 <16062290+programminghoch10@users.noreply.github.com>
Date: Tue, 5 Sep 2023 19:12:28 +0200
Subject: [PATCH 2/2] add AntiBrightnessChange readme and metadata
---
AntiBrightnessChange/README.md | 6 ++++++
.../en-US/full_description.txt | 4 ++++
.../en-US/short_description.txt | 1 +
.../en-US/title.txt | 1 +
4 files changed, 12 insertions(+)
create mode 100644 AntiBrightnessChange/README.md
create mode 100644 metadata/com.programminghoch10.AntiBrightnessChange/en-US/full_description.txt
create mode 100644 metadata/com.programminghoch10.AntiBrightnessChange/en-US/short_description.txt
create mode 100644 metadata/com.programminghoch10.AntiBrightnessChange/en-US/title.txt
diff --git a/AntiBrightnessChange/README.md b/AntiBrightnessChange/README.md
new file mode 100644
index 0000000..75d0d5c
--- /dev/null
+++ b/AntiBrightnessChange/README.md
@@ -0,0 +1,6 @@
+# AntiBrightnessChange
+
+This module prevents selected apps from overwriting the screen brightness.
+
+If applied to System Framework (`android`)
+it will prevent every app from changing the screen brightness.
diff --git a/metadata/com.programminghoch10.AntiBrightnessChange/en-US/full_description.txt b/metadata/com.programminghoch10.AntiBrightnessChange/en-US/full_description.txt
new file mode 100644
index 0000000..369a48d
--- /dev/null
+++ b/metadata/com.programminghoch10.AntiBrightnessChange/en-US/full_description.txt
@@ -0,0 +1,4 @@
+This module prevents selected apps from overwriting the screen brightness.
+
+If applied to System Framework (`android`)
+it will prevent every app from changing the screen brightness.
diff --git a/metadata/com.programminghoch10.AntiBrightnessChange/en-US/short_description.txt b/metadata/com.programminghoch10.AntiBrightnessChange/en-US/short_description.txt
new file mode 100644
index 0000000..28dc657
--- /dev/null
+++ b/metadata/com.programminghoch10.AntiBrightnessChange/en-US/short_description.txt
@@ -0,0 +1 @@
+Prevents selected apps from overwriting the screen brightness.
diff --git a/metadata/com.programminghoch10.AntiBrightnessChange/en-US/title.txt b/metadata/com.programminghoch10.AntiBrightnessChange/en-US/title.txt
new file mode 100644
index 0000000..2009e45
--- /dev/null
+++ b/metadata/com.programminghoch10.AntiBrightnessChange/en-US/title.txt
@@ -0,0 +1 @@
+Anti Brightness Change