History log of /frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
102b9e596820c1c2b7d43b48fe4e10412e960ae5 05-Jun-2017 Erik Wolsheimer <ewol@google.com> Merge "Revert "Fix race condition triggered by quick stop/start of Dream"" into cw-f-dev am: 7a5dd1c3ff
am: 51a89ee90c

Change-Id: I982b94c155849061a667b1bf90f7a511bb81b1c5
a8e20176affe306f4e9e8e841abe75ec58774302 05-Jun-2017 Erik Wolsheimer <ewol@google.com> Revert "Fix race condition triggered by quick stop/start of Dream"

Causes another race condition

This reverts commit 69515b2261335be4bd8510ed5a40a6bed3d7b48f.

Bug: 62147987
Change-Id: Ibe6f9bc14ed6cc35d3a23d52300657eaed9bb6d8
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
f61df4329b55ef612e97ca3e010376222abac02e 24-May-2017 Erik Wolsheimer <ewol@google.com> Merge "Fix race condition triggered by quick stop/start of Dream" into cw-f-dev am: 90a6054805
am: 94b497bccc

Change-Id: I62ab41ed83aa92b12e7fa3c9111a6f97e6ef13ef
69515b2261335be4bd8510ed5a40a6bed3d7b48f 17-May-2017 Erik Wolsheimer <ewol@google.com> Fix race condition triggered by quick stop/start of Dream

Bug: 28455483
Change-Id: I20de24c68e468e61bb8fc704bacf73dc6df63b0a
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
1294bb1b53cc6099dafa5148df2e9b67f874f698 28-Apr-2017 Erik Wolsheimer <ewol@google.com> Add logging around dream start/stop am: 4769b54d49
am: b50a0cdd5e

Change-Id: I0db4f7ff4c7782e71ff7a4e7528776462132d3ed
4769b54d4993e9dec5658ab5e538d8e1d8d6046a 27-Apr-2017 Erik Wolsheimer <ewol@google.com> Add logging around dream start/stop

Bug: 28455483
Change-Id: I31d4d52c3ed4cbfc6f6a9d978fd2669224ba95b4
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
fe9a53bc45fd0124a876dc0a49680aaf86641d3e 31-Mar-2017 Jeff Sharkey <jsharkey@android.com> Consistent dump() permission checking.

This change introduces new methods on DumpUtils that can check if the
caller has DUMP and/or PACKAGE_USAGE_STATS access. It then moves all
existing dump() methods to use these checks so that we emit
consistent error messages.

Test: cts-tradefed run commandAndExit cts-dev -m CtsSecurityTestCases -t android.security.cts.ServicePermissionsTest
Bug: 32806790
Change-Id: Iaff6b9506818ee082b1e169c89ebe1001b3bfeca
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
b7e4e10618614aa8af5dec078a9784e50f9c9917 14-Oct-2016 Adrian Roos <roosa@google.com> Separate ambient display triggers

Allows configuring notification and sensor triggers
separately. Introduces a helper class that hosts the
logic for determining what kinds of triggers a device
supports.

Bug: 32073185
Change-Id: Ie7e8eb6b895dcc54e6f972e70642c7248b9e223a
Test: disable "ambient display", sensor triggers should still work
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
7445c0bb86c57172eb88a4e37183634abce2e37b 07-Sep-2016 Adrian Roos <roosa@google.com> Hold WakeLock while DreamService starts

Fixes a bug where DozeService would not properly initialize
because the CPU went to sleep before onDreamingStarted completed,
causing the pickup gesture to not work.

Change-Id: I85955a2b7d6bad5171accbc336117a9660b1b198
Fixes: 31044352
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
9918234dcf9e115560144d0218682dd5050843bc 16-Jun-2016 Adrian Roos <roosa@google.com> Enable tap-to-pulse only when needed

- Adds InputManager.setPulseEnabled().
- Adds a config overlay for the file controlling touch-to-pulse.
- Hooks up DreamManagerService with InputManager.setPulseEnabled().

Bug: 29253550
Change-Id: I4892311cc30e97d31f7be778930397fbe5c03945
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
60328375c85e2a9b48139b553912606e19865196 31-Mar-2016 Jeff Sharkey <jsharkey@android.com> Make DreamManagerService FBE aware.

It doesn't clobber state based on missing dreams, so we just need
the "triaged" flag to stop logging warnings.

Bug: 26476012
Change-Id: I29d6d4cce18d3e659590e7191681176bf19d0ad7
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
280a64e793d081847c5dcea23ed9be38aa5332d2 13-Jul-2015 Dianne Hackborn <hackbod@google.com> Improve tracking of screen on reasons.

- New screen on app op to record the last time each app has
caused the screen to be turned on.
- New battery stats event that tells us the reason the screen
has been asked to turn on.
- Propagate out power manager API to specify the reason a caller
is asking to have the screen turned on.

Note that currently the window flag to turn the screen on bypasses
much of this because it is being handled in the window manager by
just directly telling the power manager to turn the screen on. To
make this better we need a new API where it can specify who it is
calling the API for.

Change-Id: I667e56cb1f80508d054da004db667efbcc22e971
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
ae6688b09649447e57468b3e7935691bc09ec9b9 12-Feb-2015 Dianne Hackborn <hackbod@google.com> Update voice interaction layer for new UI design.

Can switch from a pure overlay at the top of the screen,
to interactive mode with the voice UI drawing at the bottom
and pushing its target activity up like an IME.

Add mechanism to get assist data to the voice interaction UI.

Add some basic visualization of the assist data, outlining
where on the screen we have text.

Add a test ACTION_ASSIST handler, which can propagate the
assist data it gets to the voice interaction session so
you can see what kind of data we are getting from different
apps.

