| // Copyright 2016 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_BROWSER_USB_WEB_USB_HISTOGRAMS_H_ |
| #define CHROME_BROWSER_USB_WEB_USB_HISTOGRAMS_H_ |
| |
| // Reasons the chooser may be closed. These are used in histograms so do not |
| // remove/reorder entries. Only add at the end just before |
| // WEBUSB_CHOOSER_CLOSED_MAX. Also remember to update the enum listing in |
| // tools/metrics/histograms/enums.xml. |
| enum WebUsbChooserClosed { |
| // The user cancelled the permission prompt without selecting a device. |
| WEBUSB_CHOOSER_CLOSED_CANCELLED = 0, |
| // The user probably cancelled the permission prompt without selecting a |
| // device because there were no devices to select. |
| WEBUSB_CHOOSER_CLOSED_CANCELLED_NO_DEVICES, |
| // The user granted permission to access a device. |
| WEBUSB_CHOOSER_CLOSED_PERMISSION_GRANTED, |
| // The user granted permission to access a device but that permission will be |
| // revoked when the device is disconnected. |
| WEBUSB_CHOOSER_CLOSED_EPHEMERAL_PERMISSION_GRANTED, |
| // Maximum value for the enum. |
| WEBUSB_CHOOSER_CLOSED_MAX |
| }; |
| |
| // Reasons a permission may be closed. These are used in histograms so do not |
| // remove/reorder entries. Only add at the end just before |
| // WEBUSB_PERMISSION_REVOKED_MAX. Also remember to update the enum listing in |
| // tools/metrics/histograms/enums.xml. |
| enum WebUsbPermissionRevoked { |
| // Permission to access a USB device was revoked by the user. |
| WEBUSB_PERMISSION_REVOKED_BY_USER = 0, |
| // Permission to access an ephemeral USB device was revoked by the user. |
| WEBUSB_PERMISSION_REVOKED_EPHEMERAL_BY_USER, |
| // Permission to access a USB device was revoked by the website. |
| WEBUSB_PERMISSION_REVOKED_BY_WEBSITE, |
| // Permission to access an ephemeral USB device was revoked by the website. |
| WEBUSB_PERMISSION_REVOKED_EPHEMERAL_BY_WEBSITE, |
| // Maximum value for the enum. |
| WEBUSB_PERMISSION_REVOKED_MAX |
| }; |
| |
| void RecordWebUsbPermissionRevocation(WebUsbPermissionRevoked kind); |
| |
| void RecordWebUsbChooserClosure(WebUsbChooserClosed disposition); |
| |
| #endif // CHROME_BROWSER_USB_WEB_USB_HISTOGRAMS_H_ |