Index: chrome/android/java_staging/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorUma.java |
diff --git a/chrome/android/java_staging/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorUma.java b/chrome/android/java_staging/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorUma.java |
deleted file mode 100644 |
index e00960acfebdacc117a6bec772418605b5372687..0000000000000000000000000000000000000000 |
--- a/chrome/android/java_staging/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorUma.java |
+++ /dev/null |
@@ -1,116 +0,0 @@ |
-// Copyright 2015 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. |
- |
-package org.chromium.chrome.browser.tabmodel; |
- |
-import android.app.Activity; |
-import android.os.SystemClock; |
- |
-import org.chromium.base.ActivityState; |
-import org.chromium.base.ApplicationStatus; |
-import org.chromium.base.metrics.RecordHistogram; |
-import org.chromium.base.metrics.RecordUserAction; |
- |
-/** |
- * Centralizes UMA data collection for TabModelSelector. All calls must be made from the UI thread. |
- */ |
-public final class TabModelSelectorUma implements ApplicationStatus.ActivityStateListener { |
- // TabRestoreUserAction defined in tools/metrics/histograms/histograms.xml. |
- private static final int USER_WAITED_FOR_RESTORE_COMPLETION = 0; |
- private static final int USER_LEFT_TAB_DURING_RESTORE = 1; |
- private static final int USER_LEFT_CHROME_DURING_RESTORE = 2; |
- private static final int USER_ACTION_DURING_RESTORE_MAX = 3; |
- |
- // Id of the active tab being restored. Equals -1 when the active tab is not being restored. |
- private int mRestoredTabId = -1; |
- // Timestamp of the beginning of the most recent tab restore. |
- private long mRestoreStartedAtMsec = -1; |
- |
- TabModelSelectorUma(Activity activity) { |
- ApplicationStatus.registerStateListenerForActivity(this, activity); |
- } |
- |
- /** |
- * Cleans up any external dependencies of this class. |
- */ |
- public void destroy() { |
- ApplicationStatus.unregisterActivityStateListener(this); |
- } |
- |
- @Override |
- public void onActivityStateChange(Activity activity, int newState) { |
- if (newState != ActivityState.STOPPED) return; |
- if (mRestoredTabId != -1) { |
- recordUserActionDuringTabRestore(USER_LEFT_CHROME_DURING_RESTORE); |
- mRestoredTabId = -1; |
- } |
- } |
- |
- void userSwitchedToTab() { |
- RecordUserAction.record("MobileTabSwitched"); |
- } |
- |
- void onShowTab(int tabId, boolean isBeingRestored) { |
- if (mRestoredTabId != -1 && tabId != mRestoredTabId) { |
- recordUserActionDuringTabRestore(USER_LEFT_TAB_DURING_RESTORE); |
- mRestoredTabId = -1; |
- } |
- if (isBeingRestored) { |
- mRestoredTabId = tabId; |
- mRestoreStartedAtMsec = nowMsec(); |
- } |
- } |
- |
- void onTabClosing(int tabId) { |
- if (mRestoredTabId != -1 && tabId == mRestoredTabId) { |
- recordUserActionDuringTabRestore(USER_LEFT_TAB_DURING_RESTORE); |
- mRestoredTabId = -1; |
- } |
- } |
- |
- void onTabCrashed(int tabId) { |
- if (mRestoredTabId != -1 && tabId == mRestoredTabId) { |
- mRestoredTabId = -1; |
- } |
- } |
- |
- void onPageLoadFinished(int tabId) { |
- if (mRestoredTabId != -1 && tabId == mRestoredTabId) { |
- recordUserActionDuringTabRestore(USER_WAITED_FOR_RESTORE_COMPLETION); |
- mRestoredTabId = -1; |
- } |
- } |
- |
- void onPageLoadFailed(int tabId) { |
- if (mRestoredTabId != -1 && tabId == mRestoredTabId) { |
- assert mRestoreStartedAtMsec != -1; |
- // If the pageload fails very quickly we cannot argue that the user "waited for |
- // completion". |
- if (nowMsec() - mRestoreStartedAtMsec >= 5000) { |
- recordUserActionDuringTabRestore(USER_WAITED_FOR_RESTORE_COMPLETION); |
- } |
- mRestoredTabId = -1; |
- } |
- } |
- |
- void onTabsViewShown() { |
- if (mRestoredTabId != -1) { |
- recordUserActionDuringTabRestore(USER_LEFT_TAB_DURING_RESTORE); |
- mRestoredTabId = -1; |
- } |
- } |
- |
- private static long nowMsec() { |
- return SystemClock.elapsedRealtime(); |
- } |
- |
- /** |
- * Logs action to a UMA histogram. |
- */ |
- private void recordUserActionDuringTabRestore(int action) { |
- assert action >= 0 && action < USER_ACTION_DURING_RESTORE_MAX; |
- RecordHistogram.recordEnumeratedHistogram( |
- "Tab.RestoreUserPersistence", action, USER_ACTION_DURING_RESTORE_MAX); |
- } |
-} |