1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
|
// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_LENS_LENS_METRICS_H_
#define COMPONENTS_LENS_LENS_METRICS_H_
namespace lens {
// Histogram for recording ambient search queries.
inline constexpr char kAmbientSearchQueryHistogramName[] =
"Search.Ambient.Query";
// Histogram for recording camera open events.
inline constexpr char kSearchCameraOpenHistogramName[] =
"Search.Image.Camera.Open";
// Histogram for recording camera result events.
inline constexpr char kSearchCameraResultHistogramName[] =
"Search.Image.Camera.Result";
// Histogram for recording the capture result of Lens Region Search. See enum
// below for types of results.
inline constexpr char kLensRegionSearchCaptureResultHistogramName[] =
"Search.RegionSearch.Lens.Result";
// Histogram for recording the viewport proportion in relation to region
// selected for the Lens Region Search feature.
inline constexpr char kLensRegionSearchRegionViewportProportionHistogramName[] =
"Search.RegionSearch.Lens.RegionViewportProportion";
// Histogram for recording the aspect ratio of the captured region.
inline constexpr char kLensRegionSearchRegionAspectRatioHistogramName[] =
"Search.RegionSearch.Lens.RegionAspectRatio";
// Needs to be kept in sync with CameraOpenEntryPoint enum in
// tools/metrics/histograms/enums.xml.
enum class CameraOpenEntryPoint {
OMNIBOX = 0,
NEW_TAB_PAGE = 1,
WIDGET = 2,
TASKS_SURFACE = 3,
KEYBOARD = 4,
SPOTLIGHT = 5,
APP_ICON_LONG_PRESS = 6,
PLUS_BUTTON = 7,
WEB_SEARCH_BAR = 8,
TRANSLATE_ONEBOX = 9,
INTENTS = 10,
WEB_IMAGES_SEARCH_BAR = 11,
WHATS_NEW_PROMO = 12,
kMaxValue = WHATS_NEW_PROMO
};
// Needs to be kept in sync with CameraResult enum in
// tools/metrics/histograms/enums.xml.
enum class CameraResult {
SUCCESS_CAMERA = 0,
SUCCESS_GALLERY_IMAGE = 1,
SUCCESS_QR_CODE = 2,
DISMISSED = 3,
kMaxValue = DISMISSED
};
// Needs to be kept in sync with AmbientSearchEntryPoint enum in
// tools/metrics/histograms/enums.xml.
enum class AmbientSearchEntryPoint {
CONTEXT_MENU_SEARCH_IMAGE_WITH_GOOGLE_LENS = 0,
CONTEXT_MENU_SEARCH_IMAGE_WITH_WEB = 1,
CONTEXT_MENU_SEARCH_REGION_WITH_GOOGLE_LENS = 2,
CONTEXT_MENU_SEARCH_REGION_WITH_WEB = 3,
CONTEXT_MENU_SEARCH_WEB_FOR = 4,
OMNIBOX = 5,
NEW_TAB_PAGE = 6,
QUICK_ACTION_SEARCH_WIDGET = 7,
KEYBOARD = 8,
APP_ICON_LONG_PRESS = 9,
SPOTLIGHT = 10,
PLUS_BUTTON = 11,
WEB_SEARCH_BAR = 12,
COMPANION_REGION_SEARCH = 13,
TRANSLATE_ONEBOX = 14,
INTENTS = 15,
WEB_IMAGES_SEARCH_BAR = 16,
WHATS_NEW_PROMO = 17,
CONTEXT_MENU_SEARCH_VIDEO_FRAME_WITH_GOOGLE_LENS = 18,
CONTEXT_MENU_SEARCH_VIDEO_FRAME_WITH_WEB = 19,
LENS_OVERLAY_LOCATION_BAR = 20,
LENS_OVERLAY_OVERFLOW_MENU = 21,
CONTEXT_MENU_SEARCH_IMAGE_WITH_LENS_OVERLAY = 22,
CONTEXT_MENU_SEARCH_REGION_WITH_LENS_OVERLAY = 23,
CONTEXT_MENU_SEARCH_VIDEO_FRAME_WITH_LENS_OVERLAY = 24,
CONTEXT_MENU_SEARCH_IMAGE_WITH_LENS_OVERLAY_ACCESSIBILITY_FALLBACK = 25,
CONTEXT_MENU_SEARCH_REGION_WITH_LENS_OVERLAY_ACCESSIBILITY_FALLBACK = 26,
CONTEXT_MENU_SEARCH_VIDEO_WITH_LENS_OVERLAY_ACCESSIBILITY_FALLBACK = 27,
LENS_OVERLAY_LOCATION_BAR_ACCESSIBILITY_FALLBACK = 28,
kMaxValue = LENS_OVERLAY_LOCATION_BAR_ACCESSIBILITY_FALLBACK
};
// This should be kept in sync with the LensRegionSearchAspectRatio enum
// in tools/metrics/histograms/enums.xml. The aspect ratios are defined as:
// SQUARE: [0.8, 1.2]
// WIDE: (1.2, 1.7]
// VERY_WIDE: (1.7, infinity)
// TALL: [0.3, 0.8)
// VERY_TALL: [0, 0.3)
enum class LensRegionSearchAspectRatio {
UNDEFINED = 0,
SQUARE = 1,
WIDE = 2,
VERY_WIDE = 3,
TALL = 4,
VERY_TALL = 5,
kMaxValue = VERY_TALL
};
// This should be kept in sync with the LensRegionSearchCaptureResult enum
// in tools/metrics/histograms/enums.xml.
enum class LensRegionSearchCaptureResult {
SUCCESS = 0,
FAILED_TO_OPEN_TAB = 1,
ERROR_CAPTURING_REGION = 2,
USER_EXITED_CAPTURE_ESCAPE = 3,
USER_EXITED_CAPTURE_CLOSE_BUTTON = 4,
USER_NAVIGATED_FROM_CAPTURE = 5,
kMaxValue = USER_NAVIGATED_FROM_CAPTURE
};
// Record an ambient search query along with the entry point that initiated.
void RecordAmbientSearchQuery(AmbientSearchEntryPoint entry_point);
// Record a camera open event with the entry point.
void RecordCameraOpen(CameraOpenEntryPoint entry_point);
// Record a camera result.
void RecordCameraResult(CameraResult result);
} // namespace lens
#endif // COMPONENTS_LENS_LENS_METRICS_H_
|