Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / mojo / services / view_manager / test_change_tracker.h
index 5a5edf7..3e4c238 100644 (file)
 #include "ui/gfx/rect.h"
 
 namespace mojo {
-namespace view_manager {
 namespace service {
 
 enum ChangeType {
-  CHANGE_TYPE_CONNECTION_ESTABLISHED,
-  CHANGE_TYPE_ROOTS_ADDED,
-  CHANGE_TYPE_SERVER_CHANGE_ID_ADVANCED,
+  CHANGE_TYPE_EMBED,
   CHANGE_TYPE_NODE_BOUNDS_CHANGED,
   CHANGE_TYPE_NODE_HIERARCHY_CHANGED,
   CHANGE_TYPE_NODE_REORDERED,
   CHANGE_TYPE_NODE_DELETED,
-  CHANGE_TYPE_VIEW_DELETED,
-  CHANGE_TYPE_VIEW_REPLACED,
   CHANGE_TYPE_INPUT_EVENT,
+  CHANGE_TYPE_DELEGATE_EMBED,
 };
 
-// TODO(sky): consider nuking and converting directly to NodeData.
+// TODO(sky): consider nuking and converting directly to ViewData.
 struct TestNode {
   // Returns a string description of this.
   std::string ToString() const;
 
   Id parent_id;
   Id node_id;
-  Id view_id;
 };
 
 // Tracks a call to ViewManagerClient. See the individual functions for the
@@ -48,17 +43,15 @@ struct Change {
 
   ChangeType type;
   ConnectionSpecificId connection_id;
-  Id change_id;
   std::vector<TestNode> nodes;
   Id node_id;
   Id node_id2;
   Id node_id3;
-  Id view_id;
-  Id view_id2;
   gfx::Rect bounds;
   gfx::Rect bounds2;
   int32 event_action;
   String creator_url;
+  String embed_url;
   OrderDirection direction;
 };
 
@@ -70,8 +63,8 @@ std::vector<std::string> ChangesToDescription1(
 // if change.size() != 1.
 std::string ChangeNodeDescription(const std::vector<Change>& changes);
 
-// Converts NodeDatas to TestNodes.
-void NodeDatasToTestNodes(const Array<NodeDataPtr>& data,
+// Converts ViewDatas to TestNodes.
+void ViewDatasToTestNodes(const Array<ViewDataPtr>& data,
                           std::vector<TestNode>* test_nodes);
 
 // TestChangeTracker is used to record ViewManagerClient functions. It notifies
@@ -91,32 +84,28 @@ class TestChangeTracker {
   TestChangeTracker();
   ~TestChangeTracker();
 
-  void set_delegate(Delegate* delegate) { delegate_ = delegate; }
+  void set_delegate(Delegate* delegate) {
+    delegate_ = delegate;
+  }
 
   std::vector<Change>* changes() { return &changes_; }
 
   // Each of these functions generate a Change. There is one per
   // ViewManagerClient function.
-  void OnViewManagerConnectionEstablished(ConnectionSpecificId connection_id,
-                                          const String& creator_url,
-                                          Id next_server_change_id,
-                                          Array<NodeDataPtr> nodes);
-  void OnRootsAdded(Array<NodeDataPtr> nodes);
-  void OnServerChangeIdAdvanced(Id change_id);
+  void OnEmbed(ConnectionSpecificId connection_id,
+               const String& creator_url,
+               ViewDataPtr root);
   void OnNodeBoundsChanged(Id node_id, RectPtr old_bounds, RectPtr new_bounds);
   void OnNodeHierarchyChanged(Id node_id,
                               Id new_parent_id,
                               Id old_parent_id,
-                              Id server_change_id,
-                              Array<NodeDataPtr> nodes);
+                              Array<ViewDataPtr> nodes);
   void OnNodeReordered(Id node_id,
                        Id relative_node_id,
-                       OrderDirection direction,
-                       Id server_change_id);
-  void OnNodeDeleted(Id node_id, Id server_change_id);
-  void OnViewDeleted(Id view_id);
-  void OnNodeViewReplaced(Id node_id, Id new_view_id, Id old_view_id);
-  void OnViewInputEvent(Id view_id, EventPtr event);
+                       OrderDirection direction);
+  void OnNodeDeleted(Id node_id);
+  void OnNodeInputEvent(Id node_id, EventPtr event);
+  void DelegateEmbed(const String& url);
 
  private:
   void AddChange(const Change& change);
@@ -128,7 +117,6 @@ class TestChangeTracker {
 };
 
 }  // namespace service
-}  // namespace view_manager
 }  // namespace mojo
 
 #endif  // MOJO_SERVICES_VIEW_MANAGER_TEST_CHANGE_TRACKER_H_