Index: components/mus/public/interfaces/window_manager.mojom |
diff --git a/components/mus/public/interfaces/window_manager.mojom b/components/mus/public/interfaces/window_manager.mojom |
index 5bf1eb45af03d218b15ef7698e9757b088624364..5121ba00e56d70c361968111e91a686a191a0836 100644 |
--- a/components/mus/public/interfaces/window_manager.mojom |
+++ b/components/mus/public/interfaces/window_manager.mojom |
@@ -4,6 +4,8 @@ |
module mus.mojom; |
+import "components/mus/public/interfaces/input_event_matcher.mojom"; |
+import "components/mus/public/interfaces/input_events.mojom"; |
import "components/mus/public/interfaces/window_manager_constants.mojom"; |
import "ui/mojo/geometry/geometry.mojom"; |
@@ -44,11 +46,22 @@ interface WindowManager { |
// Asks the WindowManager to create a new window. |
WmCreateTopLevelWindow(uint32 change_id, |
map<string, array<uint8>> properties); |
+ |
+ // An accelerator registered via AddAccelerator() has been triggered. |
+ OnAccelerator(uint32 id, Event event); |
}; |
// This interface is only used as an associated interface and is associated |
// with WindowTree. |
interface WindowManagerClient { |
+ // Add and remove accelerators. When accelerators are registered the |
+ // WindowManager receives the event via OnAccelerator() rather than the |
+ // target window. The id is defined by the client and can be used to more |
+ // easily identify the accelerator's action. If an accelerator with the same |
+ // id or the same matcher already exists, then the accelerator is not added. |
+ AddAccelerator(uint32 id, EventMatcher matcher) => (bool success); |
+ RemoveAccelerator(uint32 id); |
+ |
// The window manager has completed a request with the specific change id. |
WmResponse(uint32 change_id, bool response); |