[Bluetooth] Record metrics for user's time taken to select devices.

Records how long it takes for the user to select a device either after
they open the UI (either Settings or System Tray) and Bluetooth is on,
or after Bluetooth turns on while the UI is open.

Note that both UI surfaces' code paths for the metric eventually resolve
to a single helper method in //device/bluetooth/chromeos.

This metric will be used to drive both improving the UX of our UI
surfaces, and possibly increasing discovery performance.

This metric is suffixed by UI surface; then by pairing state; and
finally, if the device was not paired, by transport type. These
allows us to determine if one UI surface is less UX friendly than the
other (i.e., it takes longer to find/select the desired device in one);
ensure that users are quickly finding their already paired devices;
and determine if one particular transport type is slower to discover.

See go/cros-bt-metrics for more.

Bug: 953149
Change-Id: Ie245a003ada08d620ed5825839816c5db27ca491
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1655694
Commit-Queue: Ryan Hansberry <[email protected]>
Reviewed-by: Brian White <[email protected]>
Reviewed-by: Steven Bennetts <[email protected]>
Cr-Commit-Position: refs/heads/master@{#669327}
diff --git a/extensions/browser/extension_function_histogram_value.h b/extensions/browser/extension_function_histogram_value.h
index 03f6fd1..bd3b910 100644
--- a/extensions/browser/extension_function_histogram_value.h
+++ b/extensions/browser/extension_function_histogram_value.h
@@ -1405,6 +1405,7 @@
   LOGINSCREENUI_CLOSE = 1342,
   DECLARATIVENETREQUEST_GETMATCHEDRULES = 1343,
   DECLARATIVENETREQUEST_SETACTIONCOUNTASBADGETEXT = 1344,
+  BLUETOOTHPRIVATE_RECORDDEVICESELECTION = 1345,
   // Last entry: Add new entries above, then run:
   // python tools/metrics/histograms/update_extension_histograms.py
   ENUM_BOUNDARY