| Index: mojo/services/view_manager/view_manager_service_impl.h
|
| diff --git a/mojo/services/view_manager/view_manager_service_impl.h b/mojo/services/view_manager/view_manager_service_impl.h
|
| index 3c0eb71177a5530c0af42e2d57618fe21de9c876..568aab831322f4667df34750361fea140843a79a 100644
|
| --- a/mojo/services/view_manager/view_manager_service_impl.h
|
| +++ b/mojo/services/view_manager/view_manager_service_impl.h
|
| @@ -123,6 +123,9 @@ class MOJO_VIEW_MANAGER_EXPORT ViewManagerServiceImpl
|
| bool CanGetNodeTree(const Node* node) const;
|
| bool CanEmbed(Id transport_node_id) const;
|
| bool CanSetNodeVisibility(const Node* node, bool visible) const;
|
| + // Used during GetNodeTreeImpl() to decide if we should descend into |node|
|
| + // when building the results of GetNodeTree().
|
| + bool CanDescendIntoNodeForNodeTree(const Node* node) const;
|
|
|
| // Deletes a node owned by this connection. Returns true on success. |source|
|
| // is the connection that originated the change.
|
| @@ -139,6 +142,10 @@ class MOJO_VIEW_MANAGER_EXPORT ViewManagerServiceImpl
|
| // to |nodes|, marks |node| as known and recurses.
|
| void GetUnknownNodesFrom(const Node* node, std::vector<const Node*>* nodes);
|
|
|
| + // Returns true if node (or one of its ancestors) is embedded in another
|
| + // connection.
|
| + bool IsNodeEmbeddedInAnotherConnection(const Node* node) const;
|
| +
|
| // Removes |node| and all its descendants from |known_nodes_|. This does not
|
| // recurse through nodes that were created by this connection. All nodes owned
|
| // by this connection are added to |local_nodes|.
|
| @@ -151,6 +158,8 @@ class MOJO_VIEW_MANAGER_EXPORT ViewManagerServiceImpl
|
| // Removes |node_id| from the set of roots this connection knows about.
|
| void RemoveRoot(const NodeId& node_id);
|
|
|
| + void RemoveChildrenAsPartOfEmbed(const NodeId& node_id);
|
| +
|
| // Returns true if |node| is a non-null and a descendant of |roots_| (or
|
| // |roots_| is empty).
|
| bool IsNodeDescendantOfRoots(const Node* node) const;
|
| @@ -168,6 +177,10 @@ class MOJO_VIEW_MANAGER_EXPORT ViewManagerServiceImpl
|
| // are set to NULL (in the returned NodeDatas).
|
| Array<NodeDataPtr> NodesToNodeDatas(const std::vector<const Node*>& nodes);
|
|
|
| + // Implementation of GetNodeTree(). Adds |node| to |nodes| and recurses if
|
| + // CanDescendIntoNodeForNodeTree() returns true.
|
| + void GetNodeTreeImpl(const Node* node, std::vector<const Node*>* nodes) const;
|
| +
|
| // ViewManagerService:
|
| virtual void CreateNode(Id transport_node_id,
|
| const Callback<void(ErrorCode)>& callback) OVERRIDE;
|
|
|