summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/display/LocalDisplayAdapter.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/display/LocalDisplayAdapter.java b/services/core/java/com/android/server/display/LocalDisplayAdapter.java
index b8bf4847f556..096f26399973 100644
--- a/services/core/java/com/android/server/display/LocalDisplayAdapter.java
+++ b/services/core/java/com/android/server/display/LocalDisplayAdapter.java
@@ -96,6 +96,14 @@ final class LocalDisplayAdapter extends DisplayAdapter {
}
}
+ static boolean shouldBlank(int state) {
+ return state == Display.STATE_OFF;
+ }
+
+ static boolean shouldUnblank(int state) {
+ return state == Display.STATE_ON || state == Display.STATE_DOZING;
+ }
+
private final class LocalDisplayDevice extends DisplayDevice {
private final int mBuiltInDisplayId;
private final SurfaceControl.PhysicalDisplayInfo mPhys;
@@ -175,9 +183,9 @@ final class LocalDisplayAdapter extends DisplayAdapter {
@Override
public void requestDisplayStateLocked(int state) {
if (mState != state) {
- if (state == Display.STATE_OFF && mState != Display.STATE_OFF) {
+ if (shouldBlank(state) && !shouldBlank(mState)) {
SurfaceControl.blankDisplay(getDisplayTokenLocked());
- } else if (state != Display.STATE_OFF && mState == Display.STATE_OFF) {
+ } else if (shouldUnblank(state) && !shouldUnblank(mState)) {
SurfaceControl.unblankDisplay(getDisplayTokenLocked());
}
mState = state;