Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/preferences/website/ManageSpaceActivity.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/ManageSpaceActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/ManageSpaceActivity.java |
| index 45dfbdd36cad06b297fe57a3152004cd0cda6169..15e7534029cf7122f8bfbc4225e566354933723c 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/ManageSpaceActivity.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/ManageSpaceActivity.java |
| @@ -23,6 +23,7 @@ import android.widget.TextView; |
| import org.chromium.base.Log; |
| import org.chromium.base.VisibleForTesting; |
| +import org.chromium.base.metrics.RecordHistogram; |
| import org.chromium.chrome.R; |
| import org.chromium.chrome.browser.init.BrowserParts; |
| import org.chromium.chrome.browser.init.ChromeBrowserInitializer; |
| @@ -41,12 +42,17 @@ import java.util.Set; |
| * The browser process must be started here because this Activity may be started explicitly from |
| * Android settings, when Android is restoring ManageSpaceActivity after Chrome was killed, or for |
| * tests. |
| - * TODO(dmurph): Add UMA metrics. |
| */ |
| @TargetApi(Build.VERSION_CODES.KITKAT) |
| public class ManageSpaceActivity extends AppCompatActivity implements View.OnClickListener { |
| private static final String TAG = "ManageSpaceActivity"; |
| + // Do not change these constants, they are used with UMA histograms. |
| + private static final int CLEAR_UNIMPORTANT_OPTION = 0; |
| + private static final int MANAGE_STORAGE_OPTION = 1; |
| + private static final int CLEAR_APP_DATA_OPTION = 2; |
| + private static final int OPTION_BOUNDARY = 3; |
| + |
| private TextView mUnimportantSiteDataSizeText; |
| private TextView mSiteDataSizeText; |
| private Button mClearUnimportantButton; |
| @@ -103,6 +109,7 @@ public class ManageSpaceActivity extends AppCompatActivity implements View.OnCli |
| } |
| }; |
| + boolean processInitSuccess = true; |
| try { |
| ChromeBrowserInitializer.getInstance(getApplicationContext()) |
| .handlePreNativeStartup(parts); |
| @@ -113,7 +120,10 @@ public class ManageSpaceActivity extends AppCompatActivity implements View.OnCli |
| Log.e(TAG, "Unable to load native library.", e); |
| mSiteDataSizeText.setText(R.string.storage_management_startup_failure); |
| mUnimportantSiteDataSizeText.setText(R.string.storage_management_startup_failure); |
| + processInitSuccess = false; |
| } |
| + RecordHistogram.recordBooleanHistogram( |
|
Ted C
2016/06/27 20:45:42
RecordHistogram requires the native library to be
dmurph
2016/06/28 21:41:22
That makes sense. I guess we won't really know tho
|
| + "Storage.AndroidManage.ProcessInitSuccess", processInitSuccess); |
| } |
| /** @see BrowserParts#finishNativeInitialization */ |
| @@ -172,6 +182,8 @@ public class ManageSpaceActivity extends AppCompatActivity implements View.OnCli |
| @Override |
| public void onClick(DialogInterface dialog, int id) { |
| mUnimportantDialog = null; |
| + RecordHistogram.recordEnumeratedHistogram("Storage.AndroidManage.Button", |
| + CLEAR_UNIMPORTANT_OPTION, OPTION_BOUNDARY); |
| clearUnimportantData(); |
| } |
| }); |
| @@ -190,6 +202,8 @@ public class ManageSpaceActivity extends AppCompatActivity implements View.OnCli |
| initialArguments.putString(SingleCategoryPreferences.EXTRA_TITLE, |
| getString(R.string.website_settings_storage)); |
| intent.putExtra(Preferences.EXTRA_SHOW_FRAGMENT_ARGUMENTS, initialArguments); |
| + RecordHistogram.recordEnumeratedHistogram( |
| + "Storage.AndroidManage.Button", MANAGE_STORAGE_OPTION, OPTION_BOUNDARY); |
| startActivity(intent); |
| } else if (view == mClearAllDataButton) { |
| final ActivityManager activityManager = |
| @@ -198,6 +212,8 @@ public class ManageSpaceActivity extends AppCompatActivity implements View.OnCli |
| builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { |
| @Override |
| public void onClick(DialogInterface dialog, int id) { |
| + RecordHistogram.recordEnumeratedHistogram( |
| + "Storage.AndroidManage.Button", CLEAR_APP_DATA_OPTION, OPTION_BOUNDARY); |
| activityManager.clearApplicationUserData(); |
| } |
| }); |