Index: third_party/mojo_services/src/view_manager/public/interfaces/view_manager.mojom |
diff --git a/third_party/mojo_services/src/view_manager/public/interfaces/view_manager.mojom b/third_party/mojo_services/src/view_manager/public/interfaces/view_manager.mojom |
index 3bd8f1ecdd8d4d28d8701946524d8a87314a9310..0a2564eeceb1470a6033806a928f8839c14b84d8 100644 |
--- a/third_party/mojo_services/src/view_manager/public/interfaces/view_manager.mojom |
+++ b/third_party/mojo_services/src/view_manager/public/interfaces/view_manager.mojom |
@@ -142,6 +142,14 @@ interface ViewManagerService { |
ServiceProvider&? services, |
ServiceProvider? exposed_services) => (bool success); |
Embed(uint32 view_id, ViewManagerClient client) => (bool success); |
+ |
+ // Requests the WindowManager to perform an action on the specified view. |
+ // It's up to the WindowManager to decide what |action| is. |
+ // |
+ // TODO(sky): nuke this. This is here to guarantee the state of the |
+ // WindowManager matches that of the ViewManager at the time the client |
+ // invokes the function. When we can enforce ordering this won't be necessary. |
+ PerformAction(uint32 view_id, string action) => (bool success); |
}; |
// Changes to views are not sent to the connection that originated the |
@@ -214,4 +222,9 @@ interface ViewManagerClient { |
// Invoked when an event is targeted at the specified view. |
OnViewInputEvent(uint32 view, mojo.Event event) => (); |
+ |
+ // Invoked solely on the WindowManager. See comments in PerformAction() above |
+ // for details. |
+ // TODO(sky): nuke this. |
+ OnPerformAction(uint32 view_id, string action) => (bool success); |
}; |