| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "mojo/services/view_manager/view_manager_service_impl.h" | 5 #include "mojo/services/view_manager/view_manager_service_impl.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/stl_util.h" | 8 #include "base/stl_util.h" |
| 9 #include "mojo/services/public/cpp/geometry/geometry_type_converters.h" | 9 #include "mojo/services/public/cpp/geometry/geometry_type_converters.h" |
| 10 #include "mojo/services/public/cpp/input_events/input_events_type_converters.h" | 10 #include "mojo/services/public/cpp/input_events/input_events_type_converters.h" |
| (...skipping 543 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 554 callback.Run(false); | 554 callback.Run(false); |
| 555 return; | 555 return; |
| 556 } | 556 } |
| 557 node_map_[node_id.node_id] = new Node(this, node_id); | 557 node_map_[node_id.node_id] = new Node(this, node_id); |
| 558 known_nodes_.insert(transport_node_id); | 558 known_nodes_.insert(transport_node_id); |
| 559 callback.Run(true); | 559 callback.Run(true); |
| 560 } | 560 } |
| 561 | 561 |
| 562 void ViewManagerServiceImpl::DeleteNode( | 562 void ViewManagerServiceImpl::DeleteNode( |
| 563 Id transport_node_id, | 563 Id transport_node_id, |
| 564 Id server_change_id, |
| 564 const Callback<void(bool)>& callback) { | 565 const Callback<void(bool)>& callback) { |
| 565 const NodeId node_id(NodeIdFromTransportId(transport_node_id)); | 566 const NodeId node_id(NodeIdFromTransportId(transport_node_id)); |
| 566 bool did_delete = CanDeleteNode(node_id); | 567 bool success = false; |
| 567 if (did_delete) { | 568 if (server_change_id == root_node_manager_->next_server_change_id() && |
| 569 CanDeleteNode(node_id)) { |
| 568 ViewManagerServiceImpl* connection = root_node_manager_->GetConnection( | 570 ViewManagerServiceImpl* connection = root_node_manager_->GetConnection( |
| 569 node_id.connection_id); | 571 node_id.connection_id); |
| 570 did_delete = connection && connection->DeleteNodeImpl(this, node_id); | 572 success = connection && connection->DeleteNodeImpl(this, node_id); |
| 571 } | 573 } |
| 572 callback.Run(did_delete); | 574 callback.Run(success); |
| 573 } | 575 } |
| 574 | 576 |
| 575 void ViewManagerServiceImpl::AddNode( | 577 void ViewManagerServiceImpl::AddNode( |
| 576 Id parent_id, | 578 Id parent_id, |
| 577 Id child_id, | 579 Id child_id, |
| 578 Id server_change_id, | 580 Id server_change_id, |
| 579 const Callback<void(bool)>& callback) { | 581 const Callback<void(bool)>& callback) { |
| 580 bool success = false; | 582 bool success = false; |
| 581 if (server_change_id == root_node_manager_->next_server_change_id()) { | 583 if (server_change_id == root_node_manager_->next_server_change_id()) { |
| 582 Node* parent = GetNode(NodeIdFromTransportId(parent_id)); | 584 Node* parent = GetNode(NodeIdFromTransportId(parent_id)); |
| (...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 787 client()->OnViewManagerConnectionEstablished( | 789 client()->OnViewManagerConnectionEstablished( |
| 788 id_, | 790 id_, |
| 789 creator_url_, | 791 creator_url_, |
| 790 root_node_manager_->next_server_change_id(), | 792 root_node_manager_->next_server_change_id(), |
| 791 NodesToNodeDatas(to_send)); | 793 NodesToNodeDatas(to_send)); |
| 792 } | 794 } |
| 793 | 795 |
| 794 } // namespace service | 796 } // namespace service |
| 795 } // namespace view_manager | 797 } // namespace view_manager |
| 796 } // namespace mojo | 798 } // namespace mojo |
| OLD | NEW |