1 // Copyright (c) 2013 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_WM_DOCK_DOCK_TYPES_H_ 6 #define ASH_WM_DOCK_DOCK_TYPES_H_ 7 8 namespace ash { 9 10 // Possible values of which side of the screen the windows are docked at. 11 // This is used by DockedwindowLayoutManager and DockedWindowResizer to 12 // implement docking behavior including magnetism while dragging windows into 13 // or out of the docked windows area. 14 enum DockedAlignment { 15 // No docked windows. 16 DOCKED_ALIGNMENT_NONE, 17 18 // Some windows are already docked on the left side of the screen. 19 DOCKED_ALIGNMENT_LEFT, 20 21 // Some windows are already docked on the right side of the screen. 22 DOCKED_ALIGNMENT_RIGHT, 23 }; 24 25 // User action recorded for use in UMA histograms. 26 enum DockedAction { 27 DOCKED_ACTION_NONE, // Regular drag of undocked window. Not recorded. 28 DOCKED_ACTION_DOCK, // Dragged and docked a window. 29 DOCKED_ACTION_UNDOCK, // Dragged and undocked a window. 30 DOCKED_ACTION_RESIZE, // Resized a docked window. 31 DOCKED_ACTION_REORDER, // Possibly reordered docked windows. 32 DOCKED_ACTION_EVICT, // A docked window could not stay docked. 33 DOCKED_ACTION_MAXIMIZE, // Maximized a docked window. 34 DOCKED_ACTION_MINIMIZE, // Minimized a docked window. 35 DOCKED_ACTION_RESTORE, // Restored a docked window that was minimized. 36 DOCKED_ACTION_CLOSE, // Closed a window while it was docked. 37 DOCKED_ACTION_COUNT, // Maximum value of this enum for histograms use. 38 }; 39 40 // Event source for the docking user action (when known). 41 enum DockedActionSource { 42 DOCKED_ACTION_SOURCE_UNKNOWN, 43 DOCKED_ACTION_SOURCE_MOUSE, 44 DOCKED_ACTION_SOURCE_TOUCH, 45 46 // Maximum value of this enum for histograms use. 47 DOCKED_ACTION_SOURCE_COUNT, 48 }; 49 50 } // namespace ash 51 52 #endif // ASH_WM_DOCK_DOCK_TYPES_H_ 53