diff options
author | John Spurlock <jspurlock@google.com> | 2014-06-17 13:58:31 -0400 |
---|---|---|
committer | John Spurlock <jspurlock@google.com> | 2014-06-25 13:33:09 -0400 |
commit | bf370992508c55d1f2493923bdc1834a0710e4ba (patch) | |
tree | 4be1a3567ebe163297be36da5ac6d51539964922 /services/core/java/com/android/server/dreams | |
parent | 828d11df52680ad75e045f5e4251311605d37af2 (diff) | |
download | frameworks_base-bf370992508c55d1f2493923bdc1834a0710e4ba.zip frameworks_base-bf370992508c55d1f2493923bdc1834a0710e4ba.tar.gz frameworks_base-bf370992508c55d1f2493923bdc1834a0710e4ba.tar.bz2 |
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
Diffstat (limited to 'services/core/java/com/android/server/dreams')
-rw-r--r-- | services/core/java/com/android/server/dreams/DreamManagerService.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/dreams/DreamManagerService.java b/services/core/java/com/android/server/dreams/DreamManagerService.java index 8968da3..ed4ccfc 100644 --- a/services/core/java/com/android/server/dreams/DreamManagerService.java +++ b/services/core/java/com/android/server/dreams/DreamManagerService.java @@ -103,6 +103,9 @@ public final class DreamManagerService extends SystemService { @Override public void onBootPhase(int phase) { if (phase == SystemService.PHASE_THIRD_PARTY_APPS_CAN_START) { + if (Build.IS_DEBUGGABLE) { + SystemProperties.addChangeCallback(mSystemPropertiesChanged); + } mContext.registerReceiver(new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { @@ -127,6 +130,7 @@ public final class DreamManagerService extends SystemService { pw.println("mCurrentDreamCanDoze=" + mCurrentDreamCanDoze); pw.println("mCurrentDreamIsDozing=" + mCurrentDreamIsDozing); pw.println("mCurrentDreamDozeHardware=" + mCurrentDreamDozeHardware); + pw.println("getDozeComponent()=" + getDozeComponent()); pw.println(); DumpUtils.dumpAsync(mHandler, new DumpUtils.Dump() { @@ -653,4 +657,18 @@ public final class DreamManagerService extends SystemService { } } } + + private final Runnable mSystemPropertiesChanged = new Runnable() { + @Override + public void run() { + if (DEBUG) Slog.d(TAG, "System properties changed"); + synchronized(mLock) { + if (mCurrentDreamName != null && mCurrentDreamCanDoze + && !mCurrentDreamName.equals(getDozeComponent())) { + // may have updated the doze component, wake up + stopDreamLocked(); + } + } + } + }; } |