15d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 25d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// found in the LICENSE file. 45d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 55d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "ash/metrics/user_metrics_recorder.h" 65d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 75d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "ash/shelf/shelf_layout_manager.h" 85d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "ash/shelf/shelf_view.h" 95d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "ash/shelf/shelf_widget.h" 105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "ash/shell.h" 115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "ash/wm/window_state.h" 125d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "base/metrics/histogram.h" 135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "base/metrics/user_metrics.h" 145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 155d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)namespace ash { 165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Time in seconds between calls to "RecordPeriodicMetrics". 185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)const int kAshPeriodicMetricsTimeInSeconds = 30 * 60; 195d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)UserMetricsRecorder::UserMetricsRecorder() { 215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) timer_.Start(FROM_HERE, 225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::TimeDelta::FromSeconds(kAshPeriodicMetricsTimeInSeconds), 235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) this, 245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) &UserMetricsRecorder::RecordPeriodicMetrics); 255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)} 265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)UserMetricsRecorder::~UserMetricsRecorder() { 285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) timer_.Stop(); 295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)} 305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)void UserMetricsRecorder::RecordUserMetricsAction(UserMetricsAction action) { 325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) switch (action) { 335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_ACCEL_KEYBOARD_BRIGHTNESS_DOWN_F6: 345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Accel_KeyboardBrightnessDown_F6")); 365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_ACCEL_KEYBOARD_BRIGHTNESS_UP_F7: 385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Accel_KeyboardBrightnessUp_F7")); 405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 415d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_ACCEL_LOCK_SCREEN_LOCK_BUTTON: 425d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 435d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Accel_LockScreen_LockButton")); 445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_ACCEL_LOCK_SCREEN_POWER_BUTTON: 465d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Accel_LockScreen_PowerButton")); 485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 495d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_ACCEL_MAXIMIZE_RESTORE_F4: 505d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 515d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Accel_Maximize_Restore_F4")); 525d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 535d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_ACCEL_PREVWINDOW_F5: 545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Accel_PrevWindow_F5")); 555d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 565d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_ACCEL_EXIT_FIRST_Q: 575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Accel_Exit_First_Q")); 585d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_ACCEL_EXIT_SECOND_Q: 605d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Accel_Exit_Second_Q")); 615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_ACCEL_SHUT_DOWN_POWER_BUTTON: 635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Accel_ShutDown_PowerButton")); 655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_CLOSE_THROUGH_CONTEXT_MENU: 675d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("CloseFromContextMenu")); 685d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_DRAG_MAXIMIZE_LEFT: 705d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("WindowDrag_MaximizeLeft")); 715d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 725d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_DRAG_MAXIMIZE_RIGHT: 735d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("WindowDrag_MaximizeRight")); 745d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 755d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_GESTURE_OVERVIEW: 765d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Gesture_Overview")); 775d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 785d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_LAUNCHER_CLICK_ON_APP: 795d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Launcher_ClickOnApp")); 805d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 815d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_LAUNCHER_CLICK_ON_APPLIST_BUTTON: 825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 835d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Launcher_ClickOnApplistButton")); 845d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 855d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_MOUSE_DOWN: 865d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Mouse_Down")); 875d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 885d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_PANEL_MINIMIZE_CAPTION_CLICK: 895d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 905d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Panel_Minimize_Caption_Click")); 915d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 925d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_PANEL_MINIMIZE_CAPTION_GESTURE: 935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Panel_Minimize_Caption_Gesture")); 955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_SHELF_ALIGNMENT_SET_BOTTOM: 975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Shelf_AlignmentSetBottom")); 995d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1005d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_SHELF_ALIGNMENT_SET_LEFT: 1015d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1025d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Shelf_AlignmentSetLeft")); 1035d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1045d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_SHELF_ALIGNMENT_SET_RIGHT: 1055d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1065d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Shelf_AlignmentSetRight")); 10746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) break; 1085d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_AUDIO_CURRENT_INPUT_DEVICE: 1095d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Audio_CurrentInputDevice")); 1115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1125d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_AUDIO_CURRENT_OUTPUT_DEVICE: 1135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Audio_CurrentOutputDevice")); 1155d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_AUDIO_SWITCH_INPUT_DEVICE: 1175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Audio_SwitchInputDevice")); 1195d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_AUDIO_SWITCH_OUTPUT_DEVICE: 1215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Audio_SwitchOutputDevice")); 1235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_BRIGHTNESS_CHANGED: 1255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_BrightnessChanged")); 1275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_BLUETOOTH_CONNECT_KNOWN_DEVICE: 1295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Bluetooth_Connect_Known")); 1315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_BLUETOOTH_CONNECT_UNKNOWN_DEVICE: 1335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Bluetooth_Connect_Unknown")); 1355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_BLUETOOTH_DISABLED: 1375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Bluetooth_Disabled")); 1395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_BLUETOOTH_ENABLED: 1415d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1425d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Bluetooth_Enabled")); 1435d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_CAPS_LOCK_DETAILED: 1455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1465d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_CapsLock_Detailed")); 1475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_CAPS_LOCK_DISABLED_BY_CLICK: 1495d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1505d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_CapsLock_DisabledByClick")); 1515d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1525d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_CAPS_LOCK_ENABLED_BY_CLICK: 1535d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_CapsLock_EnabledByClick")); 1555d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1565d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_CAPS_LOCK_POPUP: 1575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1585d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_CapsLock_Popup")); 1595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1605d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_CONNECT_TO_CONFIGURED_NETWORK: 1615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Network_ConnectConfigured")); 1635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_CONNECT_TO_UNCONFIGURED_NETWORK: 1655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Network_ConnectUnconfigured")); 1675d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1685d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_CONNECT_TO_VPN: 1695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1705d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_VPN_ConnectToNetwork")); 1715d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1725d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_CHANGED_VOLUME_MENU: 1735d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1745d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Volume_ChangedMenu")); 1755d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1765d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_CHANGED_VOLUME_POPUP: 1775d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1785d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Volume_ChangedPopup")); 1795d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1805d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DETAILED_ACCESSABILITY: 1815d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Accessability_DetailedView")); 1835d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1845d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DETAILED_AUDIO_VIEW: 1855d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1865d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Audio_Detailed")); 1875d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1885d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DETAILED_BLUETOOTH_VIEW: 1895d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1905d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Bluetooth_Detailed")); 1915d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1925d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DETAILED_BRIGHTNESS_VIEW: 1935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Brightness_Detailed")); 1955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 1965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DETAILED_DRIVE_VIEW: 1975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 1985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Drive_Detailed")); 1995d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2005d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DETAILED_NETWORK_VIEW: 2015d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2025d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Network_Detailed")); 2035d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2045d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DETAILED_VPN_VIEW: 2055d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2065d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_VPN_Detailed")); 2075d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2085d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DISABLE_AUTO_CLICK: 2095d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_AutoClickDisabled")); 2115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2125d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DISABLE_HIGH_CONTRAST: 2135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_HighContrastDisabled")); 2155d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DISABLE_LARGE_CURSOR: 2175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_LargeCursorDisabled")); 2195d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DISABLE_MAGNIFIER: 2215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_MagnifierDisabled")); 2235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DISABLE_SPOKEN_FEEDBACK: 2255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_SpokenFeedbackDisabled")); 2275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DISABLE_VIRTUAL_KEYBOARD: 2295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_VirtualKeyboardDisabled")); 2315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DISABLE_WIFI: 2335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Network_WifiDisabled")); 2355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DRIVE_CANCEL_OPERATION: 2375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Drive_CancelOperation")); 2395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_DRIVE_SETTINGS: 2415d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2425d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Drive_Settings")); 2435d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_ENABLE_AUTO_CLICK: 2455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2465d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_AutoClickEnabled")); 2475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_ENABLE_HIGH_CONTRAST: 2495d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2505d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_HighContrastEnabled")); 2515d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2525d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_ENABLE_LARGE_CURSOR: 2535d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_LargeCursorEnabled")); 2555d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2565d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_ENABLE_MAGNIFIER: 2575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2585d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_MagnifierEnabled")); 2595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2605d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_ENABLE_SPOKEN_FEEDBACK: 2615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_SpokenFeedbackEnabled")); 2635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_ENABLE_VIRTUAL_KEYBOARD: 2655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_VirtualKeyboardEnabled")); 2675d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2685d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_ENABLE_WIFI: 2695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2705d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Network_WifiEnabled")); 2715d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2725d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_IME_SHOW_DETAILED: 2735d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2745d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_IME_Detailed")); 2755d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2765d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_IME_SWITCH_MODE: 2775d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2785d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_IME_SwitchMode")); 2795d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2805d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_MENU_OPENED: 2815d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_MenuOpened")); 2835d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2845d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_NETWORK_JOIN_OTHER_CLICKED: 2855d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2865d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Network_JoinOther")); 2875d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2885d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_NETWORK_SETTINGS_CLICKED: 2895d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2905d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Network_Settings")); 2915d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2925d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_SHOW_NETWORK_CONNECTION_DETAILS: 2935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_Network_ConnectionDetails")); 2955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 2965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_SHOW_VPN_CONNECTION_DETAILS: 2975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 2985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_VPN_ConnectionDetails")); 2995d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3005d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_SIGN_OUT: 3015d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3025d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_SignOut")); 3035d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3045d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_VPN_JOIN_OTHER_CLICKED: 3055d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3065d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_VPN_JoinOther")); 3075d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3085d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_STATUS_AREA_VPN_SETTINGS_CLICKED: 3095d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("StatusArea_VPN_Settings")); 3115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3125d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_TOGGLE_MAXIMIZE_CAPTION_CLICK: 3135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Caption_ClickTogglesMaximize")); 3155d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_TOGGLE_MAXIMIZE_CAPTION_GESTURE: 3175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Caption_GestureTogglesMaximize")); 3195d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_TOGGLE_SINGLE_AXIS_MAXIMIZE_BORDER_CLICK: 3215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction( 3235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) "WindowBorder_ClickTogglesSingleAxisMaximize")); 3245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_TOUCHPAD_GESTURE_OVERVIEW: 3265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("Touchpad_Gesture_Overview")); 3285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_TOUCHSCREEN_TAP_DOWN: 3305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Touchscreen_Down")); 3315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_TRAY_HELP: 3335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Tray_Help")); 3345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_TRAY_LOCK_SCREEN: 3365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Tray_LockScreen")); 3375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_TRAY_SHUT_DOWN: 3395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("Tray_ShutDown")); 3405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3415d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_WINDOW_APP_CLOSE_BUTTON_CLICK: 3425d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("AppCloseButton_Clk")); 3435d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_WINDOW_CLOSE_BUTTON_CLICK: 3455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("CloseButton_Clk")); 3465d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_WINDOW_MAXIMIZE_BUTTON_CLICK_EXIT_FULLSCREEN: 3485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("MaxButton_Clk_ExitFS")); 3495d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3505d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_WINDOW_MAXIMIZE_BUTTON_CLICK_RESTORE: 3515d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3525d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("MaxButton_Clk_Restore")); 3535d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_WINDOW_MAXIMIZE_BUTTON_CLICK_MAXIMIZE: 3555d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3565d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("MaxButton_Clk_Maximize")); 3575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3585d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_WINDOW_MAXIMIZE_BUTTON_CLICK_MINIMIZE: 3595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("MinButton_Clk")); 3605d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_WINDOW_MAXIMIZE_BUTTON_MAXIMIZE_LEFT: 3625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("MaxButton_MaxLeft")); 3635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_WINDOW_MAXIMIZE_BUTTON_MAXIMIZE_RIGHT: 3655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction(base::UserMetricsAction("MaxButton_MaxRight")); 3665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3675d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) case ash::UMA_WINDOW_OVERVIEW: 3685d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 3695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::UserMetricsAction("WindowSelector_Overview")); 3705d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 371f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) case ash::UMA_WINDOW_OVERVIEW_ENTER_KEY: 3725d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::RecordAction( 373f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) base::UserMetricsAction("WindowSelector_OverviewEnterKey")); 374f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) break; 375f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) case ash::UMA_WINDOW_CYCLE: 376f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) base::RecordAction( 377f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) base::UserMetricsAction("WindowCycleController_Cycle")); 3785d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 3795d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) } 3805d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)} 3815d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 3825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)void UserMetricsRecorder::RecordPeriodicMetrics() { 383c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch ShelfLayoutManager* manager = 384c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch ShelfLayoutManager::ForShelf(Shell::GetPrimaryRootWindow()); 3855d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) if (manager) { 3865d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) UMA_HISTOGRAM_ENUMERATION("Ash.ShelfAlignmentOverTime", 387c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch manager->SelectValueForShelfAlignment( 388c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch SHELF_ALIGNMENT_UMA_ENUM_VALUE_BOTTOM, 389c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch SHELF_ALIGNMENT_UMA_ENUM_VALUE_LEFT, 390c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch SHELF_ALIGNMENT_UMA_ENUM_VALUE_RIGHT, 391c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch -1), 392c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch SHELF_ALIGNMENT_UMA_ENUM_VALUE_COUNT); 3935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) } 3945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 395a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) enum ActiveWindowStateType { 396a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) ACTIVE_WINDOW_STATE_TYPE_NO_ACTIVE_WINDOW, 397a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) ACTIVE_WINDOW_STATE_TYPE_OTHER, 398a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) ACTIVE_WINDOW_STATE_TYPE_MAXIMIZED, 399a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) ACTIVE_WINDOW_STATE_TYPE_FULLSCREEN, 400a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) ACTIVE_WINDOW_STATE_TYPE_SNAPPED, 401a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) ACTIVE_WINDOW_STATE_TYPE_COUNT 4025d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) }; 4035d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 404a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) ActiveWindowStateType active_window_state_type = 405a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) ACTIVE_WINDOW_STATE_TYPE_NO_ACTIVE_WINDOW; 4065d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) wm::WindowState* active_window_state = ash::wm::GetActiveWindowState(); 4075d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) if (active_window_state) { 408f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) switch (active_window_state->GetStateType()) { 409a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_MAXIMIZED: 410a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) active_window_state_type = ACTIVE_WINDOW_STATE_TYPE_MAXIMIZED; 4115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 412a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_FULLSCREEN: 413a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) active_window_state_type = ACTIVE_WINDOW_STATE_TYPE_FULLSCREEN; 4145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 415a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_LEFT_SNAPPED: 416a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_RIGHT_SNAPPED: 417a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) active_window_state_type = ACTIVE_WINDOW_STATE_TYPE_SNAPPED; 4185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 419a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_DEFAULT: 420a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_NORMAL: 421a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_MINIMIZED: 422a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_INACTIVE: 423a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_END: 424a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) case wm::WINDOW_STATE_TYPE_AUTO_POSITIONED: 425a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) active_window_state_type = ACTIVE_WINDOW_STATE_TYPE_OTHER; 4265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) break; 4275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) } 4285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) } 4295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) UMA_HISTOGRAM_ENUMERATION("Ash.ActiveWindowShowTypeOverTime", 430a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) active_window_state_type, 431a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) ACTIVE_WINDOW_STATE_TYPE_COUNT); 4325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)} 4335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)} // namespace ash 435