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..c628eab00b2363a8b39151149d4d502af0458a79 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,8 @@ import android.widget.TextView; |
| import org.chromium.base.Log; |
| import org.chromium.base.VisibleForTesting; |
| +import org.chromium.base.metrics.RecordHistogram; |
| +import org.chromium.base.metrics.RecordUserAction; |
| import org.chromium.chrome.R; |
| import org.chromium.chrome.browser.init.BrowserParts; |
| import org.chromium.chrome.browser.init.ChromeBrowserInitializer; |
| @@ -41,12 +43,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. |
|
Mark P
2016/06/29 20:20:32
(except for the MAX entry)
dmurph
2016/06/29 21:56:06
Done.
|
| + 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; |
|
Mark P
2016/06/29 20:20:32
optional nit: consider starting all the options wi
dmurph
2016/06/29 21:56:06
Done.
|
| + private static final int OPTION_BOUNDARY = 3; |
|
Mark P
2016/06/29 20:20:32
please use MAX OR NUM_ENTRIES or something; BOUNDA
dmurph
2016/06/29 21:56:06
Done.
|
| + |
| private TextView mUnimportantSiteDataSizeText; |
| private TextView mSiteDataSizeText; |
| private Button mClearUnimportantButton; |
| @@ -121,6 +128,7 @@ public class ManageSpaceActivity extends AppCompatActivity implements View.OnCli |
| mIsNativeInitialized = true; |
| mManageSiteDataButton.setEnabled(true); |
| mClearUnimportantButton.setEnabled(true); |
| + RecordUserAction.record("Android.ManageSpace"); |
| refreshStorageNumbers(); |
| } |
| @@ -172,6 +180,9 @@ public class ManageSpaceActivity extends AppCompatActivity implements View.OnCli |
| @Override |
| public void onClick(DialogInterface dialog, int id) { |
| mUnimportantDialog = null; |
| + RecordHistogram.recordEnumeratedHistogram( |
| + "Android.ManageSpace.ActionTaken", CLEAR_UNIMPORTANT_OPTION, |
| + OPTION_BOUNDARY); |
| clearUnimportantData(); |
| } |
| }); |
| @@ -190,6 +201,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( |
| + "Android.ManageSpace.ActionTaken", MANAGE_STORAGE_OPTION, OPTION_BOUNDARY); |
| startActivity(intent); |
| } else if (view == mClearAllDataButton) { |
| final ActivityManager activityManager = |
| @@ -198,6 +211,13 @@ public class ManageSpaceActivity extends AppCompatActivity implements View.OnCli |
| builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { |
| @Override |
| public void onClick(DialogInterface dialog, int id) { |
| + if (mIsNativeInitialized) { |
| + // This probably won't actually be uploaded, as android will probably kill |
| + // all processes & data before it gets sent to the network. |
| + RecordHistogram.recordEnumeratedHistogram( |
| + "Android.ManageSpace.ActionTaken", CLEAR_APP_DATA_OPTION, |
| + OPTION_BOUNDARY); |
| + } |
| activityManager.clearApplicationUserData(); |
| } |
| }); |