summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Adam Powell <adamp@google.com> 2016-03-18 01:12:57 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2016-03-18 01:12:58 +0000
commita17fa708e7eddeac7a757ca28130e12ed2c19e77 (patch)
tree77735fed8c9f39bf01e6ba97fa032d4df34ffa1a
parent836ed4a582691a4c42709645b2636d35efcd4de9 (diff)
parentc5874094eb64d7312bea02f15456977f3da5ca70 (diff)
Merge "Dispatch aggregated visibility when performing attachViewToParent" into nyc-dev
-rw-r--r--core/java/android/view/ViewGroup.java2
-rw-r--r--core/java/android/widget/ImageView.java9
2 files changed, 8 insertions, 3 deletions
diff --git a/core/java/android/view/ViewGroup.java b/core/java/android/view/ViewGroup.java
index aa11e3f96ef5..816d9c48539e 100644
--- a/core/java/android/view/ViewGroup.java
+++ b/core/java/android/view/ViewGroup.java
@@ -4994,6 +4994,8 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
if (child.hasFocus()) {
requestChildFocus(child, child.findFocus());
}
+ dispatchVisibilityAggregated(isAttachedToWindow() && getWindowVisibility() == VISIBLE
+ && isShown());
}
/**
diff --git a/core/java/android/widget/ImageView.java b/core/java/android/widget/ImageView.java
index 04d344f0caa6..222a040d2b3c 100644
--- a/core/java/android/widget/ImageView.java
+++ b/core/java/android/widget/ImageView.java
@@ -913,7 +913,9 @@ public class ImageView extends View {
if (mDrawable != null) {
mDrawable.setCallback(null);
unscheduleDrawable(mDrawable);
- mDrawable.setVisible(false, false);
+ if (isAttachedToWindow()) {
+ mDrawable.setVisible(false, false);
+ }
}
mDrawable = d;
@@ -924,8 +926,9 @@ public class ImageView extends View {
if (d.isStateful()) {
d.setState(getDrawableState());
}
- d.setVisible(isAttachedToWindow() && getWindowVisibility() == VISIBLE && isShown(),
- true);
+ if (isAttachedToWindow()) {
+ d.setVisible(getWindowVisibility() == VISIBLE && isShown(), true);
+ }
d.setLevel(mLevel);
mDrawableWidth = d.getIntrinsicWidth();
mDrawableHeight = d.getIntrinsicHeight();