diff --git a/packages/Keyguard/src/com/android/keyguard/PasswordTextView.java b/packages/Keyguard/src/com/android/keyguard/PasswordTextView.java index 6eea81bf4014d..7dba5455e6428 100644 --- a/packages/Keyguard/src/com/android/keyguard/PasswordTextView.java +++ b/packages/Keyguard/src/com/android/keyguard/PasswordTextView.java @@ -148,8 +148,9 @@ public class PasswordTextView extends View { protected void onDraw(Canvas canvas) { float totalDrawingWidth = getDrawingWidth(); float currentDrawPosition; - if ((mGravity & Gravity.START) != 0) { - if (getLayoutDirection() == LAYOUT_DIRECTION_RTL) { + if ((mGravity & Gravity.HORIZONTAL_GRAVITY_MASK) == Gravity.LEFT) { + if ((mGravity & Gravity.RELATIVE_LAYOUT_DIRECTION) != 0 + && getLayoutDirection() == LAYOUT_DIRECTION_RTL) { currentDrawPosition = getWidth() - getPaddingRight() - totalDrawingWidth; } else { currentDrawPosition = getPaddingLeft(); @@ -163,7 +164,7 @@ public class PasswordTextView extends View { float yPosition = (getHeight() - getPaddingBottom() - getPaddingTop()) / 2 + getPaddingTop(); canvas.clipRect(getPaddingLeft(), getPaddingTop(), - getWidth()-getPaddingRight(), getHeight()-getPaddingBottom()); + getWidth() - getPaddingRight(), getHeight() - getPaddingBottom()); float charLength = bounds.right - bounds.left; for (int i = 0; i < length; i++) { CharState charState = mTextChars.get(i);