Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(12)

Side by Side Diff: components/mus/ws/display_unittest.cc

Issue 2089023002: Promotes remaining global window manager state into WindowManagerState (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: override Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « components/mus/ws/display_manager_delegate.h ('k') | components/mus/ws/event_dispatcher.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 <stdint.h> 5 #include <stdint.h>
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/message_loop/message_loop.h" 10 #include "base/message_loop/message_loop.h"
11 #include "components/mus/common/types.h" 11 #include "components/mus/common/types.h"
12 #include "components/mus/common/util.h" 12 #include "components/mus/common/util.h"
13 #include "components/mus/public/interfaces/window_tree.mojom.h" 13 #include "components/mus/public/interfaces/window_tree.mojom.h"
14 #include "components/mus/surfaces/surfaces_state.h" 14 #include "components/mus/surfaces/surfaces_state.h"
15 #include "components/mus/ws/display_manager.h" 15 #include "components/mus/ws/display_manager.h"
16 #include "components/mus/ws/ids.h" 16 #include "components/mus/ws/ids.h"
17 #include "components/mus/ws/platform_display.h" 17 #include "components/mus/ws/platform_display.h"
18 #include "components/mus/ws/platform_display_factory.h" 18 #include "components/mus/ws/platform_display_factory.h"
19 #include "components/mus/ws/server_window.h" 19 #include "components/mus/ws/server_window.h"
20 #include "components/mus/ws/test_utils.h" 20 #include "components/mus/ws/test_utils.h"
21 #include "components/mus/ws/window_manager_display_root.h"
21 #include "components/mus/ws/window_manager_state.h" 22 #include "components/mus/ws/window_manager_state.h"
22 #include "components/mus/ws/window_server.h" 23 #include "components/mus/ws/window_server.h"
23 #include "components/mus/ws/window_server_delegate.h" 24 #include "components/mus/ws/window_server_delegate.h"
24 #include "components/mus/ws/window_tree.h" 25 #include "components/mus/ws/window_tree.h"
25 #include "components/mus/ws/window_tree_binding.h" 26 #include "components/mus/ws/window_tree_binding.h"
26 #include "testing/gtest/include/gtest/gtest.h" 27 #include "testing/gtest/include/gtest/gtest.h"
27 #include "ui/events/event.h" 28 #include "ui/events/event.h"
28 #include "ui/gfx/geometry/rect.h" 29 #include "ui/gfx/geometry/rect.h"
29 30
30 namespace mus { 31 namespace mus {
31 namespace ws { 32 namespace ws {
32 namespace test { 33 namespace test {
33 namespace { 34 namespace {
34 35
35 ClientWindowId ClientWindowIdForFirstRoot(WindowTree* tree) { 36 ClientWindowId ClientWindowIdForFirstRoot(WindowTree* tree) {
36 if (tree->roots().empty()) 37 if (tree->roots().empty())
37 return ClientWindowId(); 38 return ClientWindowId();
38 return ClientWindowIdForWindow(tree, *tree->roots().begin()); 39 return ClientWindowIdForWindow(tree, *tree->roots().begin());
39 } 40 }
40 41
42 WindowManagerState* GetWindowManagerStateForUser(Display* display,
43 const UserId& user_id) {
44 WindowManagerDisplayRoot* display_root =
45 display->GetWindowManagerDisplayRootForUser(user_id);
46 return display_root ? display_root->window_manager_state() : nullptr;
47 }
48
41 } // namespace 49 } // namespace
42 50
43 // ----------------------------------------------------------------------------- 51 // -----------------------------------------------------------------------------
44 52
45 class DisplayTest : public testing::Test { 53 class DisplayTest : public testing::Test {
46 public: 54 public:
47 DisplayTest() : cursor_id_(0), platform_display_factory_(&cursor_id_) {} 55 DisplayTest() : cursor_id_(0), platform_display_factory_(&cursor_id_) {}
48 ~DisplayTest() override {} 56 ~DisplayTest() override {}
49 57
50 protected: 58 protected:
(...skipping 27 matching lines...) Expand all
78 window_server_->window_manager_window_tree_factory_set()) 86 window_server_->window_manager_window_tree_factory_set())
79 .Add(kTestId1); 87 .Add(kTestId1);
80 // The first register should trigger creation of the default 88 // The first register should trigger creation of the default
81 // Displays. There should be kNumHostsToCreate Displays. 89 // Displays. There should be kNumHostsToCreate Displays.
82 EXPECT_EQ(static_cast<size_t>(kNumHostsToCreate), 90 EXPECT_EQ(static_cast<size_t>(kNumHostsToCreate),
83 display_manager->displays().size()); 91 display_manager->displays().size());
84 92
85 // Each host should have a WindowManagerState for kTestId1. 93 // Each host should have a WindowManagerState for kTestId1.
86 for (Display* display : display_manager->displays()) { 94 for (Display* display : display_manager->displays()) {
87 EXPECT_EQ(1u, display->num_window_manger_states()); 95 EXPECT_EQ(1u, display->num_window_manger_states());
88 EXPECT_TRUE(display->GetWindowManagerStateForUser(kTestId1)); 96 EXPECT_TRUE(GetWindowManagerStateForUser(display, kTestId1));
89 EXPECT_FALSE(display->GetWindowManagerStateForUser(kTestId2)); 97 EXPECT_FALSE(GetWindowManagerStateForUser(display, kTestId2));
90 } 98 }
91 99
92 // Add another registry, should trigger creation of another wm. 100 // Add another registry, should trigger creation of another wm.
93 WindowManagerWindowTreeFactorySetTestApi( 101 WindowManagerWindowTreeFactorySetTestApi(
94 window_server_->window_manager_window_tree_factory_set()) 102 window_server_->window_manager_window_tree_factory_set())
95 .Add(kTestId2); 103 .Add(kTestId2);
96 for (Display* display : display_manager->displays()) { 104 for (Display* display : display_manager->displays()) {
97 ASSERT_EQ(2u, display->num_window_manger_states()); 105 ASSERT_EQ(2u, display->num_window_manger_states());
98 WindowManagerState* state1 = 106 WindowManagerDisplayRoot* root1 =
99 display->GetWindowManagerStateForUser(kTestId1); 107 display->GetWindowManagerDisplayRootForUser(kTestId1);
100 ASSERT_TRUE(state1); 108 ASSERT_TRUE(root1);
101 WindowManagerState* state2 = 109 WindowManagerDisplayRoot* root2 =
102 display->GetWindowManagerStateForUser(kTestId2); 110 display->GetWindowManagerDisplayRootForUser(kTestId2);
103 ASSERT_TRUE(state2); 111 ASSERT_TRUE(root2);
104 // Verify the two states have different roots. 112 // Verify the two states have different roots.
105 EXPECT_NE(state1, state2); 113 EXPECT_NE(root1, root2);
106 EXPECT_NE(state1->root(), state2->root()); 114 EXPECT_NE(root1->root(), root2->root());
107 } 115 }
108 } 116 }
109 117
110 TEST_F(DisplayTest, Destruction) { 118 TEST_F(DisplayTest, Destruction) {
111 window_server_delegate_.set_num_displays_to_create(1); 119 window_server_delegate_.set_num_displays_to_create(1);
112 120
113 const UserId kTestId1 = "2"; 121 const UserId kTestId1 = "2";
114 const UserId kTestId2 = "21"; 122 const UserId kTestId2 = "21";
115 WindowManagerWindowTreeFactorySetTestApi( 123 WindowManagerWindowTreeFactorySetTestApi(
116 window_server_->window_manager_window_tree_factory_set()) 124 window_server_->window_manager_window_tree_factory_set())
117 .Add(kTestId1); 125 .Add(kTestId1);
118 126
119 // Add another registry, should trigger creation of another wm. 127 // Add another registry, should trigger creation of another wm.
120 DisplayManager* display_manager = window_server_->display_manager(); 128 DisplayManager* display_manager = window_server_->display_manager();
121 WindowManagerWindowTreeFactorySetTestApi( 129 WindowManagerWindowTreeFactorySetTestApi(
122 window_server_->window_manager_window_tree_factory_set()) 130 window_server_->window_manager_window_tree_factory_set())
123 .Add(kTestId2); 131 .Add(kTestId2);
124 ASSERT_EQ(1u, display_manager->displays().size()); 132 ASSERT_EQ(1u, display_manager->displays().size());
125 Display* display = *display_manager->displays().begin(); 133 Display* display = *display_manager->displays().begin();
126 ASSERT_EQ(2u, display->num_window_manger_states()); 134 ASSERT_EQ(2u, display->num_window_manger_states());
127 // There should be two trees, one for each windowmanager. 135 // There should be two trees, one for each windowmanager.
128 EXPECT_EQ(2u, window_server_->num_trees()); 136 EXPECT_EQ(2u, window_server_->num_trees());
129 137
130 { 138 {
131 WindowManagerState* state = display->GetWindowManagerStateForUser(kTestId1); 139 WindowManagerState* state = GetWindowManagerStateForUser(display, kTestId1);
132 // Destroy the tree associated with |state|. Should result in deleting 140 // Destroy the tree associated with |state|. Should result in deleting
133 // |state|. 141 // |state|.
134 window_server_->DestroyTree(state->tree()); 142 window_server_->DestroyTree(state->window_tree());
135 ASSERT_EQ(1u, display->num_window_manger_states()); 143 ASSERT_EQ(1u, display->num_window_manger_states());
136 EXPECT_FALSE(display->GetWindowManagerStateForUser(kTestId1)); 144 EXPECT_FALSE(GetWindowManagerStateForUser(display, kTestId1));
137 EXPECT_EQ(1u, display_manager->displays().size()); 145 EXPECT_EQ(1u, display_manager->displays().size());
138 EXPECT_EQ(1u, window_server_->num_trees()); 146 EXPECT_EQ(1u, window_server_->num_trees());
139 } 147 }
140 148
141 EXPECT_FALSE(window_server_delegate_.got_on_no_more_displays()); 149 EXPECT_FALSE(window_server_delegate_.got_on_no_more_displays());
142 // Destroy the Display, which should shutdown the trees.
143 window_server_->display_manager()->DestroyDisplay(display); 150 window_server_->display_manager()->DestroyDisplay(display);
144 EXPECT_EQ(0u, window_server_->num_trees()); 151 // There is still one tree left.
152 EXPECT_EQ(1u, window_server_->num_trees());
145 EXPECT_TRUE(window_server_delegate_.got_on_no_more_displays()); 153 EXPECT_TRUE(window_server_delegate_.got_on_no_more_displays());
146 } 154 }
147 155
148 TEST_F(DisplayTest, EventStateResetOnUserSwitch) { 156 TEST_F(DisplayTest, EventStateResetOnUserSwitch) {
149 window_server_delegate_.set_num_displays_to_create(1); 157 window_server_delegate_.set_num_displays_to_create(1);
150 158
151 const UserId kTestId1 = "20"; 159 const UserId kTestId1 = "20";
152 const UserId kTestId2 = "201"; 160 const UserId kTestId2 = "201";
153 WindowManagerWindowTreeFactorySetTestApi( 161 WindowManagerWindowTreeFactorySetTestApi(
154 window_server_->window_manager_window_tree_factory_set()) 162 window_server_->window_manager_window_tree_factory_set())
155 .Add(kTestId1); 163 .Add(kTestId1);
156 WindowManagerWindowTreeFactorySetTestApi( 164 WindowManagerWindowTreeFactorySetTestApi(
157 window_server_->window_manager_window_tree_factory_set()) 165 window_server_->window_manager_window_tree_factory_set())
158 .Add(kTestId2); 166 .Add(kTestId2);
159 167
160 window_server_->user_id_tracker()->SetActiveUserId(kTestId1); 168 window_server_->user_id_tracker()->SetActiveUserId(kTestId1);
161 169
162 DisplayManager* display_manager = window_server_->display_manager(); 170 DisplayManager* display_manager = window_server_->display_manager();
163 ASSERT_EQ(1u, display_manager->displays().size()); 171 ASSERT_EQ(1u, display_manager->displays().size());
164 Display* display = *display_manager->displays().begin(); 172 Display* display = *display_manager->displays().begin();
165 WindowManagerState* active_wms = display->GetActiveWindowManagerState(); 173 WindowManagerState* active_wms =
174 display->GetActiveWindowManagerDisplayRoot()->window_manager_state();
166 ASSERT_TRUE(active_wms); 175 ASSERT_TRUE(active_wms);
167 EXPECT_EQ(kTestId1, active_wms->user_id()); 176 EXPECT_EQ(kTestId1, active_wms->user_id());
168 177
169 static_cast<PlatformDisplayDelegate*>(display)->OnEvent(ui::PointerEvent( 178 static_cast<PlatformDisplayDelegate*>(display)->OnEvent(ui::PointerEvent(
170 ui::MouseEvent(ui::ET_MOUSE_PRESSED, gfx::Point(20, 25), 179 ui::MouseEvent(ui::ET_MOUSE_PRESSED, gfx::Point(20, 25),
171 gfx::Point(20, 25), base::TimeTicks(), 180 gfx::Point(20, 25), base::TimeTicks(),
172 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON))); 181 ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON)));
173 182
174 EXPECT_TRUE(EventDispatcherTestApi(active_wms->event_dispatcher()) 183 EXPECT_TRUE(EventDispatcherTestApi(active_wms->event_dispatcher())
175 .AreAnyPointersDown()); 184 .AreAnyPointersDown());
176 EXPECT_EQ(gfx::Point(20, 25), 185 EXPECT_EQ(gfx::Point(20, 25),
177 active_wms->event_dispatcher()->mouse_pointer_last_location()); 186 active_wms->event_dispatcher()->mouse_pointer_last_location());
178 187
179 // Switch the user. Should trigger resetting state in old event dispatcher 188 // Switch the user. Should trigger resetting state in old event dispatcher
180 // and update state in new event dispatcher. 189 // and update state in new event dispatcher.
181 window_server_->user_id_tracker()->SetActiveUserId(kTestId2); 190 window_server_->user_id_tracker()->SetActiveUserId(kTestId2);
182 EXPECT_NE(active_wms, display->GetActiveWindowManagerState()); 191 EXPECT_NE(
192 active_wms,
193 display->GetActiveWindowManagerDisplayRoot()->window_manager_state());
183 EXPECT_FALSE(EventDispatcherTestApi(active_wms->event_dispatcher()) 194 EXPECT_FALSE(EventDispatcherTestApi(active_wms->event_dispatcher())
184 .AreAnyPointersDown()); 195 .AreAnyPointersDown());
185 active_wms = display->GetActiveWindowManagerState(); 196 active_wms =
197 display->GetActiveWindowManagerDisplayRoot()->window_manager_state();
186 EXPECT_EQ(kTestId2, active_wms->user_id()); 198 EXPECT_EQ(kTestId2, active_wms->user_id());
187 EXPECT_EQ(gfx::Point(20, 25), 199 EXPECT_EQ(gfx::Point(20, 25),
188 active_wms->event_dispatcher()->mouse_pointer_last_location()); 200 active_wms->event_dispatcher()->mouse_pointer_last_location());
189 EXPECT_FALSE(EventDispatcherTestApi(active_wms->event_dispatcher()) 201 EXPECT_FALSE(EventDispatcherTestApi(active_wms->event_dispatcher())
190 .AreAnyPointersDown()); 202 .AreAnyPointersDown());
191 } 203 }
192 204
193 // Verifies capture fails when wm is inactive and succeeds when wm is active. 205 // Verifies capture fails when wm is inactive and succeeds when wm is active.
194 TEST_F(DisplayTest, SetCaptureFromWindowManager) { 206 TEST_F(DisplayTest, SetCaptureFromWindowManager) {
195 window_server_delegate_.set_num_displays_to_create(1); 207 window_server_delegate_.set_num_displays_to_create(1);
196 const UserId kTestId1 = "20"; 208 const UserId kTestId1 = "20";
197 const UserId kTestId2 = "201"; 209 const UserId kTestId2 = "201";
198 WindowManagerWindowTreeFactorySetTestApi( 210 WindowManagerWindowTreeFactorySetTestApi(
199 window_server_->window_manager_window_tree_factory_set()) 211 window_server_->window_manager_window_tree_factory_set())
200 .Add(kTestId1); 212 .Add(kTestId1);
201 WindowManagerWindowTreeFactorySetTestApi( 213 WindowManagerWindowTreeFactorySetTestApi(
202 window_server_->window_manager_window_tree_factory_set()) 214 window_server_->window_manager_window_tree_factory_set())
203 .Add(kTestId2); 215 .Add(kTestId2);
204 window_server_->user_id_tracker()->SetActiveUserId(kTestId1); 216 window_server_->user_id_tracker()->SetActiveUserId(kTestId1);
205 DisplayManager* display_manager = window_server_->display_manager(); 217 DisplayManager* display_manager = window_server_->display_manager();
206 ASSERT_EQ(1u, display_manager->displays().size()); 218 ASSERT_EQ(1u, display_manager->displays().size());
207 Display* display = *display_manager->displays().begin(); 219 Display* display = *display_manager->displays().begin();
208 WindowManagerState* wms_for_id2 = 220 WindowManagerState* wms_for_id2 =
209 display->GetWindowManagerStateForUser(kTestId2); 221 GetWindowManagerStateForUser(display, kTestId2);
210 ASSERT_TRUE(wms_for_id2); 222 ASSERT_TRUE(wms_for_id2);
211 EXPECT_FALSE(wms_for_id2->IsActive()); 223 EXPECT_FALSE(wms_for_id2->IsActive());
212 224
213 // Create a child of the root that we can set capture on. 225 // Create a child of the root that we can set capture on.
214 WindowTree* tree = wms_for_id2->tree(); 226 WindowTree* tree = wms_for_id2->window_tree();
215 ClientWindowId child_window_id; 227 ClientWindowId child_window_id;
216 ASSERT_TRUE(NewWindowInTree(tree, &child_window_id)); 228 ASSERT_TRUE(NewWindowInTree(tree, &child_window_id));
217 229
218 WindowTreeTestApi(tree).EnableCapture(); 230 WindowTreeTestApi(tree).EnableCapture();
219 231
220 // SetCapture() should fail for user id2 as it is inactive. 232 // SetCapture() should fail for user id2 as it is inactive.
221 EXPECT_FALSE(tree->SetCapture(child_window_id)); 233 EXPECT_FALSE(tree->SetCapture(child_window_id));
222 234
223 // Make the second user active and verify capture works. 235 // Make the second user active and verify capture works.
224 window_server_->user_id_tracker()->SetActiveUserId(kTestId2); 236 window_server_->user_id_tracker()->SetActiveUserId(kTestId2);
(...skipping 12 matching lines...) Expand all
237 window_server_delegate_.last_client(); 249 window_server_delegate_.last_client();
238 ASSERT_TRUE(window_tree_client1); 250 ASSERT_TRUE(window_tree_client1);
239 WindowManagerWindowTreeFactorySetTestApi( 251 WindowManagerWindowTreeFactorySetTestApi(
240 window_server_->window_manager_window_tree_factory_set()) 252 window_server_->window_manager_window_tree_factory_set())
241 .Add(kTestId2); 253 .Add(kTestId2);
242 window_server_->user_id_tracker()->SetActiveUserId(kTestId1); 254 window_server_->user_id_tracker()->SetActiveUserId(kTestId1);
243 DisplayManager* display_manager = window_server_->display_manager(); 255 DisplayManager* display_manager = window_server_->display_manager();
244 ASSERT_EQ(1u, display_manager->displays().size()); 256 ASSERT_EQ(1u, display_manager->displays().size());
245 Display* display = *display_manager->displays().begin(); 257 Display* display = *display_manager->displays().begin();
246 WindowManagerState* wms_for_id2 = 258 WindowManagerState* wms_for_id2 =
247 display->GetWindowManagerStateForUser(kTestId2); 259 GetWindowManagerStateForUser(display, kTestId2);
248 wms_for_id2->tree()->AddActivationParent( 260 wms_for_id2->window_tree()->AddActivationParent(
249 ClientWindowIdForFirstRoot(wms_for_id2->tree())); 261 ClientWindowIdForFirstRoot(wms_for_id2->window_tree()));
250 ASSERT_TRUE(wms_for_id2); 262 ASSERT_TRUE(wms_for_id2);
251 EXPECT_FALSE(wms_for_id2->IsActive()); 263 EXPECT_FALSE(wms_for_id2->IsActive());
252 ClientWindowId child2_id; 264 ClientWindowId child2_id;
253 NewWindowInTree(wms_for_id2->tree(), &child2_id); 265 NewWindowInTree(wms_for_id2->window_tree(), &child2_id);
254 266
255 // Focus should fail for windows in inactive window managers. 267 // Focus should fail for windows in inactive window managers.
256 EXPECT_FALSE(wms_for_id2->tree()->SetFocus(child2_id)); 268 EXPECT_FALSE(wms_for_id2->window_tree()->SetFocus(child2_id));
257 269
258 // Focus should succeed for the active window manager. 270 // Focus should succeed for the active window manager.
259 WindowManagerState* wms_for_id1 = 271 WindowManagerState* wms_for_id1 =
260 display->GetWindowManagerStateForUser(kTestId1); 272 GetWindowManagerStateForUser(display, kTestId1);
261 ASSERT_TRUE(wms_for_id1); 273 ASSERT_TRUE(wms_for_id1);
262 wms_for_id1->tree()->AddActivationParent( 274 wms_for_id1->window_tree()->AddActivationParent(
263 ClientWindowIdForFirstRoot(wms_for_id1->tree())); 275 ClientWindowIdForFirstRoot(wms_for_id1->window_tree()));
264 ClientWindowId child1_id; 276 ClientWindowId child1_id;
265 NewWindowInTree(wms_for_id1->tree(), &child1_id); 277 NewWindowInTree(wms_for_id1->window_tree(), &child1_id);
266 EXPECT_TRUE(wms_for_id1->IsActive()); 278 EXPECT_TRUE(wms_for_id1->IsActive());
267 EXPECT_TRUE(wms_for_id1->tree()->SetFocus(child1_id)); 279 EXPECT_TRUE(wms_for_id1->window_tree()->SetFocus(child1_id));
268 } 280 }
269 281
270 // Verifies a single tree is used for multiple displays. 282 // Verifies a single tree is used for multiple displays.
271 TEST_F(DisplayTest, MultipleDisplays) { 283 TEST_F(DisplayTest, MultipleDisplays) {
272 window_server_delegate_.set_num_displays_to_create(2); 284 window_server_delegate_.set_num_displays_to_create(2);
273 const UserId kTestId1 = "20"; 285 const UserId kTestId1 = "20";
274 WindowManagerWindowTreeFactorySetTestApi( 286 WindowManagerWindowTreeFactorySetTestApi(
275 window_server_->window_manager_window_tree_factory_set()) 287 window_server_->window_manager_window_tree_factory_set())
276 .Add(kTestId1); 288 .Add(kTestId1);
277 window_server_->user_id_tracker()->SetActiveUserId(kTestId1); 289 window_server_->user_id_tracker()->SetActiveUserId(kTestId1);
278 ASSERT_EQ(1u, window_server_delegate_.bindings()->size()); 290 ASSERT_EQ(1u, window_server_delegate_.bindings()->size());
279 TestWindowTreeBinding* window_tree_binding = 291 TestWindowTreeBinding* window_tree_binding =
280 (*window_server_delegate_.bindings())[0]; 292 (*window_server_delegate_.bindings())[0];
281 WindowTree* tree = window_tree_binding->tree(); 293 WindowTree* tree = window_tree_binding->tree();
282 ASSERT_EQ(2u, tree->roots().size()); 294 ASSERT_EQ(2u, tree->roots().size());
283 std::set<const ServerWindow*> roots = tree->roots(); 295 std::set<const ServerWindow*> roots = tree->roots();
284 auto it = roots.begin(); 296 auto it = roots.begin();
285 ServerWindow* root1 = tree->GetWindow((*it)->id()); 297 ServerWindow* root1 = tree->GetWindow((*it)->id());
286 ++it; 298 ++it;
287 ServerWindow* root2 = tree->GetWindow((*it)->id()); 299 ServerWindow* root2 = tree->GetWindow((*it)->id());
288 ASSERT_NE(root1, root2); 300 ASSERT_NE(root1, root2);
289 Display* display1 = tree->GetDisplay(root1); 301 Display* display1 = tree->GetDisplay(root1);
290 WindowManagerState* display1_wms = 302 WindowManagerState* display1_wms =
291 display1->GetWindowManagerStateForUser(kTestId1); 303 display1->GetWindowManagerDisplayRootForUser(kTestId1)
304 ->window_manager_state();
292 Display* display2 = tree->GetDisplay(root2); 305 Display* display2 = tree->GetDisplay(root2);
293 WindowManagerState* display2_wms = 306 WindowManagerState* display2_wms =
294 display2->GetWindowManagerStateForUser(kTestId1); 307 display2->GetWindowManagerDisplayRootForUser(kTestId1)
295 EXPECT_EQ(display1_wms->tree(), display2_wms->tree()); 308 ->window_manager_state();
309 EXPECT_EQ(display1_wms->window_tree(), display2_wms->window_tree());
296 } 310 }
297 311
298 } // namespace test 312 } // namespace test
299 } // namespace ws 313 } // namespace ws
300 } // namespace mus 314 } // namespace mus
OLDNEW
« no previous file with comments | « components/mus/ws/display_manager_delegate.h ('k') | components/mus/ws/event_dispatcher.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698