Merge "Links are clickable in TextView when textIsSelectable."
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index 052760f..0699ac2 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -81,6 +81,7 @@
 import android.text.method.TextKeyListener;
 import android.text.method.TimeKeyListener;
 import android.text.method.TransformationMethod;
+import android.text.style.ClickableSpan;
 import android.text.style.ParagraphStyle;
 import android.text.style.URLSpan;
 import android.text.style.UpdateAppearance;
@@ -7238,6 +7239,19 @@
                 handled |= mMovement.onTouchEvent(this, (Spannable) mText, event);
             }
 
+            if (mLinksClickable && mAutoLinkMask != 0 && mTextIsSelectable &&
+                    action == MotionEvent.ACTION_UP && !mIgnoreActionUpEvent && isFocused()) {
+                // The LinkMovementMethod which should handle taps on links has not been installed
+                // to support text selection. We reproduce its behavior here to open links.
+                ClickableSpan[] links = ((Spannable) mText).getSpans(getSelectionStart(),
+                        getSelectionEnd(), ClickableSpan.class);
+
+                if (links.length != 0) {
+                    links[0].onClick(this);
+                    handled = true;
+                }
+            }
+
             if (isTextEditable() || mTextIsSelectable) {
                 if (mScrollX != oldScrollX || mScrollY != oldScrollY) {
                     // Hide insertion anchor while scrolling. Leave selection.