1 // Copyright 2020 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_CAPTURE_MODE_CAPTURE_MODE_TYPES_H_ 6 #define ASH_CAPTURE_MODE_CAPTURE_MODE_TYPES_H_ 7 8 namespace ash { 9 10 // Defines the capture type Capture Mode is currently using. 11 enum class CaptureModeType { 12 kImage, 13 kVideo, 14 }; 15 16 // Defines the source of the capture used by Capture Mode. 17 enum class CaptureModeSource { 18 kFullscreen, 19 kRegion, 20 kWindow, 21 }; 22 23 // The position of the press event during the fine tune phase of a region 24 // capture session. This will determine what subsequent drag events do to the 25 // select region. 26 enum class FineTunePosition { 27 // The initial press was outside region. Subsequent drags will do nothing. 28 kNone, 29 // The initial press was inside the select region. Subsequent drags will 30 // move the entire region. 31 kCenter, 32 // The initial press was on one of the drag affordance circles. Subsequent 33 // drags will resize the region. These are sorted clockwise starting at the 34 // top left. 35 kTopLeft, 36 kTopCenter, 37 kTopRight, 38 kRightCenter, 39 kBottomRight, 40 kBottomCenter, 41 kBottomLeft, 42 kLeftCenter, 43 }; 44 45 } // namespace ash 46 47 #endif // ASH_CAPTURE_MODE_CAPTURE_MODE_TYPES_H_ 48