diff options
author | Jeff Brown <jeffbrown@google.com> | 2014-04-11 03:49:37 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-04-11 03:49:37 +0000 |
commit | 337e764debde56b1462fb5f2794b3e917d8a42e2 (patch) | |
tree | 5a2b4e77654a0897408f04e429045e49359a0e4b /core/java/android/service | |
parent | cd5e3f85fc9228b943ee8dfda0951e068953596c (diff) | |
parent | f24687e2731811fd0e3803b691fd47a659f89329 (diff) | |
download | frameworks_base-337e764debde56b1462fb5f2794b3e917d8a42e2.zip frameworks_base-337e764debde56b1462fb5f2794b3e917d8a42e2.tar.gz frameworks_base-337e764debde56b1462fb5f2794b3e917d8a42e2.tar.bz2 |
am f24687e2: Merge "Plumb display power state through display manager." into klp-modular-dev
* commit 'f24687e2731811fd0e3803b691fd47a659f89329':
Plumb display power state through display manager.
Diffstat (limited to 'core/java/android/service')
-rw-r--r-- | core/java/android/service/dreams/DreamService.java | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/core/java/android/service/dreams/DreamService.java b/core/java/android/service/dreams/DreamService.java index de9eeff..2303d65 100644 --- a/core/java/android/service/dreams/DreamService.java +++ b/core/java/android/service/dreams/DreamService.java @@ -789,10 +789,20 @@ public class DreamService extends Service implements Window.Callback { return; } - // start it up - if (mDebug) Slog.v(TAG, "Calling onDreamingStarted()"); - mStarted = true; - onDreamingStarted(); + // We need to defer calling onDreamingStarted until after onWindowAttached, + // which is posted to the handler by addView, so we post onDreamingStarted + // to the handler also. Need to watch out here in case detach occurs before + // this callback is invoked. + mHandler.post(new Runnable() { + @Override + public void run() { + if (mWindow != null) { + if (mDebug) Slog.v(TAG, "Calling onDreamingStarted()"); + mStarted = true; + onDreamingStarted(); + } + } + }); } private void safelyFinish() { |