Messaging: allow selecting text inside the selected message am: 78ecab8743 am: 476671be4a am: 1abe606ee5 am: db5364911f am: 5062902b35

Original change: https://android-review.googlesource.com/c/platform/packages/apps/Messaging/+/1754232

Change-Id: I688920a14987fc455b20d22266200e8387fc90f6
This commit is contained in:
Timi Rautamäki
2021-09-24 17:25:25 +00:00
committed by Automerger Merge Worker
@@ -708,6 +708,7 @@ public class ConversationMessageView extends FrameLayout implements View.OnClick
textBottomPadding = textBottomPaddingDefault;
textLeftPadding = messageTextLeftRightPadding;
textRightPadding = messageTextLeftRightPadding;
mMessageTextView.setTextIsSelectable(isSelected());
} else {
// Attachment(s) only
contentLeftPadding = incoming ? arrowWidth : 0;
@@ -733,6 +734,7 @@ public class ConversationMessageView extends FrameLayout implements View.OnClick
textTopMargin = 0;
textTopPadding = textTopPaddingDefault;
textBottomPadding = textBottomPaddingDefault;
mMessageTextView.setTextIsSelectable(isSelected());
if (showArrow && incoming) {
textLeftPadding = messageTextLeftRightPadding + arrowWidth;
} else {
@@ -1030,6 +1032,11 @@ public class ConversationMessageView extends FrameLayout implements View.OnClick
@Override
public boolean onLongClick(final View view) {
if (view == mMessageTextView) {
// Avoid trying to reselect the message
if (isSelected()) {
return false;
}
// Preemptively handle the long click event on message text so it's not handled by
// the link spans.
return performLongClick();
@@ -1195,7 +1202,7 @@ public class ConversationMessageView extends FrameLayout implements View.OnClick
// This touch event is a long click, preemptively handle this touch event so that
// the link span won't get a onClicked() callback.
mIsLongClick = false;
return true;
return false;
}
if (event.getActionMasked() == MotionEvent.ACTION_DOWN) {