Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(155)

Unified Diff: mojo/services/public/interfaces/view_manager/view_manager.mojom

Issue 288313002: Tweaks to ViewManager: (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/services/public/interfaces/view_manager/view_manager.mojom
diff --git a/mojo/services/public/interfaces/view_manager/view_manager.mojom b/mojo/services/public/interfaces/view_manager/view_manager.mojom
index 8c64a297d96236f56ffeee4fd1e7955799433342..01079e5d890ed29ffc3ba9a02cdee381106b10f8 100644
--- a/mojo/services/public/interfaces/view_manager/view_manager.mojom
+++ b/mojo/services/public/interfaces/view_manager/view_manager.mojom
@@ -28,9 +28,9 @@ interface IViewManager {
// the connection.
CreateNode(uint32 node_id) => (bool success);
- // Deletes a node. This does not recurse. Children are removed from the node
- // before it is destroyed. Deletion is always allowed and implicitly advances
- // |server_change_id|.
+ // Deletes a node. This does not recurse. No hierarchy change notifications
+ // are sent as a result of this. Deletion is always allowed and implicitly
+ // advances |server_change_id|.
DeleteNode(uint32 node_id) => (bool success);
// Reparents a node. See description above class for details of |change_id|.
@@ -79,20 +79,34 @@ interface IViewManager {
interface IViewManagerClient {
// Invoked once the connection has been established. |connection_id| is the id
// that uniquely identifies this connection. |next_server_change_id| is the
- // id of the next change the server is expecting.
- OnConnectionEstablished(uint16 connection_id, uint32 next_server_change_id);
+ // id of the next change the server is expecting. |nodes| are the nodes
+ // parented to the root.
+ OnConnectionEstablished(uint16 connection_id,
+ uint32 next_server_change_id,
+ INode[] nodes);
+
+ // This is sent to clients when a change is made to the server that results
+ // in the |server_change_id| changing but the client isn't notified. This is
+ // not sent if the client receives a callback giving a new
+ // |server_change_id|. For example, if a client 1 changes the hierarchy in
+ // some way but client 2 isn't notified of the change, then client 2 gets
+ // OnServerChangeIdAdvanced().
+ OnServerChangeIdAdvanced(uint32 next_server_change_id);
// Invoked when a change is done to the hierarchy. A value of 0 is used to
// identify a null node. For example, if the old_parent is NULL, 0 is
// supplied. See description above ViewManager for details on the change ids.
+ // |nodes| contains any nodes that are that the client has not been told
+ // about. This is not sent for hierarchy changes of nodes not known to this
+ // client or not attached to the tree.
OnNodeHierarchyChanged(uint32 node,
uint32 new_parent,
uint32 old_parent,
- uint32 server_change_id);
+ uint32 server_change_id,
+ INode[] nodes);
// Invoked when a node is deleted.
OnNodeDeleted(uint32 node, uint32 server_change_id);
-
// Invoked when the view associated with a node is replaced by another view.
// 0 is used to identify a null view.
« no previous file with comments | « mojo/services/public/cpp/view_manager/lib/view_manager_synchronizer.cc ('k') | mojo/services/view_manager/node.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698