Chromium Code Reviews| Index: chrome/browser/permissions/permission_uma_util.h |
| diff --git a/chrome/browser/permissions/permission_uma_util.h b/chrome/browser/permissions/permission_uma_util.h |
| index 61a08d9356ef7a2adfeed6bfc62eed93bfdae058..0898ce7d7235529aeb20e683f8b20299fb336b9b 100644 |
| --- a/chrome/browser/permissions/permission_uma_util.h |
| +++ b/chrome/browser/permissions/permission_uma_util.h |
| @@ -21,6 +21,10 @@ namespace content { |
| enum class PermissionType; |
| } // namespace content |
| +namespace base { |
| +class TimeDelta; |
|
dominickn
2017/01/30 04:55:26
This doesn't work - you're passing base::TimeDelta
meredithl
2017/01/30 05:37:40
Done.
|
| +} // namespace base |
| + |
| // This should stay in sync with the SourceUI enum in the permission report |
| // protobuf (src/chrome/common/safe_browsing/permission_report.proto). |
| enum class PermissionSourceUI { |
| @@ -41,6 +45,26 @@ enum class PermissionPersistDecision { |
| NOT_PERSISTED = 2, |
| }; |
| +// Any new values should be inserted immediately prior to REASON_NUM. |
| +enum PermissionEmbargoReason { |
| + REPEATED_DISMISSALS = 0, |
| + PERMISSIONS_BLACKLISTING = 1, |
| + NOT_EMBARGOED = 2, |
| + |
| + // Always keep this at the end. |
| + REASON_NUM, |
| +}; |
| + |
| +// Any new values should be inserted immediately prior to RESPONSE_NUM. |
| +enum SafeBrowsingResponse { |
| + NOT_BLACKLISTED = 0, |
| + TIMEOUT = 1, |
| + BLACKLISTED = 2, |
| + |
| + // Always keep this at the end. |
| + RESPONSE_NUM, |
| +}; |
| + |
| // A bundle for the information sent in a PermissionReport. |
| struct PermissionReportInfo { |
| PermissionReportInfo( |
| @@ -114,7 +138,11 @@ class PermissionUmaUtil { |
| PermissionSourceUI source_ui, |
| const GURL& revoked_origin, |
| Profile* profile); |
| - |
| + static void RecordPermissionEmbargoReason( |
| + PermissionEmbargoReason embargo_reason); |
| + static void RecordSafeBrowsingResponse(base::TimeDelta response_time, |
| + SafeBrowsingResponse response); |
| + static void RecordRepeatedEmbargo(PermissionEmbargoReason embargo_reason); |
| // UMA specifically for when permission prompts are shown. This should be |
| // roughly equivalent to the metrics above, however it is |
| // useful to have separate UMA to a few reasons: |