Index: chrome/browser/android/uma_bridge.cc |
diff --git a/chrome/browser/android/uma_bridge.cc b/chrome/browser/android/uma_bridge.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..3900c8e9edf2330e2d56a57a1bb69f69265429ed |
--- /dev/null |
+++ b/chrome/browser/android/uma_bridge.cc |
@@ -0,0 +1,48 @@ |
+// Copyright 2013 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "chrome/browser/android/uma_bridge.h" |
+ |
+#include <jni.h> |
+ |
+#include "content/public/browser/user_metrics.h" |
+#include "jni/UmaBridge_jni.h" |
+ |
+using content::RecordAction; |
+using content::RecordComputedAction; |
+using content::UserMetricsAction; |
+ |
+static void RecordMenuShow(JNIEnv*, jclass) { |
+ RecordAction(UserMetricsAction("MobileMenuShow")); |
+} |
+ |
+static void RecordUsingMenu(JNIEnv*, |
+ jclass, |
+ jboolean is_by_hw_button, |
+ jboolean is_dragging) { |
+ if (is_by_hw_button) { |
+ if (is_dragging) { |
+ RecordAction(UserMetricsAction("MobileUsingMenuByHwButtonDragging")); |
+ } else { |
+ RecordAction(UserMetricsAction("MobileUsingMenuByHwButtonTap")); |
+ } |
+ } else { |
+ if (is_dragging) { |
+ RecordAction(UserMetricsAction("MobileUsingMenuBySwButtonDragging")); |
+ } else { |
+ RecordAction(UserMetricsAction("MobileUsingMenuBySwButtonTap")); |
+ } |
+ } |
+} |
+ |
+namespace chrome { |
+namespace android { |
+ |
+// Register native methods |
+bool RegisterUmaBridge(JNIEnv* env) { |
+ return RegisterNativesImpl(env); |
+} |
+ |
+} // namespace android |
+} // namespace chrome |