Chromium Code Reviews| Index: mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc |
| diff --git a/mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc b/mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc |
| index 78daeb3244d4a6b6b953b5fd2ee44893195fbf04..4e2642363017daa02c4dcdd41d1aa4389c1e94fd 100644 |
| --- a/mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc |
| +++ b/mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc |
| @@ -36,7 +36,8 @@ View* AddViewToViewManager(ViewManagerClientImpl* client, |
| private_view.set_id(view_data->view_id); |
| private_view.set_visible(view_data->visible); |
| private_view.set_drawn(view_data->drawn); |
| - private_view.set_viewport_metrics(view_data->viewport_metrics.Pass()); |
| + private_view.LocalSetViewportMetrics(ViewportMetrics(), |
| + *view_data->viewport_metrics); |
| private_view.set_properties( |
| view_data->properties.To<std::map<std::string, std::vector<uint8_t>>>()); |
| client->AddView(view); |
| @@ -296,6 +297,14 @@ void ViewManagerClientImpl::OnViewBoundsChanged(Id view_id, |
| ViewPrivate(view).LocalSetBounds(*old_bounds, *new_bounds); |
| } |
| +void ViewManagerClientImpl::OnViewViewportMetricsChanged( |
| + Id view_id, |
| + ViewportMetricsPtr old_metrics, |
| + ViewportMetricsPtr new_metrics) { |
| + View* view = GetViewById(view_id); |
|
sky
2015/01/27 23:40:23
It's possible view isn't around anymore. Only invo
|
| + ViewPrivate(view).LocalSetViewportMetrics(*old_metrics, *new_metrics); |
| +} |
| + |
| void ViewManagerClientImpl::OnViewHierarchyChanged( |
| Id view_id, |
| Id new_parent_id, |