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

Unified Diff: chrome/android/java_staging/src/org/chromium/chrome/browser/ChromeMobileApplication.java

Issue 1146813010: Introduce moderate binding (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 6 months 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_staging/src/org/chromium/chrome/browser/ChromeMobileApplication.java
diff --git a/chrome/android/java_staging/src/org/chromium/chrome/browser/ChromeMobileApplication.java b/chrome/android/java_staging/src/org/chromium/chrome/browser/ChromeMobileApplication.java
index fae1fb710d9a76e965e1bf6794173ef86d12d905..f43b097c7b6e472fe1e782a16a4af9b656b3c807 100644
--- a/chrome/android/java_staging/src/org/chromium/chrome/browser/ChromeMobileApplication.java
+++ b/chrome/android/java_staging/src/org/chromium/chrome/browser/ChromeMobileApplication.java
@@ -24,6 +24,7 @@ import org.chromium.base.ResourceExtractor;
import org.chromium.base.ThreadUtils;
import org.chromium.base.VisibleForTesting;
import org.chromium.base.annotations.SuppressFBWarnings;
+import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.browser.accessibility.FontSizePrefs;
import org.chromium.chrome.browser.banners.AppBannerManager;
import org.chromium.chrome.browser.banners.AppDetailsDelegate;
@@ -59,14 +60,17 @@ import org.chromium.chrome.browser.smartcard.EmptyPKCS11AuthenticationManager;
import org.chromium.chrome.browser.smartcard.PKCS11AuthenticationManager;
import org.chromium.chrome.browser.sync.SyncController;
import org.chromium.chrome.browser.tab.AuthenticatorNavigationInterceptor;
+import org.chromium.chrome.browser.tabmodel.TabModelSelector;
import org.chromium.chrome.browser.tabmodel.document.ActivityDelegate;
import org.chromium.chrome.browser.tabmodel.document.DocumentTabModelSelector;
+import org.chromium.chrome.browser.util.FeatureUtilities;
import org.chromium.content.browser.ChildProcessLauncher;
import org.chromium.content.browser.ContentViewStatics;
import org.chromium.content.browser.DownloadController;
import org.chromium.printing.PrintingController;
import org.chromium.ui.UiUtils;
+import java.lang.ref.WeakReference;
import java.util.Locale;
/**
@@ -395,6 +399,27 @@ public class ChromeMobileApplication extends ChromiumApplication {
ChildProcessLauncher.onSentToBackground();
IntentHandler.clearPendingReferrer();
+
+ if (FeatureUtilities.isDocumentMode(this)) {
+ if (sDocumentTabModelSelector != null) {
+ RecordHistogram.recordCountHistogram("Tab.TotalTabCountBeforeLeavingApp",
+ sDocumentTabModelSelector.getTotalTabCount());
+ }
+ } else {
+ int totalTabCount = 0;
+ for (WeakReference<Activity> reference : ApplicationStatus.getRunningActivities()) {
+ Activity activity = reference.get();
+ if (activity == null) continue;
+ if (activity instanceof ChromeActivity) {
+ TabModelSelector tabModelSelector =
+ ((ChromeActivity) activity).getTabModelSelector();
+ totalTabCount +=
+ tabModelSelector == null ? 0 : tabModelSelector.getTotalTabCount();
+ }
+ }
+ RecordHistogram.recordCountHistogram(
+ "Tab.TotalTabCountBeforeLeavingApp", totalTabCount);
+ }
}
/**

Powered by Google App Engine
This is Rietveld 408576698