blob: f7d51587a4cb1043552b27684585174809cea833 [file] [log] [blame]
Michelle58ac84702023-08-16 23:41:461// Copyright 2023 The Chromium Authors
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "ui/touch_selection/touch_selection_metrics.h"
6
7#include "base/metrics/histogram_functions.h"
Joseph Parkf1147f742024-10-18 17:39:178#include "ui/touch_selection/touch_editing_controller.h"
Michelle58ac84702023-08-16 23:41:469
10namespace ui {
11
12namespace {
13
14TouchSelectionMenuAction MapCommandIdToMenuAction(int command_id) {
15 switch (command_id) {
Michelle615d1d12023-08-23 00:26:2016 case TouchEditable::kCut:
Michelle58ac84702023-08-16 23:41:4617 return TouchSelectionMenuAction::kCut;
Michelle615d1d12023-08-23 00:26:2018 case TouchEditable::kCopy:
Michelle58ac84702023-08-16 23:41:4619 return TouchSelectionMenuAction::kCopy;
Michelle615d1d12023-08-23 00:26:2020 case TouchEditable::kPaste:
Michelle58ac84702023-08-16 23:41:4621 return TouchSelectionMenuAction::kPaste;
Michelle615d1d12023-08-23 00:26:2022 case TouchEditable::kSelectAll:
Michelle58ac84702023-08-16 23:41:4623 return TouchSelectionMenuAction::kSelectAll;
Michelle615d1d12023-08-23 00:26:2024 case TouchEditable::kSelectWord:
Michelle58ac84702023-08-16 23:41:4625 return TouchSelectionMenuAction::kSelectWord;
26 default:
Peter Boström01ab59a2024-08-15 02:39:4927 NOTREACHED() << "Invalid command id: " << command_id;
Michelle58ac84702023-08-16 23:41:4628 }
29}
30
31} // namespace
32
33void RecordTouchSelectionDrag(TouchSelectionDragType drag_type) {
34 base::UmaHistogramEnumeration(kTouchSelectionDragTypeHistogramName,
35 drag_type);
36}
37
38void RecordTouchSelectionMenuCommandAction(int command_id) {
39 base::UmaHistogramEnumeration(kTouchSelectionMenuActionHistogramName,
40 MapCommandIdToMenuAction(command_id));
41}
42
43void RecordTouchSelectionMenuEllipsisAction() {
44 base::UmaHistogramEnumeration(kTouchSelectionMenuActionHistogramName,
45 TouchSelectionMenuAction::kEllipsis);
46}
47
48void RecordTouchSelectionMenuSmartAction() {
49 base::UmaHistogramEnumeration(kTouchSelectionMenuActionHistogramName,
50 TouchSelectionMenuAction::kSmartAction);
51}
52
Michelle58ac84702023-08-16 23:41:4653} // namespace ui