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

Side by Side Diff: ui/views/widget/desktop_aura/desktop_screen_x11_unittest.cc

Issue 1915363002: Rename gfx::Display/Screen to display::Display/Screen in views/wm (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: more cleanups Created 4 years, 7 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
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "ui/views/widget/desktop_aura/desktop_screen_x11.h" 5 #include "ui/views/widget/desktop_aura/desktop_screen_x11.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <memory> 9 #include <memory>
10 10
11 #include "base/macros.h" 11 #include "base/macros.h"
12 #include "testing/gtest/include/gtest/gtest.h" 12 #include "testing/gtest/include/gtest/gtest.h"
13 #include "ui/aura/client/aura_constants.h" 13 #include "ui/aura/client/aura_constants.h"
14 #include "ui/aura/window.h" 14 #include "ui/aura/window.h"
15 #include "ui/aura/window_event_dispatcher.h" 15 #include "ui/aura/window_event_dispatcher.h"
16 #include "ui/base/hit_test.h" 16 #include "ui/base/hit_test.h"
17 #include "ui/base/x/x11_util.h" 17 #include "ui/base/x/x11_util.h"
18 #include "ui/display/display_observer.h"
18 #include "ui/events/test/event_generator.h" 19 #include "ui/events/test/event_generator.h"
19 #include "ui/gfx/display_observer.h"
20 #include "ui/gfx/font_render_params.h" 20 #include "ui/gfx/font_render_params.h"
21 #include "ui/gfx/x/x11_types.h" 21 #include "ui/gfx/x/x11_types.h"
22 #include "ui/views/test/views_test_base.h" 22 #include "ui/views/test/views_test_base.h"
23 #include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h" 23 #include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h"
24 #include "ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h" 24 #include "ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h"
25 25
26 namespace { 26 namespace {
27 27
28 // Class which allows for the designation of non-client component targets of 28 // Class which allows for the designation of non-client component targets of
29 // hit tests. 29 // hit tests.
(...skipping 20 matching lines...) Expand all
50 }; 50 };
51 51
52 } // namespace 52 } // namespace
53 53
54 namespace views { 54 namespace views {
55 55
56 const int64_t kFirstDisplay = 5321829; 56 const int64_t kFirstDisplay = 5321829;
57 const int64_t kSecondDisplay = 928310; 57 const int64_t kSecondDisplay = 928310;
58 58
59 class DesktopScreenX11Test : public views::ViewsTestBase, 59 class DesktopScreenX11Test : public views::ViewsTestBase,
60 public gfx::DisplayObserver { 60 public display::DisplayObserver {
61 public: 61 public:
62 DesktopScreenX11Test() {} 62 DesktopScreenX11Test() {}
63 ~DesktopScreenX11Test() override {} 63 ~DesktopScreenX11Test() override {}
64 64
65 // Overridden from testing::Test: 65 // Overridden from testing::Test:
66 void SetUp() override { 66 void SetUp() override {
67 ViewsTestBase::SetUp(); 67 ViewsTestBase::SetUp();
68 // Initialize the world to the single monitor case. 68 // Initialize the world to the single monitor case.
69 std::vector<gfx::Display> displays; 69 std::vector<display::Display> displays;
70 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480))); 70 displays.push_back(
71 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
71 screen_.reset(new DesktopScreenX11(displays)); 72 screen_.reset(new DesktopScreenX11(displays));
72 screen_->AddObserver(this); 73 screen_->AddObserver(this);
73 } 74 }
74 75
75 void TearDown() override { 76 void TearDown() override {
76 screen_.reset(); 77 screen_.reset();
77 ViewsTestBase::TearDown(); 78 ViewsTestBase::TearDown();
78 } 79 }
79 80
80 protected: 81 protected:
81 std::vector<gfx::Display> changed_display_; 82 std::vector<display::Display> changed_display_;
82 std::vector<gfx::Display> added_display_; 83 std::vector<display::Display> added_display_;
83 std::vector<gfx::Display> removed_display_; 84 std::vector<display::Display> removed_display_;
84 85
85 DesktopScreenX11* screen() { return screen_.get(); } 86 DesktopScreenX11* screen() { return screen_.get(); }
86 87
87 void NotifyDisplaysChanged(const std::vector<gfx::Display>& displays) { 88 void NotifyDisplaysChanged(const std::vector<display::Display>& displays) {
88 std::vector<gfx::Display> old_displays = screen_->displays_; 89 std::vector<display::Display> old_displays = screen_->displays_;
89 screen_->SetDisplaysInternal(displays); 90 screen_->SetDisplaysInternal(displays);
90 screen_->change_notifier_.NotifyDisplaysChanged(old_displays, 91 screen_->change_notifier_.NotifyDisplaysChanged(old_displays,
91 screen_->displays_); 92 screen_->displays_);
92 } 93 }
93 94
94 void ResetDisplayChanges() { 95 void ResetDisplayChanges() {
95 changed_display_.clear(); 96 changed_display_.clear();
96 added_display_.clear(); 97 added_display_.clear();
97 removed_display_.clear(); 98 removed_display_.clear();
98 } 99 }
(...skipping 10 matching lines...) Expand all
109 toplevel_params.native_widget = 110 toplevel_params.native_widget =
110 new views::DesktopNativeWidgetAura(toplevel); 111 new views::DesktopNativeWidgetAura(toplevel);
111 } 112 }
112 toplevel_params.bounds = bounds; 113 toplevel_params.bounds = bounds;
113 toplevel_params.remove_standard_frame = true; 114 toplevel_params.remove_standard_frame = true;
114 toplevel->Init(toplevel_params); 115 toplevel->Init(toplevel_params);
115 return toplevel; 116 return toplevel;
116 } 117 }
117 118
118 private: 119 private:
119 // Overridden from gfx::DisplayObserver: 120 // Overridden from display::DisplayObserver:
120 void OnDisplayAdded(const gfx::Display& new_display) override { 121 void OnDisplayAdded(const display::Display& new_display) override {
121 added_display_.push_back(new_display); 122 added_display_.push_back(new_display);
122 } 123 }
123 124
124 void OnDisplayRemoved(const gfx::Display& old_display) override { 125 void OnDisplayRemoved(const display::Display& old_display) override {
125 removed_display_.push_back(old_display); 126 removed_display_.push_back(old_display);
126 } 127 }
127 128
128 void OnDisplayMetricsChanged(const gfx::Display& display, 129 void OnDisplayMetricsChanged(const display::Display& display,
129 uint32_t metrics) override { 130 uint32_t metrics) override {
130 changed_display_.push_back(display); 131 changed_display_.push_back(display);
131 } 132 }
132 133
133 std::unique_ptr<DesktopScreenX11> screen_; 134 std::unique_ptr<DesktopScreenX11> screen_;
134 135
135 DISALLOW_COPY_AND_ASSIGN(DesktopScreenX11Test); 136 DISALLOW_COPY_AND_ASSIGN(DesktopScreenX11Test);
136 }; 137 };
137 138
138 TEST_F(DesktopScreenX11Test, BoundsChangeSingleMonitor) { 139 TEST_F(DesktopScreenX11Test, BoundsChangeSingleMonitor) {
139 std::vector<gfx::Display> displays; 140 std::vector<display::Display> displays;
140 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 1024, 768))); 141 displays.push_back(
142 display::Display(kFirstDisplay, gfx::Rect(0, 0, 1024, 768)));
141 NotifyDisplaysChanged(displays); 143 NotifyDisplaysChanged(displays);
142 144
143 EXPECT_EQ(1u, changed_display_.size()); 145 EXPECT_EQ(1u, changed_display_.size());
144 EXPECT_EQ(0u, added_display_.size()); 146 EXPECT_EQ(0u, added_display_.size());
145 EXPECT_EQ(0u, removed_display_.size()); 147 EXPECT_EQ(0u, removed_display_.size());
146 } 148 }
147 149
148 TEST_F(DesktopScreenX11Test, AddMonitorToTheRight) { 150 TEST_F(DesktopScreenX11Test, AddMonitorToTheRight) {
149 std::vector<gfx::Display> displays; 151 std::vector<display::Display> displays;
150 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480))); 152 displays.push_back(
151 displays.push_back(gfx::Display(kSecondDisplay, 153 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
152 gfx::Rect(640, 0, 1024, 768))); 154 displays.push_back(
155 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
153 NotifyDisplaysChanged(displays); 156 NotifyDisplaysChanged(displays);
154 157
155 EXPECT_EQ(0u, changed_display_.size()); 158 EXPECT_EQ(0u, changed_display_.size());
156 EXPECT_EQ(1u, added_display_.size()); 159 EXPECT_EQ(1u, added_display_.size());
157 EXPECT_EQ(0u, removed_display_.size()); 160 EXPECT_EQ(0u, removed_display_.size());
158 } 161 }
159 162
160 TEST_F(DesktopScreenX11Test, AddMonitorToTheLeft) { 163 TEST_F(DesktopScreenX11Test, AddMonitorToTheLeft) {
161 std::vector<gfx::Display> displays; 164 std::vector<display::Display> displays;
162 displays.push_back(gfx::Display(kSecondDisplay, gfx::Rect(0, 0, 1024, 768))); 165 displays.push_back(
163 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(1024, 0, 640, 480))); 166 display::Display(kSecondDisplay, gfx::Rect(0, 0, 1024, 768)));
167 displays.push_back(
168 display::Display(kFirstDisplay, gfx::Rect(1024, 0, 640, 480)));
164 NotifyDisplaysChanged(displays); 169 NotifyDisplaysChanged(displays);
165 170
166 EXPECT_EQ(1u, changed_display_.size()); 171 EXPECT_EQ(1u, changed_display_.size());
167 EXPECT_EQ(1u, added_display_.size()); 172 EXPECT_EQ(1u, added_display_.size());
168 EXPECT_EQ(0u, removed_display_.size()); 173 EXPECT_EQ(0u, removed_display_.size());
169 } 174 }
170 175
171 TEST_F(DesktopScreenX11Test, RemoveMonitorOnRight) { 176 TEST_F(DesktopScreenX11Test, RemoveMonitorOnRight) {
172 std::vector<gfx::Display> displays; 177 std::vector<display::Display> displays;
173 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480))); 178 displays.push_back(
174 displays.push_back(gfx::Display(kSecondDisplay, 179 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
175 gfx::Rect(640, 0, 1024, 768))); 180 displays.push_back(
181 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
176 NotifyDisplaysChanged(displays); 182 NotifyDisplaysChanged(displays);
177 183
178 ResetDisplayChanges(); 184 ResetDisplayChanges();
179 185
180 displays.clear(); 186 displays.clear();
181 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480))); 187 displays.push_back(
188 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
182 NotifyDisplaysChanged(displays); 189 NotifyDisplaysChanged(displays);
183 190
184 EXPECT_EQ(0u, changed_display_.size()); 191 EXPECT_EQ(0u, changed_display_.size());
185 EXPECT_EQ(0u, added_display_.size()); 192 EXPECT_EQ(0u, added_display_.size());
186 EXPECT_EQ(1u, removed_display_.size()); 193 EXPECT_EQ(1u, removed_display_.size());
187 } 194 }
188 195
189 TEST_F(DesktopScreenX11Test, RemoveMonitorOnLeft) { 196 TEST_F(DesktopScreenX11Test, RemoveMonitorOnLeft) {
190 std::vector<gfx::Display> displays; 197 std::vector<display::Display> displays;
191 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480))); 198 displays.push_back(
192 displays.push_back(gfx::Display(kSecondDisplay, 199 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
193 gfx::Rect(640, 0, 1024, 768))); 200 displays.push_back(
201 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
194 NotifyDisplaysChanged(displays); 202 NotifyDisplaysChanged(displays);
195 203
196 ResetDisplayChanges(); 204 ResetDisplayChanges();
197 205
198 displays.clear(); 206 displays.clear();
199 displays.push_back(gfx::Display(kSecondDisplay, gfx::Rect(0, 0, 1024, 768))); 207 displays.push_back(
208 display::Display(kSecondDisplay, gfx::Rect(0, 0, 1024, 768)));
200 NotifyDisplaysChanged(displays); 209 NotifyDisplaysChanged(displays);
201 210
202 EXPECT_EQ(1u, changed_display_.size()); 211 EXPECT_EQ(1u, changed_display_.size());
203 EXPECT_EQ(0u, added_display_.size()); 212 EXPECT_EQ(0u, added_display_.size());
204 EXPECT_EQ(1u, removed_display_.size()); 213 EXPECT_EQ(1u, removed_display_.size());
205 } 214 }
206 215
207 TEST_F(DesktopScreenX11Test, GetDisplayNearestPoint) { 216 TEST_F(DesktopScreenX11Test, GetDisplayNearestPoint) {
208 std::vector<gfx::Display> displays; 217 std::vector<display::Display> displays;
209 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480))); 218 displays.push_back(
210 displays.push_back(gfx::Display(kSecondDisplay, 219 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
211 gfx::Rect(640, 0, 1024, 768))); 220 displays.push_back(
221 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
212 NotifyDisplaysChanged(displays); 222 NotifyDisplaysChanged(displays);
213 223
214 EXPECT_EQ(kFirstDisplay, 224 EXPECT_EQ(kFirstDisplay,
215 screen()->GetDisplayNearestPoint(gfx::Point(630, 10)).id()); 225 screen()->GetDisplayNearestPoint(gfx::Point(630, 10)).id());
216 EXPECT_EQ(kSecondDisplay, 226 EXPECT_EQ(kSecondDisplay,
217 screen()->GetDisplayNearestPoint(gfx::Point(650, 10)).id()); 227 screen()->GetDisplayNearestPoint(gfx::Point(650, 10)).id());
218 EXPECT_EQ(kFirstDisplay, 228 EXPECT_EQ(kFirstDisplay,
219 screen()->GetDisplayNearestPoint(gfx::Point(10, 10)).id()); 229 screen()->GetDisplayNearestPoint(gfx::Point(10, 10)).id());
220 EXPECT_EQ(kFirstDisplay, 230 EXPECT_EQ(kFirstDisplay,
221 screen()->GetDisplayNearestPoint(gfx::Point(10000, 10000)).id()); 231 screen()->GetDisplayNearestPoint(gfx::Point(10000, 10000)).id());
222 } 232 }
223 233
224 TEST_F(DesktopScreenX11Test, GetDisplayMatchingBasic) { 234 TEST_F(DesktopScreenX11Test, GetDisplayMatchingBasic) {
225 std::vector<gfx::Display> displays; 235 std::vector<display::Display> displays;
226 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480))); 236 displays.push_back(
227 displays.push_back(gfx::Display(kSecondDisplay, 237 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
228 gfx::Rect(640, 0, 1024, 768))); 238 displays.push_back(
239 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
229 NotifyDisplaysChanged(displays); 240 NotifyDisplaysChanged(displays);
230 241
231 EXPECT_EQ(kSecondDisplay, 242 EXPECT_EQ(kSecondDisplay,
232 screen()->GetDisplayMatching(gfx::Rect(700, 20, 100, 100)).id()); 243 screen()->GetDisplayMatching(gfx::Rect(700, 20, 100, 100)).id());
233 } 244 }
234 245
235 TEST_F(DesktopScreenX11Test, GetDisplayMatchingOverlap) { 246 TEST_F(DesktopScreenX11Test, GetDisplayMatchingOverlap) {
236 std::vector<gfx::Display> displays; 247 std::vector<display::Display> displays;
237 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480))); 248 displays.push_back(
238 displays.push_back(gfx::Display(kSecondDisplay, 249 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
239 gfx::Rect(640, 0, 1024, 768))); 250 displays.push_back(
251 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
240 NotifyDisplaysChanged(displays); 252 NotifyDisplaysChanged(displays);
241 253
242 EXPECT_EQ(kSecondDisplay, 254 EXPECT_EQ(kSecondDisplay,
243 screen()->GetDisplayMatching(gfx::Rect(630, 20, 100, 100)).id()); 255 screen()->GetDisplayMatching(gfx::Rect(630, 20, 100, 100)).id());
244 } 256 }
245 257
246 TEST_F(DesktopScreenX11Test, GetPrimaryDisplay) { 258 TEST_F(DesktopScreenX11Test, GetPrimaryDisplay) {
247 std::vector<gfx::Display> displays; 259 std::vector<display::Display> displays;
248 displays.push_back(gfx::Display(kFirstDisplay, 260 displays.push_back(
249 gfx::Rect(640, 0, 1024, 768))); 261 display::Display(kFirstDisplay, gfx::Rect(640, 0, 1024, 768)));
250 displays.push_back(gfx::Display(kSecondDisplay, gfx::Rect(0, 0, 640, 480))); 262 displays.push_back(
263 display::Display(kSecondDisplay, gfx::Rect(0, 0, 640, 480)));
251 NotifyDisplaysChanged(displays); 264 NotifyDisplaysChanged(displays);
252 265
253 // The first display in the list is always the primary, even if other 266 // The first display in the list is always the primary, even if other
254 // displays are to the left in screen layout. 267 // displays are to the left in screen layout.
255 EXPECT_EQ(kFirstDisplay, screen()->GetPrimaryDisplay().id()); 268 EXPECT_EQ(kFirstDisplay, screen()->GetPrimaryDisplay().id());
256 } 269 }
257 270
258 TEST_F(DesktopScreenX11Test, GetDisplayNearestWindow) { 271 TEST_F(DesktopScreenX11Test, GetDisplayNearestWindow) {
259 // Set up a two monitor situation. 272 // Set up a two monitor situation.
260 std::vector<gfx::Display> displays; 273 std::vector<display::Display> displays;
261 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480))); 274 displays.push_back(
262 displays.push_back(gfx::Display(kSecondDisplay, 275 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
263 gfx::Rect(640, 0, 1024, 768))); 276 displays.push_back(
277 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
264 NotifyDisplaysChanged(displays); 278 NotifyDisplaysChanged(displays);
265 279
266 Widget* window_one = BuildTopLevelDesktopWidget(gfx::Rect(10, 10, 10, 10), 280 Widget* window_one = BuildTopLevelDesktopWidget(gfx::Rect(10, 10, 10, 10),
267 false); 281 false);
268 Widget* window_two = BuildTopLevelDesktopWidget(gfx::Rect(650, 50, 10, 10), 282 Widget* window_two = BuildTopLevelDesktopWidget(gfx::Rect(650, 50, 10, 10),
269 false); 283 false);
270 284
271 EXPECT_EQ( 285 EXPECT_EQ(
272 kFirstDisplay, 286 kFirstDisplay,
273 screen()->GetDisplayNearestWindow(window_one->GetNativeWindow()).id()); 287 screen()->GetDisplayNearestWindow(window_one->GetNativeWindow()).id());
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
363 generator.ClickLeftButton(); 377 generator.ClickLeftButton();
364 generator.set_flags(ui::EF_NONE); 378 generator.set_flags(ui::EF_NONE);
365 RunPendingMessages(); 379 RunPendingMessages();
366 EXPECT_FALSE(rwh->IsMaximized()); 380 EXPECT_FALSE(rwh->IsMaximized());
367 381
368 widget->CloseNow(); 382 widget->CloseNow();
369 } 383 }
370 384
371 // Test that rotating the displays notifies the DisplayObservers. 385 // Test that rotating the displays notifies the DisplayObservers.
372 TEST_F(DesktopScreenX11Test, RotationChange) { 386 TEST_F(DesktopScreenX11Test, RotationChange) {
373 std::vector<gfx::Display> displays; 387 std::vector<display::Display> displays;
374 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
375 displays.push_back( 388 displays.push_back(
376 gfx::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768))); 389 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
390 displays.push_back(
391 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
377 NotifyDisplaysChanged(displays); 392 NotifyDisplaysChanged(displays);
378 ResetDisplayChanges(); 393 ResetDisplayChanges();
379 394
380 displays[0].set_rotation(gfx::Display::ROTATE_90); 395 displays[0].set_rotation(display::Display::ROTATE_90);
381 NotifyDisplaysChanged(displays); 396 NotifyDisplaysChanged(displays);
382 EXPECT_EQ(1u, changed_display_.size()); 397 EXPECT_EQ(1u, changed_display_.size());
383 398
384 displays[1].set_rotation(gfx::Display::ROTATE_90); 399 displays[1].set_rotation(display::Display::ROTATE_90);
385 NotifyDisplaysChanged(displays); 400 NotifyDisplaysChanged(displays);
386 EXPECT_EQ(2u, changed_display_.size()); 401 EXPECT_EQ(2u, changed_display_.size());
387 402
388 displays[0].set_rotation(gfx::Display::ROTATE_270); 403 displays[0].set_rotation(display::Display::ROTATE_270);
389 NotifyDisplaysChanged(displays); 404 NotifyDisplaysChanged(displays);
390 EXPECT_EQ(3u, changed_display_.size()); 405 EXPECT_EQ(3u, changed_display_.size());
391 406
392 displays[0].set_rotation(gfx::Display::ROTATE_270); 407 displays[0].set_rotation(display::Display::ROTATE_270);
393 NotifyDisplaysChanged(displays); 408 NotifyDisplaysChanged(displays);
394 EXPECT_EQ(3u, changed_display_.size()); 409 EXPECT_EQ(3u, changed_display_.size());
395 410
396 displays[0].set_rotation(gfx::Display::ROTATE_0); 411 displays[0].set_rotation(display::Display::ROTATE_0);
397 displays[1].set_rotation(gfx::Display::ROTATE_0); 412 displays[1].set_rotation(display::Display::ROTATE_0);
398 NotifyDisplaysChanged(displays); 413 NotifyDisplaysChanged(displays);
399 EXPECT_EQ(5u, changed_display_.size()); 414 EXPECT_EQ(5u, changed_display_.size());
400 } 415 }
401 416
402 // Test that changing the displays workarea notifies the DisplayObservers. 417 // Test that changing the displays workarea notifies the DisplayObservers.
403 TEST_F(DesktopScreenX11Test, WorkareaChange) { 418 TEST_F(DesktopScreenX11Test, WorkareaChange) {
404 std::vector<gfx::Display> displays; 419 std::vector<display::Display> displays;
405 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
406 displays.push_back( 420 displays.push_back(
407 gfx::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768))); 421 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
422 displays.push_back(
423 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
408 NotifyDisplaysChanged(displays); 424 NotifyDisplaysChanged(displays);
409 ResetDisplayChanges(); 425 ResetDisplayChanges();
410 426
411 displays[0].set_work_area(gfx::Rect(0, 0, 300, 300)); 427 displays[0].set_work_area(gfx::Rect(0, 0, 300, 300));
412 NotifyDisplaysChanged(displays); 428 NotifyDisplaysChanged(displays);
413 EXPECT_EQ(1u, changed_display_.size()); 429 EXPECT_EQ(1u, changed_display_.size());
414 430
415 displays[1].set_work_area(gfx::Rect(0, 0, 300, 300)); 431 displays[1].set_work_area(gfx::Rect(0, 0, 300, 300));
416 NotifyDisplaysChanged(displays); 432 NotifyDisplaysChanged(displays);
417 EXPECT_EQ(2u, changed_display_.size()); 433 EXPECT_EQ(2u, changed_display_.size());
418 434
419 displays[0].set_work_area(gfx::Rect(0, 0, 300, 300)); 435 displays[0].set_work_area(gfx::Rect(0, 0, 300, 300));
420 NotifyDisplaysChanged(displays); 436 NotifyDisplaysChanged(displays);
421 EXPECT_EQ(2u, changed_display_.size()); 437 EXPECT_EQ(2u, changed_display_.size());
422 438
423 displays[1].set_work_area(gfx::Rect(0, 0, 300, 300)); 439 displays[1].set_work_area(gfx::Rect(0, 0, 300, 300));
424 NotifyDisplaysChanged(displays); 440 NotifyDisplaysChanged(displays);
425 EXPECT_EQ(2u, changed_display_.size()); 441 EXPECT_EQ(2u, changed_display_.size());
426 442
427 displays[0].set_work_area(gfx::Rect(0, 0, 640, 480)); 443 displays[0].set_work_area(gfx::Rect(0, 0, 640, 480));
428 displays[1].set_work_area(gfx::Rect(640, 0, 1024, 768)); 444 displays[1].set_work_area(gfx::Rect(640, 0, 1024, 768));
429 NotifyDisplaysChanged(displays); 445 NotifyDisplaysChanged(displays);
430 EXPECT_EQ(4u, changed_display_.size()); 446 EXPECT_EQ(4u, changed_display_.size());
431 } 447 }
432 448
433 // Test that changing the device scale factor notifies the DisplayObservers. 449 // Test that changing the device scale factor notifies the DisplayObservers.
434 TEST_F(DesktopScreenX11Test, DeviceScaleFactorChange) { 450 TEST_F(DesktopScreenX11Test, DeviceScaleFactorChange) {
435 std::vector<gfx::Display> displays; 451 std::vector<display::Display> displays;
436 displays.push_back(gfx::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
437 displays.push_back( 452 displays.push_back(
438 gfx::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768))); 453 display::Display(kFirstDisplay, gfx::Rect(0, 0, 640, 480)));
454 displays.push_back(
455 display::Display(kSecondDisplay, gfx::Rect(640, 0, 1024, 768)));
439 NotifyDisplaysChanged(displays); 456 NotifyDisplaysChanged(displays);
440 ResetDisplayChanges(); 457 ResetDisplayChanges();
441 458
442 displays[0].set_device_scale_factor(2.5f); 459 displays[0].set_device_scale_factor(2.5f);
443 NotifyDisplaysChanged(displays); 460 NotifyDisplaysChanged(displays);
444 EXPECT_EQ(1u, changed_display_.size()); 461 EXPECT_EQ(1u, changed_display_.size());
445 EXPECT_EQ(2.5f, gfx::GetFontRenderParamsDeviceScaleFactor()); 462 EXPECT_EQ(2.5f, gfx::GetFontRenderParamsDeviceScaleFactor());
446 463
447 displays[1].set_device_scale_factor(2.5f); 464 displays[1].set_device_scale_factor(2.5f);
448 NotifyDisplaysChanged(displays); 465 NotifyDisplaysChanged(displays);
449 EXPECT_EQ(2u, changed_display_.size()); 466 EXPECT_EQ(2u, changed_display_.size());
450 467
451 displays[0].set_device_scale_factor(2.5f); 468 displays[0].set_device_scale_factor(2.5f);
452 NotifyDisplaysChanged(displays); 469 NotifyDisplaysChanged(displays);
453 EXPECT_EQ(2u, changed_display_.size()); 470 EXPECT_EQ(2u, changed_display_.size());
454 471
455 displays[1].set_device_scale_factor(2.5f); 472 displays[1].set_device_scale_factor(2.5f);
456 NotifyDisplaysChanged(displays); 473 NotifyDisplaysChanged(displays);
457 EXPECT_EQ(2u, changed_display_.size()); 474 EXPECT_EQ(2u, changed_display_.size());
458 475
459 displays[0].set_device_scale_factor(1.f); 476 displays[0].set_device_scale_factor(1.f);
460 displays[1].set_device_scale_factor(1.f); 477 displays[1].set_device_scale_factor(1.f);
461 NotifyDisplaysChanged(displays); 478 NotifyDisplaysChanged(displays);
462 EXPECT_EQ(4u, changed_display_.size()); 479 EXPECT_EQ(4u, changed_display_.size());
463 EXPECT_EQ(1.f, gfx::GetFontRenderParamsDeviceScaleFactor()); 480 EXPECT_EQ(1.f, gfx::GetFontRenderParamsDeviceScaleFactor());
464 } 481 }
465 482
466 } // namespace views 483 } // namespace views
OLDNEW
« no previous file with comments | « ui/views/widget/desktop_aura/desktop_screen_x11.cc ('k') | ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698