Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(210)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuDragHelper.java

Issue 763253005: [Android] Add AppMenu touch duration metric. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuDragHelper.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuDragHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuDragHelper.java
index 6f79b8551ae6bad6a4c0fb132808b7952f2c0738..e986737af9d2858c3b6e746629c7a5ef6a25797d 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuDragHelper.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuDragHelper.java
@@ -17,6 +17,7 @@ import android.widget.LinearLayout;
import android.widget.ListPopupWindow;
import android.widget.ListView;
+import org.chromium.base.JNINamespace;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.UmaBridge;
@@ -29,6 +30,7 @@ import java.util.ArrayList;
* hidden in API 16.
*/
@SuppressLint("NewApi")
+@JNINamespace("appmenu::android")
class AppMenuDragHelper {
private final Activity mActivity;
private final AppMenu mAppMenu;
@@ -146,6 +148,7 @@ class AppMenuDragHelper {
final int roundedRawX = Math.round(rawX);
final int roundedRawY = Math.round(rawY);
final int eventActionMasked = event.getActionMasked();
+ final long timeSinceDown = event.getEventTime() - event.getDownTime();
final ListView listView = mAppMenu.getPopup().getListView();
mLastTouchX = rawX;
@@ -154,9 +157,11 @@ class AppMenuDragHelper {
if (eventActionMasked == MotionEvent.ACTION_CANCEL) {
mAppMenu.dismiss();
return true;
+ } else if (eventActionMasked == MotionEvent.ACTION_UP) {
+ nativeRecordTouchDuration(timeSinceDown);
Ted C 2014/12/10 17:28:55 this can't be triggered before native is loaded ri
Kibeom Kim (inactive) 2014/12/15 22:14:30 I tried commeting out ChromeBrowserInitializer#han
}
- mIsSingleTapCanceled |= event.getEventTime() - event.getDownTime() > mTapTimeout;
+ mIsSingleTapCanceled |= timeSinceDown > mTapTimeout;
mIsSingleTapCanceled |= !pointInView(button, event.getX(), event.getY(), mScaledTouchSlop);
if (!mIsSingleTapCanceled && eventActionMasked == MotionEvent.ACTION_UP) {
UmaBridge.usingMenu(false, false);
@@ -277,4 +282,6 @@ class AppMenuDragHelper {
mScreenVisibleRect.offset(mScreenVisiblePoint[0], mScreenVisiblePoint[1]);
return mScreenVisibleRect;
}
+
+ private static native void nativeRecordTouchDuration(long timeMs);
}

Powered by Google App Engine
This is Rietveld 408576698