1 // Copyright 2016 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef ASH_METRICS_TASK_SWITCH_SOURCE_H_ 6 #define ASH_METRICS_TASK_SWITCH_SOURCE_H_ 7 8 namespace ash { 9 10 // Enumeration of the different user interfaces that could be the source of 11 // a task switch. Note this is not necessarily comprehensive of all sources. 12 enum class TaskSwitchSource { 13 // Task switches caused by any two sources in this enum. NOTE: This value 14 // should NOT be used outside of TaskSwitchMetricsRecorder. 15 ANY, 16 // Task switches caused by the user activating a task window by clicking or 17 // tapping on it. 18 DESKTOP, 19 // Task switches caused by selecting a window from overview mode which is 20 // different from the previously-active window. 21 OVERVIEW_MODE, 22 // All task switches caused by shelf buttons, not including sub-menus. 23 SHELF, 24 // Task switches caused by the WindowCycleController (ie Alt+Tab). 25 WINDOW_CYCLE_CONTROLLER 26 }; 27 28 } // namespace ash 29 30 #endif // ASH_METRICS_TASK_SWITCH_SOURCE_H_ 31