Chromium Code Reviews| Index: content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
| diff --git a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
| index 0f29638937d97ae92300dc06ee9ef87ebcd6d3f2..65637f03cc332b2deaa5fa4e2989a76d094ba5b2 100644 |
| --- a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
| +++ b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
| @@ -54,6 +54,7 @@ import org.chromium.base.TraceEvent; |
| import org.chromium.base.VisibleForTesting; |
| import org.chromium.base.annotations.CalledByNative; |
| import org.chromium.base.annotations.JNINamespace; |
| +import org.chromium.base.metrics.RecordUserAction; |
| import org.chromium.content.R; |
| import org.chromium.content.browser.ScreenOrientationListener.ScreenOrientationObserver; |
| import org.chromium.content.browser.accessibility.BrowserAccessibilityManager; |
| @@ -2012,9 +2013,17 @@ public class ContentViewCore implements AccessibilityStateChangeListener, Screen |
| /** Google search doesn't support requests slightly larger than this. */ |
| private static final int MAX_SEARCH_QUERY_LENGTH = 1000; |
| + // All WebContents actions record a user action internally. |
| @Override |
| public void selectAll() { |
| mWebContents.selectAll(); |
| + // Even though the above statement logged a SelectAll user action, we want to |
| + // track whether the focus was in an editable field, so log that too. |
| + if (isFocusedNodeEditable()) { |
| + RecordUserAction.record("MobileSelectAllWasEditable"); |
|
Ted C
2016/05/11 23:56:15
For all of these, it might be nice to have a gener
Donn Denman
2016/05/12 16:36:15
Done: prefixed all of these with "MobileActionMode
|
| + } else { |
| + RecordUserAction.record("MobileSelectAllWasNonEditable"); |
| + } |
| } |
| @Override |
| @@ -2034,6 +2043,7 @@ public class ContentViewCore implements AccessibilityStateChangeListener, Screen |
| @Override |
| public void share() { |
| + RecordUserAction.record("MobileShare"); |
| final String query = sanitizeQuery(getSelectedText(), MAX_SHARE_QUERY_LENGTH); |
| if (TextUtils.isEmpty(query)) return; |
| @@ -2052,6 +2062,7 @@ public class ContentViewCore implements AccessibilityStateChangeListener, Screen |
| @Override |
| public void processText(Intent intent) { |
| + RecordUserAction.record("MobileProcessTextIntent"); |
| assert Build.VERSION.SDK_INT >= Build.VERSION_CODES.M; |
| final String query = sanitizeQuery(getSelectedText(), MAX_SEARCH_QUERY_LENGTH); |
| @@ -2079,6 +2090,7 @@ public class ContentViewCore implements AccessibilityStateChangeListener, Screen |
| @Override |
| public void search() { |
| + RecordUserAction.record("MobileWebSearch"); |
| final String query = sanitizeQuery(getSelectedText(), MAX_SEARCH_QUERY_LENGTH); |
| if (TextUtils.isEmpty(query)) return; |