diff options
| author | Adam Cohen <adamcohen@google.com> | 2011-01-21 18:12:15 -0800 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-01-21 18:12:15 -0800 |
| commit | a049fe95cdf68c73f104420433610d8a8a8a7357 (patch) | |
| tree | 9457632f187f818fb7cb03e4fb78ba97dfd8ee6f /core/java/android/widget/StackView.java | |
| parent | 3024a5a54f09a1861ee85a5e2785b1cf8a70de39 (diff) | |
| parent | e86ff4d56145d875c13a1637833f9f55d79febc9 (diff) | |
Merge "Fixing a couple StackView bugs:" into honeycomb
Diffstat (limited to 'core/java/android/widget/StackView.java')
| -rw-r--r-- | core/java/android/widget/StackView.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/core/java/android/widget/StackView.java b/core/java/android/widget/StackView.java index 9ec4b74c59e3..03c073c3d10b 100644 --- a/core/java/android/widget/StackView.java +++ b/core/java/android/widget/StackView.java @@ -454,9 +454,13 @@ public class StackView extends AdapterViewAnimator { canvas.getClipBounds(stackInvalidateRect); final int childCount = getChildCount(); for (int i = 0; i < childCount; i++) { - LayoutParams lp = (LayoutParams) getChildAt(i).getLayoutParams(); + final View child = getChildAt(i); + LayoutParams lp = (LayoutParams) child.getLayoutParams(); + if ((lp.horizontalOffset == 0 && lp.verticalOffset == 0) || + child.getAlpha() == 0f || child.getVisibility() != VISIBLE) { + lp.resetInvalidateRect(); + } stackInvalidateRect.union(lp.getInvalidateRect()); - lp.resetInvalidateRect(); } canvas.save(Canvas.CLIP_SAVE_FLAG); canvas.clipRect(stackInvalidateRect, Region.Op.UNION); |
