diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index b339d76938afe..2d70f6e09b231 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -2438,7 +2438,11 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener * Subclasses override this to specify a default movement method. */ protected MovementMethod getDefaultMovementMethod() { - return null; + if (isFocusable() || isFocusableInTouchMode()) { + return ArrowKeyMovementMethod.getInstance(); + } else { + return null; + } } /** @@ -2653,9 +2657,12 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener /** * Gets the {@link android.text.method.MovementMethod} being used for this TextView, * which provides positioning, scrolling, and text selection functionality. - * This will frequently be null for non-EditText TextViews. + * By default, this returns an instance of {@link android.text.method.ArrowKeyMovementMethod} + * if this View is focusable or focusable in touch mode. + * * @return the movement method being used for this TextView. * @see android.text.method.MovementMethod + * @see android.text.method.ArrowKeyMovementMethod */ public final MovementMethod getMovementMethod() { return mMovement;