OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef ASH_EVENT_REWRITER_DELEGATE_H_ | |
6 #define ASH_EVENT_REWRITER_DELEGATE_H_ | |
7 | |
8 namespace ui { | |
9 class KeyEvent; | |
10 class LocatedEvent; | |
11 } // namespace aura | |
12 | |
13 namespace ash { | |
14 | |
15 // Delegate for rewriting or filtering an event. | |
16 class EventRewriterDelegate { | |
17 public: | |
18 enum Action { | |
19 ACTION_REWRITE_EVENT, | |
20 ACTION_DROP_EVENT, | |
21 }; | |
22 | |
23 virtual ~EventRewriterDelegate() {} | |
24 | |
25 // A derived class can do either of the following: | |
26 // 1) Just return ACTION_DROP_EVENT to drop the |event|. | |
27 // 2) Rewrite the |event| and return ACTION_REWRITE_EVENT. | |
28 virtual Action RewriteOrFilterKeyEvent(ui::KeyEvent* event) = 0; | |
29 virtual Action RewriteOrFilterLocatedEvent(ui::LocatedEvent* event) = 0; | |
30 }; | |
31 | |
32 } // namespace ash | |
33 | |
34 #endif // ASH_EVENT_REWRITER_DELEGATE_H_ | |
OLD | NEW |