scanner: Add metrics for non-debug keyboard shortcut
Bug: b:393140991, b:381766720 Change-Id: I6a6a210062881c62bd6b5bdc9f06da3985adcda4 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6367566 Reviewed-by: Min Chen <minch@chromium.org> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Commit-Queue: Michelle Chen <michellegc@google.com> Reviewed-by: Jimmy Gong <jimmyxgong@chromium.org> Cr-Commit-Position: refs/heads/main@{#1436674}
This commit is contained in:

committed by
Chromium LUCI CQ

parent
154577c8fb
commit
07106f9d24
ash
tools/metrics/histograms/metadata/ash
@ -40,6 +40,7 @@
|
||||
#include "ash/quick_insert/quick_insert_controller.h"
|
||||
#include "ash/root_window_controller.h"
|
||||
#include "ash/rotator/window_rotation.h"
|
||||
#include "ash/scanner/scanner_metrics.h"
|
||||
#include "ash/session/session_controller_impl.h"
|
||||
#include "ash/shelf/shelf.h"
|
||||
#include "ash/shelf/shelf_focus_cycler.h"
|
||||
@ -1267,7 +1268,8 @@ void ShowTaskManager() {
|
||||
}
|
||||
|
||||
void StartSunfishSession() {
|
||||
// TODO: crbug.com/393140991 - Record a metric here.
|
||||
RecordScannerFeatureUserState(
|
||||
ScannerFeatureUserState::kSunfishSessionStartedFromKeyboardShortcut);
|
||||
CaptureModeController::Get()->StartSunfishSession();
|
||||
}
|
||||
|
||||
|
@ -301,6 +301,22 @@ TEST_F(SunfishDisabledScannerDisabledTest,
|
||||
ScannerFeatureUserState::kSunfishSessionStartedFromDebugShortcut, 0);
|
||||
}
|
||||
|
||||
// Tests that the debug accelerator entry point does not emit metrics when
|
||||
// neither Sunfish nor Scanner is enabled.
|
||||
TEST_F(SunfishDisabledScannerDisabledTest, AccelEntryPointDoesNotEmitMetrics) {
|
||||
base::HistogramTester histogram_tester;
|
||||
histogram_tester.ExpectBucketCount(
|
||||
"Ash.ScannerFeature.UserState",
|
||||
ScannerFeatureUserState::kSunfishSessionStartedFromKeyboardShortcut, 0);
|
||||
|
||||
PressAndReleaseKey(ui::VKEY_8,
|
||||
ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN | ui::EF_SHIFT_DOWN);
|
||||
|
||||
histogram_tester.ExpectBucketCount(
|
||||
"Ash.ScannerFeature.UserState",
|
||||
ScannerFeatureUserState::kSunfishSessionStartedFromKeyboardShortcut, 0);
|
||||
}
|
||||
|
||||
TEST_F(SunfishDisabledScannerDisabledTest,
|
||||
SmartActionsButtonNotShownDueToFeatureChecksRecorded) {
|
||||
base::HistogramTester histogram_tester;
|
||||
@ -546,6 +562,20 @@ TEST_F(SunfishTest, AccelEntryPoint) {
|
||||
EXPECT_EQ(active_behavior->behavior_type(), BehaviorType::kSunfish);
|
||||
}
|
||||
|
||||
// Tests that the accelerator entry point emits the correct metrics.
|
||||
TEST_F(SunfishTest, AccelEntryPointMetrics) {
|
||||
base::HistogramTester histogram_tester;
|
||||
histogram_tester.ExpectBucketCount(
|
||||
"Ash.ScannerFeature.UserState",
|
||||
ScannerFeatureUserState::kSunfishSessionStartedFromKeyboardShortcut, 0);
|
||||
|
||||
PressAndReleaseKey(ui::VKEY_SPACE, ui::EF_COMMAND_DOWN);
|
||||
|
||||
histogram_tester.ExpectBucketCount(
|
||||
"Ash.ScannerFeature.UserState",
|
||||
ScannerFeatureUserState::kSunfishSessionStartedFromKeyboardShortcut, 1);
|
||||
}
|
||||
|
||||
TEST_F(SunfishEnabledScannerDisabledTest,
|
||||
AccelEntryPointIsNoopIfEnterpriseDisabled) {
|
||||
auto* controller = CaptureModeController::Get();
|
||||
|
@ -125,8 +125,9 @@ enum class ScannerFeatureUserState {
|
||||
// These enum values should semantically be placed in a group above:
|
||||
// Should be placed after `NoControllerOnShell` and before `EnterprisePolicy`.
|
||||
kCanShowUiReturnedFalseDueToPinnedMode = 57,
|
||||
kSunfishSessionStartedFromKeyboardShortcut = 58,
|
||||
|
||||
kMaxValue = kCanShowUiReturnedFalseDueToPinnedMode,
|
||||
kMaxValue = kSunfishSessionStartedFromKeyboardShortcut,
|
||||
};
|
||||
// LINT.ThenChange(//tools/metrics/histograms/metadata/ash/enums.xml:ScannerFeatureUserState)
|
||||
|
||||
|
@ -2035,6 +2035,8 @@ chromeos/ash/components/peripheral_notification/peripheral_notification_manager.
|
||||
<int value="55" label="Feedback dialog was opened"/>
|
||||
<int value="56" label="Feedback sent"/>
|
||||
<int value="57" label=""Do not show UI" resulted from pinned mode"/>
|
||||
<int value="58"
|
||||
label="Sunfish-session started using the non-debug keyboard shortcut"/>
|
||||
</enum>
|
||||
|
||||
<!-- LINT.ThenChange(//ash/scanner/scanner_metrics.h:ScannerFeatureUserState) -->
|
||||
|
Reference in New Issue
Block a user