diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index c2f32dd312dd6..7b58b5bf22cc3 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -7577,10 +7577,14 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } String getSelectedText() { - if (hasSelection()) { - return String.valueOf(mText.subSequence(getSelectionStart(), getSelectionEnd())); + if (!hasSelection()) { + return null; } - return null; + + final int start = getSelectionStart(); + final int end = getSelectionEnd(); + return String.valueOf( + start > end ? mText.subSequence(end, start) : mText.subSequence(start, end)); } /**