OLD | NEW |
| (Empty) |
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 UI_VIEWS_COREWM_NATIVE_CURSOR_MANAGER_H_ | |
6 #define UI_VIEWS_COREWM_NATIVE_CURSOR_MANAGER_H_ | |
7 | |
8 #include "base/strings/string16.h" | |
9 #include "ui/views/corewm/native_cursor_manager_delegate.h" | |
10 #include "ui/views/views_export.h" | |
11 | |
12 namespace gfx { | |
13 class Display; | |
14 } | |
15 | |
16 namespace views { | |
17 namespace corewm { | |
18 | |
19 // Interface where platforms such as Ash or Desktop aura are notified of | |
20 // requested changes to cursor state. When requested, implementer should tell | |
21 // the CursorManager of any actual state changes performed through the | |
22 // delegate. | |
23 class VIEWS_EXPORT NativeCursorManager { | |
24 public: | |
25 virtual ~NativeCursorManager() {} | |
26 | |
27 // A request to set the screen DPI. Can cause changes in the current cursor. | |
28 virtual void SetDisplay( | |
29 const gfx::Display& display, | |
30 views::corewm::NativeCursorManagerDelegate* delegate) = 0; | |
31 | |
32 // A request to set the cursor to |cursor|. At minimum, implementer should | |
33 // call NativeCursorManagerDelegate::CommitCursor() with whatever cursor is | |
34 // actually used. | |
35 virtual void SetCursor( | |
36 gfx::NativeCursor cursor, | |
37 views::corewm::NativeCursorManagerDelegate* delegate) = 0; | |
38 | |
39 // A request to set the visibility of the cursor. At minimum, implementer | |
40 // should call NativeCursorManagerDelegate::CommitVisibility() with whatever | |
41 // the visibility is. | |
42 virtual void SetVisibility( | |
43 bool visible, | |
44 views::corewm::NativeCursorManagerDelegate* delegate) = 0; | |
45 | |
46 // A request to set the scale of the cursor icon. | |
47 virtual void SetScale( | |
48 float scale, | |
49 views::corewm::NativeCursorManagerDelegate* delegate) = 0; | |
50 | |
51 // A request to set the scale of the cursor icon. | |
52 virtual void SetCursorSet( | |
53 ui::CursorSetType cursor_set, | |
54 views::corewm::NativeCursorManagerDelegate* delegate) = 0; | |
55 | |
56 // A request to set whether mouse events are disabled. At minimum, | |
57 // implementer should call NativeCursorManagerDelegate:: | |
58 // CommitMouseEventsEnabled() with whether mouse events are actually enabled. | |
59 virtual void SetMouseEventsEnabled( | |
60 bool enabled, | |
61 views::corewm::NativeCursorManagerDelegate* delegate) = 0; | |
62 }; | |
63 | |
64 } // namespace corewm | |
65 } // namespace views | |
66 | |
67 #endif // UI_VIEWS_COREWM_NATIVE_CURSOR_MANAGER_H_ | |
OLD | NEW |