OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 ASH_KEY_REWRITER_DELEGATE_H_ | 5 #ifndef ASH_KEY_REWRITER_DELEGATE_H_ |
6 #define ASH_KEY_REWRITER_DELEGATE_H_ | 6 #define ASH_KEY_REWRITER_DELEGATE_H_ |
7 #pragma once | |
8 | 7 |
9 namespace aura { | 8 namespace aura { |
10 class KeyEvent; | 9 class KeyEvent; |
11 } // namespace aura | 10 } // namespace aura |
12 | 11 |
13 namespace ash { | 12 namespace ash { |
14 | 13 |
15 // Delegate for rewriting or filtering a key event. | 14 // Delegate for rewriting or filtering a key event. |
16 class KeyRewriterDelegate { | 15 class KeyRewriterDelegate { |
17 public: | 16 public: |
18 enum Action { | 17 enum Action { |
19 ACTION_REWRITE_EVENT, | 18 ACTION_REWRITE_EVENT, |
20 ACTION_DROP_EVENT, | 19 ACTION_DROP_EVENT, |
21 }; | 20 }; |
22 | 21 |
23 virtual ~KeyRewriterDelegate() {} | 22 virtual ~KeyRewriterDelegate() {} |
24 | 23 |
25 // A derived class can do either of the following: | 24 // A derived class can do either of the following: |
26 // 1) Just return ACTION_DROP_EVENT to drop the |event|. | 25 // 1) Just return ACTION_DROP_EVENT to drop the |event|. |
27 // 2) Rewrite the |event| and return ACTION_REWRITE_EVENT. | 26 // 2) Rewrite the |event| and return ACTION_REWRITE_EVENT. |
28 virtual Action RewriteOrFilterKeyEvent(aura::KeyEvent* event) = 0; | 27 virtual Action RewriteOrFilterKeyEvent(aura::KeyEvent* event) = 0; |
29 }; | 28 }; |
30 | 29 |
31 } // namespace ash | 30 } // namespace ash |
32 | 31 |
33 #endif // ASH_KEY_REWRITER_DELEGATE_H_ | 32 #endif // ASH_KEY_REWRITER_DELEGATE_H_ |
OLD | NEW |