History log of /frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
8e5d33ef985ebeaa68bf2a7847ed865536ff0623 10-Jun-2015 Jeff Brown <jeffbrown@google.com> Don't request traversals when updating display brightness.

Setting the display state and brightness does not require a surface
flinger transaction so don't schedule traversals unnecessarily.
They may still be scheduled as a side-effect of other operations
but only when needed.

Bug: 21296696
Change-Id: Ie264254ea1972c37319e5e5a06163d47f6689c22
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
b3b9eb3cfc5b3b3609a5d01258315798b38a5cf9 12-May-2015 P.Y. Laligand <pylaligand@google.com> DO NOT MERGE - Display mode switches.

Knowledge of the various modes of a display is now available to apps, and they can request a specific mode for their windows.

b/18241736

Change-Id: I8eb16ff713e878512faca3ca6662254f08a9be7f
(cherry picked from commit 5c7773d86484aac5737667c604bd8fe8150c2136)
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
10acf6d3efde60977d2d2e82b90c53d722d9d357 14-Apr-2015 Jeff Brown <jeffbrown@google.com> Reduce display device log spam.

Don't repeat all of the display properties every time the display
just switches states.

Bug: 19996401
Change-Id: I9a1bd56f6e079b1c3f94e4be6ee2745a6df38d21
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.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/DisplayManagerService.java
d2e8640c2c1972d4f2e92d48660fa9e17d9291c4 19-Feb-2015 Filip Gruszczynski <gruszczy@google.com> Burn in protection.

Bug: 19373758
Change-Id: I7242f73acadd21bdee03262b4205c8af0734fccb
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
0033a86c25fde70911086c3d8ff2738aa88c0ff6 08-Oct-2014 Jeff Brown <jeffbrown@google.com> Ensure we correctly unblank displays when added.

A previous change introduced a regression in the case where
a device has been added but is initially blanked. Because
we made changes to defer certain work until we escape the
critical section when making changes to the global display
state, we forgot to apply these changes when displays are
initially added.

This causes problems with HDMI displays remaining blanked
after they are plugged in.

Added a quick fix to ensure we perform the work when adding
a display although we don't bother trying to defer it outside
of the critical section.

Bug: 17909838
Change-Id: If5373d20d8827b7f4330a8cf49f8de64ca3f0740
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
8d05172112436a81bed6e4a0810f8914509d8a4d 01-Oct-2014 Dianne Hackborn <hackbod@google.com> More work on issue #17656716: Unhandled exception in Window Manager

Fix Slog.wtf to not acquire the activity manager lock in its code
path, so that it can never deadlock. This was the original intention
of it, but part was missed.

Now we can put back in the code to detect when strict mode data is
getting large (a little more targeted now to the actual problem),
and use Slog.wtf to report it. And as a bonus, when this happens
we will now clear all of the collected violations, to avoid getting
in to the bad case where IPCs start failing. So this should be
good enough for L to fix the problem, with wtf reports for us to
see if the underlying issue is still happening.

Finally, switch a butch of stuff in the system process from Log.wtf
to Slog.wtf, since many of those are deadlocks waiting to happen.

Oh and fix a crash in the settings provider I noticed in APR.

Change-Id: I307d51b7a4db238fd1e5fe2f3f9bf1b9c6f1c041
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
e75926d6dc49878682631508c996e472d79a8d41 19-Sep-2014 Jeff Brown <jeffbrown@google.com> Move setting the display state out of the critical section.

Setting the display power state currently happens while holding the
display manager lock. This change moves it out of the lock to
ensure other services don't get stuck for several hundred
milliseconds.

Unfortunately, surface flinger ends up stalled a little later
so this only solves part of the problem.

Bug: 17623774
Change-Id: I201137c5e7f82c776f28a436845fcf3191fd0ca5
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
75ee9fcde4d9e1be3883eba6c8d193db4375b052 02-Sep-2014 Michael Wright <michaelwr@google.com> VirtualDisplay.Callbacks -> Callback

Also, rename methods to be onPaused instead of onDisplayPaused, etc.

Bug: 17008630
Change-Id: Id9ead22a42d36ac338309f0f021ba341ed991144
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
6720be4e8c65e90d4453ddad5cef192bc3820038 30-Jul-2014 Michael Wright <michaelwr@google.com> Allow media projections to create public presentations.

