diff options
| author | 2016-03-18 01:12:57 +0000 | |
|---|---|---|
| committer | 2016-03-18 01:12:58 +0000 | |
| commit | a17fa708e7eddeac7a757ca28130e12ed2c19e77 (patch) | |
| tree | 77735fed8c9f39bf01e6ba97fa032d4df34ffa1a | |
| parent | 836ed4a582691a4c42709645b2636d35efcd4de9 (diff) | |
| parent | c5874094eb64d7312bea02f15456977f3da5ca70 (diff) | |
Merge "Dispatch aggregated visibility when performing attachViewToParent" into nyc-dev
| -rw-r--r-- | core/java/android/view/ViewGroup.java | 2 | ||||
| -rw-r--r-- | core/java/android/widget/ImageView.java | 9 |
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(); |