diff options
| author | TreeHugger Robot <treehugger-gerrit@google.com> | 2018-02-12 14:44:35 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-02-12 14:44:35 +0000 |
| commit | 9036a88d95da4a871dc4d74d03cccbd2f1ebb947 (patch) | |
| tree | 1975bbe7d4412e2a4f613e9a1ee6b05cda3ab082 /core/java/android/widget/SelectionActionModeHelper.java | |
| parent | d591904d1d95707e7de97f2805b666f9ce32ec53 (diff) | |
| parent | 92c6decbb8e39f9b5ffae38528f47fcebabf7d44 (diff) | |
Merge "Logging for linkify selections"
Diffstat (limited to 'core/java/android/widget/SelectionActionModeHelper.java')
| -rw-r--r-- | core/java/android/widget/SelectionActionModeHelper.java | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/core/java/android/widget/SelectionActionModeHelper.java b/core/java/android/widget/SelectionActionModeHelper.java index e7a4c0246e1f..6ab09d6cbe74 100644 --- a/core/java/android/widget/SelectionActionModeHelper.java +++ b/core/java/android/widget/SelectionActionModeHelper.java @@ -111,7 +111,8 @@ public final class SelectionActionModeHelper { mSelectionTracker.onOriginalSelection( getText(mTextView), mTextView.getSelectionStart(), - mTextView.getSelectionEnd()); + mTextView.getSelectionEnd(), + false /*isLink*/); cancelAsyncTask(); if (skipTextClassification()) { startSelectionActionMode(null); @@ -134,7 +135,11 @@ public final class SelectionActionModeHelper { * Starts Link ActionMode. */ public void startLinkActionModeAsync(TextLinks.TextLink textLink) { - //TODO: tracking/logging + mSelectionTracker.onOriginalSelection( + getText(mTextView), + mTextView.getSelectionStart(), + mTextView.getSelectionEnd(), + true /*isLink*/); cancelAsyncTask(); if (skipTextClassification()) { startLinkActionMode(null); @@ -487,7 +492,8 @@ public final class SelectionActionModeHelper { /** * Called when the original selection happens, before smart selection is triggered. */ - public void onOriginalSelection(CharSequence text, int selectionStart, int selectionEnd) { + public void onOriginalSelection( + CharSequence text, int selectionStart, int selectionEnd, boolean isLink) { // If we abandoned a selection and created a new one very shortly after, we may still // have a pending request to log ABANDON, which we flush here. mDelayedLogAbandon.flush(); @@ -496,7 +502,8 @@ public final class SelectionActionModeHelper { mOriginalEnd = mSelectionEnd = selectionEnd; mAllowReset = false; maybeInvalidateLogger(); - mLogger.logSelectionStarted(text, selectionStart); + mLogger.logSelectionStarted(text, selectionStart, + isLink ? SelectionEvent.INVOCATION_LINK : SelectionEvent.INVOCATION_MANUAL); } /** @@ -679,7 +686,9 @@ public final class SelectionActionModeHelper { return Logger.WIDGET_UNSELECTABLE_TEXTVIEW; } - public void logSelectionStarted(CharSequence text, int index) { + public void logSelectionStarted( + CharSequence text, int index, + @SelectionEvent.InvocationMethod int invocationMethod) { try { Preconditions.checkNotNull(text); Preconditions.checkArgumentInRange(index, 0, text.length(), "index"); @@ -688,7 +697,7 @@ public final class SelectionActionModeHelper { } mTokenIterator.setText(mText); mStartIndex = index; - mLogger.logSelectionStartedEvent(0); + mLogger.logSelectionStartedEvent(invocationMethod, 0); } catch (Exception e) { // Avoid crashes due to logging. Log.d(LOG_TAG, e.getMessage()); |