Change-Id: I3b6e0b54d658352942a38be6a24486bdfc179efd
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
3f145a2f958320766ae9240c7a57debc20d578aa 23-Jul-2014 Michael Wright <michaelwr@google.com> Add supported refresh rate to displays

Change-Id: I51231dd6dd231d57dd1ac499349d6335121f07d5
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
01e840ff9441e005153d799e71d65b38bcb21902 27-Jun-2014 Michael Wright <michaelwr@google.com> Add resize method for virtual displays

Change-Id: I2632fc56c2d2cba356379e42f5c1a3e283b11d1e
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
0ccc2b0a4466f12fb1d753b58314854674b01b3c 25-Jul-2014 Michael Wright <michaelwr@google.com> Flip the permissions checks for video capture.

Currently they're backwards in DisplayManagerService. Oops.

Bug: 16315225
Change-Id: I9bbfc0f4aef1bd21e43594cc36c6e8fd112f0b81
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
c39d47a8e7c74bd539104b0efab898ef6fc43ddf 09-Jul-2014 Michael Wright <michaelwr@google.com> Add MediaProjection APIs.

The new MediaProjection infrastructure allows the system to hand out
tokens granting the ability to capture the screen's contents, audio,
etc. at a granular level. It's intended to be used both for screen
casting, via the cast APIs, as well as screen sharing via third party
applications.

The screen sharing case is implemented, but all of audio capturing
is still forthcoming.

Change-Id: I4b24669bed7083e11413c10ed8d6b025f5375316
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
92207df753c27b094e9e0ca80d41bc0d54dc6bd5 16-Apr-2014 Jeff Brown <jeffbrown@google.com> Add support for dynamically setting the virtual display surface.

Previously, the surface that backs a virtual display had to be set
at the time when the display was created. This change now makes
it possible to set or remove the surface later. The virtual display
is treated as if it were "off" while no surface is attached to it.

Change-Id: Ib4fdbbb8b4ee79f0fb9ceb648f9bda4a8fa6a2ca
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.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/DisplayManagerService.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/DisplayManagerService.java
b880d880c6cd989eacc28c365fc9a41d31900da1 11-Feb-2014 Jeff Brown <jeffbrown@google.com> Make SystemService constructor take a Context.

This change simplifies the process of initializing a SystemService
by folding the onCreate() step back into the constructor. It removes
some ambuiguity about what work should happen in the constructor and
should make it possible for services to retain most of their final
fields after refactoring into the new pattern.

Change-Id: I25f41af0321bc01898658ab44b369f9c5d16800b
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
4ccb823a9f62e57f9d221f83a97e82967e79a9e5 17-Jan-2014 Jeff Brown <jeffbrown@google.com> Refactor display manager service to new pattern.

Transform DisplayManagerService into a SystemService and start cleaning
up other local services that it uses from window manager and input manager.

Clean up service thread initialization.

Remove unnecessary static variables from ActivityManagerService.

It's starting to become clear that we really need a better way to manage
service dependencies. Boot phases don't quite cut it.

Change-Id: If319dbd7cbfbd4812fe55ece969e818d4b20755b
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
4504de5d5a8e1c7dfb306b16282f348856c24764 20-Dec-2013 Craig Mautner <cmautner@google.com> Implement ActivityView.

With an existing ActivityContainer a caller can now create an
ActivityView which consists of a new VirtualDisplay immediately
attached to the ActivityContainer.

Change-Id: Id70333dcbef55d524a87df8f8c92d72ca5579364
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
d14c8c9039c0056e1f30ad5d410c8fde20d63df5 08-Jan-2014 Jeff Brown <jeffbrown@google.com> Add flag to force public virtual display to show own content.

Change-Id: I1039f2ef3154169ec90411a4c7ba2c94629f72c4
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java
9158825f9c41869689d6b1786d7c7aa8bdd524ce 22-Nov-2013 Amith Yamasani <yamasani@google.com> Move some system services to separate directories

Refactored the directory structure so that services can be optionally
excluded. This is step 1. Will be followed by another change that makes
it possible to remove services from the build.

Change-Id: Ideacedfd34b5e213217ad3ff4ebb21c4a8e73f85
/frameworks/base/services/core/java/com/android/server/display/DisplayManagerService.java