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 UI_AURA_CLIENT_USER_ACTION_CLIENT_H_ | |
6 #define UI_AURA_CLIENT_USER_ACTION_CLIENT_H_ | |
7 | |
8 #include "ui/aura/aura_export.h" | |
9 | |
10 namespace aura { | |
11 class Window; | |
12 namespace client { | |
13 | |
14 // An interface for handling a user action that isn't handled by the standard | |
15 // event path. | |
16 class AURA_EXPORT UserActionClient { | |
17 public: | |
18 enum Command { | |
19 BACK = 0, | |
20 FORWARD, | |
21 }; | |
22 | |
23 // Returns true if the command was handled and false otherwise. | |
24 virtual bool OnUserAction(Command command) = 0; | |
25 | |
26 virtual ~UserActionClient() {} | |
27 }; | |
28 | |
29 // Sets/gets the client for handling user action on the specified root window. | |
30 AURA_EXPORT void SetUserActionClient(Window* root_window, | |
31 UserActionClient* client); | |
32 AURA_EXPORT UserActionClient* GetUserActionClient(Window* root_window); | |
33 | |
34 } // namespace client | |
35 } // namespace aura | |
36 | |
37 #endif // UI_AURA_CLIENT_USER_ACTION_CLIENT_H_ | |
OLD | NEW |