summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author George Mount <mount@google.com> 2014-07-31 09:58:16 -0700
committer George Mount <mount@google.com> 2014-07-31 17:05:37 +0000
commit6ceac2eafbb43dafd18bf547fee6fe51aee6b59b (patch)
tree4f8b0476f180a03726e3c035989f460e2bee25ea
parentfa4aeeeb716c4fe1c91a83a3f4381a67a4cbfabd (diff)
Fix visibility propagation check.
Bug 16704963 Change-Id: I2538bac4b4565ac8c6b27407c7679fea55b1092b
-rw-r--r--core/java/android/transition/Visibility.java2
-rw-r--r--core/java/android/transition/VisibilityPropagation.java6
2 files changed, 6 insertions, 2 deletions
diff --git a/core/java/android/transition/Visibility.java b/core/java/android/transition/Visibility.java
index af2016ccf2a4..79dbb49f5245 100644
--- a/core/java/android/transition/Visibility.java
+++ b/core/java/android/transition/Visibility.java
@@ -43,7 +43,7 @@ import android.view.ViewGroup;
*/
public abstract class Visibility extends Transition {
- private static final String PROPNAME_VISIBILITY = "android:visibility:visibility";
+ static final String PROPNAME_VISIBILITY = "android:visibility:visibility";
private static final String PROPNAME_PARENT = "android:visibility:parent";
private static final String PROPNAME_SCREEN_LOCATION = "android:visibility:screenLocation";
diff --git a/core/java/android/transition/VisibilityPropagation.java b/core/java/android/transition/VisibilityPropagation.java
index 0326d4725ecd..183e036517ef 100644
--- a/core/java/android/transition/VisibilityPropagation.java
+++ b/core/java/android/transition/VisibilityPropagation.java
@@ -42,7 +42,11 @@ public abstract class VisibilityPropagation extends TransitionPropagation {
@Override
public void captureValues(TransitionValues values) {
View view = values.view;
- values.values.put(PROPNAME_VISIBILITY, view.getVisibility());
+ Integer visibility = (Integer) values.values.get(Visibility.PROPNAME_VISIBILITY);
+ if (visibility == null) {
+ visibility = view.getVisibility();
+ }
+ values.values.put(PROPNAME_VISIBILITY, visibility);
int[] loc = new int[2];
view.getLocationOnScreen(loc);
loc[0] += Math.round(view.getTranslationX());