OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef UI_WM_CORE_ACCELERATOR_DELEGATE_H_ | 5 #ifndef UI_WM_CORE_ACCELERATOR_DELEGATE_H_ |
6 #define UI_WM_CORE_ACCELERATOR_DELEGATE_H_ | 6 #define UI_WM_CORE_ACCELERATOR_DELEGATE_H_ |
7 | 7 |
8 namespace ui { | 8 namespace ui { |
9 class Accelerator; | 9 class Accelerator; |
10 class KeyEvent; | 10 class KeyEvent; |
11 } | 11 } |
12 | 12 |
13 namespace wm { | 13 namespace wm { |
14 | 14 |
15 class AcceleratorDelegate { | 15 class AcceleratorDelegate { |
16 public: | 16 public: |
17 virtual ~AcceleratorDelegate() {} | 17 virtual ~AcceleratorDelegate() {} |
18 | 18 |
19 // Type of keys that triggers accelerators. | |
20 enum KeyType { | |
21 SYSTEM_KEYS, | |
sky
2014/05/30 20:27:40
KEY_TYPE_SYSTEM
| |
22 NORMAL_KEYS, | |
sky
2014/05/30 20:27:40
KEY_TYPE_NORMAL, or maybe KEY_TYPE_NON_SYSTEM or e
| |
23 }; | |
24 | |
19 // TODO(oshima): Move the repeat detection to AcceleratorFilter. | 25 // TODO(oshima): Move the repeat detection to AcceleratorFilter. |
20 virtual void PreProcessAccelerator(const ui::Accelerator& accelerator) = 0; | 26 virtual void PreProcessAccelerator(const ui::Accelerator& accelerator) = 0; |
21 | 27 |
22 // Returns true if the window should be allowed a chance to handle | |
23 // system keys. | |
24 virtual bool CanConsumeSystemKeys(const ui::KeyEvent& event) = 0; | |
25 | |
26 // Returns true if the |accelerator| should be processed. | |
27 virtual bool ShouldProcessAcceleratorNow( | |
28 const ui::KeyEvent& key_event, | |
29 const ui::Accelerator& accelerator) = 0; | |
30 | |
31 // Return true if the |accelerator| has been processed. | 28 // Return true if the |accelerator| has been processed. |
32 virtual bool ProcessAccelerator(const ui::Accelerator& accelerator) = 0; | 29 virtual bool ProcessAccelerator(const ui::KeyEvent& event, |
30 const ui::Accelerator& accelerator, | |
31 KeyType key_type) = 0; | |
33 }; | 32 }; |
34 | 33 |
35 } // namespace wm | 34 } // namespace wm |
36 | 35 |
37 #endif // UI_WM_CORE_ACCELERATOR_DELEGATE_H_ | 36 #endif // UI_WM_CORE_ACCELERATOR_DELEGATE_H_ |
OLD | NEW |