Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

This commit is contained in:
Fabrice Di Meglio
2012-09-30 10:53:25 -07:00
committed by Android (Google) Code Review
5 changed files with 19 additions and 33 deletions

View File

@@ -25093,10 +25093,9 @@ package android.view {
method protected void onLayout(boolean, int, int, int, int);
method protected void onMeasure(int, int);
method protected void onOverScrolled(int, int, boolean, boolean);
method public void onPaddingChanged(int);
method public void onPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
method protected void onRestoreInstanceState(android.os.Parcelable);
method public void onRtlPropertiesChanged();
method public void onRtlPropertiesChanged(int);
method protected android.os.Parcelable onSaveInstanceState();
method public void onScreenStateChanged(int);
method protected void onScrollChanged(int, int, int, int);

View File

@@ -11560,7 +11560,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
}
requestLayout();
invalidate(true);
onRtlPropertiesChanged();
onRtlPropertiesChanged(getLayoutDirection());
}
// Reset resolution of all RTL related properties.
@@ -11622,8 +11622,13 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
* resolved layout direction, or to inform child views that inherit their layout direction.
*
* The default implementation does nothing.
*
* @param layoutDirection the direction of the layout
*
* @see #LAYOUT_DIRECTION_LTR
* @see #LAYOUT_DIRECTION_RTL
*/
public void onRtlPropertiesChanged() {
public void onRtlPropertiesChanged(int layoutDirection) {
}
/**
@@ -11768,7 +11773,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
internalSetPadding(mUserPaddingLeft, mPaddingTop, mUserPaddingRight,
mUserPaddingBottom);
onPaddingChanged(resolvedLayoutDirection);
onRtlPropertiesChanged(resolvedLayoutDirection);
}
mPrivateFlags2 |= PFLAG2_PADDING_RESOLVED;
@@ -11783,19 +11788,6 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
mPrivateFlags2 &= ~PFLAG2_PADDING_RESOLVED;
}
/**
* Resolve padding depending on the layout direction. Subclasses that care about
* padding resolution should override this method. The default implementation does
* nothing.
*
* @param layoutDirection the direction of the layout
*
* @see #LAYOUT_DIRECTION_LTR
* @see #LAYOUT_DIRECTION_RTL
*/
public void onPaddingChanged(int layoutDirection) {
}
/**
* This is called when the view is detached from a window. At this point it
* no longer has a surface for drawing.
@@ -11827,7 +11819,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
mCurrentAnimation = null;
resetRtlProperties();
onRtlPropertiesChanged();
onRtlPropertiesChanged(LAYOUT_DIRECTION_DEFAULT);
resetAccessibilityStateChanged();
}
@@ -16618,7 +16610,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
// Do resolution
resolveTextDirection();
// Notify change
onRtlPropertiesChanged();
onRtlPropertiesChanged(getLayoutDirection());
// Refresh
requestLayout();
invalidate(true);
@@ -16812,7 +16804,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
// Do resolution
resolveTextAlignment();
// Notify change
onRtlPropertiesChanged();
onRtlPropertiesChanged(getLayoutDirection());
// Refresh
requestLayout();
invalidate(true);

View File

@@ -104,7 +104,7 @@ public class CheckedTextView extends TextView implements Checkable {
/**
* Set the checkmark to a given Drawable, identified by its resourece id. This will be drawn
* when {@link #isChecked()} is true.
*
*
* @param resid The Drawable to use for the checkmark.
*
* @see #setCheckMarkDrawable(Drawable)
@@ -147,7 +147,7 @@ public class CheckedTextView extends TextView implements Checkable {
d.setVisible(getVisibility() == VISIBLE, false);
d.setState(CHECKED_STATE_SET);
setMinHeight(d.getIntrinsicHeight());
mCheckMarkWidth = d.getIntrinsicWidth();
d.setState(getDrawableState());
} else {
@@ -184,13 +184,8 @@ public class CheckedTextView extends TextView implements Checkable {
}
@Override
public void onPaddingChanged(int layoutDirection) {
updatePadding();
}
@Override
public void onRtlPropertiesChanged() {
super.onRtlPropertiesChanged();
public void onRtlPropertiesChanged(int layoutDirection) {
super.onRtlPropertiesChanged(layoutDirection);
updatePadding();
}

View File

@@ -1354,8 +1354,8 @@ public class SearchView extends LinearLayout implements CollapsibleActionView {
};
@Override
public void onRtlPropertiesChanged() {
mQueryTextView.setLayoutDirection(getLayoutDirection());
public void onRtlPropertiesChanged(int layoutDirection) {
mQueryTextView.setLayoutDirection(layoutDirection);
}
/**

View File

@@ -5635,7 +5635,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
}
@Override
public void onRtlPropertiesChanged() {
public void onRtlPropertiesChanged(int layoutDirection) {
if (mLayoutAlignment != null) {
if (mResolvedTextAlignment == TEXT_ALIGNMENT_VIEW_START ||
mResolvedTextAlignment == TEXT_ALIGNMENT_VIEW_END) {