Fix View textDirection refresh
- the refresh was no more done correctly after the use of display lists
Change-Id: I5c74bbe565c603fe2e7fd793dd49c3b20036e04b
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 770d899..f862956 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -4933,9 +4933,8 @@
@RemotableViewMethod
public void setLayoutDirection(int layoutDirection) {
if (getLayoutDirection() != layoutDirection) {
- // Reset the current layout direction
+ // Reset the current layout direction and the resolved one
mPrivateFlags2 &= ~LAYOUT_DIRECTION_MASK;
- // Reset the current resolved layout direction
resetResolvedLayoutDirection();
// Set the new layout direction (filtered) and ask for a layout pass
mPrivateFlags2 |=
@@ -14544,14 +14543,13 @@
*/
public void setTextDirection(int textDirection) {
if (getTextDirection() != textDirection) {
- // Reset the current text direction
+ // Reset the current text direction and the resolved one
mPrivateFlags2 &= ~TEXT_DIRECTION_MASK;
+ resetResolvedTextDirection();
// Set the new text direction
mPrivateFlags2 |= ((textDirection << TEXT_DIRECTION_MASK_SHIFT) & TEXT_DIRECTION_MASK);
- // Reset the current resolved text direction
- resetResolvedTextDirection();
- // Ask for a layout pass
requestLayout();
+ invalidate(true);
}
}