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 "examples/recipes/window_manager/window_manager.h" | 5 #include "examples/recipes/window_manager/window_manager.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "examples/recipes/window_manager/constants.h" | 9 #include "examples/recipes/window_manager/constants.h" |
| 10 #include "mojo/services/view_manager/public/cpp/view_manager.h" |
10 #include "mojo/services/view_manager/public/cpp/view_property.h" | 11 #include "mojo/services/view_manager/public/cpp/view_property.h" |
11 | 12 |
12 using mojo::View; | 13 using mojo::View; |
13 | 14 |
14 namespace recipes { | 15 namespace recipes { |
15 namespace window_manager { | 16 namespace window_manager { |
16 namespace { | 17 namespace { |
17 | 18 |
18 enum WindowType { | 19 enum WindowType { |
19 WINDOW_TYPE_IMMERSIVE, | 20 WINDOW_TYPE_IMMERSIVE, |
(...skipping 14 matching lines...) Expand all Loading... |
34 active_immersive_view_(nullptr), | 35 active_immersive_view_(nullptr), |
35 active_transient_view_(nullptr) { | 36 active_transient_view_(nullptr) { |
36 } | 37 } |
37 | 38 |
38 WindowManager::~WindowManager() { | 39 WindowManager::~WindowManager() { |
39 for (View* view : views_) | 40 for (View* view : views_) |
40 view->RemoveObserver(this); | 41 view->RemoveObserver(this); |
41 } | 42 } |
42 | 43 |
43 View* WindowManager::Create() { | 44 View* WindowManager::Create() { |
44 View* view = View::Create(root_->view_manager()); | 45 View* view = root_->view_manager()->CreateView(); |
45 UpdateBounds(view); | 46 UpdateBounds(view); |
46 view->AddObserver(this); | 47 view->AddObserver(this); |
47 views_.insert(view); | 48 views_.insert(view); |
48 return view; | 49 return view; |
49 } | 50 } |
50 | 51 |
51 void WindowManager::UpdateBounds(View* view) { | 52 void WindowManager::UpdateBounds(View* view) { |
52 mojo::Rect bounds(root_->bounds()); | 53 mojo::Rect bounds(root_->bounds()); |
53 bounds.x = bounds.y = 0; | 54 bounds.x = bounds.y = 0; |
54 if (view->GetLocalProperty(kWindowTypeLocalKey) == WINDOW_TYPE_TRANSIENT) { | 55 if (view->GetLocalProperty(kWindowTypeLocalKey) == WINDOW_TYPE_TRANSIENT) { |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
188 } | 189 } |
189 } | 190 } |
190 | 191 |
191 void WindowManager::OnViewEmbeddedAppDisconnected(View* view) { | 192 void WindowManager::OnViewEmbeddedAppDisconnected(View* view) { |
192 ProcessViewShouldNoLongerBeActive(view); | 193 ProcessViewShouldNoLongerBeActive(view); |
193 view->Destroy(); | 194 view->Destroy(); |
194 } | 195 } |
195 | 196 |
196 } // window_manager | 197 } // window_manager |
197 } // recipes | 198 } // recipes |
OLD | NEW |