lineage_patches_unified/patches/platform_frameworks_base/0031-Delay-brightness-changes-so-that-dim-adjusted.patch
2019-08-08 02:52:03 +00:00

98 lines
3.6 KiB
Diff

From d5ce6564e36fe4291e42f091b322f23c346d1215 Mon Sep 17 00:00:00 2001
From: Pierre-Hugues Husson <phh@phh.me>
Date: Mon, 6 May 2019 23:16:43 +0200
Subject: [PATCH 31/31] Delay brightness changes, so that dim adjusted
---
.../server/fingerprint/FacolaView.java | 28 +++++++++++++++++--
1 file changed, 25 insertions(+), 3 deletions(-)
diff --git a/services/core/java/com/android/server/fingerprint/FacolaView.java b/services/core/java/com/android/server/fingerprint/FacolaView.java
index ec336fe337c..86f03360ad0 100644
--- a/services/core/java/com/android/server/fingerprint/FacolaView.java
+++ b/services/core/java/com/android/server/fingerprint/FacolaView.java
@@ -29,6 +29,8 @@ import android.util.Slog;
import android.view.WindowManager;
import android.graphics.PixelFormat;
import android.view.Gravity;
+import android.os.Handler;
+import android.os.Looper;
import java.io.PrintWriter;
@@ -47,10 +49,15 @@ public class FacolaView extends ImageView implements OnTouchListener {
private final static float UNTOUCHED_DIM = .1f;
private final static float TOUCHED_DIM = .9f;
+ private final Handler mMainHandler;
+ private boolean visible = false;
+
private final WindowManager mWM;
FacolaView(Context context) {
super(context);
+ mMainHandler = new Handler(Looper.getMainLooper());
+
String[] location = android.os.SystemProperties.get("persist.vendor.sys.fp.fod.location.X_Y", "").split(",");
String[] size = android.os.SystemProperties.get("persist.vendor.sys.fp.fod.size.width_height", "").split(",");
if(size.length == 2 && location.length == 2) {
@@ -89,8 +96,13 @@ public class FacolaView extends ImageView implements OnTouchListener {
if(mInsideCircle) {
try {
int nitValue = 3;
- if(mXiaomiFingerprint != null)
- mXiaomiFingerprint.extCmd(0xa, nitValue);
+ if(mXiaomiFingerprint != null) {
+ mMainHandler.postDelayed(() -> {
+ try {
+ mXiaomiFingerprint.extCmd(0xa, nitValue);
+ } catch(Exception e) {}
+ }, 60);
+ }
} catch(Exception e) {
Slog.d("PHH-Enroll", "Failed calling xiaomi fp extcmd");
}
@@ -123,8 +135,15 @@ public class FacolaView extends ImageView implements OnTouchListener {
invalidate();
if(!mInsideCircle) {
- mParams.screenBrightness = .0f;
mParams.dimAmount = UNTOUCHED_DIM;
+ //Changing Dim is instant, changing brightness isn't.
+ //Have a little pity of users' eyes and wait a bit
+ mMainHandler.postDelayed(() -> {
+ if(visible) {
+ mParams.screenBrightness = .0f;
+ mWM.updateViewLayout(this, mParams);
+ }
+ }, 100);
mWM.updateViewLayout(this, mParams);
return false;
}
@@ -133,6 +152,7 @@ public class FacolaView extends ImageView implements OnTouchListener {
mParams.screenBrightness = 1.0f;
mWM.updateViewLayout(this, mParams);
+
return true;
}
@@ -166,6 +186,7 @@ public class FacolaView extends ImageView implements OnTouchListener {
mParams.gravity = Gravity.TOP | Gravity.LEFT;
mWM.addView(this, mParams);
+ visible = true;
}
@@ -188,5 +209,6 @@ public class FacolaView extends ImageView implements OnTouchListener {
Slog.d("PHH-Enroll", "Removed facola");
mWM.removeView(this);
+ visible = false;
}
}
--
2.17.1