Change-Id: I18312fe1601d7926d1fb96a817638d60f6263771
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
955d8d69ea6caabce1461dc25b339b9bf9dc61a6 08-Oct-2014 Dianne Hackborn <hackbod@google.com> Put in real "code" (aka marketing) name.

Change-Id: Idb3976edfae37293ed75cb5b869b4b42d8042bbe
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
a4215ceb86fbae3bcb40c4bd3b924e2b71cf50b6 04-Aug-2014 John Spurlock <jspurlock@google.com> Doze: Add a user opt-out setting.

When devices are configured with a doze component, the user
now has the option of disabling doze mode with a secure setting.

Bug:16703536
Change-Id: Ieab6ee8d2acf54580b86fb16e9d77b52080fb3b1
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
0f208eb707926f0afc1ce073be866bedd4955aa2 27-Jul-2014 Jeff Brown <jeffbrown@google.com> Remove DozeHardware since it will not be used.

Bug: 16516536
Change-Id: I14597d3c9470c94e3bc5b8cff500d2fe6b2fd977
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.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/dreams/DreamManagerService.java
f6d466895b74d620d646abbec1c8911f3a0ce0bb 18-Jul-2014 Jeff Brown <jeffbrown@google.com> Allow dreams to wake up gently.

This change adds a new DreamService.wakeUp() method to allow a
dream to wake itself up gently and perform a transition before
finally finishing. The power manager will ask a dream to wake
up gently in most cases but may force it to happen immediately
when necessary.

If the dream takes too long to finish itself then the dream
controller will douse it with water summarily after 5 seconds.

Change-Id: Ib0564c5650cd5a454e1acc5aa91fe46995eecfa7
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
eb8d1be6acad180eabde84f19196b9ecaba81353 25-Jun-2014 John Spurlock <jspurlock@google.com> Add a BIND_DREAM_SERVICE signature-level permission.

Starting in api 21, will be required to bind to a
declared dream or doze service.

Also added to aapt dump badging output.

Bug:15862654
Change-Id: Ifa0a594eeecf21e6146176c7810a847e1d08fe3b
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
bf370992508c55d1f2493923bdc1834a0710e4ba 17-Jun-2014 John Spurlock <jspurlock@google.com> Create a basic doze dream in SystemUI.

The doze dream is not configured by default.

When configured, the doze dream does not show anything by default.
It teases a dark version of the keyguard (showing only the time
and notifications) when a notification arrives or significant motion
is detected.

Bug:15863249
Change-Id: Icfceb054d35d6fd4d9178eda7480e2464873ca4b
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
9da8301e0abbc940b28a524e36e83f04884ce4cb 05-May-2014 Heather Lee Wilson <hwilson@google.com> Prevent crashing when disabling MCU during dream wakeup

AmbientMode attempting to send message to DozeHardware no longer results in an
uncaught IllegalStateException. The exception was crashing Android Wear when
DozeHardware had already been released by PowerManagementService at time of
AmbientMode's message.

Change-Id: I5956a453802b5b764e88638f6b6d899cbc94cc8d
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
2687550272ba061448f5d5b914700dc335299ee7 31-Jan-2014 Jeff Brown <jeffbrown@google.com> Add a new "doze mode" based on Dream components.

When a doze component has been specified in a config.xml resource
overlay, the power manager will try to start a preconfigured dream
whenever it would have otherwise gone to sleep and turned the
screen off. The dream should render whatever it intends to show
then call startDozing() to tell the power manager to put the display
into a low power "doze" state and allow the application processor
to be suspended. The dream may wake up periodically using the
alarm manager or other features to update the contents of the display.

Added several new config.xml resources related to dreams and dozing.
In particular for dozing there are two new resources that pertain to
decoupling auto-suspend mode and interactive mode from the display
state. This is a requirement to enable the application processor
and other components to be suspended while dozing. Most devices
do not support these features today.

Consolidated the power manager's NAPPING and DREAMING states into one
to simplify the logic. The NAPPING state was mostly superfluous
and simply indicated that the power manager should attempt to start
a new dream. This state is now tracked in the mSandmanSummoned field.

Added a new DOZING state which is analoguous to DREAMING. The normal
state transition is now: AWAKE -> DREAMING -> DOZING -> ASLEEP.
The PowerManager.goToSleep() method now enters the DOZING state instead
of immediately going to sleep.

While in the doze state, the screen remains on. However, we actually
tell the rest of the system that the screen is off. This is somewhat
unfortunate but much of the system makes inappropriate assumptions
about what it means for the screen to be on or off. In particular,
screen on is usually taken to indicate an interactive state where
the user is present but that's not at all true for dozing (and is
only sometimes true while dreaming). We will probably need to add
some more precise externally visible states at some point.

The DozeHardware interface encapsulates a generic microcontroller
interface to allow a doze dream for off-loading rendering or other
functions while dozing. If the device possesses an MCU HAL for dozing
then it is exposed to the DreamService here.

Removed a number of catch blocks in DreamService that caught Throwable
and attempted to cause the dream to finish itself. We actually just
want to let the process crash. Cleanup will happen automatically if
needed. Catching these exceptions results in mysterious undefined
behavior and broken dreams.

Bug: 12494706
Change-Id: Ie78336b37dde7250d1ce65b3d367879e3bfb2b8b
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.java
567f7ca424280ae957b04d4f3df690055f2d41df 31-Jan-2014 Jeff Brown <jeffbrown@google.com> Refactor dream manager to new pattern.

Change-Id: I99ab4bd98d56a290368dc4b24e5bb24e0656b522
/frameworks/base/services/core/java/com/android/server/dreams/DreamManagerService.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/dreams/DreamManagerService.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/dreams/DreamManagerService.java