summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Bryce Lee <brycelee@google.com> 2023-02-27 19:31:58 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-02-27 19:31:58 +0000
commitbcdb5a0319136511b3828f1f8f4691ded68c73ee (patch)
tree74eeccb96609e3dad0a9f9fc034997e15bcfc955
parent76bbdfda91f7131f9e4e66637a0493cb6de7deef (diff)
parente2f1fb1d6bdc28f9f8b9ce78d521f53390f29ba0 (diff)
Merge "Add oldDream to mPreviousDreams always when dreams overlap" into udc-dev
-rw-r--r--services/core/java/com/android/server/dreams/DreamController.java7
1 files changed, 3 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/dreams/DreamController.java b/services/core/java/com/android/server/dreams/DreamController.java
index 3bc4b543750e..3e2efdd7db85 100644
--- a/services/core/java/com/android/server/dreams/DreamController.java
+++ b/services/core/java/com/android/server/dreams/DreamController.java
@@ -158,15 +158,14 @@ final class DreamController {
final DreamRecord oldDream = mCurrentDream;
mCurrentDream = new DreamRecord(token, name, isPreviewMode, canDoze, userId, wakeLock);
if (oldDream != null) {
- if (!oldDream.mWakingGently) {
- // We will stop these previous dreams once the new dream is started.
- mPreviousDreams.add(oldDream);
- } else if (Objects.equals(oldDream.mName, mCurrentDream.mName)) {
+ if (Objects.equals(oldDream.mName, mCurrentDream.mName)) {
// We are attempting to start a dream that is currently waking up gently.
// Let's silently stop the old instance here to clear the dream state.
// This should happen after the new mCurrentDream is set to avoid announcing
// a "dream stopped" state.
stopDreamInstance(/* immediately */ true, "restarting same dream", oldDream);
+ } else {
+ mPreviousDreams.add(oldDream);
}
}