diff options
Diffstat (limited to 'core/java/android/widget/SelectionActionModeHelper.java')
| -rw-r--r-- | core/java/android/widget/SelectionActionModeHelper.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/core/java/android/widget/SelectionActionModeHelper.java b/core/java/android/widget/SelectionActionModeHelper.java index 1f2b90a11616..3820798c0d6a 100644 --- a/core/java/android/widget/SelectionActionModeHelper.java +++ b/core/java/android/widget/SelectionActionModeHelper.java @@ -282,7 +282,12 @@ public final class SelectionActionModeHelper { @Nullable SelectionResult result) { final Layout layout = mTextView.getLayout(); - final Runnable onAnimationEndCallback = () -> startSelectionActionMode(result); + final String originalText = getText(mTextView).toString(); + final Runnable onAnimationEndCallback = () -> { + if (TextUtils.equals(getText(mTextView), originalText)) { + startSelectionActionMode(result); + } + }; // TODO do not trigger the animation if the change included only non-printable characters final boolean didSelectionChange = result != null && (mTextView.getSelectionStart() != result.mStart |
