summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author George Mount <mount@google.com> 2014-09-03 07:27:47 -0700
committer George Mount <mount@google.com> 2014-09-03 17:29:57 +0000
commit99c82fd1de23deeb8cf640bb574c76af76429df6 (patch)
treefa74547ef946c69101a62d1dd43edc2fc8d3af11
parent6906771d76f9625078c2842c0e82a9da16446bc8 (diff)
Additional fixes for "back" with translucent windows.
Ensure background is mutated before changing its alpha. Ensure resetViews is called when activity options is set. Bug 16215650 Change-Id: I8482532777652a93b2c0d05c1b902516d281baf0
-rw-r--r--core/java/android/app/ActivityTransitionState.java1
-rw-r--r--core/java/android/app/EnterTransitionCoordinator.java1
-rw-r--r--core/java/android/app/ExitTransitionCoordinator.java2
3 files changed, 4 insertions, 0 deletions
diff --git a/core/java/android/app/ActivityTransitionState.java b/core/java/android/app/ActivityTransitionState.java
index 613e24854dbd..ad4a22bb7a57 100644
--- a/core/java/android/app/ActivityTransitionState.java
+++ b/core/java/android/app/ActivityTransitionState.java
@@ -151,6 +151,7 @@ class ActivityTransitionState {
mEnterActivityOptions = options;
mIsEnterTriggered = false;
if (mEnterActivityOptions.isReturning()) {
+ restoreExitedViews();
int result = mEnterActivityOptions.getResultCode();
if (result != 0) {
activity.onActivityReenter(result, mEnterActivityOptions.getResultData());
diff --git a/core/java/android/app/EnterTransitionCoordinator.java b/core/java/android/app/EnterTransitionCoordinator.java
index 47d3fd60c586..52e15237d206 100644
--- a/core/java/android/app/EnterTransitionCoordinator.java
+++ b/core/java/android/app/EnterTransitionCoordinator.java
@@ -466,6 +466,7 @@ class EnterTransitionCoordinator extends ActivityTransitionCoordinator {
Drawable background = getDecor().getBackground();
if (background != null) {
background = background.mutate();
+ getWindow().setBackgroundDrawable(background);
mBackgroundAnimator = ObjectAnimator.ofInt(background, "alpha", 255);
mBackgroundAnimator.setDuration(getFadeDuration());
mBackgroundAnimator.addListener(new AnimatorListenerAdapter() {
diff --git a/core/java/android/app/ExitTransitionCoordinator.java b/core/java/android/app/ExitTransitionCoordinator.java
index 3760b96b5980..5adb68157644 100644
--- a/core/java/android/app/ExitTransitionCoordinator.java
+++ b/core/java/android/app/ExitTransitionCoordinator.java
@@ -259,6 +259,8 @@ class ExitTransitionCoordinator extends ActivityTransitionCoordinator {
ViewGroup decor = getDecor();
Drawable background;
if (decor != null && (background = decor.getBackground()) != null) {
+ background = background.mutate();
+ getWindow().setBackgroundDrawable(background);
mBackgroundAnimator = ObjectAnimator.ofInt(background, "alpha", 0);
mBackgroundAnimator.addListener(new AnimatorListenerAdapter() {
@Override