History log of /frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d9f1c9c7f2449c09b089fd7fefb1833a88322ab2 06-Jun-2017 Michael Wright <michaelwr@google.com> Actually wait until the display is ready.

When this was rewritten to only wait for display state changes and not
brightness changes, it forgot to take into account whether a change was
already in flight when reporting whether a change was happening. Fix
that so the display appropriately reports when it's ready and when it's
blocked.

Bug: 32559368
Test: Take systrace of device wakeup, see it actually waits until the
display is actually ready

Change-Id: Ie3bd5c48d109a0fb2628ccc8f67bb52be51fad5c
(cherry picked from commit 640666fcfd4f40ba69dbe459adea7b31407209ac)
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
d73854dbfde6e034ae0a6d12c52930c5284a08bb 25-Sep-2015 Michael Lentine <mlentine@google.com> Remove ColorFade resouces when screen off.

This will not destroy the surface but will free up everything else used by
ColorFade when the screen is turned off. When it is turned on the surface is
dismissed.

Bug: 24371570

Change-Id: Iba455cdf225a68b320896f8b35d1e873e694b1e3
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
6e90ea03365c6baddc13762c5a701b84540d8bf9 24-Aug-2015 Jorim Jaggi <jjaggi@google.com> Don't wait for brightness changes

On some devices, changing the brightness is quite slow, because the
change needs to wait for the vsync signal. However, when we are also
running a brightness change animation, as soon as the last change has
been sent there is a new one pending, leading to that we never reach
"clean" state in the PowerManagerService and thus we don't notify
clients about the state change, which can delay the animation for waking
up while dozing by as much as a second.

To fix this, if we only issue a brightness change, we don't block on
that because it's not relevant for us.

Bug: 22879546
Change-Id: Idad7e90c436bfbc38581fe8ce24d606e432b7952
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
5d6443bf7c087167e47ea39b13e6af09cb43ad97 11-Apr-2015 Jeff Brown <jeffbrown@google.com> Set initial screen brightness earlier in the boot process.

Previously we had to wait for systemReady before setting the brightness
due to the order in which the display power controller was initialized.
Unfortunately it could take us a rather long time to reach that stage,
particularly after an OTA where the screen would remain at maximum
brightness for minutes while "Optimizing Apps".

This change moves the brightness backlight setting code deeper
into the display manager which has a couple of nice side-benefits
in that it now becomes much easier to coordinate display power mode
changes with display backlight changes. So this change also resolves
some issued with changing the backlight while in DOZE_SUSPEND and
ensuring that backlight changes generally end up being performed
before executing a power mode change except in the case where the
display needs to come out of suspend first. (So now the backlight
will be set before entering DOZE from the ON state.)

Deleted some dead code in LightService which was in the way.

Bug: 19029490
Change-Id: I494b5223e676248daf2ff8be3ec338845977f73c
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
faec22c8e19d123bdbcfe5ba2c1ec7fe21516faa 10-Apr-2015 Jeff Brown <jeffbrown@google.com> Tweak systrace for power manager.

Add name to photonic modulator thread.
Print light color in hex.

Change-Id: I813e875b04c381b26e0f79773a209417eca21e21
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
0a434776b836f8fbea1f84b7bfe158b4ddafc876 30-Sep-2014 Jeff Brown <jeffbrown@google.com> Reduce latency from doze to screen on.

Don't wait for the brightness ramp to complete before reporting
display ready. Keep track of whether we have any unfinished
brightness changes and take care to grab a wakelock to ensure
they are eventually applied.

Ideally we would rewrite the whole state machine to more carefully
coordinate screen state and brightness changes but that's too
risky for now.

The pixel fairies are having a bad day.

Bug: 17718416

(cherry picked from commit 875f80c2732a3fbe652a6e8fc14031041f791308)

Change-Id: I7a2d8ba4591a12b773653d3dbf86c7db016f967e
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
3edf5272fb2185403dfe64b9722b9fc9b9de80f8 15-Aug-2014 Jeff Brown <jeffbrown@google.com> Add trace tag for power management.

Instrumented the basic power manager state transitions,
calling into the Power HAL, setting the display power mode,
and setting the backlight.

Bug: 17004602
Change-Id: I4e362162ddfd7292a7eea8b5d029ce3f6593c4a9
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
0839adb25c6d1a9f4e06fc5a098ffd03c67dbe99 30-Jul-2014 Michael Lentine <mlentine@google.com> New screen shut down animation.

Bug: 16845774

Change-Id: I355f8d73f54a873f6df180dc48c177b993f170f9
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
970d4132ea28e748c1010be39450a98bbf7466f3 19-Jul-2014 Jeff Brown <jeffbrown@google.com> Allow dreams to control screen state and brightness.

Added setDozeScreenState() and setDozeScreenBrightness() methods to
DreamService. The values specified here only take effect once
startDozing is called and can be changed while dozing.

This required some significant rework of the display power controller
but the result seems quite nice and better represents the policy
we want to apply.

Changed the test dream a little bit to make it flash the screen
every minute using the new functions.

Bug: 15903322
Change-Id: I83bcc34503f1b87727d2b2b3c0ef08507f9f0808
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
037c33eae74bee2774897d969d48947f9abe254f 09-Apr-2014 Jeff Brown <jeffbrown@google.com> Plumb display power state through display manager.

Declare a new method, Display.getState() to retrieve the actual
power state of a display.

Improved documentation for Intent.ACTION_SCREEN_ON and
Intent.ACTION_SCREEN_OFF to clarify what they really mean in
terms of the interactive state of the device.

Deprecated PowerManager.isScreenOn() and replaced it with
PowerManager.isInteractive() with a more suggestive name and
better documentation.

Redirect display power state changes to go through the display
manager first and only then head over to the power manager for
legacy compatibility.

Eliminated the bright here and woke here policy flags since they
were unused. Simplified the input dispatch policy somewhat.

Ensure that screen wake locks are respected up until the point
when dozing really begins.

Fixed a regression in DreamService where onDreamingStarted
might be called before onWindowAttached.

Bug: 13133142
Bug: 13472578
Bug: 13929355
Bug: 13760290
Change-Id: Iabef96921dd554ce3768fb18619cefc3230b5fb0
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java
ad9ef191f50767d8d5b6f0fbd4b59bb1400dcd25 09-Apr-2014 Jeff Brown <jeffbrown@google.com> Move display power controller to display manager service. (DO NOT MERGE)

This refactoring is in preparation for enabling the display manager
to have more control over the blanking state of individual displays.
There are no functional changes. Some bits will be cleaned up in
a subsequent patch.

Bug: 13133142
Change-Id: Ib811835e8757449c7899ac61807029baaf998161
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerState.java