Merge "Catch padding changes in ViewGroup to properly clip children Bug #6886339" into jb-mr1-dev

This commit is contained in:
Romain Guy
2012-08-07 14:52:34 -07:00
committed by Android (Google) Code Review
2 changed files with 11 additions and 6 deletions

View File

@@ -14107,7 +14107,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
internalSetPadding(left, top, right, bottom); internalSetPadding(left, top, right, bottom);
} }
private void internalSetPadding(int left, int top, int right, int bottom) { void internalSetPadding(int left, int top, int right, int bottom) {
mUserPaddingLeft = left; mUserPaddingLeft = left;
mUserPaddingRight = right; mUserPaddingRight = right;
mUserPaddingBottom = bottom; mUserPaddingBottom = bottom;

View File

@@ -170,6 +170,14 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
* This field should be made private, so it is hidden from the SDK. * This field should be made private, so it is hidden from the SDK.
* {@hide} * {@hide}
*/ */
@ViewDebug.ExportedProperty(flagMapping = {
@ViewDebug.FlagToString(mask = FLAG_CLIP_CHILDREN, equals = FLAG_CLIP_CHILDREN,
name = "CLIP_CHILDREN"),
@ViewDebug.FlagToString(mask = FLAG_CLIP_TO_PADDING, equals = FLAG_CLIP_TO_PADDING,
name = "CLIP_TO_PADDING"),
@ViewDebug.FlagToString(mask = FLAG_PADDING_NOT_NULL, equals = FLAG_PADDING_NOT_NULL,
name = "PADDING_NOT_NULL")
})
protected int mGroupFlags; protected int mGroupFlags;
/* /*
@@ -2509,12 +2517,9 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
super.dispatchDetachedFromWindow(); super.dispatchDetachedFromWindow();
} }
/**
* {@inheritDoc}
*/
@Override @Override
public void setPadding(int left, int top, int right, int bottom) { void internalSetPadding(int left, int top, int right, int bottom) {
super.setPadding(left, top, right, bottom); super.internalSetPadding(left, top, right, bottom);
if ((mPaddingLeft | mPaddingTop | mPaddingRight | mPaddingBottom) != 0) { if ((mPaddingLeft | mPaddingTop | mPaddingRight | mPaddingBottom) != 0) {
mGroupFlags |= FLAG_PADDING_NOT_NULL; mGroupFlags |= FLAG_PADDING_NOT_NULL;